Vulkan CTS test crash because of invalid dimensions for PVRTC texture

This happens with MoltenVK from master and VK-GL-CTS from master on macOS 13.1 with a M1. Looks like MoltenVK reports a lot of image formats as supported in the vkGetPhysicalDeviceImageFormatProperties call even though they're not supported. Though the reason for the crash, namely Metal asserting because PVRTC_RGBA_4BPP did not have a compatible size.
From the CTS source it seems like the test generates a random image width and height, ranging somewhere between 2 and 18. It does not look like the Vulkan spec makes a requirement for the size of a PVRTC image dimensions needing to be a power of 2 or be a perfect square. The Metal docs also don't note any requirement either, though it seems like Apple GPUs have these implicit requirements in their PVRTC implementation.
  Call vkMapMemory() first.
-[MTLTextureDescriptorInternal validateWithDevice:]:1344: failed assertion `Texture Descriptor Validation
MTLTextureDescriptor has a PVRTC pixel format (MTLPixelFormatPVRTC_RGBA_4BPP) set with non-square and/or non-power of two dimensions.
'
zsh: abort      ./deqp-vk

Textures of all VK_FORMAT_PVRTC1_* formats must have power of two dimensions - it's an intrinsic requirement that does not depend on API used.

Additionally, Apple platforms require such textures to be squares.

Hmmm. I guess we should at least review what MoltenVK is reporting as supported.
We may then have to add flags to the Vulkan portability extension to indicate whether square PVRTC dimensions is a requirement.

Textures of all VK_FORMAT_PVRTC1_* formats must have power of two dimensions - it's an intrinsic requirement that does not depend on API used.

Hmm, now that I google that seems like it is true, though I'm finding conflicting information online about this. The only properly credible sources that say that PVRTC1 is power-of-two are Skia and the PVRTC2 announcement by the fact that PVRTC2 does not require power-of-two sizes. Should this maybe be raised as an issue to the Vulkan-Docs repository so that the Vulkan spec might add this requirement? Then I'd also make the change to the CTS so that it never uses a non power of two size for PVRTC1.

properly credible sources

Yeah. It's hard to find. There is surprisingly little documentation on that fact, considering it's such a definitive user restriction.
The PVRTC1 section of the Khronos Data Format Specification includes the line:

PVRTC1 images must have dimensions that are power of two values.

This restriction is mentioned in the original OpenGL ES extension and is also present in the KDFS (as quoted above), which is normatively referenced by Vulkan. For completeness, the Vulkan extension should mention that as well.

Another Metal restriction that applies to all PVRTC1 formats:

The compressed pixel format MTLPixelFormatPVRTC_RGB_4BPP cannot be used with MTLTextureType3D. PVRTC 3D textures are not supported.

Hmmm. I guess we should at least review what MoltenVK is reporting as supported.

This part is fixed in #1780.

With 1.3.279 the power-of-two requirement has been added as a VUID to the Vulkan specification. Would you prefer to catch the invalid usage to avoid Metal throwing an assertion, or do we just keep that as an error for anyone who uses it?
I'm working on a small PR for the conformance tests to use correct sizes. Though I think this issue can now be closed.

With 1.3.279 the power-of-two requirement has been added as a VUID to the Vulkan specification. Would you prefer to catch the invalid usage to avoid Metal throwing an assertion, or do we just keep that as an error for anyone who uses it?

Thanks for the intel.
With Vulkan, implementations are deliberately not tasked with enforcing validation. That's the job of the Validation Layer. This approach allows implementations to avoid the extra effort and time to check everything. So, we can ignore it, and let Metal validation take care of spanking the app for not following the validation rules.

I think this issue can now be closed.

Great. Doing so now!

I have sent a PR to the conformance tests to fix the validation.

Thanks for taking care of that!

@billhollings I suggest keeping this issue open a bit longer because:

The new VUIDs haven't been implemented in VVL yet.
Apple GPUs have an extra requirement that PVRTC1 textures must be squares. Attempting to upload a non-square PVRTC1 texture would lead to a Metal runtime failure. Ideally, this limitation should be documented as a part of Vulkan Portability initialive.

@billhollings I suggest keeping this issue open a bit longer because:

The new VUIDs haven't been implemented in VVL yet.
Apple GPUs have an extra requirement that PVRTC1 textures must be squares. Attempting to upload a non-square PVRTC1 texture would lead to a Metal runtime failure. Ideally, this limitation should be documented as a part of Vulkan Portability initialive.

I'm not too bothered about the VUID implementation, because either way we have nothing to track or do for MoltenVK.
Good point about portability. We don't include VK_IMG_format_pvrtc in the current Vulkan 1.0 effort, but we will definitely have to address it in a later portability extension, which will include all MoltenVK functionality. That will show up and be tracked and addressed in CTS testing then.
So I think we're okay to leave this closed for now.

@billhollings I had an idea about the requirement of square issues imposed by the Metal driver. What if MoltenVK would just extend the image size internally to be square to make the Metal driver happy? Or would that be too large a memory overhead to justify?

@spnda There are multiple major issues with implicit padding:

Texture dimensions must be powers of 2 so, for example, 32x64 would be padded to 64x64.
Such padding would be incompatible with pre-existing texture coordinates unless shaders are patched at runtime.
PVRTC1 blocks are stored in Morton order, which makes any dimension changes non-trivial.
PVRTC1 blocks are not self-contained, i.e., the decoder uses information from multiple adjacent blocks to reconstruct the image.

There are multiple major issues with implicit padding

Presumably it would also get in the way of VkSamplerAddressMode interpretation, since the repeat, edge, and border extrapolation would be different with a different size.


can not build with the latest rockdb version

err msg is: github.com/tecbot/gorocksdb/options.go:328: not enough arguments in call to _Cfunc_rocksdb_options_set_compression_options
rocksdb 4.1 is ok
thanks

which version did you see this error with?

@tmm1
pull from github, master branch

i am getting the same error. i pulled it from github master branch

@tecbot this can be closed too


adds nodejs-latest packages

Motivation for this change
Well, from what I've understand nodejs package is version locked to v8 for compatibility reasons, but this makes it hard for people who want to stay on the latest release. Current latest package is nodejs-12_x but after a while v13 will release and we will have a package called nodejs-13_x and most people will miss this update. So I propose nodejs-latest package definitions.
Thanks to @samueldr, @alexarice , @infinisil from IRC :)
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

I've tested these packages with the following:
cd into root of project
nix-build -A nodejs-latest
nix-shell -p nodejs-latest -I nixpkgs=.

As per https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md you'll probably want to squash all the commits into one per package added, and have the commits be something along the lines of nodejs-latest: init at v12 and nodejs-slim-latest: init at v12. I'm not 100% sure what the protocol for aliases are.

As per https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md you'll probably want to squash all the commits into one per package added, and have the commits be something along the lines of nodejs-latest: init at v12 and nodejs-slim-latest: init at v12. I'm not 100% sure what the protocol for aliases are.

Should be good now :) Ty for mentioning

@Infinisil changed the package, commit and pr names accordingly

Looking good thanks :)


Take into account query in input url.

What does this fix? Could you give example for some URL

Hello @fsur
This makes the url work. But please could you use urlparse to parse the query parameter and get the base url instead of custom regex. As that would probably also handle all the edge cases.
Thank you

Since I didn't heard back, I did the changes myself.
Thanks!

Hi Yash,
Sorry I have been busy last week. I was going to perform the modification,
but I see in your last email that you did it yourself. Sorry and thanks !
Bye
Le ven. 27 mai 2022 à 07:38, Yash Rathi @.***> a écrit :

Closed #12 https://github.com/yashrathi-git/vimeo_downloader/pull/12.
—
Reply to this email directly, view it on GitHub
https://github.com/yashrathi-git/vimeo_downloader/pull/12#event-6690183289,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUMI45HJQXMDUJHCFQGRJUDVMBNVZANCNFSM5W2KBLHA
.
You are receiving this because you were mentioned.Message ID:
@.***>

No worries, I understand, thanks for the PR
I thought it would be bit inefficient to ask for small changes.


Use static .svg for Travel terms & conditions page, not a .lottie file

Coming from this comment here:
Problem:
The image used in the Travel terms & conditions RHP modal is just a static .svg image, yet it was implemented as a .lottie file because that component only accepts .lottie files for the illustration portion
Solution::
Fix the component so that it can accept a static .svg file to use as the image.
This issue should be assigned to @WojtekBoman

cc @twisterdotcom @bfitzexpensify

@WojtekBoman please comment on this issue!

Hi! I'm going to work on that :)

@twisterdotcom I reviewed the associated PR. Can you please assign me the issue. I will require payment summary to request payment on newDot.

$250 approved for @sobitneupane


gulp-ruby-sass stderr:...needless argument: --sourcemap=none (OptionParser::NeedlessArgument)

Hi,
I am seeing an issue that appears to be the same as #145 with version 1.0.0-alpha.3. The error is:
gulp-ruby-sass stderr: /Library/Ruby/Gems/2.0.0/gems/sass-3.3.8/lib/sass/exec.rb:41:in `parse': needless argument: --sourcemap=none (OptionParser::NeedlessArgument)
My gulpfile function is
gulp.task( 'css', function() {
    return sass('sass/*.scss', {
            loadPath: require('node-bourbon').includePaths,
            lineNumbers: true,
            verbose: true,
            trace: true
        })
        .pipe( gulp.dest( 'css' ) );
});

Any ideas how to resolve this issue? No CSS is being output. It is only since updating my version of gulp-ruby-sass and updating to move away from the gulp.src syntax that I have had an issue.

Lots of people have been tripped up by this. The answers you seek are in the README, also in closed issues.

Hi @robwierzbowski, could you please point me in the direction of the README you mention? This file appear to be for versions before 1.0.0 https://github.com/sindresorhus/gulp-ruby-sass/blob/master/readme.md

Sure. In the https://github.com/sindresorhus/gulp-ruby-sass/blob/master/readme.md#note-pre-10-versions-are-no-longer-supportedplease-try-100-alpha section there's a link that says "New documentation here". In it you will find that grs supports Sass 3.4+ only, and that it currently doesn't support globs. Hope that helps — if you still have trouble feel free to post back.

Thanks @robwierzbowski  Apologies, I misread my Sass version and thought it was greater than 3.4.

No worries!

Changing a lot on the way to 1.0, so many people are getting confused. I try to add all the common cases to the docs though.


Followup to #2485 to add opengl context

