tf.image.decode_png doesn't work for palette-based images

System information

Have I written custom code
Linux Ubuntu 18.04
TensorFlow installed from source
TensorFlow version:  v1.12.0-0-ga6d8ffae09 1.12.0
Python version: 3.6.7
CUDA/cuDNN version: V10.0.130
GPU model and memory: RTX2080 Ti

Describe the current behavior
Pixel values should be the same regardless if loading the image by PIL or  by TF
Describe the expected behavior
Pixel values are different
Code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate the problem.
from PIL import Image
import numpy as np

import tensorflow as tf
tf.enable_eager_execution()

PATH = '/tmp/42313738-65c10f7c-807e-11e8-8f11-9db821e3c3cc.png'

im = Image.open(PATH)
ar = np.asarray(im)
pil_max = np.max(ar)
print(pil_max)

im = tf.gfile.FastGFile(PATH, 'rb').read()
ar = tf.image.decode_png(im, channels=1)
tf_max = tf.reduce_max(ar)
print(tf_max)

assert tf_max == pil_max

image:
here
Other info / logs
I suspect that the problem is caused by tensorflow loading the first RGB channel, (so the red channel)
instead of the color indexes, for palette based png images like given example.
related to #20028

The Problem is with the channel=1 parameter.
 So this changes the value of the pixels.
This code works perfectly, for channel=0 where the number of channels of the original image is preserved, causing no change in the value of the pixels.
For more info refer to:
https://www.tensorflow.org/versions/r1.12/api_docs/python/tf/image/decode_png

That is not the problem, and the code doesn't work perfectly if I use channel=0.
if I use channel=0, I get again a RGB image with 3 channels, which I don't want.
I want the single channel indexed-based image.

The documentation doesn't mention anything about taking a weighted average of the channels.

I am sorry, the image I have provided it not the best, please try this code:

from PIL import Image
import numpy as np
import tensorflow as tf
tf.enable_eager_execution()

PATH = '/tmp/xX4Stvh.png'

im = tf.gfile.FastGFile(PATH, 'rb').read()
ar = tf.image.decode_png(im, channels=0)
tf_max = tf.reduce_max(ar)
print(tf_max)

im = Image.open(PATH)
ar = np.asarray(im)
pil_max = np.max(ar)
print(pil_max)

on this image:
https://i.imgur.com/xX4Stvh.png
it has only three colors, so the difference in behaviour will be more apparent

1. That is not the problem, and the code doesn't work perfectly if I use channel=0.
   if I use channel=0, I get again a RGB image with 3 channels, which I don't want.
   I want the single channel indexed-based image.

2. The documentation doesn't mention anything about taking a weighted average of the channels.

3. I am sorry, the image I have provided it not the best, please try this code:

from PIL import Image
import numpy as np
import tensorflow as tf
tf.enable_eager_execution()

PATH = '/tmp/xX4Stvh.png'

im = tf.gfile.FastGFile(PATH, 'rb').read()
ar = tf.image.decode_png(im, channels=0)
tf_max = tf.reduce_max(ar)
print(tf_max)

im = Image.open(PATH)
ar = np.asarray(im)
pil_max = np.max(ar)
print(pil_max)

on this image:
https://i.imgur.com/xX4Stvh.png
it has only three colors, so the difference in behaviour will be more apparent

Sorry for the confusion. The Main reason for this error is, PIL opens images in palette mode. This means the color from the channels are mapped to a color palette and that palette index is provided in each location of the image. However tensorflow, decodes the image into Channels and doesn't use this concept of palette. So, when the Pillow Image object is converted to numpy array, the values at the various positions is not intensity of the pixels of the color channel, which is in the case of tensorflow.
The correct way to verify this is:
from PIL import Image
import numpy as np
import tensorflow as tf
tf.enable_eager_execution()

PATH = '/tmp/xX4Stvh.png'

im = tf.gfile.FastGFile(PATH, 'rb').read()
ar = tf.image.decode_png(im, channels=0)
tf_max = tf.reduce_max(ar)
print(tf_max)

im = Image.open(PATH).convert('RGB') # This convert() function converts from
                                     # PIL exclusive Palette mode to channel mode
ar = np.asarray(im)
pil_max = np.max(ar)
print(pil_max)

