Peer failed when disconnected by another peer

What is wrong?
PYTHONWARNINGS=ignore::DeprecationWarning trinity-beacon -l DEBUG --trinity-root-dir /home/ubuntu/data_dir interop --validators 0,1,2,3,4,5,6,7 --start-time<PHONE_NUMBER>

   DEBUG  2019-12-05 07:35:14,071             Validator  broadcasting attestation aggregation_bits=0b01, data=(slot=52, index=0, beacon_block_root=0250..1319, source=(4, f0a0..56a0), target=(6, 3dde..0456),), signature=b916..b363
   DEBUG  2019-12-05 07:35:14,120             Validator  <coroutine object Validator.handle_slot_tick at 0x7fcb76147cb0> finished while <trinity.components.eth2.beacon.validator.Validator object at 0x7fcb7612e390> is still running, terminating as well
   DEBUG  2019-12-05 07:35:14,120             Validator  Cancelling service: <trinity.components.eth2.beacon.validator.Validator object at 0x7fcb7612e390>
 WARNING  2019-12-05 07:35:14,120             Validator  Task <coroutine object Validator.handle_slot_tick at 0x7fcb76147dd0> finished unexpectedly: RuntimeError('unable to perform operation on <TCPTransport closed=True reading=False 0x556610a10780>; the handler is closed')
   DEBUG  2019-12-05 07:35:14,120             Validator  Task failure traceback
Traceback (most recent call last):
  File "/home/ubuntu/trinity/p2p/service.py", line 158, in _run_task_wrapper
    await awaitable
  File "/home/ubuntu/trinity/p2p/service.py", line 179, in _run_daemon_task_wrapper
    await awaitable
  File "/home/ubuntu/trinity/trinity/components/eth2/beacon/validator.py", line 139, in handle_slot_tick
    await self.handle_second_tick(event.slot)
  File "/home/ubuntu/trinity/trinity/components/eth2/beacon/validator.py", line 239, in handle_second_tick
    await self.attest(slot)
  File "/home/ubuntu/trinity/trinity/components/eth2/beacon/validator.py", line 396, in attest
    await self.p2p_node.broadcast_attestation(attestation)
  File "/home/ubuntu/trinity/trinity/protocol/bcc_libp2p/node.py", line 421, in broadcast_attestation
    await self._broadcast_data(PUBSUB_TOPIC_BEACON_ATTESTATION, ssz.encode(attestation))
  File "/home/ubuntu/trinity/trinity/protocol/bcc_libp2p/node.py", line 424, in _broadcast_data
    await self.pubsub.publish(topic, data)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/pubsub/pubsub.py", line 367, in publish
    await self.push_msg(self.host.get_id(), msg)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/pubsub/pubsub.py", line 435, in push_msg
    await self.router.publish(msg_forwarder, msg)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/pubsub/gossipsub.py", line 177, in publish
    await stream.write(encode_varint_prefixed(rpc_msg.SerializeToString()))
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/network/stream/net_stream.py", line 60, in write
    return await self.muxed_stream.write(data)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/stream_muxer/mplex/mplex_stream.py", line 150, in write
    return await self.mplex_conn.send_message(flag, data, self.stream_id)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/stream_muxer/mplex/mplex.py", line 147, in send_message
    return await self.write_to_stream(_bytes)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/stream_muxer/mplex/mplex.py", line 155, in write_to_stream
    await self.secured_conn.write(_bytes)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/security/secio/transport.py", line 127, in write
    await self.write_msg(data)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/security/secio/transport.py", line 133, in write_msg
    await self.conn.write_msg(encrypted_data + tag)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/io/msgio.py", line 40, in write_msg
    await self.write_closer.write(data)
  File "/home/ubuntu/.pyenv/versions/3.7.4/envs/trinity/lib/python3.7/site-packages/libp2p/network/connection/raw_connection.py", line 26, in write
    self.writer.write(data)
  File "/home/ubuntu/.pyenv/versions/3.7.4/lib/python3.7/asyncio/streams.py", line 305, in write
    self._transport.write(data)
  File "uvloop/handles/stream.pyx", line 673, in uvloop.loop.UVStream.write
  File "uvloop/handles/handle.pyx", line 159, in uvloop.loop.UVHandle._ensure_alive
RuntimeError: unable to perform operation on <TCPTransport closed=True reading=False 0x556610a10780>; the handler is closed
   DEBUG  2019-12-05 07:35:14,124             Validator  <trinity.components.eth2.beacon.validator.Validator object at 0x7fcb7612e390> finished: Cancellation requested by Validator:Node token
   DEBUG  2019-12-05 07:35:14,124             Validator  <trinity.components.eth2.beacon.validator.Validator object at 0x7fcb7612e390> halted cleanly
   DEBUG  2019-12-05 07:35:16,000            SlotTicker  [TickType.SLOT_TWO_THIRD] tick at 4s of slot #52, total elapsed 316s
   DEBUG  2019-12-05 07:35:18,000            SlotTicker  [TickType.SLOT_START] tick at 0s of slot #53, total elapsed 318s
   DEBUG  2019-12-05 07:35:20,000            SlotTicker  [TickType.SLOT_ONE_THIRD] tick at 2s of slot #53, total elapsed 320s
   DEBUG  2019-12-05 07:35:22,000            SlotTicker  [TickType.SLOT_TWO_THIRD] tick at 4s of slot #53, total elapsed 322s
   DEBUG  2019-12-05 07:35:24,000            SlotTicker  [TickType.SLOT_START] tick at 0s of slot #54, total elapsed 324s

How can it be fixed
Fill this in if you know how to fix it.

duplicated #1113


Styling the select box

I have tried bootstrap-select, and everything was find but the style is different with other select boxes on the page. The bootstrap-select box had a gradient background like a button. How can we style the bootstrap-select box to look exactly the same as the original select element of bootstrap?

bootstrap-select automatically applies classes to make it look like a Bootstrap button dropdown. I would start with this:
$.fn.selectpicker.Constructor.DEFAULTS.styleBase = 'form-control';
$.fn.selectpicker.Constructor.DEFAULTS.style = '';

Then from there you can customize with CSS to change the appearance as desired.


Resize reparent window.

It almost fills the entire screen at the moment.

It might be a better idea to constrain its width but not its height. This way, long scene trees can be viewed without scrolling.

Update:

Superseded by #40291.


[Unity][Dlight] Enhance matmul tensorizer with Int8 support

Main goal of this commit was not to provide highly optimized schedule, but to enable tensor core tensorization for i8i8i32 matmul. Now it supports fp16 matmul only.
Anyway, speedup is a case compared to fp16 (fp16fp16->fp16 vs i8i8->i32):

N
M, N, K*
Shape type
fp16, us
int8, us
speedup

1
256, 256, 256
static shapes
15.03
12.55
1.198x

2
512, 512, 4096
static shapes
173.25
129.06
1.342x

3
N (=260), 4096, 4096
dynamic shapes
350.44
298.29
1.175x

where K* - is a reduction axis.
Implementation of Matmul int8 tensorizer was derived from Matmul tensorizer with minimal changes. It is possible to join these implementations (fp16 and int8), but I am not sure this is a good idea. Since it can slow down development of fp16 part.

Awesome work! Thanks very much, @ibsidorenko! cc @vinx13 @masahi for review


Fix #14214

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Reviewer - this PR has made changes to one or more package.json files.

Snapshot stored with reference name:
refs/pull/14216/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14216/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14216/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/14216/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/14216/merge
https://gui.babylonjs.com/?snapshot=refs/pull/14216/merge
https://nme.babylonjs.com/?snapshot=refs/pull/14216/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/14216/merge#BCU1XR#0

Visualization tests for webgl1 have failed. If some tests failed because the snapshots do not match, the report can be found at
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14216/merge/testResults/webgl1/index.html
If tests were successful afterwards, this report might not be available anymore.

Reviewer - this PR has made changes to one or more package.json files.

Visualization tests for webgl2 have failed. If some tests failed because the snapshots do not match, the report can be found at
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14216/merge/testResults/webgl2/index.html
If tests were successful afterwards, this report might not be available anymore.

Visualization tests for webgl1 have failed. If some tests failed because the snapshots do not match, the report can be found at
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14216/merge/testResults/webgl1/index.html
If tests were successful afterwards, this report might not be available anymore.

Pushed a fix to linting! 😄

Reviewer - this PR has made changes to one or more package.json files.


WIP - [#153] Adjust commit hash

https://github.com/nimblehq/react-templates/issues/??
What happened 👀
Provide a description of the changes this pull request brings to the codebase. Additionally, when the pull request is still being worked on, a checklist of the planned changes is welcome to track progress.
Insight 📝
Describe in detail why this solution is the most appropriate, which solution you tried but did not go with, and how to test the changes. References to relevant documentation are welcome as well.
Proof Of Work 📹
Show us the implementation: screenshots, GIFs, etc.

Seems another CI issue has popped up 😢


Cannot Apply Font to Portion Inside Table Cell.

Hello. ShapeCrawler 0.48 is currently throwing an InvalidCastException while trying to set the font of a portion inside a table cell. Here is a tester program to reproduce the issue.
using ShapeCrawler;

namespace TesterApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // opens presentation from the file path
            var presentation = SCPresentation.Create();
            var slide = presentation.Slides[0];

            var rect = slide.Shapes.AddRectangle(0, 0, 100, 100);
            AddText(rect.TextFrame); // This works.

            var table = slide.Shapes.AddTable(0, 0, 3, 3);
            AddText(table[0, 0].TextFrame); // This doesn't.

            presentation.SaveAs("test.pptx");
        }

        private static void AddText(ITextFrame frame)
        {
            var paragraph = frame.Paragraphs.Add();

            paragraph.AddPortion("Test!");
            var portion = paragraph.Portions[^1];
            portion.Font.LatinName = "Calibri";
        }
    }
}

It seems like ShapeCrawler is assuming all paragraphs live inside shapes, therefore when the parent is an ScCell it throws?

You are right. It is about parent. Thanks!

I cannot no longer reproduce this bug. It seems it was auto-fixed.


Fix transaction card design

Sometimes some of the hashed for the address is fully showing instead of only partially

Fixed through back end


Cache list of devices

Cache list of devices to lower the amount of API calls made. As said in https://github.com/neroist/Nova/issues/1#issuecomment-1605770367.