Description
PR puts call inside opengl context, which can be needed if done on startup before canvas is created. Also makes comment more clear. cc @JoOkuma @jni
Type of change

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

All good!! No worries


Password rotate action implementation.

Issue
Enhancement to add action to rotate admin passwords.
Solution
Implementation of actions get_password, set_password
Context
Need an action to manage credentials for various admin passwords.
Testing
Integration test added for explicit and silent password rotation scenarios.

@averma-canonical as we talk, we have a few points to tackle:

split configure backup into another PR. This should be about password rotation only
remove deprecated actions for credentials retrieval

make sure if these are used in integrations tests, to refactor accordingly

add system users list to constants.py
if possible refactor get/set secrets without scope, since most probably unit is not used - double check legacy relations
extend mysql.py lib with a update_user_password function
replicate PR's to mysql-k8s operator

if possible refactor get/set secrets without scope, since most probably unit is not used - double check legacy relations

I would keep scope. Reason: we are going to implement TLS integration soon. Each unit needs its own TLS certificate but only leader can write into scope="app"


Provide docs around customizing font-family

In this thread on Reddit: https://old.reddit.com/r/reactjs/comments/a6qhbr/checked_21_react_ui_kits_briefly_im_done/ we had a great question around how to customize things like the font-family for Carbon Components. We should definitely provide some quick docs on how to accomplish this when using Carbon 😄

Related: #2359


[Event Request] Provide IsHandled around event OnBeforeReplaceSIComponent [Codeunit - ServItemManagement]

Describe the request
Please provide an IsHandled and exit clause to the existing event OnBeforeReplaceSIComponent within procedure AddOrReplaceSIComponent.
IsHandled := false;
OnBeforeReplaceSIComponent(ServLine, ServHeader, ServShptDocNo, ServShptLineNo, TempTrackingSpecification);
if IsHandled then exit;

Additional context
Within codeunit 5920 ServItemManagement it is not possible to bypass standard functionality.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 14041.


Refactor current approach to importing ggplotly and plot_ly objects in DashR

I had a very useful conversation with @alexcjohnson this afternoon, in which we discussed possible solutions to importing figure objects from plotly::plot_ly into DashR.
One pipeline for importing a figure produced by the plotly package looks like (thanks, @nicolaskruchten):
library(plotly)
p <- plot_ly(data = iris, x = ~Sepal.Length, y = ~Petal.Length)
plotly_figure <- plotly_build(p)$x

The resulting plotly_figure object then contains data and layout which should be suitable for dropping into dccGraph. Notably, the output of the plot_ly function includes an x$visdat field.

R's JSON formatter lacks hooks
The challenge in DashR is that jsonlite::toJSON appears to offer no route to easily implementing hooks as json.dumps does in Python, so we cannot conditionally pre-process toJSON's input on the way to producing its stringified output.

"Walking and mutating"
A temporary solution is to crawl the layout, recursing into any children of components, to identify properties which may contain x$visdat, and transform their contents using plotly_build prior to passing them along to jsonlite::toJSON.

Mutating the entire object before passing it to jsonlite::toJSON could be problematic if a DashR app is written such that global information about the layout is expected to be in its original, unmutated format. (A possible example involves a Dash app with tabs; @rpkyle will try to mock up a sample to demonstrate.)

Desired resolution
This issue will be resolved when the approach (currently in development) to supporting plot_ly and ggplotly objects is refactored to use a walking and replacing (analogous to what currently happens in Dash for Python) approach in lieu of the walking and mutating strategy above.

@chriddyp

What is the status of integrating ggplot with dashR?

What is the status of integrating ggplot with dashR?

@heoa Dash for R provides full support for inlining Plotly figures, including those produced by the plotly package, with either the plot_ly or ggplotly functions. You also asked this question in https://github.com/plotly/dashR/pull/71, and I've included a working example there.
Dash also allows you to easily include "subplots" produced by the plotly package in your apps.
Have you had a chance to check out our community forum? It's a great resource for general questions like these: https://community.plot.ly.


[docker hub] search by image checksum sha256

Add support for searching images by sha256 (long or short)
For instance: https://hub.docker.com/search?q=e9f3cec3b8f7
Which service(s) is this request for?
Software supply chain analysis
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
In the context of software supply chain analysis, I need a way to trace from a docker image to an entry on dockerhub.
For that, we search by image checksum sha256
https://hub.docker.com/search?q=e9f3cec3b8f7
Are you currently working around the issue?
N-A

1


make a hamburgar icon

When the user clicks (or taps) the hamburger button, the mobile menu appears.
When the user clicks (or taps) the close (X) button, the mobile menu disappears.
When the user clicks (or taps) any of the mobile menu options, the mobile menu disappears
When the user clicks (or taps) any of the mobile menu options, a correct part of the page is displayed.
The design as much as possible (e.g., font, colors, images, text, margins) using the templates in Figma

thanks


ContainerRegistry: A /v2/ protocol check response is allowed to be empty

