Progress bar

Describe the feature
Thanks for making this extension. Is there any way to make it compatible with the auto1111's progress bar? Or some other way to indicate how much time the generation will take?
Use Case
Give users more indication on how generation is progressing and how long they should expect to wait
Proposed Solution
No response
Other Information
No response
Solution version used
1.1.0

Currently the inference is asynchronous, requests will send to backend queue and invoke SageMaker, so progress bar can be inaccurate to implement. And estimated inference time depend on the SageMaker endpoint capacity, model, parameters input e.g. batch size, mostly should be around 4-5s  per image.


Typeclass relationship diagram

It would be really nice to have a diagram, like the one in the Prelude, of all the typeclasses in this package.

I'd been meaning to do one of these for a while, thanks for the reminder!
72451a3e755aa451ca9ad3bfc8228db529ef8bc5

Hooray, thanks :)

:+1:


mlir-hs-tblgen broken

Expected Behavior
stack build terminate successfully.
Actual Behavior
The binary mlir-hs-tblgen failed to compiled. Commenting out the line #include "llvm/ADT/Optional.h" in hs-generators.cc allows the compilation to be successful, but now mlir-hs-tblgen failed with CommandLine Error: Option 'enable-fs-discriminator' registered more than once!
Steps to Reproduce the Problem

Remove the line #include "llvm/ADT/Optional.h" from tblgen/hs-generators.cc
Execute stack build

Specifications

Version:  LLVM: 17.0.0git
Platform: archlinux

Thanks for the report. Yes this one is pending updates.

Should be all fixed now.

@k355l3r-5yndr0m3 also feel free to reach out if you have any questions/want to share what you are working on. Github notifications are a bit wonky, but I'm easily reachable via email or on Discord (LLVM or IREE) or Discourse (LLVM).


ignore docs/source/_build

this path generated by sphinx is currently show, instead we are ignoring docs/source/build

done


L stack height issue

Coverage remained the same at 72.733% when pulling 917db7376826073d03620599a96b95f5f7888d23 on l-stack-height-issue into 65de672172471e93b9e031d87da2721300ae0332 on master.


Add test file for check-for-av-emulation-using-virtualallocexnuma.yml

Add test file for check-for-av-emulation-using-virtualallocexnuma.yml - https://github.com/mandiant/capa-rules/pull/811

closed rule submission per discussion, so no need currently for this test file


Provide information about the file events were sourced from in schedule:list

Description
I want to know which file a particular scheduled event is defined in.  This information is not currently exposed in either the table or JSON output format.
In my use-case I want to have this information in the JSON format so it can be machine-parsed.
Example
The table and JSON output of schedule:list should show the filename of the event/schedule.
Note
It is my intention to submit a PR for this feature.

@PabloKowalczyk FYI hopefully this can be implemented/merged as I believe others could find it useful


Details of out-of-distribution

Thank you for sharing your work and code!
In the paper, you claim to use M= 4 and 16 shots when testing the generalization of prompts.
But in the weights you give, it is M= 1 and 100 shots, could you please clarify the detailed experimental setting of out-of-distribution (such as M, shots, batch, and epoch)?
Thanks

Hi,
thank you for your interest in our work. For OOD experiments, M=4 and 16 shots were used. The weights you mentioned, M=1 and 100 shots, were used for zero-shot experiments. We have not released the weights of models used for OOD experiments. If you need those, we could try to find them but not sure if they are still available since the file system of our server recently crashed.
Best wishes,
Lin

Hi, Thank you for your response.
What is the difference between zero-shot experiments and OOD experiments since both of them trained on Imagenet and tested on downstream tasks.
I would appreciate it if you could provide the weights for the OOD experiments. If those are not available, the batch and epoch would also be helpful. I can reproduce it myself.
Thanks！

Hi,
they differ in this work regarding the data distribution gap between training and test data. OOD involves the distribution shift only in the input space so the training and test datasets have the consistent category system, while zero-shot involves the distribution shift in both input space and output category so the test input data and/or category may never be seen in the training data.
The detailed experimental setups are described in the appendix. Please let me know if there are something missing in the appendix.
Lin

So the cross datasets experiments is the zero-shot experiments right?
Thanks for your reply!

yes, we follow the zero-shot setup in this work: https://arxiv.org/abs/2212.07016. Kindly please close the issue if you feel it is resolved, otherwise, I am happy to answer any other question you have.


Added Reveal Loader !

Fixes Issue🛠

Closes #585
Description👨💻
Added Reveal Loader in the Loaders Section !
Type of change📄

[X] New feature (non-breaking change which adds functionality)

How this has been tested✅
Tested on local system and it worked perfectly !
Checklist✅

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[X] I have commented my code, particularly in hard-to-understand areas
[X] I am an Open Source Contributor

Screenshots/GIF📷

Merged 🥳 @SohanRC


Issue with the API