And about the weighted average thing. When you are loading a color image in channel mode and request it to convert to grayscale (channels=0 does that). A weighted average on all the channels(R,G,B) is calculated to produce the value for one channel. (That's why the number of channels for grayscaled image is 1 and RGB colored image, is 3)
Reference: https://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale

thanks for the response capitan-pool
So the whole point is that I actually only care about these palette indexes, not about the RGB values.
Those palette index values are the target class IDs for semantic segmentation.

thanks for the response capitan-pool
So the whole point is that I actually only care about these palette indexes, not about the RGB values.
Those palette index values are the target class IDs for semantic segmentation.

Huh? That has nothing to do with semantic segmentation. You don't care about Palette Values for any sort of deep vision related tasks, in general. You need to use the 3 Channels of RGB, 4 Channels of RGBA, or 1 channel of Grayscale.

ok, forget the segmentation part.
Could you just answer this question:
How can I achieve the same behavior with tensorflow as I had with PIL?
because what you have suggested before is the opposite,
you modified the PIL code to match the tensorflow implementation

You can do something similar using,
import tensorflow as tf
img = tf.image.decode_png(tf.io.read_file(/path/to/png/file))

On Wed, 1 May 2019, 8:09 pm adrianstaniec<EMAIL_ADDRESS>wrote:

ok, forget the segmentation part.
Could you just answer this question:
How can I achieve the same behavior with tensorflow as I had with PIL?
because what you have suggested before is the opposite,
you modified the PIL code to match the tensorflow implementation
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/28256#issuecomment-488298763,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADKYRWNVFPMWEOVSNOHFSMDPTGTS7ANCNFSM4HJCQRNA
.

ok, forget the segmentation part.
Could you just answer this question:
How can I achieve the same behavior with tensorflow as I had with PIL?
because what you have suggested before is the opposite,
you modified the PIL code to match the tensorflow implementation

You can do something similar using,
import tensorflow as tf
img = tf.image.decode_png(tf.io.read_file(/path/to/png/file))

Could someone else look at this issue, please?
I am sorry, but captain-pool doesn't get it

This is not Build/Installation or Bug/Performance issue. Please post this kind of support questions at Stackoverflow. There is a big community to support and learn from your questions. GitHub is mainly for addressing bugs in installation and performance. Thanks!

the only way you could do is to re-save your png file in "RGB" mode . in this case,  the image datas are the indices of  palette，which you needed to training a semantic segment model , and decoding function in tensorflow works correctly  . side effect is that you cant see anything in preview, because Its valuse is too low to be seen

This is not Build/Installation or Bug/Performance issue. Please post this kind of support questions at Stackoverflow. There is a big community to support and learn from your questions. GitHub is mainly for addressing bugs in installation and performance. Thanks!

I just met the same problem, it looks like there is no way to get the correct palette indexes with native tensorflow. However, I solved my problem with tf.py_func. I'll leave my code here in case somebody finds it useful.
import tensorflow as tf
import numpy as np
from PIL import Image

dataset = tf.data.Dataset.from_tensor_slices({
    'image': ['img00.png', 'img01.png'],
    'index': [0, 1]
    })

def load_image_func(image, index):
    return np.array(Image.open(image)), index

dataset = dataset.map(lambda x: (
    tf.py_func(load_image_func, [x['image'], x['index']], [tf.uint8, x['index'].dtype])))

A clean solution would be to re-implement a custom op to decode a PNG without palette conversion.
Currently, the conversion is done at core-level:
  // convert palette to rgb(a) if needs be.
  if (context->color_type == PNG_COLOR_TYPE_PALETTE)
    png_set_palette_to_rgb(context->png_ptr);

This is a valid issue that shouldn't be closed and likely drives user away if not properly handled, as it represents an important use case. @adrianstaniec you're right it doesn't work and for exactly the reasons @alar0330 mentioned.
I believe the fix doesn't require any API level change, i.e., tf.image.decode_png(mask_path) should have same behavior as np.array(Image.Open(mask_path))

The issue comes from a redundant  png_set_rgb_to_gray call in the C++ kernel for palette-based images. I have created a PR #41472 to fix this issue.

After the rollback of the fix, this is now again a problem. When loading index PNGs TF should allow the user to choose whether to use the palette to convert the pixel index or choose to load the raw index value themselves.
Thanks to @alar0330 for the workaround.


A list cannot be printed out

The following code in lists.vale:
fn main() export {
  lst = List<int>();
  lst.add(1);
  lst.add(3);
  lst.add(7);
  println(lst);
}

compiled with: python ..\valec.py build lists.vale ..\vstl\list.vale
gives the compiler error:
Using Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC.
Running: java -cp C:\Vale\Valestrom.jar net.verdagon.vale.driver.Driver build -o build.vast lists.vale ..\vstl\list.vale
lists.vale:12:3: Couldn't find a suitable function named println with args (??List<?int>):
println(lst);
Rejected candidates:
builtins/printutils.vale:2:1: println
Param at index 0 doesn't match: Coord(Own,StructRef2(FullName2(List(),CitizenName2(List,List(CoordTemplata(Coord(Share,Int2()))))))) cannot convert to Coord(Share,Str2())
builtins/printutils.vale:6:1: println
Param at index 0 doesn't match: Coord(Own,StructRef2(FullName2(List(),CitizenName2(List,List(CoordTemplata(Coord(Share,Int2()))))))) cannot convert to Coord(Share,Int2())
builtins/printutils.vale:10:1: println
Param at index 0 doesn't match: Coord(Own,StructRef2(FullName2(List(),CitizenName2(List,List(CoordTemplata(Coord(Share,Int2()))))))) cannot convert to Coord(Share,Bool2())
builtins/strings.vale:218:1: println
Param at index 0 doesn't match: Coord(Own,StructRef2(FullName2(List(),CitizenName2(List,List(CoordTemplata(Coord(Share,Int2()))))))) cannot convert to Coord(Share,StructRef2(FullName2(List(),CitizenName2(StrSlice,List()))))
It is possible to print out all items of a list with
lst.each( { println(); } );_
or:
each &lst { println(); }_
a generic print function for a list would be preferred.

I'll add this to list.vale:
fn print<T>(list &List<T>) {
  print("List(");
  first! = true;
  each (&list) {
    if (not first) {
      print(", ");
    }
    mut first = false;
    print(_);
  }
  print(")");
}
fn println<T>(list &List<T>) {
  print(list);
  println("");
}

and that would solve the basic cases for now.
Someday, I would like to have built-in print functionality for every type... and it's uniquely easy in Vale, because single ownership means we can recursively print without infinite loops. Just have to figure out whether to do this in vale code, or built into the compiler...
Will mark this fixed when the release hits the site. Thanks for reporting this, Ivo!

Not sure where that change went. I added it again to list.vale.
And tested with this, and it works!
import stdlib.collections.*;
fn main() export {
  s = List<str>();
  s!.add("hello ");
  s!.add("world!");
  println(&s);
}

Will also test on windows before next release. Thanks Ivo!


"fastlane run ssh" not working properly

Issue Description
Trying to run "fastlane run ssh username:"xxx" password:"yyy" host:"zzz" will result with a crash.
Also, when trying the same with "commands" param it will give an error "[!] 'commands' value must be a Array! Found String instead." although I put "commands:["ls"]". Tried all kinds of types with no luck.
Complete output when running fastlane, including the stack trace and command used
[16:17:45]: -----------------
[16:17:45]: --- Step: ssh ---
[16:17:45]: -----------------
-------------------------------------------------------------------------------------------
😨  An error occured. Please enable crash reports using `fastlane enable_crash_reporting`.
👍  This makes resolving issues much easier and helps improve fastlane.
🔒  The reports will be stored securely on getsentry.com.
🙊  More information about privacy: https://github.com/fastlane/fastlane/releases/tag/1.33.3
-------------------------------------------------------------------------------------------
/Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/actions/ssh.rb:50:in `block in run': [!] undefined method `each' for nil:NilClass (NoMethodError)
	from /Library/Ruby/Gems/2.0.0/gems/net-ssh-2.9.2/lib/net/ssh.rb:215:in `start'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/actions/ssh.rb:49:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/runner.rb:143:in `block (2 levels) in execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/actions/actions_helper.rb:35:in `execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/runner.rb:129:in `block in execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/runner.rb:128:in `chdir'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/runner.rb:128:in `execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/lib/fastlane/one_off.rb:31:in `execute'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/bin/fastlane:114:in `block (2 levels) in run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.41.2/lib/fastlane_core/ui/fastlane_runner.rb:23:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/bin/fastlane:168:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.81.0/bin/fastlane:174:in `<top (required)>'
	from /usr/local/bin/fastlane:23:in `load'
	from /usr/local/bin/fastlane:23:in `<main>'

Environment
fastlane 1.81.0
Do you use bundler to execute fastlane (i.e. bundle exec fastlane)? NO
Do you use a Ruby environment manager (e.g. chruby, rbenv, rvm)? NO

Hi @nmayafit! Thanks for reaching out. Can you let me know if you are able to run this in a lane? I want to see if it's a command line issue or an issue with the actual params.
Thanks!

@TKBurner  I opened another bug a min ago regarding ssh as it seems I can't run specific commands in ssh. I'm not sure its related, but if I try to run simple ssh command (like cd or ls) from lane it will work.

@nmayafit Thanks for following up. I'm going to work with you on that ticket and close this one out. Let me know if you have a separate issue and we can open this one back up 👍


feat(tutorial): complete step 1

@git-mischa Looks awesome 💯 ! I've recorded your completion of step 1.


French translation of getbootstrap is broken/unstyled

http://www.oneskyapp.com/fr/docs/bootstrap/
/cc @vincentchan

Looks like it's been fixed.
https://mobile.twitter.com/VincentChan/status/613513937305276416

what is?

@xiaosong88 http://www.oneskyapp.com/fr/docs/bootstrap/ (a French translation of our docs) now works again.


xform undeclared

Hi, I'm using nanovg-git in the AUR, getting this on trying to build atm;
...
../src/stb_image.h:4075:13: note: in expansion of macro ‘CASE’
 4075 |             CASE(STBI__F_paeth_first)  cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-out_n],0,0)); break;
      |             ^~~~
../src/stb_image.h:4075:105: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’
 4075 |             CASE(STBI__F_paeth_first)  cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-out_n],0,0)); break;
      |                                                                                ^~~~~
../src/nanovg.c: In function ‘nvgText’:
../src/nanovg.c:2473:42: error: ‘xform’ undeclared (first use in this function)
 2473 |  int isFlipped = nvg__isTransformFlipped(xform);
      |                                          ^~~~~
../src/nanovg.c:2473:42: note: each undeclared identifier is reported only once for each function it appears in
In file included from ../src/nanovg.c:30:
../src/stb_image.h: In function ‘stbi__tga_get_comp’:
../src/stb_image.h:4856:18: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4856 |       case 16: if(is_grey) return STBI_grey_alpha;
      |                  ^
../src/stb_image.h:4858:7: note: here
 4858 |       case 15: if(is_rgb16) *is_rgb16 = 1;
      |       ^~~~
make[1]: *** [nanovg.make:237: obj/native/Release/nanovg.o] Error 1
make: *** [Makefile:39: nanovg] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
error making: nanovg-git

I probably messed that up trying to accomodate style changes. The line in nanovg should read:
int isFlipped = nvg__isTransformFlipped(state->xform);


Hyper-parameter optimisation notebook: searches should start from the same point

As pointed out by @kegl, the searches in the hyper-parameter optimisation notebook should ideally all start from the same initial evaluation. The comparison is otherwise not entirely fair.
https://twitter.com/balazskegl/status/755376694333169664

Fixed by fdf51191dd763e963fc60cf3823fa4aa8d520d73


TTML writer should not output cell units

In IMSC, "c" units are only permitted on the ebutts:linePadding property.
Instead TTML writer should allow the user to specify that rh and rw units are used.

rh and rw units cannot replace c units directly since the value of c depends on whether c is evaluated in a horizontal or vertical context. In the case of padding, for example, this cannot be determine without determining the computed value of tts:writingMode, which itself requires determining the region with which the element is associated.
It might therefore make more sense to limit the model such that only c units can be used with ebutts:linePadding, i.e. enforcing the IMSC model.


hardhat-zksync-upgradable: What are the contracts that deployed at defaultImplAddresses constants?

Hi,
I'm trying to deploy upgradeable contracts on my own Zksync network and stumbled upon this issue. The function estimateGasProxy looks for mockImplAddress by from a constant object:
https://github.com/matter-labs/hardhat-zksync/blob/70b878cbab2edc9027fc1236a30106af26faa3bf/packages/hardhat-zksync-upgradable/src/gas-estimation/estimate-gas-proxy.ts#L53C9-L60C10
        if (chainId == 270) {
            const adminFactory = await getAdminFactory(hre, deployer.zkWallet);
            mockImplAddress = await deployProxyAdminLocally(adminFactory);
            data = getInitializerData(adminFactory.interface, args, opts.initializer);
        } else {
            mockImplAddress = defaultImplAddresses[chainId].contractAddress;
            data = getInitializerData(ethers.Contract.getInterface(mockArtifact.abi), args, opts.initializer);
        }

which in turns defined here:
https://github.com/matter-labs/hardhat-zksync/blob/70b878cbab2edc9027fc1236a30106af26faa3bf/packages/hardhat-zksync-upgradable/src/constants.ts#L47C1-L56C3
export const defaultImplAddresses: { [chainId in number]: { contractAddress: string; beacon: string } } = {
    324: {
        contractAddress: '0x71CF3E1430aA920903CeF2154202902dDbBE2c98',
        beacon: '0x3DbAe90affFFAC8d20285f2f53e3f2e10368c11C',
    },
    280: {
        contractAddress: '0xCFFF2D44a3d3361f86Aa9EA5c563B95FAcA7be8c',
        beacon: '0x713499530cCAc7a09FecFf05C3a1d4413E4CCd12',
    },
};

Since my custom network's chainID is neither 324 nor 280, the gas estimation failed and cause the deployment to fail.
I'd like to know which contracts are deployed at those address, so I can deploy the same contracts on my own network to let the gas estimation works.
Thanks a lot in advance.

Hi @anhlh-edsolabs, you can deploy any kind of a simple contract (for example ProxyAdmin.sol contract) and use its address in the gas estimation function since it is only needed for the initializer data mocking and does not significantly impact the returned gas value.

Hi @anhlh-edsolabs, you can deploy any kind of a simple contract (for example ProxyAdmin.sol contract) and use its address in the gas estimation function since it is only needed for the initializer data mocking and does not significantly impact the returned gas value.

Thanks @FilipTxFusion for your help! It took me a while to figure out how to properly get the initializerData to pass to the estimateDeployFee function. Works perfectly now.


mailto fails for surveys with long body text (IE only)

possible soln:
http://stackoverflow.com/a/9035586/1203762

@glorymanutd

Just checked on chrome - doesn't seem to work.....


DNS failure in corporate environments

In our environment we have no direct access to <IP_ADDRESS>, <IP_ADDRESS> which are the defaults used by lego, instead of the ones provided by the OS/Kubernetes
We've got a PR open upstream at xenolf/lego#293 - I'm opening this to track this issue, once it's merged we'd like a new build of kube-cert-manager to incorporate the fix, if possible? :)

That's totally fine! :) If you can let me know when the PR is merged, I'll make a new build

ping @mikebryant that PR was merged, though no releases since April

ping @PSG-Luna @mikebryant as this was merged a while ago, any chance we can get a new build that includes this?

@luna-duclos @mikebryant any chance we can get this released or add a flag: -dns-resolvers to match the functionality of lego itself so we can override the default DNS resolvers?


Implement TypeScript services as language server

The code we are using currently for the TypeScript language functionality should either be refactored to a language server, or preferably, we should leverage a common language server functionality like here:
https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md#textDocument_signatureHelp

Going to won't fix this for now - best bet would be to use the sourcegraph server when it supports incremental document sync.


fstab doesn't support fs_spec other than UUID=(.*)

Current, we support only the fs_spec with UUID, see the following example:
Stage options:
"options": {
  "filesystems": [
    {
      "uuid": "76a22bf4-f153-4541-b6c7-0332c0dfaeac",
      "vfs_type": "ext4",
      "path": "/",
      "freq": "1",
      "passno": "1"
    }
  ]
}

Result in /etc/fstab:
UUID=76a22bf4-f153-4541-b6c7-0332c0dfaeac / ext4 defaults 1 1

With this approach we are not able to mount some filesystems, e.g. tmpfs:
tmpfs /tmp tmpfs rw,nodev,nosuid,size=2G 0 0

I don't know whether we need it. I'm also not sure about the format of tmpfs stage options. Currently it has the option uuid. I think the cleanest approach is to drop the uuid option and introduce a new option (named spec possibly? see /etc/fstab). The difference between uuid and spec options is that in spec option user must explicitly prepend "UUID=" string if uuid spec is needed.

I agree that sticking to the terminology of underlying tools makes sense. Rename to spec, if we also support the other formats seems reasonable to me.
Do we want to keep the NAME=value format of spec, or split that up into proper json, like "spec": { "NAME": "value" }? The former is known by people and documented in fstab(5). The latter is more easily read by machines, at the expense of adding complexity.

Done with #335 and #742


PHP Warning:  Unexpected character in input:  ' in ...\app\Http\Livewire\Admin\Color\Img.php on line 54

i use laravel 8.x and livewire 2.x
problem is:
"PHP Warning:  Unexpected character in input:  '    in ...\app\Http\Livewire\Admin\Color\Img.php on line 54"
i have this problem in livewire component
mu code is
`<?php
namespace App\Http\Livewire\Admin\Color;
use Livewire\Component;
class Img extends Component
{
protected $listeners = ['chooseColorImg' => 'chooseColorImg'];
public $pivots = [];
public $colors;
public $img;

public function mount($colors)
{
 //......
}

public function chooseColorImg($colorId)
{
    //....
}

public function render()
{
    return view('admin.product.color.img');
}

}
`

i solve it!
in end of code after class curly bracket clear surplus lines!
and error is gone!!


Error MSB4018: The "GenerateDepsFile" task failed unexpectedly. when component is present.

Describe the bug
When a CsWinRT component is referenced by an app and they both share a reference to ClassLibraryA, the build will fail with Error MSB4018: The "GenerateDepsFile" task failed unexpectedly.
To Reproduce

Create a WinAppSDK app or any other C# app.
Create a CsWinRTComponent.
Create a class library ClassLibraryA
Reference the class library from both the app and the component.

Expected behavior
Build and publishing of the app succeeds.
Version Info
CsWinRT 1.5.0
Additional context
The problem seems to be with https://github.com/microsoft/CsWinRT/blob/090a2796942eb5311598e16eb71a3d708eefffcf/nuget/Microsoft.Windows.CsWinRT.Authoring.targets#L164
@(TargetPathWithTargetPlatformMoniker) will contains not only the assembly for the current project, but also the assemblies from project references, which could by itself be WinMDs. The result is that TargetPathWithTargetPlatformMoniker is populated with broken values where the ManagedImplementation value point to another WinMD.

Do we have any workaround for this issue? @angelazhangmsft @j0shuams ?
I have the exact same issue and it is very difficult for me to build the app :)

Hi! I have this same problem, I tried to investigate what could be happening and I found these conclusions:

The app doesn't need to reference the class library

It only happens if CsWinRT package is referenced

This is the line where the compilation breaks: SingleProjectInfo.cs#L97

It breaks because CsWinRT makes the sourceProjectFile from the class library point to the CsWinRTComponent.
I set the following line right over the before the line I referenced above:
Console.WriteLine("Source Project File: {0} Name: {1}, Version: {2}, OutputName: {3}", sourceProjectFile, name, version, outputName);

And also a try-catch surrounding the addition. This is the output when building with the modified dotnet:
Source Project File: C:\path\to\solution\CsWinRTComponent.csproj Name: CsWinRTComponent, Version: , OutputName: CsWinRTComponent.dll
Source Project File: C:\path\to\solution\CsWinRTComponent.csproj Name: ClassLibraryA, Version: , OutputName: ClassLibraryA.dll

Then because both entries have the same source project file, and sourceProjectFile is used as key when adding to projectReferences the exception is launched.
This is the output when CsWinRT is not referenced at CsWinRTComponent:
Source Project File: C:\path\to\solution\CsWinRTComponent.csproj Name: CsWinRTComponent, Version: , OutputName: CsWinRTComponent.dll
Source Project File: C:\path\to\solution\ClassLibraryA.csproj Name: ClassLibraryA, Version: , OutputName: ClassLibraryA.dll


Update activity.schema.tpl.json

related to #353 @Peyman-N @apdavison @UlrikeS91 please all have a look and merge if all of you are happy.
@apdavison & @Peyman-N this update might required corrections in the schemas that extend Activity (this might be called "startedBy" or something similar; for sure in computation extension). It might also require an update of EBRAINS registered instances (if you already registered agents for instances in computation activities).

I'm happy with the PR. @apdavison and/or @Peyman-N should also review and can merge it if they are happy.


create UDM and translators for json

See: #80 (work in progress)

I'm starting to feel as if maybe this isn't worthwhile (taking too much time).

http://marshmallow.readthedocs.io/en/latest/_modules/marshmallow/utils.html?highlight=default
nice! great for generating mocks...

from @fedeerbes:

I'm confused about this item, could you please elaborate:
-WORK: https://api.opensyllabusproject.org/v1/works/8429.json?normalize=true&mock=true
in publicsURL: is one url for Open Version and one for Via Your Institution or you don't have items for the last one
if you go to this part of the current OSP http://opensyllabusproject.herokuapp.com/result/title?id=21 for example, you see in the top-right, the box with links for download the work/paper, and it has two section, the first is via your institution (is a link that provides the university/school i guess) and the other is a public url (for example, the worr/paper has a free license and a url were you can find it for free)
This can double checked with Joe, but i think that i catched the right idea about this section.
Also, for this below, I was thinking of re-making topRanked resource like you had initially and it'd just allow you to query all data and have filters (query string) for the entity types,e.g., school+field or country+field or author+school or whatever!
The API should handle a way to construct entity combinations, at least:
COUNTRIES + FIELDS
SCHOOLS + FIELDS
About this, if this is straightforward to you, do it ( just do it, insert shia labeouf gif xD ). This is the mock UI to guide you
SCHOOL:FIELD MOCK
Both SCHOOL+FIELD and COUNTRY+FIELD has the same structure:
-the title: combination of school:field
-the syllabi of the conbination
-the topRankedWorks:
-rank
-workName
-workId

-personFirstName
-personMiddleName
-personLastName

-publishDate

-appearances

-score

-the topTitlesByYear: data for the bar graph combination

I think this isn't wise to do after all, because the nature of this work will depend greatly on https://elasticsearch-dsl.readthedocs.io/ which has a to_dict() method which in turn will probably affect the second release of the rest api, and for now we should be content in using the mocks I think.


Add screen markers

As requested on Discord, adding screen markers feature would be useful to have (see OSB or Konduit).

If possible, a nice bonus would be the ability to import markers from other clients

Added in #3028


test(go/adbc/driver/flightsql): try to fix flaky test

Fixes #1584.

Other flaky test seen here fixed by #1598


Add https version of demo to allowed origins

The https version of the demo origin is not included in the allowed origins preventing https calls from succeeding.

Closed by #26


Mavlink rate control doesn't allow high stream rates.

I'm trying to get IMU data out over mavlink at 250Hz, which should be easy, But the rate limiter caps the data rate to 174 Hz.
Mavlink is running in "onboard" mode, over TELEM2 at 921600 baud.
This is easily reproducible by connecting over TELEM2 to e.g QGC and inspecting the default "ATTITUDE" message which is supposed to be streamed at 200Hz in onboard mode.
Note that the serial port on my board has no hardware flow control pins.
Help would be appreciated!

When only running the TELEM2 link :
instance #0:
        mavlink chan: #0
        no telem status.
        rates:
        tx: 20.411 kB/s
        txerr: 0.000 kB/s
        rx: 0.000 kB/s
        rate mult: 1.000

So it seems that rate limiting shouldn't be affecting things, since the multiplier is at 1.0.

We are having the same issue, do you have any idea why is this?

Yeah. I believe that increasing the -r parameter on the companion link had worked, in order to get higher data-rates.
https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/init.d/rcS#L515

You need to manage the max data rate param.


Renderer deletion causes crash

To reproduce:

Open Vapor, import WRF data: /little_glade/data/WRF/headwaters/wrfout_d01_2053-03-20_00:00:00.
Create an ImageRenderer, enabled it.
Close the current dataset.
Import WRF again: /little_glade/data/WRF/headwaters/wrfout_d01_2053-03-21_00:00:00.
Create an ImageRenderer and a TwoDDataRenderer, enable both.
Notice that the TwoDData Rendere is highlighted with a blue background. If not, select it to have blue background.
Click "Delete" button. Notice that the TwoDData Rendere is still in the Renderer box.
Click on the TwoDDataRenderer, VAPOR crashes.

I followed these instructions except I clicked on the TwoDData renderer before deleting it in step 7, causing vapor to crash.

The RenderHolder has several quirks that I'm going to try to iron out along with this.


When using Mail's send_mail(), from_email must be explicitly set as None when maybe it should default to None

Hi,
In order to use the send_mail convinience function you must explicitly define from_email even if you plan to use None so that it falls back to using your MAIL_DEFAULT_SENDER.
That translates to having to call this:
        mail = Mail()
        mail.send_mail(
            subject="Testing",
            message="Hey",
            html_message="Hey",
<EMAIL_ADDRESS>            from_email=None
        )

If you don't supply from_email then Flask-Mailman throws an exception saying it must be defined.
Which makes sense because you have from_email defined here: https://github.com/waynerv/flask-mailman/blob/03dd1f008396d344184db6e36856c50fb43487f4/flask_mailman/init.py#L63
But maybe this should be changed to from_mail=None so that users don't need to supply it when they want to use the default sender. This is how EmailMultiAlternatives and your other Email class works.

I think your opinion is reasonable.
Already changed in v0.2.2(For fully compatible with previous version, recipient_list also set default None).

Wow that was fast, thanks!


Add Dockerfile

I created a simple Dockerfile that installs all required python & system dependencies and runs one of the python scripts (currently run_baseline_parallel.py, but this can easily be adapted). This pull request is related to #111
In case we want to support multiple commands (not just run_baseline_parallel.py) it would be appropriate to create multiple Dockerfiles or an entry point script.

Hi!
You've tested this dockerfile, does it need things like ffmpeg for example?
Also I wonder if starting a container to run a single command makes sense, does this create a good workflow for running experiments that doesn't result in deleting results after each run or having many stale containers sitting around?
Just thinking through these things ...

You've tested this dockerfile, does it need things like ffmpeg for example?

For the installation (pip), it does not, however I haven't tried training an entire model with it.

Also I wonder if starting a container to run a single command makes sense

What workflows do you have in mind?

I was struggling getting this to run under python 3.12. so I decided to give this docker image a go. I made a few small tweaks which don't feel worth contributing but are maybe worth noting here:
Dockerfile
FROM python:3.10-slim

# Set the working directory in docker
WORKDIR /pokemon

# Install system dependencies
RUN apt-get update && apt-get install -y \
  build-essential \
  git && \
  # Clean up apt cache to reduce image size.
  apt-get clean && \
  rm -rf /var/lib/apt/lists/*

RUN mkdir baselines

COPY baselines/requirements.txt baselines

# Install Python dependencies
RUN pip install --no-cache-dir -r baselines/requirements.txt

RUN pip install websockets

# Copy source-code
# COPY . .

WORKDIR /pokemon/baselines

# Command to run at container start
CMD [ "python", "run_baseline_parallel_fast.py" ]

The main differences are:

Changed the final workdir so it can find the rom
Don't copy all the source into the image, instead mount the local dir at runtime

I then run it using this docker-compose
docker-compose.yaml
version: "3.4"
services:
  pokemonredexperiments:
    image: joshhsoj1902/pokemonredexperiments:latest
    volumes:
      - ./:/pokemon
    restart: always

And for complete clarity here are the build & run commands:
    docker build --progress=plain -t joshhsoj1902/pokemonredexperiments:latest .

	docker compose up

I don't know if this is completely working or not since I wasn't able to get it to run outside of docker, but I was able to get things to show up in https://pwhiddy.github.io/pokerl-map-viz/. in terms of the session screenshots, The "curframe" screenshots work fine, but the reward frames screenshots are usually black/white boxes (with a few exceptions, so maybe it's actually working)
I look forward to playing with this more!


[SymbolGraph] Emit synthesized members

Emit copies of default implementations in protocol extensions and superclass declarations in conforming types and subclasses respectively using a virtual USR, i.e. ${REAL_USR}::SYNTHESIZED::${CONFORMING_OR_SUBCLASS_TYPE_USR}.

Add a -skip-synthesized-members option to skip these synthesized members.

Create a new wrapping Symbol type that can also contain a base type declaration as well as the inherited declaration for those synthesized cases. Move some symbol-specific APIs there.

Doc comments can “cascade” down to protocol extensions or refinements in concrete types. When emitting the doc comment for a symbol, look up through to superclasses or protocol requirements for where a doc comment is actually written.

Clean up filtering of implicitly private (e.g. “public underscored”) types

rdar://problem/59128787

@swift-ci Please smoke test

@swift-ci Please test Windows platform

@swift-ci Please test

Build failed
Swift Test OS X Platform
Git Sha - f0887fa245cc9cced4e3db5f3d4877c708d03457

@swift-ci Please test OS X platform


Fix test expectations regarding header forwarding

Scope & Purpose
Align test expectations with changes from https://github.com/arangodb/arangodb/pull/11401

[x] Bug-Fix for devel-branch (i.e. no need for backports?)

Testing & Verification
Jenkins: http://jenkins.arangodb.biz:8080/job/arangodb-matrix-pr/9439/

Tests blue except unrelated failures.


Allow giving options per datafile

Users on Troll have requested feature to input options per datafile

datatypes as list, not only dictionary input
read from more than model folders?

   datafiles:
    ix/model/TROLL_PRED_IX-1:
      summary:
        column_keys: '*'
    eclipse/migrator/TROLL_PRED_IX-1:
      pvt:
        keywords:
          - PVTO
          - PVDG
    ix/include/ENS_NETWORK:
      vfp:
        keywords:
          - VFPPROD

Comment on what is made: still reading rft file, but should just skip when it doesn't


Tiny headline adjustment for the Issue event types page

The Issue event types page has a number of Event object properties headlines. All but one are H4s, as a single is a H3 instead.
As a H3 gets a link in the page navigation to the right, I thought I would change that to a H4 as well 😉
Since this is such a tiny change, I haven't created an issue.

@abjerner Thanks for opening a PR 👍 Please fill out the pull request template in the top comment in this pull request, then we'll get this up for review!

@janiceilene I've updated the PR now. I wasn't sure about check list, but makes more sense now that the tests have completed.

Thanks so much @abjerner! I'll get this triaged for review ⚡


Add a grep specific to FilePath

Don't you think it would be a nice idea to propose this function directly?
And may be to provide an example in the tutorial?
Typically in shell when you are doing **/* it won't match files and directories which start by a .:
allFiles <- fpgrep (invert (prefix "./.")) (find (has ".hs") ".")

Best.

How about a more general utility like this:
onFiles
    :: (Shell FilePath -> Shell FilePath)
    -> (Shell Text     -> Shell Text    )

Then you could not only use it with grep, but also with sed and cache

@Gabriel439 I would love to have a more generic utility, but I fail to see how I could achieve my example use case with the onFiles. In the end, I need to have a Shell FilePath.
The closer I could get is
onFiles :: (Text -> FilePath -> [b]) -> Shell FilePath -> Shell b
onFiles trans sa = do
  anA <- sa
  let bs = trans (either id id (toText anA)) anA
  select bs

From which I could do:
fpgrep :: Pattern a -> Shell FilePath -> Shell FilePath
fpgrep pat = onFiles $ \ txtpath fpath = match pat txtpath >> return fpath

or for my end use case:
allFiles <- onFiles removeStartingByDot  (find (has ".hs") ".")

removeStartingByDot :: Text -> FilePath -> [FilePath]
removeStartingByDot txtPath fpath = match pat txtpath >> return fpath

Of course I could also make something more general with:
onS :: (a -> [b]) -> Shell a -> Shell b
onS trans sa = do
  anA <- sa
  select (trans anA)

fpgrep :: Pattern a -> Shell FilePath -> Shell FilePath
fpgrep pat =
  on (\fpath -> match pat (either id id (toText fpath)) >> return fpath)

But I have to see the either id id (toText fpath) in my code. Which is exactly what I wanted to prevent and the first reason of this pull request.
Do you see a cleaner way?

You would use onFiles like this:
allFiles <- onFiles (grep (invert (prefix "./."))) (find (has ".hs") ".")

The reason this works is that grep pattern has type Shell Text -> Shell Text, and when you wrap it with onFiles now it has type Shell FilePath -> Shell FilePath.

@yogsototh Are you still working on this? If not, I'll give it a shot.

@devonhollowood not actively I'm afraid. Do as you wish!

Alright, so now we have an onFiles contributed by @devonhollowood in #180 so I'm going to mark this as fixed


Add GA tracking & parent frame callback to static pages.

Bug 1127905.
Also Cleaned up indentation.

@magopian @clouserw  r?

if it does what you want it wfm.  Please test it on -dev before friday. thanks

Confirmed behavior is working as expected on -dev. I'm getting messages posted to the parent frame and seeing GA events firing.

Woo hoo!


MaxAndSkipEnv is calculating the max over the last two time steps only

The MaxAndSkipEnv as it is right now is skipping over the skip observations and calculating the total reward properly over all the time steps, but the max over the observations is only calculated over the last 2 observations regardless of skip size. Is this intentional?
One could move the max_frame line into the loop and then it could use the deque of size 2 to keep track of the max over all the skip time step.

Yes it is, for consistency with original publication.


[CSM-559] Uniform naming for response types

🚴 🚴   Beware, bikeshedding in its purest form lies ahead! 🚴 🚴
This PR performs a bunch of renames and remove code which was originally committed as part of CSM-550 but wasn't really necessary (after all less code is better, right? 😉 ).
In particular, as part of this PR I propose we switch from response_type to simply response_format. The reason is that at the moment we have an HTTP header called Daedalus-Response-Format which has the same semantic, but we are naming the two differently (type vs format), which is confusing.
To bikeshed even further, the Oxford dictionary refers to a type as:

A category of people or things having common characteristics.

Whereas format is defined as

The way in which something is arranged or set out.

I would vote to go with format, as it describe better our intent (we are changing the shape of the response by passing a special parameter).
Let me know what you guys think!

@Martoon-00 @flyingleafe Ok, I'm merging this one in the virtue of the fact I'm starting some integration work on the /api/v1/wallets API and this is useful to have to pick up the pace (that for a prototype should be quick fast).
I'm happy to reconsider when we are all online (either via Slack or on the issue tracker).


Ensure that swapchain and attachments are always created with the same size

Sometimes, there is a validation error about attachments being smaller than the swapchain when the window is resized.
I presume that this is due to the fact that the surface extent is always queried again when stuff is recreated, and that this value can change inbetween.

The following commit fixes the bug: 01c6b26c98cb8b44ab15582837233a1c55027f88


A11y_AzureDataStudioSQL_Project_CreateProjectFromDatabase_Keyboard: Keyboard focus is getting trapped as it is not moving by hitting tab key when keyboard focus is on "cancel" button

“Check out Accessibility Insights! - Identify accessibility bugs before check-in and make bug fixing faster and easier.”
GitHubTags: #A11yMAS;#A11yTCS;#A11ySev2;#SH_AzureDataStudioSQL_Feb2021;#SQL Azure Data Studio;#Win10;#FTP;#DesktopApp;#WCAG2.1.2;#Keyboard;#AINotInScope;
Environment Details:
Application Name: Azure Data Studio
Windows Version: Windows10
Repro Steps:

Launch the application-Azure Database Project and install extension SQL Database Projects.
Tab till SQL Database Project Home Screen with heading "Projects".
Tab to connections select your server and connect to it.
Few databases will appear under your connection then press shift+f10 on any database
Tab till "Create project from database" and hit enter.
Tab to the "Cancel" button and press tab key.
Check if focus is moving to next focusable control or not.

Actual:
Keyboard focus is getting trapped as it is not moving to the next focusable control which is "Select connection" button by hitting tab key when keyboard focus is on "cancel" button.
Expected:
Keyboard focus should go to the next focusable control which is "Select connection" button by hitting tab key
User Impact:
Keyboard only users will face difficulty in navigating inside the pane.

I have verified the issue in the latest build 1.42.0 issue is fixed hence closing the bug

GithubTags:#Closed;#Regressed:02-20-23;


Error parsing azure server_id

Hello,
I cannot create users in an azure database using this code.
I'm using provider 0.2.1 with Terraform 0.13
resource "mssql_user" "user_all_read" {
      + authentication_type = (known after apply)
      + database            = "master"
      + default_schema      = "dbo"
      + id                  = (known after apply)
      + principal_id        = (known after apply)
      + roles               = [
          + "db_datareader",
        ]
      + username            = "app-all-read"

      + server {
          + host = "/subscriptions/1111-111-11-1/resourceGroups/reg-grp-01/providers/Microsoft.Sql/servers/sql-sl01"
          + port = "1433"

          + azure_login {
              + client_id     = "***"
              + client_secret = (sensitive value)
              + tenant_id     = "***"
            }
        }
    }

And this is the error:
mssql_user.user_all_read: Creating...

Error: unable to create user [master].[app-all-read]: parse "sqlserver://%2Fsubscriptions%2F21111-111-11-1%2FresourceGroups%2Freg-grp-01%2Fproviders%2FMicrosoft.Sql%2Fservers%2Fsql-sl01:1433": invalid URL escape "%2F"

I think it's not related, but my database collation is SQL_Latin1_General_CP1_CI_AS

The server.host property should be the database server name, something like sql-sl01.database.windows.net.

Closed since this is a resource configuration issue.


Class 'Barryvdh\Debugbar\LumenServiceProvider' not found

Does this package depends on Barryvdh\Debugbar, should I install it?
Even after installing it, the bar not appears

I'm also having the same problem

I'm also having the same problem

composer require barryvdh/laravel-debugbar --dev
solve for me


Fix error handling on duplicated APNS devices

If we have a duplicated registration ID on the APNSDevice model and we get an unregistered error after sending a message, it raises a MultipleObjectsReturned exception (get() returned more than one APNSDevice -- it returned ...!).
In order to fix this, we can update all the records with that registration ID instead of using objects.get.

Thanks @bielfrontera. It looks like there is a merge conflict, once that is fixed we can get this merged.

Thanks @bielfrontera. It looks like there is a merge conflict, once that is fixed we can get this merged.

Great! I've rebased and fixed the merge conflict.


Update tests to Behave

Codecov Report

Merging #37 into dev will increase coverage by 10.18%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##              dev    #37       +/-   ##
=========================================
+ Coverage   89.81%   100%   +10.18%
=========================================
  Files           4      5        +1
  Lines         108    119       +11
=========================================
+ Hits           97    119       +22
+ Misses         11      0       -11

Impacted Files
Coverage Δ

simqle/__init__.py
100% <ø> (ø)
:arrow_up:

simqle/constants.py
100% <ø> (ø)
:arrow_up:

simqle/connection_manager.py
100% <100%> (+11.23%)
:arrow_up:

simqle/internal.py
100% <100%> (+7.69%)
:arrow_up:

simqle/exceptions.py
100% <100%> (ø)

Continue to review full report at Codecov.

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


InlineKeyboard with constructor parameters

It's currently not that transparent without reading the documentation how to construct a InlineKeyboard. This is mostly because the __construct of InlineKeyboard (respectively Keyboard) uses func_get_args() to get the parameters.
An IDE like PhpStorm is unable to hint this.
A better approach would be to use
public function __construct(...$rows)

to give a hint that every Keyboard row can be passed via multiple parameters.

Agreed! Feel free to PR 👍
This is still from pre PHP 5.6 times...

I have the same problem.
If my InlineKeyboard data is obtained from the database, I will not be able to pass in parameters when the new object is used.

Closed for #1297


Change organization URL to rubocop-hq

Change organization URL from https://github.com/bbatsov to https://github.com/rubocop-hq/rubocop.
I heard that this is one of the milestone activities for RuboCop 1.0.0 at RubyKaigi 2018.
http://rubykaigi.org/2018/presentations/bbatsov.html#may31
In this PR, change CHANGELOG.md, relnotes, and service URLs (such as Travis CI, etc) are kept intact.
For each reason.

Old URLs in CHANGELOG.md and relnotes are redirected, so this PR leaves it.
Service URLs aren't ready for the new rubocop-hq organization, so this PR leaves it.

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[ ] Added tests.
[ ] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.
[x] Run rake default or rake parallel. It executes all tests and RuboCop for itself, and generates the documentation.

That was fast! Thanks!

It was nice to see your presentation. Thank you!

@bbatsov Repository URL has changed, so perhaps Travis CI (and Appveyor?) is not working. Would you please check the CI setting?

Is the presentation online yet? I'm not at Kaigi this year. 🙂

@bbatsov Repository URL has changed, so perhaps Travis CI (and Appveyor?) is not working. Would you please check the CI setting?

Unfortunately Travis CI still doesn't show the new org, even though I synced my profile a couple of times already. That's why I can't enable the build for the "new" repo.

@Drenmi It's here https://speakerdeck.com/bbatsov/all-about-rubocop-rubykaigi-2018
Btw, for AppSurveyor I can't even find how to force a resync of my GitHub orgs. Maybe this needs some time?

OK, I've sorted out Travis CI and AppSurveyor. I should stop doing things when I'm too sleepy. 😆

@Drenmi FYI, @bbatsov's presentation video at RubyKaigi 2018 was published 🎤
https://www.youtube.com/watch?v=nrHjVCuVsGA


[QUESTION]

Hi, the autocreation of the openapi doc is a cool feature, but there are situations when it is better disabled. This should be possible according docu on https://fastapi.tiangolo.com/tutorial/application-configuration/:
"If you want to disable the OpenAPI schema completely you can set openapi_url=None"
However, when using it in this way: app = FastAPI(openapi_url=None)
I get:
Traceback (most recent call last):
File "C:\dev\registry\serial numbers\server\app.py", line 12, in
app = FastAPI(openapi_url=None)
File "C:\dev\Python37\lib\site-packages\fastapi\applications.py", line 77, in init
assert self.openapi_url, "The openapi_url is required for the docs"
AssertionError: The openapi_url is required for the docs
I am using the latest version fastapi==0.46.0
Any help is appreciated!

You’re getting this error because you haven’t also set docs_url and redoc_url to None. If you change that it should work.

If the docs weren’t clear and this was confusing, a pull request updating the docs might be a good idea!

Thanks, that works! I am impressed of the lightning fast response ;-)

Yep. Agreed, @dmontagu rocks! Thanks for all the help here. :fist_oncoming: :bowing_man: :rocket:
I think that solves your problem, right @joegihu ? If so, you can close the issue.

Hey, to follow along on this, I'd say the docs aren't confusing per se as just incorrect: https://fastapi.tiangolo.com/advanced/conditional-openapi/ . If you follow the provided example, the app fails to start.
FastAPI v0.54.1
app: FastAPI = FastAPI(openapi_url="/openapi.json" if app_settings.development else "")
File "/.../lib/python3.7/site-packages/fastapi/applications.py", line 86, in __init__
assert self.openapi_url, "The openapi_url is required for the docs"

Is there a situation in which you'd want to set openapi_url but not the other two, and this error is desired? If I make a PR, it seems like it might be better to fix the bug rather than the docs, but happy to do either.
Thanks all.

@kalzoo We don't have that issue in the current version anymore.
FastAPI version: 0.59.0

@kalzoo We don't have that issue in the current version anymore.
FastAPI version: 0.59.0

True! Should have double-checked my work. Thanks :)


Dev > Master for v1.0.0 release

nf-core/viralrecon pull request
Many thanks for contributing to nf-core/viralrecon!
Please fill in the appropriate checklist below (delete whatever is not relevant).
These are the most common things requested on pull requests (PRs).
PR checklist

[ ] This comment contains a description of changes (with reason)
[ ] If you've fixed a bug or added code that should be tested, add tests!
[ ] If necessary, also make a PR on the nf-core/viralrecon branch on the nf-core/test-datasets repo
[x] Ensure the test suite passes (nextflow run . -profile test,docker).
[x] Make sure your code lints (nf-core lint .).
[x] Documentation in docs is updated
[x] CHANGELOG.md is updated
[x] README.md is updated

Learn more about contributing: CONTRIBUTING.md

did you bump version? I can still see some dev tags in the ci.yml file.

did you bump version? I can still see some dev tags in the ci.yml file.

Ah, not yet. I still want to get an AWS test in after the pipeline has passed review. This wont work if I bump-versions now because the container wont exist 🙄 Ill do that right at the end.

did you bump version? I can still see some dev tags in the ci.yml file.

Ah, not yet. I still want to get an AWS test in after the pipeline has passed review. This wont work if I bump-versions now because the container wont exist roll_eyes Ill do that right at the end.

I see.
My plan is to start working on the github action to build the containers soon if no one as done it already.

Thanks @MaxUlysse @apeltzer! Think I have answered all of your questions? That was way too easy 😅
Ill add the rest of the stuff when MultiQC is released but it shouldnt change the pipeline much. Thanks!

Thanks @heuermh 👍


BenchmarkDotNet doesn't seem to install all necessary dependencies

Description
paket.dependencies:
source https://www.nuget.org/api/v2
strategy: max
redirects: on
framework: >= net40

nuget BenchmarkDotNet = 0.10.1

in the nuspec of BenchmarkDotNet.Core (which is transitive dependency and installed), it seems to mention System.Threading.Tasks.Extensions
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
    <metadata>
        <id>BenchmarkDotNet.Core</id>
        <version>0.10.1</version>
        <title>BenchmarkDotNet.Core</title>
        <authors>.NET Foundation and contributors</authors>
        <owners>.NET Foundation and contributors</owners>
        <licenseUrl>https://github.com/dotnet/BenchmarkDotNet/blob/master/LICENSE.md</licenseUrl>
        <projectUrl>https://github.com/dotnet/BenchmarkDotNet</projectUrl>
        <iconUrl>https://raw.githubusercontent.com/dotnet/BenchmarkDotNet/master/docs/guide/logo.png</iconUrl>
        <requireLicenseAcceptance>false</requireLicenseAcceptance>
        <description>Powerful .NET library for benchmarking</description>
        <copyright>.NET Foundation and contributors</copyright>
        <language>en-US</language>
        <tags>benchmark benchmarking performance</tags>
        <dependencies>
            <group targetFramework=".NETCoreApp1.1">
                <dependency id="Microsoft.NETCore.App" version="1.1.0" />
                <dependency id="System.Runtime.Serialization.Primitives" version="4.1.1" />
                <dependency id="Microsoft.DotNet.InternalAbstractions" version="1.0.0" />
                <dependency id="System.Xml.XPath.XmlDocument" version="4.0.1" />
            </group>
            <group targetFramework=".NETFramework4.5">
                <dependency id="System.Threading.Tasks.Extensions" version="4.0.0" />
            </group>
        </dependencies>
        <frameworkAssemblies>
            <frameworkAssembly assemblyName="System.Management" targetFramework=".NETFramework4.5" />
            <frameworkAssembly assemblyName="System.Xml" targetFramework=".NETFramework4.5" />
        </frameworkAssemblies>
    </metadata>
</package>

on install, csproj targetting .net 4.5 doesn't have the System.Threading.Tasks.Extensions assembly reference added which I think is a bug.
Minimal project for addition in integration tests: paketbenchmarkdotnet.zip

Two Problems here :

Paket doesn't yet know anything about "netcoreapp1.1"
When Paket see an unknown target framework for a dependency it assume that it's for ".net 1.0 +"

I'll try to fix the first one but the second one might need input from @forki :

What to do here ? stop paket completly and require the user to fill an issue ?
If we just warn we need to do something about the .json cache : A new version of paket might generate a different cache and keeping old cached files is sure to confuse users. (Non working packages that would work if the cache was cleared)

NugetV2.fs:
        let split (d : string) =
            let a = d.Split ':'
            PackageName a.[0],
            VersionRequirement.Parse(if a.Length > 1 then a.[1] else "0"),
            (if a.Length > 2 && a.[2] <> "" then
                 if String.startsWithIgnoreCase "portable" a.[2] then
                    [ yield FrameworkRestriction.Portable a.[2]]
                 else
                     match FrameworkDetection.Extract a.[2] with
                     | Some x -> [ FrameworkRestriction.Exactly x ]
                     | None -> [] // XXX: This line shouldn't just ignore that we weren't able to parse something !
             else [])

BTW reflecting on that I don't think anything smart would scale into later versions for the cache.
The easiest way to go around it is to not include such references in the packages (So we ignore them) and use a version number in the json cache file name.
Such packages in the future will "just work" if nobody care about said unknown framework, and once we add them we'll bump the cache version number and they'll "just work" because the cache will be up to date.
It incur a cache re-generation each time we bump the value in paket but it just require internet acces and updating paket also require an internet access so it's not a big problem.

@vbox thanks for feedback, in my case I'm using framework > net40 (only .net framework on windows), I'm thinking it should already work for that section
<group targetFramework=".NETFramework4.5">
    <dependency id="System.Threading.Tasks.Extensions" version="4.0.0" />
</group>

Is it failing because it doesn't understand the previous sibbling section?

Is it failing because it doesn't understand the previous sibbling section?

Yes essentially any section with a framework reference unknown to paket can cause that problem. 3.35.0 should solve this specific case but i'll look into solving it for good (So that unknown frameworks don't risk affecting users that don't use them)

@vbfox understood, thanks for the clarification.
Yes if paket can handle those unknown sections (maybe log a warning in verbose mode) by just skipping those, I think that would solve the issue.

stop paket completly and require the user to fill an issue ?

stopping paket completely is not going to help user, in my case I could work around by adding the reference myself, if paket stops, I'm going to be upset because I need paket to complete other tasks instead of stopping there.
I don't understand the details about the cache though, but my thinking is that the full .nupkg is there and under packages it is fully extracted, no matter which framework restriction or settings I have.

stopping paket completely is not going to help user, in my case I could work around by adding the reference myself, if paket stops, I'm going to be upset because I need paket to complete other tasks instead of stopping there.

I think we'll avoid that 😉

I don't understand the details about the cache though, but my thinking is that the full .nupkg is there and under packages it is fully extracted, no matter which framework restriction or settings I have.

Essentially paket query the nuget server (via OData or whatever nuget v3 protocol uses) and cache the result to avoid querying it again (It might not need to download the package at all in the end so can't depend on the nupkg).
But that cache is essentially a Json serialization of paket data-structures not the raw received data so if it was download with Paket vX that didn't know about "netstandard 42.5" it can't reference it. Once a version of paket is available with "netstandard 42.5" the cache need to be invalidated.
It should be noted that this cache problem show in 3.35.0 : If you update today and start using it on the same machine it failed before BenchmarkDotNet won't work because the cache isn't invalidated (there is no logic to do that right now)  and paket will still think that the .Core dll is needed on framework 1.0+. (After a clear cache it should work)


Azure App Service Deploy: Azure subscription does not accept build variables

Environment
TFS on-premises: 2018 Update 2
Agent - Private: Windows 10
Issue Description
Attempting to use a build/release variable for the "Azure subscription" field, e.g. $(AzureTenantConnectionName). This throws an error at run time regarding an inability to find the auth information for that endpoint. Using the endpoint directly by selecting it from the dropdown works as expected.
We really need this parameter to be passable as a variable so that we can reuse task groups containing such steps to target different Azure Tenants.
Error logs
2018-06-30T12:35:31.4278877Z ##[section]Starting: App Service Deployment
2018-06-30T12:35:31.4292505Z ==============================================================================
2018-06-30T12:35:31.4293125Z Task         : Azure App Service Deploy
2018-06-30T12:35:31.4293960Z Description  : Update Azure WebApp Services On Windows, Web App On Linux with built-in images or docker containers, ASP.NET, .NET Core, PHP, Python or Node based Web applications, Function Apps, Mobile Apps, Api applications, Web Jobs using Web Deploy / Kudu REST APIs
2018-06-30T12:35:31.4294865Z Version      : 3.3.46
2018-06-30T12:35:31.4295319Z Author       : Microsoft Corporation
2018-06-30T12:35:31.4295851Z Help         : More Information
2018-06-30T12:35:31.4296462Z ==============================================================================
2018-06-30T12:35:32.1285471Z ##[error]Error: Endpoint auth data not present: {NAME OF THE SERVICE ENDPOINT}
2018-06-30T12:35:32.1327563Z ##[section]Finishing: App Service Deployment

@cytron201 Please refer to issue https://github.com/Microsoft/vsts-tasks/issues/5830
Let us know if you need any more information.

Closing the issue as no further customer communication. Please reopen if still blocked.

This is still a problem - the solution in user voice marked as correct/solved is a non-scaleable workaround at best (using a task group for every set of azure release tasks where a variable is used for the subscription/service connection ID).
My questions are:
On builds is this solved in YAML?
Is the hope that in releases it would be solved in YAML when that becomes available?
Currently the resolution is not ideal or scaleable

We have been able to reproduce this consistently. Using a variable and passing into a task that is part of a job targeting an Agent pool works. When we change the job to target a deployment group, and run a release, the task fails with the error "Error: Endpoint auth data not present: {NAME OF THE SERVICE ENDPOINT}"
Our current work-around is to use the Service Connection drop down and select the service connection (and not use a variable).

This issue can be closed as Done - it's now possible to set the Subscription parameter as a variable, in the more recent versions of this pipeline task.


Update insights-advanced-autoscale-virtual-machine-scale-sets.md

Fix typo.

Hi @alexandair, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
We will now validate the agreement and then real humans will evaluate your PR.
TTYL, AZPRBOT;

@alexandair : Thanks for your contribution to the Azure documentation! The author, @azdocprs, has been notified to review your proposed change.

@kamathashwin Hi Ashwin Please review the proposed changes. Thanks.

@kamathashwin cleared the changes. @sign-off

This has been reviewed by the author. Please ship it! Better yet to have author's sign off directly as a comment if possible.


After starting VS Code, I need to install the Dart extension every time

Type: Bug
After starting VS Code, I have to install the Dart extension every time, which is annoying.
It's happening with VS Code version July 2023 (version 1.81).
VS Code version: Code 1.81.0 (Universal) (6445d93c81ebe42c4cbd7a60712e0b17d9463e97, 2023-08-02T12:40:02.782Z)
OS version: Darwin arm64 22.6.0
Modes:

System Info

Item
Value

CPUs
Apple M2 Pro (12 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
2, 3, 3

Memory (System)
32.00GB (20.21GB free)

Process Argv
--crash-reporter-id 4009137d-4113-46eb-b93e-310be26dcba1

Screen Reader
no

VM
0%

Extensions (27)

Extension
Author (truncated)
Version

vscode-sqlite
ale
0.14.1

flutter-snippets
ale
3.0.0

vscode-neovim
asv
0.4.1

flutter
Dar
3.70.0

flutter-auto-import
dav
0.0.1

flutter-dependency-docs
djb
1.1.1

gitlens
eam
14.2.0

todo-tree
Gru
0.0.226

pubspec-assist
jer
2.3.2

flutter-tree
mar
1.0.0

compare-folders
mos
0.23.0

vscode-duplicate
mrm
1.2.1

vscode-docker
ms-
1.26.0

vscode-language-pack-ja
MS-
1.81.2023080209

vscode-kubernetes-tools
ms-
1.3.13

remote-containers
ms-
0.304.0

sqltools
mtx
0.28.0

sqltools-driver-mysql
mtx
0.6.0

sqltools-driver-pg
mtx
0.5.1

awesome-flutter-snippets
Nas
4.0.1

vscode-print
pdc
0.11.15

vscode-versionlens
pfl
1.5.0

material-icon-theme
PKi
4.29.0

sqlite-viewer
qwt
0.3.13

vscode-yaml
red
1.14.0

trailing-spaces
sha
0.4.1

vscode-gradle
vsc
3.12.7

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
vserr242cf:30382550
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscorecescf:30445987
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593:30376534
pythonvs932:30410667
py29gd2263:30792226
vsclangdf:30486550
c4g48928:30535728
dsvsc012cf:30540253
pynewext54:30695312
azure-dev_surveyone:30548225
vscccc:30803845
282f8724:30602487
89544117:30613380
2i9eh265:30646982
showlangstatbar:30737416
vsctsb:30748421
pythonfmttext:30731395
pythoncmv:30756943
fixshowwlkth:30771522
showindicator:30805244
pythongtdpath:30769146
i26e3531:30792625
gsofb:30804716
pythonnosmt12:30797651
pythonidxptcf:30805731
pythonnoceb:30805159
e537b577:30795824
dsvsc013:30795093
dsvsc014:30804076

Same for me with Github Copilot, Github Copilot Chat and Rust Analyzer while updating VSCode Insider on my Mac with remote workspace on Ubuntu 22.04

~/.vscode-server-insiders/extensions $ cat .obsolete
{"github.copilot-chat-0.7.2023080701":true,"github.copilot-1.101.322":true,"rust-lang.rust-analyzer-0.4.1617":true}#

Thank you for your comment.
Now I would like to proceed by downgrading VSCode.

After downgrading to the following version, I no longer need to constantly reinstall the Dart extension.
Version: 1.80.2 (Universal)
Commit: 2ccd690cbff1569e4a83d7c43d45101f817401dc
Date: 2023-07-27T21:05:41.366Z
Electrons: 22.3.14
ElectronBuildId: 22695494
Chromium: 108.0.5359.215
Node.js: 16.17.1
V8: <IP_ADDRESS>-electron.0
OS: Darwin arm64 22.6.0

This may be a duplicate of https://github.com/microsoft/vscode/issues/189877. Can you please try out the latest VS Code Insiders and let us know whether it's fixed there: https://code.visualstudio.com/insiders

This may be a duplicate of #189877. Can you please try out the latest VS Code Insiders and let us know whether it's fixed there: https://code.visualstudio.com/insiders

I tried.
I no longer have to reinstall the Dart extension on VSCode startup.
thanks you!


On error, what happens to a download?

The article https://docs.microsoft.com/en-us/uwp/api/windows.networking.backgroundtransfer.backgrounddownloader states that background downloads are persisted unless reattached (and eventually completed). What happens to a download when Attach'ing it fails? Is it disposed? Is it remains, out of the applications reach (and would it then prevent it from starting another download on the same URI)?

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

ID: bfbf6f6a-e8a1-1683-f9fc-93054c911c6b
Version Independent ID: f8466491-c957-a6dd-baca-bf45df1cd4e7
Content: DownloadOperation.AttachAsync Method (Windows.Networking.BackgroundTransfer) - Windows UWP applications
Content Source: winrt-api-build/xml/Windows.Networking.BackgroundTransfer/DownloadOperation.xml
Product: uwp
Technology: winrt-reference
GitHub Login: @stevewhims
Microsoft Alias: stwhi

Hi, @avakhrushev, and thanks for filing this issue. I don't have the info to answer this question, so I've notified the feature team (product group) about this issue, and sent them a link to it. In the meantime, be aware of these links in case you want to make use of them.

Here are all of the developer support resources, for completeness.

Microsoft Q&A is the right place to lobby for a change or a new feature, to make a suggestion, or to ask a product question.
For community assistance with development questions, there are our forums, and StackOverflow.
The Windows developer support site explains other support options.
The Visual Studio developer community is available, and responsive. The former User Voice feature is now there on the Suggest a feature tab, if you want to lobby for a change, a feature, or to make a suggestion.
For developer issues, or suspected product bugs, there's Microsoft Support; a support engineer will look at the repro and see whether the issue is a Microsoft product bug, or something else. If it's a bug with a Microsoft product then the ticket will be free of charge.

If you receive assistance via any support resource, and you believe that information would help us improve the docs, then please come back and let us know.
-Steve

The download will persist until attached and completed. but notice that most of the possible errors are either transient (like out of memory) or essentially impossible (like the access denied error) , or only possible based on unlikely programming issues (object disposed or invalid argument).
I would expect a typical user in the likely cases (out of memory) would exit the app and retry, at which point the attach would work
Note that the access denied can only be gotten if you start a download with a working program, then pause the donwloads, then update the user's app with a new version with reduced capabilities (e.g., you removed the private network capability and the download is from the local private network), and then attempt to attach.

"Most", "likely", the odds talk. I'd prefer to know how we are to make our apps behave, than to be comforted.
What if say keeping unfinished background downloads is what causes the Out Of Memory in the first place? Sounds like an unrecoverable state.

As long as you are attaching to the transfers when your app runs (e.g., at app start), then you are doing enough to keep the transfers running correctly. There are no extra steps needed.
In your hypothetical -- what if it's background transfer that causing the out of memory? -- we've never had a background transfer issue reported to us for this.

But the exceptions thrown are not hypothetical. Perhaps so should be the handling procedures.
Anyway, I don't see the point in dragging this discussion further. The feedback is given, I think there is a room for improving the articles, possibly the product itself. The rest is not up to me.

Hi, @avakhrushev. Thanks for your feedback. I'll go ahead and close this issue now, and I'll ping our SME to see whether there are any necessary changes needed to the topic.
Thanks!
Steve


Fix RefCounted.unreference() documentation providing wrong info.

The docs are wrong, but the suggested description is not accurate either RefCounted::unference() won't kill/free/release the object. Simply put, it decreases the reference count and returns true if it's 0 after the decrement. That can happen either because the call made it go from 1 to 0, or because buggy code called it again when it was already 0. The buggy caller case aside, true means that the object should be freed since no-one is referencing it.

The docs are wrong, but the suggested description is not accurate either RefCounted::unference() won't kill/free/release the object. Simply put, it decreases the reference count and returns true if it's 0 after the decrement. That can happen either because the call made it go from 1 to 0, or because buggy code called it again when it was already 0. The buggy caller case aside, true means that the object should be freed since no-one is referencing it.

Yeah but then it notifies the script of NOTIFICAITON_PREDELETE and if it runs .cancel_free() its gonna set die to false which is then returned as false, resulting in the object not being freed.

Either you or me are missing something. Can you please show your point with a piece of GDScript or C++? Code will act as a universal language.

The docs are wrong, but the suggested description is not accurate either RefCounted::unference() won't kill/free/release the object. Simply put, it decreases the reference count and returns true if it's 0 after the decrement. That can happen either because the call made it go from 1 to 0, or because buggy code called it again when it was already 0. The buggy caller case aside, true means that the object should be freed since no-one is referencing it.

I tested it with the
extends RefCounted
class_name TestRefCounted

func _notification(what):
	if self == null: return
	if what == NOTIFICATION_PREDELETE:
		print("Attempt to delete refcounted!")
		cancel_free()

extends Node

func _ready():
	var ref:=TestRefCounted.new()
	var weakref:WeakRef=weakref(ref)
	print(ref.get_reference_count())
	ref = null
	ref = weakref.get_ref()
	print(ref)

This doesnt even send a notification to delete it...
This is real strange.

Updated it. is it fine now?

The only pending thing would be squashing the four commits into one.
See https://docs.godotengine.org/en/stable/contributing/workflow/pr_workflow.html#the-interactive-rebase.

The only pending thing would be squashing the four commits into one.
See https://docs.godotengine.org/en/stable/contributing/workflow/pr_workflow.html#the-interactive-rebase.

... i thought that github does that automatically no?

Only if using the "Squash and Merge" feature, but we don't use it for a number of reasons. We prefer that PRs get squashed before merge.

Done

For the record, your commit seems not to be linked to your GitHub account. See: Why are my commits linked to the wrong user? for more info.

For the record, your commit seems not to be linked to your GitHub account. See: Why are my commits linked to the wrong user? for more info.

Yeah i know about that issue thanks!

Thanks! And congrats for your first merged Godot contribution :tada:

Cherry-picked for 4.1.3.


Change Repl Identity file path

Repl Identity files will be place under /tmp instead of /etc.

Current dependencies on/for this PR:

main

PR #22   👈

This comment was auto-generated by Graphite.


pdfx 2.5.0 is not available on pub.dev

Hi,
pdfx 2.5.0 is not available an pub.dev and needs to be pushed.

@ManuelRauber it is true, thanks. Package published from now
https://pub.dev/packages/pdfx/versions/2.5.0


Test Issue created at Tue, 06 Jul 2021 02:14:50 GMT

Test issue body  Tue, 06 Jul 2021 02:14:50 GMT

Comment on issue at Tue, 06 Jul 2021 02:14:51 GMT


Discuss on class ownership

Doing Pinning feature and tagging feature

did search feature (shown in d1), will help out for other features if needed

Doing the export report with different file types feature and will start taking ownership for classes associated with it

Ownership over PinProject class

My part is to focus on the logging feature of projects. So any actions such as update, create, delete to the project details will be logged and recorded to a repository to display user actions for Admin users


doc: trancerate document into Japanese

Dear, developers.
I did not have a mechanism to translate documents, so I created it.
In order to try this mechanism, I translated a document of Jubakit partly (Overview only) into Japanese.
We can generate Japanese HTML with just editing po file.
Especially if you do not need translation to other languages, I close this pull request.
If you merge this change we will also need to modify the publish.sh of jubatus / website.
Therefore, if this change is merged, also modify publish.sh and pull request.
Usage

First, we install sphinx-intl as below command.

pip install sphinx-intl

or
easy_install sphinx-intl

Second, we update po file or generate po file from rst file as below command.

make update-po

Third, we editing po file to trancerate document into other language.
Last, we generate html of each language in _build/${locale}/html as below command.

sh build.sh

Coverage remained the same at 88.038% when pulling a69ab388b0084004671a3c8061eb89823bce3f5a on komainu8:trancerate_document into 3f68d6907efd89f7b02aac0a91010dc18f8a8195 on jubatus:develop.

@komainu8 Thanks for your fantastic pull request!
We will accept your pull request in jubakit 0.5.5, April.
We also wait for your Japanese overview translation ;)

@shiodat Thank you for your comments.
I translated overview into Japanese and commit.

@komainu8
Sorry for late reply.
Thank you for your commit e15f0a14c63a23d6a9d8836253d4202f7fb1f671.
I made some comments and could you check it please?

@shiodat Thank you for your comments.
I've fixed them.

@komainu8 Thanks!
I'm going to merge this PR after Feb. 26.

@komainu8 This PR is now merged to develop branch 🎉
We are going to add Japanese translations to other documents.
The new Jubakit website will be released at 2018/04/23.

@shiodat Thank you for mearge my pull request.


Dark mode is not fully functional

I noticed the "Latest news" section (bottom right) from our main page isn't rendered properly under the dark mode. See picture below:

@rbradford Any thoughts or pointers?


Investigate scale-up failure on GCP to learn from it

The following was observed in the main 2i2c GCP cluster (project: two-eye-two-see, cluster: pilot-hubs-cluster).
Server requested
2023-02-08T18:24:48Z [Normal] pod didn't trigger scale-up: 1 node(s) didn't match Pod's node affinity/selector, 1 node(s) had taint {k8s.dask.org_dedicated: worker}, that the pod didn't tolerate, 1 in backoff after failed scale-up
2023-02-08T18:27:02Z [Warning] 0/3 nodes are available: 1 Insufficient memory, 2 node(s) didn't match Pod's node affinity/selector.
Spawn failed: pod aup/jupyter-shaolintl did not start in 600 seconds!

Why was a node in a 1 in backoff after failed scale-up state? The time was 2023-02-08T18:24:48Z.
Action points
Overall investigate and learn.

[x] Verify if this was really intermittent by using 2i2c and scaling up, using aup.pilot.2i2c.cloud to start pods where this ocurred.
This was intermittent. I've triggered a new scale up by starting a few servers, and the scale up operation went fast and smooth. Server requested
 2023-02-09T08:51:30Z [Warning] 0/4 nodes are available: 2 Insufficient memory, 2 node(s) didn't match Pod's node affinity/selector.
 2023-02-09T08:51:37Z [Normal] pod triggered scale-up: [{https://www.googleapis.com/compute/v1/projects/two-eye-two-see/zones/us-central1-b/instanceGroups/gke-pilot-hubs-cluster-nb-user-05192705-grp 2->3 (max: 20)}]
 2023-02-09T08:52:22Z [Normal] Successfully assigned aup/jupyter-consideratio to gke-pilot-hubs-cluster-nb-user-05192705-z2l8
 2023-02-09T08:52:23Z [Warning] Failed to create pod sandbox: rpc error: code = Unknown desc = failed to setup network for sandbox "03d377c0372fa1036b3ff5d4a20cdf9fcacbc2f0c488199574a1b53d272edb84": stat /var/lib/calico/nodename: no such file or directory: check that the calico/node container is running and has mounted /var/lib/calico/
 2023-02-09T08:52:26Z [Normal] Cancelling deletion of Pod aup/jupyter-consideratio
 2023-02-09T08:52:34Z [Normal] Pulling image "busybox"

[ ] If this doesn't reproduce for a fresh error to understand, consider if we can get logs from the cluster-autoscaler on GCP retroactively or similar to learn more

This seems highly relevant

Related

#2157


Get-IdPInitiatedUrl.ps1 code is wrong

the code for creating idpinitiatedsigon is wrong. please correct
#--------code start-----
<#
.SYNOPSIS
Constructs an IdP initiated SSO URL to access a portal page on the SP.
.PARAMETER path
The path to the portal page.
.PARAMETER rpid
The relying party identifier.
.PARAMETER adfsPath
The AD FS IdP initiated SSO page.
.EXAMPLE
PS C:> .\Get-IdPInitiatedUrl.ps1 -path "/content/sub-content/" -rpid
"" -adfsPath
""
#>
param
(
[parameter(mandatory=$true,position=0)]
$path,
[parameter(mandatory=$true,position=1)]
$rpid,
[parameter(position=2)]
$adfsPath = ""
)
$state = "ReturnUrl=$path"
$encodedPath = [uri]::EscapeDataString($state)
$encodedRpid = [uri]::EscapeDataString($rpid)
$encodedPathRpid = [uri]::EscapeDataString("RPID=$encodedRpid&RelayState=$encodedPath")
$idpInitiatedUrl = "{0}?RelayState={1}" -f $adfsPath, $encodedPathRpid
Write-Output $idpInitiatedUrl
#--------code end-----

@dbona75 Please provide a related documentation link so we can route your issue to the appropriate documentation author.
Unfortunately, we're unable to handle Support requests for the product here. To contact Support, visit https://powerapps.microsoft.com/support/.
You can also try posting your issue to one of the developer forums.
We accept incorrect or missing documentation and sample code issues.
Closing this issue. Create a new issue if this is a documentation issue and not a support issue.


B38 sex check

Add a folder for b38 sex check thresholds request
@rklocke

This change is

Hello @pofuoku! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file DI-1094/get_somalier_pred.py:

Line 23:80: E501 line too long (81 > 79 characters)

In the file DI-1094/plot_sex_check_thresholds.py:

Line 4:74: W291 trailing whitespace
Line 22:80: E501 line too long (82 > 79 characters)
Line 25:80: E501 line too long (88 > 79 characters)
Line 48:80: E501 line too long (81 > 79 characters)
Line 53:80: E501 line too long (83 > 79 characters)
Line 106:80: E501 line too long (81 > 79 characters)
Line 108:80: E501 line too long (86 > 79 characters)
Line 118:80: E501 line too long (98 > 79 characters)
Line 124:80: E501 line too long (90 > 79 characters)
Line 153:38: E712 comparison to True should be 'if cond is True:' or 'if cond:'
Line 162:80: E501 line too long (80 > 79 characters)
Line 207:80: E501 line too long (86 > 79 characters)
Line 214:80: E501 line too long (80 > 79 characters)
Line 225:41: E231 missing whitespace after ','
Line 255:80: E501 line too long (86 > 79 characters)
Line 262:80: E501 line too long (85 > 79 characters)
Line 275:80: E501 line too long (82 > 79 characters)
Line 284:80: E501 line too long (91 > 79 characters)

In the file DI-1094/run_sex_check.py:

Line 16:80: E501 line too long (87 > 79 characters)
Line 50:80: E501 line too long (81 > 79 characters)
Line 102:80: E501 line too long (81 > 79 characters)
Line 112:80: E501 line too long (82 > 79 characters)
Line 120:80: E501 line too long (86 > 79 characters)
Line 129:80: E501 line too long (80 > 79 characters)
Line 145:80: E501 line too long (82 > 79 characters)
Line 146:80: E501 line too long (85 > 79 characters)
Line 148:80: E501 line too long (86 > 79 characters)


"Checking if the SPN for Azure MFA is Exist and Enabled" Test Fails

This test fails if the max results are exceeded for the number of SPNs in your tenant. A false positive is created as a result. Simply adding the -All parameter to Get-MsolServicePrincipal alleviates this. I'll create a PR for this shortly.

I also had the same issue. Why was the PR not accepted yet?

I also had the same issue. Why was the PR not accepted yet?


We should have proper READMEs

We should have a README in root that properly reflects what's in the subfolders. The READMEs in each subfolder should explain anything that's specific to the subfolder and maybe going into more detail.

The README's should reference the PDFs, if possible.


Turning off hardcore logs makes it impossible to get tanned leather

If you turn off the ability to get Bark by punching trees - the only source of bark is using the saw, but the saw requires tanned leather to make - catch 22, tanned leather is impossible

Right-click with any axe on a log

I think the axe thing is no longer possible in 1.12, so dung is pretty much the way to go.

With mods like Animania and Wolf Armor, though, there's no way to get dung since vanilla animals don't spawn. Debarking logs with an axe was the only way to get into Better With Mods in the pack that I play with, and now that it's been removed Better With Mods is useless.

Yeah, I see your point. I really like debarked logs as an aesthetic option, so I'll look into restoring functionality with an addon.

Addon's done, or at least, the barebones version of it is. You can find it here.

Any reason they were removed from Better With Mods?

I think it was due to redundancy, and prime has noted that it would be a bit difficult to provide support more mods with debarked variants of their own. I think the addon might be the best approach for it.


[EDS-570] Exports box_number to front-end

This one is pretty straightforward. Enables the box_number output to the frontend for employee Persons and adds a test to ensure its inclusion.
Search for any employee at the JSON endpoint to verify, e.g.: http://localhost:8000/search?population=employees&name=cauce
          "people": [
            {
              "boxNumber": "35xxxx", // it's probably fine to include the real one but meh
              "departments": [
                {
                  "department": "University of Washington",
                  "title": "President"
                },

"boxNumber": "35xxxx", // it's probably fine to include the real one but meh

xxxx is for Github and the whole boxNumber should show in the application (checked, it does), ya?
Also, I pretty much forgot boxNumber -> box_number

yes


Trying to write multiple images, result is unreadable images

my code is:
NSString *zipFolderPath = [SF:@"%@/%@", NSTemporaryDirectory(), zipFolderName];
ZZArchive* newArchive = [[ZZArchive alloc] initWithURL:[NSURL fileURLWithPath:zipFolderPath]
                                               options:@{ZZOpenOptionsCreateIfMissingKey : @YES}
                                                 error:nil];

NSString *filePath = [NSTemporaryDirectory() stringByAppendingPathComponent:[SF:@"%@/%@%d%@",pathToImagesFolder, imageFileName, 1, imageExt]];

[newArchive updateEntries:
@[
[ZZArchiveEntry archiveEntryWithFileName:filePath
compress:YES
dataBlock:^(NSError** error)
{
return [@"hello, world" dataUsingEncoding:NSUTF8StringEncoding];
}]
]
error:nil];
for (int i = 2; i < self.totalImages; i++) {
filePath = [NSTemporaryDirectory() stringByAppendingPathComponent:[SF:@"%@/%@%d%@",pathToImagesFolder, imageFileName, i, imageExt]];
            ZZArchive* oldArchive = [ZZArchive archiveWithURL:[NSURL fileURLWithPath:zipFolderPath]
                                                        error:nil];
            [oldArchive updateEntries:
             [oldArchive.entries arrayByAddingObject:
              [ZZArchiveEntry archiveEntryWithFileName:filePath
                                              compress:YES
                                             dataBlock:^(NSError** error)
               {
                   return [@"bye, world" dataUsingEncoding:NSUTF8StringEncoding];
               }]]
                                error:nil];
    }

-[ZZArchiveEntry archiveEntryWithFileName:compress:dataBlock:] and friends do not automatically read and compress the file; you actually have to open the file within the block and return the data.

I am a noob to ios and objective c. as a noob I say the documentation is extremely unclear...
thanks for the answer.
for other noobs like me:
in the dataBlock you need to return the NSData of the object if the object is something like an image:
[newArchive updateEntries:
@[
[ZZArchiveEntry archiveEntryWithFileName:filename
compress:YES
dataBlock:^(NSError** error)
{
// return the data of the image
NSData *data = [[NSFileManager defaultManager] contentsAtPath:filePath];
return data;
}]
]
error:nil];
Tell me, what happens if the image was a very large image say a giga, wouldn't the app crash when loading a giga to memory through NSData?

If your image is up to around 700MB, you can memory-map the file with minimal issues.
NSData* data = [NSData dataWithContentsOfFile:filePath options:NSDataReadingMappedIfSafe error:&err];

This method doesn't actually consume all 700MB of memory in one go -- the system will only page in what's immediately necessary and drop parts of the map that aren't used.
For images > 700MB, I would recommend using the streamBlock: variation of archive entry instead. Search for streamBlock: in the test code for an example.

thanks for the help and quick replies. please consider fixing the documentation with more real life examples. especially of multiple file zipping and directory zipping.
Or maybe make a -(void)zipDirectory:(NSString *)directoryPath;
Anyway thanks... You are awesome for making this


docs(readthedocs): publish ledger support matrix for connectors

fixes #886
Signed-off-by: Elena Izaguirre<EMAIL_ADDRESS>

Codecov Report

Merging #1156 (55403e0) into main (119a23a) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #1156   +/-   ##
=======================================
  Coverage   73.19%   73.19%
=======================================
  Files         246      246
  Lines        8619     8619
  Branches      996      996
=======================================
  Hits         6309     6309
  Misses       1779     1779
  Partials      531      531

Continue to review full report at Codecov.

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

@elenaizaguirre Please add a direct link to the ReadTheDocs build here in the comments (the source changes look good to me, but I also would like to review the rendered version directly on the website).
You can add your personal branch on ReadTheDocs IIRC. If there's permission issues or technical ones just let me know and we can try to figure it out.

@petermetz This is the link to the new documentation: https://elenaizaguirre-cactus.readthedocs.io/en/issue886/support.html

@elenaizaguirre This looks awesome, thank you very much!
Couple nitpicks and then it's good to go:

For the Fabric 1.4.x run transaction endpoint we have this test case so it would be good to link to it as well: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/fabric-v1-4-x/run-transaction-endpoint-v1.test.ts
Instead of Supported Versions of Connectors on the left hand side menu I'd say Ledger Support Matrix and then in the sub menu items I'd just say the ledger's name without the word Support in it (e.g. Quorum instead of Quorum Support)
For Besu I'd link this test for the runTransaction support (technically it's the deploy contract test, but it also calls the run transaction endpoint after having deployed the contract so it covers both of them I'd say) => packages/cactus-plugin-ledger-connector-besu/src/test/typescript/integration/plugin-ledger-connector-besu/deploy-contract/deploy-contract-from-json.test.ts
The same tests are most likely present for Quorum and Xdai respectively so I'd also make sure that the run transaction column has the tests linked for those as well.

All in all, it looks really great, apologies for the nitpicking as usual!

Done!

@elenaizaguirre Sorry, more nits

Did the order of the ledgers change in the menu? Please order them alphabetically!
In Fabric contract invocation and transaction running are one and the same so the same test links can be shared between both of them.
Same for Corda as in 2) You could link to this test case for both run tx and invoke contract: packages/cactus-plugin-ledger-connector-corda/src/test/typescript/integration/jvm-kotlin-spring-server.test.ts

Done!

@elenaizaguirre Sorry, more nits

Did the order of the ledgers change in the menu? Please order them alphabetically!
In Fabric contract invocation and transaction running are one and the same so the same test links can be shared between both of them.
Same for Corda as in 2) You could link to this test case for both run tx and invoke contract: packages/cactus-plugin-ledger-connector-corda/src/test/typescript/integration/jvm-kotlin-spring-server.test.ts

Done!

@elenaizaguirre Looks awesome, thank you very much!

Thanks for contribution to documentation for supported ledgers of Fabric, Besu, Quorum, Corda, and Xdai!
@petermetz In fact, there are some ledger plugins (Go-Ethereum, Sawtooth, Indy) supported Cactus other than the ones written in the current document. I will post a pull-request about adding the ledgers on this document.

@takeutak Are those connectors published on npm yet?


UPDATE: MRKT HL2

Direct streaming of Oak-D output to Hololens 2 via Hololens Remote Player:

Added: MKRT
Added: Hololens 2
Tested: HL2 AOK

Hi ! First and foremost thank you for contributing to the repository. I had no time to write down the steps to contribute properly but open PR like this is fine. The only thing to take in consideration is I don't want to merge into main until we reach v1.0 in beta branch (according the roadmap). Do you mind to open same PR but against beta branch ?

Hi ! I'm checking the last patch and I see you worked on top of the URP project. Nothing wrong here too but I want to remark the compatibility thing. Non specific platform scenes should work fine for Mac/Linux/Win. I put URP project under folder OAKForUnity with the idea to add more unity projects (HDRP, Robotics, Synth data) .. Maybe it's good approach to very specific projects/examples. Thoughts? But anyway if you could send PR against beta I can review more easily and then we can take final decision on how to merge it to the repo, ok?

No problem. I completely understand. I would have put under a different track however it was not allowing me to select any other tracks or create a new one, unfortunately?