Motivation
The registry indicates that it supports the v2 protocol by returning a [200 OK response](See https://github.com/opencontainers/distribution-spec/blob/main/spec.md#determining-support)
Many registries also set Content-Type: application/json and return empty JSON objects in their responses but this is not required and some, such as ECR, return empty responses.
Modifications
Do not require the API check response to contain an empty JSON object.
Result
Pushing to ECR will no longer fail with an "The given data was not valid JSON." error message.
Test Plan
Automated tests continue to pass, tested manually with ECR.

This change fixes the "The given data was not valid JSON." message reported in #14, but pushing to ECR still does not yet work because of #17.


Question: harvester connecting to pipes

i am using the latest version of the mod and i have been trying to pull the items out of the harvester but cant find anything that will do it i am playing Horizons 3 modpack on a server

Hopper, item conduits/cables, etc.?

i have tried using the item ducts from thermal but they dont pull the items out of the harvester

@vertex101  have you tried connecting to the bottom? They might not come out on the side, and if not i can update that.
I know a hopper does pull from below.

Made change to allow side connections

i tried all sides with the item conduit n servo

all sides even the bottom?
In old version it only connected on bottom, in this new version it should extract items on the sides.    https://minecraft.curseforge.com/projects/cyclic/files/2501283
If this new version doesnt work let me know

yeah it was old sides but i will download that new version and do a test to see if it works with the itemducts and will let you know

I'm using 1.9.13 and have a hopper below a harvester, but nothing drops in.

Ok ill fix it, thanks for the feedback

My issue with this was related to #596 so disregard my reply in this issue.

Fix version Cyclic-1.12.2-1.10.0


New error, TypeError: i is undefined AxisChart.js:408:29

Expected Behaviour
No errors in the console
Actual Behaviour
TypeError: i is undefined AxisChart.js:408:29
value AxisChart.js:408
value AxisChart.js:396
Steps to Reproduce:

clone https://github.com/GrosSacASac/graphs
npm ci
npm run serve
open localhost URL
open console

Frappé Charts version: 1.3.0
Note:
The rest works fine. It is only visual. The error is a regression from version 1.1.0

I got the same issue when using v1.3.0 to make bar and line charts. Switched to v1.2.4 and the issue is gone.

This issue is fixed in the recent versions, here's the PR for it


Create Galaxy tutorial for pymuonsuite tools and workflow

Follow the Galaxy Training Network tutorial format.
Reference repo here: https://github.com/galaxyproject/training-material

Revisiting after redesigns to underlying PMS tools/workflow. Outstanding tasks:

[ ] Video material
[ ] https://github.com/muon-spectroscopy-computational-project/pymuon-suite/issues/44
[ ] Need to recreate "skeleton" from final version of the workflow
[ ] Copy existing scientific content from patrick/1-materials-tutorials and vet
[ ] Include dependency on or links to other tutorials:

Workflows
Sharing histories
RO-Crate export

[ ] Investigate CYOA/choice blocks @subindev-d

Maitrayee and Nalin have have the example cases.  We need to add them to the tutorial.


Feature/audio message types

I needed to add the ability to send recorded messages in the chat, so I created an AudioMessage type in here and there is an associated pull request in flutter_chat_ui that will depend on this one.

@sarbogast why did you cancel this pull request. I think this pull request makes sense independent of the used player because it has no coupling at all to the target player and its license. Also all the used properties in the pull request make fully sense to me


How to handle Global variables in Bruno

we are migrating our collections from post man to bruno, Few projects have global variables, how to use it ?
One work around : adding global variables values inside the env section.

It would be nice to have "vars" in the collection also.

We either need globals or sub-environments.

If no one's working on this feature i can take it

See https://github.com/usebruno/bruno/issues/115 for more discussion on the subject

Closing this as a duplicate of https://github.com/usebruno/bruno/issues/115.

Hello,
I think this issue was closed as a duplicate but is not a duplicate becuase environments and variables are different things.
Environments changes with the ... environments. Let's say we change an API_KEY, some configurations on the deployed APIs then yes : the environment configuration should change and make sense.
But, on our case for example, we have a variable like userId to use on many requests on different places depending on the requests: url parameter for some GET, body parameter for some POST and PUT, etc. This variable change frequently when our developpers tests and explore the API.
Currently there is two way to do that :

Setting a userId variable on the .env, and when changing it: leaving bruno, updating the .env file then openning again Bruno and doing the request. Long and teddious.
Manually changing the value of the userId on every requests, long, and prone to errors.

That is why environments !== variables. Having a simple variable UI per collection, easy to update from the requests maybe is going to be game changer. On our case I whould love to provide a Bruno repository for my team, but the experience is still not ready for an enterprise usage IMO.
In any case : great project and thank you!


Hypotesis

Hyp 1 : Find the pledged amount estimation to the stakeholder on the base of given Catagory -> Subcatagory -> country and the goal amount.  To Estimate if this kickstarter going to be Succesfull or Failed.
Hyp 2 : Find the pledged amount estimation and No. of Expected Backer to the stakeholder on the base of given Catagory -> Subcatagory -> country and the goal amount.  To Estimate if this kickstarter going to be Succesfull or Failed.
Hyp 3 : Find the pledged amount estimation and No. of Expected Backer , with their minimum must donation amount to the stakeholder on the base of given Catagory -> Subcatagory -> country with in the deadline the goal amount.  To Estimate if this kickstarter going to be Succesfull or Failed.

In this Hypothesises we will evaluate two probable targets of the future model:
-Pledged money
-Pledged to Goal coeficient (if >=1 than kickstarter is succesfull)
The features for the model are goint to be all other variables.
In the evaluation we will drop all other states than successfull and failed, as they do not matter.
The EDA should conclude with psydocode for the ML model, that includes pipelining, bagging model.


Grammar / fixity

I've been messing with building tools to create watch faces, it would be super helpful to have the exact grammer (or at least operator fixities) for arithmetic expressions.
It would also help to know what escape sequences are supported by strings in arithmetic expressions.

Hi @KyleDavidE, the operator precedence should be as per Java, please let us know if you're experiencing anything unexpected.
As for escape sequences for strings in arithmetic expressions, I don't think they are supported, in my limited experiments. Do you have a particular problem you're looking to solve?


LoweringError in nopython mode pipeline from [[y], [0]]

Numba is very useful and impressive but it raises a LoweringError in some cases.
Goal: Numba-compile a matrix expression.
We're using Sympy to construct a symbolic matrix and in some cases compute a Jacobian of the matrix, then using that to construct and eval code that looks like
lambda y, t: np.array([[-100000000.0*y[6]**1.0, …], …, […]])

then calling numba.njit() on the lambda value. This lambda doesn't close over any local variables. It's built via eval(code, {'np': np}, {}), given the conventional import numpy as np.
I boiled it down to a simple non-matrix failure case, below, and commented on a small variation that doesn't raise an exception but in practice I can't use that as a workaround without somehow replaces integer literals with floats in matrix elements but not in array indexes.
Also, calling numba.jit() on the actual matrix expression gets stuck, running longer than I was willing to wait for it, so that won't work as a workaround, either.
Thanks!
Operating system: macOS Mojave 10.14.4.
Python: 2.7.16
pip numba: 0.43.1
pip llvmlite: 0.28.0
Minimal reproducible test case:
from __future__ import absolute_import
from numba import njit

def numba_stress(y):
	return [[y], [0]]  # will cause LoweringError
	# return [[y], [0.0]]  # won't cause LoweringError

def test():
	y = 100.0
	numba_stress_jit = njit(numba_stress)
	r1 = numba_stress(y)
	r2 = numba_stress_jit(y)  # <-- raises LoweringError
	assert r1 == r2

test()

Stack traceback and error message:
Traceback (most recent call last):
  File "/usr/local/var/pyenv/versions/wcEcoli2/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 2878, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-2-765ea0969bed>", line 1, in <module>
    runfile('user.numba_test', wdir='/Users/jerry/dev/wcEcoli', is_module=True)
  File "/Users/jerry/Library/Application Support/JetBrains/Toolbox/apps/PyCharm-P/ch-0/191.6605.12/PyCharm.app/Contents/helpers/pydev/_pydev_bundle/pydev_umd.py", line 210, in runfile
    runpy._run_module_as_main(module_name)
  File "/usr/local/var/pyenv/versions/2.7.16/lib/python2.7/runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/local/var/pyenv/versions/2.7.16/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/Users/jerry/dev/wcEcoli/user/numba_test.py", line 15, in <module>
    test()
  File "/Users/jerry/dev/wcEcoli/user/numba_test.py", line 12, in test
    r2 = numba_stress_jit(y)  # <-- raises LoweringError
  File "/usr/local/var/pyenv/versions/2.7.16/envs/wcEcoli2/lib/python2.7/site-packages/numba/dispatcher.py", line 369, in _compile_for_args
    raise e
LoweringError: Failed in nopython mode pipeline (step: nopython mode backend)

File "user/numba_test.py", line 5:
def numba_stress(y):
	return [[y], [0]]  # will cause LoweringError
 ^

[1] During: lowering "$0.5 = build_list(items=[Var($0.2, /Users/jerry/dev/wcEcoli/user/numba_test.py (5)), Var($0.4, /Users/jerry/dev/wcEcoli/user/numba_test.py (5))])" at /Users/jerry/dev/wcEcoli/user/numba_test.py (5)
-------------------------------------------------------------------------------
This should not have happened, a problem has occurred in Numba's internals.

Please report the error message and traceback, along with a minimal reproducer
at: https://github.com/numba/numba/issues/new

If more help is needed please feel free to speak to the Numba core developers
directly at: https://gitter.im/numba/numba

Thanks in advance for your help in improving Numba!

BTW commenting out the from __future__ import absolute_import makes the test case raise a ValueError during from numba import njit:
  File "/Users/jerry/dev/wcEcoli/user/numba_test.py", line 4, in <module>
    from numba import njit
  File "/Users/jerry/Library/Application Support/JetBrains/Toolbox/apps/PyCharm-P/ch-0/191.6605.12/PyCharm.app/Contents/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
ValueError: __package__ set to non-string

Thanks for the report. The issue you are seeing is because the global y is a float type and this is causing lists of mixed types to be used in a nested list. Lists have to be of homogeneous type i.e. "list of integers" or "list of complex128", in this particular case there is:
[[y], [0]] # list of (list of float) (list of int)

which fails, because list of float != list of int, i.e. list is heterogeneous. Then there is:
[[y], [0.0]] # list of (list of float) (list of float)

which works fine as the list is homogeneous with all elements being type "list of float".
This is another demonstration of the problem, without the use of a global:
from numba import njit

def heterogeneous_list():
    x = [1]
    y = [1j]
    z = [x, y]

njit(heterogeneous_list)()

As this ticket is fundamentally a duplicate of https://github.com/numba/numba/issues/3818 I'm going to close it.

RE:

BTW commenting out the from future import absolute_import makes the test case raise a ValueError during from numba import njit:

I'm not sure what the issue is here but if you can isolate it please open another ticket with a reproducer, thanks. Locally I see:
$ python -c 'import numba; print(numba.__package__)'
numba

so am wondering if it's IDE configuration/setup related.

Indeed, modifying the PyCharm "Run/Debug Configuration" to uncheck "Run with Python console" (which apparently means iPython) and/or switch from running a "Module name" to a "Script path" fixes the import problem ValueError: __package__ set to non-string. Running from a terminal window doesn't hit that problem, either.
Thanks for your help.

@1fish2 thanks for reporting that you've got it working, glad to hear it! Thanks for using Numba :)


Fixed some issues with xsd elements

Namespace was not fetched properly when definitions.xmlns[type.prefix] is undefined. There appears to be a small typo in the logic that was fixed. Please comment if this logic was intentional and we can discuss it.
Some types are still strings when the defaultsDeep is called. Explicitly checking for strings before calling defaultsDeep resolves the issue

Coverage remained the same at 93.284% when pulling 082845163efa2d634337fbeaaa5ce356bb201ab3 on zanemcca:fixed-xsd-errors into 33e170e0c183f565a1fc5c55921ef4465693767e on vpulim:master.

please fix the build

I updated the first patch to be more specific to the particular use case. I am a node-soap newb so any input on the fix would be appreciated.

can you add a test?

Test added :)

thanks!

Thank you @jsdevel! When should I expect this to be published?

we're due for a publish soon.  i may have time in the next few days


frozen dict doesn't support recursive

I found the top level dict type is frozen_dict.FrozenDict, but if one element is a dict, frozen_dict.FrozenDict will not process it, just keep it original type

Can you send me the code or a screenshot?
Steve Zelaznik
410.375.8414
Sent from either an
iPhone or an Android

On Jun 9, 2015, at 8:10 AM, dawncold<EMAIL_ADDRESS>wrote:
I found the top level dict type is frozen_dict.FrozenDict, but if one attribute is a dict, frozen_dict.FrozenDict will not process it.
—
Reply to this email directly or view it on GitHub.

@zelaznik

I init FrozenDict instance with a dict, but the inner dict d1 also the dict type and I can modify d1

That's by design.  It's not recursively frozen.  The only thing that's frozen are the key-value pairs.  The values themselves can be mutable in the same way that a tuple can contain a list,

Thanks @zelaznik
Actually, we write a frozendict in project, and it will recursively frozen, but when we init it, large deepcopy operation we think makes slow, is there any fast way to deepcopy one dict to another? the buffer protocol in python is available for dict?

You can give this recursive function a shot.  I don't know if it's any faster than deepcopy, but I imagine with your project you're deep copying every time you create a new thread.
Let me know if this helps.
def freeze(obj):
    try:
        #See if the object is hashable
        hash(obj)
        return obj
    except TypeError:
        pass

    try:
        #Try to see if this is a mapping
        frz = {k: freeze(obj[k]) for k in obj}
        return FrozenDict(frz)
    except TypeError:
        pass

    # See if the object is a set like
    # or sequence like object
    try:
        obj[0]
        cls = tuple
    except TypeError:
        cls = frozenset
    except IndexError:
        cls = tuple

    return cls(map(freeze, obj))

I might put this into a separate Python file, but I caught a rare case in the previous version where [0,1,2,3,4] would accidentally be converted into FrozenDict({0:0, 1:1, 2:2, 3:3, 4:4}).  Here's the new code.  Again this is NOT unit tested, so there may be more errors, but this is a starting point.  If you can make this more robust, I'd be happy to add a recursively frozen feature into the next version of FrozenDict.
def freeze(obj):
    try:
        #See if the object is hashable
        hash(obj)
        return obj
    except TypeError:
        pass

    try:
        #Try to see if this is a mapping
        try:
            obj[tuple(obj)]
        except KeyError:
            pass
        frz = {k: freeze(obj[k]) for k in obj}
        return FrozenDict(frz)
    except TypeError:
        pass

    # See if the object is a set like
    # or sequence like object
    try:
        obj[0]
        cls = tuple
    except TypeError:
        cls = frozenset
    except IndexError:
        cls = tuple

    return cls(freeze(i) for i in obj)

hi @zelaznik it's almost faster than our freeze func, but we have some hashable object, like Entity, it's the dict subclass with implemented __hash__ func.
why not freeze hashable object?

Because if "Entity" isn't already frozen it shouldn't be returning a hash in the first place.


renderer/text: Text resizing when font style changes

Closes #2676
Added needResize flag which is set to true when text resizing is actually required. The side effect is Canvas updating optimization, when the Text size & style doesn't change.
However, like my previous PR, this one could alternatively be replaced by changing the order of the code lines :)
Let me know if the reordering solution would be preferred.

@lpogic thanks, please check this: https://github.com/thorvg/thorvg/pull/2683


Document dataset manager

All of the package could use improved documentation; however, dataset manager is used in several external projects. The fields, etc., it exposes, and how it determines those, should be explained in much better detail.

The functionality of DatasetManager has been extracted into separate functions, mostly in ml_utils.


Drop the dash to api param

Currently, no dash is expected when specifying api param.

I signed it! (the CLA).

Thanks for the fix! (and sorry for the CLA paperwork even for such a tiny change :) )

No prob!  Glad to be of service!


