Maybe should use 7N1 serial, rather than 8N1?

Hi,
I've just done a similar project myself, using an ESP32C3 mcu, and came to roughly the same solution as you....
However, I used 7N1 serial. ( which is 1 start bit, 7 data bits, 1 end bit),  This is 9 bits in total, exactly the right size for 3 sets of WS2812 bits.
I just came across your blog,  and I see you say 8N1 is the right size?   I am confused,  this would be 1 bit over?
Maybe I have overlooked something?  or maybe you have 1 bit too many?   But I'd like to find out If I am doing something wrong, so I can fix my code...  But,  I know it works...  (see attached)
https://github.com/user-attachments/assets/1e1d73a7-98ad-4fc9-9f24-64cbf86907af

Hi!
Glad that at least someone else than me read my article 😉
As I pointed in my post, I'm using someone else's work on it and they used 8N1.
Yet, i agree that if one looks at the timing diagram :

And, indeed, the START bit being already low, we should be able to skip the 1rst low bit and directly start with the raising edge of the 1rst neopixel bit.
So, good finding. I'll do some experiments and will eventually post an update if it works out.

So, I had a look, and I don't actually use the same timing diagram as the blog article anymore, since I already leverage the START bit.
// A UART byte is
// 2 bits for 1st bit as the 1rst UART bit is the start bit
// 3 bits for 2nd bit
// 3 bits for 3rd bit
// .. repeat for all the remaining 21 bits.

And in that, you are fully right, 7N1 is enough as the STOP bit is always a LOW bit due to the inversion logic. I just always sent an explicit 0, but redundant, at the end in 8N1 mode.
Good news is that 7N1 is shorter, and therefore quicker as you gain 10% of the speed on the WS2812 wire.
Bad news is that the USB is still sending full bytes, even in 7N1 mode, so you don't have the speed gains on the USB wire.
Lastly, good news is that the ws2812bify code works unchanged in 7N1 and 8N1 mode, as the last 0 bit is simply discarded since UART is sending it in LSB mode.
I'll amend the post and will close the issue.

Nice :-)
Also, something you might want to consider...  Since ESP32 is very low powered compared to a real PC, I found a way of sending 6 bits at a time.....
First an array of specially crafted 64 shorts - The binary pattern of each of these numbers represent 6 bits of ws2812 protocol (when the UART start and stop bits taken into account)
For example, consider the first, element zero, which is 23387.  Binary is: 1011011  1011011
With start and stop bits added:   110110110 110110110
... split into 3 bits:   110 110 110 110 110 110
.... Inverted:  001 001 001 001 001 001
... which is ws2812 protocol for 6 zeros:
static const short rgb2ws2812_map[] = {
  23387, 7003, 21339, 4955, 23131, 6747, 21083, 4699, 23323, 6939, 21275, 4891,
  23067, 6683, 21019, 4635, 23379, 6995, 21331, 4947, 23123, 6739, 21075, 4691,
  23315, 6931, 21267, 4883, 23059, 6675, 21011, 4627, 23386, 7002, 21338, 4954,
  23130, 6746, 21082, 4698, 23322, 6938, 21274, 4890, 23066, 6682, 21018, 4634,
  23378, 6994, 21330, 4946, 23122, 6738, 21074, 4690, 23314, 6930, 21266, 4882,
  23058, 6674, 21010, 4626
};

Then something like:
uint32_t packedColor = (red << 16) | (green<< 8) | blue;
uint16_t buffer[4]
buffer[0] = rgb2ws2812_map[(packedColor & 0b111111000000000000000000) >> 18];
buffer[1] = rgb2ws2812_map[(packedColor & 0b000000111111000000000000) >> 12];
buffer[2] = rgb2ws2812_map[(packedColor & 0b000000000000111111000000) >> 6];
buffer[3] = rgb2ws2812_map[(packedColor & 0b000000000000000000111111) >> 0];

This moves red, green, blue values into 8 bytes ready to be sent over uart.
This might be a way of speeding things up for you?

This is my actual UART sending code:
struct RGB_Colour{
     union {
        struct {
            byte blue;
            byte green;
            byte red;
            byte metadata2;
        };
        uint32_t packedColor;
    };
};

RGB_Colour sequence[LEDS_COUNT];

...

// Send RGB_Colour sequence to UART.
  uint16_t buffer[80];
  for (int i = 0; i < LEDS_COUNT; i++) {
      uint32_t packedColor = sequence[i].packedColor;
      buffer[page * 4 + 0] = rgb2ws2812_map[(packedColor & 0b111111000000000000000000) >> 18];
      buffer[page * 4 + 1] = rgb2ws2812_map[(packedColor & 0b000000111111000000000000) >> 12];
      buffer[page * 4 + 2] = rgb2ws2812_map[(packedColor & 0b000000000000111111000000) >> 6];
      buffer[page * 4 + 3] = rgb2ws2812_map[(packedColor & 0b000000000000000000111111) >> 0];

      page++;
      if (page == sizeof(buffer)/8) {
        uart_write_bytes(1, (const char *)buffer, sizeof(buffer));
        page = 0;
      }
    }
    uart_write_bytes(1, (const char *)buffer, page * 8);

Indeed, that's actually a good idea!


AboutUs: add Bai Yunwei's details

update Yunwei's photo

Coverage remained the same at 93.746% when pulling 7e43cc103e7e34f2d20b927279db5e0186ecf538 on WendyBaiYunwei:AboutUs into 84dc38d68286cf0d42308e21fec20d5c25a9fe56 on cs2113-ay1819s2-t09-1:master.

Understand that you accidentally squashed and merged the pull request.
In future, please avoid self-approving/merging behaviour to allow for error checking.
Note to all reviewers: Please ensure that all CI tests must pass first before merging.


The controller overwrites /etc/hosts

Shortly after starting AppScale, the controller wipes out any custom entries in /etc/hosts.

https://github.com/AppScale/appscale/pull/3072 fixes this.


Add Langley School District 35

langleyschools.ca is the domain that students of SD35 in BC Canada. District Site is at https://www.sd35.bc.ca/, and they manage DNS for this domain.

@SuprCheetah langleyschools.ca


Update to 1.19.3

Updated the mod to 1.19.3 as well all other dependencies to their latest available version
Fixed all mappings related errors

Thanks! lgtm

Thanks! lgtm

No problem :)


Inline input object as arguments breaks GraphQL::Hive::Analyzer

 query GetPost {
    post(input: { id: 1 }) {
      title
      myId: id
    }
  }

solved in https://github.com/charlypoly/graphql-ruby-hive/pull/13


CephFS PVC creation fails provision for few sizes

Describe the bug
When provisioning the CephFS PVC, for some sizes it would fail to provision volumes with the expected size. For example 101M, 500M, 504M etc.
Steps to reproduce

Deploy CephFS plugin
Create a storage class
Create a PVC with size 500M

Actual results
$ kubectl get pvc
NAME                 STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS    AGE
csi-cephfs-pvc       Bound     pvc-449021d8-d94f-49f8-bf18-d11c16bd25c1   1Gi        RWX            csi-cephfs-sc   3h7m
csi-cephfs-pvc-500   Pending                                                                        csi-cephfs-sc   2s
Expected behavior
PVC creation should succeed and get bound to a PV.
Logs
I1009 18:13:43.980418       1 controller.go:1366] provision "default/csi-cephfs-pvc-500" class "csi-cephfs-sc": started
I1009 18:13:43.980519       1 event.go:298] Event(v1.ObjectReference{Kind:"PersistentVolumeClaim", Namespace:"default", Name:"csi-cephfs-pvc-500", UID:"e8111a6b-c658-4405-bc06-c7419a2ee5be", APIVersion:"v1", ResourceVersion:"18754", FieldPath:""}): type: 'Normal' reason: 'Provisioning' External provisioner is provisioning volume for claim "default/csi-cephfs-pvc-500"
W1009 18:13:44.061025       1 controller.go:934] Retrying syncing claim "e8111a6b-c658-4405-bc06-c7419a2ee5be", failure 3
E1009 18:13:44.061051       1 controller.go:957] error syncing claim "e8111a6b-c658-4405-bc06-c7419a2ee5be": failed to provision volume with StorageClass "csi-cephfs-sc": created volume capacity 499122176 less than requested capacity 500000000
I1009 18:13:44.061123       1 event.go:298] Event(v1.ObjectReference{Kind:"PersistentVolumeClaim", Namespace:"default", Name:"csi-cephfs-pvc-500", UID:"e8111a6b-c658-4405-bc06-c7419a2ee5be", APIVersion:"v1", ResourceVersion:"18754", FieldPath:""}): type: 'Warning' reason: 'ProvisioningFailed' failed to provision volume with StorageClass "csi-cephfs-sc": created volume capacity 499122176 less than requested capacity 500000000

/assign