i cant get to access the API even when my code is correct
it says list has no attribute weight/height/sprites/name
    async def spawn(self,ctx,poke:int):
        pokemon = pokepy.V2Client()
        pokedata =  pokemon.get_pokemon(poke).weight
        await ctx.send(pokedata)```

@Kronopt Please look into this

Please provide more context.
Did you get an error? If so, what's the stack trace?
Which version of python are you using? And version of pokepy?
Linux? Windows?
Also, I'm a volunteer (as all devs here), so asking nicely for a solution goes a long way to have your problem fixed.
Pokepy is currently on standby. Please check out pokebase

Actually pokepy 0.6 depends on requests 2.21 but beckett depends on requests 2.10 so to resolve this pip was installing the 0.4.2 version of pokepy which returns list but i resolved it with pip install --no-deps pokepy etc thank you and can u give more docs on sprites/official-artwork since i have a problem getting official-artwork pics using pokebase


Could you add the southern part next to the teleport to the plugin aswell?

currently the area is not supported.

The plugin was initially just made for me, and I don't play OSRS anymore, so I didn't care much to solve this exact problem, but:
In the latest update you'll be able to turn off the "Only inside Darkmeyer" option which will globally enable the plugin.
I didn't get around to adding that region (which would be a trivial || region_id == whatever_region_id_that_is) but hopefully this option will work for you.

Oh, it seems I actually patched this a day after the issue and didn’t mark this as closed?
It seems perhaps we do cover the southern region, after all.
https://github.com/runelite/plugin-hub/pull/3202
https://github.com/ArtsicleOfficial/Qolting/compare/83e95d2c2cc77c1d0eadefaa9ea8bbec62eef5b5...ArtsicleOfficial:deb12130b7acdda86a1628583bafcd176d5f90de


Including docker container information and a blank CMD field in an app JSON breaks PUT updates but not POST app creations

If include Docker container information in your JSON and "cmd": "", then using POST to create the app in Marathon will work, but using PUT to update it throws the error:
"AppDefinition must either contain one of 'cmd' or 'args', and/or a 'container'."
If you remove the "cmd": "" from the JSON the PUT update for the app works.
Marathon should behave identically in both cases when "cmd": "" is provided, either throwing an error in both cases or never throwing an error for that. I would argue that it should not throw the error like the current functionality of the POST command.

Thanks @john-dodson for this report.
I could reproduce this behavior.
We have different data models for creation and update.
Obviously the validation logic is not congruent.

Hi @aquamatthias , isn't it a duplicated of https://github.com/mesosphere/marathon/issues/1446?
Did you test on master?

Duplicate of #1446 which is fixed in 0.9.0.


Add support for in placement new operator w/o new lib

llvm/libcxx/new defines _LIB_NEW
libstdc++ new defines _NEW
If neither of these are present, the embedded system may not be including these standard libraries, so we will need to define them here. This will enable the placement new operations.
Added is a build flag for an example test to build and verify w/o the  lib

We don't need to do this. At most we could include  within tinymind since it utilized placement new.


"Border" around circle in 2d_shapes exmaple

Bevy version
v0.9.1
[Optional] Relevant system information
$ cargo --version
cargo 1.66.0-nightly (071eeaf21 2022-10-22)

$ uname -a
Linux church 5.15.77 #1-NixOS SMP Thu Nov 3 14:59:20 UTC 2022 x86_64 GNU/Linux

AdapterInfo { name: "Intel(R) UHD Graphics 620 (WHL GT2)", vendor: 32902, device: 16032, device_type: IntegratedGpu, driver: "Intel open-source Mesa driver", driver_info: "Mesa 22.2.2", backend: Vulkan }

What you did
$ cargo run --features wayland --example 2d_shapes

What went wrong
There's a "border" around the circle:

I don't think that's supposed to be there.

Probably a duplicate of

#2374

True, that looks very much like the issue I'm also experiencing.


Telegram notification issue

hello Ammey, Script is working fine. Telegram notification is comes under my saved message. Anyway to get that under by a bot?

you can get it in your channel but you won't get notified for it.
to get yourself notified you need to create a secondary id on telegram and add it to the channel as subscriber, now whenever script will post you will get notification on your secondary id

How to subscribe?i don't get it. Please explain

BTW I am using termux on android

hello Ammey, Script is working fine. Telegram notification is comes under my saved message. Anyway to get that under by a bot?

Bro can you tell me how to get notifications on telegram I don't know where to paste my api amd hash IDs


i fixed js "engine"

THIS WAS MEANT TO BE ON JS PSYCH FORK NOT BASE PSYCH END ME

mods, cut his balls off

its been a while since the last troll pr

wouldve been longer if github didnt push this onto main when i was trying PR it onto JS

its been a while since the last troll pr

wouldve been longer if github didnt push this onto main when i was trying PR it onto JS

so uhhhh a tip to all future engine creators
dont fork it, just clone it and then make it LIKE a fork

true


Add pulumi 101 with python and docker workshop

Issue: https://github.com/pulumi/marketing/issues/549

@nimbinatus - I saw you included a repo link in the issue description for this. should I include that link in the workshop description somewhere?

thank you for merging @SaraDPH !

Is there something else missing for it to go live on the website?


Update: Mozilla.Firefox.DeveloperEdition.tl version 132.0 (132.0b7)

Created by 🥟 Dumplings in workflow run #8801.

Log
Updated: 132.0b6 → 132.0b7
Submitting WinGet manifests
Found existing pull requests:
Update: Mozilla.Firefox.DeveloperEdition.tl version 132.0 (132.0b6) - https://github.com/microsoft/winget-pkgs/pull/182530
Update: Mozilla.Firefox.DeveloperEdition.uz version 132.0 (132.0b5) - https://github.com/microsoft/winget-pkgs/pull/180193
Update: Mozilla.Firefox.DeveloperEdition.ur version 132.0 (132.0b5) - https://github.com/microsoft/winget-pkgs/pull/180192
The existing pull requests are ignored as the version is updated while the real version isn't
Creating manifests
Uploading manifests and making commits
Creating a pull request

Microsoft Reviewers: Open in CodeFlow

@wingetbot run


Investigate how full getMore should work

How getMore works with empty cursor ID and valid collection name? invalid collection name?
How getMore works with valid cursor ID and empty collection name?
Can we have multiple cursor per connection? Let's re-check.
Can cursor survive connection? Can we call find, get cursor ID, disconnect, reconnect, and continue fetching from that cursor?

Please show all that with examples.

1.a Valid collection name.
// with empty cursor id.
> use test
switched to db test
> db.foo.drop();
false
> cmdRes = db.runCommand({find: "foo"});
{
        "cursor" : {
                "id" : NumberLong(0),
                "ns" : "test.foo",
                "firstBatch" : [ ]
        },
        "ok" : 1
}
> cmdRes.cursor.id
NumberLong(0)
> db.runCommand({getMore: cmdRes.cursor.id, collection: "foo"});
{
        "ok" : 0,
        "errmsg" : "cursor id 0 not found",
        "code" : 43,
        "codeName" : "CursorNotFound"
}

1.b Invalid namespace.
> db.runCommand({getMore: cmdRes.cursor.id, collection: "$.."});
{
        "ok" : 0,
        "errmsg" : "cursor id 0 not found",
        "code" : 43,
        "codeName" : "CursorNotFound"
}

Valid namespace on empty collection.

// was already empty so dropping is redundant.
> db.foo.drop();
false
> db.runCommand({getMore: NumberLong(1), collection: "foo"});
{
        "ok" : 0,
        "errmsg" : "cursor id 1 not found",
        "code" : 43,
        "codeName" : "CursorNotFound"
}

Yes we can have multiple cursors per connection. This makes sense as each command would generate a unique cursor id.

> var defaultBatchSize = 101;
> var coll = db.foo;
> for (var i = 0; i < 150; i++) {
...     assert.commandWorked(coll.insert({a: i}));
... }
WriteResult({ "nInserted" : 1 })
> cursor1 = db.runCommand({find: "foo"}).cursor.id
NumberLong("6271084594599546986")
> db.runCommand({getMore: cursor1, collection: "foo"}); // to exhaust cursor
> cursor2 = db.runCommand({find: "foo"}).cursor.id
NumberLong("225277649497000871")
> cursor3 = db.runCommand({find: "foo"}).cursor.id
NumberLong("5692988884865651245")
> cursor4 = db.runCommand({find: "foo"}).cursor.id
NumberLong("7047315457887232050")

No, when a connection ends we kill all the cursors associated with that connection.

> quit()
// logs
// we exhausted cursor1
dance_mongodb  | {"t":{"$date":"2023-01-19T18:30:29.594+05:45"},"s":"I",  "c":"COMMAND",  "id":51803,   "ctx":"conn6","msg":"Slow query","attr":{"type":"command","ns":"test.foo","appName":"MongoDB Shell","command":{"getMore":6271084594599546986,"collection":"foo","lsid":{"id":{"$uuid":"e7075190-89e3-4b17-a40c-36b3e7203705"}},"$db":"test"},"originatingCommand":{"find":"foo","lsid":{"id":{"$uuid":"e7075190-89e3-4b17-a40c-36b3e7203705"}},"$db":"test"},"planSummary":"COLLSCAN","cursorid":6271084594599546986,"keysExamined":0,"docsExamined":49,"cursorExhausted":true,"numYields":0,"nreturned":49,"queryHash":"17830885","reslen":1899,"locks":{"FeatureCompatibilityVersion":{"acquireCount":{"r":1}},"Global":{"acquireCount":{"r":1}},"Mutex":{"acquireCount":{"r":1}}},"storage":{},"remote":"<IP_ADDRESS>:35856","protocol":"op_msg","durationMillis":0}}
.
.
.
dance_mongodb  | {"t":{"$date":"2023-01-19T18:31:27.239+05:45"},"s":"I",  "c":"QUERY",    "id":20528,   "ctx":"LogicalSessionCacheRefresh","msg":"Killing cursor as part of killing session(s)","attr":{"cursorId":7047315457887232050}}
dance_mongodb  | {"t":{"$date":"2023-01-19T18:31:27.239+05:45"},"s":"I",  "c":"QUERY",    "id":20528,   "ctx":"LogicalSessionCacheRefresh","msg":"Killing cursor as part of killing session(s)","attr":{"cursorId":5692988884865651245}}
dance_mongodb  | {"t":{"$date":"2023-01-19T18:31:27.239+05:45"},"s":"I",  "c":"QUERY",    "id":20528,   "ctx":"LogicalSessionCacheRefresh","msg":"Killing cursor as part of killing session(s)","attr":{"cursorId":225277649497000871}}

@b1ron Could you please check the same question for sessions and transactions? Are session/transaction are also tied to a single connection?
And is all that documented somewhere?

Got this error during my testing:

MongoServerError: Cannot run getMore on cursor<PHONE_NUMBER>943599020, which was created in session 3391bb64-76cf-4a3d-8536-464c0058acd0 - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - , in session 0929cdf0-e2ab-468f-9b94-347bbdb0e71d - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  -

So cursors are session-scoped. Now we need to understand if sessions are connection-scoped. And if it is documented somewhere

Or not:

For cursors created inside a session, you cannot call getMore outside the session.
Similarly, for cursors created outside of a session, you cannot call getMore inside a session.

So we don't know yet if cursor created outside of the session could live longer than connection

MongoServerError: Cannot run getMore on cursor<PHONE_NUMBER>943599020, which was created in session 3391bb64-76cf-4a3d-8536-464c0058acd0 - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= - - , in session 0929cdf0-e2ab-468f-9b94-347bbdb0e71d - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= - -

@AlekSi How did you generate this error exactly because it seems to occur in https://github.com/FerretDB/FerretDB/issues/1807 too, but I could not reproduce it.

for (let i = 0; i < 1000; i++) { db.col.insertOne({v: i}) }
c = db.col.find({})
// lookup cursor ID in logs
db.runCommand({getMore: NumberLong("4225549691612722370"), collection: "col", batchSize: 1})

The drivers seem to create implicit sessions which are not thread-safe. There is a lot of information in the spec see here.

@AlekSi I will read that entire spec on Mon.

MongoDB returns MongoServerError for the getMore command requests where the cursor ID is correct but the collection name is different:
> db.runCommand({"getMore": cmdRes.cursor.id, "collection": "test"})
MongoServerError: Requested getMore on namespace 'test.test', but cursor belongs to a different namespace test.foo

While working on cursor tests I found this strange thing:
I'm creating a cursor, then I'm starting an explicit session. With that session, I'm trying to call getMore using the cursor ID created earlier.
I'm expecting that error would be like Cannot run getMore on cursor<PHONE_NUMBER>039245917, which was created in session f87716fb-69f5-4da5-978f-593ce38e91f6 - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - , in session 4577c13c-271c-4392-9aa9-578fdbc4da80 - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - .
In that error message first session, referenced as was created ... should be the implicit one, and the second one is that I created.
What I actually get is my session is in the first place and an implicit is the second. 🤷♂
Either there is an error in MongoDB or I'm doing something wrong.
@b1ron I'd appreciate another pair of eyes on this thing.
https://github.com/w84thesun/hello-mongodb/blob/cursors/tests/cursor_wrong_session_test.go

I cannot see any issue.
        	Error Trace:	cursor_wrong_session_test.go:79

        	Error:      	Expect "Cannot run getMore on cursor<PHONE_NUMBER>478029833, which was created in session fa5efa50-7545-4bd3-a224-dd1ceb167267 - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - , in session 6a9f859d-662d-4e2e-a804-7171ed37d22c - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - " to match ", in session fa5efa50-7545-4bd3-a224-dd1ceb167267"

        	Test:       	TestRunCursorAfterSessionClosed

Implicit session fa5efa50-7545-4bd3-a224-dd1ceb167267 with cursor ID<PHONE_NUMBER>478029833:
dance_mongodb  | {"t":{"$date":"2023-01-25T01:25:44.730+05:45"},"s":"I",  "c":"COMMAND",  "id":51803,   "ctx":"conn8","msg":"Slow query","attr":{"type":"command","ns":"test.foo","command":{"find":"foo","lsid":{"id":{"$uuid":"fa5efa50-7545-4bd3-a224-dd1ceb167267"}},"$db":"test"},"planSummary":"COLLSCAN","cursorid":8860741083478029833,"keysExamined":0,"docsExamined":101,"numYields":0,"nreturned":101,"queryHash":"17830885","queryFramework":"classic","reslen":3421,"locks":{"FeatureCompatibilityVersion":{"acquireCount":{"r":1}},"Global":{"acquireCount":{"r":1}},"Mutex":{"acquireCount":{"r":1}}},"storage":{},"remote":"<IP_ADDRESS>:42058","protocol":"op_msg","durationMillis":0}}

Actual error when we try to run getMore on cursor ID<PHONE_NUMBER>478029833 in the explicit session:
dance_mongodb  | {"t":{"$date":"2023-01-25T01:25:44.731+05:45"},"s":"I",  "c":"COMMAND",  "id":51803,   "ctx":"conn8","msg":"Slow query","attr":{"type":"command","ns":"test.$cmd","command":{"getMore":8860741083478029833,"collection":"foo","lsid":{"id":{"$uuid":"6a9f859d-662d-4e2e-a804-7171ed37d22c"}},"$db":"test"},"cursorid":8860741083478029833,"numYields":0,"ok":0,"errMsg":"Cannot run getMore on cursor<PHONE_NUMBER>478029833, which was created in session fa5efa50-7545-4bd3-a224-dd1ceb167267 - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - , in session 6a9f859d-662d-4e2e-a804-7171ed37d22c - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - ","errName":"Location50738","errCode":50738,"reslen":359,"locks":{},"remote":"<IP_ADDRESS>:42058","protocol":"op_msg","durationMillis":0}}

The only thing I can think of is the require.Regexp is bad.

@w84thesun Let me look into it further.

Some observations. When we call client.StartSession() it uses the existing client's UUID as an argument to session.NewClientSession seen here. It sets the sessionType as explicit in NewClientSession here. I am not sure what they mean by "checkout for implicit sessions are deferred until after checking out a connection". Then we SetServer which gets a session from the pool which is just a linked list, but if the list is empty we end up creating a new server session. This does in fact generate a new UUID.
My only confusion is with the ID() method on the Session interface. How does it set the SessionID field? It's obviously using the implicit session ID according to our testing.

My only confusion is with the ID() method on the Session interface. How does it set the SessionID field?

The ID() method just returns the already acquired SessionID.
They set it here: https://github.com/mongodb/mongo-go-driver/blob/master/x/mongo/driver/session/server_session.go
For explicit sessions the chain of calls would be:
StartSession → NewClientSession → client.SetServer → pool.GetSession → pool.createServerSession → newServerSession
For implicit sessions the chain of call pretty similar but the initial call would be different:
collection.find/insert/update/etc. → NewClientSession
collection.find/insert/update/etc. → operation.Find → driver.Operation → client.SetServer

I believe it's related to how explicit sessions acquire a session from the server session pool.

When a new explicit ClientSession is started it MAY attempt to acquire a server session from the server session pool immediately.

So, it's acquiring the implicit session ID because ServerSession instances are cached for re-use. I was able to sort of test this behavior by attempting to use a stale session.

start mongod with the localLogicalSessionTimeoutMinutes=1 parameter
sleep for 1m here to make the session stale
the head is expired and then we create a new ServerSession

See session ID is now b478947e-926d-4d3b-9caa-f55beb81dc62.
byron@byron-ThinkCentre-M910q:~/go/src/github.com/b1ron/hello-mongodb$ go test -timeout 120s -run ^TestRunCursorAfterSessionClosed$ github.com/rumyantseva/hello-mongodb/tests
--- FAIL: TestRunCursorAfterSessionClosed (60.10s)
    cursor_wrong_session_test.go:71:
                Error Trace:    cursor_wrong_session_test.go:71
                Error:          Expect "Cannot run getMore on cursor<PHONE_NUMBER>463925729, which was created in session 27359eff-6f75-48aa-8665-c01b5ad11a45 - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - , in session 0b9a0261-faac-41bf-b2d6-fc70c00a586f - 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= -  - " to match ", in session b478947e-926d-4d3b-9caa-f55beb81dc62"
                Test:           TestRunCursorAfterSessionClosed
FAIL
FAIL    github.com/rumyantseva/hello-mongodb/tests      60.106s
FAIL

This needs more investigation. I hope to have a definitive answer soon.

I added a test here https://github.com/b1ron/hello-mongodb/blob/cursors/tests/sessions.js
In the above test a unique session ID is generated for the explicit session when startSession() is called.
I am not sure if it's a bug or if it's just how they have chosen to implement the spec. Adding implicit sessions to the pool is expected. But the overall behavior seems odd.

An implicit session MUST be returned to the pool immediately following the completion of an operation.

So, we could re-use this session because of the above. So, ID() is that implicit session ID acquired from the pool. But why are we then using what seems to be the session ID associated with the cursor. See below.

When an implicit session is associated with a cursor for use with getMore operations, the session MUST be returned to the pool immediately following a getMore operation that indicates that the cursor has been exhausted.

Seems like a bug.

Or not:

For cursors created inside a session, you cannot call getMore outside the session.
Similarly, for cursors created outside of a session, you cannot call getMore inside a session.

So we don't know yet if cursor created outside of the session could live longer than connection

They are killed as part of killing a session. Implicit or otherwise.

According to this test https://github.com/b1ron/hello-mongodb/blob/cursors/tests/implict_explicit_test.go the driver does not seem to re-use the implicit session which contradicts my above claim.


RDMA transport should support variable sized tensor

RDMA transport disabled variable size tensor https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/verbs/rdma.cc#L738 and https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/verbs/rdma.cc#L759.
However, in the embedding lookup model, the tensor has variable size. It's a common model parallelism case.

@junshi15 @anfeng  Any comments?

Current design only allows string tensors to change size, when a larger string tensor is requested, the buffer size increases. To allow other tensor to increase size (smaller tensors are fine), we need to remove this check https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/verbs/rdma.cc#L738.
Note there is no mechanism to shrink the buffer size, so in the end, the buffer is as large as the largest tensor seen so far. If the large tensor tensor is rare, we probably should shrink the buffer to save the memory usage. But maybe this is not an issue in most cases.

@junshi15 Both L738 and L759 should be removed. The common usage pattern is still unknown, so don't know what is the best policy. Maybe we can remove the checks and first document this potential memory wastage as a warning?

yes, both changes are needed. I am fine with changing "assert" to "LOG(WARNING)".


fix(traffic_light): fix stop reason

Description
resolve https://github.com/autowarefoundation/autoware.universe/issues/1862
before this PR
RTC

stop factor for traffic light is used for uninitialized value

AW without RTC
stop factor of traffic light

after this PR
fix traffic light stop reason when no points are given(especially when using RTC ).
RTC

no stop factor is given so no stop reason is appended

AW without RTC
stop factor of traffic light

to test this
run below and add marker
ros2 launch planning_debug_tools stop_reason_visualizer.launch.xml
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

LGTM

@satoshi-ota
Can you approve this PR?


Published BCOs show wrong step number

Describe the bug
The step numbers change when a BCO is published from the actual number to zero
To Reproduce
Steps to reproduce the behavior:
Checked with dataset API that the BCO's still have that little bug where the step numbers all revert to 0
[EXAMPLE STEP TEMPLATE BELOW: FILL IN INFO AND ADD/REMOVE STEPS AS NEEDED]

Go to ARGOS_000001 (for example)
Scroll down to description domain
See error

Expected behavior
Steps should be numbered correctly
Desktop (please complete the following information):

OS: Windows10]
Browser  Chome

@penningtonea
Thanks for the bug report but this is a feature not a bug! The step numbers are entered by the user.


unit test for CR -> proto conversion

Proposed Feature
We keep getting tripped up on hard to detect bugs, caused by our hand-written conversion code of CRs to protos.
See: https://github.com/akuity/kargo/issues/708.
Until we figure out a way to stop doing this conversion, we need unit tests to fail when we add/remove to one data structure and not the other.
Motivation
Bugs.
Suggested Implementation
The test should:

Reflect on CRD data structure to create a dot notation map of all fields (recursively)
Reflect on Proto data structure to create a second dot notation map of all fields (recursively)
Verify the two maps are equal

Random thought I had...
I wonder how much success we might have doing conversions just by marshaling the input type to JSON and then umarshaling to the output type.
Off the top of my head, I don't think we're doing anything complicated enough to stop that from working.

I'm closing this since we agree that we're going to fix the root problem of having to write conversion functions manually.


Dynamic code for year in footer section.

I want to add dynamic code for year in footer section.

Thank you for creating this issue! 🎉 We'll look into it as soon as possible. In the meantime, please make sure to provide all the necessary details and context. If you have any questions or additional information, feel free to add them here. Your contributions are highly appreciated! 😊
You can also check our CONTRIBUTING.md for guidelines on contributing to this project.


css wont link to html

my css will not link ive tried litteraly everything please someone help me and im still in the getting started folder

'style.css' doesn't exist in your current project root.  Looking at the first image, I could see 'chat style.css' . Either change the link red to this file or rename the physical file.

ok thanks im new to this tho lol how am i supposed to do that try to simplify it as best as you can please man thanks for the response tho i really appreciate it lol

@Shawn58 Brackets features such as Live Preview and Find in Files work based on the current "project".
I can see from your screenshots that you are still in the Getting Started project. You need to change to your project.
A "project" in Brackets is simply a folder that contains your files.
Yes, Brackets will allow you to open and edit files outside of your "project". They show up in your Working Set. Find in Files does search these files, but they don't work in Live Preview.
To set the current "project", use File > Open Folder... and choose a folder on your system that contains all of your project files.

ok i fixed it thanks guys lol i was going crazy

 lol i got the login page to work lol thanks alot

Ok man i might need a little more assitance lmao my background imgage doesnt show up lol why is this happening

Sorry but this place is to report issues about Brackets itself not about the correctness of your code.


An automated function to download data from OSF

We are hosting data for this work on OSF at: https://osf.io/dvrc7/
It would be nice if we could write a (python) function to download this data as part of the package so users don't have to do this manually.
See also: https://github.com/cwru-sdle/pvplr/issues/1

@surajkmr4218 can you add your function for pulling data from OSF here too?

Created a new PR that addresses this

@surajkmr4218 Great, merged PR #15 . I also edited the module name a bit to make it more clear.
I'm also looking for these modifications/features

Download based on OSF.io file name
Specify the save data type (download either .csv or .parquet)
Return the downloaded data directly, have saving be optional

Example desired usage
from graphfoundationmodels.util.io import OSF_download
data  = OSF_download('ss2001_CBOX_1', format='parquet', save_path = './')

In the code, you may want to create a dictionary for file URLS. For example:
name_dict = {'ss2001_CBOX_1': 'xcuvg',
...
}
name = 'ss2001_CBOX_1'
download_url = f'https://osf.io/{name}/download'


chore(deps): upgrade runtime dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-runtime-dependencies-1.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 2147

Questions ?
Please refer to the Backport tool documentation


Better SSL Certificate Error Message

Is it worth trying to clarify that the certificate might not actually be self-signed, but could be signed by a certificate authority that isn't trusted?

Is it worth trying to clarify that the certificate might not actually be self-signed, but could be signed by a certificate authority that isn't trusted?
I'm trying to keep the message short, but I do like the idea since it clarifies why the env is a possible solution.


Allow specifying a group of opal gems to require from

I am developing an opal app with rack, and I have organized my gemfile like this.
gem 'normal gem'

group :opal, :development, :test, :production do
  gem 'opal gem'
  gem 'opal gem'
end

Tlhis alows me to easily and clearly specify which gems I want in my opal compilation.
https://github.com/cj/opal-webpack/blob/master/lib/getRubyMetadata.js#L22
  if (useBundler) {
    if (env.RAILS_ENV) {
      // using rails runner to try and take advantage of spring
      return bundlerExecute(`rails runner "${rubyCode}"`)
    }
    else {
      return bundlerExecute(`ruby -e "Bundler.require; ${rubyCode}"`)
      return bundlerExecute(`bundle exec ruby -e "Bundler.require(:opal); ${rubyCode}"`)
    }
  }

I have had to enable bundler to use opal, and have updated the line thusly
return bundlerExecute(`ruby -e "Bundler.require; ${rubyCode}"`)
to:
  return bundlerExecute(`bundle exec ruby -e "Bundler.require(:opal); ${rubyCode}"`)
I added the bundle exec, because it was not working for me previously.
I think that setting a gemfile group is a good way to specify opal gems, and perhaps this could also become an opal-webpack config option?

Sorry, have had a lot going on. @cj - You still around?


Support not waiting for INSYNC

Can the Provider take an additional option to not wait for the change to be propagated across R53 nameservers? I've noticed that it takes somewhere around ~60s-120s for the change to be set as INSYNC. The response is blocked until this happens. This may not be ideal in usecases like an asynchronous event loop, where different records are sent as individual change set. Waiting for 2 mins for each record update severely bottlenecks the loop.
Maybe the provider option can have a "WaitForPropogation" and set as true to maintain backward compatibility.  In case it's set to false, we don't have to initialize a water and can do an early return.

Good point! Feel free to send a PR for this


Self-contained markdown language server

I was testing the server on neovim.
I noticed the markdown language server requires a lot from the client. Would it be possible to bundle default implementations of markdown/parse and all other custom requests to make the server self-contained?

I'd take a PR that does this (likely using service injection) but the current design is deliberate

markdown/parse lets the client bring their own parser version

The custom file messages means the server is not restricted to working with local files. Ideally the LSP would also include this functionality but right now it does not

I can make a PR. Wouldn't it be simpler to add a setting for a custom tokenizer? Then call 'markdown-it'.parser with document._content or make a markdown/parse request?

@tiagovla #160429 makes this easier to use the server as a library.  For a client that doesn't want to implement the custom messages we use, you'd instead want to use the new version of startServer which lets you pass in your own parser and workspace implementations


Broken on Openlayers 7.1.0

Since updating to latest OL 7.1.0 i get the following error in the console:
Uncaught TypeError: class constructors must be invoked with 'new'

Yea getting the same error

Same thing happened with ol-layerswitcher. The solution seems to be removing the webpack transpiling ES6 classes to ES5. Would be great if anyone can make a PR. Can take a look at this commit for reference.

Workaround:
Use ol-geocoder-debug.js and replace line 1134 by:
return new Control({ element: this.container });

I am working on the issue. The Base class in base.js calls super after accessing "this" which throws an error in ES6. Trying to refactor that.

Any suggestions how to refactor it?

Something in there ? https://stackoverflow.com/questions/51860043/javascript-es6-typeerror-class-constructor-client-cannot-be-invoked-without-ne

@Dominique92 perhaps try disabling transpiling by commenting out the buble plugin in https://github.com/jonataswalker/ol-geocoder/blob/master/build/config.js#L54

I am working on the issue. The Base class in base.js calls super after accessing "this" which throws an error in ES6. Trying to refactor that.
EDIT: Done with this. ol-geocoder will now ship with ES6 classes. Will make a PR. Only issue I'm facing now is that the magnifying glass is not visible on the button since OL7 has default white background for colors. Will try to change color of magnifying glass.

Thanks for taking a look into it and fixing it :)

@Dominique92 perhaps try disabling transpiling by commenting out the buble plugin in https://github.com/jonataswalker/ol-geocoder/blob/master/build/config.js#L54

Already did that. It works. Making up a PR after upgrading to v7 in examples

@Dominique92 perhaps try disabling transpiling by commenting out the buble plugin in https://github.com/jonataswalker/ol-geocoder/blob/master/build/config.js#L54

Already did that. It works. Making up a PR after upgrading to v7 in examples
EDIT:
PR is made. Please review it.

Can't download your repo using npm install getting errors with node-sass if installing with "no optional". If I do normal install it gets stuck at fsevents.

I'm able to run nom I after cloning the repo.

I'm able to run npm i after cloning the repo.

I am not sure what is happening with my npm install https://github.com/kirtan-desai/ol-geocoder.git stops with fsevents install and hangs there. npm install https://github.com/kirtan-desai/ol-geocoder.git --no-optional leaves me with node-sass errors Idk why...

Anyway, it seems to me more logical to call super first, then to use this:
Doing this:
  ...
  this.layer = $nominatim.layer;
  super({ element: this.container });
}

If the parent constructor initialize this.layer, you will get his value.
is not the same than:
{
  super({ element: this.container });
  this.layer = $nominatim.layer;
  ...

you will get your value
Example : https://github.com/openlayers/openlayers/blob/main/src/ol/control/FullScreen.js#L83-L97

I'm able to run npm i after cloning the repo.

I am not sure what is happening with my npm install https://github.com/kirtan-desai/ol-geocoder.git stops with fsevents install and hangs there. npm install https://github.com/kirtan-desai/ol-geocoder.git --no-optional leaves me with node-sass errors Idk why...

installing with npm directly is also working for me. why don't you try cloning the repo and running it?

@Dominique92  Did you take a look at my PR #259?

@Dominique92 Did you take a look at my PR #259?

Sorry ! It's super :)
Awaiting the dist (I don't use npm)

@Dominique92 Did you take a look at my PR #259?

Sorry ! It's super :) Awaiting the dist (I don't use npm)

Just clone the repo, run npm i and then run npm run build. You'll get the files in dist folder.

Just clone my repo, run npm i and then run npm run build. You'll get the files in dist folder.

Sorry, I use Windows where npm is a mess, not linux
I will wait the dist

Just clone my repo, run npm i and then run npm run build. You'll get the files in dist folder.

Sorry, I use Windows where npm is a mess, not linux I will wait the dist

I don't know when my PR will be reviewed. Till then, here are the dist files. Let me know if there's any issue.

Till then, here are the dist files. Let me know if there's any issue.

Thank you. This dist works perfectly for me.

Is this repo maintained anymore? Should I publish a package of my forked repo as ol-geocoder v5?

Hey guys, I have published my forked repo of ol-geocoder which is compatible with openlayers 7. I'll be maintaining the fork. https://www.npmjs.com/package/@kirtandesai/ol-geocoder

Hey Massimo, feel free to make this as a PR on my fork.


Error handling inside asio_event_* functions, checking for API misuse

As part of investigating #2529 I discovered that the process package was triggering errors inside the asio epoll implementation.  I haven’t tested on any platforms other than linux, so I’ve no idea what the other asio implementations are doing.  The problem was that the process package was closing the pipes to the subprocess, but only later unsubscribing the asio event notification once all three pipes have been closed on the other side (stdin, stdout, stderr).  This leaves a race on between two actors, so normally this is what happens:
A: close pipe, fd 10
A: unsubscribe pipe event, fd 10
B: open pipe, kernel returns next available fd, fd 10
B: subscribe pipe event, fd 10
However, there is a race here, this sequence of events happens if the execution of the two actors interleaves:
A: close pipe, fd 10
B: open pipe, kernel returns next available fd, fd 10
B: subscribe pipe event, fd 10
A: unsubscribe pipe event, fd 10
In this case the actor B waiting for events from the second pipe that will never come.  The issue here is that unsubscribing a file descriptor which has already been closed leads to races like this.  Without adding wrapper classes for all the different kinds of files/pipes/sockets/etc, the next best step is to stop silently swallowing errors in the asio code.  epoll returns an error if an attempt is made to remove a closed fd from an epoll set, this error indicates buggy code.  Currently all of the pony_asio_event_* functions return void, so it’s not possible for application code to see whether there were any problems.  Two straightforward possibilities:

Change the pony_asio_event_* functions that can fail return an error code, and update the calling code to check the error code.  iiuc though, this is a ABI break, and code outside of the ponyc repo that calls these functions will break.

Add a BUG() macro or similar to the pony runtime, so if something goes wrong or an API is being misused a message can be printed to stderr.  I did a quick experiment here, and in this case current pony master prints lots of epoll_ctl errors using the test program in #2529.  This issue would have been noticed much earlier if this feedback was available.  Using an assertion to catch errors from epoll_ctl is possible, but risky as it’s a very abrupt change to make that will only be noticed at runtime.

Discussed on the sync call.
I would tend to think that option :one: is better here. Since these functions are prefixed with pony_ instead of ponyint_, they are considered public functions. So with this in mind, incorrect use of them should be considered a problem with the caller - not a bug in the runtime. This means that error information should be propagated up to the caller as available, allowing the caller to make a decision about what to do next.
So the next step would be to figure out what this change needs to look like.
As you mention, it would be an ABI breaking change, so I think this should probably go through the RFC process so that affected users can chime in (like Wallaroo Labs, who I believe are using these functions from their code).
@clearyf would you be willing to write up a detailed proposal as an RFC to show what you think this C API should look like, and what error information should look like when propagated (ideally in a cross-platform way)?

We use them extensively, yes.

I can try to write up an RFC for this, I'll need to look at a few RFCs to get a feel for what kind of detail is actually required. Hopefully sometime in the next week or two. Are there any RFCs I should look at to see how the RFC process works?


less.php as composer dependency

You might want to use oyejorge/less.php as a dependency instead of your outdated copy.

Sorry, my mistake. I see they're not the same.


[mesheryctl] #1708 version command add indicator to user

Signed-off-by: Cardinalion<EMAIL_ADDRESS>Description
This PR fixes #1708
Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

Aha, I see what you mean

There's more where this came from @cardinalion. 😉
I encourage you to join the Layer5 community at http://slack.layer5.io. It's warm and welcoming. It would be nice to have you engage in any of the ongoing projects - https://layer5.io/projects.


Added syncing indicator to tmux status line

This checks for if the panes are synced or not, and provides and
indicator resembling it in  the status bar.

Woops. Found something I forgot to put in, will update. :)

There we go. I wanted to add in support for synced panes because it's a feature I use in tmux from time to time, but had no visual insight that it was enabled. This adds that visibility notification in, restoring balance to the world once again. :)
Hope you like it.

Sure. Just for an quick and simple example of look, you can also use this emojipedia link to get an idea of how it would look on various platforms:
https://emojipedia.org/clockwise-rightwards-and-leftwards-open-circle-arrows/

That's what it looks like on my Linux desktop with noto-emoji fonts.

I'm trying to figure out how to squash this down to a single commit, though. I tried a git rebase -i HEAD~3 maybe I did something wrong. heh

Thanks for the emojipedia link!
Yeah you should be able to rebase -i, use the "fixup" feature, then push -f to your branch and the PR will update itself.

There we go! Hopefully that does a body good, right? ;)

Looks solid 👌
Do you mind if I wait until Monday to test it on Windows WSL and Cygwin?
PS: thanks for respecting the philosophy of the conf, appreciated 🙌

No problem at all. I've locally committed this to my own mirrored copy, but will wipe it out when things are merged here and my mirror updates. :)
I've been wanting this indicator for a while now, because without it, one can easily forget it's enabled, and do "very bad things" © ™ accidentally, even of course unintentionally.

Besides that, I forgot the _bg in the actual resulting indicator portion, so I fixed that and committed it in, after testing that functionality more. :)

Yes... It doesn't really look good on Windows ☝
Maybe the lock symbol U+1F512 would be a better default? 🔒

Hello @erenfro,
What's your opinion on using U+1F512 as the default symbol for synchronized panes?
Beside that choice, your PR works great 👍

Hello @erenfro,
Are you ok if we replace U+1F501 by U+1F512 for the default symbol for synchronized panes? U+1F501 is not displayed correctly in WSL and Cygwin

Yeah, that should be fine. I'll go ahead and do that. It's user customizable anyway. :)

@gpakosz Done. :)

@gpakosz Fixed, and Fixed. :)

Alrighty! Tis done. hehe

Thank you Eric!


Model license not specified

According to the README, the code for evaluating the open_nsfw model is licensed under BSD 2 license. The README does not specify the license of the trained model.  Is it considered code and also covered by BSD 2 license?

I'm not a lawyer, and would welcome correction on the legal details here. But I am the person who licensed this code for your use under the BSD license. The code is code -- and thus an open source license applies. As for the model, I'm not sure if the "Structure Sequence, and Organization" aspect of copyright law applies -- thus treating the model to be subject to the same copyright protection and thus being licensed under the BSD, or if it's "content" and we should use a CC-BY license. Either way, please consider this permissively licensed. We intent to grant you broad rights to use, modify, copy, distribute, and perform the code and the model. We ask that BSD-style terms apply (to give Yahoo credit for the work since that makes open source fair and kind).


Import theano on initializer

Theano executes initialization process when it is imported. Such behavior is undesirable especially for users who do not need theano. To minimize its side effect, it needs to be imported on initializer.
See @jekbradbury 's comment:
https://github.com/pfnet/chainer/issues/2570#issuecomment-296408191

LGTM


error NU1301: Unable to load the service index for source https://api.nuget.org/v3/index.json.

Problem encountered on https://dotnet.microsoft.com/en-us/learn/aspnet/microservice-tutorial/docker-image
Operating System: windows
I am trying to run through the tutorial and I am getting the following error:
error NU1301: Unable to load the service index for source https://api.nuget.org/v3/index.json.
I am running VS 2022 on Windows 10 Pro 22H2
This is the contents of the Dockerfile:
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
WORKDIR /src
COPY backend.csproj .
RUN dotnet restore
COPY . .
RUN dotnet publish -c release -o /app
FROM mcr.microsoft.com/dotnet/aspnet:7.0
WORKDIR /app
EXPOSE 80
EXPOSE 443
COPY --from=build /app .
ENTRYPOINT ["dotnet", "backend.dll"]
This is the command I am running:
docker build -t backend .
I have tried adding the DNS entries to the Docker settings but this did not help.

Any help would be greatly appreciated!

I'm sorry you're running into issues. Ae you saying you already tried what is described here?
https://github.com/dotnet/core/issues/8337#issuecomment-1488941949

Hi there,
Yes, I posted the image of the DNS change to the Docker Desktop in my original message.  Unfortunately, this has not solved the issue.
Regards,
Joel

I'm sorry you're running into issues. Ae you saying you already tried what is described here? #8337 (comment)

Hi Maria,
I replied to you last week.  Have you had a chance to look at this?
Regards,
Joel

I'm sorry you're running into issues. Ae you saying you already tried what is described here? #8337 (comment)

Hi Maria,
I replied to you last week. Have you had a chance to look at this?
Regards, Joel

Hi Maria,
I was wondering if you have any other ideas?
Regards,
Joel

did you try to check if the name resolves and if it is reachable @jfaigan ? e.g. ping api.nuget.org and curl -v  https://api.nuget.org/ or wget https://api.nuget.org/
(you may need to add packages for the tools)

did you try to check if the name resolves and if it is reachable @jfaigan ? e.g. ping api.nuget.org and curl -v https://api.nuget.org/ or wget https://api.nuget.org/
(you may need to add packages for the tools)

It turns out it was a ZScaler issue.  I was unable to access the internet from the docker.  I added some lines to copy the certificate to the docker and then I was able to access the nuget site.
This ticket can be closed.
Regards,


Camel 19613: Convert components to use the camel-test-infra-core :camel-asterik

Convert components to use the camel-test-infra-core :camel-asterik

Unless there is agreement of doing everything like this everywhere, I would avoid introducing different approaches.

+1. I agree with you.
Last time I talked with @davsclaus, we agreed that we need to have a way to convert the code in a way that is cleaner, simpler and easier to use. That's part of what we would like to do in CAMEL-19742 ... But we don't have that yet.
So, as much as I would like to see the code using a modern test approach, I leaning towards a -1 on this change too (and will add a reinforcement note on the ticket that this effort is on hold).

@anjaliInfy1822 I truly appreciate your help with proposing this change.
However, at the moment, we are blocked waiting for a change that would make converting easier and less disruptive. Unfortunately we don't have that yet - and it's going to take a while until we are able to finish it.
Because of that, I am closing your PR without merging.


Configurable TTL for lock keys

Hey -
Thanks a ton for this gem - it works very well and it is easy to understand and work with.
I have a project where there is a job that is super-critical, run on minute-by-minute schedule, and cannot be run concurrently.  I ran into an issue where a job key disappeared but the locking key did not (an issue caused by something outside of resque-loner), thus preventing the job from being rescheduled.  I've made a patch that puts the locking key's TTL in a class method on the job (and included a test and comments).  This will allow me to say "for SuperCriticalJob, I want the lock to be in place for only 5 minutes."
I hope you find it useful.
Cheers,
Billy Reisinger

Hey @unclebilly,
thanks for the kind words and the patch! I'll merge it in the afternoon with a little modification perhaps (setting @loner_ttl instead of defining a method, or something like that). I actually wanted to add that functionality from the start, but then thought I don't need it if I make sure the loner keys always get removed.
Every once in a while we also have the problem of stale loner keys - which is actually a big deal, but I didn't have the time to investigate yet. One situation where stale keys can remain is when a queue is removed in resque web, but resque web didn't load the loner plugin. Is it possible that this happened to you?
If not, we should take some time to find out how a job can stop running without the loner key being removed. I think there are resque provides new hooks that we could use - when I wrote resque loner I was missing a few hooks and couldn't make it a "pure" plugin (see readme).
Thanks again, Billy!

One situation where stale keys can remain is when a queue is removed in resque web, but resque web didn't load the loner plugin. Is it possible that this happened to you?
This is entirely possible - it hadn't occured to me. Maybe some flavor of this has happened.  I've seen it happen a few times too, so the lock TTL should take care of it nicely.
Thanks again for sharing your efforts with the rest of us!

@unclebilly It would be cool if you could figure out if this happened because you removed a queue in resque-web without it having the loner plugin loaded. If this is so, we need to find the bug and squash it :)

I share your concern about what caused it in the first place.  I have spent quite a bit of time trying to figure out how it happened.   Unfortunately, after looking into our Resque implementation here, I don't think what you mentioned earlier is how I managed to experience the bug.  I have come to think that there are multiple ways of this happening - as you mentioned, someone running Resque without the loner plugin loaded is one scenario. Another (admittedly unlikely) scenario is that the worker managed to pull out the job entry, but right afterwards, something bad happened and the worker couldn't pull out the lock entry (for example, Redis went down or a network problem occurred). From lib/resque-ext/job.rb, we can see that the job reservation pulls out the job key before the worker key:
def self.reserve_with_loner(queue)
  item = reserve_without_loner(queue)
  Resque::Plugins::Loner::Helpers.mark_loner_as_unqueued( queue, item ) if item && !Resque.inline?
  item
end

I'm not saying this is even likely, but it points to the fact that there might be a few different ways it could happen - and I don't have any evidence at this point that one thing or another happened.  I'll let you know if I get any further on this...

Yeah, that's possible. But I have the feeling it happened too often for it to be caused by redis not receiving the removal command or not doing it for some reason. Thanks for letting me know!

Hey @a-b and @unclebilly, sorry I totally forgot to merge this. Sorry for that. I merged it and bumped the version to 1.2.0 - could you guys see how it runs for you and let me know? If all is going good I will push the 1.2.0 gem.
Just made a little patch to your code, @unclebilly, to allow for a job to just define @loner_ttl if someone doesn't want to define a method.

@jayniz - looks awesome. Thanks!

@jayniz - looks good to me. Thanks!


Sync Main

The main driver for doing an early sync is to get the "Edit/Fork" button fixed in production. This also includes the final changes for helping with the ActivityPage flashing and some dependency upgrades.
I just checked the preview link on mainnet and it's currently using the fallback feed - so the performance looks a bit rough right now.

Are we able to merge these changes to main today?


fix the rust binding

fix the buildrs and regenerate
rename the rust binding crate

I add the scanner.cc to the build.rs
and rename the crate name to snake name

I split the commits out and pushed to master


Line disappears when dragging the map while drawing

Description
See this short video:
https://user-images.githubusercontent.com/120452/229176801-3246605e-f4bf-4ef7-9efb-d15853ae4af9.mov
Version
2.0.0-beta.2
What browser are you seeing the problem on? What version are you running?
Firefox v111.0
The OS you're using
mac
Steps to reproduce

Start drawing a line
While drawing the map, click and hold to pan the map
See your work disappear :(

The browser URL at the time you encountered the bug
https://mapwith.ai/rapid-v2-beta#background=EsriWorldImagery&datasets=fbRoads,msBuildings&map=20.77/40.54663/-111.84692
The auto-detected useragent string for your browser (leave blank if you're manually filling this form out)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/111.0

Is this the same as #875?

Not the same exactly, but the 'not being able to drag while drawing' is replaced with this 'I can drag while actively drawing but it just makes the line / area in progress disappear' which I described above. I closed #875


Terminal: the cli command entered duplicates in output

VSCode Version: 1.47.0
OS Version: MacOS 10.15.5

Steps to Reproduce:

install zsh + oh-my-zsh with no plugins
Run any bash command in VSCode terminal

Does this issue occur when all extensions are disabled?: Yes
Any cli command in the terminal goes first in the output when zsh+ohmyzsh is used. There is no such behavior with bash or with zsh in any other terminal.

Could you try trace logging to see what is sent by zsh when this happens?
https://github.com/microsoft/vscode/wiki/Terminal-Issues#enabling-trace-logging

@Tyriar there is not Window option as in the instruction

Well that seems like a problem 😕, created https://github.com/microsoft/vscode/issues/102117

@osenvosem reloading the window should get the log channel to show up

@Tyriar here you go
renderer1.log

@osenvosem opps, you actually need to do escape sequence logging 🤦 https://github.com/microsoft/vscode/wiki/Terminal-Issues#enabling-escape-sequence-logging

@Tyriar renderer1.log

@osenvosem that one logs to chromium dev tools (access via Help menu)

@Tyriar OK
log.txt

Here's the relevant part:
sending data "l" Array(1)
log.ts:173 TRACE IPty#write 1 characters
parsing data la
sending data "s" Array(1)
log.ts:173 TRACE IPty#write 1 characters
parsing data ls -la
sending data " " Array(1)
log.ts:173 TRACE IPty#write 1 characters
parsing data
sending data "-" Array(1)
log.ts:173 TRACE IPty#write 1 characters
parsing data -
sending data "l" Array(1)
log.ts:173 TRACE IPty#write 1 characters
parsing data l
sending data "a" Array(1)
log.ts:173 TRACE IPty#write 1 characters
parsing data a
sending data "
" Array(1)
log.ts:173 TRACE IPty#write 1 characters
parsing data >
Switching back to normal keypad.
parsing data

parsing data kls\
Unknown ESC code:  Object
parsing data total 704

This says that it is indeed zsh sending back ls, it might be something with VS Code's environment triggering this but this log verifies it's not bad rendering or anything.

sending data "\n" Array(1): Press enter
parsing data >: Enable "Normal Cursor Keys" and Enter VT100 mode
Switching back to normal keypad.
parsing data : Enter bracketed paste mode
`parsing data kls: Erase all chars to the right and print "ls"
parsing data total 704: Print "total 704"