DevOps: Add unit tests for OrcaBaseParser

A single test is added for the OrcaBaseParser, however, with the new test fixtures it is easy to add additional tests by creating new folders with sample output data in tests/parsers/fixtures/orca.
The OrcaBaseParser is updated to be compatible with aiida-core==2.0.

@danielhollas

@danielhollas thanks for the review. I have addressed your comments.

@sphuber thanks so much! I think one more fix is needed to make the tests pass for AiiDA 1.x, but otherwise looks good!

Thanks @danielhollas should be good to go now.


ISMDS-349: Expose the ticketmaster-us endpoints

Expose ticketmaster-us and ticketmaster-uk endpoints.
Add images to the response of venues.

LGTM :+1:
Thanks!


Networking issue when creating demonstration docker based Stroom 6 configuration.

One a clean Centos 7.4 minimal system (fully patched), the following does not create a running Stroom 6 instance.
# Get a modern docker, git and docker-compose
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum -y install docker-ce git
sudo systemctl enable docker
sudo systemctl start docker
sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

# Add the running user and ensure they can run docker and access docker-compose
sudo useradd stroomuser
sudo sudo usermod -aG docker stroomuser
sudo sh -c "echo 'export PATH=$PATH:/usr/local/bin' >> ~stroomuser/.bashrc"
sudo chown stroomuser:stroomuser  ~stroomuser/.bashrc
# Become the user, clone the resources and then start the images
sudo -i -u stroomuser
wget https://github.com/gchq/stroom-resources/releases/download/stroom_core-v6.0-alpha.21/stroom_core-v6.0-alpha.21.tar.gz
tar xf stroom_core-v6.0-alpha.21.tar.gz
cd build/stroom_core-v6.0-alpha.21
./stack.sh start

Log file from the command
docker-compose -f ./config/stroom_core-v6.0-alpha.21.yml logs
is attached.
stroom6setuptest_20180430a.zip

Output of
docker-compose -f ./config/stroom_core-v6.0-alpha.21.yml config
is attached.
stroom6setuptest_config_20180430a.zip

Please can you run ```
#!/bin/bash
if [ "$(uname)" == "Darwin" ]; then
# Code required to find IP address is different in MacOS
ip=$(ifconfig | grep "inet " | grep -Fv <IP_ADDRESS> | awk '{print $2}')
else
ip=$(ip route get 1 |awk 'match($0,"src [0-9\.]+") {print substr($0,RSTART+4,RLENGTH-4)}')
fi
if [[ ! "${ip}" =~ ^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$ ]]; then
echo
echo -e "${RED}ERROR${NC} IP address [${GREEN}${ip}${NC}] is not valid, try setting '${BLUE}STROOM_RESOURCES_ADVERTISED_HOST=x.x.x.x${NC}' in ${BLUE}local.env${NC}" >&2
exit 1
fi
echo "$ip"
and post the output

[stroomuser@stroomp00 stroom_core-v6.0-alpha.21]$ cat /tmp/x0.bash
#!/bin/bash

if [ "$(uname)" == "Darwin" ]; then
# Code required to find IP address is different in MacOS
ip=$(ifconfig | grep "inet " | grep -Fv <IP_ADDRESS> | awk '{print $2}')
else
ip=$(ip route get 1 |awk 'match($0,"src [0-9\.]+") {print substr($0,RSTART+4,RLENGTH-4)}')
fi

if [[ ! "${ip}" =~ ^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$ ]]; then
echo
echo -e "${RED}ERROR${NC} IP address [${GREEN}${ip}${NC}] is not valid, try setting '${BLUE}STROOM_RESOURCES_ADVERTISED_HOST=x.x.x.x${NC}' in ${BLUE}local.env${NC}" >&2
exit 1
fi

echo "$ip"
[stroomuser@stroomp00 stroom_core-v6.0-alpha.21]$ bash /tmp/x0.bash
awk: cmd. line:1: warning: escape sequence `\.' treated as plain `.'
<IP_ADDRESS>
[stroomuser@stroomp00 stroom_core-v6.0-alpha.21]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet <IP_ADDRESS>/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:5e:c3:4c brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global dynamic eth0
       valid_lft 83675sec preferred_lft 83675sec
    inet6 fe80::a00:27ff:fe5e:c34c/64 scope link
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN
    link/ether 02:42:03:7a:7e:37 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/16 brd <IP_ADDRESS> scope global docker0
       valid_lft forever preferred_lft forever
4: br-7a79db80a6be: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
    link/ether 02:42:c2:02:2b:91 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/16 brd <IP_ADDRESS> scope global br-7a79db80a6be
       valid_lft forever preferred_lft forever
    inet6 fe80::42:c2ff:fe02:2b91/64 scope link
       valid_lft forever preferred_lft forever
6: vethdc48971@if5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a79db80a6be state UP
    link/ether 6a:4c:00:9b:f4:a9 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet6 fe80::684c:ff:fe9b:f4a9/64 scope link
       valid_lft forever preferred_lft forever
8: veth54aae0a@if7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a79db80a6be state UP
    link/ether 32:1f:60:2e:04:70 brd ff:ff:ff:ff:ff:ff link-netnsid 1
    inet6 fe80::301f:60ff:fe2e:470/64 scope link
       valid_lft forever preferred_lft forever
10: vethcea0122@if9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a79db80a6be state UP
    link/ether a6:cd:17:4b:99:49 brd ff:ff:ff:ff:ff:ff link-netnsid 2
    inet6 fe80::a4cd:17ff:fe4b:9949/64 scope link
       valid_lft forever preferred_lft forever
12: veth2c66661@if11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a79db80a6be state UP
    link/ether 5a:45:c8:83:3d:16 brd ff:ff:ff:ff:ff:ff link-netnsid 3
    inet6 fe80::5845:c8ff:fe83:3d16/64 scope link
       valid_lft forever preferred_lft forever
16: veth3d9c868@if15: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a79db80a6be state UP
    link/ether 76:bd:e3:6c:0e:5f brd ff:ff:ff:ff:ff:ff link-netnsid 5
    inet6 fe80::74bd:e3ff:fe6c:e5f/64 scope link
       valid_lft forever preferred_lft forever
18: vethd9df5c1@if17: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a79db80a6be state UP
    link/ether 66:e0:44:8b:03:27 brd ff:ff:ff:ff:ff:ff link-netnsid 6
    inet6 fe80::64e0:44ff:fe8b:327/64 scope link
       valid_lft forever preferred_lft forever
20: vethe08abcc@if19: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-7a79db80a6be state UP
    link/ether 8a:f7:8e:76:ba:72 brd ff:ff:ff:ff:ff:ff link-netnsid 7
    inet6 fe80::88f7:8eff:fe76:ba72/64 scope link
       valid_lft forever preferred_lft forever
[stroomuser@stroomp00 stroom_core-v6.0-alpha.21]$


feat(module:skeleton): support for square shape of skeleton button

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/CONTRIBUTING.md#commit
[ ] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Application (the showcase website) / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?

Issue Number: N/A
What is the new behavior?
Waiting for #8479.
Does this PR introduce a breaking change?
[ ] Yes
[x] No

Other information

LGTM


Eager loading not used in edit

If you set ->with() related items in CRUD  controller, list view eager load them, but edit doesn't, making a lot of additional queries to the database.
I'm on mobile until tonight, maybe someone can confirm, otherwise I can publish more details tomorrow if needed

Hi @MarcosBL ,
Hmm... I'm wondering - does it really make sense to eager load the relationships when it's just one entry? What kind of performance boost would it offer?
If that's an issue for a particular model, it sounds to me more like a globalScope on the model, that would always eager load that, would be more helpful right?
I don't know :-) I don't know. Could be wrong on this one.
Cheers!

I found a way to eager load them with ->load in the view, so I managed to fix my problem, but commented it as a "consistency" problem. If we define the eager loading relationships in the CRUD we should be able to access them everywhere, nowadays we have that problem also with the AjaxTables, with the search, etc, inconsistency between what is available and what not in the list/edit/pagination/etc areas. Just wanted to reduce one of them.
My use case: I have some entities (Schools, Teachers, Students, etc...) that share a Morhpmany "CRM" model. That model specifies wich Comercial sent What to that Model, for example:

Lola (CRM_Comercial model) made a call (CRM_actions model) to company A (Companies model) talking about X on 2017-04-01
Silvia (CRM_Comercial model) sent an email (CRM_actions model) to same company A (Companies model) talking about Y on 2017-04-02

That allows me to easily attach a CRM history log to any model on my database (Schools, Teachers, Students, etc...) and provides a great history log of what happens at the company in case someone is ill, on vacation, etc...

I also use that info to draw a calendar of daily actions in the company, so anyone can eagle-view all the work done daily