[e2e]: generic tag main assets slsa3

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.91
Run: https://github.com/slsa-framework/example-package/actions/runs/2968824087
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.91
Date: Thu Sep  1 04:31:21 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.92
Run: https://github.com/slsa-framework/example-package/actions/runs/2976605188
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.92
Date: Fri Sep  2 04:40:16 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.93
Run: https://github.com/slsa-framework/example-package/actions/runs/2983071052
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.93
Date: Sat Sep  3 04:24:28 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.94
Run: https://github.com/slsa-framework/example-package/actions/runs/2986751842
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.94
Date: Sun Sep  4 04:34:50 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.95
Run: https://github.com/slsa-framework/example-package/actions/runs/2990748378
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.95
Date: Mon Sep  5 04:39:58 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.96
Run: https://github.com/slsa-framework/example-package/actions/runs/2997515661
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.96
Date: Tue Sep  6 04:44:02 UTC 2022

This should be fixed by https://github.com/slsa-framework/example-package/pull/101

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.97
Run: https://github.com/slsa-framework/example-package/actions/runs/3005043853
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.97
Date: Wed Sep  7 04:35:08 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/v18.0.98
Run: https://github.com/slsa-framework/example-package/actions/runs/3012409606
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.tag.main.assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.tag.main.assets.slsa3.yml
Trigger: push
Branch: v18.0.98
Date: Thu Sep  8 04:30:27 UTC 2022
Tests are passing now. Closing this issue.


fix #54

This fixes #54.

LGTM! Looks like "-e" is more consistent across macOS/Linux versions of grep


Allow formatting of DatePicker chosen date text

This commit adds an optional formatChosenDate prop to the DatePicker component. If the prop is not supplied this will fall back to the original chosen date text format. Feedback welcome on the name of the prop, other options could be chosenDateFormatter or maybe chosenDateFormat.
I also included some basic IOS and Android jest tests for the placeholder text, default chosen date format and custom chosen date format. This is my first time adding jest tests so feedback welcome if I've messed anything up.
Test Plan:

Ran eslint on my changes to DatePicker.js
Ran yarn run jest DatePicker and inspected the snapshots to ensure properly formatted placeholder text, default format text and custom format text.

@jgable We cannot accept test cases
Can you exclude it from your PR?

@jgable We will be closing this PR in a day in case of no response

@jgable your PR solves #2056. Can you exclude the test files from your PR.

Are we expecting this to be merged soon?

@akhil-geekyants if the need is just to remove the tests added I can open a PR with those changes I need this functionality

I also feel that this property must be exposed outside through the interface in the index.d.ts file

@SupriyaKalghatgi @akhil-geekyants I wont be able to release my app without this fucntionality I can open a PR for the same if @jgable  is not interested to fix this

Check commit here https://github.com/GeekyAnts/NativeBase/commit/0b59fb7eab77c51b36508f3ba842911260426ffd

Wow this was exactly what I was lucking for, thanks you a lot, upgrading to 2.7.1


Update slack invite link

Summary
Related to https://github.com/Qiskit/qiskit.org/issues/2959
Details and comments

@DanPuzzuoli I added the channel name following the readme in qiskit-experiment. I think that way people can search for the channel in case the link doesn't work.


ci: Gradle build CI run reduction

Issue #, if available:
Description of changes:

Reduces Gradle CI to only run on PRs to any branch or pushes to main.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

rebased


[3.2] Use difference in position to check whether motion in Bullet is too close to zero.

3.2 version of #40489.

Thanks!


Remove EzasmError

As a Developer
I want to remove EzasmError
In order to remove a redundant layer of abstraction and reduce developer confusion between very similar errors.
Overview
The EzasmError is an enum wrapper that combines ParserError, SimulatorError, InternalError, and IoError. However, the SimulatorError already contains variants for all of the other variants I just listed. It can thus be used in exactly the same way as EzasmError is already used.
As it stands now, these two errors are virtually identical, yet being used distinctly across the codebase.
Code Modification
Excluding EzasmError's definition and imports, it is only referenced in 3 places: handle_error (passed in as parameter), handle_arguments (error type), and get_file_from_path (error type, also my LSP is not finding any references to this method apart from its declaration). In all of these methods, it can simply be replaced with a SimulatorError, and in the first one it can also be replaced with a generic that implements Debug and some error type.
Additionally, using the From trait, we can avoid rewriting most of the places where errors are returned within the methods.
Conclusion
To reduce developer confusion, we should replace this little-used error type with the much more prominent SimulatorError and with generics, especially since the modification should result in fewer than 10 edits across the board.

Prematurelt hit ctrl+enter while editing the issue, I'm editing the description right now

@TrevorBrunette @WyattRoss what do y'all think?

Reducing the complexity of our error type is a good thing to do, however I don't know if this is how we should go about it.
If we replace it with SimulatorError we're just kicking the problem of a big monolithic error type down one layer, right? If anything, I think trying to untangle the variants contained within SimulatorError would be a better. Such a solution might be more complicated but it's also more correct.
This probably involves changing some uses of SimulatorError to EzASMError.

Just to clarify, are you saying we should remove (for example) SimulatorError::ParserError in favor of only using it through EzasmError?

@WyattRoss ^

Just to clarify, are you saying we should remove (for example) SimulatorError::ParserError in favor of only using it through EzasmError?

That was what I'm suggesting, yes. Parser errors should only happen in parsing and simulator errors during simulation. Both can be handled cleanly with handle_error. Issues do arise however with Internal error types (might just want to panic on those) and especially with IoErrors.


HKG: Car Port for Genesis G80 2024 (2.5T, HDA2)

Requires https://github.com/commaai/opendbc/pull/1132
Supersedes https://github.com/commaai/openpilot/pull/32633

openpilot PR not needed after #33383. CI will periodically update the docs and bump opendbc, and we'll update the release notes manually (or you can feel free to make a PR for that once the port is merged).


terraform module

Is your feature request related to a problem? Please describe.
It would be useful to be able to bootstrap those servers using Terraform
Describe the solution you'd like
Add a terraform module sub-folder that invokes nixos-remote. Basically merge https://github.com/numtide/terraform-nixos-install into this repo.

I believe this is done now. if not, please reopen


promptForPushNotificationWithUserResponse not available through this API

Hi! Thanks for this module, it's been really useful for us.
In the OneSignal iOS library they've added a promptForPushNotificationWithUserResponse, which supplies a callback so the app can do something once the user has made a decision with the dialog.
It would be great to have this ability in this module too!

Thanks, we'll review this for the next versions of this library.

Closing issue. Note: request still under consideration


Migrate acceptance tests to vp-acceptance v2

Pull Request (PR) description
Migrate acceptance tests to vp-acceptance v2
This Pull Request (PR) fixes the following issues

The bolt tasks fail because:
bolt --modulepath /etc/puppetlabs/code/modules task show

is called and not an environment specific path , bolt must be environment aware....


ENH: Create tfreader python package

This pull request converts function definitions from a Jupyter notebook to function definitions in ordinary *.py files within the tfreader subdirectory of this project.  An example can be run with
import tfreader as tfr
model, batched_dist, strategy = tfr.readExample()
features, metadata = tfr.predictExample(model, batched_dist, strategy)
tfr.outputExample(features, metadata)

Generally, the the functions there can be run with, e.g.,
import tfreader as tfr
tiles = tfr.tiled(filename, slide, case, magnification, tile, overlap, chunkFactor, mask=None)

If you approve, please mark accordingly and leave the pull request open.  From there, I will merge the changes and close the pull request.

LGTM


[Autocomplete] input customizations with classes prop overridden by defaults

The AutoComplete API describes how one can provide styles for the input element (identified by the class .MuiAutocomplete-input).
However, some style rules will never be applied due to the way the browser resolves conflicting rules across different classes—for example, the width and min-width rules are always overridden by the default AutoComplete styles.

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
AutoComplete's input doesn't respect width and min-width rules when specified in the classes prop passed to.
Expected Behavior 🤔
AutoComplete's input should respect width and min-width rules when specified in the classes prop passed to.
Steps to Reproduce 🕹
See https://codesandbox.io/s/material-demo-mr5mf
Inspect the input element inside the AutoComplete component. Note the two following style rules applied:

Default component styles:

.MuiAutocomplete-inputRoot .MuiAutocomplete-input {
    width: 0;
    min-width: 30px;
}

Custom styles passed via the classes prop:

.makeStyles-input-1 {
    min-width: 500px;
}

Notice how 1. (default component styles) always overrides 2., what the user provides.
Context 🔦
I want to be able to configure the minimum width of the input element in flex situations (e.g., when the AutoComplete component is a child of a AppBar, or any other scenario where you want the whole AutoComplete to grow / shrink with number of chips selected), so it's not always tiny and cutting off the placeholder text or input text inside.
Your Environment 🌎

Tech
Version

@material-ui/core
4.9.0

@material-ui/lab
4.0.0-alpha.40

react
16.12.0

typescript
3.8.0-dev.20200123

Browser
Chrome 81.0.4033.2

Tip, CSS specificity.


How can solve RuntimeError: Dynamic linking causes SDL downgrade! (compiled with version 2.28.3, linked to 2.0.16)?