Implemented in https://github.com/neroist/Nova/commit/6a85f8ad38f47b287a3b1ea0c113a91d281a86bb


⚠ Bofrost.fr has degraded performance

In e447683, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1580 ms

Resolved: Bofrost.fr performance has improved in c2663f3 after 6 minutes.


[WIP] [Speculative Decoding] Support draft model on different tensor-parallel size than target model (Extended)

This PR is to support spec_draft_tp larger than 1.
spec_draft_tp=1 has been enabled in #5414.
Note: To test the code in CI, I removed unrelated test cases temporarily.
What I've done in this PR:

Changed config.py to allow tp values larger than 1 but not than the target model's tp value.
Added a test case of spec_draft_tp=2 in test_integration_dist_tp4.py

Resolves #4632 further

The timeout seems to be ray related:
[2024-06-26T07:36:39Z]                 if self.engine_use_ray:
[2024-06-26T07:36:39Z] >                   await self.engine.add_request.remote(  # type: ignore
[2024-06-26T07:36:39Z]                         **new_request)
[2024-06-26T07:36:39Z] E                       asyncio.exceptions.CancelledError

I'm trying to get e2e tests running on CI using mp backend, but it's not so straightforward.

The timeout seems to be ray related:
[2024-06-26T07:36:39Z]                 if self.engine_use_ray:
[2024-06-26T07:36:39Z] >                   await self.engine.add_request.remote(  # type: ignore
[2024-06-26T07:36:39Z]                         **new_request)
[2024-06-26T07:36:39Z] E                       asyncio.exceptions.CancelledError

I'm trying to get e2e tests running using mp backend, but it's not so straightforward.

These e2e spec decode tests seem to be performed on the ray backend, as they are using AsyncLLM.
I thought it was using the mp backend because it's the default option.
Please let me know when you get some more information. Thank you!

What is the latest status? is there a hang in CI? btw I suspect it's due to non-driver workers being different from driver worker (but I haven't looked).

What is the latest status? is there a hang in CI? btw I suspect it's due to non-driver workers being different from driver worker (but I haven't looked).

Sorry, I've been rather busy with other stuff.
Now I can take another look at this issue. I'll try to handle it this week ~ next week.
Regarding the question about CI, I tried to debug the problem by running distributed tests in CI, but I found that it requires much time (4hrs) for distributed tests to launch, because of resource queueing I guess. (though I removed all other tests for the faster result)
I'll work on it some more and share my findings.
Thanks! 👍

No problem. you should also follow this PR https://github.com/vllm-project/vllm/pull/6032. it adds SPMD worker which removes the need to communicate from rank0 to other ranks

Take a look at this also @wooyeonlee0 https://github.com/vllm-project/vllm/issues/6556


New organization

adding plugens

@LucianoBatista please close this pr

@LucianoBatista please close this pr

Because it was made by accident?

Yes, sorry


cannot deploy gh-pages

The pipeline is failing on the "Deploying to gh-pages" stage
Switched to a new branch 'github-pages-deploy-action/gc55baacc'
165/usr/bin/git commit -m Deploying to gh-pages from @ 4d0bc20583e5fc71f94a928eabdc16b46560d4e4 🚀 --quiet --no-verify
166/usr/bin/git push --force ***github.com/microsoft/hummingbird.git github-pages-deploy-action/gc55baacc:gh-pages
167remote: Permission to microsoft/hummingbird.git denied to github-actions[bot].
168fatal: unable to access 'https://github.com/microsoft/hummingbird.git/': The requested URL returned error: 403
169Running post deployment cleanup jobs… 🗑
170/usr/bin/git worktree remove github-pages-deploy-action-temp-deployment-folder --force
171Error: The deploy step encountered an error: The process '/usr/bin/git' failed with exit code 128 ❌
172Deployment failed! ❌

It might because tokens were rolled (secrets.ACCESS_TOKEN), need to investigate. Disabling for now.

Last successful deployment was 18 hours ago, so it is not related to rolled tokens.
Maybe it is transient?  It is not clear to me  if The requested URL returned error: 403 is due to perms or due to outage.


Rococo faucet broken: "timeout of 10000ms exceeded"

This is the only info wz have in the logs:
rococo-faucet-server-858bd5b849-w7pt4 faucet-server [2022-06-20T09:25:09.478] [INFO] default - 💸 sending tokens
rococo-faucet-server-858bd5b849-w7pt4 faucet-server [2022-06-20T09:25:19.477] [ERROR] default - ⭕ Oops, drip took more than 10000ms to answer

The issue was due to the RPC node not the Faucet itself.


Release clean up

There are 17 branches and 7 open pull requests. Some branches like ddp and embeddings-there-and-back-again seem important for v0, some less.
Let's delete/merge branches for v0 and tag rest as v1

This is done.


element-*: 1.9.6 -> 1.9.7

Motivation for this change
https://matrix.org/blog/2021/12/13/disclosure-buffer-overflow-in-libolm-and-matrix-js-sdk
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Closes https://github.com/NixOS/nixpkgs/issues/150552

The commit message is wrong. Should be 1.9.6 -> 1.9.7

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

2 packages failed to build:

element-desktop
element-desktop-wayland

 nix --experimental-features nix-command build --no-link --keep-going --option build-use-sandbox relaxed -f /home/sumner/.cache/nixpkgs-review/pr-150558/build.nix
error: hash mismatch in fixed-output derivation '/nix/store/cj06wjiha7ab79iiqcppqpz3k3l6rqrd-source.drv':
         specified: sha256-EUH7Pm2e/5+m/MLxg04Kup2+mpFx4mbht2mpQ6rd2LU=
            got:    sha256-bUzIIPNVgK2whQJoEZOaoa+jsJx4No+xji6hXK6wxFY=
error: 1 dependencies of derivation '/nix/store/1b1dwz9k1zmh59zx3kqcjpm95cb2b2i7-offline.drv' failed to build
error: 2 dependencies of derivation '/nix/store/pwkzn0cmrfib9s13gnalq2mp8x77cwm6-element-desktop-modules-1.9.7.drv' failed to build
error: 3 dependencies of derivation '/nix/store/7jf9cyqv74p912saakr838g5rknhyvl7-element-desktop-1.9.7.drv' failed to build
error: 3 dependencies of derivation '/nix/store/drvf7xwz4667lh6lhszzyvd4s22fy2i5-element-desktop-1.9.7.drv' failed to build
error: 2 dependencies of derivation '/nix/store/fbww6ilcvgqvdck0i6il49rbdam3dj85-review-shell.drv' failed to build

Link to currently reviewing PR:
https://github.com/NixOS/nixpkgs/pull/150558

2 packages failed to build:
element-desktop element-desktop-wayland

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

3 packages built:

element-desktop
element-desktop-wayland
element-web

Previous error was caused by old nixpkgs checkout.

