SPFX webparts issue in IE browser

Dear Team, @waldekmastykarz  @mcmynn83 @mpasarin @chakkaradeep @patmill
We are facing an issue with IE browser . Web parts doesnt load on the first load . This seems to be Intermittent. Can someone please give us a solution for this or point me to the solution if its already tracked.

ManY Thanks
Siddhartha

Are these blank web parts added to the page directly without any modifications?

Hi @waldekmastykarz
These are not the blank web parts. These web parts are working fine in Other browsers .
We are Uploading the package in app catalogue when ever we make any changes in the code.

If these web parts contain custom code, then you would most likely have to debug your code in order to determine what's wrong.

@sidjustsid - what browser are you uploading the changes on?  The reason I ask is that when you upload and trust a new version in the app catalog a cookie will be placed in the that browser that tells it to use the latest bits.  However, if you switch to another browser you will not have that cookie.  Are the old bits supposed to continue to work?  Please verify when this fails that you actually have fetched your latest bits (look at the manifests/code).

@mcmynn83  I am uploading the package in Chrome browser .  I am able to see the changes working in other browsers too.
Only in IE it is showing the error and that too after few refreshes it is working fine. Any solution for this please?

@sidjustsid - if you upload the package with the IE browser does it ever repro in IE?  Are your changes designed in a way that after you make the update the old bits should continue to work?  I ask because it is expected that when you upload in Chrome, then switch to IE and load a page using that particular solution you WILL get the old bits for approximately 20 minutes.  If you can repro the issue with a fiddler trace that you can send I could determine if your are getting the old manifests by design, or if it some other issue we need to look into.

@mcmynn83  i have not uploaded the package in IE at all.
Normally when ever i upload the package i am able to see the new changes along with the Old Bits.
I will send the Fiddler trace to your Microsoft Email.

@sidjustsid - I don't believe I received a fiddler trace from you... Did you send that?  Are you still having this error occur?

Hi @mcmynn83
Sorry for the delay , i have sent the fiddler trace to your email ID. Could you please try checking once?
Yes the issue is still there and now the webparts are not appearing .i.e. showing blank (Reference Image below)

Appreciate if you can help us in this.

@mcmynn83 was approaching this from the angle of a caching issue:  When you upload the solution, the manifest server will return the old value for 20 minutes thereafter. We avoid this problem by setting a browser cookie that bypasses the cache for the next 20 minutes.  However, if you switch to a different browser (e.g. Chrome -> IE), you might see the old value.
If your problem still repros 20 minutes after you deployed the package, then this theory doesn't explain your problem.  (Could you check that?)
Otherwise, most likely the TypeScript code is failing to render somehow at runtime.  In order to investigate that, we'd need to look at the console logs (F12 and the SPFx dev dashboard).  If your web part doesn't contain any confidential information, you could provide us with the project so we could try to debug it directly.
Since we haven't received other reports of this issue, it seems like most likely it would be an issue with your web part implementation.

Please reopen this bug if you are still having trouble.


The pause button is not visible

Extension issue, reinstall bloom

Extension issue, reinstall bloom

Solved! Thanks

Bloom was from the marketplace or local installation?

Bloom was from the marketplace or local installation?

From the marketplace

Looks like the marketplace has some difficulties about switching the extension to a new one for an already installed theme


Option to not server-render specific components

This PR adds two options noSsr and noReport.
noSsr option
noSsr: true tells react-loadable not to render the component on the server.
This is useful if you are doing SSR, but e.g. the component appears "below the fold" and you want to leave it to the client to render. It'll be rendered on the server as "Loading" component.
Loadable({
  loader: () => import('./Bar'),
  loading: Loading,
  noSsr: true
});

noReport option
However, you may or may not want to include the `
        }).join('\n')}

        ${unrenderedBundles.map(bundle => {
          return `<script src="/dist/${bundle.file}"></script>`
        }).join('\n')}

  `);
});

The client starts loading all the scripts as soon as the page loads.
As soon as all the top set of scripts (only those required to hydrate the react app) are loaded, the react app is hydrated.
The bottom set of scripts continue loading in the background and will run once they've loaded.

Next steps
This is an example API. I'm completely open to suggested changes. But I feel the functionality would be useful.
I've also not written any tests. I'd be happy to do so, but would like to get some feedback on whether this PR would be likely to be accepted and whether you'd like to see changes to API before proceeding further.
Please let me know your thoughts...

Thanks, this was exactly what i was looking for! I think I'd prefer the options to be
ssr = true: boolean and report = ssr: boolean. Then the API is be similar to next/dynamic and avoids the unnecessary negation.

I'd rather have these flipped as:
Loadable({
  loader: () => import('./Bar'),
  loading: Loading,
  ssr: false,
  report: false,
});

I'm afraid it's been a while, so I've moved on, and built my own thing to accomplish the same thing.
I'm going to close this PR as I'm sure it has bugs in it and I don't want to be responsible!


Broadcasting ops on numpy arrays creates tons of ops

Hi,
I had a little toy project where I took in some data from numpy:
x_data = np.zeros([18145, 3], np.float32)
b_init = np.zeros([1, 3], np.float32)
b_init[0][0] = 16.0
b_init[0][1] = 128.0
b_init[0][2] = 128.0
W_init = np.zeros([3, 3], np.float32)

[fill in x_data here]

W = tf.Variable(W_init)
b = tf.Variable(b_init)
y = tf.matmul(x_data - b, W)

This took a lot of time and memory to set up (several minutes), and it was nowhere obvious why.
It eventually turned out that the broadcasting on the subtraction is what's causing the issue; it creates one op per line in x_data. I needed to write
y = tf.matmul(tf.constant(x_data) - b, W)

to make it fast.
Shouldn't this be the default behavior?

Perhaps we need the __array_priority__ hack in tf.Variable? We already use it in tf.Tensor here. Operator overloading is a mess....

Sounds like that would fix it, since making "b" a tf.constant instead of Variable makes it work


cgo comment unreasonable

package main

/**
#include <stdio.h>
void hello() {
	printf("Hello world.\n");
}
*/
import "C"

func main() {
	C.hello()
}

The program compile error as below. It take me 15 minutes to repare it - replace '/*'  with '/'.
I don't think just looking for * at the beginning of the import "C" comment makes much sense.  While it would be nice to do a better job on the C comment in general, I don't think that specific problem is common.