I'm using window10 anaconda environment with python3.7
but this error happened
D:\ref>python -m gfootball.play_game --action_set=full
Traceback (most recent call last):
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\gfootball\play_game.py", line 71, in
app.run(main)
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\absl\app.py", line 308, in run
_run_main(main, args)
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\absl\app.py", line 254, in _run_main
sys.exit(main(argv))
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\gfootball\play_game.py", line 55, in main
env = football_env.FootballEnv(cfg)
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\gfootball\env\football_env.py", line 47, in init
self._players = self._construct_players(config['players'], player_config)
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\gfootball\env\football_env.py", line 71, in construct_players
player_factory = importlib.import_module(
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\importlib_init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1050, in _gcd_import
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "", line 883, in exec_module
File "", line 241, in call_with_frames_removed
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\gfootball\env\players\keyboard.py", line 18, in
import pygame
File "C:\Users\hanji\AppData\Local\Programs\Python\Python310\lib\site-packages\pygame_init.py", line 92, in
from pygame.base import *  # pylint: disable=wildcard-import; lgtm[py/polluting-import]
RuntimeError: Dynamic linking causes SDL downgrade! (compiled with version 2.28.3, linked to 2.0.16)
how can I solve this problem?
I tried pygame upgrade and uninstall and install too.

If you go into the folder where your packages are installed and search for SDL2.dll, you'll see two different SDL2.dll files. One instance in pygame and another in the GFootball package. Go to the properties of the files to see which one is version 2.28.3, and replace the older version with that version.


Update is_child description

Hi @puddly,
I looked over the updated related to is_child key and I think we should consider the default value to be always true if the field is not provided (undefined). From what I understand the presence of link_key for the device has nothing to do with this and we should choose default value based on this.
The link key is always exchanged between device and coordinator agnostic of the number of routers in the way. So its presence does not give you grounds to determine default value for the Assoc flag. I think we should default to true since it does not seem to break the network and we cannot reliably determine its value if not explicitly provided.

Yes, you are correct. I originally worded it to ensure backwards compatibility when the key is missing but let's go with the correct behavior.


[instrumentation-python] crewai testing

Currently CrewAI instrumentation does not have testing. test_instrumentor.py has fixtures and testing logic for trace configuration and context attributes set up.

tests have been added with vcrpy. closing


packed storage compatability

adds the ability to craft wooden hoppers using packed storage's chests, since the mod makes the vanilla chest uncraftable.
this will make any type of packed chest work for any of the recipes, with the outcome depending on the planks used. you may want to fix that, but for myself this is good enough.
im not familiar with modding, so i dont know if this will cause a crash or any problems if used without packed storage.

Why the namespace "c"?
Shouldn't the tag either be in the mods own namespace "woodenhoppers", or in the global "minecraft" namespace?

Why the namespace "c"?
Shouldn't the tag either be in the mods own namespace "woodenhoppers", or in the global "minecraft" namespace?

I guess this is the mod you referers to:
https://www.curseforge.com/minecraft/mc-mods/packed-storage
I see they also use the "c" name-space,
then it should be enough to defining the item tag minecraft:chest,
and include the following 3 values:

"minecraft:chest",
"minecraft:trapped_chest",
"#c:chest"

Then any mods that want to support wooden-hoppers can just add their items to either minecraft:chest or c:chest.

I guess this is the mod you referers to:
https://www.curseforge.com/minecraft/mc-mods/packed-storage
I see they also use the "c" name-space,
then it should be enough to defining the item tag minecraft:chest,
and include the following 3 values:

"minecraft:chest",
"minecraft:trapped_chest",
"#c:chest"

Then any mods that want to support wooden-hoppers can just add their items to either minecraft:chest or c:chest.


chore: release main

:robot: I have created a release beep boop
dev-dependencies-common: 3.1.1
3.1.1 (2024-01-03)
Bug Fixes

removing latest glob which breaks everything (9f5ea5b)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/aversini/dev-dependencies/releases/tag/dev-dependencies-common-v3.1.1 :sunflower:


The 'Authorization' header is missing error while using Azure Python SDK from Azure Functions

Hi,
I am trying to create a Resource group using Python SDK (code: https://docs.microsoft.com/en-us/azure/developer/python/azure-sdk-example-resource-group) from an Azure function.
The above mentioned code works fine from Cloud shell and my Linux machine (CLI). However, on running it locally or on cloud as an Azure function, the following error is thrown.
Code: AuthenticationFailed Message: Authentication failed. The 'Authorization' header is missing. Stack: File "/azure-functions-host/workers/python/3.7/LINUX/X64/azure_functions_worker/dispatcher.py", line 401, in _handle__invocation_request invocation_id, fi_context, fi.func, args) File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run result = self.fn(*self.args, **self.kwargs) File "/azure-functions-host/workers/python/3.7/LINUX/X64/azure_functions_worker/dispatcher.py", line 603, in _run_sync_func func)(params) File "/azure-functions-host/workers/python/3.7/LINUX/X64/azure_functions_worker/extension.py", line 215, in _raw_invocation_wrapper result = function(**args) File "/home/site/wwwroot/Setup/init.py", line 63, in main ops_rg(rg_name,"c") File "/home/site/wwwroot/Setup/init.py", line 86, in ops_rg "tags": { "environment":"test", "department":"tech" } File "/home/site/wwwroot/.python_packages/lib/site-packages/azure/mgmt/resource/resources/v2021_04_01/operations/_resource_groups_operations.py", line 158, in create_or_update map_error(status_code=response.status_code, response=response, error_map=error_map) File "/home/site/wwwroot/.python_packages/lib/site-packages/azure/core/exceptions.py", line 105, in map_error raise error
Also, kindly share resources/code samples for calling Azure API (using official Python SDK) from an Azure function.
[Enter feedback here]

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

ID: cef2688f-faa5-5209-ea5f-23228851c6ec
Version Independent ID: 2d621670-0e4e-e4c7-bb27-a4700fa8fd36
Content: Customize an HTTP endpoint in Azure Functions
Content Source: articles/azure-functions/functions-create-serverless-api.md
Service: azure-functions
GitHub Login: @mattchenderson
Microsoft Alias: mahender

Thanks for the feedback! We are currently investigating and will update you shortly.

@reachnishant Based on the error and code that you've linked, the problem is likely because of AzureCliCredential(). This requires setting up Azure CLI and authenticated to Azure by running az login.
The better option is to use DefaultAzureCredential() which runs through a couple of options before failing out. This doc about authentication using the Python SDK is a good read to understand more about this.
In addition to using DefaultAzureCredential(), you would also want to leverage Managed Identity when running on Azure.
Do that this repository is primarily for addressing doc related feedback. For other queries, Microsoft Q&A is the best place to reach out to engage the wider community. Since there is no doc update required, we will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


project abandoned -- any alternatives?

Regrettable as it may be, it looks like this project has lost a lot of wind behind its sails. Life can be busy, few issues fixed, pull requests taken. Forks are aplenty, but few seemingly updated. Last release looks like 2 years ago. No offense intended. It's life.
Are there any decent alternatives to this gem?

Why would you say this project is abandoned?

Is there something you need from this project that you're not finding?

The question was for others obviously, but since you ask, .. 15 issues, open for months, last one closed months ago, 5 pull requests, most recent changes are documentation only or very minor, rails 5 support (seems some commit for this, but no releases since Rails 5), build errors for months and months, etc. It just seems to an external observer that it has lost a lot of momentum. Having built one wizard before and having felt the pain to keep it up, I looked for some abstraction to make it easier. No offense was intended.

Issue count is now 0, pull request count now 0. If you want to help out subscribe via https://www.codetriage.com/schneems/wicked or you could subscribe to the whole repo there's not that much traffic. Would love a PR to fix the build.

I cut a release of 1.3.1. There was 1 extremely minor commit that wasn't in 1.3.0. I'm working on the tests in #215. If you find any alternatives to wicked i'm curious to hear what they do that this lib doesn't.
It may seem pretty inactive but that's because it's pretty mature, it doesn't need many new bells or whistles, not that it's being neglected.

That's good to know. I'll take it it works well in rails 5.
I was reflecting on the impressions potential new users casually checking.


Netty3 masks OutOfMemoryError: Direct buffer memory

Netty version: 3.10.6.Final
We're running Elasticsearch 2.4.1, which uses netty, and get the following exception:
[2016-10-12 02:47:54,770][WARN ][netty.channel.socket.nio.AbstractNioSelector] Unexpected exception in the selector loop.
java.lang.OutOfMemoryError: Direct buffer memory
    at java.nio.Bits.reserveMemory(Bits.java:658)
    at java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:123)
    at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:311)
    at org.elasticsearch.common.netty.channel.socket.nio.SocketReceiveBufferAllocator.newBuffer(SocketReceiveBufferAllocator.java:64)
    at org.elasticsearch.common.netty.channel.socket.nio.SocketReceiveBufferAllocator.get(SocketReceiveBufferAllocator.java:41)
    at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.read(NioWorker.java:62)
    at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108)
    at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:337)
    at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89)
    at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
    at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
    at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

We're not setting any limits on direct memory size, so it probably happens because the machine is low on OS memory. However, netty catches this exception, and continues like everything is normal, but Elasticsearch is in a weird state.
We'd expect netty to bubble errors up when cricital memory failures happen, so that we can handle it.

