unknown what I should type here.  see description.  Linux ubuntufocal

Type: Bug
lost fonts in snap 140.  138 worked, but 139 is the latest one I can restore.
I'm typing blindly because it won't show any frickin text except the menu.
ARGH.
VS Code version: Code 1.82.1<PHONE_NUMBER>d557a81c9d0b5f8a5a1e9274db5585, 2023-09-08T08:41:36.199Z)
OS version: Linux x64 5.15.0-85-generic snap
Modes:

System Info

Item
Value

CPUs
AMD Ryzen 7 5700U with Radeon Graphics (16 x 1700)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
5, 4, 4

Memory (System)
62.20GB (42.28GB free)

Process Argv
--no-sandbox --force-user-env --unity-launch

Screen Reader
no

VM
0%

DESKTOP_SESSION
ubuntu

XDG_CURRENT_DESKTOP
Unity

XDG_SESSION_DESKTOP
ubuntu

XDG_SESSION_TYPE
x11

Extensions (4)

Extension
Author (truncated)
Version

vscode-eslint
dba
2.4.2

prettier-vscode
esb
10.1.0

vsliveshare
ms-
1.0.5883

helios
Shi
0.1.5

A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492:30256859
vslsvsres303:30308271
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593cf:30376535
pythonvs932:30410667
vsclangdf:30486550
c4g48928:30535728
dsvsc012:30540252
pynewext54:30695312
azure-dev_surveyone:30548225
282f8724:30602487
89544117:30613380
a9j8j154:30646983
showlangstatbar:30737416
962ge761:30841074
03d35959:30757346
pythonfmttext:30731395
fixshowwlkth:30771522
showindicator:30805244
pythongtdpath:30769146
i26e3531:30792625
pythonnosmt12:30797651
pythonidxpt:30805730
pythonnoceb:30805159
copilotsettingt:30839829
synctok:30821570
dsvsc013:30795093
dsvsc014:30804076
diffeditorv2:30821572
dsvsc015:30845448

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.82.2. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

it started after snap updated (to snap 140, probably 1.82.2).

Please see https://code.visualstudio.com/updates/v1_82#_update-highlights-for-chromium and try the deletion of GPU cache it recommends.

VScode shows only the most basic of outlines for in-app elements, and no text in-app at all.  One blue rectangle at the bottom, for the status bar.  Menu bar is rendered fine.  The software seems to be "functioning", just not rendering most of the content as expected.
Renamed ~/.config/Code to eliminate user-settings as a cause.  Restarted.  No change.

Please see https://code.visualstudio.com/updates/v1_82#_update-highlights-for-chromium and try the deletion of GPU cache it recommends.

thanks, will try

the workaround... worked.

Please see https://code.visualstudio.com/updates/v1_82#_update-highlights-for-chromium and try the deletion of GPU cache it recommends.

thank you @gjsjohnmurray !


cursorWordPartStartLeft should handle all caps names

In a all caps symbols (e.g. FILE_SHARE_READ, FILE_ATTRIBUTE_NORMAL) cursorWordPartStartLeft skips only one letter but it should skip to underscore.
It would also be nice for it to able to handle all caps abbreviation in camel case text e.g. IDGenerator.

Also, multiple spaces should be skipped at once, typically indentation spaces.

I agree; I was just about to report the same issue when I noticed this one. Same with cursorWordPartRight of course, which leads to the second thing I was about to report before noticing this issue:
The "camel case left" actions are cursorWordPartStartLeft while "camel case right" are cursorWordPartRight. I'm guessing the word "Start" is not intended to be in cursorWordPartStartLeft.


⚠ Bofrost.es has degraded performance

In f00c70d, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1501 ms

Resolved: Bofrost.es performance has improved in 1172e74 after 21 minutes.


Implement Html.EnableClientValidation in Asp.net Core View

Is your feature request related to a problem? Please describe.
For MVC .net framework, there is Html.EnableClientValidation which could be used to disable the client side validation for the specific field like
    @{ Html.EnableClientValidation(false); }
    @Html.TextBoxFor(m => m.BatchId, new { @class = "k-textbox" })
    @{ Html.EnableClientValidation(true); }

But, for asp.net core, there is no such method in Html.
Describe the solution you'd like
I am wondering whether it is possible to add this feature.
Describe alternatives you've considered
Built-in implement to disable client validation for per field.

Thanks for contacting us, @Edward-Zhou.
Here is the .Net Core alternative https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.mvc.viewfeatures.htmlhelperoptions.clientvalidationenabled?view=aspnetcore-2.2#Microsoft_AspNetCore_Mvc_ViewFeatures_HtmlHelperOptions_ClientValidationEnabled


libp2p logging too verbose

Description
My log is full of libp2p INFO output that's not very interesting or useful. Can we move all of this to DEBUG?
log/7c8cef2b.xjImr9-024.txt:2023-09-18T09:15:31.557-0400        INFO    dht     go-libp2p-kad-dht@v0.25.1/subscriber_notifee.go:120     processed event event.EvtLocalReachabilityChanged; performing dht mode switch   {"node_id": "abcde", "module": "p2p"}
log/7c8cef2b.xjImr9-024.txt:2023-09-18T09:15:31.559-0400        INFO    dht     go-libp2p-kad-dht@v0.25.1/subscriber_notifee.go:125     switched DHT mode successfully  {"node_id": "abcde", "module": "p2p", "mode": 2}
...
2023-09-19T12:32:00.167-0400    INFO    dht/RtRefreshManager    rtrefresh/rt_refresh_manager.go:331     finished refreshing cpl 5, routing table size is now 14 {"node_id": "abcde", "module": "p2p"}
...
log/7c8cef2b.xjImr9-024.txt:2023-09-18T14:56:50.167-0400        WARN    pubsub  go-libp2p-pubsub@v0.9.3/tag_tracer.go:157       error bumping delivery tag: unable to bump decaying tag for peer 12D3KooWS9VthMav85nd1W2n5T5UqoMKVC196BE6fjVQV5sE5iRC, tag pubsub-deliveries:bc1, delta 1; queue full (len=128){"node_id": "abcde", "module": "p2p"}
...
2023-09-19T12:31:55.221-0400    INFO    pubsub  go-libp2p-pubsub@v0.9.3/gossipsub.go:1622   peer 12D3KooWG4gk8GtMsAjYxHtbNC7oEoBTMRLbLDpKgSQMQkYBFRsw didn't follow up in 1 IWANT requests; adding penalty      {"node_id": "abcde", "module": "p2p"}
2023-09-19T12:31:58.222-0400    INFO    pubsub  go-libp2p-pubsub@v0.9.3/gossipsub.go:1622   peer 12D3KooWG4gk8GtMsAjYxHtbNC7oEoBTMRLbLDpKgSQMQkYBFRsw didn't follow up in 1 IWANT requests; adding penalty      {"node_id": "abcde", "module": "p2p"}
2023-09-19T12:32:00.167-0400    INFO    dht/RtRefreshManager    rtrefresh/rt_refresh_manager.go:331 finished refreshing cpl 5, routing table size is now 14     {"node_id": "abcde", "module": "p2p"}
2023-09-19T12:32:00.222-0400    INFO    pubsub  go-libp2p-pubsub@v0.9.3/gossipsub.go:1622   peer 12D3KooWHK5m83sNj2eNMJMGAngcS9gBja27ho83t79Q2CD4iRjQ didn't follow up in 1 IWANT requests; adding penalty      {"node_id": "abcde", "module": "p2p"}
2023-09-19T12:32:01.222-0400    INFO    pubsub  go-libp2p-pubsub@v0.9.3/gossipsub.go:1622   peer 12D3KooWG4gk8GtMsAjYxHtbNC7oEoBTMRLbLDpKgSQMQkYBFRsw didn't follow up in 1 IWANT requests; adding penalty      {"node_id": "abcde", "module": "p2p"}

we cannot move it to DEBUG, as we are not maintainer of the modules, and forking because of this is not worthh it. we can only change the level.

changing level to WARN would work too I think

you can change it with
"logging": {
        "p2p": "error"
    }

i don't mind changing it to warn by default though

I'm suggesting that we change the default, I think it's too verbose for
normal log use cases. It makes it more difficult for smeshers to find real
issues.
On Thu, 21 Sept 2023 at 09:32, Dmitry Shulyak @.***>
wrote:

you can change it with
"logging": {
"p2p": "error"
}
i don't mind changing it to warn by default though
—
Reply to this email directly, view it on GitHub
https://github.com/spacemeshos/go-spacemesh/issues/5037#issuecomment-1729595682,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAZJWNBEBJHC5Y3LSFQRATDX3Q6XBANCNFSM6AAAAAA46S45LU
.
You are receiving this because you authored the thread.Message ID:
@.***>


Implement ability to load themes from folder

This adds the ability to load .toml themes from a folder (the same folder that settings.toml resides in) named themes. The name of the theme is the same as its filename but with out the .toml extension, note that this means it is case-sensitive on platforms where case-sensitivity matters.
Example (bad) theme I threw together:

I added a Themes structure because that felt more reasonable for a load_theme function to be on, and allows adding more later on rather than putting them on Config. I also added a type alias Theme to make it more clear what the hashmap is in places that use themes.

Can you please rebase

Note that I changed the behavior of get_color_unchecked to work better with cases where user-themes are missing properties (because, likely new properties will be added in the future and panicking on old themes is undesirable) or they're invalid (such as misspelled).
Though, I do somewhat dislike that this means that get_color is only looking at the current theme, while get_color_unchecked falls through to the base theme. Should I also change get_color to behave in the same way, where it falls through? Or a different name? Or ignore it?


JAX remat on colab TPU doesn't reduce memory usage

Steps to reproduce
https://colab.research.google.com/drive/1_XbQ_oq8APHmlJT-1oo_tU4CwCHj4BNZ?usp=sharing
Jax remat uses lots of memory when compiled with JIT. Without JIT it works fine.
class SimpleLayer(nn.Module):
    @nn.remat #should decrease memory usage
    @nn.compact
    def __call__(self, x):
        residual = x
        x = nn.LayerNorm()(x)
        x = nn.SelfAttention(
            num_heads=8,
            dtype=jnp.float32,
            qkv_features=512,
            deterministic=True,
        )(x)
        return x + residual

class SimpleModel(nn.Module):
    depth: int = 24
    @nn.compact
    def __call__(self, x):
        for i in range(self.depth):
            x = SimpleLayer()(x)
        return x

def get_model(input_shape):
    key = random.PRNGKey(42)
    return SimpleModel().init(key, jnp.ones(input_shape, dtype=jnp.float32))["params"]

def loss_func(params, inputs, targets):
    preds = SimpleModel().apply({"params": params}, inputs)
    return jnp.mean((preds - targets)**2)

@jax.jit
def fake_train_step(params, inputs, targets):
    grad_fn = jax.grad(loss_func)
    return grad_fn(params, inputs, targets)

params = get_model((128, 128, 512))
grad_fn = jax.grad(loss_func)

inputs = random.normal(random.PRNGKey(42), (128, 128, 512), jnp.float32)
targets = random.normal(random.PRNGKey(43), (128, 128, 512), jnp.float32)

grads = grad_fn(params, inputs, targets) # this works fine
grads = fake_train_step(params, inputs, targets) # this results in OOM