The problem is, when I am editing a company with 50 CRM events, as each event have a Comercial and a Action relations, I end up with (50 * 2 model fields) 100  aditional queries to the database, mostly duplicates, as I have only 4 Comercials and 10 different Actions. If I eager load that relations, it becomes just 2 queries, despite having 2 fields or 10, 50 events or 5000.
So in my use case the speed boost is important, but now I must find the entry again and eager load it's relations before the listing:

	{{-- We need to eager load, backpack doesn't do it for us --}}
	@include('admin.crm.crm-history', ['entry' => $crud->model::with(['crm', 'crm.accion', 'crm.comercial'])->find($entry->id) ])

Or, a bit easier:

	{{-- We need to eager load, backpack doesn't do it for us --}}
	@include('admin.crm.crm-history', ['entry' => $entry->load(['crm', 'crm.accion', 'crm.comercial'])

I can't conclude if it is for the majority of users, but my thoughts are if you don't need it, you'll probably not eager load them in the CRUD, and if you do, you'll probably use them in the edit view as well. Also, +1 for consistency.

@MarcosBL - did you make a custom edit view here?

@lloy0076 Not exactly, I used the standard edit view but added a custom field using a custom view: that way I can extend a lot easily in a separate blade template; in fact, as blade is just PHP, I have access to a whole lot of features outside of the scope of backpack itself if needed.
As I planned to use the CRM tab/feature in a lot of models, I just made a custom view model-agnostic that passes the model name and id (as I am in the edit view, I have access to those in $entry). The modal popups to add or program an event (Blue and Orange buttons) ajax-store their values and ajax-refresh a div inside that custom view, so adding CRM functionality to any Model is now a matter of adding a custom field in backpack, the same for all models:
$this->crud->addField([
'name' => 'crm_view',
'type' => 'view',
'view' => 'admin/crm/list',
'tab' => 'CRM',
'wrapperAttributes' => ['class' => 'form-group col-md-12']
],
'update');

You can see the buttons and view in action around half of this short video (along with voice control!)

Pff... still not sure on this one - if it's overoptimization or not. In your use case it sounds reasonable, but I don't know how many people would actually need this, and how a solution would look.
What do you guys think - should close this or not?
Cheers!

My take:
Even if I found a way to do it, I still see a consistency problem: if we define the eager loading relationships in the CRUD, we should be able to access them in all CRUD operations.
If you only use backpack as a simple CRUD, maybe it will not be needed, but if you are editing a "Client":

Client->Orders->Products
Client->Shipping->Addresses
etc..

Lot of places where a eager loading can be helpful

I'm not convinced the time taken to find a solution might justify the time saved by just coping with a few hundred more requests.

Laravel 4 & 5
// Accepts a single relation (string) or an array of relations for eager loading.
$model->load($ModelEagerRelationshipDefinedArray);

I'm gonna have to agree with @lloy0076 on this one. I don't think this is an issue for 99.9% of the CRUDs. That's probably why it's the first time I hear about it :-)
You're building something super-complex there (which looks wonderful, btw, nice job), so some customization is expected in such a case.
Cheers!

It's fair ! Anyone looking for this will find the solution in this thread, so... onto another issue! :+1:

I found a way to eager load them with ->load in the view, so I managed to fix my problem, but commented it as a "consistency" problem. If we define the eager loading relationships in the CRUD we should be able to access them everywhere, nowadays we have that problem also with the AjaxTables, with the search, etc, inconsistency between what is available and what not in the list/edit/pagination/etc areas. Just wanted to reduce one of them.
My use case: I have some entities (Schools, Teachers, Students, etc...) that share a Morhpmany "CRM" model. That model specifies wich Comercial sent What to that Model, for example:
* Lola (CRM_Comercial model) made a call (CRM_actions model) to company A (Companies model) talking about X on 2017-04-01

* Silvia (CRM_Comercial model) sent an email (CRM_actions model) to same company A (Companies model) talking about Y on 2017-04-02

That allows me to easily attach a CRM history log to any model on my database (Schools, Teachers, Students, etc...) and provides a great history log of what happens at the company in case someone is ill, on vacation, etc...

I also use that info to draw a calendar of daily actions in the company, so anyone can eagle-view all the work done daily

The problem is, when I am editing a company with 50 CRM events, as each event have a Comercial and a Action relations, I end up with (50 * 2 model fields) 100 aditional queries to the database, mostly duplicates, as I have only 4 Comercials and 10 different Actions. If I eager load that relations, it becomes just 2 queries, despite having 2 fields or 10, 50 events or 5000.
So in my use case the speed boost is important, but now I must find the entry again and eager load it's relations before the listing:

	{{-- We need to eager load, backpack doesn't do it for us --}}
	@include('admin.crm.crm-history', ['entry' => $crud->model::with(['crm', 'crm.accion', 'crm.comercial'])->find($entry->id) ])

Or, a bit easier:

	{{-- We need to eager load, backpack doesn't do it for us --}}
	@include('admin.crm.crm-history', ['entry' => $entry->load(['crm', 'crm.accion', 'crm.comercial'])

I can't conclude if it is for the majority of users, but my thoughts are if you don't need it, you'll probably not eager load them in the CRUD, and if you do, you'll probably use them in the edit view as well. Also, +1 for consistency.

how to create  like the first image?

@anditsung it's just a single custom 12-cols field in a tab, then in the custom view you can do anything you need to

As well, If you have a custom edit or show view that need eager loading, you can use "load" in your CRUD controller, like this:
    public function show($id)
    {

        $content = $this->traitShow($id);
        $this->crud->entry->load([
            'relation_1',
            'relation_2',
            'relation_xxx',
        ]);
        return $content;
     }


Game crashing on bootup

Game kept crashing whenever starting up, fixed after libminecraft_skins.nro was deleted

@AxoInAGamer Likely fixed in the latest release: https://github.com/jam1garner/smash-minecraft-skins/releases/tag/v1.2.5
if the issue persists, reopen the issue and include the atmosphere crash log


Gene page Transcript section?

PomBase v1 has a "Transcript" section.  Which bits from that section do we want in v2?

shoud we just have:
Exons	1500197..1500243, 1500286..1500376, 1500445..1500613, 1500686..1500986, 1501088..1501393, 1501448..1502095
CDS	1500340..1500376, 1500445..1500613, 1500686..1500986, 1501088..1501393, 1501448..1501528
in the sequence section for reference and dump the rest?
I don't think we need the transcript map particularly, its huge and you can see this in the browser image...

I don't think we need the transcript map particularly, its huge and you can see this in the browser image...

I've grabbed the PomBase v1 images for the transcript map.  Since it's much like the protein domain image, it's very easy add them (and a link to Ensembl) to the page now if you change your mind.

We decided we don't need the image map at the moment
The sequence section can be"sequence and coordinates"
and coordinates can be in a separate sub section.

I don't think this is critical for public release.....even though it is on the current site I never used it. If people miss it it can be at the top of the list after release....

need to find out which parts people use and if we need to reinstate fully

have asked Jurg/s group

also from
https://github.com/pombase/website/issues/60
add "coding sequence length" to transcript section #60
This would be the length of the predicted coding sequence, i.e. the sum of the lengths of coding exons (or coding parts of exons). I guess this could go under "Transcript Structure", either above or below the table of coordinates, if the display organization remains relatively unchanged.

I'm closing this as we don't have any definite actions and nobody ever said that they missed this section.
We can reconsider in the future when we have alternative transcripts it will be much more useful.
Making a note in the "future" doc


Component development

Revision adding components for:

Dual polarization grating coupler based on 2D periodic structures
90 degree hybrid based on MMI splitter
Straight Ge detector with silicon contacts

Still working on passing tests


Support creating user for $external database in createUser command

What should be done?
Support creating user for $external database.
See also https://github.com/FerretDB/FerretDB/pull/3848/files#r1429845469
Where?
https://github.com/FerretDB/FerretDB/blob/main/internal/handler/msg_createuser.go#L51
Definition of Done

handler updated;
integration/compatibility tests added/updated;
spot refactorings done;
something else?

Users can't be created by FerretDB and MongoDB in the external database pretty much by definition


Java12, smaller Docker image, other improvements

Updated to support Java 12

Now using com.sun.activation:jakarta.activation because javax.activation is deprecated in Java 9.
Eliminated the dependency on JavaFX. JavaFX is not a part of JDK anymore. Moreover, Kafka Visualizer does not actually use JavaFX functionality.

Made some optimizations, for example compile a Pattern once.
Fixed some compiler warnings
Improvements in building the Docker image

Made the image much smaller. Previous image contained all the data generated by all build stages - jars, Node.js modules, etc. Moreover, previous image contained build tools like Maven or npm. New image contains only the things needed for runtime: the application jar, JVM and Node.js. New image is based on the lightweight Alpine Linux distribution.
Made the image build process faster. This is done by excluding irrelevant data from the build context. Now the build context has only the application jar and the Dockerfile.
As a result, new image is 419 MB instead of previous 1.69 GB.

Fixed logging. Now SLF4J is used throughout the application, including Spring Boot and Kafka API. No direct calls to Log4J anymore.
All files generated by build are now created in target directories. As per Maven convention, these directories are cleaned and do not pollute the source code tree.
Upgraded Kafka dependency to 2.3.0

Wow! Thanks a  lot for the contribution, I haven't had the time to maintain this project so this PR is a much appreciated. I'll have a look in a bit and merge.

The docker build seems to fail when doing a mvn package from the root directory. Works for you?

@tashoyan Tested the rest by removing the docker module from the POM, and it all seems to be working correctly. Do let me know if you're seeing the above error when packaging for the first time.

I cannot reproduce this error. My configuration:

OpenJDK 12.0.2
Maven 3.6.0
Red Hat Linux 7.5

In order to reproduce the problem I made a cleanup:
mvn clean
rm -r ~/.m2/repository/com/enthusiast94/

Then I ran mvn package and the build finished without errors.
I checked the mentioned issue MDEP-187 - it refers to m2e. Are you using m2e (Eclipse Maven plugin)? Some people say that the build may fail in Eclipse but runs ok in console. If you have anything about m2e, then please try to remove it.
As the last resort, we can workaround this problem by tuning phases according to Maven Lifecycle reference. For example:

Copy the Dockerfile: phase verify
Copy REST App: phase verify
Build Docker image: phase install

Thus we can shift all build steps after the package phase.

@tashoyan ah right, merging now.

Great! Thanks.


value_of destroys strong type system to much

I am evaluating which strong type library we could use in your environment.
I really like the simplistic of your implementation. But one thing botters me. Maybe you can help me, if I oversee a function or oversee the concrete concept here.
Is the ADL function value_of the only way to get the underlying value? If so, consider following example:
using my_strong_type = strong::type<int, struct foo>;

my_strong_type value{10};

int i = value_of(value);

Everything looks fine, but if someone later changes the underlying value to double, the narrowing is maybe only visible through compiler warnings.
If I could explicit (like a static_cast in other strong_type implementations) define the target type, the compiler wouldn't even compile this code.
using my_strong_type = strong::type<double, struct foo>;

my_strong_type value{10};

int i = value_of<int>(value); // Whoops!

I see what you mean. I have taken the meaning of value_of to be "I hereby leave the realm of safety and go to the underlying types, warts and all."
I've thought some about this, though, but I just haven't been able to figure out how to do what you want, in a way that doesn't completely break perfectly reasonable code. If you have an implementation idea in mind, I'd love to learn about your thoughts.

So one idea is to not use value_of at all  (as a coding-style rule) and add strong::convertible_to<T> to every strong type. So the static_cast<int> fails if the strong type is no longer an int. Doesn't really work if some want multiple convertible_to options.
Another idea would be to allow value_of to take a type. For the member function this is not breaking, since we can have both functions, with an without a type. For the friend function, we have to pass the type via another object.
template<typename T>
struct identitiy {};

using my_strong_type = strong::type<double, struct foo>;

my_strong_type value{10};

 template<typename U, typename = std::enable_if_t<std::is_same<T, U>::value>>
  STRONG_NODISCARD
  constexpr T& value_of() & noexcept { return val;}

template<typename U, typename = std::enable_if_t<std::is_same<T, U>::value>>
  STRONG_NODISCARD
  friend constexpr T& value_of(identity<U>, type& t) noexcept { return t.val;}

/// ...

int i = value.value_of<int>();

int j = value_of(strong::identity<int>{}, value);

If the ADL version wouldn't look that ugly, I would send a PR right away. ;) How can we do better?

It's not only ugly, it also breaks all code currently using the library, which (IMO) is not acceptable. I've been toying with returning a proxy object that does the conversion in its turn, which works fine for your example, but fails miserable for auto val = value_of(my_typed_obj). Given how gladly C++ makes unsafe implicit conversions when initializing variables, auto is (quite ironically) the only type safe way, so making that one fail, is also a no-go.
Another way around this is, of course, to not rely 100% on a library, but to lean on your compiler. If you compile with -Wconversion -Werror (gcc/clang), which you absolutely should if you care the least about type safety, you're already home and dry (I believe).

I would have provide both overloads (type safe and not) so this wouldn't break, I think.
Maybe I just go with value_of(...) and/or static_cast.

Hello, I think depending on what comes next in the code there are 3 solutions:

implicit cast to int (give up safety)
using auto to store the return of value_of (generic code)
adding a static_assert to check the underlying type (so you can come back and think about what needs to be changed)


(PUP-3121) Address default metadata.json template issue with puppetlabs/...

Replaced the incorrect dependency format of author-module with
author/module in the metadata.json created by 'puppet module generate'.
Updated example text as well.
See https://tickets.puppetlabs.com/browse/PUP-3121

Can I get some clarity on this, please?
I've just had a PR [1] on one of my modules, changing '-' to '/' and I'd like to either close it (because '-' is correct) or merge it (because '/' is correct) but I'm not clear which is actually correct!
[1] https://github.com/yo61/puppet-logrotate/pull/2
@hunner @andersonmills @joshcooper

Based on previous conversations I believe - is preferred, but the module tool and forge will handle both when resolving dependencies.

@robinbowes Yes, - is preferred, and in Puppet 4.0, the issue you're seeing caused by the - in the dependency is fixed.

Well, I went with "/" because the tools handle both, but "puppet module list" throws a warning when "-" is used.


Any specified password(even empty password) will take precedence over…

… hash in internal user creation.
Issue #, if available:
Empty password gets ignored when internal user gets created.
Any specified password(including empty password) should take precedence over hash.
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Any reason why we want to allow empty password? Empty password may be considered as security vulnerability and most UI/front end systems block passing empty passwords

Please check if security kibana plugin needs to be updated to not provide empty password in any request. Admin user should be able to update attributes for other users without having to supply any password.

Please check if security kibana plugin needs to be updated to not provide empty password in any request. Admin user should be able to update attributes for other users without having to supply any password.

That's a good point! I'll check with Kibana team.


[FLINK-7758][kafka][hotfix] Fix bug Kafka09Fetcher add kafkaMetricGroup

What is the purpose of the change
Fix bug Kafka09Fetcher no judge the useMetrics is true when add kafkaMetricGroup
Verifying this change
This change is already covered by existing tests, such as KafkaConsumerThreadTest, Kafka09FetcherTest, Kafka10FetcherTest.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

As I said, it is better to return an UnregisteredMetricsGroup. The current solution will blow up the moment the returned group is used, and can't be guarded against with null checks.

The current solution also straight up doesn't work:
java.lang.ClassCastException: java.lang.Object cannot be cast to org.apache.flink.metrics.MetricGroup
	at org.apache.flink.streaming.connectors.kafka.internals.AbstractFetcher.registerOffsetMetrics(AbstractFetcher.java:555)
	at org.apache.flink.streaming.connectors.kafka.internal.Kafka09Fetcher.<init>(Kafka09Fetcher.java:99)
	at org.apache.flink.streaming.connectors.kafka.internal.Kafka09FetcherTest.testCancellationWhenEmitBlocks(Kafka09FetcherTest.java:376)

@zentol ping. I have updated this PR.

@yew1eb doesn't this also need to be fixed for Kafka connector versions 0.10 and 0.11?

@tzulitai , confirm.
because the FlinkKafkaConsumer011 extend from FlinkKafkaConsumer010  and Kafka010Fetcher extend from  Kafka09Fetcher, for Kafka connector only need to fix Kafka08Fetcher and Kafka09Fetcher.


Update telemetry topic

Fixes #2705

Surfaces the new @richlander .NET Blog post
Minor grammatical changes and guidelines adherence updates
Remove the explicit instruction on set and export: That opens a whole can of worms on user vs. system and instance vs. persistent env vars. I recommend not going there in this topic.
Transparency: I've watched and even participated in the discussion on telemetry (e.g., https://github.com/dotnet/cli/issues/3093#issuecomment-220113052). The updates here include a great attempt IMHO to make the feature transparent. More (or less) could be done, but I hope I'm close to covering: who, what, where, when, how, and why.
Removed the line pertaining to the NuGet cache in the Disclosure section, as it doesn't pertain to the subject of the section.
The welcome message text reflects the update in progress on: https://github.com/dotnet/cli/pull/7225
IMO it's wise to link the reference source. I've seen this come up frequently on chat and in issues: Devs want to be able to :eye: see :eye: that code and confirm its behavior. Linking to it saves time ... it's not a secret or anything. :smile:

Ok .... I'm happy with this first draft. @mairaw It's ready for :eyes:.
cc/ @richlander
@livarcocc I'm making explicit claims on what's collected and not collected based on looking at the ref source and prior remarks. Do u want to TAL at this and see if I've gone wrong anywhere?
Internal reviewers can see the topic built here. External reviewers, please use the diff.

I like the changes @GuardRex. I've edited the topic a bit. Where did you see that they also collect install success and failures? I don't see that in the blog post.
@richlander the blog also talks about planned data  collection for 2.0. Have they all been implemented? Can you review this topic? Thanks!

@mairaw
RE: "success/failure" of installation. I think that came from ...
https://github.com/dotnet/cli/blob/af676518dd963814c76c45adb80d59adc1b387b8/src/dotnet/commands/dotnet-internal-reportinstallsuccess/InternalReportinstallsuccessCommand.cs
... with a test (for Windows) that indicates it at ...
https://github.com/dotnet/cli/blob/af676518dd963814c76c45adb80d59adc1b387b8/test/dotnet.Tests/TelemetryCommandTest.cs#L215-L227

@richlander this is ready for a review. Thanks!

@mairaw The text from the welcome message was changed to match that of https://github.com/dotnet/cli/pull/7225, merged two days ago. Idk if additional updates are needed tho. We made some minor changes on that PR right before it merged.

I'm aware of that. I'll update the text again once 2.1 ships.


In add_remote method, first evaluate if the user has passed any value

In add_remote method, first evaluate if the user has passed any
test_user from .teuthology.yaml file. If yes, then pass that test_user
as the second parameter to misc.canonicalize_hostname method else
pass the default test_user which would be ubuntu.
Signed-off-by: Kapil Sharma<EMAIL_ADDRESS>

Can one of the admins OK this pull request so I can run a build?

user = None should have been user = 'ubuntu'
closing this pull request and will create a new one.


TF editor allow users to specify range bounds outside of current time step

Fix #1964
Fix #1728
Fix #1923
Also
Fix #1976

@stasj does the implementation allow the user to reset the slide to the new range as discussed?

Yes, by right clicking the text input.
On Mon, Dec 9, 2019 at 6:38 PM clyne<EMAIL_ADDRESS>wrote:

@StasJ https://github.com/StasJ does the implementation allow the user
to reset the slide to the new range as discussed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NCAR/VAPOR/pull/1977?email_source=notifications&email_token=AAVE5T56BUZ7TUOR6K37MDDQX3XK3A5CNFSM4JYVP4PKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGLPXHY#issuecomment-563542943,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAVE5T5ZXYBMFAQ7F5WX4VDQX3XK3ANCNFSM4JYVP4PA
.


Demo problem with bluefy iphone

For some time now it has been impossible to use the demo pages on iPhone. The window does not display the Chameleon-Ultra even though it is turned on and close to the phone.

Fixed in 82362fe (v0.3.21)


Arsenal Update 300824

Added all of the drip that changed names in the latest RTBF update (I believe)

added b40 and HE ammo


Unable To Resolve Dependency

Error Message:
2022-12-27 12:02:44,636 - INFO - attack_range - INIT - attack_range v1
2022-12-27 12:02:44,653 - INFO - attack_range - [action] > build

Vagrant failed to initialize at a very early stage:

The plugins failed to initialize correctly. This may be due to manual
modifications made within the Vagrant home directory. Vagrant can
attempt to automatically correct this issue by running:

  vagrant plugin repair

If Vagrant was recently updated, this error may be due to incompatible
versions of dependencies. To fix this problem please remove and re-install
all plugins. Vagrant can attempt to do this automatically by running:

  vagrant plugin expunge --reinstall

Or you may want to try updating the installed plugins to their latest
versions:

  vagrant plugin update

Error message given during initialization: Unable to resolve dependency: user requested 'vagrant-vsphere (= 1.13.5)'
2022-12-27 12:02:45,526 - ERROR - attack_range - vagrant failed to build

After trying to build the range I am given this error message.
I tried to follow the suggestions made by vagrant, this did not fix the problem.
I manually installed the vagrant-vsphere-1.13.5.gem file through vagrant with: vagrant plugin install /path/to/vagrant-vsphere-1.13.5.gem this did not fix the issue.
Running vagrant plugin update updated the 1.13.5 version to 1.14.0
It seems that vagrant is looking for the 1.13.5 version, but cannot find it even when I manually install the plugin.
Any suggestions! Thanks!

Command execution of vagrant plugin expunge --reinstall
$ vagrant plugin expunge --reinstall

This command permanently deletes all currently installed user plugins. It
should only be used when a repair command is unable to properly fix the
system.

Continue? [N]: y

All user installed plugins have been removed from this Vagrant environment!

Vagrant will now attempt to reinstall user plugins that were removed.
Installing the 'vagrant-parallels' plugin. This can take a few minutes...
Fetching nokogiri-1.13.4-x86_64-linux.gem
Fetching vagrant-parallels-2.2.6.gem
Fetching optimist-3.0.1.gem
Fetching rbvmomi-3.0.0.gem
Fetching vagrant-vsphere-1.14.0.gem
Vagrant failed to properly resolve required dependencies. These
errors can commonly be caused by misconfigured plugin installations
or transient network issues. The reported error is:

Unable to resolve dependency: user requested 'vagrant-vsphere (= 1.13.5)'

I fixed the problem. I'm not sure why, but the solution seemed to be to manually install vagrant-vsphere-1.13.5 with sudo.
$ sudo vagrant plugin install /path/to/vagrant-vsphere-1.13.5.gem
Thanks!


[Brainstorm] DonutV2 Ideas?

I really like the idea of Donut, It's very fast, doesn't rely on flakey OCR like tesseract, and is very easy to create training data for!
I've been using Donut exclusively for DocVQA, so that's where my point of view comes from.
After using it for a while, there are a few shortcomings, compared to competitors like LayoutLMV3:

(Major) No (easy) way to filter answers. While there are some hacky ways to get the confidence of the sequence generated by the decoder, it's not really consistent enough (correct and wrong answers can basically have any confidence)
(Minor) Bounding boxes for answers are missing. Some people have looked into using attention scores to create heatmaps, but this isn't ideal. But in any case, this isn't a totally important feature, it would just make debugging answers easier
Probably more!

So I wanted to start a bit of an open brainstorm on ways to improve Donut. Some ideas I had:

Train Donut to output "answer not found" or something similar
Additional pre-training tasks, in addition to learning to read (maybe something similar to the pre-training tasks in layoutlmv3?)

If anyone else has thoughts, definitely share them! :)

Hi logan
I follow your first idea!
In OCR system, User want to know the information in documents not outside.
In this points of view, telling "answer not found" is important for user experience.

(Major) No (easy) way to filter answers. While there are some hacky ways to get the confidence of the sequence generated by the decoder, it's not really consistent enough (correct and wrong answers can basically have any confidence)

I think this is the major drawback. Could you share those approaches?
Does LayoutLMv3 support Nested fields like ticket rows?

@WaterKnight1998 see this thread: https://github.com/clovaai/donut/issues/37
Slightly related, there are some other hacky (although less reliable) ways to get bounding boxes here: https://github.com/clovaai/donut/issues/16
I saw your other post about using donut in production. In my opinion, it's not ready. Even if you train donut to give "answer not found" types of answers, it's not good enough in my experience.
Donut is a cool proof of concept, but for wider adoption, I think it needs some serious changes.
Regarding LayoutLmV3/2, nested fields shoooould work, provided you fine-tune the model on your data appropriately.

@logan-markewich yes, I used HuggingFace, I thought the same. I will try again on monday.
Yeah, I know LiLT but just 10% better accuracy than V1.
The problem that I found with LayoutModels is that for inference huggingface processor returns more boxes than the ones you input. So it is hard to convert this into a JSON later on. I think this happens if your boxes have several words on it. Have you find this issue before?

@WaterKnight1998 10% is still free performance 😉
I haven't had that issue, but I don't use the processor and do things a little more manually. It returns more boxes probably because tokens are split into sub-tokens. When you get the predicted start/end positions, you have to basically un-tokenize it (using the '##' characters makes this pretty simple in V1/V2) and map things accordingly.

Do you have a notebook showing how to train or predict? All notebook that I see just show boxes in the image. They doesn't convert it into a JSON.
I would really appreciate if you can share with me one example.
Thanks in advance!

@WaterKnight1998 huggingface has a decent notebook for each layoutlm model. In particular, here is an example of training/inference using layoutlmv2 on DocVQA. V1/V3 will be very similar, as well as any QA model that uses boxes
https://github.com/NielsRogge/Transformers-Tutorials/blob/master/LayoutLMv2/DocVQA/Fine_tuning_LayoutLMv2ForQuestionAnswering_on_DocVQA.ipynb

Your proposals seem very interesting to me! I was trying to obtain the score of each question to know when they are correct or when didn't, but from what I see this value is not very reliable...
Has progress been made in DONUT docvqa to be able to determine if the answer was not found? or is there a way to get a reliable score?

How about generating training documents based on a template, i've been using DocSim to generate invoices based on a template with random text and trained donut on the augmented version of them, but this requires some time to prepare the template, maybe we can have a donut version that can recognize the template and generate new images for fine tuning automatically


Color on hover

Hello Sam,
Excellent work, keep it up!!
Not an issue but a request if I may. :)
Would it be possible to have different stroke color attributes for different class names? For example current s-color would correspond with layer .main class, s-color2 with .accent class..... 3-4 colors would be more than enough imo.
Cheers,
L.

Hi @logabo !
Thank you for feedback, I like this idea and will explore it further!


Improving tests

This PR is about improving the testing code.
It does make the code easier to manage various functions in a single test.

@ErwanAliasr1 thanks!


Attach arbitrary metadata to Custom Token?

Following the official docs at https://docs.minaprotocol.com/zkapps/o1js/custom-tokens we were wondering if it's possible to attach custom metadata to tokens minted by a Smart Contract. Ideally, we would like to have something similar to the following:
import { SmartContract, method } from "o1js";

export class MintExample extends SmartContract {
  @method mint(account: String) {
    this.token.mint({
      address: this.sender,
      amount: 1,
      metadata: `${this.account.tokenSymbol}#${account}`
    });
  }
}

Is it possible to do something like this currently with o1js?

No, a token is just a balance and a token symbol. To attach metadata I recommend onchain state or events or actions!


Add example using saliency to explain edge case detections.

First pass of edge case saliency example. My system has limited resources for saliency map generation and I haven't included any discussion on the insight that the maps provide, but please take a look and provide feedback.

kwplot is a dependency for the show_image() function from kwcoco which is used here. A pip install could be added to the environmental setup cell. The CI run fails without this. Opinions?

kwplot is a dependency for the show_image() function from kwcoco which is used here. A pip install could be added to the environmental setup cell. The CI run fails without this. Opinions?

I think it would be OK to add a notebook-local pip-install of kwplot in this case, since this is first place it is being utilized. I'm open to other thoughts. I am hesitant to jump into requiring it as part of the extras dependencies until we observe more utilization.

^ That sounds reasonable to me. I'm still not 100% sure how I feel about separating the initial presentation of example model failures with their corresponding saliency maps, as that seems to introduce a gap there which might be hard for a reader to bridge (e.g. scrolling back to see the exact model misclassification and how that relates to the saliency map). If we do decide to show results and saliency maps side-by-side, we might be able to make use of default matplotlib functionality for viewing detections, which would remove the need to use the functionality in kwplot.

Related to plotting, I would also add that we don't have any legends present on the plots, which might reinforce @brianhhu's mention of just using matplotlib directly, unless kwplot can do all the stuff mentioned with different parameterization.


fix(header/store): fix header.Store design issues with a batch

Background
So this PR solves multiple problems:

There was a rare possibility of a cache miss for Get/GetByHeightgetting nowhere and returning header: not found seen in #761.

This is a design flaw of the Store. The Store batches writes for headers and headers queued to be written were accessible through the cache until they get on disk. However, I missed a very obvious thing in the original implementation - cache entries can be evicted. So there was a chance that an entry is buffered to be written on disk but was evicted and thus inaccessible for some short period. Note that this was only the case for the reading of unwritten/queued headers and writing happened without any misses. IIRC, the flaw comes from the fact that I wanted cache to do both things at the same time.
This is now fixed by maintaining a new batch that keeps unwritten/queued headers. Get/GetByHeight now checks if headers are in the batch, similar to it checking the cache.

We were not caching entries that we read from disk.

This is even more embarrassing as we had a cache that was not really used in the way it is meant to be used. Also, if we had this fixed the 1 problem would appear much more often and we would detect it much earlier.
So now we just cache those.

Read and write contention.

Even though read and writes were not blocking each other on writes to the disk, they were still competing for the cache.
With this PR, this is not the case. Mainly because we now maintain two chain heads in the store. One for reading and one for writing.

More Background

As I mentioned in #761, I was able to prove the problem by actually fixing it. I made a hacky fix that just accesses pending slice with added simple synchronization over it. Also, I logged out every cache miss on error, so I was able to see the issue after like ~30 of light node DASing+Syncing. However, I was not satisfied with the solution, as it goes against the concurrency design I made originally. So had to find something else. After several attempts, I finally landed with introducing another struct - batch.

Closes #761
Review commit by commit.
P.S. Technically, commits could be extracted into their own PRs but tests won't be passing for each.

@renaynay thanks for testing and running this!


ensures slow() called w/o args does not blast value; closes #2311

that's about the size of it

this appears to be low-impact; gonna merge it.


Added GOG detection support (requires GOG Galaxy to "know" about the game)

maybe this was even the reason the plugin didn't work with the nexus.

The game needs to be installed and or scanned by GOG Galaxy at least once to be detected.
The Steam Integration should not have any issues whit this.

now it should detect the steam version as well, again.

Changed it back to only use the Mods folder since otherwise the game wouldn't want to launch.
I don't know if this vfs method could allow it, but is there a slight chance to make it so MO only can manage specific sub folders ? Like in the case of the Witcher the folders mods and dlc.

This not needed anymore.


New version: GolangCI.golangci-lint version 1.57.1

Pull request has been created with komac v2.1.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

Automatic Validation ended with:

Installation failed with exit code -1978335141
2024-03-29 01:32:23.879 [CLI ] Unable to locate nested installer at: C:\Users\VALIDA~1\AppData\Local\Temp\WinGet\GolangCI.golangci-lint.1.57.1\extracted\golangci-lint-1.56.1-windows-amd64\golangci-lint.exe
2024-03-29 01:32:28.735 [CLI ] Unable to locate nested installer at: C:\Users\VALIDA~1\AppData\Local\Temp\WinGet\GolangCI.golangci-lint.1.57.1\extracted\golangci-lint-1.56.1-windows-386\golangci-lint.exe

(Automated response - build 876.)


Add EVM errors on Paloma to our Discord Alerts Channel with decoded errors

Create a 5-second job that queries for new alerts and decodes the error (hex to string) and posts them to our Discord Alerts Channel using the https://github.com/VolumeFi/paloma/issues/1060#issuecomment-1852127023 comment and identifying the chain and any other information about the transaction that is available.
This should be done for each chain

gnosis-main
eth-main
bnb-main
base-main
op-main

For mainnet. You can use the lcd box to set up this alert

Closing as wont' ship.


http://osr507doc.xinuos.com/en/PERFORM/context_switching_cpu.html#:~:text=A context switch occurs when,the context of the process.

http://osr507doc.xinuos.com/en/PERFORM/context_switching_cpu.html#:~:text=A context switch occurs when,the context of the process.


split the blockstore into block and metadata databases

note that there is one more big PR following this one that actually integrates the storage service into the rest of the operation

First... please put these into a review & add them "in context".

This is regarding the way we generate the response to check_blocks: Consider  a dishonest SS deletes the block_data db, but keeps the meta_data db. The check_blocks will pass, the client will proceed with the update contract call, but the call will fail. Can we detect from the e-service error message that the failure points to a dishonest storage service?

This isn't a problem. The storage service could lie whenever it wants, but the only thing that would happen is that the eservice would fail (in fact, the eservice itself could just refuse the invocation with the same effect). That's why we have multiple enclave provisioned.

Continuing with the above point, one possibility to to solve is to ask the SS to return hash(value||nonce), the response is entirely based on the block_data db, and not the meta_data_db. The meta_data_db in my view perhaps should be used only within the storage service for GC.

Again... this is a very expensive solution to a problem that doesn't really exist. This function makes no guarantees... its just there to ensure that an honest enclave service has the blocks it needs.

Thinking out aloud: Since the meta_data_db as K-V store has an API with K \neq h(V),  we might not want to even indirectly exposing this API outside the storage service. For example, we pass the size field back in the check_status response. Do we really need the size field in the check status?

We must. Otherwise the client can't know what blocks are missing in the enclave service.

in store_blocks why you permit the expiration time to be extended (by the entire expiration duration) if the block is already present? Is there is a situation where a SS can legitimately recieve a duplicate copy of a block?

Why not? If the client is asking for blocks to be stored, then it wants those blocks for the time that it requested.

Line 117 block_store_manager, value can be replaced by _ .

Agreed though this is really just a debugging function so there doesn't seem to be any point.

Replacing this with #152


Juice converts with empty string to empty attributes

When processing the snippet below:

Juice outputs

How to make it output the following?

It seems that the web version http://automattic.github.io/juice/ works just fine - it outputs

This is happening in one of the deps. Semantically, those two are the same so I'd accept a PR that might fix it, but it isn't something I'll be spending time on.

Do you know which dependency causes that? I can check it then if there is any easy fix.

Would it be possible to send me which dependencies (versions) are used on automattic.github.io/juice ? Thanks.

I think this is caused by Cheerio.
This can be reproduced:
https://runkit.com/embed/0rsw43pfqtqi
const cheerio = require('cheerio');
const $ = cheerio.load('');
$.html();

Result:


Nav Responsive

#374

@Rohitha-pudu please provide screenshot

@Rohitha-pudu please provide screenshot

of the website

@Rohitha-pudu of the changes you have made

@Rohitha-pudu of the changes you have made

i changed all the nav's in all the pages with items space too

@Rohitha-pudu of the changes you have made

i changed all the nav's in all the pages with items space too and removed some bugs in wishlist mobile view

Fixes #374


Added a resource

Hi @MarkDaoust Can you please review this PR ? Thank you!

Hi, could you please add me as an author to the commit? It doesn't show that I have made a contribution to this approved pull request.

https://github.com/tensorflow/tensorflow/commit/e84884379ab15ed41e6060dcf189ef47a6694157 has you as author


I don't think its compatible with C2ME

It just crashes
2022-07-22-7.log

This problem occurs because I made the compatibility code based on version 1.18.2 of C2ME, it may not work in 1.19 and I will try to uncheck its dependencies.

Is it fixable?

Now  fixable.
https://github.com/KenRouKoro/C3H6N6O6/releases/tag/1.0.0-beta10-1.18.2%2F1.19.2


Feature: Deprecate Lexical

Run Away, while you can
I'm working on a rich text editor at my work, and I'd like to not have other people go through the same experience as I've gone through working with lexical.
The sheer amount of random edge cases that seem to work perfectly in the playground just don't work, you have to scour github and stack overflow just to figure out how someone's built alternative implementations because the default implementation is broken.
The playground is riddled with tiny bugs that you only "realise" after the spending the amount of time I have on this absolutely horrible library.
Description
The documentation and api's are incredibly bare bone and provide you no context as to what specific parts do or how they come together in the bigger picture.
For example one of the things we wanted to get working was Lists, after implementing Bold and Italic and Links the anticipation was that it was going to be a challenge getting it to work.
"Alright let me have a look at their playground example"
Incredibly messy tightly couple code that's incredibly hard to dissect because they took no time to write any tooling to make the development easier.
I wrote 6 react hooks to abstract some commonly repeated logic that I only figure out after banging my head against Github issues and Code Pen examples for 2 days straight
Even then it's incredibly hard to understand how the whole system works together.
Surely they could have taken 15 minutes to fluff up the documentation or abstracted some of the logic to a nicely reusable hook. nooo
"Ohhh I think I understand now" I said many times, only to then get hit in the face with another edge case bug.
Now i'm running into a bug where the MarkdownShortcutPlugin just randomly doesn't automatically create lists when typing - at the start of the line, even though nothing has changed.
Oh and don't get me started on the imports, how hard is it to properly export the code? half the things can't get auto imported, you'll look at example that are provided and they don't show where something is imported from you then have to then guess and try and infer some commonly occurring pattern in the imports to import the correct thing, what is this Laravel in disguise?
Alternatives
Literally ANYTHING but Lexical
Context / Screenshots

Impact

Everyone would benefit from not going through this absolutely horrible developer experience.
I've waste about 4 weeks now and new issues keep coming up. you'll think it's looking great, and then QA discovers another Edge case that you can't control that you have to look for more alternatives to try and sort it out.
My sanity is tainted
Reaffirmed that any software facebook/meta builds is Decrepit and riddled with bugs
Less people should be using this library

Use Tip Tap
https://tiptap.dev/docs/editor/getting-started/overview

Just as reference, It took me 1 hour to convert to TipTap, That's how long it took me to even try and understand what's going on in the Lexical Playground, you can thumbs down all you want but you can't deny the fact that lexical should just be deprecated in favour of better open source alternatives 👍


[Do-not-merge]  Support appmsi on cli sdk 2022 03 01 pre only

Diffs only about the MSI commands

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your PR is merged into master branch, a new PR will be created to update src/index.json automatically.
The precondition is to put your code inside this repo and upgrade the version in the PR but do not modify src/index.json.

Close PR


ci-e2e: Add DSR Geneve dispatch test cases

This commit adds two test cases for DSR Geneve dispatch (lb-mode: 'dsr', lb-dsr-dispatch: 'geneve')

kernel: bpf-next, kpr: strict, tunnel: disable, lb-acceleration: testing-only, egress-gateway: true
kernel: bpf-next, kpr: strict, tunnel: geneve,  lb-acceleration: disabled, encryption: wireguard, egress-gateway: true

Please ensure your pull request adheres to the following guidelines:

[x] For first time contributors, read Submitting a pull request
[x] All code is covered by unit and/or runtime tests where feasible.
[x] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[x] If your commit description contains a Fixes: <commit-id> tag, then
please add the commit author[s] as reviewer[s] to this issue.
[x] All commits are signed off. See the section Developer’s Certificate of Origin
[x] Provide a title or release-note blurb suitable for the release notes.
[x] Are you a user of Cilium? Please add yourself to the Users doc
[x] Thanks for contributing!

/ci-e2e

/ci-e2e

:wave: In order to test it, you need to uncomment https://github.com/cilium/cilium/pull/25813/files#diff-d273fd1f22aaf669822ba621a80ac486e51e1559316ebcc2169a9502cc0cfcf7L23.

Actually, I'm currently stuck. I don't have the permission

It will not work with a branch from a fork (missing secrets).

@ysksuzuki As you are a member of the Cilium org https://github.com/cilium/community/pull/20 (btw, congrats, well deserved!), you can push your branch to cilium/cilium instead of the fork. Just prefix the branch name with pr/ysksuzuki/, so that it's easier to remove it in the future when no longer needed.

@brb I couldn't push my branch to cilium/cilium
git push origin pr/ysksuzuki/add-secondary-if-kind
ERROR: Permission to cilium/cilium.git denied to ysksuzuki.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.


fix the created tasks cannot be deleted

task.Delete only allows direct deletion of tasks with PID 0.
fix: https://github.com/containerd/containerd/issues/10438
Related pr: https://github.com/containerd/containerd/pull/10442

Moving the conversation back in nerdctl then (since the original ticket had been moved to containerd).
Finally stumbled upon a repro:
{ sleep 1; echo "\16\17"; } | /usr/bin/unbuffer -p nerdctl run -it --name foobar ghcr.io/stargz-containers/alpine:3.13-org

nerdctl rm -f foobar
ERRO[0000] 1 errors:
task must be stopped before deletion: created: failed precondition

@AkihiroSuda ^


Selectively Cache Gems

I have what I imagine to be a not-so-uncommon use case.  I have a project hosted on Heroku that uses mostly public gems, save for a couple private ones.  Since I don't want embed my Github un/pw in my Gemfile or pay/run my own private gemserver like Gemfury, the best solution at present for bundling my private gems on Heroku is to cache all my gems in vendor/cache where Bundler will find and use when Heroku runs bundle install for me.
This certainly works, but the down side is that I have to cache all my gems, not just the ones that are private.  Caching all the gems bloats the size of my git repo, which isn't a huge deal but does slow things down.  One solution to this to .gitignore the vendor/cache directory, and then manually git add my private gems as needed.  This also certainly works, but has two small downsides:

Bundler still copies over all the .gem files locally, which is redundant if they're already on my file system in the normal rubygems cache.
It requires me to remember to git add the new version of the gem every time I upgrade it.  I might forget to do this, and confuse other developers and potentially cause hard to track down problems.

Again, these are small annoyances, but it seems like a way to selectively cache gems would be best.   That way you could only cache the certain gems that you needed/wanted cached.
My thought on how to do this was the following:

Add a  cache config option to bundle config, which would allow users to configure whether caching was used by default or not.  Setting it to false would not automatically cache gems during a bundle install.  This config option could also be called autocache.
Add support in the Gemfile for a :cache => true option, which would force the gem to be cached, overriding the cache bundle config option.  This config option could also be called :force_cache or something more descriptive.

I looked through the existing issues and source code, so I apologize if this has been suggested before or if there is a better way to do it.  Also, I'm happy to actually do the work and submit a pull request, I just wanted to check and make sure this feature has a chance of being merged before I do.

Forgive me for commenting on a long-closed issue, but did this issue ever get raised over at bundler/bundler-features? I wasn't able to find it over there.
As far as I can tell, there's still no way to selectively cache certain gems other than running bundle package --all and manually deleting all but the desired gems.

I think that's the workaround that people use today. If you still want this, please open a feature request ticket explaining the scenario and why you want to cache only some gems. Thanks!

Thanks @indirect. I opened https://github.com/bundler/bundler-features/issues/98