Netty 3.x has been EOL for a while now [1]. Please try to update to Netty 4 and we will be able to provide support.
[1] http://netty.io/news/2016/06/29/3-10-6-Final.html

This should not have been closed, Netty 4 does the same thing. I opened #6096 to re-raise the broader issue that I've raised before of catching and swallowing throwable.

This should not have been closed,

Netty 3 is EOL, we no longer support Netty 3, and this is why the issue was closed.
Lets continue discussion on #6096 for 4.x.


exclude examples from workspace and check them in a separate CI job

Describe the feature
currently all examples are compiled as part of the workspace:
https://github.com/paradigmxyz/reth/blob/76b32c8b5f3b9937ca507c75b4ba53cb0c83915e/Cargo.toml#L86-L104
we should put them in the exclude_members section and have a dedicated CI job just for examples
Additional context
No response

Will be done

Please assign. Can work on this

solved via https://github.com/paradigmxyz/reth/pull/8953


Set ingress class name when we need it

A common scenario we see is that even though ingress-nginx is installed,
it isn't set as the default ingress class. In this case, when we create an
ingress, it never gets picked up.
So, to make ingress work in this scenario, if we detect that the cluster
has exactly one ingressClass and it isn't set at the default, we are
just going to assume the user wants to use it and set it when we create
an ingress.
Bonus: found a bug where if Docker Desktop has an ingress already
installed, we still set acorn's ingress class name to "traefik". We
should only set the ingressClassName field for Docker Desktop if we are
installing traefik.
Signed-off-by: Craig Jellick<EMAIL_ADDRESS>

addresses https://github.com/acorn-io/acorn/issues/727


Docker daemon cannot get out of exit tty terminal

I am facing a strange issue (using docker 1.9.1 on RHEL 7.1).
I login to the host using ssh and as root user I start the docker daemon using the command. This command works fine.
docker daemon --bip=<IP_ADDRESS>/24 --fixed-cidr=<IP_ADDRESS>/24 --exec-root=/opt/docker/execroot --graph=/opt/docker/graph >> /var/log/docker.log 2>&1 &
I get to see this process (process has no tty terminal)
root      6407     1  0 00:33 ?    00:00:01 /bin/docker daemon -D --exec-root=/opt/docker/execroot --graph=/opt/docker/graph
However, sometimes I need to start this using the same above command over a console (serial console) but that leaves the docker process with a terminal
root      6407     1  0 00:33 **ttyS0**    00:00:01 /bin/docker daemon -D --exec-root=/opt/docker/execroot --graph=/opt/docker/graph
Because of this, docker daemon never comes out of the terminal. I tried using nohup as well but no luck. Is this a known issue ? How can I get over this ? I start any process using the same command but unlike docker that does not end up with a tty terminal.
Appreciate respone, thanks.

@sburnwal I'm not sure I understand the problem.
You want Docker to start as a background process? You'll need to use & on the end of the command.... still logs will go to the terminal, though.

and as root user I start the docker daemon using the command.

The regular way to start the daemon (other than for debugging purposes), is through the init system. For RHEL 7.1, this is systemd, and you can start it by running;
sudo systemctl start docker

If you need to make additional configuration of daemon options (like the --bip, and --fixed-cidr options), you can either use a systemd drop-in file https://docs.docker.com/engine/admin/systemd/#/custom-docker-daemon-options
Or (in recent versions of docker) a daemon.json configuration file (which is more flexible, as it allows you to changes some configuration options without restarting the daemon); https://docs.docker.com/engine/reference/commandline/dockerd/#/daemon-configuration-file

I will try to use the systemd or systemctl commands but in the past when I tried, I was not able to send the docker daemon logs to my log file like /var/log/docker.log. Is there a way to log to a specific file rather than relying on something like journalctl ?

I tried starting the docker daemon with the command 'systemctl start docker' and it starts fine but it is still stuck on the console and unable to come out of it.
@cpuguy83 yes I did use & when using the 'docker dameon ...' command to start it but no luck yet.
What shall I do next ?

@sburnwal I'm still not sure what you mean.
Docker sends logs to stderr and stays in the foreground unless you tell the shell to background it.
If you want docker to log to a file (or no logs) you need to do a shell redirect for stderr to the file you want (or /dev/null).
I'm going to close this because it doesn't look like a Docker issue, but feel free to keep discussing here.

I have found that instead of using 'docker daemon ...' to start the daemon, if I use the approach of systemctl start docker - terminal is not locked. I am fine for this issue to be closed.


Add sans to At

Add function 'sans' to delete a value associated with a key in a Map-like container.

Thanks :+1:

I think we should give it a more intuitive name such as remove or delete

make sense, I think sans came from haskell lens but we can change it.


Update AltCamp's website url in README.md

This PR...
Changes

This commit updates the link to the AltCamp site in the README.md file. This change is necessary because the main site(thealtcamp.com) is down as a result payment defaults to DigitalOcean for the Droplets

Fixes

Checklist

[ ] tested locally
[ ] added new dependencies
[x] updated the docs
[ ] added/updated a component
[ ] fixed a bug
[ ] added/updated a new route
[ ] added or changed css styles

Fixes #

Thanks for this PR!
Please what does moving the domain over to Netlify entail?


Backend does not work after creating plugin with --haveBackend

I created a basic plugin using the CLI and everything went well. The working plugin was created and I could install it into my Shopware 5.2.10 system. But when I wanted to open the backend, I received a 503 error window.
There is a forum entry that shows the error message in full length.
Link: https://forum.shopware.com/discussion/37227/problem-mit-cli-generiertem-plugin
After digging into the source code of the Shopware_Controllers_Backend_Application class I found the reason for the problem. The $model property of the backend controller needs the full path to the model not just the model name.
At the moment the property only holds the model name itself. So I guess that's an issue of the CLI that needs to add the full path of the model during plugin creation too.

Hi @mikewink I answered in the forum thread. Of course it could be cool, if you only have to state the model name, but that's not how the command works currently. If you want to change this behavior, feel free to open a PR :blush: :+1:


Android window.ReactNativeWebView.postMessage issue

Hi there,
We implemented version 5.0.5 of the library with #243 incorporated into it using window.ReactNativeWebView.postMessage for bidirectional communication. We use both iOS and Android with "react-native": "0.57.0".
The problem we see is the following:
iOS => web view => ✅  (use injectJavaScript to send a message)
web view => iOS => ✅  (use window.ReactNativeWebView.postMessage to send a message)
Android => web view => ✅  (use injectJavaScript to send a message)
web view => Android => 👎   (use window.ReactNativeWebView.postMessage to send a message)
Android errors with:
java bridge method can't be invoked on a non injected object.

This feels somewhat weird, since the whole java bridge is supposed to be managed for us, as long as messagingEnabled=true, which is computed from messagingEnabled={typeof this.props.onMessage === 'function'}. Our WebView has onMessage implemented with a function, so that all should be good, and is also "confirmed" by the fact that iOS works as expected.
Am I missing something obvious, or is this a bug?
Thanks in advance!

Can you dig more? Same scenario is working fine on my own app :)

Been digging a lot. We've found that a downgrade to 4.1.0 works.
Are there known issues with certain Android versions maybe?

Not that I'm aware of 🤔 . Did you rebuild the native side of the app after upgrade?

It's window.ReactNativeWebview.postMessage not window.ReactNativeWebView.postMessage

@tapir cf #324

The reference is correct, it also works on iOS but not in Android. We rebuilt de app multiple times from scratch removing all intermediate files, still no succes. The downgrade does work to 4.1.0 but that's kind a odd as you say that the latest should work as well.

@RobinUS2 I'm using latest in production, so it is working. There must be something we are missing here.

@Titozzz I agree, it must be something very subtle. Could you share a skeleton project or something where you implement this so we can review line by line, character (and case 😉 ) to see what's going on?

same here, android lollipop 5.0.2

@RobinUS2 Can you instead submit a small reproduction of the bug?

Sorry, my faults, upgraded from 2.x. missed the breaking change note in 5.0

The RN webview needs to communicate to a remote page of my website that uses ReactJS.
On the webpage, I see that the window.ReactNativeWebView exists, but the postMessage() method doesn't exist under it. I have to use
  // used in componentDidMount
  window.postMessage = function(data) {
    window.ReactNativeWebView.postMessage(data);
  };

as indicated in the release notes to get it working. May I know why the postMessage() doesn't exist when the Webview communicates to a remote web page?

because overriding an existing postMessage function was a bad practice, and instead we decided to scope it inside an object. Since you have control over your react app directly I would advise against doing that and calling window.ReactNativeWebView.postMessage(data); directly

@Titozzz
Yes, but the odd thing is that window.ReactNativeWebView exist, but it is just the method postMessage() doesn't exist. I will test it more to figure it out.

please test more because the method does exists 😄

@Titozzz
I didn't realize that the targetOrigin argument must be omitted in window.ReactNativeWebView.postMessage().
If the targetOrigin(*) is added, it will throw the method does not exist error!
// This one won't work.
window.ReactNativeWebView.postMessage(JSON.stringify(data), "*");

// This will work.
window.ReactNativeWebView.postMessage(JSON.stringify(data));