Linked discussion in Flax repo
https://github.com/google/flax/issues/1285

Any updates on this? :-)

Hi @igrekun
The Colab TPU v2 runtime seems to have fixed the issue. I successfully ran the provided notebook with JAX 0.4.26 and Flax 0.8.3 on colab TPU v2 without encountering any out-of-memory (OOM) errors.
Please find the gist for reference.
Thank you.


Added symlinks without using a local file

This is adding the symlinks back, this time without using a local file so that tests are not broken.

Verified local CI run. Is good.


fix(a11y): fix a11y warnings in various components

Fixes the a11y warnings being thrown during the linting step. To avoid breaking changes, I've removed `jsx-a11y/no-static-element-interactions
Changelog
New

Added tabIndex, role to select components

Changed

AccordionItem
ComposedModal
Dropdown
DropdownItem
InteriorLeftNav
InteriorLeftNavItem
Modal
Slider
Switch
Tab
Tabs

Removed

A bit of extra things from Dropdown story

Testing
Make sure none of the above components are broken

@tw15egan are we safe removing that rule? Is this something that is coming up from the component stories? I know you mentioned that when we talked about this previously, was just curious. The rule itself seems valuable so was wondering why we wouldn't want it.

Just turned it off while I was working on it, but to get rid of a lot of those warning's we'd have to move a bunch of the onClick handlers to different elements. Not sure how this would affect end users. I can add the warning back in for now

Updated to eslint-plugin-jsx-a11y and fixed the new errors 😄

👍 ✅


update error reporting

Attempt to improve the logging for genai-perf.

Adds a logging config
creates a logging file for warns and up
outputs logging statements to console as well
some boy scout clean up as well

Can you add before and after outputs of stdout logging for the happy path to the description?

Can you also show an example of output from an error? Does it only go to file, stdout, or both?

Couple requests to make it easier to grok the cosmetic and functional changes:
1. Can you add before and after outputs of stdout logging for the happy path to the description?

2. Can you also show an example of output from an error? Does it only go to file, stdout, or both?

Added to the description. It should have been there from the start. Thanks for calling that out.

Error output is in the example.
As for file, stdout, both. The log config controls this.
Logging is controlled by the logger & handler using the following steps:

If both the handlers and loggers sections specify a level, the process works as follows:

The logger checks if the message level is at or above its own level.
If it is, the message is passed to the handler.
The handler then checks if the message level is at or above its own level before it decides to output the message.

There is a logger set for each file that does logging, which is the recommended best practice. Each is set to the console and a file.
The console is set to process any logging statement info and up.
The file handler is set to process any logging statement warning and up.
two examples:
log.error(Something)
check logger -> set to debug which is lower than error so handle
check console -> set to info which is lower than error so handle
check file -> set to warning which is lower than error so handle
log.info(Something else)
check logger -> set to debug which is lower than info so handle
check console -> set to info which is equal to info so handle
check file -> set to warning which is higher than info so ignore
So depending on the level we set for each logger in the config, we can control where a message is output with fine grain control.


Snapdragon: remove termios workarounds

The Qurt OS on Snapdragon has now support for the termios calls which means we can remove some of the Qurt specific code.
See https://github.com/ATLFlight/dspal/pull/10.

@julianoes This is another issue we are unlikely to fix given that the workaround seems to be sufficient. Please close unless someone has the bandwith to work on it and you think its a priority.

I went ahead with this before answering :) #7041.


⚠ Bofrost.de has degraded performance

In 9bddac8, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1565 ms

Resolved: Bofrost.de performance has improved in 62c6fcd after 8 minutes.


The value of the map(string) type variable is not submitted when creating a service

Describe the bug

The value of the map(string) type variable is not submitted when creating a service
Steps to reproduce

Create a service using terraform-kubernetes-containerservice template.
Configure a http type Checks.

Result

Failed

Check the POST service api request.  checks is empty.

Expected behavior

Environment

Walrus version: main 387b458b939852736bdcc40f2f83fec184da6b3f
UI version: dev-4478a77

Additional context
Add any other context about the problem here.

Environment

Walrus version: main 387b458b939852736bdcc40f2f83fec184da6b3f
UI version: dev-53ecbaa

Test Result:
The value of the map(string) type variable will submitted when save. But when creating service using kubernetes-containerservice template, the validation of type of Checks will fail unless selected again. https://github.com/seal-io/walrus/issues/1689


diswall: 0.3.0 -> 0.3.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/dis-works/diswall-rs/releases.
meta.description for diswall is: Distributed firewall
meta.homepage for diswall is: https://www.diswall.stream
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.3.1 with grep in /nix/store/viya4ri2d61vmcd40h2vf4jxbyqm2ssw-diswall-0.3.1
found 0.3.1 in filename of file in /nix/store/viya4ri2d61vmcd40h2vf4jxbyqm2ssw-diswall-0.3.1

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
diswall

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/viya4ri2d61vmcd40h2vf4jxbyqm2ssw-diswall-0.3.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A diswall https://github.com/r-ryantm/nixpkgs/archive/7ea75aa672527ba9f4623955a0d1d4fccf759de3.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/viya4ri2d61vmcd40h2vf4jxbyqm2ssw-diswall-0.3.1
ls -la /nix/store/viya4ri2d61vmcd40h2vf4jxbyqm2ssw-diswall-0.3.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

diswall

Maintainer pings
cc @Izorkin for testing.

Result of nixpkgs-review pr 217165 run on x86_64-linux 1

1 package built:

diswall


Disable decreasing time after a specific time when mode="time"

Hi,
I'm using react-bootstrap-datetimepicker  for start time and end time only. I want to not allow the end time be before than start time. And would like not to allow user to decrease time in end-time so that start-time will always be before than end-time. Please help me out in this issue.

Hi, do you mean something like related pickers? like if one start picker it's 1 PM then on the end picker he, the user, only can chose 1.15 PM or 1.01 PM?
If yes, this can actually be done and is show on the docs page using jquery here's a fiddle showing it.

In the above image, I just want to disable/hide the down icons to decrement hours and min. this way, the user won;t be able to input the time before the start time. I tried setting the icons of down to null to replace it, but it's not working.


Bump to 0.1.8

Codecov Report

Merging #36 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #36   +/-   ##
=======================================
  Coverage   89.02%   89.02%
=======================================
  Files           2        2
  Lines         237      237
=======================================
  Hits          211      211
  Misses         26       26

Continue to review full report at Codecov.

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


Fix arc key warning

Quick fix for react key warning and run some lint.

I added 2 new methods which are renderOutputLabel and renderInputLabel to decrease the code in render method. In renderOutputLabel, warning was given because we return an array
return [ <text />, <line />, ... ]

This pr wrap the returned element with a  element.


13.3 React Router LinkTo fails to go back to URL..

From my example, I'm at /campaigns/XXX and I'm trying to go back to /campaigns.
Navigation doesn't happen, when I try to go from  campaigns/XX to /campaigns...
Apparently, nesting the sub route  has issues. The only work around was to rename my routes and not depend on nesting.
Fails to Reliably Navigate:
<Route name="main" path="/" handler={App}>
    <Route name="campaigns" path="/campaigns" handler={Campaigns}>
      <Route name="campaignEdit"  path="/campaign/:campaignId" handler={CampaignForm}/>
    </Route>
    <Route name="ad-sets" handler={AdSets}/>
    <Route name="targets" handler={Targets}/>
    <Route name="login" handler={LoginModalShow}/>
    <Route name="error" handler={FBErrorView}/>
    <DefaultRoute handler={LandingPage}/>
  </Route>

Work around:
  <Route name="main" path="/" handler={App}>
    <Route name="campaigns" path="/campaigns" handler={Campaigns}/>
    <Route name="campaignEdit"  path="/campaign/:campaignId" handler={CampaignForm}/>
    <Route name="ad-sets" handler={AdSets}/>
    <Route name="targets" handler={Targets}/>
    <Route name="login" handler={LoginModalShow}/>
    <Route name="error" handler={FBErrorView}/>
    <DefaultRoute handler={LandingPage}/>
  </Route>

Maybe should have used this:
and this in the view:
MyComp.contextTypes = {
router: React.PropTypes.func.isRequired
};


fix(STADTPULS-438): max rows line chart

Before merge:

[x] update Supabase max rows limit in production instance

This PR updates the line chart so that it can display more values. We found that about 3000 values are the maximum for our current charting library (visx). A canvas-based alternative should be explored in the future to increase the number of renderable values.
If the selected timespan has more values than the defined 3000, we show an alert informing about the limitation of the line chart.

Note that it is still possible to select Alle even for requests that exceed 3000 values. This is because we don't want to limit accessing more than 3000 values for the download button. The button should not be limited by the rendering limits of the line chart. The alert message is shown upon selecting an Alle that exceeds 3000.
This PR also introduces a new environment variable NEXT_PUBLIC_SUPABASE_MAX_ROWS that can be used for ensuring we are always in sync with our settings in Supabase. Please refer to the .env values in the shared 1Password vault.

@vogelino, I will put this back to Draft because there was one thing I didn't consider. Will let you know once this is fixed.

there was one thing I didn't consider

Nevermind, we talked about it and actually this is good to go. Reopening this!

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Use loopback ip (<IP_ADDRESS>) instead of localhost

RFC8252 recommends using the loopback ip instead of localhost:
https://datatracker.ietf.org/doc/html/rfc8252#section-8.3
Also, bind to an automatically chosen port rather than a fixed port.

@dreverri thanks for the PR! I did not know that <IP_ADDRESS> is recommended over localhost, so thank you for that!
As for the random port, this seems to not work well with auth systems that require pre-registration of allowed callback URLs. Any thoughts on that?

For example, see https://community.auth0.com/t/random-local-ports-on-redirect-uri/28623

@danielgtaylor sorry for not getting back sooner. Regarding the port, it should probably default to its current value (8484) but allow the user to override it. A value of 0 would choose a random port.

What's the best way to allow the user to configure the port?

@dreverri you could try adding a --rsh-port parameter for this purpose!

I actually tried to implement the <IP_ADDRESS> fix by itself, but it was breaking any OAuth server which didn't explicitly have <IP_ADDRESS> in the set of allowed redirect URLs. I'm going to close this for now and we should revisit if we can find a way to not break or when we are ready for some major breaking changes.


"/mail" appears to be no longer functional.

The command "/mail" no longer appears in the results of "/help", and issuing "/mail" results in the error "Invalid command: mail".
The mod seems to have disappeared...
2022-01-04 06:03:45: ERROR[Main]: ModError: Failed to load and run script from /home/container/bin/../worlds/world/worldmods/mail/init.lua:
2022-01-04 06:03:45: ERROR[Main]: /home/container/bin/../worlds/world/worldmods/mail/init.lua: No such file or directory
2022-01-04 06:03:47: ERROR[Main]: ModError: Failed to load and run script from /home/container/bin/../worlds/world/worldmods/mail/init.lua:
2022-01-04 06:03:47: ERROR[Main]: /home/container/bin/../worlds/world/worldmods/mail/init.lua: No such file or directory

~/EdenLost/mnt $ ls -ld worlds/world/worldmods/mail
ls: cannot access 'worlds/world/worldmods/mail': No such file or directory