If you want to look more into it, using the trace mode you uses before, that will give you the full environment, the shell exe and args used to launch it.

@Tyriar the thing is this happens only in VSCode terminal, in iTerm or Alacritty all is fine.

Does changing terminal.integrated,shellArgs.osx to/from [] and ["-l"] help?

@Tyriar I actually just find a solution, one needs to add `DISABLE_AUTO_TITLE="true" to zsh config.
Thank you for helping. 🙂

@osenvosem Good to know, not sure what zsh is trying.
@jerch any idea what zsh is trying to do here? It's sending back ls followed by ST (ESC ).

@Tyriar Oh well, ESC k <some_text> ESC \ is a custom sequence of screen to update the internal title of a running terminal in screen. This is a really bad one - it is not officially spec'ed anywhere and even more - it is incompatible to ECMA-35/48.
Not sure why zsh is sending it at all, maybe the TERM var wrongly contains some screen derivate?

@jerch you're a legend for knowing this 😛 I see it's not disabled by default which is unexpected, but I can't seem to reproduce the issue anyway.
@osenvosem can you run echo $TERM and paste in the result?

@Tyriar yep, here you go: screen-256color

@osenvosem Any clue, where the screen-* comes from? Do you forward some screen session into the vscode terminal? Note that with normal screen usage within another terminal those sequences should not get exposed to the outer terminal, as screen would handle them internally already.
If in doubt try setting TERM to xterm-256color.

@jerch it was overridden in my zsh config, the value was "screen-256color". That was needed in order to Alacritty + tmux + neovim work consistently with colors. I know that override $TERM in shell config is a bad idea. I found another way and removed it.

Oh ok, well that was the issue then. Since $TERM said it was screen, zsh treated it as such with screen-specific sequences that xterm.js doesn't know how to handle.


proposal: x/time/rate: add Sometimes type

This proposal makes acting on simple rate throttlers more ergonomic. It adds an API that we use internally (I'm not the author). Adding it will ease open-sourcing a project I'm involved in.
package rate

import "time"

// Sometimes performs an action occasionally.
// The public fields govern the behavior of Do, which performs the action.
// A zero Sometimes performs the action exactly once.
//
// C++ users familiar with the glog package can use this mechanism instead
// of LOG_FIRST_N, LOG_EVERY_N, LOG_EVERY_N_SEC:
//
//	var sometimes = rate.Sometimes{First: 3, Interval: 10*time.Second}
//	func Spammy() {
//	  sometimes.Do(func() { log.Info("here I am!") })
//	}
type Sometimes struct {
	First    int           // if non-zero, the first N calls to Do will run f.
	Every    int           // if non-zero, every Nth call to Do will run f.
	Interval time.Duration // if non-zero and Interval has elapsed since f's last run, Do will run f.
}

// Do runs f, as governed by First, Every, and Interval.
//
// The model is is a union of filters. The first call to Do
// always runs f. Subsequent calls run f if allowed by any
// one of the Sometimes fields.
//
// If Do is called multiple times simultaneously, calls will block
// and run serially. It is therefore intended for lightweight operations.
//
// Because a call to Do may block until f returns, if f causes Do
// to be called, it will deadlock.
func (s *Sometimes) Do(f func())

I'm the original author of this type inside Google. It's simple, and the API has been stable for many years. If it's useful, I'm fine seeing this added to the existing rate package.

This proposal has been added to the active column of the proposals project
and will now be reviewed at the weekly proposal review meetings.
— rsc for the proposal review group

Does anyone object to accepting this proposal?

I have 2 things.
One: given the code comment specifically mentions it being implemented as a union of the filters, it would be more flexible as an array of filters/filter functions which are then unioned. This implementation would come at the cost of complexity,  where I acknowledge this is explicitly trying to be simple.  This more of a personal preference but I think worth discussing.
Two: I continue to be of the opinion that before we expand rate any further, there should be a common rate limiter interface defined that different rate limiters can then implement.

One: given the code comment specifically mentions it being implemented as a union of the filters, it would be more flexible as an array of filters/filter functions which are then unioned. This implementation would come at the cost of complexity, where I acknowledge this is explicitly trying to be simple. This more of a personal preference but I think worth discussing.
Two: I continue to be of the opinion that before we expand rate any further, there should be a common rate limiter interface defined that different rate limiters can then implement.

There are many existing callers to this in the Google codebase, overwhelmingly rate-limited log statements. In those callsites, the simplicity of the API (as documented, modeled after sync.Once) is a big win. It decouples the particular log library from the Sometimes policy. And to date these have been the kinds of throttles that we've needed for these operations: I don't think adding abstraction would help. Adding flexibility might have allowed additional kinds of callers, but at the cost of complicating the setup, possibly significantly. I think it's worth the 20 LOC to be added as-is.

I don't think adding Checks [] func() bool to the struct would make setup that much more complicated as it could just be ignored if nil, but in retrospect, I also can not come up with much of a reasonable use of a Checks array where you wouldn't be better off just using some other mechanism. Also, adding the above can be done later if shown useful, so I withdraw my first remark.
I still believe in my second point that a common interface should be described before more changes to the rate package are added, but I can see this easily being made interface compatible to almost anything if one is ever introduced, so that's a bit of a consolation.
I have one final extra point. Is there similar code or similar acting helpers that are known elsewhere outside of google? I can see this being useful, but I want to make sure it meets the "address an important issue for many people" standard.

How often is this used for something other than a rate-limiting log statement? I'm curious whether it might belong nearer to logging if it's really log-specific.

The vast majority of Google callsites use this for logging. How would putting it closer to logging look like, though? Just copy the current type into packages log (and glog)? Does that need another proposal?
(BTW, while gathering this data, regexp lookaround assertions would have come in handy, though not strictly necessary.)

I forgot to mention, though, that it's also used to throttle t.Log and ctxlog. Those have similar requirements, but it would be odd to add Sometimes to packages testing and again to ctxlog for this; and it would also be odd to add Sometimes only to stdlib's log and have (say) tests do
var sometimes = log.Sometimes{...}
// ...
sometimes.Do(func() { t.Log(...) })

So personally I'm in favor of adding it to package rate.

Another option (which may also address @deefdragon 's concern) is to put the Sometimes type in a new package under x/time. Perhaps package some, type Times ;-)

I've updated the CL and description based on the feedback above. PTAL and let me know if there's anything left to do in order to proceed with the proposal. Thanks.

"some.Times" is a very weird name. There's only one possible symbol you can put in "package some". It's cute but not functional. It seems like we should go back to rate.Sometimes.

Updated back.
Personally I prefer rate.Sometimes, as it would make my life easier.

OK it sounds like we are back to
type Sometimes struct {
	First    int           // if non-zero, the first N calls to Do will run f.
	Every    int           // if non-zero, every Nth call to Do will run f.
	Interval time.Duration // if non-zero and Interval has elapsed since f's last run, Do will run f.
}

What are the semantics when combinations of these are set? For example if all three are set, or if First+Every are set, or if Every+Interval are set, or if First+Interval are set?

The action is allowed if any one of the Sometimes conditions is met.

For clarity, here is the implementation of Do from inside Google, which makes the semantics a bit clearer:
// Do runs the function f as allowed by First, Every, and Interval.
//
// The model is a union (not intersection) of filters.  The first call to Do
// always runs f.  Subsequent calls to Do run f if allowed by First or Every or
// Interval.
//
// A non-zero First:N causes the first N Do(f) calls to run f.
//
// A non-zero Every:M causes every Mth Do(f) call, starting with the first, to
// run f.
//
// A non-zero Interval causes Do(f) to run f if Interval has elapsed since
// Do last ran f.
//
// Specifying multiple filters produces the union of these execution streams.
// For example, specifying both First:N and Every:M causes the first N Do(f)
// calls and every Mth Do(f) call, starting with the first, to run f.  See
// Examples for more.
//
// If Do is called multiple times simultaneously, the calls will block and run
// serially.  Therefore, Do is intended for lightweight operations.
//
// Because a call to Do may block until f returns, if f causes Do to be called,
// it will deadlock.
func (s *Sometimes) Do(f func()) {
	s.mu.Lock()
	defer s.mu.Unlock()
	if s.count == 0 ||
		(s.First != 0 && s.count < s.First) ||
		(s.Every != 0 && s.count%s.Every == 0) ||
		(s.Interval != 0 && !s.last.IsZero() && time.Since(s.last) >= s.Interval) {
		f()
		s.last = time.Now()
	}
	s.count++
}

Does anyone object to adding this API?

Based on the discussion above, this proposal seems like a likely accept.
— rsc for the proposal review group

No change in consensus, so accepted. 🎉
This issue now tracks the work of implementing the proposal.
— rsc for the proposal review group


Calendar module: Digest auth missing

Hi,
I updated my MM to v2.25.0 and as stated in the changelog, the digest authentication method was removed as described in https://github.com/MichMich/MagicMirror/pull/3184.
https://github.com/MichMich/MagicMirror/pull/3184#issuecomment-1712130668 says:

So I think we can remove digest auth because it has never worked since we replaced request

I'm using digest auth for a local setup since a few years:
// config/config.js - calendar module

url: "http://local.nas/path/to/calendar",
auth: {
    user: "username",
    pass: "password",
    method: "digest",
},                                                },

And now I'm getting this error:
0|mm       | [02.10.2023 20:41.25.095] [ERROR] Calendar Error. Could not fetch calendar:  http://local.nas/path/to/calendar Error: Unauthorized
0|mm       |     at NodeHelper.checkFetchStatus (/home/pi/MagicMirror/js/node_helper.js:116:9)
0|mm       |     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

It previously worked with v2.24.0. Is there a workaround to use digest auth with v2.25.0?

I'm surprised that this worked in v2.24.0 because there was a coding error (missing await).
I don't think this will come back, you can use basic auth instead.

I'm surprised that this worked in v2.24.0 because there was a coding error (missing await).
I don't think this will come back, you can use basic auth instead.

Thanks for your fast reply.
I'm not sure why the originally linked code should not work. There are multiple fetcher.then(...) calls to handle the fulfilled promise, no need to await (also await doesn't work in non-async functions). But maybe I'm missing something.

I'm not sure why the originally linked code should not work. There are multiple fetcher.then(...) calls to handle the fulfilled promise, no need to await (also await doesn't work in non-async functions). But maybe I'm missing something.

I did dig into this weeks ago but if it works for you I made a mistake while testing.
We removed node-fetch in the v2.25.0 release and are using native fetch. Could not get digest-fetch working with native fetch. So if you have solution to get digest working with native fetch let us know.


fix(logger): correctly pick powertools or custom handler in custom environments

Issue number: #4277
Summary
This PR fixes a bug when a compute environment or customer preconfigures a standard logging logger with the same Powertools logger name.
Previously, we'd always pick the first handler - child or parent. However, it led to pick the incorrect one if a logger we're creating for the first time (Logger) was already pre-setup through other means (logging.getLogger).
import logging
import os

from aws_lambda_powertools import Logger

service_name = os.getenv("POWERTOOLS_SERVICE_NAME")

# A environment, third-party library, or customer intentionally creates a logger with the same name as Powertools
# and add a Handler

logging.getLogger(service_name).addHandler(logging.StreamHandler())

logger = Logger(service=service_name)  # Powertools will ask standard logging to give the previously setup logger, then configure another handler etc as expected

Changes

Please provide a summary of what's being changed

[x] Encapsulate handler selection in _get_handler
[x] Reverse depend registered_handler on _get_handler
[x] Logger with two handlers and log items use both of them
[x] The above with a child logger
[x] Add explicit test for orphaned child without handler that will fail with AttributeError
[x] Create a backwards compatible exception to provide actionable error on orphaned child formatter (e.g., child init before parent and append_keys)
[x] Update docs to clarify child logger and their caveats

User experience

Please share what the user experience looks like before and after this change

Checklist
If your change doesn't seem to apply, please leave them unchecked.

[x] Meet tenets criteria
[x] I have performed a self-review of this change
[x] Changes have been tested
[ ] Changes are documented
[x] PR title follows conventional commit semantics

Is this a breaking change?
RFC issue number:
Checklist:

[ ] Migration process documented
[ ] Implement warnings (if it can live side by side)

Acknowledgment
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

Docs cleaned up to make it clearer the side effects of child loggers; removed a ton of banners we accrued over the years.


make org.apache.iceberg. PartitionData public

PartitionData.java is using default classifier for defining class which makes it inaccessible from any other package.
we need this class to be public so that external code and perform operations such as append to table, add files  etc for partitioned table.

I don't think that this necessarily needs to be public. It's an internal implementation that is not part of the public API. What are you trying to do? Can you pass StructLike instead?

Thanks @rdblue  for reply. in one of our ingestion flow, we are writing files directly to iceberg table using java API. when we build location string and datafiles I am not sure how to pass partition information using StructLike as its interface.
for now I am using following API when creating data files
 new DataFiles.Builder(table.spec).withPartition(partLike)
there is helper method which returns PartitionData
def getPartitionData(spec: PartitionSpec, par : String) : PartitionData = {
    val partition = new PartitionData(spec.partitionType())
    partition.set(0, par)
    partition
  }

can you point me to example where we can use StructLike directly?

@sudssf you should be able to implement StructLike  e.g
 return new StructLike() {
      @Override
      public int size() {
        return // return number of your partition columns
      }

      @Override
      public <T> T get(int pos, Class<T> javaClass) {
        // At this point you should have all partition column values. You may return the one based on `pos`;
      }

      @Override
      public <T> void set(int pos, T value) {
         // maybe just throw?
        throw new UnsupportedOperationException("Set not supported");
      }
    };

What's your concern?

@rdsr yes interface can be implemented which code would you prefer implementing StructLike or  reusing boilerplate from PartitionData?
also partition logic is much cleaner using PartitionSpec.

We don't want to open up PartitionData because it includes quite a bit that we don't want to make part of our public API. For example, it implements Avro's IndexedRecord API that we may not support indefinitely. The guarantee we provide is StructLike.
But, you should be able to use GenericRecord with PartitionSpec.partitionType() to get a StructLike that works for you without implementing that interface directly. Of course, you're welcome to implement that interface if you'd like more control over the implementation.

thanks @rdblue  I test using GenericRecord


Pump with replaceFluidWithCobble = false seems to be infinite source

Industrial Foregoing Version: 1.12.2-1.12.5-229
TeslaCoreLib Version: 1.12.2-1.0.15
Crashlog (If Any):
Hi,
I think I found a "bug". I'm currently playing FTB Ultimate Reloaded but buildcraft has the pump disabled so we are forced to use industrial foregoing pump to get the oil. The problem starts with me going to the config file and changing replaceFluidWithCobble from true to false. The idea was to set it false so we can get the oil and when it finishes there was no cobblestone structure where the oil was (I don't like to see "random" and "deformed" structures).
What seems to happen is that without the replacement with cobblestone the fluid never "end", so the oil well was infinite oil. A few days ago when I placed the pump on a "little" lava well the same happened. It was like 10blocks x 10 blocks x 4 blocks and I got ~2000 buckets of lava and there was more left...
Here you have some pictures to show it. The world it the same, copy+paste before starting the test.
First one is with replaceWithCobble set to false
The gif is what seems to happen on the bottom of the oil well
https://gyazo.com/74b3f8750e85f0b5917eb1fa73b6529e

Then the same world but now with replaceWithCobble set to true

Hope it gets fixed 😄

@Buuz135 Bug still exists in 1.12.7, so not sure this is fixed.

See https://github.com/MinecraftForge/MinecraftForge/commit/5ace86da121feafd20ed1f2d3e34ad99fee0599a#diff-a27ff85fc320f1d8269b133701c1c5b2


V8 beta 1 : Unable to add custom css classes to area/block design

Seeing the same issue with latest version of Safari, Chrome and FireFox
To reproduce

In edit mode click on any area or block and select "Design & Custom Template"
Click the gear icon
Try adding a custom class

Looks like we lost that ability when we switched to selectize – should be a simple matter to re-add this functionality back to the custom_style.php element


docs(logspout): Fix remote syslog example

A tiny tweak to the logspout readme to include the correct Docker incantation to route logs to a syslog endpoint.

Thanks for the contribution! Please ensure your commits follow our style guide. This code will be tested once a Deis maintainer reviews it.

I think the better fix here would be to add this as the entrypoint for the image: https://github.com/deis/deis/blob/master/logspout/image/Dockerfile#L6

though ^ is the better fix, we can clean that up. LGTM!

LGTM. Thanks @theaboutbox

Code LGTM.


Feature request: Add a Properties dictionary to IServiceCollection

Add a Dictionary<string, object> as IServiceCollection.Properties.
It would be useful to get and set custom objects to be used during service registration process.
I need this since I'm creating a conventional registration system for types in given assembly, and I want to allow to add custom conventions. I will use Properties to store a list of conventions.

You could wrap IServiceCollection in a IMyLibraryBuilder and add the Properties dictionary there.
MVC does something similar in their IMvcBuilder.
Usage would be e.g.
services.AddMyLibary()
  .AddCustomConvention1();

Thank you for the suggestion, I will check it. But what I want is a bit different. Example:
//Add conventions
services.AddConvention(new MyConvention());
//Register types in an assembly by added conventions
services.RegisterByConvention(MyAssembly);
But these two code will be in different modules which does not depend on each other. Say that I have 10 modules, which they all will add their own conventions first. Then all modules will call RegisterByConvention to register their assemblies (applied all conventions of all modules).
I have 2 solutions actually, as a workaround:

Created a static Dictionary<IServiceCollection, List> and added extension methods to IServiceCollection to manage it. But I don't like it since it's stored in a static, independent, concurrent dictionary (and I can not remove the list of conventions if the servicecollection is not used anymore)

Added a singleton instance of List to service collection and find it from the collection when I need. But this is not also good, since there maybe too many services and this makes a performance overhead.

Anyway, I think such a Properties would be useful for others too. Thanks.

How do you pass IServiceCollection to these modules?
How about something like this:
// In "MyFramework.Abstractions"
public interface IModule {
  void ConfigureServices(IServiceCollection services);
}

// In "MyApp.MySampleModule"
public class MySampleModule : IModule {
  public void ConfigureServices(IServiceCollection services) {
    services.AddSomething();
  }
}

// In "MyApp"->Startup.cs
public void ConfigureServices(IServiceCollection services) {
  services.AddMyFramework();
}

// In "MyFramework"
public static void AddMyFramework(this IServiceCollection services) {
  // Use Reflection to go through all assemblies and look for all implementations of "IModule".
  var modules = ...;
  foreach (var module in modules) {
    module.Configure(services);
  }
}

Sure, my code is already almost like that. But I have more requirement.
First, this is a sample module class:
public class MyModule : IModule
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddAssemblyOf<MyModule>();
    }
}

services.AddAssembly... is my extension method. Which finds some specific classes in given assembly and adds to the collection. Say that I have an ITransientDependency interface and I'm finding classes which implement this interface and register them as transient. This is a pre-defined convention. But what I want to allow modules to add other conventions, like
public class MyModule : IModule
{
    public void PreConfigureServices(IServiceCollection services)
    {
        services.AddConvention(new MyCustomConvention());
    }

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddAssemblyOf<MyModule>();
    }
}

Then AddAssemblyOf method will automatically use all conventions added by all modules. As you see, there is no simple way of transferring conventions on IServiceCollection, without such a Properties dictionary.
This is simplified scenario. Anyway, I know can find some other ways, but I believe to add a Properties to IServiceCollection is a good way of sharing objects during service registration.

Closing because there are no plans to build this. This would be a breaking change and we don't think the cost of the breaking change is worth the value, considering that there are some workarounds for this scenario.

I could not understand why adding a new property is a breaking change. But OK, it was just a suggestion anyway.

It's on an interface, and all interface changes (add/remove/change) are breaking changes.
But beyond that, there are workarounds for this (though they are admittedly a bit ugly), and from what we've seen it's not a very common scenario, either. Even ASP.NET itself uses a workaround for this, but it's in very limited places.


multiply by 0

@fanatid do we have a reference for this?
secp256k1_ec_pubkey_tweak_add does return this,  we return the point at infinity... who is right?

Fwiw, this has been unchanged since bitcoinjs 0.1.3

Potentially,  both is OK,  but,  secp256k1_ec_pubkey_tweak_add simply maintains different semantics to point multiplication...


feature request

Can you add a notification for when a reward is earned?

It was already there and is planned to be added back as soon as this https://github.com/Chia-Network/chia-blockchain/pull/2720 makes it into the next chia release.

Awesome. Thanks.


Use App screenshot as social card

On probot.github.io/apps/MY_APP, it'd be cool to use the first screenshot of the app as the social card so that sharing makes more sense and is less Probot-focused and more "LOOK WHAT YOU CAN DO WITH PROBOT WOO"

I still think this is a cool idea!


ScalingCanvas - Path is scaled only with ScaleX

Path operations: DrawPath, FillPath, ClipPath are only using Scale X for transformation, Scale Y is ignored:
var scaledPath = path.AsScaledPath(_scaleX);

Method AsScaledPath is creating transform as uniform scale:
var transform = Matrix3x2.CreateScale(scale);
scaledPath.Transform(transform);

Hi @mgierlasinski, thanks for noting this! I think I resolved this issue in #305 and I'm looking forward to feedback over there.
Adding details to this issue, the problem is that ScalingCanvas methods DrawPath, FillPath, and ClipPath only use the X scale, and that calling AsScaledPath() with a single value results in that scale being applied in both X and Y directions
https://github.com/dotnet/Microsoft.Maui.Graphics/blob/8b0dbfcb0e6a3b80f025e33412911aa5e2a53bc7/src/Microsoft.Maui.Graphics/ScalingCanvas.cs#L176-L180
https://github.com/dotnet/Microsoft.Maui.Graphics/blob/8b0dbfcb0e6a3b80f025e33412911aa5e2a53bc7/src/Microsoft.Maui.Graphics/ScalingCanvas.cs#L182-L186
https://github.com/dotnet/Microsoft.Maui.Graphics/blob/8b0dbfcb0e6a3b80f025e33412911aa5e2a53bc7/src/Microsoft.Maui.Graphics/ScalingCanvas.cs#L188-L192
The reason for this limitation is because AsScaledPath() only accepts a single number and scales both X and Y by that value:
https://github.com/dotnet/Microsoft.Maui.Graphics/blob/5410757e44e4c6a40c18691dc3c6b1e15a6897a9/src/Microsoft.Maui.Graphics/PathExtensions.cs#L66-L74
https://docs.microsoft.com/en-us/dotnet/api/system.numerics.matrix3x2.createscale
I resolve this in #305 by adding an overload that accepts distinct X and Y scales, then updating all the methods above to use it.

Hi @swharden, that was blazing fast :astonished: Thanks for that, that's exactly what I needed :blush:


About Location

In carla_env.py, on line 56, etc., there is a parameter for the location, what does each of these three numbers mean?
( self.dests = [[4.46, -61.46, 0], [-49.53, -2.89, 0], [-6.48, 55.47, 0], [35.96, 3.33, 0]] )
And how do I convert the data into a numerical value when I decide on the location I want?

These are (x, y, z) for the destination points. line 56 specifies three exit point of the roundabout.


Autosave SQL sheet

Hi,
with the last update, when I close a SQL sheet the alert that allows me to save the worksheet no longer appears.
Where can I reactivate it?
Is there a method to autosave the sheet?

Looks like a bug. As a workaround you can use Auto-save editor on close (Database settings>SQL Editor).

seems to be duplicate of #8617


chore: Included githubactions in the dependabot config

This should help with keeping the GitHub actions updated on new releases. This will also help with keeping it secure.
Dependabot helps in keeping the supply chain secure https://docs.github.com/en/code-security/dependabot
GitHub actions up to date https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
https://github.com/ossf/scorecard/blob/main/docs/checks.md#dependency-update-tool
Signed-off-by: nathannaveen<EMAIL_ADDRESS>

Hi ! This project doesn't usually accept pull requests on master.
If this wasn't intentionnal, you can change the base branch of this PR to devel
(No need to close it for that). Best, a bot.

Automatically bumping versions could help. For example we are using actions/checkout@v2 everywhere while v3 is out. This particular one won't change anything for us, but others might help.
From a security point of view, this is useless, as dependabot alerts are already active: https://github.com/stack-of-tasks/pinocchio/security

Thanks @nathannaveen for your contribution and thanks @nim65s for the review.


Add PHP 8.1 build, exclude composer.lock from git

?
!

Type
improvement

BC Break
no

Summary
Add PHP 8.1 build, exclude composer.lock from git

@osavchenko Can you explain why you want to remove the composer.lock file from the repository?

From my experience composer.lock is redundant in the external libraries, it makes libraries more flexible. For example, it allows supporting more PHP versions without bumping any dependencies (the current lock doesn't allow PHP 8.1 out of the box).
Also, without a lock file, it will be possible to make builds on the latest dependencies version

Hmm... When you add a library as a dependency the specific versions in the composer.lock file are ignored.
See https://getcomposer.org/doc/02-libraries.md#lock-file
Since travis should use the oldest resolvable dependencies for php-telegram-bot on its tests I think it doesn't matter for the tests either.
But I'm okay with removing the composer.lock file... For development and running tests we should also test against newest dependencies.
@noplanman You okay with this too?


Update index.js

add redis Authentication

You can provide your own Redis client: https://github.com/socketio/socket.io-emitter#emitterclient-opts


Array of struct containing an array fails

Section 5.9 of osl-languagespec states:
It is permitted to have a structure field that is an array, as well as to have an array of struc-
tures. But it is not permitted for one structure to have a field that is another structure. For
example:
struct A {
color a;
float b[4]; // struct may contain an array
};
A d[5];              // Array of structures
color e = d[0].a; // Field of one element of array of struct
d[2].b[4] = 0.25; // Element of a field of a struct in an array
While the last example is an error as the index for b should be < 4,
the array of structs line fails with:-
error: Nested structs with >1 levels of arrays are not allowed: A
I would vote that the compiler is fixed to match this spec rather than just adjusting the spec.

Hey, I'm just starting to play with OSL, and ran into this.  Is it likely to change any time soon, or should I be designing around the current behaviour?

I brought that up a year ago so I would say design around it for now. Maybe you could convince @lgritz  that this needs to be addressed, or provide a fix yourself.

Sorry, this has languished for a while. It's just the right combination of "hard to fix" and "very few people complain." If there's a way to easily design around the problem, I would recommend doing so. If you have a compelling use for this that has no easy workaround, let me know and I can try to find time to take another look.

OK, I'm starting to look at porting a rather complicated shading library to OSL - I should probably hack up an initial working version, and then I'll have a better idea of whether this is going to get in the way.

I'm closing this issue. It's not fixed -- it's a known limitation that we are aware of. But like I said, it's both very hard to fix and not something that people run into or complain about frequently. We may tackle it someday, but it's not on the roadmap in any firm place so I'm not sure there's value in leaving this issue open indefinitely.


pdfjs-dist is still 2.0.489

Attach (recommended) or Link to PDF file here:
https://www.npmjs.com/package/pdfjs-dist?activeTab=versions
What is the expected behavior? (add screenshot)
Expect to upgrade to 2.0.550 or above.
What went wrong? (add screenshot)

This is already being tracked in https://github.com/mozilla/pdf.js/projects/5#card-14273384, hence this issue can be closed.


fix module description

Description
We had some minor errors in the Module description.
Change overview (tick true):

[ ] This introduces backward incompatible changes
[ ] This adds a new backward compatible Feature
[x] This fixes a Bug

Version information:

Previous Version: 1.0.0

Next Version based on Semantic Versioning (see above): 1.0.1

How Has This Been Tested?

[x] Apply of all examples was successful
[x] Apply of all tests was successful

Checklist:

[x] I have run tests and documented them above
[x] I have performed a self-review of my own code
[x] I have updated the documentation

Looks good


Integrate linter for Swift code

We need to follow common code style in the project. The best way to do it is to have the style checker or linter.
I expect to use SwiftLint, but open to other options.
We can start with default rules and update them as needed. SPM is the preferred way to integrate.

SwiftLint definitely is the best linter to use IMO. However, are you sure it should be setup via SPM? AFAIK it isn't meant to be set via SPM as a part of project. To use systemwide installation it is only need couple lines of bash in Run Script build phase.
In case of CocoaPods installation it downloads specific version of the linter to project pod's directory rather than including the sources and rebuilding it on every build.

@illabo  SPM now supports binary dependencies, so I was thinking there is a way to do it similarly to CocoaPods. Please explore that option, if there is no way, we'll need to add CocoaPods integration as well

I believe it could be done. But it’s too much hassle and confusion to do it this way. Please have a look at podspec of SwiftLint. It just downloads a portable_swiftlint.zip file to pods dir, inside is just a precompiled swiftlint itself. Most straightforward way to get a mere tool.
To use it as Swift PM resource someone have to create a dummy Package and point it to grab same file downloaded with CocoaPods. Then on every build we have to look for the file somewhere in Derived Data directory. Not the best way to go.
It’s much much better to fix a bash script to first try to run system swiftlint and if it isn’t installed wget or curl download it to project’s root and execute it afterwards.
Just 3–5 lines of bash is much better solution IMO. Swift PM is for packages used from code, not for bringing single binary for build script.


Move inc_nonce out of evm executor

Close #301, related with https://github.com/rust-blockchain/evm/pull/23
In the current implementation, if the transaction fails before entering the evm executor, the transaction sender's nonce is not added by 1, which differs from the behavior of Ethereum.

After #299 merged, this issue not exist any more.


86 unit tests for predictor module

Test code for the predictor modules. Will handle issue #86

@ns-rse - this PR should complete issue #86. It's mostly just tests of torch code but I have been able to remove a bit of code duplication along the way. The torch_msbg module was replicating some non-torch functions that were already in the evaluator/msbg modules.  Looks like merging this will bring test coverage up to around 90%.  👍

Does this still pass the pre-commit hook pylint even though pylint-pytest was removed as a module to be loaded as its not part of the virtual environment?


Examples with Room: LiveData, Flow and RxJava (Observable, Flowable)

Theese are 3 (maybe four) different ways of implementing the 'flowness' of data in a pager scenario. Could you please split this codelab in 3 (4) different ways of implementing the paging and tell us the benefits drawback with each of them.

Our docs contain examples of how to use RxJava and Guava/LiveData.
Adding all of this to the codelab would massively increase the codelab code and text maintenance burden.


Include methods from contract interfaces to manifest permissions

Summary or solution description
Changed code generation to include the called methods from implemented contract interfaces to the manifest permissions, having the same behavior as the called native contract methods
How to Reproduce
https://github.com/CityOfZion/neo3-boa/blob/a51b934775d2bcc500558d6efe53d163d75204ce/boa3_test/test_sc/contract_interface_test/ContractInterfaceCodeOptimization.py#L7-L35
Tests
https://github.com/CityOfZion/neo3-boa/blob/a51b934775d2bcc500558d6efe53d163d75204ce/boa3_test/tests/compiler_tests/test_contract_interface.py#L123-L151
Platform:

OS: Windows 10 x64
Python version: Python 3.7+

Task linked: CU-864edmpr7 Adicionar os contratos que estamos importando a interface nas permissions do manifest (não só os nativos)


Any opinions on adding "textDocument/importSymbol" as an exposed endpoint to LSPs?

In contributing the following is presented as a first step:

propose the extension via an issue in this repository. Try to get early feedback before spending too much effort implementing it.

So how do people feel about this?
The only reason I still need an IDE to write java is to find imports and insert the import at the top of the file.
This is also a problem in dozens of other programming languages - full package names are a huge pain.
Any interest in a full proposal on including "importSymbol"?

What's the use case for this? I think the usual approach, and also the one we take in haxe-language-server, is to have a "Type not found" diagnostic with an attached quick fix / code action to import matching types. And in completion, auto-imports are implemented via additionalTextEdits.
Are there cases that can't be covered with code actions and additionalTextEdits?

In addition when would an editor trigger that request. On a user gesture. Then the right approach should be to use quick fixes as pointed out by @Gam11