Yeah, this is the second reason we moved it actually because using '*' was a security issue 👍

#363
hello, for this to work now it looks like it has to be smth like this
/*ios*/
/*>*/window/*<*/.addEventListener('message', this.messageReceived);

/*droid*/
/*>*/document/*<*/.addEventListener('message', this.messageReceived);

however it looks like disparity is not intentional and will be ironed out.
to push it furtherer since we have a separate bridge to communicate to sent messages RN  why not re-use it to send events down to WebView too... smth like
ReactNativeWebView.onMessage(this.messageReceived)

maybe it would also make sense to use a different name for postMessage to avoid confusion related to browser's postMessage signature?
ReactNativeWebView.sendMessage(m)

@RobinUS2, @Titozzz, @jamonholmgren, what do you guys think? any opinion/thoughts on this?

@Titozzz
I didn't realize that the targetOrigin argument must be omitted in window.ReactNativeWebView.postMessage().
If the targetOrigin(*) is added, it will throw the method does not exist error!
// This one won't work.
window.ReactNativeWebView.postMessage(JSON.stringify(data), "*");

// This will work.
window.ReactNativeWebView.postMessage(JSON.stringify(data));

Thanks!  It works really well.

@victor-ca webview.postMessage is not documented and I would advise against using it, I personally use injectJavascript, it allows better flexibility. See here for a demo of what you could do https://github.com/react-native-community/react-native-webview/issues/66#issuecomment-425753877

I just had the same error and narrowed it down in my case to a javascript binding issue. You can easily reproduce the java bridge method can't be invoked on a non injected object error by assigning the window.ReactNativeWebView.postMessage to a local variable then trying to invoke that:
let postMessageProxy = window.ReactNativeWebView.postMessage;
postMessageProxy('hey....') //boom :(

By assigning to a local variable and calling that, javascript is changing the functions this and the Android WebView appears to be quite unhappy with that. It is quite easy to work around by ensuring the binding is preserved:
let postMessageProxy = function(data) { window.ReactNativeWebView.postMessage(data); }
postMessageProxy('hey....') //yay :)

As a real world example and the reason I came across this was for some code which was shared between hosting in a WebView or an iframe and I was trying to do this:
//find a postMessage to talk to hoster
let postMessage = window.parent.postMessage;
if(window.ReactNativeWebView) {
    postMessage = window.ReactNativeWebView.postMessage;
}

postMessage('hey');

"react-native": "0.58.6"
still reproduce on Android 7 and lower

@guavadevelopment You saved my ass!
I don't know why it works, but it does.

@Titozzz I didn't realize that the targetOrigin argument must be omitted in window.ReactNativeWebView.postMessage().
If the targetOrigin(*) is added, it will throw the method does not exist error!
// This one won't work.
window.ReactNativeWebView.postMessage(JSON.stringify(data), "*");

// This will work.
window.ReactNativeWebView.postMessage(JSON.stringify(data));

Thanks bro


Restart Evicted Pods

Hey,
I'm currently using the operator in version 3.3.6 with the Domain-Home-In-Image mode.
I'm running into an issue, where a Pod might get evicted from a Node due to not enough ephemeral storage being available for logging.
The pods are assigned to qosclass guaranteed (so requests == limits for both, cpu and memory).
The issue here is that once pods are evicted by kubernetes, the operator does not seem to care about them anymore, so they stay in an Evicted state, thus the application might get unavailable.
Right now I'm working around this using a serviceaccount and a simple batch-script to manually remove those Pods, so the Operator can take over control again, but I think this is something the Operator should take care of.
Thanks!

As per this issue, the evicted pods deletion can be controlled through --terminated-pod-gc-threshold setting in kube-controller-manager. The recommendation is to update the kube-controller-manager config to set --terminated-pod-gc-threshold 100 or similar small value.
The WebLogic Kubernetes Operator currently recreates a new pod only when the pod is fully removed. I will file an internal JIRA to track the enhancement to the operator to optionally recreate the evicted pods (for the pods created by the operator). We will let you know once the enhancement is implemented.

Created JIRA OWLS-96896 to track this.

@volkermauel Thank you for taking the time to file the Issue - the operator dev team will look into at least documenting the problem and its work-arounds if it's not practical for the operator to automatically handle it - much appreciated!

This fix will be in today's 3.4.0 release.


The roadmap of the golang client

