Worker problem multi-thread

Hi all, I'm having problems to run a program that works fine in an old computer (Win7, Anaconda Python 3.6.3), but doesn't work in a new one (Win10, Anaconda Python 3.6.5, although I tried downgrading python too).
Is it a problem with how the plotter is coded? It seems that the error is coming from the multi-thread in worker.
Thanks in advance for the help!

(base) C:\Users\PhysFNA2\surfdrive\Measurement-Programs>ipython RvsVg_2KEITHLEYs.py
C:\ProgramData\Anaconda3\lib\site-packages\h5py_init_.py:36: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
from ._conv import register_converters as _register_converters
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\sugar\socket.py", line 426, in send_multipart
memoryview(msg)
TypeError: memoryview: a bytes-like object is required, not 'int'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\threading.py", line 916, in _bootstrap_inner
self.run()
File "C:\ProgramData\Anaconda3\lib\site-packages\pymeasure\experiment\workers.py", line 161, in run
self.update_status(Procedure.RUNNING)
File "C:\ProgramData\Anaconda3\lib\site-packages\pymeasure\experiment\workers.py", line 115, in update_status
self.emit('status', status)
File "C:\ProgramData\Anaconda3\lib\site-packages\pymeasure\experiment\workers.py", line 95, in emit
self.publisher.send_serialized((topic, record), serialize=cloudpickle.dumps)
File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\sugar\socket.py", line 511, in send_serialized
return self.send_multipart(frames, flags=flags, copy=copy, **kwargs)
File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\sugar\socket.py", line 433, in send_multipart
i, rmsg,
TypeError: Frame 0 (128) does not support the buffer interface.

I've found a workaround with a fresh install of python 3.5. Everything seems to work well except of opening old measurements. Could the problem be in one of the new versions of the standard python packages?

@mhdg, from the error messages, both of the errors appear to be external to PyMeasure. It seems as though you might be having a problem with zmq. What version are you using?

This seems to be resolved. If not please re-open the issue.


[Paginator] Variant with links for navigation purposes

### Tasks

First version of the paginator component contains buttons, in this version we need to add a variant with links inside for the navigation purposes.

Some inspiration:
https://www.conductor.com/academy/pagination/


Provide explicit way to register implementations

Fixes #293
It would still be good to implement an entrypoints method (althoug that would be even better without the dependency on entrypoints, to keep this package clean!)

@tebeka , does this meet your expectations?

@tebeka , does this meet your expectations?

Yes, thanks!


chore(image): update CentOS image to v20161027

Summary of Changes

update centos image version from v20160921 to v20161027

hello @sbolel. Has the installation procedure been tested with the new version of the centos image?

Hi @ajazam! I have a cluster running with the new image with no issues!

Great. Thank you.

My pleasure @ajazam! Thank you for your help.


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-k8s-23-main" 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 1568

Questions ?
Please refer to the Backport tool documentation


overlapping stream and key dimensions breaks DynamicMap

My issue #3649 was -- I think -- closed a little too prematurely :)
I think there still is a problem with overlapping stream and key dimensions.
Here's the lissajous example adapted from the documentation http://holoviews.org/user_guide/Responding_to_Events.html
import numpy as np
import holoviews as hv
from holoviews.streams import Stream, param

time = Stream.define('Time', time=-3.0)()
lin = np.linspace(-np.pi,np.pi,300)

def lissajous(t, a=3, b=5, delta=np.pi/2.):
    return (np.sin(a * t + delta), np.sin(b * t))

def lissajous_crosshair(time):
    (x,y) = lissajous(time)
    return hv.VLine(x) * hv.HLine(y)

crosshair = hv.DynamicMap(lissajous_crosshair, kdims='time',streams=[time])

path = hv.Path(lissajous(lin))

So far so good but path + crosshair works while path * crosshair doesn't. (error: DynamicMap cannot be displayed without explicit indexing as 'time' dimension(s) are unbounded.  Set dimensions bounds with the DynamicMap redim.range or redim.values methods.)
This only happens when you have, as the documentation says,  'dimensioned streams'. i.e.
with kdim='time' and streams=[time]. The error seems to indicate that it hasn't
found that the stream is handling the kdims='time' dimension.
I don't think the composability of a DymamicMap should depend on whether you
have a dimensioned stream or not... no?
The documentation doesn't have any caveats about this (and actually works for the example following).

Appears to have been fixed.


Test

@all-contributors please add @tenshiAMD for design

@all-contributors please add @tenshiAMD for audio

https://github.com/all-contributors please add @tenshiAMD for plugin

@all-contributors please add @tenshiAMD for mentoring

@all-contributors please add @tenshiAMD for mentoring

https://github.com/all-contributors?type=source please add @tenshiAMD for plugin. please add @ayikka for code.

@all-contributor please add @tenshiAMD for plugin. please add @ayikka for code.

@all-contributors please add @tenshiAMD for plugin. please add @ayikka for code.


Payment testing

How to test:
Type npm test on to your console, then all tests should pass

Also, tests don't always pass:


Added Kisspeptin neurons and subclasses

Fixes #1412
Fixes #1413
@paulacalipho - need input on this, I think I'm right albeit a bit conservative with this.
A few questions I have:

are all hypothalamus kisspeptin neurons KNDy neurons?
from the paper [PMID:30042117] it seems that ARC kisspeptin neurons are KNDy nuerons, but I'm not sure about RP3V, thought wiki seems to suggest that KNDy neurons are in RP3V too.

Notes:
RP3V will be tricky to formalise, see https://github.com/obophenotype/uberon/issues/2238
PR imports somehow not working as it should, I have declared them for now, see https://github.com/obophenotype/cell-ontology/issues/1421

PR import fixed - all in now

RP3V will come later once the term has been added to uberon and a release is made