691111d99ff resolves the stale hash
element-desktop tested, looks up to date and safe to me
Result of nixpkgs-review pr 150558 run on x86_64-linux [1](https://github.com/Mic92/>

3 packages built:

element-desktop
element-desktop-wayland
element-web

Should version and sha256 be also bumped in pkgs/applications/networking/instant-messengers/element/element-{desktop,web}.nix?
Element (Desktop) version is still reported with 1.9.2, olm with 3.2.3.
Was the update.sh script used in this update?

Element (Desktop) version is still reported with 1.9.2, olm with 3.2.3.

Where?

Should version and sha256 be also bumped in pkgs/applications/networking/instant-messengers/element/element-{desktop,web}.nix?

On which branch are you?

Sorry, was on the wrong PR. Comment was intended for https://github.com/NixOS/nixpkgs/pull/150589#issuecomment-992832683, which is 21.05 and does not yet inherit version and rev from pinData.


BUG: Bug: Alignment issue of the search bar and the search button

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
The search bar is very close and is touching the search button.

Record

[X] I agree to follow this project's Code of Conduct
[X] I have checked the existing issues
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@theeayushkumar


GC Status Bar

Is your feature request related to a problem? Please describe.
Sometimes the JDBC driver throws an OutOfMemoryError.  I have to change the DBeaver configuration and increase the heap size.  I would like to be able to monitor the DBeaver heap usage from the UI so I can see if DBeaver is going to run out of memory.
Describe the solution you'd like
Please add a GC status bar at the bottom of DBeaver.  The status bar should show the current heap usage and the committed heap size.  The current heap usage should update every second.
There should also be a garbage can so I can force a GC.  This is useful for clearing the heap after viewing a large result.
When I mouse over the GC status bar, the tooltip should show me the current heap size, committed heap size and the maximum heap size.
Here is a screenshot of the GC status bar from Eclipse IDE.

Describe alternatives you've considered
I could open Visual VM or JConsole to monitor the heap usage and force GC.  This is cumbersome.

It is already implemented. Please:

open Window>Preferences>General
enable Show heap status


[BUG] NullReferenceException on Insert with auto id and BsonDocument with _id=0

NullReferenceException on Insert with auto id and BsonDocument with _id=0
Version
LiteDB 5.0.2 and the latest from repo, Windows 10, net45
Describe the bug

Given a LiteCollection<BsonDocument> with auto id Int32.
Insert a BsonDocument with _id = 0.
-> NullReferenceException

Code to Reproduce
using (var db = new LiteDatabase(":memory:"))
{
    var test = db.GetCollection("Test", BsonAutoId.Int32);
    var doc = new BsonDocument() { ["_id"] = 0, ["p1"] = 1 };
    test.Insert(doc); // -> NullReferenceException
}

Expected behavior
This scenario works without exceptions and maybe sets the _id in the input document to the generated value.
But if for some reason this scenario is not valid then the exception should be different, some clear error.
Stack
>   LiteDB.dll!LiteDB.LiteCollection<LiteDB.BsonDocument>.Insert(LiteDB.BsonDocument entity) Line 27    C#
    MyLiteDB.exe!TryLiteDB.Program.Main(string[] args) Line 17  C#

Failed code due to null _id:
// checks if must update _id value in entity
if (removed)
{
    _id.Setter(entity, id.RawValue);
}

Thanks again @nightroman, this 3th-party fine tests are great for LiteDB

I have tried the change. It does not fail anymore, thank you (some workaround in my code will go).
I have some doubts about the details... The test code does not change the _id in the input document. So that in the test we may add doc["_id"].AsInt32.Should().Be(0); to the end.
But is this "right"? This is not consistent with strongly typed cases where input IDs are updated in "documents".

I assume that if you are using BsonDocument as T in GetCollection, you can omit _id in your BsonDocument entity (different when you use strong typed class with int or long id value).
Make sense to you?

This explanation makes sense, yes. But note that I cannot "omit _id in my
documents" in some scenarios because they are created from strongly typed
instances using the mapper Serialize. In theory, my Ldbc might want to
propagate these IDs back to input instances (I am not doing this now but...).
There is a bigger problem though, it looks like _id = 0 is inserted, i.e. this passes:
using (var db = new LiteDatabase(":memory:"))
{
    var test = db.GetCollection("Test", BsonAutoId.Int32);
    var doc = new BsonDocument() { ["_id"] = 0, ["p1"] = 1 };
    test.Insert(doc); // -> NullReferenceException
    doc["_id"].AsInt32.Should().Be(0); // _id not changed

    var r1 = test.FindById(1);
    Assert.Null(r1); //! but expected not null

    var r2 = test.FindById(0);
    Assert.NotNull(r2); //! but expected null
}

And another bigger problem.
Let's undo this change and create and run this new test for InsertBulk:
[Fact]
public void AutoId_Zero_Int_Bulk()
{
    using (var db = new LiteDatabase(":memory:"))
    {
        var test = db.GetCollection("Test", BsonAutoId.Int32);
        var doc = new BsonDocument() { ["_id"] = 0, ["p1"] = 1 };
        test.InsertBulk(new BsonDocument[] { doc });
        doc["_id"].AsInt32.Should().Be(1); // _id is updated

        var r1 = test.FindById(1);
        Assert.NotNull(r1); // _id = 1 is inserted
    }
}

It passes without the fix and fails with the fix applied.
This means:

The fix breaks working fine InsertBulk.
InsertBulk (old) updates _id in input BsonDocument (so for consistency, at least, Insert should, too).

It is labelled "Fixed". I just want to be sure that the recent remarks are taken into account. The fix is not quite right and it also introduces a regression.

I will back into this issue before new release

@mbdavid v5.0.3 is pushed with this change not finished. There may be problems. I see some in my tests in Ldbc.

Hi @nightroman, I needed release 5.0.3 because to track an important bug. But let's back to this issue:
About when engine should be use AutoId, we have 2 cases:

When you have a strong entity collection (that will be converted into BsonDocument before insert in database) you always have _id field with valid value (at lease if you are not using Nullable). In this case, engine needs remove _id in "empty" value (0 for Int32). Removing _id will use AutoId

When you have a BsonDocument collection you will not convert from any strong type. So, if user wants use AutoId they should leave _id missing (or with null).

So, IMO, when I insert this:
var col = db.GetCollection("col1", AutoId.Int32);
var doc = new BsonDocument() { ["_id"] = 0, ["p1"] = 1 };
col.Insert(doc)

The _id should be 0. If AutoId is used (and remove _id to auto increment), I will never can store _id = 0 in any case.

I have the case 3, a BsonDocument collection but I convert from a strong type
using BsonMapper.Serialize, then add these documents. So, documents have
existing _id values with 0 or nulls.
Before the change InsertBulk used to work like I expected. In this scenario it generated new _id,
inserted documents with new _id and updated _id in input documents. As if it were case 1.
Insert used to fail with NRE. It would be ideal if InsertBulk keeps the old behaviour
and Insert works the same way.
This worked (like expected) for InsertBulk before the change:
[Fact]
public void AutoId_Zero_Int_Bulk()
{
    using (var db = new LiteDatabase(":memory:"))
    {
        var test = db.GetCollection("Test", BsonAutoId.Int32);
        var doc = new BsonDocument() { ["_id"] = 0, ["p1"] = 1 };
        test.InsertBulk(new BsonDocument[] { doc });
        doc["_id"].AsInt32.Should().Be(1); // _id is updated

        var r1 = test.FindById(1);
        Assert.NotNull(r1); // _id = 1 is inserted
    }
}

If you think the new behaviour is how it should be, then I should adapt to the scenario like this:
I have a BsonDocument collection with auto id Int32 and a bunch of
documents with _id = 0. I have to remove these _id, something that LiteDB
can do easily (and probably used to do for InsertBulk). But I cannot because
I do not know if the collection is with auto id or not, this info is not public.

But in this scenario, why are you not using specific <T> to get collection? Or, in this case, can you remove _id before send to Insert?

All collection are AutoId. Each document are, or not, autoincrement if contains or not an _id.

why are you not using specific <T> to get collection?

My context is Ldbc, the PowerShell module, helper for scripts. Long story
short, PowerShell and generics are not friends. Basically everything generic
is not usable in PowerShell. Workarounds are ugly and only advanced users
know them. That is why wrappers like Ldbc make sense.
This might be worked around if LiteDB provides a not generic method for getting
a typed collection with non-generic signature method, i.e. with a Type
parameter. There is not such a method.

Or, in this case, can you remove _id before send to Insert?

I would be able to do so if LiteCollection exposes the auto id type.
I would need to write and use my own (copy/paste from LiteDB):
private bool RemoveDocId(BsonDocument doc)
{
    if (_id != null && doc.TryGetValue("_id", out var id))
    {
        // check if exists _autoId and current id is "empty"
        if ((_autoId == BsonAutoId.Int32 && (id.IsInt32 && id.AsInt32 == 0)) ||
            (_autoId == BsonAutoId.ObjectId && (id.IsNull || (id.IsObjectId && id.AsObjectId == ObjectId.Empty))) ||
            (_autoId == BsonAutoId.Guid && id.IsGuid && id.AsGuid == Guid.Empty) ||
            (_autoId == BsonAutoId.Int64 && id.IsInt64 && id.AsInt64 == 0))
        {
            // in this cases, remove _id and set new value after
            doc.Remove("_id");
            return true;
        }
    }

    return false;
}

But I cannot because collection does not expose its auto id type. That is,
given a collection, I do not know its _autoId in the above code.

Like I mentioned, in 5.0.2 InsertBulk worked in the expected and desired
way for untyped collections and untyped documents. I think this was right.
But Insert used to NRE. IMHO, Insert should have been corrected and
made working in the same way, but InsertBulk should not be changed.

Concrete example:
https://github.com/nightroman/Ldbc/blob/37aaf761eb789dd4dfced03e4dc373deb8204e2d/Tests/Class.test.ps1#L5
Here we get an untyped collection "Log" with auto id Int32:
https://github.com/nightroman/Ldbc/blob/37aaf761eb789dd4dfced03e4dc373deb8204e2d/Tests/Class.test.ps1#L28
and then create some class instances and send them to Add-LiteData $log.
Add-LiteData converts input objects to BsonDocument using BsonMapper.Serialize.
These documents have _id = 0. Then Add-LiteData calls insert on passed $log
with input documents.

I pushed Ldbc 0.6.3 with this workaround:
if (doc.TryGetValue("_id", out var id))
{
    if (id.IsNull
        || id.IsInt32 && id.AsInt32 == 0
        || id.IsObjectId && id.AsObjectId == ObjectId.Empty
        || id.IsGuid && id.AsGuid == Guid.Empty
        || id.IsInt64 && id.AsInt64 == 0L)
    {
        doc.Remove("_id");
    }
}

I call this before every Insert, InsertBulk, Upsert for each input BsonDocument.
I do not think it's quite right:

It's tedious and maybe slightly hurts performance.
I do not (and cannot) take into account collection auto id type, so I have to remove any "default" id.

All in all, this workaround kind of works.
Feel free to close the issue, Insert does not NRE anymore.

Here is the old possibly related issue https://github.com/mbdavid/LiteDB/issues/1149
OP uses the scenario like mine and gets the same problem (id is not generated).


Activating Open Collective

Hi, I'm making updates for Open Collective. Either you or another core contributor signed this repository up for Open Collective. This pull request adds financial contributors from your Open Collective https://opencollective.com/zcoin ❤
What it does:

adds a badge to show the latest number of financial contributors
adds a banner displaying contributors to the project on GitHub
adds a banner displaying all individuals contributing financially on Open Collective
adds a section displaying all organizations contributing financially on Open Collective, with their logo and a link to their website

P.S: As with any pull request, feel free to comment or suggest changes.
Thank you for your great contribution to the Open Source community. You are awesome! 🙌
And welcome to the Open Collective community! 😊
Come chat with us in the #opensource channel on https://slack.opencollective.com - great place to ask questions and share best practices with other Open Source sustainers!

LGTM 👍


Add Unit test coverage

what does this PR do:

Using Pytest for unit testing codes. This PR improves coverage from 0 to 62%.
add docs for perform testing
refactor code, make it easier for testing, remove a few duplicated functions.
rename the name of dir to drain_service for testing to be able to import it
minor things such as add .gitignore

should have no error or bugs, but still need to do end-to-end testing in a live system after we release opni V0.8

Please address the merge conflicts.


tenacity.RetryError: RetryError[<Future at 0x7faeafc5ffd0 state=finished raised JSONDecodeError>]

When I set up everything and  python3 startup.py "Write a cli snake game", I get this error.
""",
"Logic Analysis": [
    ["main.py","Contains the main game loop and user input handling"],
    ["game.py","Contains the game logic, including the snake and food classes"],
    ["snake.py","Contains the Snake class and its methods for moving and eating food"],
    ["food.py","Contains the Food class and its method for generating new food"]
],
"Task list": [
    "main.py",
    "game.py",
    "snake.py",
    "food.py"
],
"Shared Knowledge": """
    'game.py' contains the Game class, which manages the game state and controls the snake and food.
    'snake.py' contains the Snake class, which represents the snake and its movements.
    'food.py' contains the Food class, which represents the food and generates new food when eaten by the snake.
""",
"Anything UNCLEAR": "We need to decide on the game's width and height, which will be specified in the API request when starting a new game."

}
[END]
Traceback (most recent call last):
  File "/home/user/anaconda3/envs/py11/lib/python3.11/site-packages/tenacity/_asyncio.py", line 50, in __call__
    result = await fn(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/actions/action.py", line 78, in _aask_v1
    parsed_data = CustomDecoder(strict=False).decode(content)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/utils/custom_decoder.py", line 297, in decode
    return super().decode(s)
           ^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/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)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/user/cx/qianwen/MetaGPT-main/startup.py", line 72, in <module>
    fire.Fire(main)
  File "/home/user/anaconda3/envs/py11/lib/python3.11/site-packages/fire/core.py", line 141, in Fire
    component_trace = _Fire(component, args, parsed_flag_args, context, name)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/site-packages/fire/core.py", line 466, in _Fire
    component, remaining_args = _CallAndUpdateTrace(
                                ^^^^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/site-packages/fire/core.py", line 681, in _CallAndUpdateTrace
    component = fn(*varargs, **kwargs)
                ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/cx/qianwen/MetaGPT-main/startup.py", line 68, in main
    asyncio.run(startup(idea, investment, n_round, code_review, run_tests, implement))
  File "/home/user/anaconda3/envs/py11/lib/python3.11/asyncio/runners.py", line 190, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "/home/user/cx/qianwen/MetaGPT-main/startup.py", line 47, in startup
    await company.run(n_round=n_round)
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/software_company.py", line 60, in run
    await self.environment.run()
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/environment.py", line 67, in run
    await asyncio.gather(*futures)
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/roles/role.py", line 240, in run
    rsp = await self._react()
          ^^^^^^^^^^^^^^^^^^^
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/roles/role.py", line 209, in _react
    return await self._act()
           ^^^^^^^^^^^^^^^^^
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/roles/role.py", line 168, in _act
    response = await self._rc.todo.run(self._rc.important_memory)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/cx/qianwen/MetaGPT-main/metagpt/actions/project_management.py", line 184, in run
    rsp = await self._aask_v1(prompt, "task", OUTPUT_MAPPING, format=format)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/site-packages/tenacity/_asyncio.py", line 88, in async_wrapped
    return await fn(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/site-packages/tenacity/_asyncio.py", line 47, in __call__
    do = self.iter(retry_state=retry_state)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/anaconda3/envs/py11/lib/python3.11/site-packages/tenacity/__init__.py", line 326, in iter
    raise retry_exc from fut.exception()
tenacity.RetryError: RetryError[<Future at 0x7faeafc5ffd0 state=finished raised JSONDecodeError>]

This is because LLM did not return the content in the required JSON format. You can try it with GPT-4; GPT-4 won't have this issue.

This is because LLM did not return the content in the required JSON format. You can try it with GPT-4; GPT-4 won't have this issue.

If we're using LiteLLM with various ollama models to run locally (so far I've tried mistral, deepseek-coder, and codellama), do you happen to have any suggestions on how we could resolve this issue? TIA

@jonny255 You can ref to https://github.com/geekan/MetaGPT/issues/526 to tryintegration_with_open_llm.md with REPAIR_LLM_OUTPUT: true which will try repair open llm output but it's in experimental. If you have new error logs, you can upload here.

#500

This is because LLM did not return the content in the required JSON format. You can try it with GPT-4; GPT-4 won't have this issue.

If we're using LiteLLM with various ollama models to run locally (so far I've tried mistral, deepseek-coder, and codellama), do you happen to have any suggestions on how we could resolve this issue? TIA

Did you get some results? Because I have tried codellama with ollama and litellm and everytime I get new error.


dependence not found?

Could not find com.godaddy.android.colorpicker:compose-color-picker:0.4.1.

Hi @LXD312569496
I can see it in maven-central do you use it in a multiplatform project or a regular android one?

multiplatform project

could you please tell me which platforms are you targeting?

@LXD312569496 can you try  com.godaddy.android.colorpicker:compose-color-picker-jvm:0.4.1 and let us know if you still see this issue?

Hello！this is my code！
val commonMain by getting {
implementation ("com.godaddy.android.colorpicker:compose-color-picker:0.3.1")
}
0.3.1 can work。
0.4.1 can not work，build failed。

Thanks for the report - we see the last build failed to release the com.godaddy.android.colorpicker:compose-color-picker:0.4.1. Since fixed the build, and com.godaddy.android.colorpicker:compose-color-picker:0.4.2 should work. Please let us know if not. Thank you 🙏🏻

ok


[PECO-1433] Support Databricks OAuth on GCP

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (f3c53a5) 90.59% compared to head (9f3bd40) 90.61%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #224      +/-   ##
==========================================
+ Coverage   90.59%   90.61%   +0.02%
==========================================
  Files          62       62
  Lines        1435     1439       +4
  Branches      245      246       +1
==========================================
+ Hits         1300     1304       +4
  Misses         84       84
  Partials       51       51

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


dokan: Add version <IP_ADDRESS>0

attempting again after issues with #3783

If you dont think it will work feel free to reject, hadn't realised that. Otherwise renamed, thanks.


Hello world in Hindi (India)

#351

paid!

This is the translation of the phrase in Hindi. I think you can write "Hello World" as is in Hindi without translating since it is common.


Exploit free monoid to defer monoidal computations

Currently, embedded  in the type of Signal is a free monoid:
newtype Signal a = mkSignal { signal :: Interval -> [a] }

This means we have all the means to defer monoidal operations until we actually process the data.

closed by #5


Spack Improvements

Our current spack package doesn't deal with most of the options available in the configure.

make sure we understand how spack deals with standard "--with" or "--enable"
possibly modify/standardize configure script for it

Done during the last PR to spack for aml


DictionaryParser#parseExtendedWord as the turms document can npe

上述所有列中，除了word列必须存在之外，其他所有列都可以不存在.

this line code need fix

and also the document for examle is wrong ！！

The code is quite simple, and no NPE will occur.


WIP: Add BuildCrossCheck integration

Add the BuildCrossCheck GitHub Check to our PRs to have MSBuild errors and warnings be attached to the file they are triggered by and visible in a GitHub Check.
Upgrade Nuke to 0.13.0
Refactor azure-pipelines.yml to reduce duplication.

TODO:

[ ] Move BuildCrossCheck into a template file
[x] Try to use a variable instead of a specific value for the BuildCrossCheck repo name.

This is blocked on justaprogrammer/BCC-MSBuildLog#26

Seems that BuildCrossCheck isn’t being supported so I’m just going to close this PR.


Create a "load last session" button

@hanhou
I'm not sure how this interacts with the auto-training system. But there should be a button that loads the last session from the current mouse, so the RAs don't need to click around and find it.

Is this kind of solved by #206 @XX-Yin ?

Is this kind of solved by #206 @XX-Yin ?

Yes, it's kind of solved in #206, but need to make some changes to load the last session by default.


Fix ug

Final changes :D

Codecov Report
Base: 59.86% // Head: 59.86% // No change to project coverage :thumbsup:

Coverage data is based on head (5f9374b) compared to base (4f81971).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #224   +/-   ##
=========================================
  Coverage     59.86%   59.86%
  Complexity      686      686
=========================================
  Files           118      118
  Lines          2706     2706
  Branches        315      315
=========================================
  Hits           1620     1620
  Misses          949      949
  Partials        137      137

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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


hasIn: protection against undefined object

sometimes people write code like this:
let obj = null
hasIn('test', obj) && prop('test', obj)

Yes.  We're slowly allowing data-verification to slip into the library.  But this passes my smell test: if we think of the function as answering a question, can we reasonably answer it given this bad data?  Yes, we know that hasIn(foo, null) should be false.  So I"m all for this.


ci/bazel: use consistent versions of external deps (#415).

This refactoring of the references to external deps makes it cleaner to maintain both the CI and
developer-local Bazel flows.

@mattklein123 for review.
CC @dnoe since this will be relevant to including the backwards stack trace library dependency.

Does this need to be split into 2 commits so that it will pass CI? (First for build image change, which we can then push).

@mattklein123 Yes, I'll do the split.


Unnecessary Filter on Parquet datasources

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
Now that Parquet supports pushing down predicates to the scanning phase, we could remove the additional filter, as we're no longer providing an inexact filter.
Describe the solution you'd like
Add a method to FileFormat that returns whether the format supports exact filter pushdown.
The supports_filter_pushdown function should be updated accordingly.
Describe alternatives you've considered
Additional context

I think this may be a duplicate of https://github.com/apache/arrow-datafusion/issues/4028

Yeah, it is. Thanks @tustvold


Support OAS 3.1

Is your feature request related to a problem? Please describe.
OAS 3.1 hasn't settled yet but is quite close to being final (afaik). I couldn't find any issue / roadmap tracking progress for this - please close the issue & hint me if I'm blind.
Describe the solution you'd like
Support OAS 3.1 RC0 / JSON-Schema 2019-09 and keep on improving until it's final.

Good call-out @black-snow still waiting for the third-party libraries to catch up 👀


Rust build infrastructure missing protobuf-compiler

See https://github.com/apache/rocketmq-clients/actions/runs/4587632257/jobs/8102072995?pr=453 for more information.
thread 'main' panicked at 'Could not find `protoc` installation and this build crate cannot proceed without
    this knowledge. If `protoc` is installed and this crate had trouble finding
    it, you can set the `PROTOC` environment variable with the specific path to your
    installed `protoc` binary.If you're on debian, try `apt-get install protobuf-compiler` or download it from https://github.com/protocolbuffers/protobuf/releases

Fixed by #453 already.


Add method exactNearestNeighborsJoin to match pyspark LSH approxSimilarityJoin

The method leverages the existing kneighbors() function.
Tests and docstring added.

build

build

build


mypy updates

Description
I noticed that mypy is not including all files in dbt/core
$ mypy core/dbt
Success: no issues found in 105 source files

$ find core/dbt -type f -name "*.py" | wc -l
     140

I think this is because mypy is ignoring some modules that do not include a __init__.py file. E.g. core/dbt/adapters core/dbt/context core/dbt/deps.
We should:

adding missing __init__.py files
fix mypy issues that we have been not accounting for
update mypy settings so that we are able to run mypy in the root directory (instead of only running for dbt/core)
upgrade mypy to latest and greatest

Example: https://github.com/fishtown-analytics/dbt/pull/3416


cloudtime.to video - RegexNotFoundError: Unable to extract title

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like that [x])
Use Preview tab to see how your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.05.14. If it's not read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2017.05.14

Before submitting an issue make sure you have:

[x] At least skimmed through README and most notably FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The purpose of this issue is a bug report. Full verbose output follows:
$ youtube-dl -F --verbose http://www.cloudtime.to/video/e87faf2d0b099
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-F', u'--verbose', u'http://www.cloudtime.to/video/e87faf2d0b099']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2017.05.14
[debug] Python version 2.7.10 - Windows-XP-5.1.2600-SP3
[debug] exe versions: ffmpeg N-71403-g415f1fa, ffprobe N-71403-g415f1fa
[debug] Proxy map: {}
[cloudtime] e87faf2d0b099: Downloading video page
[cloudtime] e87faf2d0b099: Downloading continue to the video page
ERROR: Unable to extract title; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "PYTHON_ROOT\lib\site-packages\youtube_dl\YoutubeDL.py", line 760, in extract_info
    ie_result = ie.extract(url)
  File "PYTHON_ROOT\lib\site-packages\youtube_dl\extractor\common.py", line 433, in extract
    ie_result = self._real_extract(url)
  File "PYTHON_ROOT\lib\site-packages\youtube_dl\extractor\novamov.py", line 81, in _real_extract
    title = self._html_search_regex(self._TITLE_REGEX, webpage, 'title')
  File "PYTHON_ROOT\lib\site-packages\youtube_dl\extractor\common.py", line 791, in _html_search_regex
    res = self._search_regex(pattern, string, name, default, fatal, flags, group)
  File "PYTHON_ROOT\lib\site-packages\youtube_dl\extractor\common.py", line 782, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract title; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description of the issue

Trying to download video from http://www.cloudtime.to/video/e87faf2d0b099
I'm able to watch it from the browser at the time of writing this issue.
I installed/upgraded youtube-dl with pip install -U youtube-dl

Hi @dstftw !
Is it duplicate of Issue #11331?
Issue #11331 mentions filekey, but in this issue mention title.
Also, tracebacks show different function calls.
Thanks anyway :-D


Fix a bug with authentication API endpoint returning internal server error under gunicorn if auth.api_url config option was not set

This pull request fixes a bug with POST /auth/v1/tokensAPI endpoint returning internal server error when running under gunicorn without auth.api_url config option being set.
NOTE: First I couldn't reproduce the issue, but it turns out it only happens when using gunicorn deployment.
When running st2auh directly, the WSGI implementation simply casts all the "None" header values to empty strings, but that's not the case for gunicorn.
Originally reported here - https://forum.stackstorm.com/t/ldap-error-handling-api-call-failed-expected-string-or-buffer/893.

@armab oops, done - b8b874fcadc471d2db88011c9ef9e912a6eaa87f,
I already had it ready locally, I was just waiting to open a PR first so I get a PR number which I can reference in the changelog :)


MWPW-137717 | New block - Basic Brick & Masonry

This is a new Milo block that allows us to create a grid with bricks of size (full, half, thwo-third or one third) widths.
These are arranged into a masonry layout once section metadata is applied.
The bricks can be authored as fragments or directly on docx and will be arranged via section metadata.

The bricks will be authored as individual blocks and then arranged via the masonry layout.
The layout is not fixed, the different section layouts can be paired together (like 1:1:1 followed by 1:2 ).
Background option for color + image (multiple viewport).
Option to author multiple background image for different media ports.
Text alignment - left, center, align-center.
Default text sizes with override option.
Clickable brick (Only if brick has single link)

Adding poc links -
https://masonry--milo--aishwaryamathuria.hlx.page/drafts/mathuria/masonry/poc/poc-1
https://masonry--milo--aishwaryamathuria.hlx.page/drafts/mathuria/masonry/poc/poc-2
Resolves: MWPW-137717
Test URLs:

Before: https://main--milo--adobecom.hlx.page/drafts/mathuria/masonry/poc/poc-2?martech=off
After: https://masonry--milo--aishwaryamathuria.hlx.page/drafts/mathuria/masonry/poc/poc-2?martech=off

ould be like calling a product, "iPhone Basic" or "MacBoo

@auniverseaway I have made the required changes for suggestion. The block name is now be 'brick' in place of 'basic-brick'

@aishwaryamathuria  - Just a thought, have you considered using the section-metadata layout: masonry rather than style: masonry-layout? The usage of the layout key is only used w/ 2-5 up fractions, but this seems like a great candidate for this section-meta key to separate a style from a layout. Thoughts?

Without having looked too deep into the code, I was wondering the following from an authoring perspective: assuming the image is the same across mobile, tablet and desktop, wouldn't it be more authoring friendly if only a single (high-res desktop) image needs to be added to the brick? The brick block could then leverage the Fastly Image Optimizer service to dynamically request optimized images for each surface. All other surfaces would be optional.
This would also save on the number of DOM elements.

d also save on the number of DOM elemen

@honstar The brick currently supports image for multiple or combined viewports bots. In case same image is required across all viewports the author can in that case add only one image as well.

@honstar The brick currently supports image for multiple or combined viewports both. In case same image is required across all viewports the author can in that case add only one image as well.

Perfect, thanks a lot for pointing this out @aishwaryamathuria 👍 Please make sure to add this to documentation.

Without having looked too deep into the code, I was wondering the following from an authoring perspective: assuming the image is the same across mobile, tablet and desktop, wouldn't it be more authoring friendly if only a single (high-res desktop) image needs to be added to the brick? The brick block could then leverage the Fastly Image Optimizer service to dynamically request optimized images for each surface. All other surfaces would be optional.

Authors typically want a whole new image with an aspect ratio that better matches the viewport, not just a better optimized image.

Is it not possible to have more than three bricks on one row? Doing some testing and if I just use the brick variant, with no sizing, I can only get three on one row.
I don't know if we currently need to support all 12 options but I would think support for more than three blocks on a row (up to 6?) would be needed. Maybe I'm wrong. Happy to hear others thoughts here.
cc: @ryanmparrish @auniverseaway

I also think if we are doing a masonry/grid block we need to come up with more scaleable brick size variants. If we need to support more than 3 elements on a row the 1/3, 2/3 naming starts to get awkward.
If we are supporting a 12 col grid I think size variants like brick-1-column through brick-11-column, with brick-full-width equalling the full 12 columns, is easy to author and combine. The goal is to equal 12. So, I could easily author a layout like brick-4-column with brick-8-column to create a 2/3's layout

@aishwaryamathuria  - I agree w/ @rgclayton, we should have good defaults when authoring any number of bricks in a section-style: masonry. I would think that if 4 bricks are in a masonry section, they will fill the space equally w out any additional brick variants and if any of the bricks are declared to be bigger than the grid will respect that. Im all for the best option, the cooking measurement of one-third etc doesn't scale well when we're talking 1-12 potential width options. I feel like authors are used to the 12 grid system so it should come naturally to say grid-4-column when in a masonry, or maybe grid-4-of-12 by clearly stating the bounds. Just some thoughts as Im not totally sold on the authoring pattern just yet.

Thanks @salonijain3. Comments inline.

Here is my two cents on this matter:
The Jira ticket explicitly indicates that the masonry block was initially constructed for the homepage, and the objective is to replicate the same functionality in Milo. The authoring format on the homepage masonry block aligns with two-third and full grid brick layouts.

Sometimes these tickets need to be interpreted with better clarity. They are not definite and they often need more questions asked to get on the right track. Here's what I'm reading from the ticket:

"As an author in Milo, I want the ability to use Masonry on a 12 column grid with the [new] basic-brick blocks. "

Masonry was developed for the priority use case of the homepage and supports the homepage-brick block variants. It remains on the homepage repo but needs to be contributed to Milo core for extended use cases.

The ticket mentions a 12 col grid that needs to be developed for extended use cases.  I would think that's where this additional brick sizing comes in to play (more than three elements on a row).

It is worth considering the potential for confusion among authors if we adopt different authoring approaches for the same block. Maintaining consistency in how we author this block can enhance clarity and ease of use.

This is exactly what we are trying to avoid. The homepage has a small handful of authors. Milo has many, many, many, (20x?) more authors. Maintaining consistency for a few and creating difficult patterns for the many isn't a good plan.

From a design standpoint, current masonry figma is currently constrained to a minimum one-third grid. Expanding the grid size could pose challenges, as the existing font sizes may not translate seamlessly. Creating smaller grids would necessitate distinct design specifications, adding complexity.

Again, the ticket says to extend the use cases beyond the homepage.  If we are going to do a 12 col masonry/grid block, lets make a 12 col masonry block.

Additionally, following Milo Academy's approach, it is important not to address issues until they become tangible problems. Currently, there are no use cases for the masonry block beyond those developed here, and the design for additional grids has not been established.

I agree with this. However, again we are extending the use cases for this and we are also setting up patterns to grow with. If we have bad patterns to start with it makes growing much more difficult. Lets spend the time now to create good patterns to move forward with.

P.S. From naming perspective for masonry, if we name it as masonry instead of masonry-layout, the css will start conflicting with the homepage css.

I thought the Homepage masonry block is prefixed with homepage-masonary? Is that not the case? masonry-layout is clumsy. It's already a layout, no need to say it's a layout again.

I'm not able to spend a ton of time on this to get in the weeds, but I think there's some general guidance that can be applied here. Again, I'm not even sure where things stand right now.
How homepage built the solution should have zero impact on the implementation in Milo. Why?

Homepage specifically has a very small number of pages (yes, including geos & fragments). If there is a conflict with Milo principles (more on this later), homepage has a smaller blast radius than shipping bad patterns in milo.
If a consuming team builds something in isolation, or gets feedback from milo and doesn't follow it, that's not Milo's problem when that team tries to contribute it back (not placing blame here, I know Brahmos is trying to port something they didn't originally build).

Other reminders:

We (Milo) will never ship something we don't agree with, or are not willing to support. Every feature contributed to Milo impacts hundreds of authors, tens of sites, and hundreds of thousands of pages. The overhead on training a non-ideal solution is extremely high. We start creating bad and inconsistent patterns that we then need to train on why things do not follow our previously documented guidelines. We won't always get this right, but we should always try.
We should never be in a rush to ship. The cost of being in a rush means bad content, bad docs, bad patterns, bad performance. I've seen this soooo many times.
Rule of Chris: never trust JIRA. It's likely wrong.
With a few exceptions, blocks should not have dependencies on other blocks. The block should just work and not look weird if you put it on a page with no training. Not sure if that is or isn't the case here.
Section-metadata should only impact the layout of blocks, not the block content itself. (not sure if this is the case here)

@salonijain3 @aishwaryamathuria Seeing what I'm seeing, it doesn't look to far off in the word doc. I like the brick / masonry connection... despite knowing we're going to ship section metadata (advanced) that will do something similar. The background placement stuff seems pretty heavy... I would expect good defaults there, but the samples don't show that. We shouldn't require:

Per-breakpoint images (to @honstar's point)
Per-breakpoint image sizing / positioning

For this to work. Can you put some simpler examples together @aishwaryamathuria?
On the naming stuff, we can also "polyfill" on the Milo side inside the block to avoid collisions. If we want authors to say, "masonry" instead of "masonry-layout" (as an example) we can easily polyfill these naming conventions in the block so they map to non-conflicting CSS in Milo.

FWIW, this is probably how I would build masonry. The complexity of layout should be deferred to the parent section as it is what should be saying how big the items are. Items (bricks) should only care about their internal contents.
I think when you put layout on blocks, you will run into issues because you change one block, and then the other one below falls out. You end up scrolling up and down your document while authoring to change each block. What is below is a little more stable because it's centrally managed by the parent section.
I just kinda think, if you want this kind of super flexible control, lets not do half measures and lets lean into it. Give something powerful enough that it crushes all these use cases.

@auniverseaway @ryanmparrish @rgclayton
We will go ahead and syncup with the XD to review the block design to support the mentioned requirements and media breakpoints for supporting the suggested authoring.
Once we have the final requirements we will work on the section metadata - advanced variant for arranging the blocks inside it with the mentioned style.
We will check in the gap align and justify fields as currently they are not authorable and if they are in the scope.
As for the row field, if we support mobile tablet and desktop we will have some fields with null values as number of rows in mobile will be larger (if it goes for one column) and in desktop it will be smaller if it goes for more that 2 blocks in one row.
If the scope requires only one column layout in mobile and 2 column layout in tablet then probably we can have it fixed for these screens and have row styling requested for desktop? thoughts
CC: @salonijain3 @dstrong23

Creating a new js section-metadata-advanced.js to contain the code for advanced variant that would handle this grid layout.

After talking with Chris about this one the answer is no. No new section-metadata-advanced.js. Keep code in section-metadata.js to more easily leverage other functionality already in place in this file.
cc: @aishwaryamathuria @salonijain3 @auniverseaway

Creating a new js section-metadata-advanced.js to contain the code for advanced variant that would handle this grid layout.

FWIW, section-metadata.js is 52 lines. I think it's overkill to add another file (request headers, etc.) to add this.

From my email on this topic...

Hopefully, I understand the details correctly…
When I said, “… this is probably how I would build masonry.” about advanced section metadata, it was really a guide for exploration at a later date. Given the research needed, I would not tightly couple these ideas.
If we think we can ship an architecturally elegant solution with simple authoring patterns in the [URGENT] timeline, great… but I have my doubts. I think doing section-metadata (advanced) correctly will take more research than we have time for.
This means we are likely shipping a non-ideal solution in brick / masonry now, but I think that’s the lesser of evils. I don’t want poor authoring patterns in the wild more than we have to and I think my advanced section metadata idea needs to bake more. And yes, this comes at the expense of having overlap between what brick / masonry does today and what section-metadata will do tomorrow.

In short, I don't think you should try to ship advanced section-metadata and I think it requires more research than the teams (both Brahmos and Milo) have time for.

In that case should we go with the masonry layout with the current authoring?

I think putting the layout widths on the items is problematic and causes a lot of extra authoring and confusion.
I would maybe use a custom row in section-metadata that masonry owns and you can play in that space for your layouts.
When you put layout on the individual blocks, it's creates problems in syncing content...
You're scrolling up and down the page to see what the siblings are. "Did I put 1/3 on the block above or 2/3?"
Here's my ideal:

Ship a custom key for masonry with your layout options (feel free to steal ideas from advanced section).
If 1 cannot be done in a reasonable time, ship what you have above.

In that case should we go with the masonry layout with the current authoring?

I think putting the layout widths on the items is problematic and causes a lot of extra authoring and confusion.
I would maybe use a custom row in section-metadata that masonry owns and you can play in that space for your layouts.
When you put layout on the individual blocks, it's creates problems in syncing content...
You're scrolling up and down the page to see what the siblings are. "Did I put 1/3 on the block above or 2/3?"
Here's my ideal:

Ship a custom key for masonry with your layout options (feel free to steal ideas from advanced section).
If 1 cannot be done in a reasonable time, ship what you have above.

Thanks @auniverseaway We can work on point 1 by pulling inspiration from the advanced section. Have a row field for masonry which will be processed and applied only in case the layout is set to masonry. Rows will be processed and used for brick size evaluation only is layout is set to masonry.

CC: @salonijain3 @dstrong23 @ccongerp @rgclayton @ryanmparrish

I think this is what Chris meant by a "custom row" in section-metadata
An idea for the width values - the width values in my example are easy to expand upon when needed and to me are easier to understand the layout I would be getting (the max equaling 12 columns per row). The order of the widths would correspond to the order the bricks are in the section.
This layout would create a 1/3 - 2/3 layout for the the first two bricks.
A half width row for the second brick
A full width row for the  last brick

2 tiny notes:

in the homepage version, the two-third-grid variant is called two-thirds-grid. That personally sounds more natural to me
I'm curious what the purpose of the new brick block is.  Is it basically just the text block or does it have special functionality?  The section CSS doesn't seem to need the children to be "bricks" to control the width, so just curious.

In that case should we go with the masonry layout with the current authoring?

I think putting the layout widths on the items is problematic and causes a lot of extra authoring and confusion.
I would maybe use a custom row in section-metadata that masonry owns and you can play in that space for your layouts.
When you put layout on the individual blocks, it's creates problems in syncing content...
You're scrolling up and down the page to see what the siblings are. "Did I put 1/3 on the block above or 2/3?"
Here's my ideal:

Ship a custom key for masonry with your layout options (feel free to steal ideas from advanced section).
If 1 cannot be done in a reasonable time, ship what you have above.

Thanks @auniverseaway We can work on point 1 by pulling inspiration from the advanced section. Have a row field for masonry which will be processed and applied only in case the layout is set to masonry. Rows will be processed and used for brick size evaluation only is layout is set to masonry.

CC: @salonijain3 @dstrong23 @ccongerp @rgclayton @ryanmparrish

I think this is what Chris meant by a "custom row" in section-metadata
An idea for the width values - the width values in my example are easy to expand upon when needed and to me are easier to understand the layout I would be getting (the max equaling 12 columns per row). The order of the widths would correspond to the order the bricks are in the section.
This layout would create a 1/3 - 2/3 layout for the the first two bricks. A half width row for the second brick A full width row for the last brick

@rgclayton We can use the proposed authoring for arranging the bricks in place of a multiple row format. This authoring looks different from @auniverseaway suggestion of row wise arrangement. I believe that this change have already been reviewed by you and Chris, We can implement this in place of using the layout+rows both.
I will make the required changes for this authoring in the current PR.
CC: @salonijain3 @dstrong23 @ccongerp

@auniverseaway @rgclayton @ryanmparrish
We have made the suggested change as mentioned in https://github.com/adobecom/milo/pull/1515#issuecomment-1840064577 in the PR. Section metadata would now directly control the size and layout and it would not need to be specified at the brick level.
Author can add new key 'masonry' and specify the div spans (ranging from 1 to 12) as required. The sizes can be added in multiple or single line as required.
Could you re-review the PR ?

CC: @salonijain3 @dstrong23 @ccongerp

2. I'm curious what the purpose of the new brick block is.  Is it basically just the text block or does it have special functionality?  The section CSS doesn't seem to need the children to be "bricks" to control the width, so just curious.

From my screenshot? If so, that was just a simple example of blocks. No new brick block. My main point revolved around the section metatdata
cc: @vivgoodrich

I'm curious what the purpose of the new brick block is.  Is it basically just the text block or does it have special functionality?  The section CSS doesn't seem to need the children to be "bricks" to control the width, so just curious.

From my screenshot? If so, that was just a simple example of blocks. No new brick block. My main point revolved around the section metatdata
cc: @vivgoodrich

When I look at files changed there is a js and CSS file for blocks/brick

I'm curious what the purpose of the new brick block is.  Is it basically just the text block or does it have special functionality?  The section CSS doesn't seem to need the children to be "bricks" to control the width, so just curious.

From my screenshot? If so, that was just a simple example of blocks. No new brick block. My main point revolved around the section metatdata
cc: @vivgoodrich

When I look at files changed there is a js and CSS file for blocks/brick

I'm curious what the purpose of the new brick block is.  Is it basically just the text block or does it have special functionality?  The section CSS doesn't seem to need the children to be "bricks" to control the width, so just curious.

From my screenshot? If so, that was just a simple example of blocks. No new brick block. My main point revolved around the section metatdata
cc: @vivgoodrich

When I look at files changed there is a js and CSS file for blocks/brick

@vgoodric The brick block is not similar to text block. It is a new block that has custom requirements (requirements listed in MWPW-137717) . And it can be arranged via masonry layout in multiple row and column format.

So I feel bad because it looks like the work to move sizing information off of the bricks and into the section metadata has already been completed.  But I checked with Mimi and Christine and we don't want to use this system on homepage.  To be fair, if you had content where bricks were designed to be interchangeably used at multiple sizes, I see the advantage to this new system.  But all of our blocks only look right at the specific size they were built for.  So being able to look at a brick's source and know what size it's supposed to be to look right is really helpful.  And then everywhere we put the brick, it's automatically the right size.
As the 2 that have spent the most time building and authoring content in a masonry layout, I put a lot of stock in Christine and Mimi's opinion.  And we feel strongly that we don't want to lose the option to just put the size right on the brick (and have a default size so most bricks don't need it). But maybe we should open it up to some author feedback?  Maybe we want to support both?
@auniverseaway @aishwaryamathuria

So I feel bad because it looks like the work to move sizing information off of the bricks and into the section metadata has already been completed. But I checked with Mimi and Christine and we don't want to use this system on homepage. To be fair, if you had content where bricks were designed to be interchangeably used at multiple sizes, I see the advantage to this new system. But all of our blocks only look right at the specific size they were built for. So being able to look at a brick's source and know what size it's supposed to be to look right is really helpful. And then everywhere we put the brick, it's automatically the right size.
As the 2 that have spent the most time building and authoring content in a masonry layout, I put a lot of stock in Christine and Mimi's opinion. And we feel strongly that we don't want to lose the option to just put the size right on the brick (and have a default size so most bricks don't need it). But maybe we should open it up to some author feedback? Maybe we want to support both?
@auniverseaway @aishwaryamathuria

My 2 cents.
@vivgoodrich Can the homepage not continue to operate with it's current set up once this is merged into Milo?
It makes sense to have the homepage tailored to a more specific set up since it's the homepage. It being added to the Milo repo, with a broader consumer base, does that specificity still make sense? Or does it make sense to extend it for more use cases?

My 2 cents.
@vivgoodrich Can the homepage not continue to operate with it's current set up once this is merged into Milo?
It makes sense to have the homepage tailored to a more specific set up since it's the homepage. It being added to the Milo repo, with a broader consumer base, does that specificity still make sense? Or does it make sense to extend it for more use cases?

Absolutely.  If you guys decide not to support sizing on the bricks we will just not switch over and continue to do our own thing.  But I don't think the viewpoints should be discounted as homepage only.  I suspect that most blocks in a masonry design will be designed for a specific size and will not look good in others.  I tried to view the figma doc in Jira but can't get it to work so maybe I just don't know how it will be used on the rest of the site.  But in general if a brick is using a background image, it will likely look awful at the wrong size.

Verified the block-Basic brick and Masonry .Works as expected.
In Milo:
https://masonry--milo--aishwaryamathuria.hlx.page/drafts/sneha/poc1/poc-11
https://masonry--milo--aishwaryamathuria.hlx.page/drafts/sneha/poc1/poc-4
https://masonry--milo--aishwaryamathuria.hlx.page/drafts/sneha/poc1/poc-2
https://masonry--milo--aishwaryamathuria.hlx.page/drafts/sneha/poc1/poc-1
In CC:
https://main--cc--adobecom.hlx.page/drafts/Sneha/syt/poc1/poc-2?milolibs=masonry--milo--aishwaryamathuria
https://main--cc--adobecom.hlx.page/drafts/Sneha/syt/poc1/poc-4?milolibs=masonry--milo--aishwaryamathuria
https://main--cc--adobecom.hlx.page/drafts/Sneha/syt/poc1/poc-11?milolibs=masonry--milo--aishwaryamathuria

he future to possibly offer the best of both worlds

@ryanmparrish I have made the suggested changes


Issue with csv file on link: https://github.com/hmrc/income-tax-mtd-changelog/blob/main/mapping/csv/sa100_mapping_v2.csv

Note: Please read before raising an issue.
This repository's issues are reserved for Technical queries relating to the Income Tax MTD APIs Only. Services currently supported are:

self-assessment-api
individual-losses-api
individual-calculations-api
self-assessment-biss-api
self-assessment-bsas-api
self-assessment-accounts-api
individuals-income-received-api
individuals-disclosures-api
individuals-state-benefits-api
business-details-api
obligations-api
individuals-reliefs-api
other-deductions-api
property-business-api
individuals-expenses-api
cis-deductions-api
individuals-charges-api
individuals-business-eops-api

If your issue falls into any of the below categories please contact SDST at<EMAIL_ADDRESS>
Issues relating to subscribing/registering to use the API Platform, MTD enrolment / de enrolment  / registration for VAT / BETA etc
Issues relating to OAuth2
Issues relating to integrating with the API Platform (setting up an application/access)
Vendor application software questions (code examples in .NET / VB6 etc.)
Business related questions
Scheduled maintenance days / windows
Onboarding
Performance metrics
Questions relating to the process pre MTD

Please provide the following information:

I'm submitting a ...

[ ] Bug - API
[x] Bug - Documentation
[ ] Improvement
[ ] Feature request
[ ] Support request

Which API is the issue related to?

What is the current behaviour?

What is the expected behaviour?

Other information (e.g. detailed explanation, screenshots, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, gitter, etc)

Entries in 'Code' for rows 28 through 37 need to be updated from:
"Income (UK Pension"," annuities etc)",
to:
"Income (UK Pension, annuities etc)",


Latest xfig version 3.2.6a

Xfig version 3.2.6a builds without patch and special configuration on macOS. I guess the version could be updated to the following formula, which works for me:
class Xfig < Formula
  desc "Interactive drawing tool"
  homepage "https://mcj.sourceforge.net/"
  url "https://downloads.sourceforge.net/project/mcj/xfig-3.2.6a.tar.xz"
  sha256 "a87aeb5d424aadb84ede137291bbe8649551209a807c94f0956fc323b819267c"

  depends_on "jpeg"
  depends_on :x11

  def install
    system "./configure", "--prefix=#{prefix}",
                          "--disable-dependency-tracking",
                          "--disable-silent-rules"
    system "make", "install"
  end

  test do
    assert_match "Xfig #{version}", shell_output("#{bin}/xfig -v 2>&1")
  end
end

I investigated this following https://github.com/Homebrew/homebrew-core/issues/26518
Sorry not to have time to create a proper pull request :(


Basic http proxy support

Get the proxy address and port from HTTPS_PROXY environment variable and tunnel connection through that proxy.

Wrong email inside commits


doc: How to map Payload back to struct?

Hi!
What is the proper way to go from select() ->Payload to a custom struct?
I could not find any examples regarding that and the doc does also not mention it.
Thanks

I found that this works but I am not sure if this is the best way to do so.
    let selected = table("settings")
        .select()
        .filter("year = 2023")
        .execute(&mut glue)
        .await
        .unwrap();

        match selected {
            gluesql_core::prelude::Payload::Select { labels, rows } => {
                let time_zone_i = labels.iter().position(|x| x == "time_zone").unwrap();
                let currency = labels.iter().position(|x| x == "currency").unwrap();
                Settings {
                    currency: rows[0][currency].clone().into(),
                    time_zone: rows[0][time_zone_i].clone().into(),
                }
            },
            _ => panic!(),
        }

Try using Payload::Select if you have a schema, or Payload::SelectMap if you don't, to fetch rows.
My recommendation is to create a struct and implement TryFrom for Payload and struct
e.g) https://github.com/ever0de/gluesql/commit/a0ccda265b76fca305bd72a18316723f985e83ef#diff-6ecd13eab89cbf9d6f327f55c2a4a177059a5407406d3560a1bf07862a2b36fdR11

Thanks! How can I provoke getting a SelectMap from my select query builder?

The return values of the AstBuilder::execute and Glue::execute functions are similar.

https://docs.rs/gluesql/latest/gluesql/core/ast_builder/trait.Execute.html
https://docs.rs/gluesql/latest/gluesql/prelude/struct.Glue.html#method.execute

You can remove Vec::remove from the above example, because you get Payload instead of Vec<Payload>.

Thanks for the hints. A macro like https://docs.rs/sqlx/latest/sqlx/trait.FromRow.html would be useful to derive impl TryFrom<Payload> for MyTable.


sticky-wrapper height set to zero on display:none change

I have a sticky top navigation.  When the screen resizes smaller, I need to remove this element and replace the navigation with a mobile style hamburger menu, so I set the display attribute of sticky-wrapper to none in CSS using media queries.  If I don't do this and the element is "stuck" when the screen resizes, the space is still consumed on the screen effectively leaving a gap on the screen if I only set the internal elements to display:none.  If this element is not yet stuck, then the height is set to zero upon this change.  The height attribute is not cleared or reset to some valid height when the display:none is removed (by sizing the window larger) effectively having the div display, but not taking up any real space on the page because the element still has style="height: 0".
How can I capture this and clear the height attribute properly?
This is an requirement for a responsive site going between landscape and portrait on tablets.  When in landscape, I'd like the regular menu, when in portrait I want the mobile menu.

As a side-note, I even tried wrapping an outer wrapper that comes before the sticky-wrapper and set this one to display:none and I have the same results

I'm not sure this qualifies as a bug report according to the Contributing Guidelines. It may serve the community better as a question on Stack Overflow. That said, have you considered instead of messing with CSS during the resizes across responsive breakpoints, instead calling sticky.destroy() when resizing down and reinitializing the sticky when resizing up?

Hi Caleb - I apologize if this is not actually a bug - it seemed like one to me.  Anyway, after spending about 6 hours trying everything I was able to find on the web, I solved this a different way by putting the hamburger menu into the sticky wrapper and wrapping both navigations with a sticky-element div.  This way, when I turn off the main horizontal nav and turn on the mobile nav, both are happening inside a sticky element and the sizing, etc. still works OK, and in fact better as the mobile nav stays stuck to the top of the browser window which is better for mobile users.
I had not thought of the sticky.destory() - that may have worked as well, but since the site is now live, I'll leave good enough alone.


KAFKA-5602: ducker-ak: support --custom-ducktape

Support a --custom-ducktape flag which allows developers to install
their own versions of ducktape into Docker images.  This is helpful for
ducktape development.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6124/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6109/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6296/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6313/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6590/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6575/
Test PASSed (JDK 8 and Scala 2.12).


Add sort_key option to read_parquet

The current read_parquet implementation includes several hard-coded path-sorting operations, and multiple users have expressed an interest if making it possible to override this behavior. The solution in this PR is to add a new sort_key option (as suggested by @alexgorban).

[x] Closes #10045
[x] Closes #8829
[ ] Tests added / passed
[ ] Passes pre-commit run --all-files

I'm curious what's stopping us from just using the same file order if a list of paths are provided?

The only reason is that it would technically be a "breaking" change. The convention to use natural sort order pre-dates my involvement with Dask, and may even pre-date pandas' ability to handle a list of files. That said, I do think it would be reasonable to eventually change the default behavior when the user provides a list of paths.

I personally wouldn't worry too much about the change in behavior when a list of files is provided (we should continue to use natural sort when globbing directories). TIL pandas.read_parquet supports a list of files! It also looks like pandas uses the given file order when handed a list of file paths:
In [7]: pd.read_parquet(["foo.parquet/part.0.parquet", "foo.parquet/part.1.parquet"]).head()
Out[7]:
                       name    id         x         y
timestamp
2000-01-01 00:00:00  George   908  0.031730 -0.647870
2000-01-01 00:00:01   Sarah   961  0.481720 -0.162815
2000-01-01 00:00:02  Victor  1024 -0.050353  0.729972
2000-01-01 00:00:03   Laura   969 -0.122235  0.652741
2000-01-01 00:00:04     Ray   995 -0.081051 -0.496389

In [8]: pd.read_parquet(["foo.parquet/part.1.parquet", "foo.parquet/part.0.parquet"]).head()
Out[8]:
                       name    id         x         y
timestamp
2000-01-02 00:00:00   Kevin   983  0.620474  0.586924
2000-01-02 00:00:01  Ursula   979 -0.186794 -0.714156
2000-01-02 00:00:02     Ray  1015 -0.919861 -0.421275
2000-01-02 00:00:03   Jerry   957  0.215248 -0.702655
2000-01-02 00:00:04  Ingrid   999  0.367679 -0.838501

You make a good point that, although "breaking", it is pretty-easy to motivate the decision to avoid sorting a user-provided list of paths ("pandas doesn't do it").

Any other thoughts on this one @jrbourbeau ? I like your idea to preserve list order, but not sure if you agree with glob-pattern reordering.


Primary energy production curve charts mistakenly show weekly or annual production

The curves that show the production of primary energy carriers used by the ETM are no longer visible in the ETM front end.
The chart type has changed into the same type as we have for the electricity demand and production curve. This is a mistake, I believe, as these charts should show the predicted production throughout the years until 2050. That is what the data from ETDataset provide. Or did I miss the memo on these charts?
As a result, there is nothing to see in these charts.

I can't reproduce this on Beta or on Live.
I look into it because I seemed to remember that @grdw changed the Electricity production per hour chart type such that whenever you have two charts of this type open they both respond to the week select box in the same way. I.e. if you change the week on one of them, the other one automatically changes to the same week. I thought this might have an effect on the production curve charts.
Do you recall what steps you took that lead to the production curve chart to look as shown in your original post, @AlexanderWirtz ?

@AlexanderWirtz: Was this in your local copy of ETModel? If so, it might be something specific to your database; in which case you can find an up-to-date copy of the ETM staging and production databases on Dropbox (Development → Databases) which may be imported with Sequel Pro (let me know if you require instructions). These DBs don't have any personal data from visitors, but will have all the latest settings for charts, sliders, etc.

Very strange! I followed a link to a scenario Martijn Douwes created, but if I do so again, I also cannot reproduce it. I am glad I took a screenshot, or none of you would have believed me.
@antw my local copy has been a mess for over a year now. It doesn't work.


[Feature]: DataNode data partition space allocation supports multiple allocation strategies

Is your feature request related to a problem? Please describe.
To create data shards for DataNode, you need to select data nodes. The current algorithm is the carry weight + space allocation method in nodeset. In order to make the allocation strategy more flexible, other algorithms need to be supported, and the algorithm is optional.
Describe the solution you'd like

Preserve existing space and carry based algorithms.
With reference to the current algorithm, a global weight distribution algorithm among multiple nodesets is provided, so that nodes with more idleness in the zone are preferentially selected.
The implementation of the selector can choose to switch between the above two algorithms.
Support cli and http commands to dynamically adjust policies and support policy queries.

Can someone explain the principle of carry and weight calculation?

Hello, may I ask if the current development language is Go or C++? If it's Go, I would like to give it a try and submit my proposal.

Hello, may I ask if the current development language is Go or C++? If it's Go, I would like to give it a try and submit my proposal.

Hi, @azhsmesos it‘s Go.

Hello, I'm interested in this project and I will submit a project application form for it.

I would like to give a try too~

Hello, I am interested in this topic and have written application for it.

well,I have roughly reviewed the codebase,and I am confused with the definition about "idleness",could someone give it a clear explaination?

done: https://github.com/cubefs/cubefs/pull/2353


Add Apache-Rat to check + fix more copyright header issues

Adds a Gradle plugin to run Apache Rat with then check task.

Thanks @snazy for adding this. LGTM overall. Left one minor comment.


[UDropdown] item.class no longer applied in v2.11.1

Environment

Nuxt 3.8.2
Nuxt UI 2.11.1

Version
2.11.1
Reproduction
<template>
  <UDropdown
    :items="actions"
    :ui="{ width: 'w-40' }"
    :popper="{ placement: 'right-start' }"
  >
    <v-icon icon="i-lucide-more-horizontal" size="small" />
  </UDropdown>
</template>

<script setup>
const actions = [
  [
    {
      label: 'Edit',
      icon: 'i-lucide-pen-square',
      click: () => {}
    },
    {
      label: 'Share',
      icon: 'i-lucide-share',
      disabled: true,
      click: () => {}
    }
  ],
  [
    {
      label: 'Delete',
      class: '!text-red-500',
      icon: 'i-lucide-trash-2',
      iconClass: 'text-red-500',
      click: () => {}
    }
  ]
]
</script>

Description
Hello thanks for this great lib,
In my project I used to style some dropdown items with 'class' like this:
{
  label: 'Delete',
  class: 'text-red-500',
  icon: 'i-lucide-trash-2',
  iconClass: 'text-red-500',
  click: () => {}
}

But it doesn't work after updating to 2.11.1, (only iconClass works), is this normal or a bug?
Before:

After (In 2.11.1):

Additional context
No response
Logs
No response

This is weird, nothing has changed about this. From what version did you upgrade?

This is weird, nothing has changed about this. From what version did you upgrade?

Hello @benjamincanac, I came from v2.10.0, I made two reproductions:

v2.10.0 here
v2.11.1 here

You can see that on v2.11.1 the text with the class is no longer in red, even with !important.

The class was no longer applied after this https://github.com/nuxt/ui/commit/f3233799096b18b1d6c86391799a7c98a110fa4d. Thanks for the report!

That was fast! Thanks for the quick fix!

The class was no longer applied after this f323379. Thanks for the report!


attributes added in new are not tracked

Environment data

Language Server version: 2020.11.0 (pyright 9d8e431b)
(activated as the default language server in Python extension settings)
OS and version: Windows 10 Pro, Version	10.0.19041 Build 19041
Python version: 3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:57:54) [MSC v.1924 64 bit (AMD64)]

Expected behaviour

the type of self variable in __new__ should be inferred correctly/automatically
attributes added in __new__ should be tracked like they are in __init__ (or any instance method)

Actual behaviour

From the above screenshot:

Notice how new_attr appears blue in Bla, but white in Bli.

Bla uses self as its first variable, which apparently fools the analyzer into considering it an instance method or something, causing it to properly register the attribute.
However, if I enable the basic typeCheckingMode, Pylance reports that __new__ override should take a "cls" parameter
Bli uses cls as its first variable, so no report, but then the attribute is considered unknown.

Also notice that I had to explicitly specify the type of self; if I don't, self is considered untyped (in either case):

Code Snippet / Additional information
Here's the code from the above screenshot:
class Bla:
	def __new__(self, *args, **kwargs):
		cls = self  # hack to fool the analyzer
		self : Bla = super(Bla, cls).__new__(cls, *args, **kwargs)
		self.new_attr = 1

	def __init__(self):
		self.init_attr = 1

	def some_method(self):
		self.method_attr = 1

	def test(self):
		self.new_attr
		self.init_attr
		self.method_attr

class Bli:
	def __new__(cls, *args, **kwargs):
		self : Bli = super(Bli, cls).__new__(cls, *args, **kwargs)
		self.new_attr = 1

	def __init__(self):
		self.init_attr = 1

	def some_method(self):
		self.method_attr = 1

	def test(self):
		self.new_attr
		self.init_attr
		self.method_attr

You are correct. This isn't a supported use case.
The __new__ method is supposed to allocate a new instance, and the __init__ method is supposed to initialize it. You're abusing the __new__ method to initialize a new instance.
Recommended workarounds:

Initialize instance variables within the __init__ method, consistent with the intent behind Python class instantiation and initialization.
Declare a class variable and type within the class declaration, like this:

class Bla:
    new_attr: int

I understand what you're saying re abusing __new__ vs __init__, I guess it depends whether you regard __new__ as a class or instance method.
I sometimes use __new__ to isolate some internal functionality in a base class, so derived classes don't have to call super() in their own __init__... this may or may not be a great practice, but that's my usecase.

This prompted me to try another test:

If I add a class variable as you suggest, it appears yellow (scopes inspector says "member"), but if I add it to cls, it also appears blue ("variable").
I still think all this feels inconsistent (though not high priority I'll admit), so if someone's ever fixing that I'd argue for tracking attributes in __new__/static methods, just my 2 cents...

class Blu:
	def __new__(cls, *args, **kwargs):
		self = super(Blu, cls).__new__(cls, *args, **kwargs)
		cls.new_attr_cls = 1
		self.new_attr_ins = 1

	static_attr = 1

	def test(self):
		self.new_attr_cls
		self.new_attr_ins
		self.static_attr

Closing old issue. If this is still a problem, please reopen with the information requested. thanks


How to use?

Your plugin sounds intriguing, but how exactly do you use it? Can you provide a simple example?
Do you have to organize notes in a hierarchy in the file system and then navigate? Or, do you somehow specify the parent/child relationships within a note and navigate from there? Really now sure. Thanks.

Created some examples https://github.com/dobrovolsky/obsidain-structure#how-to-organize-your-workspace

That helps a little, thankyou. This looks a very interesting plugin. I have an issue though. 'Create New Note' only returns an error 'Parent Note does Not exist'. I have tried creating a parent note in the File Explorer - no change. I have tried adding '.sidenote' to an existing note - no luck. The only way that I can get to work is by duplicating and 'renaming' an existing note = '2021-12-03' becomes '2021-12-03.sidenote'. This works, and I can then call the 'parent' note into an adjacent window.
This is very promising, but a bit lumpy. Is this expected behaviour, or am I missing something?

Try to update plugin

Thank you - works as advertised now.


IconLayer: use load instead of loadImage to load icons

Background
For #4132

Change List

replace loadImage with load and ImageLoader

Coverage increased (+2.5%) to 83.392% when pulling 16e19dd3bd75da01c711322d47ea11cc9e0e1ed6 on xx/icon-loader into 0cfbf2ed7bc31f37a155ae98307d22e4dfa655fc on master.


12 info display

Closes #12

Migrating ontology storage
Added CharacterProfile component
Replaced Character table with a list of Character profiles, displaying their name and depiction
Added utility function which will try various common properties to define name, and return the first it finds or null
Added utility function to return a ReactElement depicting the Profile image

Related MR in Mud-Jena: https://github.com/Multi-User-Domain/mud-jena/pull/5/

@MattTennison I made the changes requested, I think we're OK to merge ? :)