Since the initial implementation of the golang client has been merged(#19), there are still some unfinished tasks to be done.
In the first stage, the basic features will be implemented.

Adapt to v2 protocol
The v1 version is archived. It is necessary to adapt to the latest protocol.
Adapt to the unified API specs ( Producer + Simple Consumer )
We established a New and Unified API Specs, see more details from java apis. The part of producer and simple consumer takes precedence. The four types of message will be supported in this phase.

In the second stage.

Clear error handling
The RPC-status code mapping table indicates the status codes that may occur in various cases across languages, you can get more information from this.
Improve the observability
The observability contains logging, tracing and metrics, you can improve observability of client-side through OpenTelemetry or other tools from these aspects.
Adapt to the unified API specs ( Push Consumer )
Implement the push consumer.

Documentations and unit tests should cover the corresponding part in each phase.

Hi, golang client will be compatible with rocketmq v4.9.x?


Adds two more Bluetooth samples

The scan_adv sample has combined broadcaster and observer, I've created two separate samples, one to demonstrate the role of Broadcaster (Advertiser) and the other to demonstrate the role of Observer (Scanner) which would be helpful for beginners.
Screenshots
Terminal output of Advertiser Sample

nRF Connect Mobile App for advertiser sample

Terminal output of Scanner Sample

Signed-off-by: Yeshvanth M<EMAIL_ADDRESS>

@yeshvanth-m thank you for your contribution! Would you mind sending this PR to the sdk-nrf repo instead?

@yeshvanth-m and @carlescufi  Closing this, as this contribution has also been made upstream here: https://github.com/zephyrproject-rtos/zephyr/pull/40057
Thanks for the contribution.


Feature gate arbitrary-precision from serde_json

Description
Features in Rust are "infectious". In particular, the arbitrary-precision feature of serde_json is leading to issues downstream because of the known bugs:

https://github.com/serde-rs/serde/issues/1183
https://github.com/serde-rs/json/issues/505
https://github.com/paupino/rust-decimal/issues/602

Therefore, my suggestion is to feature gate arbitrary-precision as done in this PR.
Test plan
How did you test the new or updated feature?
cargo check was run successfully.

Release notes
It affects crates which have serde_json as dependency and which are using it from the workspace.
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[x] Indexer:
[x] JSON-RPC:
[x] GraphQL:
[x] CLI:
[x] Rust SDK:
[x] REST API:

Looking through the git history it seems that this feature was enabled only in the rosetta crate, as a first try lets just try to disable this entirely as is done in https://github.com/MystenLabs/sui/pull/18918 and if that doesn't work for whatever reason we'll only enable this for rosetta.
Feature gating as is done in this PR is not ideal and imo not maintainable for the workspace of our size

Closing in favor of https://github.com/MystenLabs/sui/pull/18918


chore: rename workflow

What this PR changes/adds
Renames the test workflow to avoid special characters and keep it consistent with other repos.
Why it does that
.
Further notes
List other areas of code that have changed but are not necessarily linked to the main feature. This could be method
signature changes, package declarations, bugs that were encountered and were fixed inline, etc.
Linked Issue(s)
Closes # <-- insert Issue number if one exists
Please be sure to take a look at the contributing guidelines and our etiquette for pull requests.

Codecov Report
Patch coverage has no change and project coverage change: -0.01 :warning:

Comparison is base (2999513) 65.96% compared to head (73757a6) 65.95%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3248      +/-   ##
==========================================
- Coverage   65.96%   65.95%   -0.01%
==========================================
  Files         842      842
  Lines       16887    16887
  Branches      928      928
==========================================
- Hits        11139    11138       -1
- Misses       5379     5380       +1
  Partials      369      369

see 1 file with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


⚠ SkipTheCommericals has degraded performance

In afbaa3c, SkipTheCommericals ($STC) experienced degraded performance:

HTTP code: 200
Response time: 2230 ms

Resolved: SkipTheCommericals performance has improved in 30b8e0a.


Strapi not loading for tests in pipeline

Hi there, using this general pattern for unit tests has worked for me so far. I can run unit tests as expected locally using npm run test. However, trying to run the same command in a bitbucket pipeline, I end up with an error:
console.error
Unhandled error
at process.uncaught (node_modules/jest-jasmine2/build/jasmine/Env.js:248:21)
I believe this is because Strapi is not loading successfully here: https://github.com/qunabu/strapi-unit-test-example/blob/6e1fa022f2de0d6aa70f718063fbb162d840bd22/tests/helpers/strapi.js#L13
I note that I get the same error locally if I comment out the Jest timeout: https://github.com/qunabu/strapi-unit-test-example/blob/6e1fa022f2de0d6aa70f718063fbb162d840bd22/tests/helpers/strapi.js#L5
Here are the contents of my bitbuckets-pipeline.yml file:
image: node:12.18.4
definitions:
step: &build
name: test and build
caches:
- node
script:
- apt-get update && apt-get install -y zip unzip
- npm install
- npm run test
- npm run build
- zip application.zip . -r * .[^.]*
artifacts:
- application.zip
pipelines:
default:
- step: *build
branches:
master:
- step: *build
- step:
name: Deploy master to Production env
script:
- pipe: atlassian/aws-elasticbeanstalk-deploy:0.5.0
variables:
AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
AWS_DEFAULT_REGION: "us-east-2"
APPLICATION_NAME: "trapi-prod"
ENVIRONMENT_NAME: 'production'
ZIP_FILE: "application.zip"
dev:
- step: *build
- step:
name: Deploy dev to Development env
script:
- pipe: atlassian/aws-elasticbeanstalk-deploy:0.5.0
variables:
AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
AWS_DEFAULT_REGION: "us-east-2"
APPLICATION_NAME: "trapi-dev"
ENVIRONMENT_NAME: 'development'
ZIP_FILE: "application.zip"
Any insight is appreciated.
Thanks!

I no longer get this kind of errors with my current setup, but I've used to get this as well.
My first guess is that bitbucket runner doesn't have enough resources, ram mostly.
This repository is attached to circle.ci and does not throw any errors like that anymore, you can clone it and try in on your circle.ci - public projects are free.

Can you try increasing memory in your pipe - https://support.atlassian.com/bitbucket-cloud/docs/databases-and-service-containers/ and see if it correlate

Thanks, I tried doubling the memory and got the same behavior. That said, your suspicion seems logical. Since I last posted we have decided to move away from Strapi. It's not the right tool for our project at this point.

The later the versions are better it is. What version your using in your project ?

@mfelix5 is your issue still pending ?

No it is not. We ended up moving away from Strapi. Thanks for checking back though.


Add optional http headers parameter to style reader

Currently there is no possibility to add custom http headers when reading the style from a server.
That is a problem if custom headers are needed e.g. for authorization.
This pull request aims to fix that issue by adding the nullable field httpHeaders to the class StyleReader, which then passes the headers to all network requests.

Thanks for the contribution. Formatting fails CI checks - that will need fixing before accepting this PR.

Reformatted the file, check should pass now.

Thanks for the improvement @LeonP2ER


File "...", line 6, in  import tensorflow.compat.v1 as tf ModuleNotFoundError: No module named 'tensorflow'

When I push run the program shown me that. How can i solve it, plz and thank you everyone

@fronrfron11 ,
In order to expedite the trouble-shooting process, could you please provide the Tensorflow version you are trying and also please take a look at this link with similar error.It helps.
Thanks

From stack trace looks like TF is not correctly installed in your system. Can you mention what steps did you take to install TF?
See https://www.tensorflow.org/install/pip for installation.


{GSSoc'23} Improve SEO of the website

The website does not have optimized image formats. There is also no meta description and links are not descriptive. I can help to improve the performance and SEO of the website. I am a GSSOC'23 contributor . Please assign this issue to me @akshitagupta15june

its completed


tuning for dropped packets

I had "dropped packets" even if I followed the instruction in README. Alternatively I did
sudo bash -c 'echo 8 > /sys/kernel/debug/bluetooth/hci0/conn_min_interval'
sudo bash -c 'echo 8 > /sys/kernel/debug/bluetooth/hci0/conn_max_interval'

and now I have very few packet lost (once in < 100 sec)

Hum... do you think the values described in the README (9 and 10 respectively) are not "aggressive" enough? I don't know down to which point we can go... If anyone has some thought about that, we should investigate furthermore.

I tried 9/10 at first but didn't change the situation (constantly dropping packets) so I did a google search and came across with this random project
https://gfiber.googlesource.com/buildroot/+/d5bebbc1a8c2ddb46ff609f85606cd36cf688940/fs/skeleton/etc/init.d/S31bluez.platform_gfibertv#43
So I tried 8/8 and then the issue is gone. Maybe it depends on architecture/distribution/etc? It would be nice to hear from other people about what parameters they are using...

Tried this on Ubuntu 16.0.4 x64 to no avail. With both the 9/10 and the 8/8 conn intervals I'm still getting dropped packets about twice every ten seconds


 I probably should have done that plus ran it in a tmp directory, but live and learn. Luckily, I have tons of backups, so nothing was lost.
I'm not sure rm -rf bin is the best approach here, at the very least add a warning to the docs please.

I am very sorry for causing you such trouble. I updated the Makefile to only target it's directory, so it shouldn't behave like that anymore.
If you have time, please leave me feedback for its further improvements, as I am relatively new to making and maintaining software packages.

Thank you for making the change quickly, I was more worried about someone without backups. I'll open some bug reports as I have time to go through it all.

@filiparag OK with some help I was able to sort it out. I just don't have any linux machines to test on, so I don't know if the same will work there. This worked for me in FreeBSD though.
WORKDIR != 	dirname Makefile
The follow link here explains it.

The bang equals sign "!=" is a shell command assignment. The value will be assigned the result of the command, after it is expanded and sent to the shell for execution. If the result has new lines they will be replaced with spaces.For example:
VAR != < shell command to execute >

Should be enough to get you to where you need to be with some work? Hope that helps. If not let me know.

Okay, so I made progress thanks to !=. Now I can get absolute path for Makefile's parent on FreeBSD:
MKFILEREL!= echo ${.MAKE.MAKEFILES} | sed 's/.* //'
MKFILEABS!= readlink -f ${MKFILEREL}
WORKDIR!=   dirname ${MKFILEABS}

Of course, this doesn't work on GNU systems.


Error in markdown for this page

The section of code extents to far (it captures the following paragraph as well)
The following template packages will be installed:
\working\templates\extensions
Success: \working\templates\extensions installed the following templates:
Templates                                         Short Name               Language          Tags

Example templates: string extensions              stringext                [C#]              Common/Code
Test the item template
Now that you have an item template installed, test it. Navigate to the test/ folder and create a new console application with dotnet new console. This generates a working project you can easily test with the dotnet run command.
dotnet new console

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

ID: d9cb6bd4-1194-91fa-014c-2e72d809e772
Version Independent ID: c3fddda9-24c1-f20c-a1b6-6aeea61d6e53
Content: Create an item template for dotnet new - .NET CLI
Content Source: docs/core/tutorials/cli-templates-create-item-template.md
Product: dotnet-fundamentals
GitHub Login: @adegeo
Microsoft Alias: adegeo

Thanks for reporting that, I'm fixing it in #27018


Allow array values in storage_to_config_map

Describe the feature
When trying to use an Array value in storage_to_config_map in tenancy.php config, you get an error.

in tenancy.php config:
use an array value to set multiple configs for example:
    'storage_to_config_map' => [ // Used by the TenantConfig feature
        'locale' => [
            'app.locale',
            'app.fallback_locale',
            'translatable.fallback_locale'
        ],
    ],

Expected behavior
Allow to use Array values in storage_to_config_map

I told you to open an issue for this feature. This is not a bug. This is you trying to do something that can't be done yet.
I will either add this in 2.3.1 or in 2.4.0.

ahh sorry my bad :)

Here is the fix, replace the construct function in src/Features/TenantConfig.php
    public function __construct(Repository $config)
    {
        $this->config = $config;

        foreach ($this->getStorageToConfigMap() as $key => $configKey) {
           if (is_array($configKey))
           {
                foreach ($configKey as $originalConfigKey) {
                    $this->originalConfig[$originalConfigKey] = $this->config[$key];
                }
            } else {
               $this->originalConfig[$configKey] = $this->config[$configKey];
            }
        }
    }

Added in v3.


feat: Bing Image Creator (on MS Edge browsers only)

Description:

✨Feature: Bing Image Creator
🪲Bugfix - LibreChat crash when requesting an image from Bing or Sydney:

https://discord.com/channels/1086345563026489514/1086345563026489517/1131105692896465017
https://discord.com/channels/1086345563026489514/1131262872106848258

So, bing image creator is now working properly with Bing and Sydney, as a result LibreChat doesn't crash anymore when asking an image from bing.
To make it work without ending the convo I had to set unfinished to false at line 175 of bingAI.js
This has the added benefit of allowing to continue the conversation after a censorship trigger (without loosing the context of the censored part!)

TO-DO

❗add logic to the rehype plugins pop to detect when an image is created
❗Update the documentation to specify that Bing Image Creator requires the full cookie string

Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] This change requires a documentation update
[ ] Documentation update

How Has This Been Tested?
Tested all endpoints while working on this, I haven't noticed anything not working as expected
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

My changes:
fix(Content.jsx): remove 'z-index: 1;' from currentContent variable
fix(Content.jsx): exclude rehypePlugins if isIFrame is true
fix(Content.jsx): update content rendering to use currentContent variable
chore: bump app version to 0.5.5
chore: bump @waylaidwanderer/chatgpt-api to 1.37.2 (potentially addresses https://github.com/danny-avila/LibreChat/discussions/633)


[BUG] No validation on Maintenance Strategy when Edit as YAML

Describe the bug
During validate #5069, we found that no validation on Maintenance Strategy when Edit as YAML.
And the VM with unexpected configuration will be created successfully...

[!WARNING]
If the wrongly configured VM locates on the first node node-0, Enter Maintenance Mode on node-0 will cause it stuck in Cordoned.
See Additional context.

To Reproduce
Steps to reproduce the behavior:

Setup a 3 nodes witness cluster
Create image ubuntu-22.04-server-cloudimg-amd64.img
Create network mgmt-vlan1
Virtual Machines => Create = Enter Name, CPU, Memory and Image => Edit as YAML => Add harvesterhci.io/maintain-mode-strategy: xxx in metadata.labels => Create

:x: Should FAIL to create VM cuz validation error

VM Running (Should NOT) and with empty Maintenance Strategy

Edit YAML

Expected behavior
Should FAIL to create VM cuz validation error since there are only 4 valid values:

Migrate (default)
ShutdownAndRestartAfterEnable
ShutdownAndRestartAfterDisable
Shutdown

Support bundle

Before Enter Maintenance Mode on node-0: supportbundle_DoesNotValidateMaintenanceStrategy_2024-10-21T16-40-26Z.zip
After Enter Maintenance Mode on node-0: supportbundle_MigrateXXX_2024-10-21T17-05-00Z.zip

Environment

Harvester ISO version: v1.4.0-rc3
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): 3 nodes witness AMD64 QEMU/KVM includes 1 witness node.

Additional context
If the wrongly configured VM locates on the first node node-0, Enter Maintenance Mode on node-0 will cause it stuck in Cordoned.

Manually move the wrongly configured VM to node-0

Enter Maintenance Mode on node-0, it stucks Cordoned

A workaround here is to manually stop or migrate the problemed VM

Stop VM

And node-0 can entering maintenance mode

There are several problems here:

When you create a VirtualMachine from the UI and you leave the setting at the default (Migrate), the label isn't set at all
This is actually not a big deal, since it can be fixed in the admission webhook by just letting the mutating webhook add the label if it's not already there.

When you create a VirtualMachine from the UI and you do set the setting, or add the label in the YAML, then the label isn't transferred to the Pod. The UI (or the user) would need to set the label under .spec.template.metadata.labels, not under .metadata.labels in the VirtualMachine resource, or the admission webhook needs to make sure the label is transferred into the template.

The node-drain controller only deletes Pods for VirtualMachines, when the Pod has the label and it's set to Migrate, omitting the default behavior, when the label isn't set at all. But it also assumes that all VirtualMachines that should be shut down have the label set and it's value is one of the other three valid settings. This leaves all Pods of VirtualMachines, which have an invalid value in the label or don't have the label set at all,  dangling.

The admission webhook doesn't check if the label is set, or if it has a valid value.

(Optional) Go through the Terraform provider and check that the schema for the virtual machine resources enforces that only valid values are parsed from .tf files. Otherwise the .tf files should be rejected with a helpful error message.

The maintenance-mode strategy was introduced in v1.4.0. @innobead should this be fixed on master branch only, i.e. for v1.5.0, or should this also be backported to fix it for v1.4.1?

The maintenance-mode strategy was introduced in v1.4.0. @innobead should this be fixed on master branch only, i.e. for v1.5.0, or should this also be backported to fix it for v1.4.1?

yes, fix this in the master and add a backport label, and the corresponding backport issues will be created.


Happened IndexError: index 52 is out of bounds for axis 1 with size 52!

`
IndexError                                Traceback (most recent call last)
/content/train.py in ()
73
74 for epoch in range(cfg.TRAIN.EPOCHS):
---> 75     for image_data, target in trainset:
76         train_step(image_data, target)
77     model.save_weights("./yoface")
1 frames
/content/core/dataset.py in preprocess_true_boxes(self, bboxes)
230                 xind, yind = np.floor(bbox_xywh_scaled[best_detect, 0:2]).astype(np.int32)
231
--> 232                 label[best_detect][yind, xind, best_anchor, :] = 0
233                 label[best_detect][yind, xind, best_anchor, 0:4] = bbox_xywh
234                 label[best_detect][yind, xind, best_anchor, 4:5] = 1.0
IndexError: index 52 is out of bounds for axis 1 with size 52
`
As it shows, I use widerface dataset to train my model but it happened indexError, it seems some problem with my code, please help me to solve it.

How many classes

one class
only have a class named "person" in the file "./data/classes/yolo.names"

that maybe the center of some bounding boxes  are out range of image

that maybe the center of some bounding boxes are out range of image

Thanks, I have solved the problem, because the widerface dataset's labels have some problems

that maybe the center of some bounding boxes are out range of image

Thanks, I have solved the problem, because the widerface dataset's labels have some problems

How did you solve this problem? I have the same one and don't know how to fix it.


Declination grid binning fails for countpairs_rp_pi_mocks.

When calling countpairs_rp_pi_mocks with lower redshift bin edges close to 0.1 or below, Corrfunc returns the error:
Error in file: ../../utils/gridlink_mocks.c     func: gridlink3D        line: 593 with expression `idec >=0 && idec < ngrid_dec[iz]'
Declination index for particle position = -1 must be within [0, 0) for cz-bin = 0
even when called on catalogs with >1 galaxy, and whose declination range is non-zero.

Thanks for sending me the files. I can't seem to reproduce the bug either with the develop or the master branch. Which version of Corrfunc are you using?

Here is the command I used: ./DDrppi_mocks corrfunc_example.txt a corrfunc_example.txt a rp_bins.txt 80.0 1 1 > xx
corrfunc_example.txt
rp_bins.txt
Here's the output:
Running `./DDrppi_mocks' with the parameters
             -------------------------------------
             file1      = corrfunc_example.txt
             format1    = a
             file2      = corrfunc_example.txt
             format2    = a
             binfile    = rp_bins.txt
             pimax      = 80.0
             cosmology flag = 1
             Nthreads   = 1
             -------------------------------------

io> WARNING: Could not parse all requested 3 fields in line 0. Skipping that line
In gridlink_mocks_index_particles_double> Running with [nmesh_x, nmesh_y, nmesh_z]  = 5,6,7.  Time taken =   0.00 sec
countpairs> gridlink seems inefficient - boosting bin refine factor - should lead to better performance
In gridlink_mocks_index_particles_double> Running with [nmesh_x, nmesh_y, nmesh_z]  = 11,13,7.  Time taken =   0.00 sec
0%.........10%.........20%.........30%.........40%.........50%.........60%.........70%.........80%.........90%.........100% done. Time taken =  0.181 secs
DDrppi> Done -  ND1=6975 ND2=6975. Time taken =   0.22 seconds, read-in time =   0.01 seconds

It appears that when I run it from the command line it works for me as well. It only fails when it is called via the python interface.

That is a new failure mode !! Let me check out the python interface.
DDrppi_mocks simply calls the countpairs_rp_pi_mocks API, as does the python interface after some type-checking. My hunch is that there is a data-type mismatch somehow, although numpy should throw a RuntimeError during the type-checking/conversion.
Either way, I need to add checks in the gridlink_*  routines to ensure that the number of grids, after taking the floor, is at least 1.

Still can't reproduce the bug from current master or develop or from commit e019e56
I tried with np.float and np.float32 for all cases. No crashes. Since I can't seem to figure out why you are getting the error, do you mind upgrading to the newer version. Hopefully, that bug will go away.
Here's the code I used: gist

I just realized that due to a bug in my own code, I didn't give you a catalog that actually caused this error. Please see corrfunc_example_2.txt for the right file. This now fails both at the command line and using python. Sorry to lead you astray yesterday.
The main difference in this catalog is that the lower redshift limit is actually ~0.01, which I believe you said should still work. I upgraded to the current version of the code on the master branch and I'm still getting the error.

Yup. I can reproduce the bug now - exists in current master but not in current develop.

I have added a fix to ensure number of cells is at least 1 and that fixes the issue, at least on my end. Will you check if this commit fixes your issue? git pull && python setup.py install in the source directory should be enough.

That did it, thanks for being so responsive!

Awesome! And not a problem at all.
Do you mind if I keep this issue open as a reminder that the develop branch also needs to have this bug fixed ?

Not at all, go for it.

Possible similar issue has now been fixed in the develop branch for the upcoming v2.0 release.


kube-aws refactor

This is just a cleanup of https://github.com/coreos/coreos-kubernetes/pull/277 to make reviewing a little easier.

I shouldn't have done this against my personal account. Moving into branch on main repo (work is being done by others): https://github.com/coreos/coreos-kubernetes/pull/316


React Capstone Project

Hello 🙋♂🙋♂
🔰 In this project I:
✅ Choose the Air pollution API: air quality data.
✅ follow these design guidelines, including:
▶ Colors (select one main color for my website).
▶ Typography: font face, size and weight.
▶ Layout: composition and space between elements.
Interactions
✅ Home page
When the page loads, the webapp shows the list of categories that could be filtered out by some parameter, for example by the category name.
Along with the category name, I will display some numeric values per category that come from the API.
When the user clicks (or taps) on a category item, the application navigates to the details page.
✅ Details page
In the details page, the webapp retrieves data from the API to show detailed data in the category.
When the user clicks on the "Back" button (<), the user navigates to the home page.
✅ Testing requirements
Create unit tests for pure functions in my  Redux code.
Create integration tests for my application using the React Testing Library.
✅ Technical requirements
The project is a single-page application (SPA) built with React and Redux.
The data retrieved from the API stored in the Redux store.
filter the data that I retrieve from the API using a Filter stateless component.
Every page (the main page and the pages for each item)  have a unique route within the SPA.
The project deployed and accessible online using Render.
Add a link to the online version of my app to my README file.

@topeogunleye Thank you for taking the time to check my project carefully and patiently.


Move to netflixoss new build

We should also schedule some time to chatter about other changes I'd like to make to this build.

This change appears to add Netflix dependencies to the build. I actually don't want there to be any such dependencies, and I don't think using Netflix libraries are necessary for just the build. We have our own internal Netflix version of MSL that does build with the Netflix build system and dependencies.
Does this change do anything else besides that?

This adds Netflix nebula OSS (https://github.com/nebula-plugins) buildscript dependencies to your build. Users will not have any netflix dependencies.
The nebula.netflixoss adds in our opinions about what metadata should be included in jars, provides versioning opinions and automatic tagging, gives you access to dependency-locking, and some other things: https://github.com/nebula-plugins/gradle-netflixoss-project-plugin.
This will tie you into our cloudbees auto generated jobs and bintray publishing with syncing to mavenCental. If you don't want or need support for publishing this might not be necessary. We would also like to align as many of the builds as possible.
And then at some point I still want to talk to you about why you have committed jars to your repo instead of pulling them in from jcenter or mavenCentral.

Thanks for the details. It sounds like pulling in nebula OSS makes sense.
The reason I included JARs like JUnit was so build systems that are not using Gradle will still be able to compile and run without having to go around finding more stuff. Arguably not the right approach, but it has been convenient and helpful so far.


Web components 156 157

Added CDN for tl-components.js file
Added tl-header component to MAGPIE (https://github.com/TAMULib/MetadataAssignmentToolUI/issues/156)
Added tl-footer component to MAGPIE (https://github.com/TAMULib/MetadataAssignmentToolUI/issues/157)

Coverage decreased (-0.6%) to 82.209% when pulling 485a0edcf9542e1ce9bca95446e8f0a291c7c7ce on web-components-156-157 into f23878254c444ced2cd582b6f3b031b548f61da8 on master.


(bugfix): use self._SDT_PID in _stream_descriptor_table

Fixes condition where pid is an undefined variable.

I just finished fixing this and then saw this pull request. I swear :)
https://github.com/futzu/scte35-threefive/commit/7d7805c927e683216c32d00f38ca52c58af66d3a#diff-e080c026fd3c4a3efe03e06ef5bf2140f63d892d2ba2a9063504c8c24ab503c4R391

no worries -- I was guessing that self._SDT_PID was the PID to use.


Stop specifying a default linter

We would like to get the language server providing base error detection such that there isn't a need to specify a linter for such things.

We will also need to address the following:

Communicate the switch from pylint to xyz
Keep using pylint where users have pylint configuration files today or expect pylint to be the linter

There is also tailoring the defaults rules. It should be noted that pyflakes doesn't let you control the rules, it's all or nothing. Under flake8, though, you can set the rules, but we can't just use all of pyflakes checkers because data scientists love to use import * and pyflakes flags that as an error.

I guess flake8 sounds like a better alternative.

FWIW, I've found pylint to be far more comprehensive than the alternatives mentioned, though. E.g. I believe it is used internally at Google.

I firmly support Flake8. The major flaw with pylint is that it's too strict and produces too many errors.
People can still add #noqa comments to their code. E g. when I exceed 79 chars on a line for readability reasons, I will do this.

Elaborating slightly:

I think pylint essentially subsumes flake8, but is better and more comprehensive in every way. It's slower, but not annoyingly so IMO.

E.g. pylint lets you disable specific messages per line or per code block rather than just everything. (# noqa is the absurdly named equivalent of the classic except Exception: antipattern.)

I agree that the pylint defaults are slightly too strict for me, but tweaking a few settings is all I typically need. If I want to churn out a quick sloppy script then I can easily turn off various errors/classes of errors.

Perhaps VSCode could appropriately pop up a dialog pointing to amending ~/.pylintrc, or mentioning the # pylint: disable=... syntax...?

Popularity is not a useless metric, but IMO pretty weak... Many confounding factors...

The two main reason we are looking at changing the linter is performance and less strickness.
For seasoned developers, it's an easy decision, as they are used to linters (assumption).
However someone starting out with vscode and python, they'd be very annoyed (this is what we have observed, based on user feed back via numerous channels), due to performance (show to provide results) and too strict.
From a beginners point of view pylint is just not the right linter, as theyd be scratching their heads trying to figure what's wrong with their code.
The current extension blindly uses pylint (always). The plan is to offer the choice to the user, with the default being flake8.

My main concern with most of the linters is that most of the things they report as errors are not really "errors". Terrible style will not cause a program to crash.
I think most people would be happy if pylint/flake8/whatever only reported potential crashes as errors and had the rest split between warnings and notices. If VS Code or the Python extension allowed you to select the level of reporting (just errors/errors and warnings/everything) some people could disable everything but errors (when they'd like to know that an import is missing but couldn't care less about an unused one) while others (like me) could opt to be notified about everything.
pylint is a great linter but it is terribly slow (this could be fixed by turning it into a language server though as then it could reuse some of its cache) which makes it currently painfully unusable for as-you-type linting. flake8 is fast but not nearly as useful. Half of the things it bothers you with could be fixed by an auto-formatter like yapf or black.

Do keep in mind and we do have a set of default rules which we use to tailor Pylint's behaviour in the extension when you make no personal changes. The same would be for flake8, so this isn't really an argument between which linter offer the most rules, but who has the rules we want in a default rule set to detect errors, and then which is faster.

To add to the importance of considering this (or dropping linters for a parso+LSP solution), Pylint is about to drop Python 2 support, so we would have to start having people install a specific version depending on what version of Python they are running (which we have to be careful of as the latest release doesn't support Python 3.7), switch to flake8, or stop installing linters by default.
/cc @qubitron

Hey folks, chiming in here just to mention that, although it would be sad to see pylint go as the default linter for vscode, it's an understandable decision, as I can see your pain points with the tool. Regarding the performance though, in the next major release there is some work that's going to improve the performance quite a bit (https://github.com/PyCQA/astroid/pull/497 and https://github.com/PyCQA/astroid/pull/519). There will most likely be other places from which we'd be able to squeeze some performance improvements, most likely in the inference.
Regarding Python 2 vs Python 3 support, our plan is to support two versions simultaneously. The next major release is going to be 3+ only, with a 1.9 version going in parallel until Python 2.7 goes EOL.
That being said, thanks for the honest feedback, we'll try to address these concerns as much as possible.

@PCManticore and we appreciate all the hard work put into Pylint! Chances are, though, that long-term we will move to our own solution and simply make Pylint -- and all other linters -- a supported option but not something we have users install by default (to make the setup process smoother).

@brettcannon 	@qubitron
We'd need a solution before we go stable with the new LS

Yes, the idea is that we would instead prompt users to configure a linter and they would set up one of their choosing. Let's discuss more.

do you know who is speaking?

The spec is:

Stop prompting to install a linter by default
Automatically detect if Pylint is installed; if so and the user has not specified on/off setting then prompt the user if they want to turn on its use (this is to transition Pylint users who installed at our prompting to opt into continuing to use Pylint)

Looks good to me!

The prompting to install Pylint is still occurring when the language server is on.

Yes, this is expected at the current time. Until we turn Jedi off by default the current behaviour will remain, as per the request by @qubitron.
Once we resolve issue #3007 this will behave properly, but not until then.

To resolve this issue then, one must change the setting to "pylintEnabled": false in the package.json file and then build and run the extension to verify.

I can verify that the right thing is done when pylint is installed but no settings have been provided. But I can also verify that the wrong thing is done when pylint is not installed and there are no settings provided.
@d3r3kk I thought you said you could detect when a value for a setting came from the default set versus from a user's setting somewhere?

Yes, this is expected at the current time. Until we turn Jedi off by default the current behaviour will remain, as per the request by @qubitron.

Not quite -- to clarify, the request was that we don't prompt to install pylint when jediEnabled is set to false. That way:

Current users of the language server don't get the annoying prompt
When language server is on by default, the desired behavior happens automatically


How to rename bluetooth

Hi! First I want to thank you for this amazing library. I use the peripheral example in my embedded system. I insert the main function in my project. it works fine with Android or Iphone.
I can change my bluetooth name by dbus-send command, but i can't scan the new name by Android or Iphone, at the same time, i can connect it with old name
I try it
binc_adapter_stop_advertising
binc_advertisement_set_local_name
binc_adapter_start_advertising

but it has some errors
So how can I rename it with bluez_inc and it can update the new name when i scan!

I have a question. If i use the bluez_inc. Don’t i need Bluetoothd daemon?

Use should use binc_advertisement_set_local_name . It works for me.
What errors are you getting? Please share some logs

I succeed by restart it, I deinit then init it again.
it can meet my requirements