I've (re)clone https://github.com/minetest-mail/mail_mod into the "worldmods/mail" dir, and need to reboot the server to make it effective.


default size of endpointmanger's write queue is so large, may be this can increase gc time.

In what sense? the endpoint manager is established once per connection. there is no rapid creation/deactivation of it.
Can you elaborate on this?

each process has only one endpointmanager, but the endpointmanager has a bounded mailbox who has a ringbuffer. the default size of the ringbuffer is 1000000, and each of its elements has an allocated object. so there are lots of objects inuse. gc time last long.

try this https://gist.github.com/killgxlin/29b2fbaccc3c29bc83286e2fccb55a40
1 go build && GODEBUG=gctrace=1 ./binname -wqsize=1000000
gc 5 @2.241s 5%: 0.003+0+89 ms clock, 0.026+0/16/18+718 ms cpu, 40->40->40 MB, 40 MB goal, 8 P (forced)
gc 6 @3.057s 7%: 0.005+0+81 ms clock, 0.043+0/16/18+649 ms cpu, 40->40->40 MB, 40 MB goal, 8 P (forced)
gc 7 @3.537s 8%: 0.002+0+84 ms clock, 0.023+0/16/18+677 ms cpu, 40->40->40 MB, 40 MB goal, 8 P (forced)
gc 8 @4.073s 9%: 0.002+0+82 ms clock, 0.021+0/16/18+663 ms cpu, 40->40->40 MB, 40 MB goal, 8 P (forced)
gc 9 @4.313s 10%: 0.003+0+86 ms clock, 0.025+0/16/18+695 ms cpu, 40->40->40 MB, 40 MB goal, 8 P (forced)
2go build && GODEBUG=gctrace=1 ./binname -wqsize=100000
gc 2 @0.642s 2%: 0.003+0+13 ms clock, 0.027+2.6/1.8/0.91+107 ms cpu, 5->5->5 MB, 5 MB goal, 8 P (forced)
gc 3 @1.161s 2%: 0.003+0+13 ms clock, 0.025+2.6/1.8/0.91+105 ms cpu, 5->5->5 MB, 5 MB goal, 8 P (forced)
gc 4 @1.586s 2%: 0.003+0+13 ms clock, 0.028+2.6/1.8/0.91+108 ms cpu, 5->5->5 MB, 5 MB goal, 8 P (forced)
gc 5 @1.953s 2%: 0.002+0+13 ms clock, 0.023+2.6/1.8/0.91+107 ms cpu, 5->5->5 MB, 5 MB goal, 8 P (forced)
gc 6 @2.281s 3%: 0.002+0+13 ms clock, 0.022+2.6/1.8/0.91+107 ms cpu, 5->5->5 MB, 5 MB goal, 8 P (forced)
gc 7 @2.633s 3%: 0.003+0+13 ms clock, 0.024+2.6/1.8/0.91+108 ms cpu, 5->5->5 MB, 5 MB goal, 8 P (forced)
gc 8 @2.913s 3%: 0.002+0+13 ms clock, 0.023+2.6/1.8/0.91+108 ms cpu, 5->5->5 MB, 5 MB goal, 8 P (forced)

I can not reproduce this phenomenon ,use the same code。
output
go build && GODEBUG=gctrace=1 ./[binname]  -wqsize=1000000

gc 1 @0.002s 22%: 0.50+5.9+0.051 ms clock, 1.5+0.22/5.8/0.36+0.15 ms cpu, 8->10->10 MB, 9 MB goal, 4 P
gc 2 @0.010s 20%: 0.004+3.6+0.032 ms clock, 0.016+0.13/3.6/2.7+0.12 ms cpu, 11->12->12 MB, 20 MB goal, 4 P
gc 3 @0.020s 17%: 0.008+10+0.037 ms clock, 0.035+0.18/9.4/2.4+0.14 ms cpu, 17->20->20 MB, 24 MB goal, 4 P
gc 4 @0.049s 15%: 0.011+26+0.043 ms clock, 0.044+0.42/26/0.91+0.17 ms cpu, 31->39->39 MB, 40 MB goal, 4 P
gc 5 @1.972s 1%: 0.012+0+11 ms clock, 0.048+0.42/26/0.91+47 ms cpu, 40->40->40 MB, 40 MB goal, 4 P (forced)
gc 6 @2.995s 1%: 0.002+0+12 ms clock, 0.008+0.42/26/0.91+50 ms cpu, 40->40->40 MB, 40 MB goal, 4 P (forced)
gc 7 @4.932s 1%: 0.001+0+11 ms clock, 0.007+0.42/26/0.91+44 ms cpu, 40->40->40 MB, 40 MB goal, 4 P (forced)
gc 8 @6.019s 1%: 0.001+0+11 ms clock, 0.007+0.42/26/0.91+46 ms cpu, 40->40->40 MB, 40 MB goal, 4 P (forced)
gc 9 @6.875s 1%: 0.001+0+11 ms clock, 0.006+0.42/26/0.91+44 ms cpu, 40->40->40 MB, 40 MB goal, 4 P (forced)
gc 10 @7.299s 1%: 0.001+0+12 ms clock, 0.006+0.42/26/0.91+48 ms cpu, 40->40->40 MB, 40 MB goal, 4 P (forced)

env

golang: 1.8.3
macos: 10.12.5 (16F73)
cpu: 3.3 GHz Intel Core i5

my previous env is:
golang: 1.7.5
macos: 10.12.3
cpu: 2.2 GHz Intel Core i7
and i upgrade to golang 1.8.3
the gc time reduce to about 10 ms.
i search about "golang 1.8 gc"
got this "
Garbage Collector
Garbage collection pauses should be significantly shorter than they were in Go 1.7, usually under 100 microseconds and often as low as 10 microseconds. See the document on eliminating stop-the-world stack re-scanning for details. More work remains for Go 1.9.
"
so this is not a problem above 1.8, but even a little slow below 1.7


Add explicit gradient_accumulation_dtype config

DeepSpeed has support for several dtypes now (i.e., fp32, fp16, bf16). However, it's becoming less clear what parts of training are using what dtypes and what time. For example, in #1801 we added support for BF16 training + FP32 gradient accumulation and optimizer stage sharding (zero stage 1) when pipeline parallelism is enabled. This is only triggered if your config is in the following scenario:
Note: PP is used on the client side and not in the ds_config, but it's use or not also decides what code paths are supported or not.
# pipeline-parallelism: enabled
"bf16": {
   "enabled": true
},
"zero_optimization": {
    "stage": 0
}

--> BF16 training + FP32 gradient accumulation + ZeRO stage 1 optimizer sharding via deepspeed/runtime/bf16_optimizer.py
# pipeline-parallelism: enabled
"bf16": {
   "enabled": true
},
"zero_optimization": {
    "stage": 1
}

--> BF16 training + BF16 gradient accumulation + ZeRO stage 1 optimizer sharding via deepspeed/runtime/zero/stage_1_and_2.py
The proposal is to introduce a config like the following:
"bf16": {
   "enabled": true
},
"gradient_accumulation_dtype": "fp32",
"zero_optimization": {
    "stage": 1
}

-->
The proposal is to add a new option in the ds_config: gradient_accumulation_dtype. In this case we would dispatch to the right version of ZeRO depending on what mode is selected by the user to make it more explicit what is happening.
I've started a table to try and express all of these possible cases and which ones would be supported and which would not. It feels a bit overly complicated in some ways however. This also doesn't consider cases where zero is disabled "stage": 0.

bf16
fp16
grad-accu-dtype
PP
ZeRO (1,2,3)
Result
ZeRO implementation

T
T
*
*
*
Error

T
F
fp16
*
*
NotSupported

T
F
bf16
*
*
OKAY
stage_1_and_2.py

T
F
fp32
T
1
OKAY
bf16_optimizer.py

T
F
fp32
F
1
NotSupported

T
F
fp32
*
2 or 3
NotSupported

F
T
fp16
*
*
OKAY
stage_1_and_2.py

F
T
bf16 or fp32
*
*
NotSupported

F
F
fp32
*
*
OKAY
stage_1_and_2.py

F
F
bf16 or fp16
*
*
NotSupported

Note: this is a WIP but I don't want to lose our progress on this discussion.

I should also note that I think we have similar complexities with communication_data_type, which we only support in some configs but not sure if we error out explicitly on cases we don't support.
https://github.com/microsoft/DeepSpeed/blob/41d90830e2d78c154d560f36c8273ca2f889bbfb/deepspeed/runtime/engine.py#L723-L733

There is one more dimension to this design discussion - and it's whether the additional accumulator is sharded or not.
e.g. currently bf16 optimizer allocates a local accumulator on each gpu, which is quite expensive 4x params on that gpu. it happens to work on the massive A100 80Gb, but it could be too expensive on 40GB cards.
So the other dimension that needs to be configurable is whether it is sharded or not. Of course, sharing will come at the overhead of additional comms.
So you probably want:
"gradient_accumulation_dtype": {
    "dtype": ["fp32"|"fp16"|"bf16"],
    "sharded": [true|false],
},

Hi,
Using https://github.com/microsoft/Megatron-DeepSpeed for pipeline  + zero1 + bfloat16 Deepspeed doesn't work.
When using the script in examples/run_deepspeed_example.sh with Zero1 and bfloat16 ( the script works with fp16) I get the following error:
File "/opt/conda/lib/python3.8/site-packages/deepspeed/runtime/pipe/engine.py", line 768, in _exec_backward_pass
self.optimizer.clear_lp_grads()
AttributeError: 'DeepSpeedZeroOptimizer' object has no attribute 'clear_lp_grads'
The run_deepspeed_example.sh is attached
!/bin/bash
set -ex
BASE_PATH=/vc_data/Megatron-LM/data
DATA_PATH=${BASE_PATH}/indexed_datasets/megatron
DS_CONFIG=ds_config.json
TP=2
PP=2
NLAYERS=24
HIDDEN=512
GLOBAL_BATCH=64
MICRO_BATCH=4
ZERO_STAGE=1
OUTPUT_DIR=ds_z{NLAYERS}_hs{GLOBAL_BATCH}_mb${MICRO_BATCH}
#OUTPUT_DIR=baseline_nl{HIDDEN}_g{MICRO_BATCH}
mkdir -p $OUTPUT_DIR
cat < $DS_CONFIG
{
"train_batch_size" : $GLOBAL_BATCH,
"train_micro_batch_size_per_gpu": $MICRO_BATCH,
"steps_per_print": 1,
"zero_optimization": {
"stage": $ZERO_STAGE
},
"bf16": {"enabled": true},
"wall_clock_breakdown" : true
}
EOT
export NCCL_DEBUG=warn
ds_args=""
ds_args=" --deepspeed ${ds_args}"
#ds_args=" --no-pipeline-parallel ${ds_args}"
ds_args=" --deepspeed_config={ds_args}"
ds_args=" --zero-stage={ds_args}"
ds_args=" --deepspeed-activation-checkpointing ${ds_args}"
deepspeed pretrain_gpt.py
--tensor-model-parallel-size $TP
--pipeline-model-parallel-size $PP
--num-layers $NLAYERS
--hidden-size $HIDDEN
--num-attention-heads 16
--seq-length 256
--loss-scale 12
--max-position-embeddings 1024
--micro-batch-size 4
--global-batch-size 1024
--train-iters 1000
--lr 6.0e-5
--min-lr 6.0e-6
--lr-decay-style cosine
--log-interval 1
--eval-iters 40
--eval-interval 1000
--data-path $DATA_PATH
--vocab-file $BASE_PATH/gpt2-vocab.json
--merge-file $BASE_PATH/gpt2-merges.txt
--save-interval 1000
--split 98,2,0
--clip-grad 1.0
--weight-decay 0.1
--adam-beta1 0.9
--adam-beta2 0.95
--init-method-std 0.006
--bf16
--checkpoint-activations
--tensorboard-dir $OUTPUT_DIR
$ds_args
--exit-interval 5000 | tee ${OUTPUT_DIR}/output.log