I don't think it's a good idea to put c code into  c comment block. It's better using like ''' ''''  as c code block. But it  can't be changed now. The comment as below will works fine, I hope. Because the java/js programmer using the style frequently( and the comment is legal in c/c++/go), so I guess most people will suffer the problem.
/****
*/

Thanks for the comment, but you haven't made a suggestion for what we can change.

Timed out; closing. Please comment if you have suggestions for what to change, and I'll reopen.


Add XTrap AntiCheat

SteamDB app page links to a few games using this

Lost Saga North America
Grand Chase
Hazard Ops
Brick-Force
Kalonline
Granado Espada
Metro Conflict
Grand Chase Classic
Divine Souls
Soul Saver Online

Brief explanation of the change
Find XTrap folder and some dlls that I found the attached bitmaps in.
xpva00.zip

After running changed rules in this pull request (this bot only tests rules.ini changes):
Changed technologies: AntiCheat.XTrap
These apps now match: (23) 36630<PHONE_NUMBER>50<PHONE_NUMBER>40<PHONE_NUMBER>10<PHONE_NUMBER>30<PHONE_NUMBER>30<PHONE_NUMBER>20<PHONE_NUMBER>60<PHONE_NUMBER>00<PHONE_NUMBER>90<PHONE_NUMBER>440 1677470 1967090
Please confirm that all these changed apps are correct.

Please read https://github.com/SteamDatabase/FileDetectionRuleSets/blob/main/CONTRIBUTING.md on how to create good non matching tests.

i'm not a fan of linking to a korean website, this needs to be switched to something in english


snapshot: Fix snapshot landscape orientation issue

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context
Snapshot images do not respect landscape orientation set by the UI test with XCUIDevice.shared.orientation. This caused images to be always portrait even if landscape was set. Issue arises for real when used with frameit. There is frameit issue #15476 that explains more (auto closed but still an issue).
Also snapshot preview page has been different in safari and chrome. Safari reads orientation from png metadata and displays correct but chrome skips it and landscape is shown in portrait form.
Description
This fix will use the UIImage of screenshot and does redrawing of the image in landscape case. Redraw resets the images orientation to be correct in landscape case. With portrait orientation the screenshot image is used as is (metadata and image orientation are the same a.k.a no issue).
Testing Steps
Change XCUIDevice.shared.orientation between landscape(left/right) and portrait in your UITest to see that the generated images are respecting the correct orientation. Also the generated webpage now works same in safari and chrome.

@googlebot I signed it!


Updates YAML schema URL

Associated issue #850
URL for AZD YAML schema is incorrect
Is

For full details, refer to azure.yaml.json.

Should be

For full details, refer to azure.yaml.json.

@hhunter-ms
Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

Thanks @Jak-MS - under review!

Hi @Sealjay - As mentioned in the linked issue:

According to the engineering team, the link originally provided is correct. They used the schema copy on an Azure blob store as a temporary measure before the project was publicly announced.

Hopefully this helps!

Perfect, ta! The original link was broken / inaccessible (but I see it's working now.) @hhunter-ms


Fallback needed for date localization

Line 7 of pagekit/extensions/blog/views/ post/index.razr
        @trans('Written by %name% on %date%', ['%name%' => $post.user.name, '%date%' => '<time datetime="'.date($post.date, 'Y-m-d H:i:s').'">'.date($post.date).'</time>' ])

Prints something similar to "TuePMUTCE_AugETue01408487941" Instead of the localized date if the locale file is missing in the /extensions/system/languages.
I tested with Italian (it_IT).  When I copy the  /extensions/system/languages/fr_FR directory into the  /extensions/system/languages/it_IT directory, the problem disappears, but we should have a fallback to en_US.

We released the Pagekit Beta today. I close this issue because the code base completely changed. Please open a new issue if it still exists.


Upgrade to libvips 8.10.0

Hi,
We are currently using v2.14.1.
libvips 8.10 is out which fixed a GIF loading error.
gifload_buffer: bad frame size
https://github.com/libvips/libvips/issues/1701
Please consider updating to
https://github.com/libvips/libvips/releases/tag/v8.10.0
Thanks for your hard work, this is a really great library

Looks like the base docker image already landed 8.10.0, so this'll likely be part of the next release.

Yep, libvips is updated to 8.10.0 in the latest build. I'm still preparing the release.

Released v2.15.0 with libvips 8.10


⚠ Samsung has degraded performance

In 7c9a55f, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2336 ms

Resolved: Samsung performance has improved in dbdca4c.


Question about Observations

Can you give some details about Observation？In your user guide，the content about observation is empty. When I read the value of Observation，I don't know which element corresponds to which car。

Hi @Cuizy-faiz
I am currently writing the documentation (see #62), I'll update the Observation section and get back to you once I'm done if you have any question left.

How to get the speed information in Grayscale Image observation?

The speed information is indirectly present, since the observation a stack of the last four frames.

I set the configuration as documentation example， but when I print the obs，the observation type is still the kinematic type. the code is as follows:
import gym
import highway_env
env = gym.make("highway-v0")
done = False
screen_width, screen_height = 128, 128
config = {
"offscreen_rendering": False,
"observation": {
"type": "GrayscaleObservation",
"weights": [0.2989, 0.5870, 0.1140],  # weights for RGB conversion
"stack_size": 4,
"observation_shape": (screen_width, screen_height)
},
"screen_width": screen_width,
"screen_height": screen_height,
"scaling": 1.75,
"policy_frequency": 2
}
env.configure(config)
while not done:
action = env.action_type.actions_indexes["IDLE"]
obs, reward, done, info = env.step(action)
print(obs)
env.render()

You have to reset() the environment after changing the configuration.
I will should that clarification to the documentation!

Can you give some details about the reward？like formula

https://github.com/eleurent/highway-env/commit/14b1a8d63879d5b66b48f951bed84cdc31ea3394

The documentation about observations have been filled, thus I am closing this issue. Feel free to reopen if contents are missing.


[BUG] After upgraded to v1.2.2-rc1, failed to upgrade to v1.3.0, prompt less than minimum upgrade version

Describe the bug

After successfully upgrade from v1.2.1 to v1.2.2.-rc1 and trigger a new upgrade to v1.3.0

The upgrade dashboard would prompt message to prevent downloading upgrade image
The current version v1.2.2-rc1 is less than the minimum upgradable version v1.2.2.

To Reproduce
Steps to reproduce the behavior:

Prepare single node Harvester
Integrate with Rancher v2.8.2 and create RKE2 guest cluster
Upgrade to v1.2.2-rc1

apiVersion: harvesterhci.io/v1beta1
kind: Version
metadata:
  name: v1.2.2-rc1
  namespace: harvester-system
spec:
  isoChecksum: '9b4ca2adc8c7b65738f46dd432ac6d832894ae557815f8d323a6c9c2e999bb74eff755fdfd4d7831ac4c0a7cd59676471074883cebfa5fd8b5f14db33ad8db85'
  isoURL: https://releases.rancher.com/harvester/v1.2.2-rc1/harvester-v1.2.2-rc1-amd64.iso
  releaseDate: '20240423'

After upgrade complete, trigger another upgrade to v1.3.0-rc1

apiVersion: harvesterhci.io/v1beta1
kind: Version
metadata:
  name: v1.3.0
  namespace: harvester-system
spec:
  isoChecksum: '045e3ec2394ac621c72487db8d6f3328228a32bee4ac1ce43b740fafcc8194039e7213f8905020b52f31373d99057c483863e72cca55f8607029bf9cf1362a55'
  isoURL: https://releases.rancher.com/harvester/v1.3.0/harvester-v1.3.0-amd64.iso
  releaseDate: '20240315'

Check the upgrade process

Expected behavior

After upgraded to v1.2.2-rc, can upgrade to v1.3.0 correctly afterward.
Support bundle

supportbundle_8a56b2de-291c-4d11-b592-7195a366320d_2024-04-25T15-21-45Z.zip
Environment

Harvester ISO version: v1.2.2-rc1, v1.3.0
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): Single node local kvm machine

The current upgrade path is not supported from v1.2.2-rc to v1.3.0.
Instead we should upgrade from v1.2.2-rc to v1.3-head.
The failure message is the expected behavior. Thus close this issue.


Deprecate Chef::Search::Query positional parameters

I think we can throw a deprecation warning in hashify_args once the user hits the positional arg mangling:
https://github.com/chef/chef/blob/d648136085c4061eaefa04ad823c49a14282a749/lib/chef/search/query.rb#L107

We should get a cookstyle warning for this one.

The cookstyle issue for this is https://github.com/chef/cookstyle/issues/144

yeah this got done in cookstyle instead


Migrating from date-fns-tz

Hi, I'm trying to migrate from date-fns-tz. According to the documentation, transpose is the date-fns-tz's toZonedTime equivalent. However, it seems both functions return different results depending on the time zone provided.
Please take a look at the code below.
const date = new Date("2024-12-17T12:00:00.000Z");

const timezone1 = "Europe/Warsaw";
const zoned1 = toZonedTime(date, timezone1);
const transposed1 = transpose(date, tz(timezone1));

const timezone2 = "Europe/Kyiv";
const zoned2 = toZonedTime(date, timezone2);
const transposed2 = transpose(date, tz(timezone2));

const timezone3 = "Pacific/Kiritimati";
const zoned3 = toZonedTime(date, timezone3);
const transposed3 = transpose(date, tz(timezone3));

console.log(zoned1);
console.log(zoned2);
console.log(zoned3);
console.log("");
console.log(transposed1);
console.log(transposed2);
console.log(transposed3);

The output clearly shows that the results of toZonedTime (the first three lines) and transpose (the last three lines) differ.
Tue Dec 17 2024 13:00:00 GMT+0100 (Central European Standard Time)
Tue Dec 17 2024 14:00:00 GMT+0100 (Central European Standard Time)
Wed Dec 18 2024 02:00:00 GMT+0100 (Central European Standard Time)

Tue Dec 17 2024 13:00:00 GMT+0100 (Central European Standard Time)
Tue Dec 17 2024 12:00:00 GMT+0100 (Central European Standard Time)
Tue Dec 17 2024 00:00:00 GMT+0100 (Central European Standard Time)

Does it mean toZonedTime cannot be simply changed to transpose and some additional work is needed when migrating from date-fns-tz? Or maybe I'm doing something wrong?

I was experiencing the same problem. I never heard about transpose, but I thought that I need to do something like this:
// making new TZDate from system time, casting `toISOString` because otherwise it's same time as with `new Date()`

parseISO(new TZDate(new Date(), timezone).toISOString(), {
  in: tz(timezone),
})

Output is still incorrect

So now that you mentioned transpose, I achieve the same result as toZonedTime using following logic:
transpose(new TZDate(new Date(), timezone), TZDate)

I am unsure if this solution is the correct solution, but it works for me. I'll keep an eye on this issue, to learn more when someone with more experience with this library hops in.


[REQ] It is about the graphic option of 21-1 graphics

Acknowledgement of preliminary instructions

[X] I have read and acknowledged the preliminary instructions.

What idea do you have?
Why didn't they add the option to put 21 to 1 graphics, that had helped me a lot in bloxtrap to have a good experience in Roblox, fix it, I want it now, Thank you very much.

For some reason, roblox has broken it, I don't think it's possible to change, but the developers can prove me wrong.

Oh yeah, same thing about the ESC menu with the new gui change.


Create new Demo Page

The current gh-pages branch is a small copy/mix of the demo.js in the master branch and the readme file.
Create a new website that shows off the features of leaflet.pm

done


Fix 010 showing at 10 mins/secs past the hour/min

An extra 0 would be added to the minutes or seconds whenever they were at 10 for example:
[2016/4/18 13:27:010] Info at Server.<anonymous> ...

I'll merge this soon and then implement a proper fix for #2


Want to add a feature in contact us page by which when the user sent the from the message come to the owner mail

Please assign me under GSSOC'24

please clarify what do you want to solve and how to solve this issue also explain in detail with problem details, Screenshot and expected behavior

I am using email.js to solve this problem

Cc @Muskansahuincredible

@AnitSarkar123 assigned


Make clean fails if the wheel package is already installed. Need a check to clean only if the package is available.

I pasted the make clean errors below.
A workaround is to ignore errors with make -i clean
(_dev) harrison build (master) $ make clean
/home/dano/git/tcf/tools/clean.sh
******** DELETE LMDB FILES **************
make[1]: Entering directory '/home/dano/git/tcf/common/python'
pip3 uninstall --yes dist/avalon_common-0.5.0.dev1-cp36-cp36m-linux_x86_64.whl
Requirement 'dist/avalon_common-0.5.0.dev1-cp36-cp36m-linux_x86_64.whl' looks like a filename, but the file does not exist
Cannot uninstall requirement avalon-common, not installed
Makefile:42: recipe for target 'clean' failed
make[1]: *** [clean] Error 1
make[1]: Leaving directory '/home/dano/git/tcf/common/python'
make[1]: Entering directory '/home/dano/git/tcf/examples/enclave_manager'
pip3 uninstall --yes dist/tcf_enclave_manager-0.5.0.dev1-cp36-cp36m-linux_x86_64.whl
Requirement 'dist/tcf_enclave_manager-0.5.0.dev1-cp36-cp36m-linux_x86_64.whl' looks like a filename, but the file does not exist
Cannot uninstall requirement tcf-enclave-manager, not installed
Makefile:41: recipe for target 'clean' failed
make[1]: *** [clean] Error 1
make[1]: Leaving directory '/home/dano/git/tcf/examples/enclave_manager'
(_dev) harrison build (master) $

I fixed this with PR #281

PR #281 integrated 2020-02-20


Upgrade to core's new sort and distinct behaviour

This PR will apply for a version of core that includes https://github.com/realm/realm-core/pull/2644
It changes queries so the order that sort/distinct is now remembered, and chaining distinct calls is supported.
Hopefully this will allow cocoa to include distinct? If not, now is probably the time to discuss what is still lacking at this level.

It is marked as a breaking change in the core change notes. This is because unless Java intends to emulate the old semantics, some queries that combine sort and distinct can produce different results after the upgrade. @cmelchior @kneth is Java able to release the breaking change as it is in a major release? Otherwise, we would probably want to add support for clearing all previously applied distincts every time distinct is called to emulate the old behaviour.

As #266 says, the current behaviour is limited (some would say, it is wrong), and I think we will adapt the new semantic. It is a breaking change, so we need to have the timing right (we don't want to have too many major releases).

This is now waiting on realm/realm-core#2704.

Yeah, I figured that would be broken. There's probably other build system combinations that aren't quite right either. I'll take a crack at getting them resolved next.


Error differentiating ResNet from torchvision

In trying to get an image classification example working for FastAI.jl, I tried training a pretrained ResNet model from torchvision. The forward pass works fine, but when differentiating, I get an error.
I think this is actually a limitation of functorch, but figured I'd report here.
Minimum working example (last line fails on cpu and gpu):
using Cuda, PyCallChainRules

torchvision = pyimport("torchvision")

model = TorchModuleWrapper(torchvision.models.resnet18(pretrained=true).to("cuda:0"))
xs = randn(Float32, 128, 128, 3, 1) |> cu
ys = model(xs)
Zygote.gradient(() -> Flux.mse(model(xs), ys))

Stacktracejulia> Zygote.gradient(() -> Flux.mae(model(xs), ys))
ERROR: PyError ($(Expr(:escape, :(ccall(#= /home/lorenz/.julia/packages/PyCall/7a7w0/src/pyfncall.jl:43 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw)))))
RuntimeError('During a grad (vjp, jvp, grad, etc) transform, the function provided attempted to call in-place operation (aten::add_.Tensor) that would mutate a captured Tensor. This is not supported; please rewrite the function being transformed to explicitly accept the mutated Tensor(s) as inputs.')

I see! Thanks for sharing that, I'll try it out and get back here once I have a working FastAI.jl example. Feel free to close the issue, though

I used the linked code to load a pretrained ResNet and the forward and backward passes work:

I then started training it using the standard FastAI.jl image classification which also works, however, after 50 or so steps, I get a CUDA out-of-memory error thrown by PyTorch. Since the training ran fine for 50 batches and reducing the batch size didn't help, I am assuming there is a GPU memory leak somewhere. Have you run into this and have any advice on pinpointing or alleviating the problem? Thanks for your help!

Would it be possible to share the script you are running? It's definitely possible that DLPack's memorypool is not freeing the tensors appropriately.

Sure, here it is (adapted lines from test_pytorch_hub.jl included for completeness:
using PyCall, PyCallChainRules, Zygote, Flux
using PyCallChainRules.Torch: TorchModuleWrapper, torch
using FastAI
using CUDA

py"""
import torch
def bn2group(module):
    num_groups = 16 # hyper_parameter of GroupNorm
    module_output = module
    if isinstance(module, torch.nn.modules.batchnorm._BatchNorm):
        module_output = torch.nn.GroupNorm(num_groups,
                                           module.num_features,
                                           module.eps,
                                           module.affine,
                                          )
        if module.affine:
            with torch.no_grad():
                module_output.weight = module.weight
                module_output.bias = module.bias
        module_output.running_mean = module.running_mean
        module_output.running_var = module.running_var
        module_output.num_batches_tracked = module.num_batches_tracked
        if hasattr(module, "qconfig"):
            module_output.qconfig = module.qconfig
    for name, child in module.named_children():
        module_output.add_module(name, bn2group(child))
    del module
    return module_output
"""

function loadresnet(c::Int)
    model = torch.hub.load("pytorch/vision", "resnet18")
    model.fc = torch.nn.Linear(model.fc.in_features, c)  # change number of output classes
    model_gn = py"bn2group"(model)
    return TorchModuleWrapper(model_gn)
end

Flux.gpu(m::TorchModuleWrapper) = fmap(CUDA.cu, m)

# FastAI.jl part
data, blocks = loaddataset("imagenette2-320")
task = ImageClassificationSingle(blocks)
learner = tasklearner(
    task, data;
    callbacks=[ToGPU()],
    batchsize=4,
    model=gpu(loadresnet(length(blocks[2].classes))))  # model being loaded here

# Training
fitonecycle!(learner, 1)

Epoch 1 TrainingPhase(): 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| Time: 0:03:50
┌───────────────┬───────┬─────────┐
│         Phase │ Epoch │    Loss │
├───────────────┼───────┼─────────┤
│ TrainingPhase │   1.0 │ 2.45761 │
└───────────────┴───────┴─────────┘
Epoch 1 ValidationPhase(): 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| Time: 0:00:19
┌─────────────────┬───────┬───────┐
│           Phase │ Epoch │  Loss │
├─────────────────┼───────┼───────┤
│ ValidationPhase │   1.0 │ 2.464 │
└─────────────────┴───────┴───────┘

Again, seems to run correctly for me. I kept nvtop open on the side as well and I never saw memory usage go higher than 70% for me and was quite constant.
I think with this #18 the common factor seems to be older CUDA (and possibly older NVIDIA drivers) on your end?

I also let this run for a few more epochs. While I do see a slight uptick in memory usage with multiple epochs, it didn't become drastic enough to kill training.

By the way, I found this page in the functorch docs which gives some options for dealing with batch norm layers that may be a bit more convenient, e.g.
from functorch.experimental import replace_all_batch_norm_modules_
replace_all_batch_norm_modules_(net)

Nice, I'll move to using this function then!

I updated my CUDA drivers to 11.6, but am still experiencing memory leaks as described above :sob:

I put together a smaller MWE that reproduces the GPU OOM error:
using CUDA, PyCall, PyCallChainRules
using PyCallChainRules.Torch: TorchModuleWrapper, torch
fexp = pyimport("functorch.experimental")

model_py = torch.hub.load("pytorch/vision", "resnet18")
model_pygn = fexp.replace_all_batch_norm_modules_(model_py).to(device="cuda")
model = TorchModuleWrapper(model_pygn)

function memoryused()
    info = CUDA.MemoryInfo()
    return 1 - (info.free_bytes / info.total_bytes)
end

function oom()
    xs = cu(randn(Float32, 224, 224, 3, 16))
    usage = [memoryused()]
    try
        for _ in 1:1000
            model(xs)
            push!(usage, memoryused())
        end
    catch
    finally
        return usage
    end
end

oom()

Which produces linearly growing utilization values before the error:

@rejuvyesh any idea where this leak may be coming from or how to get started debugging this?

Just wanted to comment that I can reproduce this, but haven't been able to get the time to figure out the reason. Likely need to create a reproducer with just DLPack.jl because this is just forward pass, with no gradients.

This is definitely a bug in the dlpack interaction:
using CUDA, PyCall, DLPack, Functors

dlpack = pyimport("torch.utils.dlpack")
torch = pyimport("torch")
fexp = pyimport("functorch.experimental")

pyto_dlpack(x) = @pycall dlpack.to_dlpack(x)::PyObject
pyfrom_dlpack(x) = @pycall dlpack.from_dlpack(x)::PyObject

struct TorchModel
    fn::PyObject
end

function (wrap::TorchModel)(args...; kwargs...)
    return wrap.fn(fmap(x -> DLPack.share(x, PyObject, pyfrom_dlpack), args)...; kwargs...)
end

model_py = torch.hub.load("pytorch/vision", "resnet18")
model_pygn = fexp.replace_all_batch_norm_modules_(model_py).to(device="cuda")
model = TorchModel(model_pygn)

function memoryused()
    info = CUDA.MemoryInfo()
    return 1 - (info.free_bytes / info.total_bytes)
end

function oom()
    batchsize = 128
    usage = [memoryused()]
    try
        for _ in 1:1000
            xs = cu(randn(Float32, 224, 224, 3, batchsize))
            model(xs)
            push!(usage, memoryused())
        end
    catch
    finally
        return usage
    end
end

oom()

also fails. Might need to change the batchsize for your GPU.

 0.1589230896872148
 0.3943831411266905
 0.3996930224840288
 0.3996930224840288
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.4050029038413673
 0.41296772587737496
 0.41296772587737496
 0.41296772587737496
 ⋮
 0.8988218700738405
 0.8988218700738405
 0.8988218700738405
 0.8988218700738405
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9067866921098482
 0.9120965734671866
 0.9120965734671866

Thanks for looking into this. I am currently away from my GPU workstation, but can hopefully investigate myself next week.

This is definitely a bug in the dlpack interaction

Can you tell if this is an issue in DLPack.jl or just the way it's used? If the former, I guess we should open an issue there?

The issue is definitely just with dlpack.jl and pytorch interaction and maybe the issue should go there. I need to check whether this happens with Jax as well.

@rejuvyesh
Setting batchsize=384 returns oom384() function before reaching length(usage) == 1000.
julia> function oom384()
           batchsize = 384
           usage = [memoryused()]
           try
               for _ in 1:1000
                   xs = cu(randn(Float32, 224, 224, 3, batchsize))
                   model(xs)
                   push!(usage, memoryused())
               end
           catch
           finally
               return usage
           end
       end
oom384 (generic function with 1 method)

julia> oom384()
101-element Vector{Float64}:
 0.1589230896872148
 0.8455571227080395
 0.864141707458724
 0.864141707458724
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.8827262922094085
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 0.9013108769600929
 ⋮
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9942338007135153
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538
 0.9995436820708538

julia>

I don't think this is the best solution, but the following function notoom, just added  GC.gc(false) for each loop, does not occur OOM.
using ProgressMeter
function notoom()
    batchsize = 384
    usage = [memoryused()]
    @showprogress for _ in 1:1000
        xs = cu(randn(Float32, 224, 224, 3, batchsize))
        model(xs)
        push!(usage, memoryused())
        GC.gc(false) # <---
    end
    @assert length(usage) == 1+1000
end

Interesting 🤔. I wonder if it would be enough to do that every few steps only and what the memory usage curve would look like

This is not really an issue with DLPack.jl nor with PyCallChainRules.jl or PyCall.jl. As mentioned in https://github.com/pabloferz/DLPack.jl/issues/26 It's just that julia has no way of knowing how often if should garbage collect PyObjects in general.
And @terasakisatoshi example above is the correct way on how to handle this.


Accept a relaxed JSON syntax

Hello Mike,
Sometime, web sites (such as Airbnb.com for example) try to minimize the size of a JSON response by avoiding to quote keys and values when that does not create an ambiguity.
For example, I can get:
{ available: true,        date: '2019-03-12',        closed_to_arrival: false,        subtype_or_reservation_status: 'available',        subtype: null,        type: 'available',        length_of_stay_promotion: null }
MJsonViewer (rightfully) flags an error, but the net result is that the viewer can't be used on such a file!
Is there a possibility (such as a flag or a preference) to accept such a relaxed syntax?
Cheers,
Michel

Sure, will in development, thanks.


Installation problems in Ubuntu 16.04

This may hurt some feelings, but it needs to be said
I just did a fresh install of Ubuntu 16.04. I installed dnscrypt-proxy via Synaptic Package Manager, and the installation failed with errors:
"E: dnscrypt-proxy: subprocess installed post-installation script returned error exit status 1"
It tried to submit it's crash report, but all internet access failed. I had to uninstall the package to get Internet access back. I tried again, same result.
As a linux newbie, this concerned me. I really want DNScrypt, but it doesn't even work out of the box.
I tried again, this time looking at the install log.
The install details log suggests looking at:
systemctl status dnscrypt-proxy.service and journalctl -xe, so I did. It appears it's trying to use cisco as the server, and can't get the certificates, so the service shuts down, starts up, and tries again. Meanwhile Internet access on the machine is broken. Eventually I got it to work by pointing it to soltysiak.
Wonderful, I got it to work.  However, the point needs to be made, this makes the project look bad, and this is the kind of thing that makes people go back to Windows or Mac. Many people agree with the philosophy of Linux.  They like it a lot, but they can't use it.  Soon, they give up, and go back to Windows, as in my case.
Linux is very important to the computing world.  I love Linux, but I end up banging my head against the wall every time I try to switch. However, with the recent developments in the Windows OS, I'm determined to make it work this time.  I only learned of DNScrypt a few days ago, and now that I know about it, I consider it a critical piece of software for the future of secure computing.  This is something that everyone in the world should have running on their computer and phone.  If that's ever going to happen, it needs to JUST WORK as they say. It can be done.
My specific suggestion at this time is, when DNScrypt is preparing to install, gathering the dependencies, it also downloads the latest dnscrypt-resolvers.csv. That is basic and obvious, and it should be easy to implement.  Next, the program should test the resolvers until it finds one that works, before completing the install. You can have it select them at random if you like, until it finds one that works. In fact, it should do this check every time the service starts. By default. Simplicity for the users, guys.
This basic check will bring a lot more legitimacy to the project, and less headbanging will bring more people to Linux and keep them there. People with lives, and/or not in IT, are not going to open a terminal. And they should never have to.
Thanks for listening.  Sorry for the rant, but I'm on your side. I hope to see this implemented.
I also log fairly thoroughly my steps when I install an operating system.  I always end up reusing them later on when I want a fresh install, so that I can complete them very quickly without forgetting anything, and I can avoid problems I have run into in previous builds.  I volunteer my newbie-proof DNScrypt install notes for 16.04, once I have it up and running.  I would like to see it on the DNScrypt webpage.  Many websites I went to for instructions had me doing all kinds of crazy stuff in the command line, but I just eventually found in sitting there in the Synaptic package manager.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/34543483-installation-problems-in-ubuntu-16-04?utm_campaign=plugin&utm_content=tracker%2F417785&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F417785&utm_medium=issues&utm_source=github).

/close as invalid
TL;DR, wrong place to rant, report this to the packagers where it belongs: https://bugs.launchpad.net/ubuntu/+source/dnscrypt-proxy/+bug/1516420

OK, I will resubmit without rant.  However, this isn't just about the package, this is about the core functionality of dnscrypt-proxy, isn't it? I would have the same problem if installed through another method other than synaptic, and if I had done it on Fedora or something else.

Again, if you rely on a distro package, go rant there, the problem is not here.
Actually this is a multipart problem, as servers go up/down pretty random, so a package maintainer would need to repackage it pretty often, not doable, and this needs a script to update and check the signature of the .cvs.
Regarding your issue, edit the .cvs file and remove the :443 port address at cisco entries, although better grab the latest version and replace it.

@licaon-kter don't be so rude, please.
dnscrypt-proxy was not specially written for Ubuntu. In fact, I don't even use Ubuntu at all and I didn't even know that they provide a package for it.
It's a generic application, that was designed to work on many different operating systems. It's just an application. It doesn't include any installer, package or distribution-specific scripts.
There are so many operating systems and distributions that it would not make sense. Instead, it provides the application, and distribution-specific packages are made by packages maintainers who know best of to integrate new applications into specific operating systems or distributions.
You are absolutely correct. Installers/packages should retrieve the latest version of the CSV file, verify it, and shouldn't hard-code a resolver that may not match your expectations, or that may not even work.
The Ubuntu package is not maintained by the dnscrypt maintainers, but by Ubuntu maintainers. And the issues you describe are really about the package itself.
The good news is that Ubuntu maintainers are usually reactive and helpful. The bad news is that they don't use rolling releases, so you'll have to wait until the next release before bugs like those you describe get fixed.
No matter what, you should indeed report these issues to Ubuntu forums, or to the Ubuntu bug tracker.

Sorry to come of as rude, the wonders of internet communication. :) <- there I fixed it
Just trying to be succinct and answer to the issue at hand, although I did not find that funny the whole wall-of-text asking for "Ubuntu or bust" ;)

I'm trying to say that even if I download it from DNScrypt.org it should do these things, regardless of the OS, Linux, Android, Window, Mac.
That's why it should be build directly into the program, right here on github.
@licaon-kter Not sure where you get the ubuntu or bust idea. I certainly don't feel that way.

I read it like this: "I've installed it in Ubuntu and it did not work... here are the steps to fix it", since instead of just looking at the package page -> Bug reports -> and see exactly one issue, yours, you've started to write an 3902 characters long post about Windows and what not. :-|
You've made the choice of the distro (services running like dnsmasq), the install method (outdated resolvers list) and so forth.

Changing the network settings, especially DNS settings, is hard to do in a portable way. Even just on Linux. Some distros use systemd, some don't, some run dnsmasq by default, some run unbound, some have custom scripts to update /etc/resolv.conf.
So I wouldn't expect an app like dnscrypt to mess with network settings or with the configuration of other apps. If only because this can realistically only be tested on a very small subset of existing OS/distributions/versions. So, it will break.
And yes, that's one of the reasons why OSX and Windows remains vastly superior as desktop operating systems. But we're digressing here.

@licaon-kter You are the kind of "linux guy" that will never get it.  Please go away.
@jedisct1 Thank you for your quick responses and remaining constructive. Is it not possible to have it download the latest resolvers? It is not possible to do a fetch certificate check at service startup?
Perhaps I don't understand the delineation of what is here at github and what is added by packagers.
What exactly does the software package here at github do without customizations provided by OS maintainers?

The source code include a script to update the list of resolvers: https://github.com/jedisct1/dnscrypt-proxy/blob/master/dnscrypt-update-resolvers.sh.in
What you have on Github is for developers and package maintainers.

@rowyourboat Sorry to hear that, here, have a link: http://linux.oneandoneis2.org/LNW.htm
Hope that would clear you misreading of my responses.

OK, let's focus on having the service verify that it can fetch the certificate before it starts, and if it can't try another resolver? Is that something that could be handled by the code here?


Remove GitHub prefix on ERB lint rules

This PR removes the GitHub prefix on rules because it is unnecessary/overly verbose.
Discussion
I was discussing this idea with @manuelpuyol, and we think it might make sense to rename this gem and repo to erblint-a11y. The reason is because it may be much easier to gain attention/contributions from other folks interested in Rails/ERB accessibility tools. It may also be easier to collab on this with other Rails teams (like Shopify who open sourced erb-lint).
Most of our ERB lint rules are a11y focused anyways so I am not sure how likely it is we'll open source other rules.
If we do rename this gem/repo, I think we'll want to it in the next-next release after adding a deprecation warning. Not totally sure what the best way to go about it would be.
Thoughts on this idea? cc: @joelhawksley ,  @github/accessibility-reviewers

IMO, I agree the rename could attract more contributors outside of GitHub and be an accelerator for this set of linting rules to grow and become more robust. 👍

Definitely agree with @inkblotty, I like the idea of more open-source style without the GitHub prefix.

👋🏻 thanks for the ping @khiga8!
I'm torn on this idea. On one hand, it does make sense to me given the current linters we've shipped.
However, we do have several non-a11y linters we could open-source into this library and I worry that we'd be less likely to do so if we renamed it.
What if we moved towards contributing to erblint directly instead?

I think that this library can be a11y only. It would bring a lot of value to the community and reach a broader user base
we could still ship a github flavored ERB, similar to what we do with ESLint https://www.npmjs.com/package/eslint-plugin-github, which would use this gem (and probably some others)

Thank you all for the input! I really appreciate it :)

What if we moved towards contributing to erblint directly instead?

That is a good point. I think that would be a good eventual end-goal, but I might prefer us taking more ownership of these rules to start with. This would allow us to work more quickly and give greater input into the rulesets that are being introduced. Given our team's AOR, I feel that our team might be well-equipped to give input on the rulesets being introduced.
What do you think? @joelhawksley
I also don't think we need to make a decision immediately as we still need to build out this gem a bit more so happy to open an issue as we punt on it.

I think that would be a good eventual end-goal

If we're confident enough to open-source these rules as we have already, I think it's a good enough sign that they could be proposed upstream for erblint. Maybe we try that and see how it goes? We can continue to explore new linters inside of GitHub.com either way.

think it's a good enough sign that they could be proposed upstream for erblint

I don't think we want to depend on them to release new linters. From my last conversation with them, it looks like the projects is maintained by a single person and from my experience it takes some time for the PRs to be reviewed/merged.
I think that having an a11y gem is a good idea so we can ship fast and also bring value to the community.
At some point, I do think it's worth exploring some kind of partnership with Shopify so we can help maintain erblint

@manuelpuyol that's a good point. It would be good to be able to control releases. Have you asked about gaining publish rights on erb-lint?
Regardless, I think I see the point now. I'm 👍🏻 to rename.

Thanks again everyone!
There are some convos taking place next week that could affect trajectory of this convo so I'll hold off on naming until after the convos take place.
I'll close this PR for now. I'll open a separate issue to follow up on the renaming.
🙇♀


No open-cl documentation

Very confused. How does one install and test this? It's basically just a big old directory with lots of files and the readme is just a copy of the tensorflow install which tell you how to install tensorflow, not tensorflow-opencl.

Thanks for you interest. Please take a look at the OpenCL specific section of the overall documentation. This will be published on the tensorflow.org soon.

Hello,
Thanks. Will wait for you guys to official open it up on tensorflow.org site. I hope intel gpus are supported as the documentation under the opencl specific section only talks about AMD

I looked there. I get a bunch of errors when running configure for tensorflow, like this:
ERROR: /home/ben/tensorflow-opencl-master/tensorflow/workspace.bzl:17:3: //external:eigen_archive: no such attribute 'urls' in 'new_http_archive' rule.

atlury, any gpu which has drivers that support OpenCL 1.2 will work with this tensorflow-opencl

anyway, I got it to compile and install via pip3. Thank you for all of this. One more thing I think needs to be clarified is --copt=-march=native. This is supposed to optimize tensorflow to take advantage of my CPU features. But I can't find a list of those optimizations. Is there a file which lists all of these?

Is this going to be merged with the main tensorflow project at some point?

@benoitsteiner  Your link https://github.com/benoitsteiner/tensorflow-opencl/blob/master/tensorflow/g3doc/get_started/os_setup.md#optional-install-opencl-experimental-linux-only
is 404


why doesn't this user show as new editor?

PeteZivkov is a new user, they edited in what is possibly their base town, and in Panama, and it's not mentioned as new editor for Panama.  first two changesets in California, third in Panama. All their first 5 changesets were on same day 30th of March. I don't know what might have confused the logic for identifying new editors:

Palo Alto
Panama

1, 2

3

4

5, 6, 7

8, 9

10, 11

12, 13, 14, 15

A new mapper can only be "connected" to one single region at the moment.
I indeed need to investigate how it happens if a new mapper is related to several region.

This issue is now most likely fixed (see #801) !
There was an issue with the daily update if one of the new mapper detected by OSMCha deleted his/her account meanwhile.
There was another issue if there were too many new mappers ; the request to get their details was truncated.


cli: installing as root yields "sh: node: command not found"

🐞 Bug report
Command (mark with an x)
npm i -g @angular/cli
Is this a regression?
idk
Description
Running npm i -g @angular/cli as root results in
npm i -g @angular/cli
/root/.nvm/versions/node/v12.13.0/bin/ng -> /root/.nvm/versions/node/v12.13.0/lib/node_modules/@angular/cli/bin/ng

><EMAIL_ADDRESS>postinstall /root/.nvm/versions/node/v12.13.0/lib/node_modules/@angular/cli
> node ./bin/postinstall/script.js

sh: node: command not found
npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR<EMAIL_ADDRESS>postinstall: `node ./bin/postinstall/script.js`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2019-11-02T14_10_44_389Z-debug.log

🔬 Minimal Reproduction
see above
🔥 Exception or Error

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   '/root/.nvm/versions/node/v12.13.0/bin/node',
1 verbose cli   '/root/.nvm/versions/node/v12.13.0/bin/npm',
1 verbose cli   'i',
1 verbose cli   '-g',
1 verbose cli   '@angular/cli'
1 verbose cli ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose npm-session f5dad9f4a3658ba3
5 silly install loadCurrentTree
6 silly install readGlobalPackageData
7 http fetch GET 304 https://registry.npmjs.org/@angular%2fcli 96ms (from cache)
8 silly pacote tag manifest for @angular/cli@latest fetched in 110ms
9 timing stage:loadCurrentTree Completed in 125ms

...SNIP...
https://soundcloud.com/darko-luketic/interlude
...SNIP...

6985 silly postinstall<EMAIL_ADDRESS>6986 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>6987 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle false
6988 verbose lifecycle<EMAIL_ADDRESS>PATH: /root/.nvm/versions/node/v12.13.0/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/root/.nvm/versions/node/v12.13.0/lib/node_modules/@angular/cli/node_modules/.bin:/root/.nvm/versions/node/v12.13.0/lib/node_modules/.bin:/root/.nvm/versions/node/v12.13.0/bin:/usr/local/rvm/gems/ruby-2.6.0/bin:/usr/local/rvm/gems/ruby-2.6.0@global/bin:/usr/local/rvm/rubies/ruby-2.6.0/bin:/usr/lib/llvm/9/bin:/usr/lib/llvm/8/bin:/usr/lib/llvm/7/bin:/usr/lib/llvm/6/bin:/usr/lib/llvm/4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/local/rvm/bin:/root/go/bin:/root/go/bin
6989 verbose lifecycle<EMAIL_ADDRESS>CWD: /root/.nvm/versions/node/v12.13.0/lib/node_modules/@angular/cli
6990 silly lifecycle<EMAIL_ADDRESS>Args: [ '-c', 'node ./bin/postinstall/script.js' ]
6991 info lifecycle<EMAIL_ADDRESS>Failed to exec postinstall script
6992 timing action:postinstall Completed in 72ms
6993 verbose unlock done using /root/.npm/_locks/staging-5a878e9df2214304.lock for /root/.nvm/versions/node/v12.13.0/lib/node_modules/.staging
6994 timing stage:rollbackFailedOptional Completed in 460ms
6995 timing stage:runTopLevelLifecycles Completed in 7595ms
6996 verbose stack Error<EMAIL_ADDRESS>postinstall: `node ./bin/postinstall/script.js`
6996 verbose stack spawn ENOENT
6996 verbose stack     at ChildProcess. (/root/.nvm/versions/node/v12.13.0/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:48:18)
6996 verbose stack     at ChildProcess.emit (events.js:210:5)
6996 verbose stack     at maybeClose (internal/child_process.js:1021:16)
6996 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)
6997 verbose pkgid<EMAIL_ADDRESS>6998 verbose cwd /root
6999 verbose Linux 5.3.8-gentoo-x86_64
7000 verbose argv "/root/.nvm/versions/node/v12.13.0/bin/node" "/root/.nvm/versions/node/v12.13.0/bin/npm" "i" "-g" "@angular/cli"
7001 verbose node v12.13.0
7002 verbose npm  v6.12.1
7003 error code ELIFECYCLE
7004 error syscall spawn
7005 error file sh
7006 error errno ENOENT
7007 error<EMAIL_ADDRESS>postinstall: `node ./bin/postinstall/script.js`
7007 error spawn ENOENT
7008 error Failed at the<EMAIL_ADDRESS>postinstall script.
7008 error This is probably not a problem with npm. There is likely additional logging output above.
7009 verbose exit [ 1, true ]

🌍 Your Environment

gnu/linux
node v12.13.0 installed with nvm
nvm install is correct

Anything else relevant?
There are no issues installing when not root.

Please do not double post issues.
This is generally caused by either a misconfigured PATH environment variable or a file permission/ownership issue due to the mixture of both a regular user and root with the nvm/node installation.  Neither of these are caused or can be fixed by the Angular CLI.  The error shown above is caused by the shell not being able to find node itself.   As stated in the referenced issue, using root or sudo with npm install or nvm/node in general is not recommended.
Duplicate of #16044


Ubuntu on WSL gets corrupted - WslRegisterDistribution failed with error: 0x800700b7

Your Windows build number: Microsoft Windows [Version 10.0.17134.137]

What you're doing and what's happening:
Sometimes, after a reboot, when I open Ubuntu I receive the error below and the only solution so far is to reinstall it clean or never reboot(ever). Same issue happened on 18.04 and on 16.04 and I had to reinstall, loosing all my config.

What's wrong / what should be happening instead:

Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x800700b7
The distribution installation has become corrupted.
Please select Reset from App Settings or uninstall and reinstall the app.
Error: 0x800700b7 Cannot create a file when that file already exists.

Press any key to continue...

PS: This happened on my PC and on my Laptop, both after a reboot.

https://github.com/Microsoft/WSL/issues/634#issuecomment-230862990
sc query LxssManager
sc stop LxssManager
sc start LxssManager

Thanks. Restarting LxssManager solved it.

After running wslconfig /unregister Ubuntu-18.04 I received the error that started this thread. Restarting LxssManager service did not resolve it. However, uninstalling the instance did resolve it.

Thank you.  I ran into the same thing and restarting the service as you describe fixed it.

I get this error on both Ubuntu and OpenSuse. Restarting LxssManager solves it. But when I restart my Windows problem happens again. Any ideas?

I had a scheduled task to start some services (using a Vbs script) and I think I had checked run as administrator. I guess that was my cause for this. I could be wrong, but check that if you’re running at startup.

Restarting LxssManager solved it for me too

Restarting the Manager does resolve it, but it happens everytime I start the PC again :(

Same error, but https://github.com/Microsoft/WSL/issues/3352#issuecomment-402673907 doesnt help

For those looking how to restarting LxssManager, here is an instruction.

In my case, stopping the LxssManager takes ages, and after stopping it, it won't start again.
After a full system reboot everything works again though.
Now, what I have found, is that if an application displays an exception while being connected through an in-line command. (i.e. ubuntu1604 <command>) this can sometimes hang the system. My guess is that this command never comes to an end, and as a result there is no way to use that instance anymore. ... until a full system reboot in my case.

I cant restart LxssManager, it's stop and when I try to run it, console print ERROR 1058

I found a better way to deal it, first delete the files, then delete reg, then reinstall.
Finaly： its work

I found a better way to deal it, first delete the files, then delete reg, then reinstall.
Finaly： its work

Could you be more specific so others can try and replicate your solution?

This can happen if Kasperski is installed.

This can happen if Kasperski is installed.

Did stopping the Kasperski solve it for you @ThrashAbaddon  ?

I came here because of this error
error 0x8007010b al iniciar wsl.exe -d Ubuntu-18.04  (C:/mnt/c/)
It seems that they updated some features of the terminal and my home path /mnt/c/Users/Developer/Documents/ no longer works, but making the following change works, and better, because I can access subdirectories that before the home path did not allow me.

(this picture belongs to terminal configuration)
I leave it here in case it helps someone

Fore those of you still in trouble.
Download rootfs and import manually could at least work.
https://gist.github.com/djfdyuruiry/61e32fb69645bd2618182ee17373d068

Well... i'm here in 2024
in my case it got solved after i reset the distribution
these are the steps :

Open Settings:
Press Windows + I to open the Settings app.
Navigate to Apps:

Go to Apps > Apps & features.
Find Your Linux Distribution:

Scroll through the list of installed apps and find your Linux distribution (e.g., Ubuntu, Debian).
Reset the App:

Click on the distribution and then click Advanced options.
Scroll down and click Reset.

re-open your distribution and ta-da i'll work In shaa Allah


pause and resume not working

Pause and resume not working properly in CameraRecordGLSurfaceView

Yes, you can save your video clip when you pause, and start another video clip if resume.
You can combine the all video clips at last.


Create new.md

Docs Build status updates of commit f7e4c86:
:warning: Validation status: warnings

File
Status
Preview URL
Details

shan/new.md
:warning:Warning
View
Details

shan/new.md

Line 1, Column 1: [Warning: require shan] Missing required attribute: 'shan'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 42e060a:
:warning: Validation status: warnings

File
Status
Preview URL
Details

shan/new.md
:warning:Warning
View
Details

shan/new.md

Line 1, Column 1: [Warning: require shan] Missing required attribute: 'shan'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


fix/rerun setup files

fix: #2614

I used tests similar with test/related. Maybe it's not explicit, but it can tell me setup files have been added into forceRerunTriggers. I will be really happy to know whether there are some better way to test it.

Do I need to modify the document of forceRerunTriggers's default values ?

-['**/package.json/**', '**/vitest.config.*/**', '**/vite.config.*/**']
+['**/package.json/**', '**/vitest.config.*/**', '**/vite.config.*/**', '/path/to/setupFiles']

Thank you for your PR! Please, remove pnpm-lock file and add a note to docs that changing setup file will trigger rerun of all user tests.

Done.

I can confirm it's working in 0.27.2, thank you!
For what it's worth, I've switched from manually defining restHandlers for MSW in setup file to using msw-snapshot package from NPM, which allows to basically cache actual API responses as snapshots, and then use them in tests. I think it's a much nicer approach, allowing for an easy and good contract.


Publish on JCenter and Maven Central

Hi! Great job with this library.
Is there any reason why you don't publish the library on JCenter or Maven Central?
If you need help with that, let me know... I usually publish on Bintray's JCenter, which is fairly simple, and recently started using its automatic push to Maven Central which simplifies life a lot and lets people using Maven to get your lib without adding any repositories.

+1 your library will be more visible in Maven Central.
You already have a pull request available to mavenize everything. Now I really to not know how I can easy use it in my OSS project I don't want to "copy" or fork you work, still I need to publish.
Let us know is you need some backup to publish to the central. I did all the process with FF4J.

yep this is a great library and should be published on mvn central

I'm so sorry for the delay. Just to let you need that I started today publishing this library to Maven and Gradle. I'll let you know if I need your assistance. I will also look at the current pull requests. It's the first time I do this 😜

@renatoathaydes @clun
Have you hear of JitPack? @xafero mentioned it on his pull request, and it looks a lot easier than using maven central. Thoughts?

@dialex JitPack works only with GitHub projects... it's not a centralized binaries repository in the sense that it does not distribute binaries, it just checks out source using git then builds it and adds it as a project dependency (a lot of projects cannot be built without some setup, so this is not ideal for all projects).
It works in some cases, but to make it easy for any Java developer to use this project, it should be on Maven Central in my opinion (so it works with any Java build tool).
As I said before, I would advise you to start by adding the project to JCenter (which will already make it much easier to use it), which is very simple from the Bintray website... once you've done that, if you have the patience to request a groupId you can use to publish to Maven Central with Sonatype, then Bintray will be able to automatically publish it for you on Maven Central.

I published this repo on Maven Central at http://repo1.maven.org/maven2/com/diogonunes/JCDP/
You can also search for it at http://search.maven.org/
However, I tried adding a dependency on my pom.xml, but my IDE (IntelliJ) could not find the source. See below:

I also went to the IDE configurations, Maven > Repositories and updated the repo (for some reason it was never updated). But that didn't solve the issue either.

However when I went to the project's libraries, the IDE was able to find it and add it as a dependency. But the pom.xml was not changed.

What should I place on the pom so that everyone is able to download the library?

Looks like its done! Somehow.
Apparently when searching for JCDP, IntelliJ doesn't find it, but if I search for diogo it does... because reasons.
I'm planning to release this big update (v2.0) this next weekend. Thanks for your patience.

It was probably that the IntelliJ index does not update for a while. I checked your artifacts in Maven Central and they seem to be correct, except for this:
<name>${project.groupId}:${project.artifactId}</name>

Oh, it seems that your dependency on Hamcrest is not scoped as test. Is Hamcrest used by the library?

Regarding <name>${project.groupId}:${project.artifactId}</name>... I copied that from a Maven tutorial. Is uses the variables of the POM itself. So far it worked, why do you say it is wrong?
Regarding Hamcrest... I think you're right, the library doesn't use it, it's just for testing purposes. How do I mark it as test only?

like this: https://github.com/dialex/JCDP/blob/master/pom.xml#L139

Thanks @renatoathaydes, I fixed it on v2.0.1 (also released on Maven Central).
Let me know if you guys find any new issues.
I also added some fancy Shields to this repo, namely Travis CI.
So now changes are reviewed by the unit tests (and code analysis, via Codacy) 😀🎉


JTAppleCalendar (5.0.1): cellState.text vs cellState.date

Hello,
I'm working on a monthly view calendar and I've noticed that cellState.text returns different day than cellState.date (one day in difference). Here is my code:
func calendar(calendar : JTAppleCalendarView, isAboutToDisplayCell cell: JTAppleDayCellView, date:NSDate, cellState: CellState){
        print("\(cellState.text) ## \(cellState.date)")
    }

The result is:
3 ## 2015-10-02 14:00:00 +0000
4 ## 2015-10-03 14:00:00 +0000
5 ## 2015-10-04 14:00:00 +0000
6 ## 2015-10-05 14:00:00 +0000
7 ## 2015-10-06 14:00:00 +0000
8 ## 2015-10-07 14:00:00 +0000
9 ## 2015-10-08 14:00:00 +0000

Please advise if I'm doing it wrong or if anything can be done in this regard.
Thanks

What was the issue?

Im interested to know what the problem was so that I know how to respond when it pops up again

I was not using the proper NSCalender I guess. After using a date formatter with the proper local I was able to print the date correctly using that date formatter.  :)

Thank you. I'll note to mention this if anyone else is experiencing this same issue


Extend blueprints to allow overriding of the base image per homeserver defined.

I plan to use homerunner to create mini federations of servers, I would like to mix (eg) dendrite and synapse in those federations. These will be used for cross-client testing porpoises.
At the moment a blueprint has a single base image that is used for every homeserver, which prevents mixed federations.
We should add an optional override field to https://github.com/matrix-org/complement/blob/main/internal/b/blueprints.go#L48 and ensure it's populated through the chain, then the rest of homerunner should work as normal.

(i'm working on this)


Loading a 4D tif

I am struggling to load a 4D grayscale tif (coordinates would be (y,x,z,t)). When I use the load function, the resulting array is three dimensional, with z and t combined in a single dimension. I can reshape but that requires knowledge of the number of t's or z's beforehand, which is generally impractical. Do I need to use a different library in this case? Thanks!

Hi :wave:, TIFFs don't have the ability to store 4 dimensions natively so usually TIFF writers will store that information in some non-standard way, e.g. ImageJ writes it into the ImageDescription tag. I purposefully avoided adding this to TiffImages.jl as it is meant to load the data into Julia and then the powerful Julia array manipulation tools can take over. Regardless, it should be easy to get the z and t information out of the TIFF and then just reshape as you were doing.
However, it's hard for us to help you without more information about the TIFF. What program was used to write the TIFF? Can you provide the output of
using TiffImages
img = TiffImages.load("your img.tif")
first(ifds(img)) # prints out the tags in the first image plane

Hi, thanks! I figured it was something like that. I generated the tiff using ImageJ, converting it from a .nd2 file (output from Nikon Elements software) -- unrelated, but if you know of a Julia package for reading in .nd2 files, I would love to know about it. I've considered writing one myself, but taking a look at similar Python libraries, it seems extremely painful. Regardless, I get the following output when I run the code you suggested:
first(ifds(timeseries)) = IFD, with tags:
Tag(SUBFILETYPE, 0)
Tag(IMAGEWIDTH, 642)
Tag(IMAGELENGTH, 528)
Tag(BITSPERSAMPLE, 16)
Tag(COMPRESSION, COMPRESSION_NONE)
Tag(PHOTOMETRIC, 1)
Tag(IMAGEDESCRIPTION, "ImageJ=1.53t
images=...")
Tag(STRIPOFFSETS, 1489112)
Tag(SAMPLESPERPIXEL, 1)
Tag(STRIPBYTECOUNTS, 677952)
Tag(XRESOLUTION, 0x000f4240//0x00eac027)
Tag(YRESOLUTION, 0x000f4240//0x00eac027)
Tag(RESOLUTIONUNIT, 1)
Tag(COLORMAP, UInt16[0, 0, 256, 512, 768, ...])
Tag(SAMPLEFORMAT, 1)
Tag(IMAGEJ_METADATA_BYTECOUNTS, UInt32[20, 882300, 110, 110, 110, ...])
Tag(IMAGEJ_METADATA, UInt8[73, 74, 73, 74, 105, ...])

It's very nondescript: just Tag(IMAGEDESCRIPTION, "ImageJ=1.53t
images=...")
Presumably I need to expand the output somehow?

Yes, sorry. It should be
println(first(ifds(timeseries))[TiffImages.IMAGEDESCRIPTION].data)

Thanks, yes I was able to get this to work with the following:
    height, width, zt = size(timeseries)
    ImageJ_metadata = first(ifds(timeseries))[TiffImages.IMAGEDESCRIPTION].data
    slice_loc = findfirst("slices=", ImageJ_metadata)
    frames_loc = findfirst("frames=", ImageJ_metadata)
    hyperstack_loc = findfirst("hyperstack=", ImageJ_metadata)
    slices = tryparse(Int, ImageJ_metadata[(slice_loc[7]+1):(frames_loc[1]-1)])
    frames = tryparse(Int, ImageJ_metadata[(frames_loc[7]+1):(hyperstack_loc[1]-1)])
    if slices == nothing
        error("Could not parse the number of slices from the metadata")
    end
    if frames == nothing
        error("Could not parse the number of frames from the metadata")
    end
    timeseries = reshape(timeseries, (height, width, slices, frames))
    @show size(timeseries)


Unavailable services when deploying on kubernetes

Hello, I am seeing an issue whenever I deploy to k8s, the connections appear to timeout and I believe this is due to how pods are being rolled on deployments. Has anyone else encountered this, if so how was this resolved?
The solution may lie in how the kubernetes plugin registers/deregisters itself

I'm guessing this is the solution, any recommendations on what to set this to?
https://github.com/asim/go-micro/blob/0d57213d3f5cbe75f3fd8de17f8de7715e1cfb2e/examples/heartbeat/README.md

@FarhanSajid1 do you still have this issue?
The go-micro cli has implemented the gRPC heartbeat functionality now to support k8s probes.

I do and don't know how to fix it yet.
Every time I do the rollouts I encounter the timeouts. I believe the problem is in the default selector and registry. Looks like watcher doesn't work as expected. I need some time to figure out how to debug this.

@Scukerman which registry are you using? I have no issue deploying in k8s with the k8s registry, and implemented the gRPC health protocol, which can be done by default with the --health flag in the CLI

@Davincible I just switched from micro 0.x to micro v3 and I still use old etcdv2 registry (ex etcd). I ported it to micro v3 and it seemed to work until I started rolling out the pods.
For now, every time I scale down or roll out the pods I get "Request Timeout" error for, like, 40 seconds and then it starts to work as expected.
I'll try to switch to etcd v3 version of the registry, and if this won't fix the problem, then I'll try k8s registry.
Anyway, I don't want to overload k8s's apiserver and etcd and I'm trying to avoid it.

@Davincible After these two fixes there are no problems anymore.
https://github.com/go-micro/plugins/pull/85
https://github.com/go-micro/go-micro/pull/2600


Resolve new style offenses

Coverage remained the same at 100.0% when pulling 1148d37b9bab4a3bc7de6740ca974ebe51fc7f7d on jdh-style into b778bef646425ebf9fc681683c44f94da9581d62 on master.


Incorrect documentation

https://github.com/florianheinemann/passwordless-redisstore/blob/master/lib/redisstore.js#L11
Seems like this has been copied over.

Fixed with https://github.com/florianheinemann/passwordless-redisstore/commit/8d684c7e188d781128e9686fe258cc807e2a3a7b and published as v1.0.1
Thanks!


Add levana and milkTIA ad banners

What is the purpose of the change
-- add Levana and milkTIA ad banners
ClickUp Task
ClickUp Task URL
ClickUp Task URL
Brief Changelog

add images to FE content repo
update links to pools
add references to images
remove randomness and show levana first

Testing and Verifying
test on preview deploy

Documentation and Release Note

@mattupham merging to build stage. can update separately if Aaron has feedback


build(@schematics/angular): bump TS package dependency version to 2.7

should close #651
yarn test is ok
angular-cli yarn test using this schematics/angular version is ok too

circleci : "The following commit should not have a scope" ... I don't understand why. Should I remove the scope because this commit doesn't change any source file in this package ?

The package is already being built with TS 2.7 so build is not appropriate in this case as TS is being used here as a library not a build tool.  It should also build fine with bazel as well since the compiling version of TS should not be used to determine type information for the actual dependency version.
But to answer your question, yes, build should not have a scope as it is meant to reflect the build process for the entire repository.

Ok so, about the commit conventions : should I use feat or refactor :sweat_smile: ?
As I'm not familiar with devkit and schematics, I tought it was also used as a build tool somehow, my bad.
Given that it's only the library part which is impacted by this PR, I suppose this should be ok.
Also, as @schematics/angular is one of the few devkit packages that doesn't import typescript, maybe I could simply remove the dependency entry here, instead of changing the version.
Angular-cli doesn't seems to use it neither. Only nrwl/nx ... So, why should we keep Typescript as a dependency here ?

refactor would probably be the more appropriate option as no new features are really being added.
As to TypeScript's usage, the AST API is used within the Angular schematics to find and update existing TS files (e.g., adding a component to its parent module).  For reference, here is some of the utility code: https://github.com/angular/devkit/blob/master/packages/schematics/angular/utility/ng-ast-utils.ts


⚠ Avatar API Endpoint has degraded performance

In 80d148d, Avatar API Endpoint (https://avatar.roblox.com/v1/avatar-rules) experienced degraded performance:

HTTP code: 200
Response time: 5003 ms

Resolved: Avatar API Endpoint performance has improved in 3c101a7 after 28 minutes.


Delete GW API can't delete bad configured gateways

Steps

Send a creation GW request to create GW_16 without setting "gateway" parameter in the config.
Response: Bad request
List the containers, u will find the GW_16 container with status halted
Try to delete it using the GW delete api

Actual Result

Software Vesrsion
Master

Your screenshot is showing delete of GW_16, your ticket talks about GW_10? Should I trust this ticket?

@grimpy U can trust it nw

Can't reproduce this, create of invalid config does not create a halted gw for me, please provide payload.

I updated my ays and nw it doesn't create a container if the request raises an error. but before the update I had created many halted GW

If you can't get into this situation anymore, then the problem is that here is no more problem


CodeQL analysis failing on merges into main from Dependabot

After recently merging Dependabot pull request #109, CodeQL analysis on main started failing with an error like the following (sample run logs from merge commit f2fc2b852e2697df910a316960dbe87497bdd71b):
 Error: Workflows triggered by Dependabot on the "push" event run with read-only access. Uploading Code Scanning results requires write access. To use Code Scanning with Dependabot, please ensure you are using the "pull_request" event for this workflow and avoid triggering on the "push" event for Dependabot branches. See https://docs.github.com/en/code-security/secure-coding/configuring-code-scanning#scanning-on-push for more information on how to configure these events.

Note that the analysis still seems to be working within pull requests themselves, however.

This looks useful: https://github.com/github/codeql-action/issues/416#issuecomment-810982080

Merging #106 by saying @dependabot merge doesn't work either, in addition to @dependabot squash and merge as mentioned in the above comment link. Was worth a shot.

My #111 pull request (that I had written and merged myself) had the CodeQL analysis work just fine.
I think the solution here for now would just have to be that I merge Dependabot's pull requests for it, rather than asking it to do so through merge commands. Its pull requests are not set up for automatic merging anyway, so no big deal.


CommandQueueSingleCardFixture.ShardedBufferReadWrites shows incorrect output

 TT_METAL_ENABLE_REMOTE_CHIP=1 ./build/test/tt_metal/unit_tests_fast_dispatch --gtest_filter="CommandQueueSingleCardFixture.ShardedBufferReadWrites

ShardedBufferLargeReadWrites also appears to show the same issue

PR created with fix: https://github.com/tenstorrent/tt-metal/pull/8134

fix pushed to fd-2/main


Producer Thread throws 'NoneType' object is not callable

Hi all,
when I use pykafka producer to send msg to kafka. Mostly, it works well, however with time passed by, the following error consistently appears.
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/threading.py", line 810, in __bootstrap_inner
  File "/usr/local/lib/python2.7/threading.py", line 763, in run
  File "/usr/local/lib/python2.7/site-packages/pykafka/producer.py", line 406, in queue_reader
  File "/usr/local/lib/python2.7/site-packages/pykafka/producer.py", line 461, in flush
  File "/usr/local/lib/python2.7/threading.py", line 168, in acquire
<type 'exceptions.TypeError'>: 'NoneType' object is not callable
Exception in thread Thread-4 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/threading.py", line 810, in __bootstrap_inner
  File "/usr/local/lib/python2.7/threading.py", line 763, in run
  File "/usr/local/lib/python2.7/site-packages/pykafka/handlers.py", line 150, in worker
  File "/usr/local/lib/python2.7/Queue.py", line 174, in getException in thread Thread-13 (most likely raised during interpreter shutdown):

Here is the way I use pykafka producer, please tell me if i am wrong.
Pykafka Version: 2.0.3
    client = KafkaClient(hosts=localhost:9092)
    topic = client.topics[topic_name]
    with topic.get_producer() as producer:
        with open(file_name) as f:
            for line in f:
                jsonString = convertToJson(line, log_type, local_host_name, region)
                if not jsonString:
                    logging.getLogger().error('convert log to json fail: %s'%line)
                    continue
                producer.produce(jsonString)

finally, I find the doc
if count % 10**5 == 0:  # adjust this or bring lots of RAM ;)

what do you mean by this? does it mean that if I change 10**5, it will bring logs of RAM?

Hi @MuscleCoder, thanks for checking this in. It's a tough one to diagnose without more information. It appears that one of the producer threads is crashing, but it's not clear how exactly that's happening. Is there any additional error output or sample code you can provide? Your sample code looks fine (other than missing quotes around the hosts kwarg of KafkaClient(), which I assume is a typo).
"adjust this or bring lots of RAM" is an imprecise way of indicating that allowing the delivery report queue to fill up to 100k+ messages wil use up a lot of memory. Since you're not using delivery reports (since topic.get_producer(delivery_reports=False), this shouldn't have any bearing on the error you're seeing.

Hi @emmett9001 thanks for pointing out the typo.
Another information maybe useful is that, when these exception appears, I find that in kafka there is kafka.common.NotLeaderForPartitionException thrown out. Dose this will cause the producer thread crash? Meanwhile, I also find that, when this happens, the producer seems hanging there, And I have to force to kill it. That's really weird.
BTW, will delivery_reports decrease the efficiency of producer, but it will help to guarantee to deliver the msg, right? If I can tolerate duplicate msg, will resending the msg solves the problem, even if the NotLeaderForPartitionException?
Thanks

BTW, @emmett9001 , I find that when the file is empty, the producer tend to be hanging there. I think with 'with' clause, it will close the producer automatically.
Do i need to decrease the linger_ms? or update to the latest version?

It's hard to say exactly what's causing the producer to hang on __exit__, though a likely cause is that it's hitting _wait_all with messages in the queue that continue to fail.
Mind posting the output of bin/kafka-topics.sh --describe --zookeeper zookeeper1:2181 --topic mytopic? This could be related to frequent leader elections, but it's not clear whether they'd be happening too often in this particular case.

hi @emmett9001
sorry for reply late. Here is the topic info
Topic:test-log    PartitionCount:35       ReplicationFactor:3     Configs:
        Topic: test-log   Partition: 0    Leader: 1       Replicas: 1,5,2 Isr: 1,5,2
        Topic: test-log   Partition: 1    Leader: 2       Replicas: 2,1,3 Isr: 2,3,1
        Topic: test-log   Partition: 2    Leader: 3       Replicas: 3,2,4 Isr: 3,4,2
        Topic: test-log   Partition: 3    Leader: 4       Replicas: 4,3,5 Isr: 4,5,3
        Topic: test-log   Partition: 4    Leader: 5       Replicas: 5,4,1 Isr: 5,1,4
        Topic: test-log   Partition: 5    Leader: 1       Replicas: 1,2,3 Isr: 1,3,2
        Topic: test-log   Partition: 6    Leader: 2       Replicas: 2,3,4 Isr: 2,4,3
        Topic: test-log   Partition: 7    Leader: 3       Replicas: 3,4,5 Isr: 3,4,5
        Topic: test-log   Partition: 8    Leader: 4       Replicas: 4,5,1 Isr: 4,1,5
        Topic: test-log   Partition: 9    Leader: 5       Replicas: 5,1,2 Isr: 5,1,2
        Topic: test-log   Partition: 10   Leader: 1       Replicas: 1,3,4 Isr: 1,3,4
        Topic: test-log   Partition: 11   Leader: 2       Replicas: 2,4,5 Isr: 2,4,5
        Topic: test-log   Partition: 12   Leader: 3       Replicas: 3,5,1 Isr: 3,5,1
        Topic: test-log   Partition: 13   Leader: 4       Replicas: 4,1,2 Isr: 4,1,2
        Topic: test-log   Partition: 14   Leader: 5       Replicas: 5,2,3 Isr: 5,2,3
        Topic: test-log   Partition: 15   Leader: 1       Replicas: 1,4,5 Isr: 1,5,4
        Topic: test-log   Partition: 16   Leader: 2       Replicas: 2,5,1 Isr: 2,1,5
        Topic: test-log   Partition: 17   Leader: 3       Replicas: 3,1,2 Isr: 3,2,1
        Topic: test-log   Partition: 18   Leader: 4       Replicas: 4,2,3 Isr: 4,3,2
        Topic: test-log   Partition: 19   Leader: 5       Replicas: 5,3,4 Isr: 5,3,4
        Topic: test-log   Partition: 20   Leader: 2       Replicas: 2,5,1 Isr: 2,1,5
        Topic: test-log   Partition: 21   Leader: 3       Replicas: 3,1,2 Isr: 3,2,1
        Topic: test-log   Partition: 22   Leader: 4       Replicas: 4,2,3 Isr: 4,3,2
        Topic: test-log   Partition: 23   Leader: 5       Replicas: 5,3,4 Isr: 5,4,3
        Topic: test-log   Partition: 24   Leader: 1       Replicas: 1,4,5 Isr: 1,5,4
        Topic: test-log   Partition: 25   Leader: 2       Replicas: 2,5,1 Isr: 2,1,5
        Topic: test-log   Partition: 26   Leader: 3       Replicas: 3,1,2 Isr: 3,2,1
        Topic: test-log   Partition: 27   Leader: 4       Replicas: 4,2,3 Isr: 4,3,2
        Topic: test-log   Partition: 28   Leader: 5       Replicas: 5,3,4 Isr: 5,3,4
        Topic: test-log   Partition: 29   Leader: 1       Replicas: 1,4,5 Isr: 1,5,4
        Topic: test-log   Partition: 30   Leader: 2       Replicas: 2,5,1 Isr: 2,1,5
        Topic: test-log   Partition: 31   Leader: 3       Replicas: 3,1,2 Isr: 3,2,1
        Topic: test-log   Partition: 32   Leader: 4       Replicas: 4,2,3 Isr: 4,3,2
        Topic: test-log   Partition: 33   Leader: 5       Replicas: 5,3,4 Isr: 5,4,3
        Topic: test-log   Partition: 34   Leader: 1       Replicas: 1,4,5 Isr: 1,5,4

Here's the line from which the original traceback appears to originate: https://github.com/python/cpython/blob/2.7/Lib/threading.py#L168 I'm still not sure what this means, though.

Looks like this could be related to this kafka bug

Hi @emmett9001,
Here is my pykafka version,

Metadata-Version: 1.1
Name: pykafka
Version: 2.0.3
Summary: Full-Featured Pure-Python Kafka Client
Home-page: https://github.com/Parsely/pykafka
Author: Keith Bourgoin and Emmett Butler
Author-email<EMAIL_ADDRESS>License: Apache License 2.0
Location: /usr/local/lib/python2.7/site-packages
Requires: kazoo, tabulate
Entry-points:
[console_scripts]
kafka-tools = pykafka.cli.kafka_tools:main
I will have a try for 2.1.2
Thanks

@MuscleCoder 2.2.0 was actually released yesterday. Give that a try if you can.

This issue is old enough and similar enough to #393 that I feel fine closing it, since it seems very likely to have been fixed in the intervening version updates. @MuscleCoder, if you're still experiencing this issue, please feel free to comment and/or reopen this issue. Thanks!

I know this bug has been closed already but I've run across it in my setup, not even in code I wrote, just by using kafka-tools to print the offsets of a topic. It happens quite frequently on my development setup. Here's an example of me hitting up and enter a bunch to cause it to happen. The amount of traceback that makes it to the console seems to vary each run. Sometimes it is a single line, sometimes it looks like two or three tracebacks mashed together (due to threading, as mentioned earlier in this thread).
vagrant@head:~/$ date && kafka-tools print_offsets mytopic LATEST
Wed Feb 24 19:57:54 UTC 2016
 Partition    Offset
-----------  --------
     0        470857
     1        470480
vagrant@head:~/$ date && kafka-tools print_offsets mytopic LATEST
Wed Feb 24 19:57:55 UTC 2016
 Partition    Offset
-----------  --------
     0        470857
     1        470480
Exception in thread 1: pykafka.RequestHandler.worker for head:9092 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
  File "/usr/lib/python2.7/threading.py", line 763, in run
  File "/usr/local/lib/python2.7/dist-packages/pykafka/handlers.py", line 188, in worker
  File "/usr/lib/python2.7/Queue.py", line 174, in get
<type 'exceptions.TypeError'>: 'NoneType' object is not callableException in thread 0: pykafka.RequestHandler.worker for localhost:9092 (most likely raised during interpreter shutdown):
vagrant@head:~/$ date && kafka-tools print_offsets mytopic LATEST
Wed Feb 24 19:57:55 UTC 2016
 Partition    Offset
-----------  --------
     0        470857
     1        470480

My environment is a single node vagrant running Ubuntu 14.04.3 LTS. One instance of Kafka running and one instance of Zookeeper.
vagrant@head:~$ cat /etc/issue.net
Ubuntu 14.04.3 LTS
vagrant@head:~$ uname -a
Linux head 3.13.0-73-generic #116-Ubuntu SMP Fri Dec 4 15:31:30 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Kafka is <IP_ADDRESS>
Zookeeper is 3.4.6
librdkafka is 0.8.6
pykafka is 2.2.1
The topic description is
vagrant@head:~$ /usr/lib/kafka/bin/kafka-topics.sh --describe --zookeeper localhost --topic mytopic
Topic:mytopic   PartitionCount:2        ReplicationFactor:1     Configs:
        Topic: mytopic  Partition: 0    Leader: 0       Replicas: 0     Isr: 0
        Topic: mytopic  Partition: 1    Leader: 0       Replicas: 0     Isr: 0

I don't see anything in the kafka or zookeeper logs related to this.


Stacktrace on upload

Running on Ubuntu everything is installed and tested as far as I can tell. Read all the comments and this seems to be a new issue, thoughts?
Failed to upload /home/osboxes/tiktok-uploader/files/2.mp4
Message:
Stacktrace:
#0 0x555d2c5fe6b3
#1 0x555d2c2d41e7
#2 0x555d2c31b566
#3 0x555d2c31b651
#4 0x555d2c358a74
#5 0x555d2c33d0ed
#6 0x555d2c356322
#7 0x555d2c33ce93
#8 0x555d2c30f934
#9 0x555d2c31071e
#10 0x555d2c5c3cb8
#11 0x555d2c5c7bf0
#12 0x555d2c5d219c
#13 0x555d2c5c8808
#14 0x555d2c59527f
#15 0x555d2c5ece88
#16 0x555d2c5ed059
#17 0x555d2c5fd843
#18 0x7f963b494b43

Error while uploading video

could you provide the whole exception stack, and also the video for reproducing this problem?

I have the same issue, i went in to debug and added a save screenshot in line 200, because after that it times out when it tries to get the iframe. This returned this screenshot

I even added a 60 second wait before the screenshot but it still is in this loading state.
I am using chrome in headless mode on ubuntu 22.04

@wkaisertexas @csrgxtu  I would really appreciate your help in this issue(it worked fine on windows locally, but on my aws ubuntu server this error happened)

Now it sometimes works and sometimes not after using @misterneo's PR the issue that happens is it goes to /creator center upload and then it redirects to https://www.tiktok.com/login?[object Object] this happens sometimes and I can't figure out exactly when it happens

I'm using this package inside a Docker container, probably built on top of some version of Ubuntu with Python and Nodejs preinstalled (nikolaik/python-nodejs), my main script also runs Chrome in headless mode and It works fine for me after the updates I made. @LevaniVashadze

I'm using this package inside a Docker container, probably built on top of some version of Ubuntu with Python and Nodejs preinstalled (nikolaik/python-nodejs), my main script also runs Chrome in headless mode and It works fine for me after the updates I made. @LevaniVashadze

I also found the issue, turns out some of the cookies I was using got invalidated after the account holder logged out, thanks for your PR btw, without it I couldn't get it to work at all.

I think this is my wake up call to learn docker.
I was having a difficult time thinking about how I can do CI on this package with localization issues being such a big deal.
Will look into this for next release

related to #60


[WIP] Enforced CASL in UI

Notes for Reviewers
This PR fixes #

[X] CASL setup
[X] Added permission constants for Meshery
[X] Change import aliases from "../../" to "@/component" for all root level directories in UI
[X] Fetch new abilities on org switching (Maintain keys in session storage to prevent unauthorized splash)
Pages

[X] Meshery Pattern (both table and grid)
[x] Meshery Filters (both table and grid)
[x] Connections page (both connections and Meshsync table)
[x] Settings
[x] Environment
[x] Workspace
[x] Extension page
[x] Performance page
[ ] Service Mesh

Signed commits

[x] Yes, I signed my commits.

Merge conflict

@Yashsharma1911 did you finish today? It seems that the week escaped you. You were this close. :/

Resolving conflicts

LGTM now merging


terraform hooks fail on windows with git bash

We are currently integrating the pre-commit hooks into our projects.
We are mainly setup on Windows systems.
Using git bash, we found that "/bin/bash" could not be found.
If we change the shebang to "#!/usr/bin/env bash" in the shell scripts (fmt, validate, lint), then we can use the scripts normally.
Is it possible to adapt the terraform-based hooks with the more compatible shebang?
You have already made the adjustment for shellcheck.sh.
Many Thanks
Thorsten

This makes sense to me! That said, we're a bit buried with other initiatives so we most likely won't get to this anytime soon. A PR to make this switch would be very welcome.

Good Morning from Germany!
I did a PR: https://github.com/gruntwork-io/pre-commit/pull/44
Many thanks!
Thorsten

Thanks for the PR! This was released in https://github.com/gruntwork-io/pre-commit/releases/tag/v0.1.11