KNDy neurons are also in ARC (PMID: 34808231). Not sure if also in RP3V (PMID: 29755406).
Let me know if you need anything else. I am new here and may need some guidance. Many thanks
From: Shawn Tan @.>
Sent: Thursday, January 20, 2022 1:22 PM
To: obophenotype/cell-ontology @.>
Cc: Paula Duek @.>; Mention @.>
Subject: [obophenotype/cell-ontology] [DRAFT - DO NOT MERGE] Added Kisspeptin neurons and subclasses (PR #1424)
@paulacaliphohttps://github.com/paulacalipho - need input on this, I think I'm right albeit a bit conservative with this.
A few questions I have:

are all hypothalamus kisspeptin neurons KNDy neurons?
from the paper [PMID:30042117] it seems that ARC kisspeptin neurons are KNDy nuerons, but I'm not sure about RP3V, thought wiki seems to suggest that KNDy neurons are in RP3V too.

Notes:
RP3V will be tricky to formalise, see obophenotype/uberon#2238https://github.com/obophenotype/uberon/issues/2238
PR imports somehow not working as it should, I have declared them for now, see #1421https://github.com/obophenotype/cell-ontology/issues/1421

You can view, comment on, or merge this pull request online at:
https://github.com/obophenotype/cell-ontology/pull/1424
Commit Summary

c73bf00https://github.com/obophenotype/cell-ontology/pull/1424/commits/c73bf002b8ef7a9d44df87091e94246e5a896c50 Added Kisspeptin neurons and subclasses

File Changes
(6 fileshttps://github.com/obophenotype/cell-ontology/pull/1424/files)

M src/ontology/cl-edit.owlhttps://github.com/obophenotype/cell-ontology/pull/1424/files#diff-1bc7cb476beede8f25024260d04c1e8dac7c8d9f5cc7ef3393b16705a3796f34 (60)
M src/ontology/imports/merged_import.owlhttps://github.com/obophenotype/cell-ontology/pull/1424/files#diff-9f31de5fce8559e8d8b1e3b701ffd4c4191f8356342b63e0ef1ba10755de5f4f (1010)
M src/ontology/imports/pr_import.owlhttps://github.com/obophenotype/cell-ontology/pull/1424/files#diff-99d98ac7a23c747dd9d4c806c30636ae41edcf9ab785b18a971958a7d127ab0a (4)
M src/ontology/imports/pr_terms.txthttps://github.com/obophenotype/cell-ontology/pull/1424/files#diff-ed9f42322b1bc28e0b6ffb740d288aabfe3b66c02cd4d97dc461bfb4fea1e080 (5)
M src/ontology/imports/uberon_import.owlhttps://github.com/obophenotype/cell-ontology/pull/1424/files#diff-b500706e7527675f543c9e5f98ad88c7e6ae90eefa1accd8903a0e4689fbfe2f (116673)
M src/ontology/imports/uberon_terms.txthttps://github.com/obophenotype/cell-ontology/pull/1424/files#diff-47fdc8db96f4eeb4f7621908a37dad8bd98db3bb8ac63983b39052a957e077f4 (4)

Patch Links:

https://github.com/obophenotype/cell-ontology/pull/1424.patch
https://github.com/obophenotype/cell-ontology/pull/1424.diff

—
Reply to this email directly, view it on GitHubhttps://github.com/obophenotype/cell-ontology/pull/1424, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AA7GPF6ENNLSBBBRGBGJZR3UW745RANCNFSM5MMTE5AA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>

@paulacalipho - will also wait for your thumbs up before merging this in to the ontology

@shawntanzk: agree to merge

error due to clashing IDs - will fix


[PE-D] Suggested Improvement in UG

This part someone could say that chaining options is not allowed since it is not stated in the format.

Labels: severity.Low type.DocumentationBug
original: vishandi/ped#20

Our team has written examples to show that the findTask command is able to chain as intended. Will close.


[libpq] Update to 16.4

All features passed with following triplets:
x86-windows
x64-windows
x64-windows-static

Usage test passed on x64-windows.


Detect duplicated validator configuration which resolves #777

Ref #777.
When the ConfigurationLoader found duplicated configurations of validators:

log a warn message
use the latter configuration

Coverage increased (+0.007%) to 90.979% when pulling 227493f029adc251e85a7f27885e0aaa97a89476 on tiqwab:fix-duplicated-validators into e41a39bfd7f4337c6b8aa7d808ba23466392a273 on redpen-cc:master.

LGTM! Thank you for the fix @tiqwab!


Link unfurl was not working

The Slack SDK version
3.11.1
Python runtime version
3.8
OS info
Ubuntu 20
Steps to reproduce:
(Share the commands to run, source code, and project settings (e.g., setup.py))

Use this to then a message

            client.chat_postMessage(
                channel=receiver.slack_user_id,
                text=slack_message,
                blocks=notif_block,
                unfurl_links=False,
                unfurl_media=False
            )

There should a link in the blocks

Expected result: the link in the block should not be unfurled but it wasn't
Then I messaged the support about it. They ask me to test with the payload from slack website. From the website it was not unfurled. After a while they again get back to me that there is a bug in the platform and they will fix it.
My question is how and why it was creating the bug while I was using the python sdk but not in live tester?

Hi @moshfiqrony, thanks for asking the question!

Expected result: the link in the block should not be unfurled but it wasn't

I'm unsure about what you meant by "it wasn't" here yet but if you mean that, with unfurl_links: false, any links should not be unfurled, the Python SDK should work as you expect. The following is a simple script I used for verifying the behavior.
# pip install -U slack-sdk
# export SLACK_BOT_TOKEN=xoxb-(your own token)

import logging
logging.basicConfig(level=logging.DEBUG)

import os
from slack_sdk import WebClient
client = WebClient(os.environ["SLACK_BOT_TOKEN"])

unfurl_enabled = False

client.chat_postMessage(
    channel="#random",
    text="Here is the github repo: https://github.com/slackapi/bolt-python",
    # text="This content can't be displayed.",
    blocks=[{
        "type": "section",
        "text": {
            "type": "mrkdwn",
            "text": "Here is the github repo: https://github.com/slackapi/bolt-python",
        }
    }],
    unfurl_links=unfurl_enabled,
    unfurl_media=unfurl_enabled,
)

If you see some unexpected situation with specific text / blocks parameters, sharing a minimum working example code would be appreciated.

I thin there was no problem with the python sdk. The support person told me they are going to give a fix to the platform. But I wanted to know Why it was happening with the SDK not with the online tester

@moshfiqrony Thanks for your reply.
As far as I know, the API tester can occasionally behave a bit differently for some reason. Here is a past example: https://github.com/slackapi/python-slack-sdk/issues/597 As the tester is part of the api.slack.com systems, some factors on the server-side and/or the authenticated Slack account in the web browser may affect (it's not great, though).
The support agents and I will continue communicating with the teams concerned to resolve the inconsistency as early as possible. As the Python SDK maintainer in this issue tracker, I don't have anything further that I can do for you. If you don't mind, can we close this issue on the SDK side for now?

Thank you so much


Standardises on the SD-Core naming

Description
Standardises on the SD-Core naming
Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that validate the behaviour of the software
[ ] I validated that new and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules
[ ] I have bumped the version of the library

Closing, @Gmerold will apply these changes part of a different PR.


StatefulSet not starting when watchNamespace is * and the MongoDb Resource is in another namespace

Hi,
I'm not sure if this is a problem with the chart or with the operator but I've installed the community-operator to the "operators" namespace via chart with watchNamespace set to "*" and created a MongoDB resource in the "test" namespace.
The mongodb statefulset is created but isn't starting with the following error message:
create Pod mongodb-0 in StatefulSet mongodb failed error: pods "mongodb-0" is forbidden: error looking up service account test/mongodb-database: serviceaccount "mongodb-database" not found

same

This should now be fixed after #102

It is still an issue, but I can't reopen

I re-created an issue for this here: https://github.com/mongodb/helm-charts/issues/136 @MOZGIII. Did you find how to fix it in the mean time?

Oh it works! Thanks a lot.


Requires ActiveSupport::Autoload

Was attempting to use this in a plain ruby project and this simple program
require 'dotenv'
require 'pry'
Dotenv.load

require 'hubspot-ruby'

Throws the following error:
/Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/number_helper.rb:3:in `<module:NumberHelper>': uninitialized constant ActiveSupport::Autoload (NameError)
	from /Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/number_helper.rb:2:in `<module:ActiveSupport>'
	from /Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/number_helper.rb:1:in `<top (required)>'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:69:in `require'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:69:in `require'
	from /Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/core_ext/numeric/conversions.rb:2:in `<top (required)>'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:69:in `require'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:69:in `require'
	from /Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/core_ext/numeric.rb:3:in `<top (required)>'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:121:in `require'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:121:in `require'
	from /Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/core_ext.rb:2:in `block in <top (required)>'
	from /Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/core_ext.rb:1:in `each'
	from /Users/justin/.gem/ruby/2.2.5/gems/activesupport-4.2.6/lib/active_support/core_ext.rb:1:in `<top (required)>'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:121:in `require'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:121:in `require'
	from /Users/justin/.gem/ruby/2.2.5/gems/hubspot-ruby-0.1.8/lib/hubspot-ruby.rb:1:in `<top (required)>'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:128:in `require'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:128:in `rescue in require'
	from /Users/justin/.rubies/ruby-2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:39:in `require'
	from app.rb:5:in `<main>'

I see ActiveSupport in the gemspec as a dependency, so I'm not sure why this happens. Maybe ActiveSupport::Autoload is not necessarily included

I'm able to solve this by requiring the following at the very beginning of my program:
require 'active_support'
require 'active_support/deprecation'


Add status field to Byzantium tx receipts

What was wrong?
Receipts in eth-tester don't include status field. In Raiden, it prevents us from using eth-tester backend for our tests/CI.
How was it fixed?
Status field was added for transactions  that occur after FORK_BYZANTIUM. I've used some ideas discussed in #93
Cute Animal Picture

Hey guys! Do you have any estimate when can we expect this to be merged & published on PyPi? It would really help us move forward with Raiden developement.
Thanks!

Ah, I thought this was in progress because of the broken test. Now I see that the failure is due to #103 -- I'll merge now. I'd like to get 103 solved before the next release (as well as #104). I hope to get started on those today.

Will likely be able to release in the next 24-48 hrs @pcppcp

Awesome, thanks a lot!

@pcppcp beta 27 released! Please post an issue or ping me in https://gitter.im/ethereum/eth-tester if you run into any issues.


Support ULID

Problem

UUID can be suboptimal for many use-cases because:
It isn't the most character efficient way of encoding 128 bits of randomness
UUID v1/v2 is impractical in many environments, as it requires access to a unique, stable MAC address
UUID v3/v5 requires a unique seed and produces randomly distributed IDs, which can cause fragmentation in many data structures
UUID v4 provides no other information than randomness which can cause fragmentation in many data structures

From the ULID spec.
The Lexicographically sortability would especially be useful for cursor-based pagination which requires sorting by a unique, sequential column.
Suggested solution
Support ULID in the prisma schema, by defining:
@db.Ulid

It would be great to see this feature supported!
Since ULID is designed to be the same 128-bits as UUID it should work with the underlying database type, but using this means Prisma throws the error because it is validating the string length which is only 26 characters for ULID.

I've found this thread as my company uses ULID via a Golang lib and generates the @id on the backend instead of relying on the DB.
I've asked about CUID and the backends have answered they did research but options and ULID was the "best option at that time" (~5-6 years ago)

In postgres you can create function to generate ULID id (uuid v7 or uuid v8) https://gist.github.com/kjmph/5bd772b2c2df145aa645b837da7eca74

@matus-sabo that's cool, but it's UUID, not ULID.

I am the author of https://github.com/pksunkara/pgx_ulid  and I would be willing to implement this. @janpio and prima people, do I have the go-ahead?

What exactly is even needed here if there is a PostgreSQL extension?
Is https://www.prisma.io/docs/concepts/components/prisma-schema/postgresql-extensions not enough?

But @db.Ulid is not supported in the schema types though?

Ah, I see that the extension also adds a new ulid type in PostgreSQL, additionally to the function to create one?
Can a generated value only be stored in such a ulid column, or also as a normal text string?
Currently Prisma does not offer a way for extensions to add native types.

Can a generated value only be stored in such a ulid column, or also as a normal text string?

Yes, a generated value can only be stored in such an ulid column. It is visible to end-users as a string, but internally it's stored in a much more compact format which is why a new type was necessary.

Currently Prisma does not offer a way for extensions to add native types.

Yup, which is why I was offering to create a native type Ulid in Prisma query engine. All I need is a pointer to the specific part of the code.

I guess the only way to solve this would be use a custom type as specified in #5039? But there's nothing happening on that.

It is actually stored in the same format, but since it needs to be read differently, that is why a new type is needed.

Are ULIDs still needed now that v7 UUIDs are coming into the spec? Should probably just use that.

I'm linking https://github.com/prisma/prisma/issues/24079 here, as it aims to address the same problem in a slightly different way.

Please, add support for that!


Suggest to add components position (x, y, rot) in the table

Suggest to have an option to include components position information (x, y, rot) in the table.
This combines BOM and position file into a single file and very useful when sending to third party for assembly process.

It doesn't make much sense to me to combine BOM (grouped components table) with per-component data which is position info.
How do you envision it?

It doesn't make much sense to me to combine BOM (grouped components table) with per-component data which is position info. How do you envision it?

In this case, the components will not be grouped together.
We have a problem where we put custom fields in the components library (MPN, Manufacturer, Internal SKU, etc). These information only get exported on the BOM but not the position file. Assembly house will need to combine both BOM file and position file manually.

So you don't need a bom. You just need a component list with both position data and custom fields.
I am not inclined to add this because it would need to pull additional data from pcb like aux origin location and some settings. And it's not relevant to main purpose of this plugin.
What you should do is write a plugin that will generate pos file and then add extra fields in a post processing step. You can use KiBot to automate these steps. Actually that project fits well for your use case in general, I suggest you open a feature request for this there.

Ok, got it.
Thanks.


Issue with the getIdentity check causing update queries on every page load

Used Shopware Version: <IP_ADDRESS>
B2B for Shopware 6
When logged in as a B2B customer, every page (product detail / listing) pages make various calls to the "isB2B" method. This method in turn calls the "getIdentity" method in "ContactAuthenticationIdentityLoader.php".
By doing this, there is a line of code which calls "setAuthId" for the contact. This means every page load is causing an UPDATE query to be executed and as soon as this occurs Shopware will continue to execute all remaining database queries after this on the master database server.
Since upgrading to Shopware 6.5 and the B2B suite to version 4.7.4 we have seen a huge increase in load on the master database server, all of which has been caused by people browsing the site when logged in as a b2b customer and due to this query connecting them to the master.
We have added a temporary fix to check that the Auth Id has actually changed before writing it every time. This seems like a sensible approach and means that the UPDATE query now only occurs when it's actually necessary and not just on a load of a product page etc.
Please can a permanent solution be introduced to resolve this issue.

[public] Automated response: This issue is linked to the internal issue https://shopware.atlassian.net/browse/B2B-1194.
[created from B2B-1194, comment 485072]

[public] Hello,
Within our company roadmap and work capacity, we try to address each bug or improvement request but admit that not each one will be resolved. To continue our culture of honesty and openness, we are closing this issue to focus on our roadmap on behalf of all Shopware users.
If you feel like this issue is still impacting you, please create a new issue and let us know. Thank you again for your valuable feedback.
[created from B2B-1194, comment 501349]


Inconsistent merging of List with models

This issue was fixed by https://github.com/bitovi/canjs/pull/91 long time ago but it seems that you removed model/list from canjs at all.
I'll just copy the explanation for mentioned PR:
//Let's say we have a list of tasks that are bound to views with the following _cids:
var modelList = [
{ _cid : 1, id : 'f', name : 'foo'},
{ _cid : 2, id : 'b', name : 'bar'},
{ _cid : 3, id : 'c', name : 'cat'}
]

// If the server comes back with this order :
var serverData = [
{id : 'f', name : 'foo'},
{id : 'c', name : 'cat'},
{id : 'b', name : 'bar'},
]

//The current code leaves you with this:
[
{ _cid : 1, id : 'f', name : 'foo'},
{ _cid : 2, id : 'c', name : 'cat'},
{ _cid : 3, id : 'b', name : 'bar'}
]

Basically, the object with _cid 2 has now become the "cat" task.

This is a problem for us because if the user is looking at a view of a task (bound to the model with _cid 2), suddenly they are looking at a completely different object.

This is really incosistent scenario for real world examples.
I would make maybe define plugin param to override default behavour with consistent for this general scenario.

This can be solved by setting the removeAttr static property to true which causes model merges to remove existing attributes.
I agree this should be the default behaviour but unfortunately we can't change this until the next major release.

@daffl
Are you sure that removeAttr will not solve this problem?
I think that in the example even with removeAttr map with _cid equal 2 still be a cat after update.
What I would do is to allow custom merge scenarios for a particular attribute. Using define pluign
define: {
   myList: {
      merge: function(){
         //this function would be used to set attribute value while merge
      }
   }
}

@whitecolor I agree.  The define plugin should solve this.  And can.Model.List should do it by default.  I'm not sure what it will look like, but we will want to be able to set it on lists themselves:
can.List.extend({
  define: {
   "*": {merge: function(){ ...} }
  }
})

This is clearly needed as @akagomez 's sort plugin does this (I think with some n^2 sort).

Not sure about such API. '*': {merge: ..} mean that merge option is applied to all attributes (i.e list items in case of can.List), but we are talking about operation with the whole List (correct merge with new set data), not operation each of its particular items.

Any Ideas about API for this?

can.List.extend({
  define: {
   merge: function(){ ...}
  }
})

?

I think this is not only problem with list
There is aslo a problem with such case (will explain again)
var Person = can.Map({

    age: 0,

    define: {
        name: {
            type: function(val){
                console.log('name type', val)
                return val ? new can.Map({first: val.first.toUpperCase(), last: val.last.toUpperCase()}) : val
            }
        },

    }

})

var person = new Person({name: {first: 'disney', last: 'walt'}, names:['disney']})

console.log('name', person.serialize().name) // -> `{first: 'DISNEY', last: 'WALT'}`

// while attr update, say I want `name` allways to be passed though type converter, not just merge
person.attr({

    age: 0,
    name: {
        first: 'john',
        last: 'galt'
    }
})
//var ser = person.serialize()
console.log('name , person.serialize().name) // -> {first: 'jonh', last: 'galt'} and `{first: 'JOHN', last: 'GALT'}` needed

http://jsfiddle.net/xKc3H/367/
This is just simple example. So if we could avoid merging while such attr updates, for example using such API:
define: {
        name: {
            type: function(val){
                console.log('name type', val)
                return val ? new can.Map({first: val.first.toUpperCase(), last: val.last.toUpperCase()}) : val
            },
            merge: 'type' // or custom function
        }

This would allow to solve the issue with lists as well as any can.Map.
I hope I was clear.

From what I can tell, the "JOHN GALT" example demonstrates that a define type converter is not called when setting multiple properties with .attr(object):
http://jsbin.com/jetibe/edit?html,js,console
How this relates to the original example I haven't been able to determine yet.

Closing for: https://github.com/canjs/can-define/issues/17


Fix particle-api-tests with new storage, adding necessary functionality

wrap type in Singleton when constructing new stores inside arc.ts
add new store behavior to description.ts
expand manifest storage into Ramdisk memory on parse
better error messages around storage in a few different places
only set direct store back to idle (from waiting for driver sync) if the incoming message is actually from the driver
change StorageProxy to only send sync/desync if moving into or out of sync'ed state
await data in handle.ts before delivering to particles

Also I needed to fix the tests to use new syntax / methods (store -> add, direct encoding of memory contents in serialization, ![] for singleton store types).
This patch also includes identity.ts which is a set of routines that help with debugging by:

assigning a unique identity to each instance of a class
printing that identity as part of logging
formatting some kinds of log messages (currently just CRDT stuff)
allowing filtering of log messages by identity

@googlebot I consent


fix: update to eye v10.24.17

fix: update to eye v10.24.17

:tada: This PR is included in version 16.28.17 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release
v16.28.17

Your semantic-release bot :package::rocket:


Handle some weird-ass case with inspect.signature

Was debugging some wacky stuff and I think this is a problem deep in Python? For some reason __annotations__ is a dict where values are types sometimes, and strings sometimes.
I injected a print right after this line: https://github.com/python/cpython/blob/main/Lib/inspect.py#L241 and it seems like it's completely inconsistent.

Lgtm. Afaik the different behavior can occur depending on if from __future__ import annotations is used or not (see PEP-563 https://peps.python.org/pep-0563/)

I think it's possible to pass eval_str=True (along with optional globals and locals...) to inspect.signature, which would make it always return the referenced object instead. It's not the cleanest part of Python :)


[RUN-1672] skcpu: use baseline CPU for jit

We get crashes because we start using a new CPU at the start of a replay, and get migrated to a machine with an older CPU. Disable the cpuid checks so that we always use the most baseline CPU for the jit.
While we're here, use a thread-safe once.

You can use the Linear "Copy git branch name to clipboard" button in the top right of the issue to get a git branch name that has the id (if the branch name or the PR title has the id, it will hook things up automatically).

Hm. I think I did that (with the PR title, not the branch name). When I look at the linear id, it seems to know that things are in review. Am I misunderstanding the state here?

Hm. I think I did that (with the PR title, not the branch name). When I look at the linear id, it seems to know that things are in review. Am I misunderstanding the state here?

Ah yap, all good in that direction! Apologies for causing confusing about this.
In the other direction, it sadly does not auto-link, so we usually put the link the desc.


Support for named capturing groups in regular expressions

Description
It appears that Typst currently doesn't support named regular expression groups since the crate used doesn't support them either. This was only discussed on Discord so I thought it makes sense to have it as an issue/reminder and also as a reference.
Currently something like
#let format(it) = {
  it = it.replace(
    regex("(?<match>abc)"),
    it => "*" + it.match + "*",
  )
}

#format("xyz abc sdf")

Has to be written as something like
#let format(it) = {
  it.replace(regex("(abc)"), m => {
    let match = m.captures.at(0)
    return "*" + match + "*"
  })
}

#format("xyz abc sdf")

Use Case
Currently named capturing groups are a little less convenient/clear to write. It could also make sense to mention it in the documentation?

Note that relevent source is here. I think it's easy to impl if we refactor captures from Array to Captures. Let me try this later.

I'm currently working on this. But there are two problems need to fix:

If we need to implement both Dict+Array syntax on one structure, which means the iterator returned by regex needs to implement both subscript index (By Integer) and member index (By String). Currently, the built-in type of typst does not support this operation. @laurmaedje

The underlying regex crate uses regex_automate to operate capture groups. Captures is the return type of Regex::captures_iter and Regex::captures. There is a self.caps.group_info attribute inside it to save capture groups information. However, since this attribute and its getter function are not public(https://github.com/rust-lang/regex/issues/1238), we can only traverse and judge, or use the lower-level regex_automate library instead.

One possible way is get group_names with [Regex::capture_names](https://docs.rs/regex/latest/regex/struct.Regex.html#method.capture_names. Then we iter Captures and try Capture::name on every Capture to see if named group is exist.
Like this.
/// Convert regex captures to a dictionary.
fn captures_to_dict(caps: regex::Captures, group_names: &Vec<&str>) -> Dict {
    let m = caps.get(0).expect("missing first match");
    let mut dict = Dict::new();
    for (i, cap) in caps.iter().enumerate().skip(1) {
        let val = cap.map_or(Value::None, |m| m.as_str().into_value());
        let key = group_names
            .iter()
            .find(|&&name| caps.name(name).is_some())
            .copied()
            .map(|name| name.to_string())
            .unwrap_or_else(|| format!("_{}", i));
        dict.insert(Str::from(key), val);
    }

    dict! {
        "start" => m.start(),
        "end" => m.end(),
        "text" => m.as_str(),
        "captures" => dict,
    }
}

An existing type which supports both index and named access is arguments, though it feels a little icky to use it here. Having a new type just for captures feels overkill.
let key = group_names
    .iter()
    .find(|&&name| caps.name(name).is_some())
    .copied()
    .map(|name| name.to_string())
    .unwrap_or_else(|| format!("_{}", i));

Maybe I'm just blind here, but won't this code always return the same key? It seems to not depend on any loop variable.

An existing type which supports both index and named access is arguments, though it feels a little icky to use it here. Having a new type just for captures feels overkill.
let key = group_names
    .iter()
    .find(|&&name| caps.name(name).is_some())
    .copied()
    .map(|name| name.to_string())
    .unwrap_or_else(|| format!("_{}", i));

Maybe I'm just blind here, but won't this code always return the same key? It seems to not depend on any loop variable.

Right, it's always the same. The PR have fixed it.


Loriab optking

Description

Update to https://github.com/MolSSI/QCEngine/pull/166. Adds a simple procedure for running optking. Tested locally with https://github.com/psi-rking/optking/pull/38.
Changelog description

Add optking procedure
Status

[x] Code base linted
[ ] Ready to go

Optking is not on either conda forge or PyPI. If one of those is recommended I would be happy to explore adding optking to either. We should be stable moving forward.

Be best to release on PyPI + Conda before merging so we can add this to our CI. Poke us on #help in QCArchive Slack.

Also, lint (ping me with any problems). And add optking to https://github.com/MolSSI/QCEngine/blob/master/devtools/conda-envs/psi-nightly.yaml

I think this is ready to go. Can I get another review on this PR?


Adding 0.7.3 release announcement

@jpechane here's the announcement.
Bad luck with Maven Central :( WDYT, should we still push out everything (with a short sentence saying that the sync is pending), or rather wait until the artifacts are there?


Testing fork

I'm testing if this thing actually works. It's just one file called Test.gd with nothing in it

Test seems to work, I'll close this one for now tho xP


OCPBUGS-36520: Rename Dockerfile

Refactor name to Dockerfile.ocp as a better, version independent, alternative since contents are actually rhel9.
CI: https://github.com/openshift/release/pull/53993
Please follow up with other changes in this/other repos if necessary. ART has setup the necessary fallbacks, but only for 4.17, if backporting this PR, please give us a heads up.

/close


JavaScript heap out of memory

Nuxtjs is a great framework, our project is based on nuxtjs and it has been launched, but will not be regular JavaScript heap out of memory, the error message below
--- Last few GCs --->

[19844:0x4126e40]   999179 ms: Mark-sweep 1404.1 (1526.2) -> 1403.9 (1519.2) MB, 2736.1 / 2.6 ms  (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 2736 ms) last resort
[19844:0x4126e40]  1001907 ms: Mark-sweep 1403.9 (1519.2) -> 1403.8 (1519.2) MB, 2727.6 / 2.4 ms  last resort

<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 0x2e2673f9bbd9 <JS Object>
    1: $watch [/home/fjie/data/project/node_modules/vue/dist/vue.runtime.common.js:~3352] [pc=0x2ea1f0efe46a](this=0xe95a6a7c711 <a Vue$3 with map 0x837c9c72511>,expOrFn=0x303582fb881 <String[8]: nuxt.err>,cb=0xe95a6a6b691 <JS Function boundFn (SharedFunctionInfo 0x232b1f16f419)>,options=0x2e2673f82241 <undefined>)
    2: _init [/home/fjie/data/project/node_modules/vue/dist/vue....

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
 1: node::Abort() [node]
 2: 0x136849c [node]
 3: v8::Utils::ReportOOMFailure(char const*, bool) [node]
 4: v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) [node]
 5: v8::internal::Factory::NewTransitionArray(int) [node]
 6: v8::internal::TransitionArray::Insert(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Map>, v8::internal::SimpleTransitionFlag) [node]
 7: v8::internal::Map::CopyReplaceDescriptors(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::DescriptorArray>, v8::internal::Handle<v8::internal::LayoutDescriptor>, v8::internal::TransitionFlag, v8::internal::MaybeHandle<v8::internal::Name>, char const*, v8::internal::SimpleTransitionFlag) [node]
 8: v8::internal::Map::CopyAddDescriptor(v8::internal::Handle<v8::internal::Map>, v8::internal::Descriptor*, v8::internal::TransitionFlag) [node]
 9: v8::internal::Map::CopyWithField(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::FieldType>, v8::internal::PropertyAttributes, v8::internal::PropertyConstness, v8::internal::Representation, v8::internal::TransitionFlag) [node]
10: v8::internal::Map::TransitionToDataProperty(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::PropertyConstness, v8::internal::Object::StoreFromKeyed) [node]
11: v8::internal::LookupIterator::PrepareTransitionToDataProperty(v8::internal::Handle<v8::internal::JSObject>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::Object::StoreFromKeyed) [node]
12: v8::internal::StoreIC::LookupForWrite(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::Object::StoreFromKeyed) [node]
13: v8::internal::StoreIC::UpdateCaches(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::Object::StoreFromKeyed) [node]
14: v8::internal::StoreIC::Store(v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>, v8::internal::Object::StoreFromKeyed) [node]
15: v8::internal::Runtime_StoreIC_Miss(int, v8::internal::Object**, v8::internal::Isolate*) [node]
16: 0x2ea1efb840bd

I still haven't found the reason, but now I can only use pm2 to restart it. Does anyone have similar situation?I can draw on that

This issue has been reported many times already. According to the discussion in #1984, the issue might be fixed in the development branch, you might want to give it a try.

I use the nuxt/koa . And use this nuxt#dev, And changed some files ,but show error
This relative module was not found:
* ./components/nuxt.js in ./.nuxt/index.js

What should I do with this? I look forward to your reply
@paulgv

This is being discussed in this issue: https://github.com/nuxt/nuxt.js/issues/1695#issuecomment-340763289


404 page loads old design

Hi @shrunyan,
Just like to ask where does the link https://www.zesty.io/next/ came from?
Here are some pages related to nextjs:
https://www.zesty.io/integrations/nextjs-cms/
https://www.zesty.io/integrations/nextjs-team-benefits/
Thanks!

Any update on this issue?

@shrunyan we're looking into it. possible same issue with:
https://github.com/zesty-io/website/issues/674


Delete old java client

@yaoshengzhe

-1. We could only delete vtgate-client tests, not the source code. It would break things...

Forgot about my previous comment. I got your internal change, LGTM.


Makefile updates

Better manage obj files so they are not mixed src's ... and need to exclude all Catch test objs  when building lib

All catch .o file are now excluded, just need to clean up objs


v1 tag doesn't point to latest release

The v1 tag doesn't seem to be up to date so when using @v1 the first prerelease instead of 1.1 will be used. This basically prevents using semver version constraints.

Move the major version tag (such as v1, v2) to point to the Git ref of the current release. For more information, see "Git basics - tagging."

https://docs.github.com/en/free-pro-team@latest/actions/creating-actions/about-actions#using-tags-for-release-management

Thanks, that's a good point.
I'm looking for a idiomatic way of moving the git tag to another commit, but have only found hacked versions.
If you have a good way of doing so, then please let me know :)

Huh, I thought examples for this were actually easier to find since a lot of actions do this. But google only finds lots of actions that create semantic releases but don't move a "major" tag with them.
Then I found this which makes a lot of sense and should be rather easy: https://github.community/t/version-numbering-for-actions/16307/5
Also in the same thread: https://github.com/marketplace/actions/actions-tagger
Not sure if/how it works.
And lastly from those who should know what they are doing (hopefully): https://github.com/actions/toolkit/blob/master/docs/action-versioning.md#recommendations
git tag -fa v1 -m "Update v1 tag"
git push origin v1 --force

Should be easy enough to do this in a workflow that runs on published releases and parse the major version from the current tag.
If you lack the time I might be able to open a PR during the holidays though I wouldn't hold my breath on that one. And then again: Dependabot also checks action dependencies so it's not that big of a deal.

Found out that I could just move the release to point to the latest tag.
Easy fix wihtout any git magic needed. :+1:

Found out that I could just move the release to point to the latest tag.
Easy fix wihtout any git magic needed. :+1:

Thinking a bit more about this, it probably isn't a fix...
I guess git tags is how github-action makes checkouts, so changing the github release wouldn't affect anything.

Thinking a bit more about this, it probably isn't a fix...
I guess git tags is how github-action makes checkouts, so changing the github release wouldn't affect anything.

Manually fixing it for now.
This snippet seems to work, for future releases.
git tag -f v1 v1.2
git push --tags --force

Manually fixing it for now.
This snippet seems to work, for future releases.
git tag -f v1 v1.2
git push --tags --force


Command menu button doesn't work during Edit

The Cody commands menu button in the input field doesn't work while Editing the input query.
https://github.com/sourcegraph/cody/assets/44617923/8b5b0215-339b-4f17-b6d1-67e214c1b66c
CC: @toolmantim WDYT? I think it would be better to hide the commands menu button from the text field during the edit.

ty @deepak2431 what version?

@jdorfman While testing in the dev mode, I came across this.


input_player_connected_count() still named input_players_connected() in Functions (Players) section

input_player_connected_count() still named input_players_connected() in Functions (Players) section
where:
Functions (Players) section
correct name according notes in the code is:
input_player_connected_count()

Fixed, thanks


can't generate code with a constant expression

Try this:
kernel void foo(global float2* A) {
  float2 r;
  r.x = 0.0f;
  r.x *= 1.25f;
  r.y *= 1.25f;
  *A = r;
}

The SPIRVProducer pass doesn't know how to generate code for the y component of the vector.
In the LLVM domain, the interesting instruction is:
  store <2 x float> <float 0.000000e+00, float fmul (float undef, float 1.250000e+00)>, <2 x float> addrspace(1)* %A, align 8

We get an assert failure, printing the expression we don't know how to handle:
float fmul (float undef, float 1.250000e+00)

This was fixed with https://github.com/google/clspv/pull/138


Center alignment of text inside the buttons

Describe the bug

Text centred alignment would look better rather than being in the upper half.

Possible solution

Align the text to the centre for the buttons.

Screenshots

I would like to work on this issue can i work on it under LCM Soc21

I would like to work on it lgm SoC member

I would like to work on this issue under LGM-SOC-21.


Cannot authorize google account

Authorization Error
Error 403: access_denied
The developer hasn’t given you access to this app. It’s currently being tested and it hasn’t been verified by Google. If you think you should have access, contact the developer (rclone4phantom@googlegroups.com).

Authorization Error

I see. I haven't published this API Project from Google Cloud Console for Public use. It needs yet to be Verified.
You need to use your own CLIENT ID and CLIENT SECRET from https://console.developers.google.com/apis/credentials and replace all instance of my codes with yours, in Generator worker as-well-as other files inside "worker" folder.
Moreover, this repository is merged with Updates from Upstream until February, and the Main Author Added "Secure OAuth Flow" which changes many codes for new Security Reasons. I haven't got time to test the updated code, that's why I haven't merged them here yet.
After testing, I will Merge the updates and Publish the Project for Public use.
Till then, it's better to use your own Project Credentials.

Fixed with latest commit. But there's a guide which needs to be followed.
If you are an advanced user: https://github.com/rokibhasansagar/BhadooGDIndex#how-to-make-your-own-cloudflare-worker-and-index-from-scratch
If you are just a beginner: https://github.com/rokibhasansagar/BhadooGDIndex#how-to-use-this-project-as-is-and-make-your-index-the-easy-way


Import a sqldump

How would I import a local .SQL using this lib?

Why do you want to use this driver and not a standard tool like mysql < dump.sql ?

The idea was to automate the importing of the base database in the program so it would be another step less for the user

Hi @Wqrld, we dont use sqldump to import. We use normal sql command. Here's the code :
mysql -u your_username -p database_to_receive_imports < fullpath_to_sql_file
database_to_receive_imports must already exist before executing the above command.

closing as ill just do it through a bash script i guess...


Cheap way to check for integer overflow in c2mir?

Is there any way to check for integer overflow in c2mir, maybe through some of builtins? Or I can write generic code that detects overflow and MIR could optimize it to jo when needed?
UPD: I need this check for starlight JIT, it can emit int32 operation fast path when profiling interpreter observes that operands is always integers but on overflow it should fallback to f64 + f64 math.

Sorry for the delay with the answer.
Currently, there is no way to check integer overflow besides using some generic code which will not be optimized to use CPU flags.
I have plans to implement builtins for checking overflow as some dynamic language implementations use this (e.g. MRuby uses such builtins to check when to switch to multi-precision integer numbers).
But it is not high-priority task for me right now.  The performance impact of using generic code is not that big in some cases, e.g. CRuby uses the generic code for this (although fixnum there is not 32 or 64-bit long, it is one bit less).
Most probably such builtins will be implemented during this year.  Sorry I can not be precise now.

That's not a problem! I'm already switching to SMI + heap allocate everything other so I can not use native overflow catching mechanism for overflow checks (at least on 32 bit architecture when SMI is 31 bits)


Dont check on phase, but on pid. Register stacktrace as well (initial…

@thibaultcha  see code (untested). check on pid, not on phase, and add stacktraces.

I consider this change actually harmful compared to the old implementation. The reason for only allowing the patched method to be called in init_worker is because:

it's not init
it's the earliest phase before workers start to process actual business logic

If called in init (that is, before the Lua VM is forked), then all workers will have the same seed, and this patch does nothing to prevent this scenario.
Secondly, this patch allows the method to be called in later phases (assuming it wasn't called before), but if that is the case, workers potentially have had time to generate some random numbers in their business logic that, well, weren't random, until this is called.
tldr; sure, you won't be able to seed multiple times with this patch, but it does not enforce best practices for seeding in ngx_lua. The point of the current patch is to enforce best practises and make sure the workers are independently seeded, as early as possible, and only once.

Prefer #1613 (also shorter, simpler btw).

(Deleting the branch, keep a local copy if desired, reopen if debatable).

If called in init (that is, before the Lua VM is forked), then all workers will have the same seed, and this patch does nothing to prevent this scenario.

forking a worker changes the PID, hence generates a new seed. The original patch does not allow any random stuff to be done in the init phase (not just business logic, but also technical reasons for unicity are made impossible).

Secondly, this patch allows the method to be called in later phases (assuming it wasn't called before), but if that is the case, workers potentially have had time to generate some random numbers in their business logic that, well, weren't random, until this is called.

That is correct, good point. So maybe we shouldn't be patching randomseed, but random itself? Such that it seeds on the first call.

Once forked, the PID sure changed but "hence generates a new seed", that, I don't see how? The method is not magically being called again, and the seed is cached at the module level, so all workers will have the same seed.
It's ok, I suggest we keep the current method, we don't intend to seed in init so far, and one of today's PRs was suggesting to use OpenSSL, RAND_bytes, if you want to check it.

On Sep 15, 2016, at 12:34 AM, Thijs Schreijer<EMAIL_ADDRESS>wrote:
If called in init (that is, before the Lua VM is forked), then all workers will have the same seed, and this patch does nothing to prevent this scenario.
forking a worker changes the PID, hence generates a new seed. The original patch does not allow any random stuff to be done in the init phase (not just business logic, but also technical reasons for unicity are made impossible).
Secondly, this patch allows the method to be called in later phases (assuming it wasn't called before), but if that is the case, workers potentially have had time to generate some random numbers in their business logic that, well, weren't random, until this is called.
That is correct, good point. So maybe we shouldn't be patching randomseed, but random itself? Such that it seeds on the first call.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or mute the thread.


Xcode closing issue

Hey, thanks for the great app!
I have a question rather than an issue: SpotMenu is also closed after I close the Xcode after running it. Is it an expected behaviour?  How can I prevent SpotMenu to be closed even though I close Xcode?
Thanks!

Hi,
If you pressed the play button in Xcode to start the app then that's normal.
If you don't want the app to close after Xcode has been closed, copy the .app file to your Applications folder, then you can launch it from the Launchpad.

Or you can just use the prebuilt binary

@kmikiy thank you so much!

you're welcome 😉 glad I could help


developer @Cr4xy @MasterCoder

Hello,
I'm currently searching for a partner for my site d-bots.com . It's too much work for one person.
I want to make slither.io bots too ! Hope to hear from you !
greats,
david

lol. Add me on Skype @youagar and we could talk. :+1:

Cr4xy did this all work, Masta just helped him little bit and now he's taking money :p

Like with the facbook founders ;)

@Cr4xy are you interested ?

Yes, add @cr4xycode. :)


Use another output format to always write golden files

What is this?
What does it do?
Why is it important?
I typically close unsolicited PR's without looking at them if they lack the information above.

It changes the behaviour of the golden/functional tests to always output the golden files to public/gold/tests, so they can be copied directly to assets/gold/tests.
Currently the golden files are only output to public if the environment is production. This might have been enough a few months ago, but since 0.123.0 the default is --renderToDisk.
Another advantage is that now you can add environment = 'development' to the build config to exclude the tests from production.

This example was written after the release of v0.123.0. The fact that hugo server renders to disk was fully understood at the time of its creation.
I'm happy that you've found this example to be useful, but I prefer to keep it as is.


[koa-shopify-auth] add prefix support post pull [#1413]

Description
Fixes [#1148][#1426]
Apply prefix in koa-shopify-auth to various Safari/ITP redirects.
[#1413] addresses several issues with Safari by bringing in some code from shopify_app.  However, that code was not koa-shopify-auth prefix aware.  This small set of changes helps address this.
NOTE: There are similar PRs [#1149] and [#1196], hopefully this simply addresses the same issue post [#1413].
Quick discusion: While most of the redirects are related to prefixing "/auth" routes, there is one additional target, appTargetUrl, to which the prefix could be added to as well, since otherwise, upon client side redirect, the server has no idea where this came from.  Note that the referer (sic) header is now blocked on safari, and even with the Referrer-Policy set, only the origin is provided not the path, so even that method cannot be used to infer the prefix upon return.
Type of change

[x] koa-shopify-auth Patch: Bug/ Documentation fix (non-breaking change which fixes an issue or adds documentation)

Checklist

[ ] I have added a changelog entry, prefixed by the type of change noted above

I've been getting frustrated with koa-shopify-auth and the speed that fixes are made... but even more frustrating is that real issues are left uncommented for weeks, and community PRs take so long to be reviewed or merged.
So I created a fork and I did the same fix already 11 days ago:
https://github.com/simonhaenisch/koa-shopify-auth/commit/08f2c56241bc50d2b7e807359e29138d1488c3da
(except some whitespace and the missing test, it's actually the exact same set of changes 😄)
I can confirm that this fix works with the 3 different browsers (Chrome, Firefox, Safari) I tested with, using different cookie settings.

@simonhaenisch I'm sorry that working with us and the library has been frustrating :( We're definitely trying to do a better job maintaining this library. I hope that we can earn back your trust and support, starting by getting this fix into the mainline. Thanks for the feedback on this.

@ragalie, i signed the CLA a few days back, and if i try to sign again, it says "To sign our CLA 1 field needs to be changed / GitHub username has already signed a CLA".  also, for some reason it shows a strange email address synthesized from my local network address, instead of my official public email.  any way to restart that process?
otherwise, will work on item 2.

@kavika-1 I suspect the CLA check tries to use the email from the commits themselves which would explain why it is showing two versions of you... I'd double check that git config --get user.email returns what you expect 🤔
@ragalie not sure how we should proceed if the CLA but is not working after he checks that :/

@TheMallen Darn, indeed.  I set up a new macos environment, and indeed the user.email (and name) are not set.  But don't know how to fix the past?

@kavika-1  I had a similar problem when I refromated my macbook recently, so I figured :P Sorry for all the trouble.
You should be able to do some history rewriting against your branch / clone (it will let you force push to your branch just not master). Github has a little guide  for how to do it actually.
If it doesn't work for you I can do it for you, but I'd need to know what email to change it to and to make sure I have your permission as I wouldn't want to mess around with the history of your contributions lightly.

@TheMallen grateful for your experience, i'll give that rewrite a try!

We noticed that this PR either modifies or introduces usage of the dangerouslySetInnerHTML attribute, which can cause cross-site scripting (XSS) vulnerabilities. Our team will take a look soon, but for now we recommend reviewing your code to ensure that this is what you intended to use and that there is not a safe alternative available. Docs are available here.

👋 We noticed that this PR either modifies or introduces a link into help.shopify.com with a hardcoded locale. Help can automatically detect the locale from the HTTP Accept-Language header and redirect the user to the appropriate language.
Should you absolutely need to decide the language to be displayed, please use the locale query parameter.
Please consider updating the offending content.
For more info, check this out in the Home repo README: https://github.com/shopify/help#content-files
Find us at #docs :)
cc: @Shopify/docs-dev

We noticed that this PR modifies the behaviour of CSRF tokens in this application. Our team will take a look soon, but for now please consider what the best CSRF behaviour for your application is. If the controller in question is meant to be used mostly as an API by non-browser clients, a sane option is protect_from_forgery with: :null_session, prepend: true (since APIs don't usually send CSRF tokens or use sessions anyway). If this endpoint is interacted with from a browser (via a form POST or similar), then it is good to use the stricter protect_from_forgery with: :exception. If you'd like to read more about Rails CSRF protection, there's some great Rails documentation on it: https://guides.rubyonrails.org/security.html#csrf-countermeasures.

@TheMallen sorry seems i didn't quite get those instructions to work properly, and it rewrote the whole history?  sorry 'bout that.  i am not sure how to revert that change if possible at all, so i'll go to plan "B" and create a new branch/pull request unless you have a magic command to undo that :/

@kavika-1  sorry didn't get back to you in time, but I see you have a new branch that is passing CLA, so thanks again for the hard work :)

@TheMallen thanks for your assistance and encouragement, The hard work was self-inflicted!


macOS app has inaccurate version information

To accurately display version information, macOS apps need to have the CFBundleVersion and CFBundleShortVersionString tags in Info.plist.
In Flying Carpet’s case, the latter is set to a fixed 1.0.0 while the former is not present.
If they’re not set during the build process, they can be added after it’s done by directly editing the Info.plist:
# Change these values
app_path='/PATH/TO/APP/HERE'
app_version='VERSION NUMBER HERE'

# Keep these as they are
/usr/libexec/PlistBuddy -c "Add :CFBundleVersion string ${app_version}" "${app_path}/Contents/Info.plist" # Adds the missing value
/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString string ${app_version}" "${app_path}/Contents/Info.plist" # Modifies the existing value

That would use the same version number for both fields. Technically they should be different, but that’s a secondary concern. An accurate version number is important for macOS to know which app to open in ambiguous situations; for users who expect the information available via the Finder; and for interoperability with other apps.

Ok thanks, probably be next week sometime but I'll fix.

@vitorgalvao I updated CFBundleShortVersionString and added CFBundleVersion and updated the Mac 4.1 binary on the releases page. What's the easiest way to check that value in macOS?

What's the easiest way to check that value in macOS?

# Change this value
app_path='/PATH/TO/APP/HERE'

# Keep these as they are
for version in {CFBundleVersion,CFBundleShortVersionString}; do
  echo -n "${version}: "
  /usr/libexec/PlistBuddy -c "Print :${version}" "${app_path}/Contents/Info.plist"
done

That would return:
CFBundleVersion: 4.1
CFBundleShortVersionString: 4.1


add audience field on RegisteredClient Entity

Hey,
As part of private_key_jwt flow, We want to generate JWT with audience of the registered client.
Currently by default - the framework puts clientId there.

Thanks for getting in touch, but it feels like this is a question that would be better suited to Stack Overflow. We prefer to use GitHub issues only for bugs and enhancements. Feel free to update this issue with a link to the re-posted question (so that other people can find it) or add a minimal sample that reproduces this issue if you feel this is a genuine bug.
Having said that, you may find the section of the reference guide on OAuth2TokenCustomizer valuable.

Hey @sjohnr
I know the customizer, but my question is:
Why we have set of scopes on the registeredClient, and not also set of audience?


Resolve issues with split origin/cache endpoint for director

As a temporary work around to interfacing with XRootD, the director was modified before the 7.0.0 release to serve either caches or origins at its default endpoint based on how the director was configured at launch. This was due to a limitation in XRootD that prevents a redirector service (indicated by the pss.origin directive) from taking any paths after its domain, making it impossible to point the redirector to <my-director>/api/v1.0/director/origins.
The problem is that we now have two director services, one for caches and one for origins, and synchronization between these two is a problem because Pelican only advertises to one.
Off the top of my head, there are two routes that could be taken to resolve this:

Follow up on the open issue for xrootd to make redirector configuration with a server path doable. This would allow us to nix one of the directors.
Adjust Pelican so that the federation discovery step can handle a list of director services. Origins should then advertise to each director, and the directors should probably periodically merge their advertisement caches as well.

I'll add a third option:
Make the default route be based on the incoming Hostname header, meaning one service can serve either, depending on what the client 'thinks' the hostname is.
At some point, we need to think about high availability / redundancy at the director level.   Can you provide more detail about what you were thinking? My reading of your suggestion was to have the director read the incoming Host header and direct based on whether it thought the original request was for an origin vs a cache.

I think you got the approach right but I want the feature to be explicitly configured.  That is, make the administrator explicitly enable this mode of operation and then explicitly state what hostname header is associated with the operation.  I.e., something like this in the YAML config:
Director:
   DefaultResponse: cache
   CacheResponseHostnames: ["cache.example.com"]
   OriginResponseHostnames: ["origin.example.com"]

Your current PR looks at the incoming hostname and does some substring searching to guess intent.  It's always better to make intent explicit instead of implicit.


Optimistic approving github action ;-)

This si a regular action that tries move forward stale PRs. If there is
a PR with 1 approve already that is 10 days old, then bot adds another
approval. This happens only if at least two reviews are requested. So
author has to request two reviews, one approval has to be granted and
that has to be 10 days old.
This doesn't mean automatic merge, it "just" unblocks the merge. It is
still on the merger if it is merged or not.

xargs needs -r (--no-run-if-empty) otherwise gh pr review --approve could run without an argument and failing out.
(This option is a GNU extension.)

Could this also check if the commit-acceptance passed?

Could this also check if the commit-acceptance passed?

This shoudln't be necessary. Theoretically failed acceptance shouldn't have any approve, more importantly failed acceptance is a blocker on its own (and resubmit with fixes will reset approvals anyway). So safe as it is

@JaurbanRH @pehala you really want to turn on this one? IMHO there will be a lot of mess

It will only give approve, it wont force our hands at merging


The join predicate is not propagated to the index lookup on the inner table for nested loop index joins

There's a nested loop index join in TPCC where a primary key lookup can be performed on the inner table based on the join predicate and other predicates. However, the join predicate information is not propagated to that index lookup so the index scan is performed with only the s_w_id as the search key, such returns much more tuples than in the ideal case.

Fixed by #883.


Include ability to add a user to the blueprint

User account creation allows for defining name, description, password, ssh key and also enabling the user to be a server admin (i.e. groups=["wheel"]).

When an ssh key is provided, no validation occurs. When the account is listed on the Details page, if the key includes an email address, that is the only part of the key that displays in the table.
When a password is provided, an encrypted password is stored in the blueprint. When the account is listed on the Details page, only a checkmark icon displays to indicate that a password is set. When editing a user account, the password can be deleted or a new password can be set.

User accounts can also be updated or removed.
User accounts that are created for a blueprint are listed on the Details tab of a blueprint.
Text strings and functionality match Cockpit as much as possible, but there are some differences given that the workflow is slightly different

Codecov Report

Merging #594 into master will decrease coverage by 6.32%.
The diff coverage is 7.4%.

@@            Coverage Diff             @@
##           master     #594      +/-   ##
==========================================
- Coverage    73.3%   66.97%   -6.33%
==========================================
  Files          66       68       +2
  Lines        3128     3452     +324
  Branches      597      686      +89
==========================================
+ Hits         2293     2312      +19
- Misses        835     1140     +305

Impacted Files
Coverage Δ

core/store.js
100% <ø> (ø)
:arrow_up:

core/reducers/blueprints.js
55.81% <0%> (-7.91%)
:arrow_down:

core/actions/blueprints.js
100% <100%> (ø)
:arrow_up:

pages/blueprint/index.js
46.28% <13.11%> (-9.12%)
:arrow_down:

components/Form/Password.js
3.7% <3.7%> (ø)

components/Modal/UserAccount.js
3.84% <3.84%> (ø)

core/actions/modals.js
77.77% <33.33%> (-3.56%)
:arrow_down:

core/sagas/blueprints.js
62.36% <7.14%> (-5.08%)
:arrow_down:

core/reducers/modals.js
65.15% <8.33%> (-5.69%)
:arrow_down:

core/sagas/inputs.js
71.42% <0%> (-3.07%)
:arrow_down:

... and 4 more

Continue to review full report at Codecov.

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

Thanks for the review!

The same user can be added.

When I enter the name of an existing user, the dialog will display as shown below. But I also included the same functionality in cockpit where the user name is based on the full name, and I did not include that same check in that case, so I will fix that.
Can you confirm if that's how you were able to create a duplicate user account? The names shown in your example are not consistent with that workflow, so I'm curious what steps you took to produce those duplicate entries.

The user which only has username can be created. Is this by design?

Yes, that's by design.

@jgiardino, it's easy to reproduce. :-) Just fill in all items, then the Create button will be clickable.

I fixed both the issue that @henrywang found and the one I found. I also changed a class on the buttons that display in the table so that they match a similar example in PF3 react.

@jgiardino, this issue cannot be found after applying your patch. Thanks for fixing this issue!
I found another issue. When you create a new blueprint and then add user, the user cannot be created. This issue can be reproduced only on new created blueprint.
How to reproduce:

Create a new blueprint, add component into blueprint.
Click blueprint name link to go to view blueprint page.
Create user. Filled in all items, then click Create button.
There's no user in the UI. And after I check the .toml file, there's no user added in that file.
After that, user can be created.
Could you please take a look? Thanks.

@henrywang Thanks for reviewing again, and catching that issue! I just pushed a fix for that.


Issue passing reader to upload BlockBlobClient

Feature Request
Dears
if I pass a reader instead of a readseek descriptor to upload BlockBlobClient API as in case of streaming from network and not from local file (for instance ftp, sftp, http etc as sources) I get an error during compilation (descriptor is not seekable).
To work-around I define a reader with a fake seek interface that simulates the operation required by API, in particular from this code:
count, err := validateSeekableStreamAt0AndGetCount(body)
The fake seek returns the size of source file in case of io.SeekEnd and 0 in case of io.SeekStart (I get the size from the source before launching the copy via streaming).
That's fine and works, BUT...
what happen if during streaming some transformations occur between reading and writing (such as PGP encoding, Dos2Unix encoding etc..) I'm not sure it will work, because I don't know the size in advance, the seek method could return a bad value and upload BlockBlobClient API might fails.
Is there another api to use to upload via streaming that accepts a reader descriptor instead of a readerseek descriptor ?
I also work with MINIO S3 SDK and if that helps, the MINIO S3 SDK accepts a reader type descriptor when putting the file.
Best Regards

Dear, any news ?

Hey @ior308 ,
I sincerely apologize for replying late on this thread.
I'm aware of this issue and I think it was reported in this PR as well. Let me fix that. I'll keep you informed.

Fixed in sdk/storage/azblob/v0.3.0


Control the folder created by downloading files

It would be nice if it can be selected to just download files themselves, not to download them with folders indicating the hierarchy and structure that moodle and moodown give. Sometimes users (like me) don't need all those folders really.

Sometimes I just want some slides...
And sometimes the slides is uploaded in a way that one topic (or should I call it one directory?) contains only one file... which is quite annoying, whether in terms of clicking those topics on moodle or opening the nested folders created by the download (which were created according to the topic hierarchy on moodle).


Omit main from coverage

I don't think it makes sense to include the CLI in the coverage stats as it isn't part of the library code, more like an example?

Coverage increased (+6.6%) to 76.338% when pulling 8251b8e97516074e947c4862a7bd855b7ffe7d10 on Hate-Usernames:update-coveragerc into 54340fffc99cb73e97358b094ae830da52cf173c on ggravlingen:master.

Thanks for the PRs! Looks like we need to bump pytest version in the requirements for Travis build to succeed?

Yes, I think pytest-timeout 1.3.0 requires pytest>=3.6.0 (latest is 3.6.1).
Probably makes sense to bump both versions in requirements_test.txt?


adding the adoption overview assembly to guide

https://issues.redhat.com/browse/RHOSPDOC-1874
https://issues.redhat.com/browse/RHOSPDOC-1873

@jistr I'm only tagging you in case you want to see how the overview section is actually going to look in the guide. I will send a request to my team for a peer review on Monday morning.


How are you using/loading the tuned models outside LLaMa-Factory?

I really liked how my models for classification turned out when testing them with the huggingface inference engine. So I understand we are loading the checkpoints from the training, and then we export to multiple .safetensors files. But I had trouble trying to get the model I made with LLama Factory in ollama for example. Perhaps because im using such a new model? LLaMa3.1-8B in this case.
I wanted to know how exactly are you guys using the files exported ? Because usually i build a gradio app with the endpoint and i use a client to call it, but the gradio endpoints for LLaMa-Factory were not working when i try to use any of the functions it always complains about the model argument. So my solution is probably use the checkpoints outside of LLama-Factory or the safetensors exported.
I was sketching something like this below:
import gr
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer, Engine
from safetensors import SafetensorsLoader

# Specify the directory containing the split checkpoint files
model_path = "path/to/your/model/safetensor_split"

def load_model(model_dir):
    # Load the model from the split checkpoint
    engine = Engine.from_safetensors_split(model_dir)
    return engine

loaded_engine = load_model(model_path)

tokenizer = AutoTokenizer.from_pretrained("llama-base-uncased")
model_checkpoint = loaded_engine

def infer(text_input):
    inputs = tokenizer(text_input, return_tensors="pt")
    outputs = model_checkpoint.generate(**inputs)
    output_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
    return output_text

demo = gr.Interface(
    infer,
    [gr.Textbox(label="You: ")],
    [gr.Label(label="Model Response")],
    title="Simple Chat",
    description="A basic chat interface with our finetuned LLM model."
)
demo.launch()

But what im really wondering is how you are using/opening your trained models for batch tasks, deployment etc

you can try llamafactory-cli api and openai-python to use finetuned models

okay i looked up the command in README.md
Inferring LoRA Fine-Tuned Models
Use CLI
llamafactory-cli chat examples/inference/llama3_lora_sft.yaml

Use Web UI
llamafactory-cli webchat examples/inference/llama3_lora_sft.yaml

Launch OpenAI-style API
llamafactory-cli api examples/inference/llama3_lora_sft.yaml

But it gets stuck
tokenizer.json:   0%|             | 0.00/9.09M [00:00<?, ?B/s]│

Thanks @hiyouga . if I run llamafactory-cli api it asks for a model path or folder. I tried pointing it to the exported folder, or the saved checkpoints at saves/Llama-3.1-8B/lora/my_trained_model/ but still the same.
I looked up the README.md
Inferring LoRA Fine-Tuned Models
Use CLI
llamafactory-cli chat examples/inference/llama3_lora_sft.yaml

Use Web UI
llamafactory-cli webchat examples/inference/llama3_lora_sft.yaml

Launch OpenAI-style API
llamafactory-cli api examples/inference/llama3_lora_sft.yaml

when i run this it starts to download LLaMa3 but i tuned my models with Llama-3.1-8B

I guess i have to create a yaml for my tuned model?

yeah, the yaml file should be re-configured and pointed to the new model path
the api's entrypoint is the same as the openai's one

@240db the value of model is unused

@hiyouga thanks!
It's running and working great!
Trying to run multiple models at once now.
Is there a way run multiple instances of llamafactory-cli api without conflicting the port 8000? The default port is always 8000, but to accommodate other models at the same time, is there a way to assign a different port when running llamafactory-cli api ? Otherwise when running a second instance of llamafactory-cli api, it will complain with the port being used and unavailable.
I found a reference to the port 8000 in the src folder, api.py
https://github.com/hiyouga/LLaMA-Factory/blob/641d0dab08d96a93c34657742213d8994d9ed476/src/api.py#L27
I thought of making a change like this, it would check first port 8000, if its busy, then try 8001, 8002 and so on:
import os
import socket

import uvicorn

from llamafactory.api.app import create_app
from llamafactory.chat import ChatModel

def find_available_port(start=8000):
    """Find the first available port starting from `start`."""
    for port in range(start, 60000):  # Assuming we're not interested in ports above 60k
        try:
            sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            sock.bind(("localhost", port))
            sock.close()
            return port
        except socket.error:
            pass
    raise RuntimeError(f"Could not find an available port between {start} and 60000.")

def main():
    chat_model = ChatModel()
    app = create_app(chat_model)
    api_host = os.environ.get("API_HOST", "<IP_ADDRESS>")
    try:
        api_port = int(os.environ.get("API_PORT", str(find_available_port())))
    except ValueError:  # If API_PORT is not an integer, use the default
        api_port = find_available_port()
    print(f"Visit http://localhost:{api_port}/docs for API document.")
    uvicorn.run(app, host=api_host, port=api_port)

if __name__ == "__main__":
    main()

I had a similar issue, you just need to change the port number in app.py in this directory: LLaMA-Factory/src/llamafactory/api


hf_transfer stopped uploading suddenly.

While uploading a model to huggingface, HF_Transfer took up all of my bandwidth, i was practically unable to use the internet.
However, after a while i noticed that the network usage was back down to 0 and my upload had stopped entirely. The model was not uploaded into the repository.
cntrl + c did not work to interrupt and had to close terminal entirely.

It seems like due to huggingface's unpredictable rate limit as mentioned in #30, I did a ugly but seemly working monkey patch to temporarily alleviate it by manually limit the concurrency.
huggingface_hub.constants.HF_TRANSFER_CONCURRENCY = 16
original_upload = hf_transfer.multipart_upload
def patched_upload(*args, callback=None, **kwargs):
    kwargs['max_files'] = huggingface_hub.constants.HF_TRANSFER_CONCURRENCY
    kwargs['parallel_failures'] = kwargs['max_files'] - 1
    kwargs['callback'] = callback
    result = original_upload(*args, **kwargs)
    return result
hf_transfer.multipart_upload = patched_upload

Are you using it from a personal network ?
It shouldn't really be used on personal network as the hardware is not really made for that.
That being said there might be a deadlock somewhere that was triggered here, we'll look into it.

I found and fixed 1 GIL deadlock that was happening in the tight loop (python errors are apparently taking the GIL).
It was kind of inconisistent to trigger though. Newer version will fix it.


Request more websites

If you find more compliant websites, Please leave a message below. Thanks.

https://*.gitbooks.io/


New in Next.js: Parallel Routes and Interception

Thank you so much for this library. You might enjoy the new features we'd added to Next.js 🙏 Open to feedback.
https://nextjs.org/blog/next-13-3#parallel-routes-and-interception

Hi @leerob, I understand that intercepting routes should be able to replace this package. If so, happy to deprecate it in favour of native routes.

If you feel the native support matches everything you wanted to accomplish, then yes! Also open to feedback on the implementation and experience since you have a lot of experience in this area.

Hello @leerob, Thanks for leaving this message here. Also thank you so much for this library, it has been very useful in some of my personal project that I worked on.

Project deprecated!


README Documentation is Confusing

Description
the readme file has bunch of unrelated links to node-redis
brotha i just wanna npm install the package, import it in my code, create an instance of the class, and start using set and get commands.
which link do you want us users to really click? we're getting bombarded with your shilling of redis labs product (we get it you guys need $) but cant you guys onboard us properly first?
i'll go one by one on each link in case you think im being lazy

https://redis.io/ this is your main site, the fuck do i need to read there?
https://redis.js.org/ this is copy of readme, useless
https://university.redis.io/academy do i have to enroll here, this is just a js/ts key-val client, wtf
https://launchpad.redis.com/ this just redirects me to https://redis.io/learn again, i know how redis works, i just need to make the client side sdk work
https://redis.io/try-free/ brother i would love to try that hosted solution but i need to make my client side code work first?
https://developer.redis.com/ this just redirects tme to https://redis.io/learn again, i know how redis works, i just need to make the client side sdk work
https://redis.io/community/ do i go here and cry for help?
https://redis.com/company/careers/jobs/ no i dont need a job i just want to make my client sdk work

i scroll down further

https://github.com/redis/node-redis/blob/master/packages/client it says "The source code and documentation for this package are in the main node-redis repo." what is this infinite documentation recursion are you getting me into

i use my remaining brain cells to go to npm and see that the original package with proper docs still exists at https://www.npmjs.com/package/redis and the one at https://www.npmjs.com/package/@redis/client got nothing on it.
im gonna write to santa and make him add you guys to the naughty list

Chill bro, its just a bit of text

kk


Use django-ipware for consistent and DRY method to retrieve request source IP

django-ipware provides a consistent method to retrieve the source IP from the request. Since we use it in many projects it would be useful to use this library to retrieve IP's.
I suggest to add the import with try..except ImportError block. This way it's not a hard dependency, but if the user has the library installed, it will default to that library. We can then keep the manual method as a fallback.
I can take care of this if it's accepted.

I will, good idea

Please do PR to dev branch

https://github.com/peppelinux/django-audit-wazuh/pull/14


[Feature]: restapi supports modifying Authentication

restapi supports modifying Authentication.

@Y4er https://github.com/MetaCubeX/mihomo/blob/2a3325feef08b7d8bb7b3edddbabb9e5c32136ee/listener/http/proxy.go#L114C8-L114C8
Missing cache cleanup.

I think there is no cache cleaning problem. In https://github.com/MetaCubeX/mihomo/blob/bda71dbfa1a66e00422c8beed493d828df439a24/hub/route/configs.go#L273, the line of code P.ReCreateHTTP(pointerOrDefault(general.Port, ports.Port), tunnel.Tunnel) will regenerate a new cache object.
https://github.com/MetaCubeX/mihomo/blob/bda71dbfa1a66e00422c8beed493d828df439a24/listener/listener.go#L140
https://github.com/MetaCubeX/mihomo/blob/bda71dbfa1a66e00422c8beed493d828df439a24/listener/http/server.go#L53
I tested it locally and there was no problem.

After many debuggings, it was found that there would indeed be a bug if the cache was not cleared.
for example
First authentication user1:pass1
At this time, if user1:pass1 is used to authenticate successfully, the cache table will store user1:pass1.
curl --proxy http://user1:pass1@<IP_ADDRESS>:7891 cip.cc

After changing the authentication with user2:pass2, user1:pass1 will still be in the cache table during the cache cycle, which causes the original password to still be used as a valid credential for authentication.
The target website can still be accessed using the proxy using the following command.
curl --proxy http://user1:pass1@<IP_ADDRESS>:7891 cip.cc

The cache cycle depends on the maxAge of the LruCache structure, which defaults to 30.

This PR will not be accepted due to too poor code quality.


created responsive cookie policy page and linked it to footer

Related Issue
[Cite any related issue(s) this pull request addresses. If none, simply state “None”]
Fixes:  #1076
Description
created a responsive cookie policy page with table of content (at left) through which navigation can be done easily.
issue no: #1076

Type of PR

[ ] Bug fix
[x] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
[Attach any relevant screenshots or videos demonstrating the changes. Make sure to attach before & after screenshots in your PR.]
https://github.com/user-attachments/assets/d6f5e80f-93a6-4d3d-9115-4216ddcf83a5
Checklist:

[x] I have made this change from my own.
[ ] I have taken help from some online resources.
[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.
[ ] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers and screenshots after making the changes.

@PriyaGhosal please review this pr. And also assign this pr to me with the necessary labels.

@PriyaGhosal  @anuragverma108  please review this pr.

@samarth-6 i have resolved the conflicts now, please review it now.

@Palmistry2310

Navbar changed when merged your pr .Please see the conflicts highlighted in the image above. Resolve the conflicts in the mentioned files. Ensure you pull all the latest changes before pushing your feature/bug fixes to the main branch. After resolving the conflicts, please open a new PR for review.
Thank you!


Upload Failed...

I'm just using the docker-compose script with only one change, the skin port changed to 80 from 8080 and I'm not able to upload any files.
logs from snake docker container as follows:
snake_1       | [W 200604 06:41:45 snake_handler:208] upload/file - no 'file' in part
snake_1       | [W 200604 06:41:45 web:2106] 422 POST /upload/file (<IP_ADDRESS>) 2.38ms

Hmm, interesting, will check this out when also testing the setup.sh. The above implies that the front end is not creating the request to the backend correctly.

I swapped the port from 8080 to 80 and experienced no error, going to close this for now. Hmm there must be something that caused it but not sure what.

I'm getting this issue as well. If I change the externally available port for either the API or the snake-skin in docker-compose.yml uploading files breaks.

Can you paste a sample of the part of the compose file you are changing then I should be able to replicate.

I just change the external side of the port definition. If I set it to 3000:3000 then it works fine.
snake-skin:
build:
context: ./snake-skin
dockerfile: Dockerfile
environment:
- SNAKE_SKIN_SNAKE_API=http://snake:5000
depends_on:
- snake
ports:
- "80:3000"
links:
- snake

Okay, I tried changing the above again on a clean install on Ubuntu, and I am just not getting that error. Have you got other errors in you compose log, such as snake failing to start?

I found the error. I was also trying to redirect the environment as - SNAKE_SKIN_SNAKE_API=http://snake:443 with the snake ports setup as 443:5000. Since docker does an internal route for that you have to leave the environment as SNAKE_SKIN_SNAKE_API=http://snake:5000.
Sorry for the hassle.

Absolutely no worries, Snake's docker setup is slightly confusing. Will try and address it if I ever find time to start on version 2 :)


Add heaptoptions for connect, ksql and schema-registry

As per: https://github.com/confluentinc/cp-helm-charts/issues/130
Would like some feedback for the defaults.

Actually I don't think KAFKA_HEAP_OPT works on these components.

For schema-registry: https://github.com/confluentinc/schema-registry/blob/8f727d74da65a9be4f7fd82fd8a2498ad48c85ec/bin/windows/schema-registry-run-class.bat#L59
For KSQL: https://github.com/confluentinc/ksql/blob/54dedea567dc5994ad46fcbde41903f83dfe7782/bin/ksql-run-class#L83
For connect: https://github.com/confluentinc/cp-docker-images/issues/593

I was a bit to assuming they were all the same :)

I think I have it all covered :)

LGTM. Thanks!


Remote Explorer "Remove from Recent List" doesn't delete item

VS Code Version: 1.76.0
OS Version: Windows 10 x64

Steps to Reproduce:

Have more than one folder item in the Remote Explorer SSH section of a particular server.
Right click any item and click "Remove from Recent List".
Right click a second item and click "Remove from Recent List".
Second item will not disappear in the current window. Same with any further attempts.
Restart VSCode and all the deleted items are gone.

@SkryptX I'm not able to reproduce this issue. Does it still happen for you?

@alexr00 Yes, it still does.
Using...
Version: 1.76.0 (user setup)
Commit: 92da9481c0904c6adfe372c12da3b7748d74bdcb
Date: 2023-03-01T10:22:44.506Z
Electron: 19.1.11
Chromium: 102.0.5005.196
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19045
Sandboxed: No

@SkryptX since I cannot reproduce the issue can you share logs:

Open the developer tools console (command: Developer: Toggle Developer tools)
Clear the developer tools console.
Reproduce the issue
Share the contents of the developer console.

In log level trace you can see that onCommand:remote-internal.deleteSshFolderFromHistory only gets executed the first time:
TRACE CommandService#executeCommand remote-explorer.deleteFolderHistoryItem
TRACE onWillActivateByEvent:  onCommand:remote-explorer.deleteFolderHistoryItem
TRACE onWillActivateByEvent:  onCommand:remote-internal.deleteSshFolderFromHistory
TRACE MainThreadTreeViews#$refresh remoteTargets undefined
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] >> normalized [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
DEBUG User data changed
TRACE CommandService#executeCommand remote-explorer.deleteFolderHistoryItem
TRACE MainThreadTreeViews#$refresh remoteTargets undefined
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] >> normalized [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
DEBUG User data changed
TRACE CommandService#executeCommand _update.state
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] >> normalized [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
DEBUG User data changed
TRACE CommandService#executeCommand remote-explorer.deleteFolderHistoryItem
TRACE MainThreadTreeViews#$refresh remoteTargets undefined
TRACE CommandService#executeCommand remote-explorer.deleteFolderHistoryItem
TRACE MainThreadTreeViews#$refresh remoteTargets undefined
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] >> normalized [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
DEBUG User data changed
TRACE CommandService#executeCommand _update.state
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] [raw] ["change"] globalStorage
TRACE [File Watcher (node.js)] [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
TRACE [File Watcher (node.js)] >> normalized [CHANGED] c:\Users\myuser\AppData\Roaming\Code\User\globalStorage
DEBUG User data changed

@wildchild105 That probably means this ticket can be closed as well since the original bug is fixed in the extension repo, right?

@wildchild105 If you install the latest pre-release version of the Remote-SSH extension the issue is fixed, at least for me.


Proper redis-cluster MGET & MSET by being aware of hash tags

Ref: #177
This is a fix for the non-use of MGET & MSET when in redis-cluster mode.
We (carefully) examine the keys to determine which can be grouped together as they use the same hash tag and hence go to the same slot.

Just now realise that there is some similar prior work on this:
https://github.com/predis/predis/issues/149
I think the hash slot checks also satisfy those conditions:

IF the key contains a { character.
AND IF there is a } character to the right of {
AND IF there are one or more characters between the first occurrence of { and the first occurrence of }.

This is embodied in the following logic:
        if key.count('{') == key.count('}') == 1 and \
           -1 < key.index('{') < key.index('}') - 1:


feat: LSP inlay parameter hints

Description
Problem
Resolves #5554
Summary
The type and parameter hints can be toggled from a configuration which we get during LSP initialization. However, vscode-noir doesn't sent those configs yet, but at least the code here will work once we do that on the other side. For now they will only show up.
https://github.com/user-attachments/assets/ebc52b52-287a-43fa-b87d-1a74012c3e78
Additional Context
None.
Documentation
Check one:

[x] No documentation needed.
[ ] Documentation included in this PR.
[ ] [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt on default settings.

Does this hide the inlay hint if the variable being passed is the same as the function parameter?

Does this hide the inlay hint if the variable being passed is the same as the function parameter?

Indeed!
You can see some examples here: https://github.com/noir-lang/noir/pull/5553/files#diff-a6f79358051ca5cbc87c4a953331b6480b281626d728b0945e202ced88a0c8cdR23-R93
(there are tests backing those comments, but I put those comments for clarity)

To clarify a bit more, I looked at what Rust Analyzer does and copied more or less the same logic.


Fix broken readline package

With the release of 0.49.0, we changed Ansi.erase to be erasing left rather than right. This made sense based on the comment on the Ansi.erase method. However, the actual usage in the standard library of Ansi.erase was expecting it to erase to the right. Because of this change, since 0.49.0, the readline support in the term package has been broken.
This commit switches erase back to erasing to the right and in the process fixes the readline package. The commment on erase has been updated to reflect what it actually does.
Supporting erasing to both the left and the right seems valuable but, I'm not addressing that here and instead am leaving that to an RFC.

Windows failure is unrelated. We are back to the "it times out" problem again.


fix: Updated the Dropdown component's Usage tab to address a11y comments

Closes #3526
This PR updates the Dropdown component Usage tab to incorporate comments from the referenced issue. Additionally, the content on the Usage tab has been aligned with the latest focus state discussion.
Changelog
Changed

Content within several sections has been updated to address the comments (Ref: Figma file).
Updated the images with latest focus state discussion.

Hi @mbgower, @tay1orjones, @ariellalgilmore!
Could you please review this PR when you have a moment? Thanks!

Hi @mbgower, could you please review this PR? Thanks!