The code works with zero stage 0 , however I would like to use zero stage 1 in order to shard the optimizer states / calculations.
When is pipeline + zero stage 1  + bfloat16 going to be supported?

BF16Optimizer is ZeRO stage 1, but currently it's a bit of a hack and thus uses stage=0, it's just differently implemented so can't be used as normal stage-1 - this is because there is already bf16/stage1 which is a different beast which accumulates in bf16 which you don't want.
Of course, it'd be great to find an intuitive solution here. But do not worry and use stage=0 here for now.

@stas00, @assij we have added initial support covering the combinations in the table. We would appreciate help testing the combinations that matter to you.

Hi,
May I have a question, using https://github.com/microsoft/DeepSpeed to run pipeline + zero1 + bfloat16 Deepspeed still doesn't work, it can work with pipeline + zero0 + bfloat16 and can also work with pipeline + zero1 + fp16, is it as expected for  BF16Optimizer in deepspeed, or do I need to do some extra set for pipeline + zero1 + bfloat16, it would be grateful if you could give me some suggestions.

Hello, I am using pp + z0/1 + bf16 but still doesn't work , with deepspeed=0.9.2 and bf setting, it suggested don't have attribute clear_lp_grad.


Add metrics for available IPs per subnet

Extended servicequotas package by adding ec2_availability.go which includes functionality to get subnet details through ec2.DescribeSubnets.
Expanded the ServiceQuotas struct and newUsageChecks function to allow adding checks which do not have a corresponding service quotas ID, i.e. allows the checking the usage of other APIs.

Unit test creation in progress

Unit test creation in progress


Feature/38 docker file

Leftover in README:
Change build:prod to build

Build
Run npm run build:prod to build the project. The build artifacts will be stored in the dist/spline-ui directory.

Leftover in README:
Change build:prod to build

Build
Run npm run build:prod to build the project. The build artifacts will be stored in the dist/spline-ui directory.

Done.


Test and edit Kong Gateway (OSS) Quickstart guide

Where is the problem?
https://docs.konghq.com/gateway-oss/2.5.x/getting-started/quickstart/
What happened?
The Kong Gateway (OSS) Quickstart guide has not been tested or edited for a while and it could use some attention. It would be really helpful if someone were to test the steps to be sure they work as expected and look for any wording or grammar issues that might also need addressing.
What did you expect to happen?
Accurate steps for completing the following quickstart procedures:

Start Kong Gateway
Configure a Service
Configure a gRPC Service
Enable plugins
Add Consumers

Clear, simple language in accordance with our style guide.
Code of Conduct and Community Expectations

[X] I agree to follow this project's Code of Conduct
[X] I agree to abide by the Community Expectations

@HCloward @falondarville I would love to work on this. Please assign this to me.

@HCloward I already completed my previous tasks...can I take this issue next?

I am currently working on this issue. Would make sure the pages are in sync with the style guide. Any contributor who wants to test the steps and update any if required can work with me as I am having configuration issues on my Win11 machine.

Closing because the PR has been merged.


The simple model converted by TFLiteConverter not accelerates by Coral USB Accelerator

Code to reproduce the issue
Code to convert the model on Macbook Pro:
import tensorflow as tf

inputs = tf.keras.Input(shape=(256, 256, 3), name='model_input')
outputs = tf.keras.layers.Conv2D(filters=32, kernel_size=3)(inputs)
model = tf.keras.Model(inputs, outputs)
converter = tf.lite.TFLiteConverter.from_keras_model(model)

tflite_model = converter.convert()
open("test_model_tf2.0_by_from_keras_model.tflite", "wb+").write(tflite_model)

Code to inference the model on Raspberry Pi:
import tqdm

def tensorflow_lite():
    from tflite_runtime.interpreter import Interpreter
    from tflite_runtime.interpreter import load_delegate

    import numpy as np

    interpreter = Interpreter(
            'test_model_tf2.0_by_from_keras_model.tflite',
            experimental_delegates=[load_delegate('libedgetpu.so.1.0')], #with or without it
        )
    interpreter.allocate_tensors()

    input_details = interpreter.get_input_details()
    output_details = interpreter.get_output_details()

    _, height, width, _ = interpreter.get_input_details()[0]['shape']

    for _ in tqdm.tqdm(range(100000)):
        image = np.zeros((1, 256, 256, 3,), dtype=np.float32)
        set_input_tensor(interpreter, image)
        interpreter.invoke()
        output = np.squeeze(interpreter.get_tensor(output_details[0]['index']))

def main():
    tensorflow_lite()
if __name__ == '__main__':
    main()

System information
About machine that model had been converted on:

Macbook Pro Mid 2014, macOS Mojave 10.14.6
TensorFlow installed by sudo pip install -U tensorflow
TensorFlow version: v2.0.0-rc2-26-g64c3d382ca 2.0.0

About machine that tflite model had been run on:

Raspberry Pi 3B + Coral USB Accelerator

$ cat /etc/debian_version
10.1

$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
...

$ uname -a
Linux raspberrypi 4.19.75-v7+ #1270 SMP Tue Sep 24 18:45:11 BST 2019 armv7l GNU/Linux

To set up Coral USB Accelerator i was guided by https://coral.withgoogle.com/docs/accelerator/get-started/ with libedgetpu1-std variant.
Tflite had been installed by:
pip3 install tflite_runtime-1.14.0-cp37-cp37m-linux_armv7l.whl
Current behavior
The inference code on Raspberry Pi 3B + Coral USB Accelerator shows  ~12it/s and no white led signaling on Coral USB Accelerator observed.
Expected behavior
I expect at least x5-10 it/s from what i observe now. Also i expect the led signaling on inference because that is what i'm observing while running the tflite/python/examples/classify_image.py example.
Also here is my text output for classify_image.py example:
$ python3 classify_image.py --model models/mobilenet_v2_1.0_224_inat_bird_quant_edgetpu.tflite --labels models/inat_bird_labels.txt --image images/parrot.jpg

Initializing TF Lite interpreter...
INFO: Initialized TensorFlow Lite runtime.
----INFERENCE TIME----
Note: The first inference on Edge TPU is slow because it includes loading the model into Edge TPU memory.
120.6ms
13.5ms
13.5ms
13.8ms
13.6ms
-------RESULTS--------
923 Ara macao (Scarlet Macaw): 0.76562

I also tried to convert the model with tf-14.0.0 (on MacOS) and got the same result.

@mirth did you compile your tflite models into Edge TPU enabled tflite models.

@freedomtan i didn't. i think it explains everything


added my student info

Hey, @askl56 !
Can you create your profile in that way now?
Sorry for that, but in that way will be much more easy for all of us :smile:


Firewall support

Are there any plans to support firewalls in flannel?  Or is this something that should be built on top on flannel as a separate component?
I'm thinking of something akin to GCE Firewalls where you can control traffic via source and target tags.  This would work very well with Kubernetes and allow applications to be better isolated from one another.
See discussion here:  https://github.com/GoogleCloudPlatform/kubernetes/issues/2880

Network policy can be applied using Canal - https://github.com/projectcalico/canal


Attempt to repair JSON fails when set is enclosed into curly brackets instead of square brackets

Bug description
The metagpt for my requirement stops with an error.
2024-05-29 22:49:23.591 | WARNING  | metagpt.utils.repair_llm_raw_output:run_and_passon:268 - parse json from content inside [CONTENT][/CONTENT] failed at retry 1, try to fix it, exp: Expecting ':' delimiter: line 13 column 29 (char 389)
2024-05-30 00:41:58.766 | INFO     | metagpt.utils.repair_llm_raw_output:repair_invalid_json:237 - repair_invalid_json, raw error: Expecting ':' delimiter: line 13 column 29 (char 389)
2024-05-30 00:53:48.850 | WARNING  | metagpt.utils.repair_llm_raw_output:run_and_passon:268 - parse json from content inside [CONTENT][/CONTENT] failed at retry 2, try to fix it, exp: Expecting ':' delimiter: line 13 column 31 (char 391)
873
2024-05-30 01:07:09.222 | INFO     | metagpt.utils.repair_llm_raw_output:repair_invalid_json:237 - repair_invalid_json, raw error: Expecting ':' delimiter: line 13 column 31 (char 391)
2024-05-30 01:07:10.223 | WARNING  | metagpt.utils.repair_llm_raw_output:run_and_passon:268 - parse json from content inside [CONTENT][/CONTENT] failed at retry 3, try to fix it, exp: Expecting ':' delimiter: line 13 column 33 (char 393)
873
The JSON below was not fixed by repair_invalid_json, generating an error several times and then abandoning the file.
The JSON that cause problem has 2 issues:

a set/list enclosed into curly brackets, not into square brackets as it is expected. In curly brackets "key":"value" pairs are expected.
the next issue that appears if one replaces curly brackets with square brackets where needed, is a concatenation of strings via "plus" sign. While it is a useful language construct in programming languages, it is not allowed in JSON. I assume it must be replaced this comma - ','.

The json is as follows:
{
"Implementation approach": [
"We will implement a trading robot on MOEX that buys and sells highly liquid shares based on forecasted end-of-day prices."
],
"File list": [
["main.py", "moex_trading_bot.py"]
],
"Data structures and interfaces": [
[
"classDiagram",
"TradingBot",
{
"-MOEX moex",
"-User user",
"+start()",
"+stop()"
},
{
"-API api",
"+get_prices()",
"+place_order()"
},
{
"-approval approval",
"+approve_trade()",
"+reject_trade()"
}
]
],
"Program call flow": [
[
"sequenceDiagram",
"participant TB as TradingBot",
"participant M as MOEX",
"participant U as User",
"TB->>M: get_prices()",
"M-->>TB: return prices",
"TB->>U: request_approval()",
"U-->>TB: return approval",
"if (approval == 'approve') then\n" +
"    TB->>M: place_order()\n" +
"else\n" +
"    TB->>M: cancel_order()\n" +
"end"
]
],
"Anything UNCLEAR": [
"Clarification needed on the algorithm to predict end-of-day prices and the user experience through the approval process."
]
}
Bug solved method

if error is related to ':' symbol, the logic needs to find the previous and the following curly brackets and replace them with square brackets
if plus is the last symbol in the line, replace it with the comma symbol ','

Environment information
Windows 10, conda Python 3.12, ollama-hosted llama3. MetaGPT 0.8.1
Screenshots or logs

I get a similar error, , with the JSON :
Here is a plan to achieve the goal of analyzing climate change:
[
{
"task_id": "1",
"dependent_task_ids": [],
"instruction": "Scrape climate change data from web pages",
"task_type": "web scraping"
},
{
"task_id": "2",
"dependent_task_ids": ["1"],
"instruction": "Preprocess scraped climate change data",
"task_type": "data preprocessing"
},
{
"task_id": "3",
"dependent_task_ids": ["2"],
"instruction": "Perform exploratory data analysis on climate change data",
"task_type": "eda"
}
]
2024-06-03 03:12:35.126 | WARNING  | metagpt.utils.common:wrapper:649 - There is a exception in role's execution, in order to resume, we delete the newest role communication message in the role's memory.
2024-06-03 03:12:35.128 | ERROR    | metagpt.utils.common:wrapper:631 - Exception occurs, start to serialize the project, exp:
Traceback (most recent call last):
File "/root/strategy/MetaGPT/metagpt/utils/common.py", line 640, in wrapper
return await func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/strategy/MetaGPT/metagpt/roles/role.py", line 550, in run
rsp = await self.react()
^^^^^^^^^^^^^^^^^^
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/root/strategy/MetaGPT/metagpt/utils/common.py", line 626, in wrapper
result = await func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/strategy/MetaGPT/metagpt/team.py", line 131, in run
await self.env.run()
Exception: Traceback (most recent call last):
File "/root/strategy/MetaGPT/metagpt/utils/common.py", line 640, in wrapper
return await func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/strategy/MetaGPT/metagpt/roles/role.py", line 550, in run
rsp = await self.react()
^^^^^^^^^^^^^^^^^^
File "/root/strategy/MetaGPT/metagpt/roles/role.py", line 521, in react
rsp = await self._plan_and_act()
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/strategy/MetaGPT/metagpt/roles/di/data_interpreter.py", line 95, in _plan_and_act
raise e
File "/root/strategy/MetaGPT/metagpt/roles/di/data_interpreter.py", line 90, in _plan_and_act
rsp = await super()._plan_and_act()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/strategy/MetaGPT/metagpt/roles/role.py", line 483, in _plan_and_act
await self.planner.update_plan(goal=goal)
File "/root/strategy/MetaGPT/metagpt/strategy/planner.py", line 89, in update_plan
update_plan_from_rsp(rsp=rsp, current_plan=self.plan)
File "/root/strategy/MetaGPT/metagpt/actions/di/write_plan.py", line 55, in update_plan_from_rsp
rsp = json.loads(rsp)
^^^^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.11/json/init.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
/root/strategy/lib/python3.11/site-packages/pydantic/functional_serializers.py:395: UserWarning: Pydantic serializer warnings:
Expected enum but got str - serialized value may not be as expected
lambda x, h: h(x), schema=core_schema.any_schema()
/root/strategy/lib/python3.11/site-packages/pydantic/_internal/_std_types_schema.py:512: UserWarning: Pydantic serializer warnings:
Expected enum but got str - serialized value may not be as expected
return handler(v)
/root/strategy/MetaGPT/metagpt/schema.py:77: UserWarning: Pydantic serializer warnings:
Expected enum but got str - serialized value may not be as expected
ret = default_serializer(self)

@better629 , any updates on this, please? This is becoming a show-stopper, all runs break, because of this JSONDecoder error. Thanks,

It's the LLM output format following problem, suggest to try a large LLM model like openai or others.


Default Plugins Import Error

When attempting to run plugins such as the dataflow analysis or netlist simulator plugins, I get the following error:

ImportError: cannot import name 'dataflow' from 'hal_plugins' (/home/user/hal/build/lib/hal_plugins/__init__.py)
At:
(2):
I am currently running HAL through WSL2 if that makes any difference. When building I made sure to include the flag '-DBUILD_ALL_PLUGINS=1' and even attempted to build each plugin manually.
Steps to reproduce the behavior:

Go to Help
Click on Plugins Manager
Enable given plugins
Back to netlist
Attempt to run plugin

I expect normally for the plugins to run without error and provide some sort of output or save a file in a given directory.
OS: Windows 11; WSL (Ubuntu 22.04)
Python v3.10.12

Hi @MatthewLabrada , thank for your report. Can you please provide the following additional information :

Can you verify that the 'dataflow' - plugin has been build and that the shared library is residing in the directory $HAL_BASE_PATH/lib/hal_plugins ?
When you enable the plugin (your step 3), are there any warnings or errors in the log ?
What exactly are you doing at your step 5? If it is a Python script you are running, can you please show the codelines?
Is it possible to open a netlist in GUI, enter Plugin Manager again and execute the GUI-extension for 'dataflow'-plugin ?


Hebrew pages sometimes loading as blank page.

On occasion in Chrome we find that Hebrew pages loads as a blank-white screen until scrolled.
I have tried disabling Chrome's auto-translate feature, and also paused AdBlocker just in case either of those were causing the issue however the problem appears to still be there.
Googling around has shown various bugs in previous builds of Chrome with similar effects so it may not be something specific to the theme which is causing the problem.
I'd like to try adding an explicite lang to the page, to see if that helps.

I've tried rolling back to slightly older versions of the theme however we still seem to get the same issue - and Internet Explorer also has a complete fit with it.
This was definitely working in the past, so something external may be having an effect? Perhaps a font we're including or something like that?

O.k even after removing the font includes from Google Fonts we will seem to have much the same issues, although removing the font does cause IE to behave a little better.
Really strange indeed.

Seems the font-issue in IE is actually a separate problem, but something which is common. I'm going to raise that as a separate issue.
https://groups.google.com/forum/?fromgroups=#!searchin/early-access-fonts/hebrew/early-access-fonts/j4gtDwc4HlU/dzLPeryu5tEJ

I've added and explicit land definition to the page but it still doesn't appear to be working much better, which is a frustration.
I'm a little lost as to what is causing the blank screen.

I've checked this on Chrome for Windows and it seems to be fine. I'm now going to try the mobile build and see if that has the same issue or if this is a Mac Desktop version problem.

O.k so I've just been running these tests in BrowserStack and I'm completely unable to reproduce them using OSX and Chrome version match with my local machine.
Is this some form of setting issue in Chrome which we're having?

O.k, scratch that - when I use the latest v46 build on browser stack we see the issue.
The version they're running on 45x is 45.0.2454.85 whereas we are running 45.0.2454.93 locally - so perhaps something in those very minor revisions has caused the issue to appear?

Robin is running 45.0.2454.85 locally on his Mac but is getting the issue - this is an identical build to BrowserStack which isn't getting the problem.

A little more diagnosis on my end. If we remove both the HTML "dir" attribute, and the "dir" properties applied by the CSS then the page loads just fine.
I'm going to file a bug with Chromium about this, as I can't see that it's anything specific that we're doing.
Wondering if I should mock something up in Codepen or something instead os using one of our pages?

O.k while stripping back our code ready to use as an example I started revealing more about what was causing the issue.
When removing the previous timeline it seems that the page would load fine. I then also found that removing the JS would make the page load just fine also.
I'm wondering if we have something JS related which is causing the rendering of the page to hang. I'm going to now take a closer look at the JS, see if I can understand which module is causing problems.

O.k so stripping back the JS includes it seems it was in fact jQuery which was causing the issue. I've bumped jQuery to 2x and it now loads just fine.
I'm not sure if we can really make this leap though as I don't know about dependant libs and whether they'll work or not.

I've done a check and all dependant libs work fine on latest jQuery build.
I've now updated this and run some QA within Robin and it appears to resolve our problem nicely.


Update cxflowtest.txt

Scan submitted to Checkmarx

Checkmarx SAST - Scan Summary & Details
Cx-SAST Summary
Total of 0 vulnerabilities
 0 High
 0 Medium
 0 Low
 0 Info
Violation Summary
No policy violation found


Support roapi for AWS Lambda

I want to use roapi for serverless but I have to do some tricks. For example, I've to build a python image, and run roapi as a subprocess then use restful API to call it. I checked the repo and saw the subproject columnq. So do you have any plan to split columnq to another repo so that it would be easy to use in serverless or integrate with another backend code?
Why support serverless?
In my company, we have a lot of teams. Each team has different resources, so I want them can take the initiative to select their resources. When they invoke the serverless function, it will create a YAML config (with their resources) in lambda tmp direction and another subprocess for roapi will be invoked by reading this config.
How to contribute?
If you have a plan to support serverless, then how can I help you to contribute it? I'm also excited about this project.
Docker image:
FROM public.ecr.aws/lambda/python:3.8
WORKDIR /app
COPY . .
RUN pip3 install -r requirements.txt
CMD ["/app/app.hello"]

Check roapi is running:
def start_roapi(addr, config_file_name):
    process = subprocess.Popen([
        "roapi-http -c {filename}".format(filename=config_file_name)],
        shell=True,
        # stdout=subprocess.PIPE,
        # stderr=subprocess.PIPE
    )

    url = "http://{addr}".format(addr=addr)
    for n in range(1000):
        try:
            time.sleep(0.5)
            res = requests.request("GET", url)
            print("started", res.text)
            break
        except:
            pass

    return process

Then, I've to query to localhost:
url = "http://{addr}{path}?{qs}".format(addr=addr, path=event["rawPath"], qs=event["rawQueryString"])
response = requests.request(method, url, headers=event["headers"], data=data)

I have the same interest with @linrium on making use of roapi for non-tech users when they have static resources and want to query them with sql. So how can we create an on-demand api to query personal resource (serverless is a good approach)? The current user guide seems not meet this use-case ?

I have a secret roadmap item to export columnq as libraries to other languages like python through a thin language binding. This worked really well for another project that I am working on right now, see https://github.com/delta-io/delta-rs/tree/main/python.
In preparation for that, I have already abstracted the high level interfaces into https://github.com/roapi/roapi/blob/main/columnq/src/columnq.rs#L15, I expect other language bindings to have a similar set of APIs. For example, you will be able to do something like this in python:
from columnq import ColumnQ

cq = ColumnQ()
cq.load_table(uri="s3://abc.csv")
rows = cq.query_sql("SELECT * FROM table")

That said, I don't think columnq or roapi is a good fit for serverless because it would need to load the same static dataset on every request which results in waste of network IO and longer request handling time.
You will get the best performance and cost benefit by running it as a always on daemon, like a database, so all requests can be served through a single in memory copy of the static dataset across multiple threads. So I would recommend give services like AWS ECS fargate a try. You can also use any container orchestration systems like Kubernetes. For autoscaling, it's best to configure it to scale up/down based on CPU usage.

But if anyone of you is interested in working on a python binding for columnq using pyo3 and maturin, please let me know, I will be more than happy to help guide the process.

I have a secret roadmap item to export columnq as libraries to other languages like python through a thin language binding. This worked really well for another project that I am working on right now, see https://github.com/delta-io/delta-rs/tree/main/python.
In preparation for that, I have already abstracted the high level interfaces into https://github.com/roapi/roapi/blob/main/columnq/src/columnq.rs#L15, I expect other language bindings to have a similar set of APIs. For example, you will be able to do something like this in python:
from columnq import ColumnQ

cq = ColumnQ()
cq.load_table(uri="s3://abc.csv")
rows = cq.query_sql("SELECT * FROM table")

That said, I don't think columnq or roapi is a good fit for serverless because it would need to load the same static dataset on every request which results in waste of network IO and longer request handling time.
You will get the best performance and cost benefit by running it as a always on daemon, like a database, so all requests can be served through a single in memory copy of the static dataset across multiple threads. So I would recommend give services like AWS ECS fargate a try. You can also use any container orchestration systems like Kubernetes. For autoscaling, it's best to configure it to scale up/down based on CPU usage.

Thanks @houqp for your suggestion. It's great to know your roadmap, and I think it would be great to use ColumnQ with streamlit :D


Strange resolution that downgrades dependencies to conflicing ones

We had a very strange issue today in Airlfow. We are using uv to automatically upgrade our dependencies in canary builds regularly and we are using --resolution highest with complete set of airflow dependencies (devel-ci extra).  Then we are running pip check to verify if the resulting dependencies are good. And we are using pip check (not uv pip - just plain pip) to double-check if everything is right.
Today we had (first time for many months!) first case where the dependencies resolved by uv in this way produced a pip check conflicting set of dependencies.
This was done with 71f9d2b commit of https://github.com/apache/airflow repo - and it might change soon dependinng on the released dependencies but this was reproducible at 6 Nov 2024 11pm GMT (in case you have way to get state of the pip repo at a given moment in time.
The way how to reproduce it is to run this is airflow main repo (and it was done using an  earlier installed airflow (python 3.9) taken from one of the previous installations
uv pip install --upgrade --resolution highest --editable '.[devel-ci]' --editable ./providers --editable ./task_sdk

This resulted in:
0.603 + uv pip install --python /usr/local/bin/python --upgrade --resolution highest --editable '.[devel-ci]' --editable ./providers --editable ./task_sdk
0.643 Using Python 3.9.20 environment at /usr/local
75.59 Resolved 650 packages in 1m 14s
85.70 Prepared 41 packages in 10.09s
86.43 Uninstalled 38 packages in 728ms
86.50 Installed 41 packages in 71ms
86.50  - alembic==1.13.3
86.50  + alembic==1.14.0
86.50  + apache-airflow==3.0.0.dev0 (from file:///opt/airflow)
86.50  + apache-airflow-task-sdk==0.1.0.dev0 (from file:///opt/airflow/task_sdk)
86.50  - apispec==6.7.0
86.50  + apispec==6.7.1
86.50  - cfn-lint==1.18.3
86.50  + cfn-lint==1.18.4
86.50  - diagrams==0.23.4
86.50  + diagrams==0.24.0
86.50  - duckdb==1.1.2
86.50  + duckdb==1.1.3
86.50  - google-auth==2.35.0
86.50  + google-auth==2.36.0
86.50  - jsonpickle==3.3.0
86.50  + jsonpickle==3.4.2
86.50  - kgb==7.1.1
86.50  + kgb==7.2
86.50  + local-providers==0.1.0 (from file:///opt/airflow/providers)
86.50  - marshmallow==3.23.0
86.50  + marshmallow==3.23.1
86.50  - moto==5.0.18
86.50  + moto==5.0.20
86.50  - neo4j==5.25.0
86.50  + neo4j==5.26.0
86.50  - openai==1.53.0
86.50  + openai==1.54.3
86.50  - openlineage-integration-common==1.23.0
86.50  + openlineage-integration-common==1.24.2
86.50  - openlineage-python==1.23.0
86.50  + openlineage-python==1.24.2
86.50  - openlineage-sql==1.23.0
86.50  + openlineage-sql==1.24.2
86.50  - opentelemetry-api==1.27.0
86.50  + opentelemetry-api==1.28.0
86.50  - opentelemetry-exporter-otlp==1.27.0
86.50  + opentelemetry-exporter-otlp==1.15.0
86.50  - opentelemetry-exporter-otlp-proto-grpc==1.27.0
86.50  + opentelemetry-exporter-otlp-proto-grpc==1.15.0
86.50  - opentelemetry-exporter-otlp-proto-http==1.27.0
86.50  + opentelemetry-exporter-otlp-proto-http==1.15.0
86.50  - opentelemetry-exporter-prometheus==0.48b0
86.50  + opentelemetry-exporter-prometheus==0.49b0
86.50  - opentelemetry-proto==1.27.0
86.50  + opentelemetry-proto==1.15.0
86.50  - opentelemetry-sdk==1.27.0
86.50  + opentelemetry-sdk==1.28.0
86.50  - opentelemetry-semantic-conventions==0.48b0
86.50  + opentelemetry-semantic-conventions==0.49b0
86.50  - oracledb==2.4.1
86.50  + oracledb==2.5.0
86.50  - orjson==3.10.10
86.50  + orjson==3.10.11
86.50  - pygithub==2.4.0
86.50  + pygithub==2.5.0
86.50  - python-telegram-bot==21.6
86.50  + python-telegram-bot==21.7
86.50  - regex==2024.9.11
86.50  + regex==2024.11.6
86.50  - rich==13.9.3
86.50  + rich==13.9.4
86.50  - rich-argparse==1.5.2
86.50  + rich-argparse==1.6.0
86.50  - rpds-py==0.20.1
86.50  + rpds-py==0.21.0
86.50  - ruff==0.7.1
86.50  + ruff==0.7.2
86.50  - sentry-sdk==2.17.0
86.50  + sentry-sdk==2.18.0
86.50  - tqdm==4.66.6
86.50  + tqdm==4.67.0
86.50  - types-pymysql==<IP_ADDRESS>40524
86.50  + types-pymysql==<IP_ADDRESS>41103
86.50  - types-setuptools==<IP_ADDRESS>41025
86.50  + types-setuptools==<IP_ADDRESS>41105
86.50  - yandexcloud==0.323.0
86.50  + yandexcloud==0.324.0
86.50  - ydb==3.18.6
86.50  + ydb==3.18.8

And then the following  pip check reported that there are conflicting dependencies:
86.86 Checking packaging tools for system Python installation: /usr/local/bin/python
86.86
86.92
86.92 Running 'pip check'
86.92
89.11 opentelemetry-exporter-otlp-proto-common 1.27.0 has requirement opentelemetry-proto==1.27.0, but you have opentelemetry-proto 1.15.0.

Apparently uv resolving downgraded a number of opentelemetry-exporter dependencies from 1.27.0 to 1.15.0 for no apparent reason.
Whe I repeated the same but adding opentelemetry-proto>=1.27.0 to the uv pip install command, the resolution resolved all those opentelemetry-exporter dependencies to 1.27.0 and pip check stopped complaining.
Pretty weird and migh be difficult to fully reproduce from a clean state, but this was reproducible and failed other's development environments today as well. I workaround it for now by adding the opentelemetry-proto>=1.27.0 to our eager-upgrade command but maybe from the description it will be pretty obvious for you what could have happened.

cc: @notatallshaw -> maybe you also can make a guess here ?

FWIW, can confirm I ran into this locally as well, independent of Jarek, with the same results.

Thanks! I can take a look but note that a bunch of dependencies did upgrade, so it's possible that some upgrade introduced an upper-bound constraint elsewhere that led the resolver to "need" to downgrade others.
Separately, where is opentelemetry-exporter-otlp-proto-common? Is that installed in a prior step?

Yeah, so first thing is that two pip install commands are not guaranteed to produce a consistent install, a simple of example of this is if say B requires A>1 and you run pip install B followed by pip install A==1.0 you end up with an inconsistent environment. This is as true of the uv pip interface as it is of the pip interface.
I would reccomend for create a requirements file that includes an existing environment where you don't want packages to regress, and additional packages to do something like this:
$ uv pip freeze | sed 's/==/>=/g'| cat requirements.txt - | uv pip compile - > output.txt
$ uv pip install -r output.txt

Separately, where is opentelemetry-exporter-otlp-proto-common? Is that installed in a prior step?

Yes. It has been installed in one of the previous successful resolutions (that's why it is difficult to reproduce ) - because in Airflow we use the "previously successfuly tested" set of dependencies from the last "green" main build as a starting point for the upgrade. In this case the "starting" point of installed dependencies were build in this action run:

https://github.com/apache/airflow/actions/runs/11704598329

And I think the easiest way to get the starting point is to download and run the image it has used.
This can be done with (on amd64 architecture)
docker pull ghcr.io/apache/airflow/main/ci/python3.9:f05716bb0b92f180a40150bef8c2cbab153dd361
docker run -it ghcr.io/apache/airflow/main/ci/python3.9:f05716bb0b92f180a40150bef8c2cbab153dd361 bash

That should get you inside of the airflow image used and then likely (I am not at intel machine right now) - running the command above should reproduce the issue:
uv pip install --python /usr/local/bin/python --upgrade --resolution highest --editable '.[devel-ci]' --editable ./providers --editable ./task_sdk

@notatallshaw

Yeah, so first thing is that two pip install commands are not guaranteed to produce a consistent install

Yeah. I absolutely get it but the problem is that:
a) this resolution resulted in a set of dependencies that pip check considered invalid (they were in fact invalid)
b) when I added opentelemetry-proto>=1.27.0, the opentelmetry dependencies were not downgraded AND the produced resoultion was "valid" according to the pip check.
So I don't mind to have different resolutions - but this time it caused invalid resolution not only different. And that is problematic.
Also, when I tried to apply workaround with opentelemetry-proto>=1.27.0 even stranger thing happened.
https://github.com/apache/airflow/pull/43768#issuecomment-2461071604
Apparently when I tried to install airflow in non-editable mode trying to install provider packages (rather than their dependencies) build locally and opentelemetry-proto>=1.27.0 - for some strange reason, uv attempted (and failed) to download some very, very old apache-beam=2.0.0 which is REALLY strange as just adding opentelemetry-proto>=1.27.0 should not have caused to attempt apache-beam to be downgraded, especially that a moment ago apache-beam==2.60.0 was perfectly fine and resolved correctly.

Also @notatallshaw

I would reccomend to install into an existing environment where you don't want packages to regress and also install additional packages, while keeping a consistent environment, is to do something like this:
$ uv pip freeze | sed 's/==/>=/g' | cat requirements.txt - | uv pip compile - -o output.txt
$ uv pip install -r output.txt

This is precisely what we do not want to do. that command that we are running, is not to keep consistent environment, it is used to find the new best resolution taking into account all the packages that were released since last time we resolved the dependencies. Basically
"find me the consistent set of dependencies for .[devel-ci] that highest resolution provides. This particular line of code does not care about "keeping" the environment from previous run, I am really interested in getting "new consistent environment taking into account all packages released recently".

this resolution resulted in a set of dependencies that pip check considered invalid (they were in fact invalid)

But isn't in invalid taking into account a package that was already installed in the virtual environment but not part of the resolution? The second uv pip install doesn't know anything about opentelemetry-exporter-otlp-proto-common or its constraints, right? (Neither would pip install.)

So I don't mind to have different resolutions - but this time it caused invalid resolution not only different. And that is problematic.

That's what I'm saying, two pip install commands can produce an invalid resolution. It doesn't matter if you use uv or pip, this is chance of that.

This is precisely what we do not want to do. that command that we are running, is not to keep consistent environment, it is used to find the new best resolution taking into account all the packages that were released since last time we resolved the dependencies.

That command I gave should give a new best resolution as well as guaranteeing being consistent.

That command I gave should give a new best resolution as well as guaranteeing being consistent.

Ah . I see - interesting - I did not notice the sed command replacing == with >=.... But this is not exactly what I want. Sometimes I want the packages to regress. For example it might be that a new version of a package is relased that has < limit on a version of another package I already have installed - and maybe few others as well (for example when that package has a bug discovered that caused few maintainers to limit it) - in this case (and it happened in the past) - I want the new resolution to (possibly) downgreade that package and upgrade the others.
And .... so far it worked. But for some reason it caused this invalid resolution.

That's what I'm saying, two pip install commands can produce an invalid resolution. It doesn't matter if you use uv or pip, there is always chance of this outcome.

Aha.. Yeah. Actually, that made me think... I think you are likely right and I start seeing scenario when that could have happened - probably when one of the new packages stops having another package as dependency then probably that could have caused that dependency to be "left over" by the resolution and cause the conflict.
Thanks! that gave me a clue. I have to look a bit deeper, but I think I know the scenario and indeed it is likely not a bug in uv. Sorry @charliermarsh -> I will take a deeper look and report back here later (it's after midnight for me)

Ah . I see - interesting - I did not notice the sed command replacing == with >=.... But this is not exactly what I want. Sometimes I want the packages to regress.

Well you could do:
$ uv pip freeze | cut -d'=' -f1 | cat requirements.txt - | uv pip compile - -o output.txt  --upgrade
$ uv pip install -r output.txt

And .... so far it worked. But for some reason it caused this invalid resolution.

I really think it's just about luck, most the time it will work fine, and then a new dependency is created and it just happens the resolution hits something surprising and becomes invalid.

Aha.. Yeah. Actually, that made me think... I think you are likely right and I start seeing scenario when that could have happened - probably when one of the new packages stops having another package as dependency then probably that could have caused that dependency to be "left over" by the resolution and cause the conflict.

Yes, similiar to my A / B example, this will happen transative dependencies from the first install, and then when it becomes a new dependency or transative dependency in the second install.

Oh yeah.
I do not know why opentelemetry has been downgraded (though it is secondary), but I know how the conflict happened.
This is because caching is hard.
The opentelemetry--http and -grpc 1.27 had opentelemetry--common 1.27 as dependency, BUT http/gprpc 1.15 DID NOT... This means that when everything from opentelemetry has been downgraded, the common one was not even considered for 1.15 as dependency so it has not been downgraded together - it's cached version from previous resolution was simply not considered in the final reslution.
That is very interesting one. And likely I can solve it by just avoiding to use the cached version from last run - which I can easily do by increasing the build epoch in the dockerfile.
Thanks. I see that it is NOT uv issue @charliermarsh, so unless you would like to handle a case that uv should h

Closing. Thanks for the discussion. It's been very helpful to get to the root of the problem.

Btw, taking a step back, I think you could produce sufficent constraints with just running uv pip compile commands, I don't think you need to base your new resolution on a previous install any more, uv pip compile is very powerful, especially with --universal options and others.

BTW. Confrmed locally https://github.com/apache/airflow/pull/43770 - bumping the EPOCH (i.e. cleaning the cache) solved the problem for me.

There are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors.

Not really - because we are doing it in Docker container, and we do not want to have cache of UV when we are doing it on the server. For airflow, UV cache for all our dependencies increases the size of our image by 2GB (~ 100%) - so we really do not want to keep cache there.

uv pip compile almost never downloads a full package, even when it resolves sdists, due to assumptions uv makes when resolving.

While uv resolution is way faster than pip, without the cache and starting from 0, such resolution will take minutes (mostly because downloading and building some packages takes time not the resolution itself).

I think you'll find even with --no-cache that uv pip compile takes seconds, even with --universal which will resolve every version of Python simultaneously.

I don't know the details of your Docker setup, but in case you don't know, you could use a cache mount

I don't know the details of your Docker setup, but in case you don't know, you could use a cache mount

We can't unfortunately, because this is docker container built on Github Runner in CI - so we have no cache mount available between builds. We could potentially use cache of github Runners to store the cached volume mount - but this cache in itself is limited to 10GB for everything and we would run out of it very quickly with different branches we have.
We are planning to explore using artifacts for this cache - that woudl also help us with simplifying our workflows - https://github.com/apache/airflow/issues/43268 - but this will be pretty complex to implement and so far i found that using installed packaged from the "branch tip" of airflow (with disabled PIP or UV caching) and storing this as a single layer in our image with incrementally adding new layer with new packages, provides the best balance between the image size and time of buiilds.
Note also that those images are pulled locally when you want to replicate CI development environment - because building those image takes also at least 5-10 minutes we optimize that by using github registry cache when we rebuild the images locally - which saves up to 5-8 minutes every time you build such image.
So it's not that straightforward. But there is a way to simplify it in the future and maybe indeed use a bit more of the cache that UV provides.


docker daemon log - timestamp missing milli/nano seconds

The docker daemon (default /var/log/docker) is missing the trailing milli/nano seconds that exist in the "docker logs" command.
daemon:
time="2015-03-22T09:03:20Z" level="info" msg="-job container_inspect(c838886a2e3d) = OK (0)"
docker logs:
2015-03-18T15:47:55.649048237Z Wed, 18 Mar 2015 15:47:55 GMT

+kind/enhancement

+status/claimed

Logrus v0.7.2 released with @scarletmeow's fix in https://github.com/Sirupsen/logrus/pull/158

@scarletmeow I think this now needs another PR to update logrus; similar to this PR; https://github.com/docker/docker/pull/11553

@scarletmeow Do you wanna update logrus in docker?

Yes, I'll work on a PR to do that.

@scarletmeow Thank you!


Feature Request - Make Timeline Links Clickable

It would be nice if when the text task was a link (i.e. a Zoom meeting, etc) it would show as a hyperlink in the timeline instead of the markdown link.

Closing this as stale.


Small transactions are shown as exponent instead of more familiar value

Small transactions render as exponents instead of the better known value (0.00000001).

Hey, sorry for the delay.
Got any tx id to give me to see the bug?
There's too many txs on your account http://<IP_ADDRESS>:6040/address/ASjePWudP5B2miZ7siE4mc2tgn9BY5cLtj

@Doweig I'm not sure this is completely fixed:

texplorer wasn't updated, ok now


Create a Drop-down List with ImportExcel

Hi Folks,
Sorry if this is not the right place for the question. I am wondering if it is possible to create with ImportExcel a column with a drop-down list of options.
For example, like having a column named Status and the values be a drop-down list being 0 or 1.
Thanks,
Marcos

Maybe this?
https://github.dev/dfinke/ImportExcel/blob/cb7f2a06f49eeeb47b8e463fee8529b0db38dd6d/Examples/ExcelDataValidation/MutipleValidations.ps1#L1

That seems to be exactly what I need... Thanks a lot!


Add Portal Image

Added portal image to accomplsih the task

@PradeepKommaraju : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@PradeepKommaraju : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@PradeepKommaraju : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@genlin Could you review this pull request? If you accept the content update, the new files need to be submitted with file names that are all lowercase, including the extensions (disabled.png, disconnected.png).  Please review. Thanks!

#sign-off
@PradeepKommaraju  Thanks for helping to improve the article.

We'll move this commit to the private repo so we can standardize on the file names and verify the updates on staging. We'll close this PR when we've moved this commit (likely this morning). Thanks.

The PR in the private repo is https://github.com/MicrosoftDocs/azure-docs-pr/pull/129745. We'll close this PR. Thanks.


⚠ SceneTime has degraded performance

In b79c142, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 3886 ms

Resolved: SceneTime performance has improved in 3f0b4e6 after 30 minutes.


Do not require bash

https://github.com/soatok/minisign-php/blob/77080084240942090761f96cec7d1ddc5be910e4/src/CLITrait.php#L59
Some code I'm using for this, I think this will be more portable (and simpler)...
        // ask for password
        exec('stty -echo');
        echo 'Password: ';
        $userPass = trim(fgets(STDIN));
        echo PHP_EOL.'Password (repeat): ';
        $userPassRepeat = trim(fgets(STDIN));
        exec('stty echo');
        echo PHP_EOL;

Huh. Are there modern systems that don't support bash in 2020?

Bash is not included on the BSDs, and it's on its way out on MacOS. I think this change is a good idea.

The reason for opening this issue actually had nothing to do with whether or not bash is available, which is of course also a valid consideration. The reason is that running bash (or any shell) like this is overkill, i.e. running a lot of extra unnecessary code for functionality that can be accomplished in a much simpler way, maybe even simpler than I propose, I actually hope so!
In addition, this code is difficult to review as one also has to consider the interaction with the shell, environment variables, potentially leaking the password to other (local) users on the system, and probably more that I can't think of right now.
IMHO, simple is better, less is more, especially for security (sensitive) code.

Maybe this comment on php.net can provide an even simpler solution?

The reason for opening this issue actually had nothing to do with whether or not bash is available, which is of course also a valid consideration. The reason is that running bash (or any shell) like this is overkill, i.e. running a lot of extra unnecessary code for functionality that can be accomplished in a much simpler way, maybe even simpler than I propose, I actually hope so!

The code in question is shell_exec(), right? (I thought this was about bin/test-cli.sh at first glance. I just want to make sure I have a good mental model.)

In addition, this code is difficult to review as one also has to consider the interaction with the shell, environment variables, potentially leaking the password to other (local) users on the system, and probably more that I can't think of right now.
IMHO, simple is better, less is more, especially for security (sensitive) code.

I'm torn here. STDIN support makes me more nervous than a stdlib function, especially since it may not be available in some cases. Also, does shell_exec() explicitly require bash, or does it work with any shell?

This should be fixed in v0.3.0.

STDIN support makes me more nervous than a stdlib function, especially since it may not be available in some cases.

Why is that? When is it not available?

If you run the script like this
# don't do this
php -sM file <vendor/bin/minisign

Since the PHP script is read via stdin, it's not available for running the script anymore


fix(macos): scripts

scripts was failing on macOS due to new multiplatform implementation
How Has This Been Tested?
Manual tests: scripts don't have unit tests.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] Refactorization (non-functional change which improve code readibility)

This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.


Use enum for jdisc gc count

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.

@olaaun or @gjoranv Please review and merge.


Mirror volume snapshot

Sorry Dylan & Emily. Need to add finalizer logic.. Moving this PR back to draft.


'enableNestedDataAccess' does not exist in type 'MUIDataTableOptions'

enableNestedDataAccess property in options doesn not exist for typescript
Expected Behavior
Type should exist
Current Behavior
Type does not exist
Steps to Reproduce (for bugs)
Try adding the property in options
<MuiDataTable               title={'Profiles'}               data={profiles}               columns={columns}               options={{   enableNestedDataAccess: '.'               }}             />
Your Environment

Tech
Version

Material-UI
^4.9.12

MUI-datatables
^3.1.4

React
^16.13.1

Are you are using DefinitelyTyped? I see it listed in their file over there: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/mui-datatables/index.d.ts

Yes I've installed the last version with no result.
I uninstall, install again and it's work.
Thanks
Sorry for inconvenience


[surface] Ensure SEND_STATUS & RECV_MESSAGE do not inhabit the same batch

Add a check that SEND_STATUS_FROM_SERVER and RECV_MESSAGE are not in the same batch.
This is necessary pre-work for #31204 and implements part of https://github.com/grpc/proposal/pull/336.
Also eliminates fling instead of updating it:

My expectation is nobody has looked at this corner in many years
It's not a benchmark we want: concentrating on a microbenchmark that doesn't include a binding layer caused us to favor designs that emphasized a lightweight core at the expense of a expensive bindings. We should consider the whole.

I think Ruby & C++ are ready.. looks like some PHP changes required, and maybe some Obj-C & a smidge more Python?


Manual cherry-pick of #1731 and #1741

Description
Manual cherry-pick of #1731 and #1741
Which issue(s) does this PR fix

Fixes #?

PR acceptance criteria
Please make sure that the following steps are complete:

[ ] GitHub Actions are completed and successful
[ ] Unit Tests are updated and passing
[ ] E2E Tests are updated and passing
[ ] Documentation is updated if necessary (requirement for new features)
[ ] Add a screenshot if the change is UX/UI related

How to test changes / Special notes to the reviewer

/lgtm

/cherry-pick 1.2.x

/lgtm


changes SCSS to CSS variables on the README

Deploy preview for pf-next ready!
Built with commit 6e8ef123ae7a270dbc908e3b0a7ca5135d4a9e7a
https://deploy-preview-1508--pf-next.netlify.com


[Discussion] Enchancement

Should we include the Enchancement mod, and if so, how should we configure it?

Personally, I don't think it would add very much value to the pack. There were people on discord mentioning how disabling durability would reduce the problem of "everyone only uses Botania's mana-autorepair tools", but with the current modlist there aren't that many alternative tool options anyway.
Then there's the issue of it breaking mods that use durability for things that aren't just "the tool will break eventually if you don't take care of it".
Some of the enchantments it adds look neat, but I'd rather have mostly-vanilla enchantment mechanics than cool modded enchants and questionable sweeping changes

There were people on discord mentioning how disabling durability would reduce the problem of "everyone only uses Botania's mana-autorepair tools", but with the current modlist there aren't that many alternative tool options anyway.

Mending exists

Then there's the issue of it breaking mods that use durability for things that aren't just "the tool will break eventually if you don't take care of it".

Which mod will have this problem? There are no mods, that would be really broken because of this

The issue is we won't really know what breaks until we find broken things. And if there are no current issues and we add it, then we later add a mod that does break, that's hard to resolve.

Enchancement should not be added. The features it adds are not worth the invasive changes it makes. Here's a list:

Removal of nigh every enchantment. The only ones preserved from Vanilla are Fire Aspect, Infinity, Channeling, Riptide, Luck of the Sea, Efficiency, and Silk Touch. The better ore procurement of Fortune is gone, the only damage increase for swords is now fire aspect and the Enchancement berserk effect, every form of additional protection on armor is removed, and the underwater utility of Aqua Affinity, Respiration, and Depth Strider is absent. Not to mention that other mods add enchantments, and catching them all would be difficult (In the discussion on Discord, no one even mentioned the enchantment Supplementaries provides). The sheer amount of utility vanilla enchants provides is missing, and reintroducing them would be pointless due to the other changes Enchancement provides, explained next.

Enchantment limit of 1 per item. This makes sense in the native Enchancement ecosystem, since each enchantment is a unique choice. However, it entirely prevents the reintroduction of other enchantments, because many enchantments are supplemental to the gear, rather than a major trait. Why add Aqua Affinity without Respiration? And why choose either of those over a stronger enchantment like Protection (for example; Protection was removed as well). Rather than encouraging choice, it is stifling. And increasing the limit isn't an option either, since the majority of the introduced enchantments are not designed to work together! While they can in principle, it's always supposed to be an exclusive choice.

The removal of enchantment leveling. Every enchantment is level 1. While they do tweak the values to be the same as default (the new Riptide I is the same as the old Riptide III), this makes integrating other enchantments impossible. Fortune I is useless compared to Fortune III. This also prevents rolling back Enchancement, since every single item will have only 1 level per enchantment.

The removal of durability from the game. Here's the big one. The removal of Durability absolutely kills mod compatibility, since many systems are designed with Durability in mind. Why sacrifice your chest slot for the Copper Backtank to mitigate the durability damage on the Extend-o-grip and Potato Cannon? Why burn through pools of mana to refill your Terrasteel armor when it takes no damage at all? It also entirely removes the point of repairing and other systems, which can be fixed and already have been in the modpack via mods like Charm and Tinkerer's Smithery. And that's not even accounting for the possible errors that could crop up 50 hours in that lead to broken interactions! A lot of mods use durability even if it doesn't look like they do, and we cannot know until we break it ourselves. And once it does break? There's nothing we can do because the mod is so invasive.

While it is possible to config the mod, the systemic problems will never go away. Not to mention that the enchantments aren't really that good. The mobility is neat, but not at the expense of literally everything (Not to mention it invalidates innovative tools from Botania and Hex Casting). The only way to fix the mod would be to remove nearly all of it and keep configuring it as the modpack evolves, which is definitely not worth the effort when there are easier solutions.
This is why Enchancements should not be added.

Wall of text. Won't answer, but you have some mistakes here, LlamaSageR

If you disagree with points they made, comment on them or forever hold your peace, because as of right now I'm not seeing any compelling reasons to include the mod in the pack.

A comprehensive problem requires a comprehensive answer. To shorten it would be to sacrifice needed information. If you have a counterargument or other critique, please send it.


[Snyk] Upgrade eslint-config-prettier from 8.10.0 to 9.0.0

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade eslint-config-prettier from 8.10.0 to 9.0.0.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

Warning: This is a major version upgrade, and may be a breaking change.

The recommended version is 1 version ahead of your current version.
The recommended version was released 21 days ago, on 2023-08-05.

Release notes

Package name: eslint-config-prettier

9.0.0 - 2023-08-05eslint-config-prettier v9.0.0

8.10.0 - 2023-08-03eslint-config-prettier v8.10.0

    from eslint-config-prettier GitHub release notes

Commit messages

Package name: eslint-config-prettier

1982680 eslint-config-prettier v9.0.0
f197969 Do not disable unicode-bom (#250)
a8bc57e Flat config: CLI, tests, docs (#261)

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Codecov Report

Merging #348 (f2653c3) into main (f37a105) will not change coverage.
The diff coverage is n/a.

: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.
@@            Coverage Diff            @@
##              main      #348   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           39        39
  Lines          495       495
  Branches        77        77
=========================================
  Hits           495       495

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Dead code detection

sebastianbergmann/phpdcd is a great tool but does not work for object oriented code.
Would it be possible to add a dead code detection feature into phan using the php ast?

closing as a new ticket was opened in etsy/phan.


Change the colours of the social buttons

In the current branding, the social buttons are somewhat "kubernetes blue".  We should change the /images/social-sprite.png to be more Calico Orange (#f69432).

Related to theme overhaul - #81


How do i export mesh with alpha transparency in blender 2.79

I'm using blender 2.79 experimental and official build with latest gltf addon and was wondering if alpha image support is available since documentation only mentions method to add alpha in blender 2.8
I've tried both previously known methods and they do not work

output tested  in babylon & windows 3d viewer

blend file
clouds.zip

Not sure what the history is here, at some point this must have been supported at least via the old custom node setup.  But the code today looks like 2.79 users have no option for that:
https://github.com/KhronosGroup/glTF-Blender-IO/blob/ddb58decdbf56d25259487fa668926af2d8a9766/addons/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py#L88-L90
I've been spending every free moment of time on the 2.80 side lately.  If someone wants to take on 2.79 maintenance, feel free.  But it will be diminishing returns, as 2.80 stable is due out this summer, and we still have a lot of work to do before then.

Random untested guess:
diff --git a/addons/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py b/addons/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py
index 8c18c6b..87a29e7 100644
--- a/addons/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py
+++ b/addons/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py
@@ -86,13 +86,13 @@ def __gather_alpha_cutoff(blender_material, export_settings):

 def __gather_alpha_mode(blender_material, export_settings):
-    if bpy.app.version < (2, 80, 0):
-        return None
-    else:
+    if bpy.app.version >= (2, 80, 0):
         if blender_material.blend_method == 'CLIP':
             return 'MASK'
         elif blender_material.blend_method == 'BLEND':
             return 'BLEND'
+    if gltf2_blender_get.get_socket_or_texture_slot_old(blender_material, "Alpha") is not None:
+        return 'BLEND'
     return None

Don't change the if bpy.app.version < (2, 80, 0) formatting, it's used by a python script to convert the source code to strict 2.80 code for inclusion in the Blender Addons repository.
But yes, something like the rest of the code you show would likely get the old custom nodes working again.
In other news, there's an Alpha hookup on the 2.80 Principled BSDF node now, so the old system of using the Transparent BSDF with a mix shader and all is obsolete in 2.80.  A number of alpha-related things now need updating on both the importer and exporter due to this recent change.

i'm using a old system which doesn't support 2.8...will switch to it once everything is ready...
so no need to fix if its not supported ...
principled bsdf with alpha and emitter nodes inbuilt should simplify everything for the future

Since 2.79 support has been dropped, I think this can be closed.


[Android] The RecycleView will change to gray

Target Application
Ringcentral
Application Operating System
Android
Schema Version
every
Problem Description

android install mobile chat app
click "+"
scroll to bottom
observer the color of recycleView

see the video:
https://user-images.githubusercontent.com/97420024/177491492-6e4689f3-a889-431c-ac7c-a95efa18ac29.mp4
Expected Outcome
RecycleView can keep the color
Actual Outcome
RecycleView change the gray.
Card JSON
none

Repro Steps

android install mobile chat app
click "+"
scroll to bottom
observer the color of recycleView

Personal guess is due to MediaController, gray is the color of PhoneWindow。
when I delete the code that highlight in picture will be okay

@almedina-ms could you please have a look?:)

@almedina-ms - care to look? :)


Rewrite the tests! now they're cross-platform!

Currently, the test framework is Visual Studio's unit testing framework -- this is undiscoverable, and not cross platform. This PR rewrites the tests to use catch2, since it's single header and thus doesn't require any special handling.

[x] write catch2 tests
[ ] rewrite/at least delete the VS project files
[ ] documentation!

Bless you for moving all those test files.


How to I customize/add diagram.json for wokwi?

You can customize the diagram.json in the browser in a custom project, then pass the project ID to wokwi-server by setting the value of WOKWI_PROJECT_ID, here


Drill with mining area upgrade bug

In both: 4.0.5 and 4.1.0 versions, when drill's mining area function breaks chests (or any other block that have an inventory, except shulker boxes) that block drops only itself, but not items that stored in it. So, if you mine some block with the drill with this upgrade, and there is a chest next to the minable block, you lose all items in it. To fix this, you should probably use setblock air destroy instead of loot on block entities, that could store items (like chests or jukeboxes). I'm not sure about custom blocks from all datapacks but breaking of smitched crafing table and simpleenergy's blocks work pretty fine.
Also, i wanna say that tinker table, with item in it, lags and takes TPS/ms.avg pretty noticeably, and just too much for custom block with gui (from this dp or not). I don't know how to fix it, just wanted to inform you.

Fixed in v4.1.1