Add Utkarsh Deep to contributors list

Reference: Make your first pull request #490

@utkarshdeep, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added Facebook share and tweet feature to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.

Hi,
Pretty sure I was ecstatic when you merged my pull request. This was my 3rd
ever pull request and open source contribution.
Regarding the problem faced by first-time contributor, all I can say is
that it's pretty difficult to estimate how and where to start. If you start
with a project that is very well contributed, it's very difficult to grasp
what's happening with the code and eventually you give up. I would love to
get some directions on open source contributions and how can I do more.
On Mon, Oct 23, 2017 at 3:23 AM, Roshan Jossey<EMAIL_ADDRESS>wrote:

@utkarshdeep https://github.com/utkarshdeep, I'm quite elated about
your pull request. I wanna evolve this project to addresses various
problems faced by first-time contributors. I'd love to learn about your
journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a
pull request and learned that I merged it?
We’ve recently added Facebook share and tweet feature to our web app.
Could you please go to https://roshanjossey.github.
io/first-contributions/#social-share and share your first contribution to
open source? Also, check out projects with easy issues while you’re there.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Roshanjossey/first-contributions/pull/1181#issuecomment-338512155,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJkMCzUj8oNUAmxSSsYxP5E1o35zsuHWks5su7lZgaJpZM4QCEba
.


Scraping a tag raises 403 error

Hi,
I'm using the 1.5.27 version, and when I want to scrape a user, everything is fine. But when trying to scrape specific tag, I get a 403 Exeception:
instagram-scraper takeakneenfl --tag --media-metadata --verbose 2
Searching takeakneenfl for posts: 0 media [00:00, ? media/s]WARNING: Retry after exception HTTPError('403 Client Error: Forbidden for url: https://www.instagram.com/graphql/query/?query_id=17882293912014529&tag_name=takeakneenfl&first=100&after=',) on https://www.instagram.com/graphql/query/?query_id=17882293912014529&tag_name=takeakneenfl&first=100&after=

It looks like graphql/query requests are now only allowed after authorisation. Provide the user and password of any account to scraper.

You don't need authorization for user account scraping? #205 claims all requests now require login.

@polyzen authorisation was only needed to scrape stories and private profiles

@VasiliPupkin256 the update with #205 in it fixed my issue - so case closed!

It seems the Instagram API has changed again since #205 - see https://github.com/rarcega/instagram-scraper/issues/205#issuecomment-379871127


Automated cherry pick of #1924: fix: server-create may timeout if external image used

Cherry pick of #1924 on release/2.11.
#1924: fix: server-create may timeout if external image used

/approve
/lgtm


example for onnx inference ?

After you trained a model you can inference it using onnx runtime.
There is a simple example of using it: https://onnxruntime.ai


Bug: sst secret set stuck

When running sst secret set SECRET_NAME VALUE it gets stuck
Logs:
time=2024-06-13T16:19:30.653+02:00 level=INFO msg="loaded config" app=rapidnotes stage=notluksus
time=2024-06-13T16:19:30.653+02:00 level=INFO msg="INFO getting data key=secret app=rapidnotes stage=notluksus"
time=2024-06-13T16:19:30.828+02:00 level=INFO msg="INFO getting passphrase app=rapidnotes stage=notluksus"
time=2024-06-13T16:19:30.951+02:00 level=INFO msg="INFO putting secrets app=rapidnotes stage=notluksus"
time=2024-06-13T16:19:30.951+02:00 level=INFO msg="INFO putting data key=secret app=rapidnotes stage=notluksus"
time=2024-06-13T16:19:30.951+02:00 level=INFO msg="INFO getting passphrase app=rapidnotes stage=notluksus"

I doesn't let me Control + C the process so I have to actually terminate my console window to stop it.
Things I tried:
Change AWS region
Reset the entire sst state
Remove all old secrets
Nothing seemed to work
This is on the latest version of ION

Also see my message on Discord for this:
https://discord.com/channels/983865673656705025/1177071497974648952/1248909379252523018

Might've missed on Discord if you already answered but did you try it with the --verbose flag?

This is with the verbose flag

OS?
Do other sst commands work?

Mac OS Sonoma 14.4
Yeah, everything else works

@thdxr What else do we need to debug this?

does sst secret list work? and does it have the updated value even though it hung?

I upgraded to the latest version and no it seems to be working again, no idea what caused this, probably fine to close


Mac trackpad behaving like Windows

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.66.0
OS Version: macOS 12.3

Rapid trackpad taps within the editor (to select a word or line) followed by dragging with 1 finger causes the selection to be expanded as I drag.
Note: this is with the Tap to click (tap without pushing the trackpad button) system setting enabled.
No other Mac software behaves like this. Dragging to change a selection normally requires pushing down on the trackpad button or using 3 fingers! This issue is slowing me down.
Steps to Reproduce:

Quickly tap two or three times on some code.
Quickly start dragging on the trackpad.

What I expect: to select a word (2 taps) or line (3 taps) and then move the cursor (1-finger drag).
What happens: a word or line is selected, but then the selection keeps changing along with the cursor's position, until I let go of the trackpad.

i can confirm that this is happening to me as well, and worked correctly on macOS 12.3, prior to vscode 1.66.0.
Related to this bug, i found out that there's some sort of a timeout which disables drag to selection after a short amount of time(although it 's still frustrating to have to wait so i don't get selection expanded).

Let's track in #146486


Add documentation on preprocessor

We are using @autovalue annotations. We should update our developer docs to instruct folks on how to set up their IDEs to support this.

Not using AutoValue in new SPI types


If an item is restored from the recycle bin after Unicorn deletes it, it's not serialized

(report from Slack)
Suppose Unicorn deletes an item during a sync. Then suppose you restore the deleted item from the recycle bin.
It seems that restoring from recycle bin is not causing the item to be serialized when it's re-created. It probably should do so.

Thanks for creating the issue for me!


Strip trailing whitespace when injecting a header's link.

@timeless noted in https://lists.w3.org/Archives/Public/public-webappsec/2015Jun/0066.html that many of the header-based links have trailing whitespace. This patch pokes at that a bit. WDYT?

Wanna just do a full .strip(), to be safe? No reason to keep any preceding whitespace, either.

SGTM.


Flake8 plugins

This pull request installs a couple of flake8 plugins to perform more code-style checks on Drone:

flake8-blind-except - Catches except: statements that do not catch specific exception classes
flake8-print - Catches stray print functions. These shouldn't be used in most parts of Wagtail and leaving them in is a common mistake

I did want to enable a couple more plugins, but they raise too many errors to solve right now:

flake8-docstrings - Runs pydocstyle to check docstring style (PEP257)
flake8-mutable - Catches mutable default arguments which can cause problems (most of the errors are in tests, but there are a few in actual code that should probably be looked at)

Ready to review! ping @wagtail/backend


[WIP] Configure: check all DEPEND values against GENERATE, not just .h files

All files that are given to DEPEND statements in build.info files are
being checked against GENERATE statements, to see if it's reasonable
to look for them in the source tree or not.  This was only done for .h
files, for reasons that are lost in history.  We now change that check
to look at all files instead.

Currently WIP, 'cause Configure became super slow, that needs fixing

Slowness fixed

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Merged
2d101b0f493a3066c5ea7152c00c44d70fcea4d8 Configure: check all DEPEND values against GENERATE, not just .h files


Dynamic Cursor Object over Entire Plot Area

ScottPlot Version: <IP_ADDRESS>
Operating System: Windows 10
Application Type:  WinForms
Question: I have created a function that shows a cursor on the mouse move when the X coordinate is in a specific range.
The result looks like this:

Cursor lines are constructed using labels.
Is there a more elegant way to implement a similar effect?
Pushing labels around on mouse_move is the last resort.
`

Check out the ScottPlot demo, especially for WinForms. There should be a crosshair demo and/or mouse tracking demo.
https://scottplot.net/demo/
The app probably has a link to the source code, but if not that's here
https://github.com/ScottPlot/ScottPlot/blob/main/src/ScottPlot4/ScottPlot.Demo/ScottPlot.Demo.WinForms/WinFormsDemos/MouseTracker.cs

You may also find this page helpful:

https://scottplot.net/faq/mouse-position/


Unlisted/private uploads, scheduled uploads

Not ready for a merge, this is just a tracking PR

will open new issues for outstanding items, new PR : https://github.com/OdyseeTeam/odysee-frontend/pull/2680


Relationships / Dependencies are present in Syft json and SPDX json files but not in Cyclonedx json file format

What happened:
I am not seeing dependencies information on CycloneDX format json files even though they are present in other formats:
SPDX file snippet:
   "relationships": [
        {
            "comment": "evident-by: indicates the package's existence is evident by the given file",
            "relatedSpdxElement": "SPDXRef-File--Install-LMFIN-10010154-001574.jar-39b2fbb066459eaa",
            "relationshipType": "OTHER",
            "spdxElementId": "SPDXRef-Package-java-archive-org.eclipse.osgi-0988631922bb71dc"
        },
        {
            "comment": "evident-by: indicates the package's existence is evident by the given file",
            "relatedSpdxElement": "SPDXRef-File--Install-LMFIN-10010154-001574.jar-39b2fbb066459eaa",
            "relationshipType": "OTHER",
            "spdxElementId": "SPDXRef-Package-java-archive-org.eclipse.equinox.http.servletbridge-1.0.100.v20090520-0fa41529ebc92c19"
        },
        {
            "relatedSpdxElement": "SPDXRef-Package-java-archive-defaultHelp-25eed61145441535",
            "relationshipType": "CONTAINS",
            "spdxElementId": "SPDXRef-DocumentRoot-File-Install-LMFIN-10010154-001574.jar"
        },
        {
            "relatedSpdxElement": "SPDXRef-Package-java-archive-el-4ab927d37eec02be",
            "relationshipType": "CONTAINS",
            "spdxElementId": "SPDXRef-DocumentRoot-File-Install-LMFIN-10010154-001574.jar"
        },

What you expected to happen:
Dependencies should appear in the Cyclonedx format json file similar to SPDX and Syft json files.
Steps to reproduce the issue:
I tried generating SBOM file in CycloneDX format and noticed that no dependencies are included in the sbom file.  But then I tried generating an SBOM in Syft json and SPDX json formats and see that relationships / dependencies information are present.  I tried converting the SBOM to CycloneDX format and no dependencies information are included in the output.
Anything else we need to know?:
N/A
Environment:

Output of syft version:
Application: syft
Version:    1.2.0
BuildDate:  2024-04-12T18:31:58Z
GitCommit:  dde5d349b1eef740c285255e6a9e3a8f5c9938e1
GitDescription: v1.2.0
Platform:   windows/amd64
GoVersion:  go1.21.9
Compiler:   gc

OS (e.g: cat /etc/os-release or similar):
Windows 11 Enterprise

Dev notes: there are some format limitations in CycloneDX that prevent us from representing every relationship that we handle in other formats like SPDX, so there will always be some functionality differences between the various formats. We could probably encode CONTAINS and DEPENDS-ON relationships in CycloneDX, though. The challenge encoding the CONTAINS relationship is that it requires nesting components in CycloneDX which we aren't currently doing--it wouldn't be expressible in the dependency relationships.
@haiazuki, if you are able, can you share a bit more about your use case and needs here? Are you looking for a source code dependency tree or something similar? More details might be helpful for us to look into this. Thanks!

Hi @tgerla ,
I checked the specifications of SPDX compare with CycloneDX so I understand what you are saying.  From a CycloneDX perspective, it tracks dependency relationships so DEPENDS-ON seem to be the priority.
In the product I am testing with, I have an installer in a jar package that I used as the target source to generate the sbom.  This contains other jar files and also a war file that contains other jar file packages.  So I was looking for entries that reflect the relationship of these packages similar to what is in default json and spdx json.
Thank you!

I see syft producing usable dependency information except from the tiny detail described here: https://github.com/DependencyTrack/dependency-track/issues/3314
I have tried adding the missing dependency between the root object and some random set of modules and then DT can show a dependency tree.
Is there a good reason this has not been fixed already (or why the issue has ever arisen)?

Shouldn't this need to be included in milestone "Meet NTIA Minimum SBOM Requirements" as relationships are part of the minimum elements in NTIA?

👋 I think it would be useful for this issue if we could posting specific examples of where dependencies should exist in cyclone-dx and they are not showing up.
A good example of the format I'm looking for to help the discussion is something like this:
I am using syft v1.6.0 to scan `alpine:latest`

Here are the commands I'm running:

 syft -o spdx-json alpine:latest | jq . > spdx.json
 syft -o cyclonedx-json alpine:latest | jq . > cdx.json

In spdx.json I see:
    {
      "spdxElementId": "SPDXRef-Package-apk-musl-03e521237cbed45a",
      "relatedSpdxElement": "SPDXRef-File-lib-ld-musl-aarch64.so.1-15ac5a87021c605c",
      "relationshipType": "CONTAINS"
    },

These contains relationships are not shown in cyclone-dx.
All I see in cyclone-dx are the depends on relationships - here is an example:
    {
      "ref": "pkg:apk/alpine/libcrypto3@3.3.0-r2?arch=aarch64&upstream=openssl&distro=alpine-3.20.0&package-id=0cfcda1a242dfd13",
      "dependsOn": [
        "pkg:apk/alpine/musl@1.2.5-r0?arch=aarch64&distro=alpine-3.20.0&package-id=03e521237cbed45a"
      ]
    },

SPDX
Here is the code that transforms the syft document model relationships into spdx:
https://github.com/anchore/syft/blob/c816039e91b46ae475207db01c8eac9fbc139c02/syft/format/common/spdxhelpers/to_format_model.go#L546-L587
Here we can see that for spdx we should be including the following types for package relationships
Contains
DependencyOf
OwnershipByFileOverlap
EvidentBy

Without having access to the source or a sample image to investigate I can't say why some, none, or all of those are included for an individual SPDX sbom generated by syft.
CycloneDX
Here is the code that converts syft relationships to cyclonedx dependencies:
https://github.com/anchore/syft/blob/c816039e91b46ae475207db01c8eac9fbc139c02/syft/format/common/cyclonedxhelpers/to_format_model.go#L159-L208
This one is a little more complex in how we eventually settle on a package -> package dependency being included, but one of the cores of it can be found at isExpressiblePackageRelationship
https://github.com/anchore/syft/blob/c816039e91b46ae475207db01c8eac9fbc139c02/syft/format/common/cyclonedxhelpers/to_format_model.go#L145-L157
If we find that the relationship type is DependencyOfRelationship then we will try to proceed to create the Depends on type you see in CycloneDX.
Summary
The relationships that the two formats have in common currently in the syft mental model is the DependencyOfRelationship - Both will show up in the different formats; SPDX as DEPENDENCY_OF  and CYCLONE_DX as an entry in the cyclonedx.Dependency list

Hi, the next Syft release will include dependency information for certain Java artifacts and maven projects. I didn't see specific steps to reproduce the original problem -- is this issue specific to Java and should it be considered completed?


[Bug]: loading an ordinary string results in empty string object

Version of the library
0.25.3
Describe the bug
Hi there!
Just upgraded from v0.13 to current release and found that loading a raw string does not work anymore:
>>> json_repair.loads('test')
''

I expected
>>> json_repair.loads('test')
'test'

as a fallback. This breaks my setup as I now have to check myself somehow if parameter is just a raw string without any JSON object definition. Is this a bug or are there any good reasons for that change?
Thanks!
How to reproduce

json_repair.loads('test')
''

Expected behavior

json_repair.loads('test')
'test'

hi! Thanks for reporting but this is not a bug.
A plain string without quotes is not a valid JSON string and it is ignored by the library to cover for cases like this:
Sure here's your JSON {"key":"value"}
So this behavior is a feature not a bug


Brought back get_facts for debug action

https://issues.redhat.com/browse/AAP-8602
The debug action fetches facts from permanent storage, the Drools engine has a temporary storage to store matching events for rules and a permanent storage for facts.

e2e test for debug action must be updated.

Now we have the "facts" key duplicated, one empty, which is a bit confused, don't think you?
Also could you update this?
https://github.com/ansible/ansible-rulebook/blob/main/tests/e2e/test_actions.py#L60

@Alex-Izquierdo That facts is coming off, it's a redundant variable that floats thru the system we had discussed this in one of the Dev Sync. It gets inserted into the queue as an empty dict and flows thru the system and shows up in different places. Once that's removed it will go away by itself.
https://github.com/ansible/ansible-rulebook/blob/96c08e305f2287780e22e45c415b52c96d72f7b8/ansible_rulebook/rule_generator.py#L109 I think @bzwei was planning on removing it in the code.

@mkanoor Ok, anyway, we should verify the good facts are printed here: https://github.com/ansible/ansible-rulebook/blob/main/tests/e2e/test_actions.py#L60

@Alex-Izquierdo can we wait on that test till we get the first facts out otherwise we would have 2 facts. The facts is only used for debug actions, it is not used anywhere else.


Request indexing

The API docs should include an index page, that lists the namespaces available for the product. Request indexing once the content goes live.

Docs are indexed.


[improve] use eclipselink orm replace of hibernate orm

What's changed?

use eclipselink orm replace of hibernate orm, due hibernate core licenses is lgpl.
eclipselink is another implement for jpa guide
Checklist

[x]  I have read the Contributing Guide
[ ]  I have written the necessary doc or comment.
[ ]  I have added the necessary unit tests and all cases have passed.

Add or update API

[ ] I have added the necessary e2e tests and all cases have passed.

fatal error, eclipselink auto create some table failed but no log 😂

[EL Finest]: ddl: 2024-04-22 17:40:41.325--Thread(Thread[main,5,main])--The table (hzb_notice_template) could not be created due to exception:
Internal Exception: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "CREATE TABLE hzb_notice_template (ID BIGINT [*]IDENTITY NOT NULL, CONTENT LONGVARCHAR, CREATOR VARCHAR, GMTCREATE TIMESTAMP, GMTUPDATE TIMESTAMP, MODIFIER VARCHAR, NAME VARCHAR, PRESET boolean default false, TYPE SMALLINT, PRIMARY KEY (ID))"; expected "UNSIGNED, ARRAY, INVISIBLE, VISIBLE, NOT NULL, DEFAULT, GENERATED, ON UPDATE, NOT NULL, DEFAULT ON NULL, SEQUENCE, SELECTIVITY, COMMENT, CONSTRAINT, COMMENT, PRIMARY KEY, UNIQUE, NOT NULL, CHECK, REFERENCES, ,, )"; SQL statement:
CREATE TABLE hzb_notice_template (ID BIGINT IDENTITY NOT NULL, CONTENT LONGVARCHAR, CREATOR VARCHAR, GMTCREATE TIMESTAMP, GMTUPDATE TIMESTAMP, MODIFIER VARCHAR, NAME VARCHAR, PRESET boolean default false, TYPE SMALLINT, PRIMARY KEY (ID)) [42001-224]
Error Code: 42001
Call: CREATE TABLE hzb_notice_template (ID BIGINT IDENTITY NOT NULL, CONTENT LONGVARCHAR, CREATOR VARCHAR, GMTCREATE TIMESTAMP, GMTUPDATE TIMESTAMP, MODIFIER VARCHAR, NAME VARCHAR, PRESET boolean default false, TYPE SMALLINT, PRIMARY KEY (ID))
Query: DataModifyQuery(sql="CREATE TABLE hzb_notice_template (ID BIGINT IDENTITY NOT NULL, CONTENT LONGVARCHAR, CREATOR VARCHAR, GMTCREATE TIMESTAMP, GMTUPDATE TIMESTAMP, MODIFIER VARCHAR, NAME VARCHAR, PRESET boolean default false, TYPE SMALLINT, PRIMARY KEY (ID))")

upgrade this attention.  If you use an empty database, there is no need to upgrade.

Export Import Method (suggest)

export the all monitoring, export all alarm rules, and deploy start a new one system, import them.

Database Method

edit the h2 database columns, if use mysql, change the mysql columns
ALTER TABLE HZB_PARAM  ALTER COLUMN  "value" RENAME TO  param_value;

ALTER TABLE HZB_TAG ALTER COLUMN "value" RENAME TO  tag_value;

ALTER TABLE HZB_STATUS_PAGE_HISTORY ALTER COLUMN "unknown" RENAME TO  unknowing;

start the system.
edit the save all notice rule in web.

upgrade this attention. If you use an empty database, there is no need to upgrade.

Export Import Method (suggest)

export the all monitoring, export all alarm rules, and deploy start a new one system, import them.

Database Method

edit the h2 database columns, if use mysql, change the mysql columns
ALTER TABLE HZB_PARAM  ALTER COLUMN  "value" RENAME TO  param_value;

ALTER TABLE HZB_TAG ALTER COLUMN "value" RENAME TO  tag_value;

ALTER TABLE HZB_STATUS_PAGE_HISTORY ALTER COLUMN "unknown" RENAME TO  unknowing;

start the system.
edit the save all notice rule in web, disable and enable them.
The mysql 5.7 version is not able to execute these sql's and I think upgrading these is best for the user not to operate, can we find a better way?

The mysql 5.7 version is not able to execute these sql's and I think upgrading these is best for the user not to operate, can we find a better way?

hi these sql are for h2 database, mysql version we can use navicat console or others to edit table column name here.
ALTER TABLE HZB_PARAM CHANGE COLUMN `value` param_value VARCHAR(255);

ALTER TABLE HZB_TAG CHANGE COLUMN `value` tag_value VARCHAR(255);

ALTER TABLE HZB_STATUS_PAGE_HISTORY CHANGE COLUMN `unknown` unknowing VARCHAR(255);

For the suggest upgrading, is the Export Import Method. Deploy an new empty system and them import the monitors.

Is it possible to determine the current version at program startup and execute sql automatically?

flyway or liquibase can do this, maybe we can consider use flyway to execute version update sql automatically.
Use jpa auto create tables and use flyway auto upgrde sql change.
I can try it in anothor new pr.

Flyway

sounds good.


New logos for IRCC (canada.ca), Unraid, Uptime Kuma

Added new logos for IRCC (canada.ca), Unraid, Uptime Kuma

Hello, could you make the IRCC icon to be squared 400x400?

I could try it but probably won't stretch properly


cos_theta = torch.mm(embbedings, kernel_norm)

when i run it says the size does not match: The code
cos_theta = torch.mm(embbedings, kernel_norm)
should :
cos_theta = torch.mm(embbedings, kernel_norm.t())
but why when i test the model in Megaface. the rank1 is only 0.002%?

I think it should be “cos_theta = torch.mm(embbedings, kernel_norm)”


⚠ Bio Links has degraded performance

In 3adf0d8, Bio Links (https://bio.rheinklang.events/links) experienced degraded performance:

HTTP code: 200
Response time: 3064 ms

Resolved: Bio Links performance has improved in b625ebb after 1 hour, 31 minutes.


IndexedMaskedArray fillna

>>> x = awkward.fromiter([[3, 1], [], [2, -1]])
>>> y = x.pad(1, clip=True)[:, 0]
>>> z = y > 0
>>> z
<IndexedMaskedArray [True None True] at 0x00022bf35710>
>>> z.fillna(False)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/ncsmith/src/awkward-array/awkward/array/masked.py", line 889, in fillna
    out[self.mask < 0] = value
IndexError: boolean index did not match indexed array along dimension 0; dimension is 2 but corresponding boolean dimension is 3

PR #202. It hadn't been correctly implemented for IndexedMaskedArray.
Looking into this revealed just how limited fillna is: the array just inside the mask has to be a Numpy array or convertible to one. Luckily, that's true in your case.


[Bug]: The client is unauthorized due to authentication failure

Contact Details
<EMAIL_ADDRESS>What happened?
I'm following this quickstart guide to deploy a Neo4j standalone instance to kubernetes cluster (AWS EKS), but when I try to connect to Neo4j instance I got the following error:
kubectl run --rm -it --namespace "neo4j" --image "neo4j:5.23" cypher-shell -- cypher-shell -a "neo4j://my-neo4j-release.neo4j.svc.cluster.local:7687" -u neo4j -p "v5g4h5gL56dsq"
If you don't see a command prompt, try pressing enter.
The client is unauthorized due to authentication failure.

Quickstart link: https://neo4j.com/docs/operations-manual/current/kubernetes/quickstart-standalone/
I already tried custom password in values or no custom password (auto generated by neo4j)
Chart Name
Neo4j Standalone (v4.4.x)
Chart Version
5.12.0
Environment
Amazon Web Services
Relevant log output
Chat version: neo4j-5.23

Changed password for user 'neo4j'. IMPORTANT: this change will only take effect if performed before the database is started for the first time.
2024-09-23 13:27:10.746+0000 INFO  Logging config in use: File '/config/user-logs.xml/user-logs.xml'
2024-09-23 13:27:10.840+0000 INFO  Command expansion is explicitly enabled for configuration
2024-09-23 13:27:10.949+0000 INFO  Starting...
2024-09-23 13:27:18.425+0000 INFO  This instance is ServerId{11b38503} (11b38503-747a-4747-b30f-2ddaad68cb45)
2024-09-23 13:27:26.330+0000 INFO  ======== Neo4j 5.23.0 ========
2024-09-23 13:27:38.546+0000 INFO  Anonymous Usage Data is being sent to Neo4j, see https://neo4j.com/docs/usage-data/
2024-09-23 13:27:38.741+0000 INFO  Bolt enabled on <IP_ADDRESS>:7687.
2024-09-23 13:27:43.636+0000 INFO  HTTP enabled on <IP_ADDRESS>:7474.
2024-09-23 13:27:43.638+0000 INFO  Remote interface available at http://localhost:7474/
2024-09-23 13:27:43.645+0000 INFO  id: 5BFCD27230B47E24D034475D96DAC0628801E1D5D957661CBA95E20792190868
2024-09-23 13:27:43.646+0000 INFO  name: system
2024-09-23 13:27:43.646+0000 INFO  creationDate: 2024-09-19T19:25:04.922Z
2024-09-23 13:27:43.647+0000 INFO  Started.
2024-09-23 13:39:36.024+0000 WARN  [bolt-288] The client is unauthorized due to authentication failure.
2024-09-23 13:45:14.843+0000 WARN  [bolt-425] The client is unauthorized due to authentication failure.
2024-09-23 13:45:26.719+0000 WARN  [bolt-430] The client is unauthorized due to authentication failure.
2024-09-23 13:45:36.968+0000 WARN  [bolt-435] The client is unauthorized due to authentication failure.
2024-09-23 13:45:56.775+0000 WARN  [bolt-444] The client is unauthorized due to authentication failure.

### Code of Conduct

- [X] I agree to follow this project's Code of Conduct

similar issue
on the documentation of the chart values
`neo4j:
Name of your cluster
name: ""
If password is not set or empty a random password will be generated during installation.
Ignored if neo4j.passwordFromSecret is provided
password: ""`
I used the password, and getting the same issue.
The client is unauthorized due to authentication failure.


Add new vm_state attribute to manage running/stopped VMs

This is useful in two cases:

when some VMs should be stopped (for security reasons or maintenance): this is now possible from Terraform

when a VM has been stopped manually in Proxmox: Terraform will now start the VM when applying the configuration

This deprecates the "oncreate" attribute following the guidelines from https://developer.hashicorp.com/terraform/plugin/sdkv2/best-practices/deprecations#renaming-an-optional-attribute

hello @jonglezb
please notice that setting the vm_state as "stopped" when the vm is running will stop the vm as intended.
but setting the state as "running" when the vm is stopped does not start the vm

Strange, it should work, I did test this feature before submitting (this is my main use-case). Can you give more information about how you run this? Any debug log?

that's easy to spot, maybe your are not using agent=1 parameter?
The actual code order in update function checks for the ip before starting the vm and goes on for 20min at least. then it arrives to the code that powers on the vm
I'll make a fix later today


[WIP] Rework Ratings to not use Plex Ratings

Description
This change allows Ratings to be fetched from the original source during the Overlays run.
This negates the need to use any "Mass Rating" operations.
In addition, Kometa will automatically select the best ratingX_image based on what your ratingX choice is. This means the user no longer has to specify ratingX_image unless they want to override the default options.
Issues Fixed or Closed

Fixes #(issue)

Type of Change
Please delete options that are not relevant.

New feature (non-breaking change which adds functionality)
Documentation change (non-code changes affecting only the wiki)

Checklist
Please delete options that are not relevant.

Updated Documentation to reflect changes
Updated the CHANGELOG with the changes

For documentation's sake: This cannot be merged yet due to a design issue whereby Kometa doesn't validate the rating returned using this method, so the rating will say it has been applied even if no rating exists.


New feature

Would it be possible to add a file extension to exclude in the parameters? I think it's just a small change in the pattern of the getRecursiveUris function.

Would like to have that,
like svg files is not necessary for being part of formated document.


WIP - RFC - Update links payloads for Pub API and Rummager

This work started with the idea of removing organisations from the payload sent to rummager given that links data now will be fetched from the Publishing API.
I found out that we're not actually sending organisations data to the Publishing API. I am thinking about splitting this work into two PR so that it'll be easier to deploy.
I'd assume we will need to republish all the contacts' organisations to the Pub API, then in a later piece of work stop sending contacts' organisation data to Rummager.
Thoughts?
cc: @mobaig  @tijmenb
Ticket:
https://trello.com/c/LbZA0i15/678-stop-apps-from-sending-mainstream-browse-pages-topics-and-organisations-to-rummager

Splitting into 2 PRs as you describe seems sensible.
Doesn't this block turning on indexing from Publishing API, since doing so would blat the organisations currently in Rummager for this content?

@benhyland I would assume so. Splitting.


bug: Custom Manifests doesn't work

Summary
I believe the issue is here
https://github.com/lablabs/ansible-role-rke2/blob/859a27f112add823280e9609a2c0056c0f30247f/tasks/rke2.yml#L234-L242
This part expects rke2_custom_manifests  as a list
but this part expects rke2_custom_manifests  as a string value
https://github.com/lablabs/ansible-role-rke2/blob/859a27f112add823280e9609a2c0056c0f30247f/tasks/rke2.yml#L252C1-L262
And I don't think we need both.
This role works fine before 1.38.0, the issue starts from https://github.com/lablabs/ansible-role-rke2/pull/260
Issue Type
Bug Report
Ansible Version
ansible [core 2.17.7]
  config file = None
  configured module search path = ['/home/saml/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/saml/miniforge3/lib/python3.10/site-packages/ansible
  ansible collection location = /home/saml/.ansible/collections:/usr/share/ansible/collections
  executable location = /home/saml/miniforge3/bin/ansible
  python version = 3.10.14 | packaged by conda-forge | (main, Mar 20 2024, 12:45:18) [GCC 12.3.0] (/home/saml/miniforge3/bin/python3.10)
  jinja version = 3.1.4
  libyaml = True

Steps to Reproduce
whenever you have rke2_custom_manifests.
Expected Results
it should work
Actual Results
it throws error like it can't find any file when using it like a list.

@MonolithProjects if you think it is ok I can make a PR to remove https://github.com/lablabs/ansible-role-rke2/blob/859a27f112add823280e9609a2c0056c0f30247f/tasks/rke2.yml#L234-L242

@maxisam yes that code ended up there by a mistake. My bad. Feel free to propose a fix. Thx!


Multiple form objects for 1 resource

Is there any option to specify multiple forms for 1 resource ?

@panSarin no, it's impossible to wrap the same object into several forms. Probably it's possible to create form, which reuse other forms.
@faucct reform guru, do you know something about reusing forms?

@panSarin Could you give us an example? If you are talking about wrapping an object in multiple forms like middlewares, then you could implement that inside your form class, though I don't think that there is a single official way to do this with Reform.

@panSarin feel free to reopen this issue if you have something to add


Build window - add "Unity C# Projects" and "Development Build" options

Can you provide more detail as to what you're looking for?

Sorry for not being clear... these refer to the existing options in Unity build settings (Ctrl+Shift+B) for WSA apps. "Unity C# projects" is especially useful to include Assembly-CSharp project in the generated SLN, which is the only place I have intellisense for code wrapped in NETFX_CORE/WINDOWS_UWP defines.

Hmmm, I think it makes sense to mirror some of the build options from the Unity Build settings window in the HTK Build window. For HTK users the Build Window effectively replaces the Unity one.

@Waterine think you'll do this work?

@Waterine has this been fixed for you?

I won't be able to verify because I don't work on Hololens anymore.


Unable to report unhandled promises

Description
This, I guess, is more of a feature request than an issue:
It would be great to be able to report all the un-handled promises. Meaning: for every async-function call require an await before or .then() after.
Use case:
Consider an async function validating a username and returning Promise<boolean>.
const isUsernameValid = async (name: string) => {
    return (await findUserByName(name)).length === 0;
};

Using this function it is easy to forget to use await before the it
// Error: this will always result in "Register user" because the promise
// object is getting implicitly converted to `true`
if (isUsernameValid(name)) {
    // Register user
} else {
    // Show error
}

Expected behavior: Report un-handled promises and require either await before
if (await isUsernameValid(name)) { ... }

or .then() - now the promise is not un-handled, this will indicate that the awaiting is not desired
function createUser() {
    await createDbRecord();

    // Not waiting for the async function to resolve, at the same time
    // indication that we are aware that we are making an async call.
    logRegistration().then();
}

JetBrains IDEs have this check but it would be great to catch this in CI

Came here looking to find the history on just this issue. This is by far the most common bug I have seen with promises, particularly the Promise case.

@jazzfog I think the last case you outlined (just calling a promise-returning function and doing nothing with the promise) is well caught by @typescript-eslint/no-floating-promises.
The other case is what brought me here, indeed a very frequent source of trouble: a promise (directly after being created, or via being assigned to a variable first) is handed to a boolean check of some sorts. I cannot imagine a case where this would actually be desirable, since it will always be truthy.
Some variations, assuming the async isUsernameValid from above:

// Ternary expression … always true
return isUsernameValid(name) ? userByName(name) : null;

// Save to a variable first … same problem
const hasValidUser = isUsernameValid(name);
if (hasValidUser) { … }

// Return boolean value … ditto
return isUsernameValid(name) && isPasswordValid(password);

I'm not sure what JetBrains exactly means by where a value is expected. I've only had this problem so far with cases where a boolean is expected. Any hints to other cases highly appreciated.
@xjamundx @macklinu this has been open for quite some time. I'd be happy to draft a PR, if I can rely on some support from your side (would be my first eslint rule to implement …).

Just an FYI that some async functions may not be in the same file, and ESLint cannot track those.


Check if colorscheme is set to null

If colorscheme is not set nixvim will not work.
This is because the default is null.
In this PR I have just added an extra check to see if colorscheme is null.
However we might want to change the type of colorscheme itself to only support strings and set the defualt to "".
Edit:
Here is the error I am getting, for reference.
error: cannot coerce null to a string

       at /nix/store/95s39kpv3cg61qshwxd98lxvfr7hib4d-source/nixvim.nix:208:23:

          207|         customRC = cfg.extraConfigVim + (optionalString (cfg.colorscheme != "") ''
          208|           colorscheme ${cfg.colorscheme}
             |                       ^
          209|         '') + ''
(use '--show-trace' to show detailed location information)

Seems good to me, think null is a better indicator of no colorscheme than the empty string even!


Parsing problems

I've turned my attention now to XML parsing and was trying to parse the following fragment, with a view to extracting the 'name' attributes from all 'Student' elements, when I ran into some problems.
import "./xsequence" for XDocument

var xml = """
<Students>
  <Student Name="April" Gender="F" DateOfBirth="1989-01-02" />
  <Student Name="Bob" Gender="M"  DateOfBirth="1990-03-04" />
  <Student Name="Chad" Gender="M"  DateOfBirth="1991-05-06" />
  <Student Name="Dave" Gender="M"  DateOfBirth="1992-07-08">
    <Pet Type="dog" Name="Rover" />
  </Student>
  <Student DateOfBirth="1993-09-10" Gender="F" Name="Émily" />
</Students>
"""
var doc = XDocument.parse(xml)
var names = doc.root.elements("Student").map { |el| el.attribute("Name").value }.toList
System.print(names)

I traced these problems back to the following lines in xsequence.wren:
line 738: return parser.parserDocument(text) - this method shouldn't take any parameters.
(similar problem at lines 548 and 582)
line 540:unexpected(c, "Invalid escape sequence")- this method should take one rather than two parameters.
(similar problem at line 536)
If I alter those method calls to to take the correct number of arguments and also get rid of the acute accent so the last name is simply "Emily" rather than "Émily" then it works fine and I get the expected output:
[April, Bob, Chad, Dave, Emily]

So the first two problems should be easy to fix.
On the last problem, I think it would be worthwhile supporting Unicode character references (perhaps in a future version) as accented characters crop up quite a lot in my experience.

Fixed the issues and I've implemented the unicode escape support.
Took me a bit to figure out that Num.fromString could handle hex by adding "0x" to the start. We need to make that more clear in the documentation, currently it says something that feels misleading:

Num.fromString(value)
Attempts to parse value as a decimal literal and return it as an instance of Num. If the number cannot be parsed null will be returned.
It is a runtime error if value is not a string.

Excellent, thanks :)
I agree that the docs for Num.fromString(value) could be clearer though it might be best to leave that for now as I think there's a very good chance that 0o and 0b will be added for octal and binary literals in v0.5.0  and the method / docs will therefore need updating to cope with those as well.


Latest version breaks something - Timestamp?

I updated to latest HEAD VideoCore and it broke my setup like this:
https://github.com/arut/nginx-rtmp-module/issues/596
At first I thought it was something to do with nginx-rtmp, but downgrading to the previous version of VideoCore completely stopped the error.
With the latest VideoCore, timestamp  is 4:59:59 hours or so right at beginning or broadcast, but with previous version it starts correctly.
Screenshot from broadcast beginning:

This is how the session is setup:
    _session = [[VCSimpleSession alloc] initWithVideoSize:CGSizeMake(720, 1280) frameRate:30 bitrate:1000000 useInterfaceOrientation:NO cameraState:VCCameraStateBack];
    [self.previewView addSubview:_session.previewView];
    [_session setUseAdaptiveBitrate:TRUE];
    _session.previewView.frame = self.previewView.bounds;
    _session.delegate = self;
    _session.orientationLocked = TRUE;

I re-enabled b-frames in this version.  I've changed the CTS offset to a more correct value, give the latest HEAD a try.

Still the same with the HEAD. Timestamp starts with at approximately 4:39:39
Podfile:
  platform :ios, '6.0'
  pod 'AFNetworking', '~> 2.5'
  pod 'VideoCore', :head

$ pod update
   Update all pods
   Analyzing dependencies
   Downloading dependencies
   Using AFNetworking (2.5.1)
   Using UriParser-cpp (0.1.3)
   Installing VideoCore HEAD based on <IP_ADDRESS> (was HEAD based on <IP_ADDRESS>)
   Using boost (1.51.0)
   Using glm (<IP_ADDRESS>)
   Generating Pods project
   Integrating client project

Screenshot:

This is the version that works fine for me:
  pod 'VideoCore', '~> 0.3.0'

Are you using VCSimpleSession or a custom graph?
On Saturday, March 21, 2015, KCastiglione<EMAIL_ADDRESS>wrote:

This is the version that works fine for me:
pod 'VideoCore', '~> 0.3.0'
--
Reply to this email directly or view it on GitHub
https://github.com/jgh-/VideoCore/issues/110#issuecomment-84531717.

VCSimpleSession. width and height are changed (720, 1280), adaptive bitrate is TRUE, and orientationLocked is TRUE.
_session = [[VCSimpleSession alloc] initWithVideoSize:CGSizeMake(720, 1280) frameRate:30 bitrate:1000000 useInterfaceOrientation:NO cameraState:VCCameraStateBack];
[self.previewView addSubview:_session.previewView];
[_session setUseAdaptiveBitrate:TRUE];
_session.previewView.frame = self.previewView.bounds;
_session.delegate = self;
_session.orientationLocked = TRUE;

VCSimpleSession right out of github has this problem. I just ran SampleBroadcaster from github with HEAD for VideoCore and broadcast started at around 04:39:37.

OK I've made a couple of changes and put out a <IP_ADDRESS> ... Testing with nginx-rtmp seems to give correct results (I am not seeing the errors you listed, nor am I seeing incorrect timestamps)

The latest HEAD looks like it has fixed it. Thanks for fixing it. Can you share what was wrong?

Trying it now.

I added a start() command to the mixers in 0.3.0 so they wont begin
generating timestamps until it is called.  What was happening though was
the timestamp epoch was being set on connect even though there were sample
buffers in flight with later timestamps, meaning that we would end up with
non-monotonic timestamps briefly and this caused a big freak out.  The
solution is to set the epoch before the mixer start is called, even if it
is minutes before the connection is started because rtmp allows an
arbitrary first timestamp
On Sunday, March 22, 2015, KCastiglione<EMAIL_ADDRESS><javascript:_e(%7B%7D,'cvml','notifications@github.com');>> wrote:

The latest HEAD looks like it has fixed it. Thanks for fixing it. Can you
share what was wrong?
--
Reply to this email directly or view it on GitHub
https://github.com/jgh-/VideoCore/issues/110#issuecomment-84667679.

Great thanks. It looks fixed now. Thanks again for the fixing the problem! Will report if it surfaces again.

Sorry I dont know if its correct to reOpen this issue. Im getting this same problems about the 4:39:37 timestamp when streaming to Facebook Live endpoints. And Im using 0.3.2 where the issue should have already been solved. @jgh-


Native Python Support

Native Python Support
Will future dotnet releases have native python support? Maybe by baking in ironpython3 in to dotnet core?

@terrajobst @richlander @leecow any of you know the answer for this?

I'm not aware of any conversations or plans. @livarcocc - do you know if this is being considered?

I am not aware of any plans or conversations either.

@steskalja

Will future dotnet releases have native python support? Maybe by baking in ironpython3 in to dotnet core?

Can you explain what you mean by that? Are you asking whether .NET Core will ever be bundled with Python so that you don't have to install it separately? We don't have any plans around this but I'd think the answer will most likely be never, because we try to minimize dependencies of the .NET Core runtime. Adding another development stack would be contrary what we're trying to achieve here.
What are the scenarios?


Artist -> duplicated entries & Feature Request "Artist.isPerson/isBand[Group/Unit]"

Example: http://vgmdb.info/artist/15942?format=json
Members is duplicated in Artist .Members & Artist .info.members ( same as Artist.aliases, Artist.Units & Artist.Birthdate ) Do you parse BirthLocation?
"info": {
......
"Members": [
{
"names": {
"en": "RYOTA"
}
},
......
},
"link": "artist/15942",
"members": [
{
"names": {
"en": "RYOTA"
}
},
......
{
"names": {
"en": "U"
}
},
......
],
Feature Request "Artist.isPerson/isBand[Group/Unit]"
Next to the Artist.name is a "(Unit)" in the html. This "field?" ( http://vgmdb.net/artist/6310?format=json ) means this artist is a group/band/unit, am I right? It is possible that the artist could have a boolean field for this?

The duplication of some of the info fields is on purpose. artist.info contains all of the parsed sections from the left side of the page, and some of the important ones get a standardized name and put at the top level, like artist.members as a convenience. I do parse birthplace: SHiNNOSUKE has an artist.info.Birthplace and an artist.birthplace.
As for determining whether something is a person or a band, so far I've been relying on the presence of the members field. I could see the value of having a more clear indication of the artist type.
I think it should be some artist.type field, instead of artist.isPerson, because I don't know how many different types there are. I could directly use this field as artist.type, and default it to Individual as opposed to Unit.

This change has been enabled in c9af9e2

Thank you for this clarification. It makes sense!

so far I've been relying on the presence of the members field

I did the same ;) But I like the way you implement types - perfect for an enum. ( I'm working on a java client for your project )


⚠ Processors has degraded performance

In 4ae4631, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 104 ms

Resolved: Processors performance has improved in 29f6b34.


Frontend: Use global module for handling event subscriptions per chain id

Rationale
Currently we use the JsonRpcProviders from ethers library which uses polling mechanism for getting the block number.
We have many actions in our app which instantiate a new JsonRpcProvider for different reasons. One reason is for watching on ClaimMade, RequestCreated, RequestFilled, ClaimStakeWithdrawn, Token.Transfer events in order to update the transfer state in the UI.
This means that our app instantiates a new provider (for each event listener) which polls each X seconds for checking the current block number. The more event listeners we have active the more instantiated providers we end up with (N providers poll each X seconds for new block numbers).
A little bit about WebSocketProvider and its pros/cons:

The WebSocketProvider connects to a JSON-RPC WebSocket-compatible backend which allows for a persistent connection, multiplexing requests and pub-sub events for a more immediate event dispatching.
The WebSocket API is newer, and if running your own infrastructure, note that WebSockets are much more intensive on your server resources, as they must manage and maintain the state for each client. For this reason, many services may also charge additional fees for using their WebSocket endpoints.

This means we might end up with better UX (better real-time feeling) & significantly less RPC calls.
Implementation
Having a global module that handles the subscriptions to these events which uses only one JsonRpcProvider or WebSocketProvider per chain. There should be an option of choosing whether the subscription should happen with a JsonRpcProvider or WebSocketProvider as some chain infrastructures don't fully support WebSocket connections.

Check out: https://github.com/beamer-bridge/beamer/issues/1371


Consider adding your blog to diff.blog

Hello :wave: :wave:
Over the past decade, we have seen the rise of centralized publishing platforms like Medium.  A lot of self hosted blogs were migrated to these platforms in hope of a bigger audience. Sadly, most of these blogs lost their unique identity and became just another page on them.
Our mission is to fight back against monopolies like Medium and promote independent self hosted blogs like yours. We think the best way to make this happen is by improving the visibility and reach of self hosted blogs. And that's why we built diff.blog.
diff.blog is an aggregator of developer blogs. It was started in 2019 to improve the visibility of self hosted blogs. Whenever you publish a new blog post on your blog, it would automatically appear in the diff.blog news feed. The title and summary of the post would be visible to the users of diff.blog and they can click on the post to read the full post on your blog.
We also have a weekly email digest, which would email the most popular blog posts in our index to all diff.blog users.
diff.blog index over 635 blogs at the moment. And our network is growing steadily every day. And we would like to invite you to include your blog in diff.blog as well.
Adding your blog to diff.blog is super easy and takes less than a minute.

Go to https://diff.blog
Sign up with your GitHub account.
Go to blog settings https://diff.blog/account/settings/blog/
Add the URL of your blog

We are looking forward to have your blog in diff.blog. Let us know if you have any questions. Happy to answer.

Thanks for your suggestion I will look forward to it in future


SelectableText is not firing onSelectionChanged in all cases

Steps to Reproduce

Use SelectableText widget in a working app

SelectableText.rich(
      TextSpan(
        text: 'Hello world',
      ),
      toolbarOptions: ToolbarOptions(copy: false, cut: false, paste: false, selectAll: true),
      onSelectionChanged: (TextSelection selection, cause) {
        print(selection);
      },
      enableInteractiveSelection: true,
    )

Run the app and press and hold to select "Hello"
Note the onSelectionChanged is fired as expected. You can do the same to "World"
But then again select "Hello" and move the handle manually to cover world as well.
onSelectionChanged is not fired in this case
Now use "Select All" control. onSelectionChanged is not fired in this case either.

Expected results:
onSelectionChanged has to be fired in all 3 cases i.e.

press and hold to select
press and hold and then extending the selection manually using handles
using selectAll control

Actual results:
onSelectionChanged is only fired in 1st case mentioned above

Logs

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, 1.25.0-5.0.pre.90, on Mac OS X 10.15.7 19H15 darwin-x64, locale en-LK)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[✗] Xcode - develop for iOS and macOS
    ✗ Xcode installation is incomplete; a full installation is necessary for iOS development.
      Download at: https://developer.apple.com/xcode/download/
      Or install Xcode via the App Store.
      Once installed, run:
        sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
        sudo xcodebuild -runFirstLaunch
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.1)
[✓] IntelliJ IDEA Ultimate Edition (version 2020.2.2)
[✓] VS Code (version 1.51.1)
[✓] Connected device (2 available)

! Doctor found issues in 1 category.

Reproducible on latest master, dev and beta channel. No stable channel because this feature has not yet landed into stable channel.
Code
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(),
        body: Center(
          child: SelectableText(
            'Hello world',
            toolbarOptions: ToolbarOptions(copy: false, cut: false, paste: false, selectAll: true),
            onSelectionChanged: (TextSelection selection, cause) {
              print(selection);
            },
            enableInteractiveSelection: true,
          ),
        ),
      ),
    );
  }
}

flutter doctor -v (master)
[✓] Flutter (Channel master, 1.25.0-5.0.pre.125, on Mac OS X 10.15.7 19H2 darwin-x64, locale en)
    • Flutter version 1.25.0-5.0.pre.125 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision a12e2a473a (3 hours ago), 2020-12-08 23:13:04 -0500
    • Engine revision df39e5c515
    • Dart version 2.12.0 (build 2.12.0-133.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] IntelliJ IDEA Community Edition (version 2020.2.4)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 52.0.4
    • Dart plugin version 202.8070

[✓] VS Code (version 1.51.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 arm (mobile) • emulator-5554 • android-x86    • Android 11 (API 30) (emulator)
    • macOS (desktop)             • macos         • darwin-x64     • Mac OS X 10.15.7 19H2 darwin-x64
    • Chrome (web)                • chrome        • web-javascript • Google Chrome 87.0.4280.88

• No issues found!
Process finished with exit code 0

flutter doctor -v (beta)
[✓] Flutter (Channel beta, 1.24.0-10.2.pre, on Mac OS X 10.15.7 19H2 darwin-x64, locale en)
    • Flutter version 1.24.0-10.2.pre at /Users/pedromassango/dev/SDKs/flutter_beta
    • Framework revision 022b333a08 (3 weeks ago), 2020-11-18 11:35:09 -0800
    • Engine revision 07c1eed46b
    • Dart version 2.12.0 (build 2.12.0-29.10.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] IntelliJ IDEA Community Edition (version 2020.2.4)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 52.0.4
    • Dart plugin version 202.8070

[✓] VS Code (version 1.51.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 arm (mobile) • emulator-5554 • android-x86    • Android 11 (API 30) (emulator)
    • Web Server (web)            • web-server    • web-javascript • Flutter Tools
    • Chrome (web)                • chrome        • web-javascript • Google Chrome 87.0.4280.88

• No issues found!
Process finished with exit code 0

CC @justinmc @chunhtai


Opensearch crashing on Macbook Pro M1 Max (Docker)

When running a fresh install of Opendistro for Elasticsearch 1.13.2 on a Macbook Pro M1 MAX, the docker image crashes after a few minutes running with this feedback in the log:
Exception in thread "main" java.io.IOException: Cannot run program "/opt/jdk/bin/java": error=0, Failed to exec spawn helper: pid: 340, exit value: 1 at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1142) at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073) at org.elasticsearch.tools.launchers.JvmErgonomics.flagsFinal(JvmErgonomics.java:114) at org.elasticsearch.tools.launchers.JvmErgonomics.finalJvmOptions(JvmErgonomics.java:88) at org.elasticsearch.tools.launchers.JvmErgonomics.choose(JvmErgonomics.java:59) at org.elasticsearch.tools.launchers.JvmOptionsParser.jvmOptions(JvmOptionsParser.java:137) at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:95) Caused by: java.io.IOException: error=0, Failed to exec spawn helper: pid: 340, exit value: 1 at java.base/java.lang.ProcessImpl.forkAndExec(Native Method) at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:313) at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:244) at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1109) ... 6 more
Is this a known issue? Linked to Apple’s M1 MAX silicon? Or unrelated?
Any ideas on how to fix?
Many thanks,
Kevin
PS: docker for desktop also shows a ‘amd64’ performance warning label.

If I need to run any other diagnostics, just let me know.

@pinkminds I think I responded on your forum post but this is a known issue. Open Distro docker doesn't support arm64 but OpenSearch does.

Yes indeed, changing to Opensearch did the trick. Thx again!


WIP: added Subscribable.fromStream

Type

[x] Feature

Description
Adds Subscribable.fromStream. The idea is that the Subscribable keeps track of the last value of the Stream(or the defaultValue if the stream hasn't yet emitted a value). I honestly doubt that this is the best implementation for this fn though.. :(

What's the use case for this?

I'm using this for periodically polling an api w/ Option.none as the default.

I'm using this for periodically polling an api w/ Option.none as the default.

I think in that case using a SubscriptionRef is a better fit.


Wrong GUID in Sukebei RSS

Hi, GUID in Sukebei RSS contains link to nyaa. domain instead. Feedly uses GUID as headline link, so I can't view anything without a hassle.

@ewhal change the WebAddress in config/env.go for sukebei


word启动报错！！！

word启动报错！！！

文档详细信息
⚠ 请勿编辑此部分。 docs.microsoft.com ➟ GitHub 问题链接必须具有此部分。

ID: fcf622c4-3939-d5c7-c530-5aea436cd919
Version Independent ID: cc94973e-5aa5-e5b7-62ab-2bcea8a19850
Content: Item' could not be loaded, Office Shared [vblr6.chm50057]
Content Source: F1/item-could-not-be-loaded-office-shared-vblr6-chm50057.md
Product: office
GitHub Login: @o365devx
Microsoft Alias: o365devx

@chenweiheng
Thanks for your feedback. We use Github issues for documentation bugs, not for developer support. Please try the VBA developer community on Stack Overflow (https://stackoverflow.com/questions/tagged/vba) where you can get help from actual developers. If you find a bug in our documentation, please let us know! Thanks!


Git Hub's Adventure Game

Udacity workshop "GitHub's adventure game"

When would you want to use a remote repository rather than keeping all your work local?
If I want to collaborate with some developers I prefer to use a remote repository rather than keeping my work local.
GitHub's an incredible collaboration platform and Git repositories hosting service.
So it's very useful to use remote repositories on GitHub for collaboration with other web-developers.
#Why might you want to always pull changes manually rather than having Git automatically stay up-to-date with your remote repository?
Because some changes may be not correct at the moment when Git will start automatical push/push or these changes may be only for test etc.
Describe the differences between forks, clones, and branches. When would you use one instead of another?
Fork is clone of anybodies repository on GitHub. When you push "Fork" button on the webpage with some project it's automatically copies to your GitHub. Then you can clone this repository locally with git clone. If you want to add some changes to your local repository but you not sure if they work correct, you may create new branch and test your things there.
What is the benefit of having a copy of the last known state of the remote stored locally?
For example, you have to leave and you will be offline. If you make the copy of remote repository before you're living you can add changes to rhis repository.
How would you collaborate without using Git or GitHub? What would be easier, and what would be harder?
If I wouldn't have Git and GitHub, I would collaborate with using some web stores looks like hosting. But it's worse because you don't have saving changes history, you can't return to previous version if you or your colleagues make some mistakes. Or you must keep this history in backup files or something else. It's complicates the development because nobody wants to try add some changes to the files if they're afraid for the future efficiency of software.
When would you want to make changes in a separate branch rather than directly in master? What benefits does each approach have?
I would want to use separate branches for example if I want to try some features in the project, but I don't sure that they'll work correct. I create a new branch and work there. I finish all changes, test this feature. It works correct. But somebody tells me that I have some trouble with my master branch. And now I don't need to make changes in my current branch or delete this changes. I just can checkout to the master branch and fix all bugs there. When it will be finished I can merge these two branches.
Link to Fork Recipes
Link to Pull request


4.0.0 Encounter 29.10 Failure

29.10 "Encounter resources returned during previous tests conform to the US Core Encounter Profile" is failing, stating that the "Resource does not conform to the profile http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter".
Test session showing error: https://inferno.healthit.gov/suites/test_sessions/c3627b9d-17a9-4388-b3a7-f16f3e46e1f9#us_core_v400-us_core_v400_encounter
We believe this is occurring because the string we are returning contains a colon, however, there are no listed defined character exclusions for internal ids, as shown here https://www.hl7.org/fhir/element.html#id.
The id which is causing an error on 29.10 is an element.id https://www.hl7.org/fhir/element-definitions.html#Element.id which states it can be 'any string value except blank spaces'. Therefore we believe this test should be passing with what we are returning.

@jj027509 I tested your resource on inferno-dev which does not give any error. Can you re-run the test tomorrow with new Inferno release?

@yunwwang  This passed when I tested today. Thank you!


A lot of files have been renamed

As you can see in the picture, some folders and files have been renamed, but only in the mount point (right is the same folder on Windows) and everything looks fine on the web.
Recreate the mount and reboot does not solve the problem.
It's rather problematic because I was planning to sync with a Seafile folder and the names must be the same.
Thanks in advance.

Folders/files get renamed if there is more than one file/folder with the same name.

That's what I thought and I double check but there is no duplicate on the Drive.
Is there a way to clear the cache or something ?
Maybe clean and reinstall ?

Is there a way to clear the cache or something ?

The -cc command line option clears the cache before mounting.

Perfect
Unmount, clear the cache, remount, the folders and files have the correct names.
Thank you


[Feature] Add error layout + layout fullpage

Description
Add error layout page.
404: /_error/404.html

500: /_error/500.html

Types of changes

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

Checklist

[ ] I updated the documentation (see here)
[x] I agree that this code will be published under the MIT license

Thank you @cavasinf - works great!
I did some smaller refactorings and added examples to the demo app. It now uses the status_code  and status_text as fallback for missing translations:

Can you adjust the French translation? It currently sounds as if it is targeted for 404 "page not found", but I think we should provide a generic error message instead. After that I will merge.

Looks Good, but I'm not at my workspace rn.
Can only check next Monday.

Oh right: it is weekend, totally forgot 😁 thanks for contributing during your free time!

@kevinpapst The "Take me home" trans doesn't work.
But I can't find why ...

Just tested, works for me:

Cache?

php bin/console cache:clear and rm var/ -R didn't change anything..

I am testing in APP_ENV=prod and just did rm -rf var/cache/* after updating the branch.
Lets merge and see what happens then.


chore(docs): point to new environment variable endpoints in site crud operation descriptions

This PR updates the description of site CRUD operations to include a message that new environment variable endpoints should be used instead of relying on build_settings.env and repo.env.
These are the operations affected by this change:

createSite
createSiteInTeam
getSite
listSites
listSitesForAccount
updateSite

Closes https://github.com/netlify/pillar-workflow/issues/628

@codebyuma what do you think of the language I introduced here? Happy to update it to something else!

What do you think @melanierichards, should we add Deprecation warning: to the start of each?

What do you think @melanierichards, should we add Deprecation warning: to the start of each?

I prefer the suggestion to render these in bold text, but assume we don't have the ability to do so? I do think it's possible this could get missed, but Deprecation warning: might be a little strong given we're not deprecating the entire endpoint.
Maybe there's a softer prefix? Like Key deprecation warning: or Important update:? Probably a good option that I haven't thought of yet...

How's Note: for a prefix? I've added it in bold.

@melanierichards how's this?


Create a new CenterMainFluid layout

The LeftWM window manager has a layout called CenterMainFluid.  It's akin to our XMonad.Layout.CenteredIfSingle in that it's best suited for ultrawide montiors, where a single stretched window might be annoying.  Quoting from the LeftWM documentation, it works like so:
 1st               2nd
 stack     main    stack
+-----+-----------+-----+
|     |           |     |
|     |           +-----+
|     |           |     |
|     |           +-----+
|     |           |     |
+-----+-----------+-----+
  1st      main     2nd
 stack             stack

+-----+-----------+-----+
|     |           |.....|
|     |           |.....|  unoccupied
|     |           |.....|  space is
|     |           |.....|  reserved
|     |           |.....|
+-----+-----------+-----+
  1st      main
 stack

+-----+-----------+-----+
|.....|           |.....|
|.....|           |.....|  unoccupied
|.....|           |.....|  space is
|.....|           |.....|  reserved
|.....|           |.....|
+-----+-----------+-----+
           main

User archie-dev on Reddit already presents a minimal working example:
{-# LANGUAGE FlexibleInstances, MultiParamTypeClasses #-}
module CenterMain ( CenterMain (..) ) where

import XMonad hiding (tile)
import qualified XMonad.StackSet as W

data CenterMain a = CenterMain deriving (Show, Read)

instance LayoutClass CenterMain a where
    pureLayout CenterMain r s = layout
      where ws = W.integrate s
            rs = tile r (length ws)
            layout = zip ws rs

tile :: Rectangle -> Int -> [Rectangle]
tile r n = lefts ++ middle ++ rights
  where lefts  = [middleR]
        middle = [leftR]
        rights = splitVertically (n - 2) rightR
        [leftR,middleR,rightR] = splitHorizontally 3 r

Closed by #811


YouTubePlayer onReady() not called on second Activity

android-youtube-player: version 11.0.1
jetpack-compose
tested on: Android API 27 and API 29
I created new Empty Compose Activity in Android Studio and initialized YouTubePlayer in my FirstActivity like this:
class FirstActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyApplicationTheme {
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colors.background
                ) {
                    val lifecycleOwner = LocalLifecycleOwner.current
                    AndroidView(
                        factory = { context ->
                            val youTubePlayerView = YouTubePlayerView(context)
                            lifecycleOwner.lifecycle.addObserver(youTubePlayerView)
                            youTubePlayerView.enableAutomaticInitialization = false
                            val listener: YouTubePlayerListener =
                                object : AbstractYouTubePlayerListener() {

                                    override fun onReady(youTubePlayer: YouTubePlayer) {

                                        val defaultYouTubePlayerController =
                                            DefaultPlayerUiController(
                                                youTubePlayerView,
                                                youTubePlayer
                                            )
                                        defaultYouTubePlayerController.showYouTubeButton(false)
                                        defaultYouTubePlayerController.setFullScreenButtonClickListener {
                                            startNewActivity()
                                        }
                                        youTubePlayerView.setCustomPlayerUi(
                                            defaultYouTubePlayerController.rootView
                                        )
                                        youTubePlayer.cueVideo("6JYIGclVQdw", 0f)
                                    }
                                }

                            val options =
                                IFramePlayerOptions
                                    .Builder()
                                    .controls(0)
                                    .rel(0)
                                    .build()
                            youTubePlayerView.initialize(listener, true, options)
                            youTubePlayerView
                        }
                    )
                }
            }
        }
    }

    fun startNewActivity() {
        val intent = Intent(this, SecondActivity::class.java)
        this.startActivity(intent)
    }
}

and here everything is fine, YouTubePlayer is initialized, video is loaded and onReady() method is called. When I click full screen button which redirect us to SecondActivity the method onReady() from YouTubePlayer in SecondActivity is not called. This is how SecondActivity looks like:
class SecondActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyApplicationTheme {
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colors.background
                ) {
                    val lifecycleOwner = LocalLifecycleOwner.current
                    AndroidView(
                        factory = { context ->
                            YouTubePlayerView(context).apply {
                                lifecycleOwner.lifecycle.addObserver(this)

                                addYouTubePlayerListener(object : AbstractYouTubePlayerListener() {
                                    override fun onReady(youTubePlayer: YouTubePlayer) {
                                        youTubePlayer.cueVideo("LvetJ9U_tVY", 0f)
                                    }
                                })
                            }
                        }
                    )
                }
            }
        }
    }
}

Strange thing is that when I play video in FirstActivity and then open SecondActivity, most of the time everything is fine, YouTubePlayer in SecondActivity is loaded correctly and we can play video. But when I'm in FirstActivity and do NOT hit "play" button, but try to open SecondActivity, the onReady() method from YouTubePlayer in SecondActivity is almost never called.

Hi, could be related to #830 ?

Not really, because I got the issue even when player in FirstActivity is loaded and then wait 2-3 seconds before navigate to other screen

For me it looks like the state of firstly created player have impact on every other created YouTubePlayer. For example when I make SecondActivity as my initial Activity, the player is loaded correctly. Also I made test where in my first Activity I created multiple instances of YouTubePlayer and all of them loaded correctly, but when I switched to another Activity the player in that another Activity also does not called onReady() method.

I think I'm experiencing the same issue. The firstly created player always works, instances after that have a chance of not working. The ones that do not work are either in a new Fragment or another Activity.

It seems to work when the YouTube player is started in the full screen / landscape mode.

This should be fixed in version 11.1.0.


ARM Unittest Failures

$ ./unit_tests
run test__pattern ...
0 error(s) detected

run test__yield_interface ...
 I'm not sure how to proceed with testing this, any thoughts?

First of all: thank you for your work try porting libcppa to ARM! What system are you using? What compiler version?
Yielding is an essential component of the cooperative actor scheduling. If this doesn't work, the scheduler doesn't work. That's why test__spawn is stuck in a deadlock. Either the ucontext API doesn't work as expected or the yield interface doesn't work. The yield interface uses "__thread" variables of GCC, see src/yield_interface.cpp. Is this feature available on ARM?
If the yield interface does work correctly, then you might try to fix the cppa::fiber implementation for ARM. It uses <ucontext.h> on Unix machines.
Good luck!

System is a Tegra 2 (in a Trim Slice - http://trimslice.com/) running Arch Linux ARM with GCC 4.6.2. Kernel is <IP_ADDRESS> (I can't upgrade to 3.1 due to some hardware support issues).
I recall reading at some point that the ucontext API is deprecated? I'll look into it.
It seems safe to assume that GCC intrinsics would either be available or cause an error; anything else would be a broken design.
I'll take a closer look.

It looks like the ucontext API has been removed from the POSIX standard, but I don't know whether that's considered deprecation or not.
As for this specific issue, setcontext seems to be a noop on my system. I'll see if I can figure out why.

As far as I can tell, because ucontext has been removed from the POSIX standard, it will remain on platforms where it's already implemented but will not be ported to new platforms. Apparently ARM falls into the latter category. There are supposed to be linker warnings that getcontext/setcontext will always fail, but I don't see them for some reason (even when building 5 line ucontext demo applications).
I'll see if there's any effort inside glibc to get this API implemented on ARM, but it seems the general recommendation is to fall back to setjmp/longjmp and friends and avoid ucontext.

Well, the default actor implementation needs an own stack. Thus, setjmp/longjmp doesn't help much. What about GNU pth? It should be relatively easy to port libcppa from ucontext to GNU pth if it does work on ARM.

I just wrote a sample program, and pth does seem to be working. Given that the current attitude in glibc is that ucontext is deprecated and should be avoided, pth does look like a good alternative.

I just read the GNU pth documentation for porting libcppa to it, but it's not possible since GNU pth implements its own single-threaded scheduling. Sorry! I thought pth provides primitives for context switching but its a different approach to ucontext. I will search for an alternative. I'm really sorry for wasting your time. :/
Btw, Microsoft implemented its own user-space threading library called fibers: http://msdn.microsoft.com/en-us/library/windows/desktop/ms682661(v=vs.85).aspx
It's not an issue and there is already a port included in libcppa. However, the problem with Windows right now is the lack of a lot C++11 features in the Visual Studio compiler.

Alright, well, I don't know of any alternatives, but I'll poke around and see if I can find anything. I see what you mean about scheduling, though.
As for my time, don't worry about it. This library looks to be worth some of my time :)

I have yet to try it out, but this looks like it implements the abstraction you're looking for: http://www.xmailserver.org/libpcl.html
I don't know how well supported it is.

Things like libpcl, libtask, etc. are too high level. All libcppa needs is swapcontext() functionality. In particular, libcppa needs a library without internal state. Thus, everything providing init() or something similar is out.
However, I browsed the GNU pth sources and it does implement its own context switching:
extern int pth_uctx_create(pth_uctx_t *);
extern int pth_uctx_make(pth_uctx_t, char *, size_t, const sigset_t *, void (*)(void *), void *, pth_uctx_t);
extern int pth_uctx_switch(pth_uctx_t, pth_uctx_t);
extern int pth_uctx_destroy(pth_uctx_t);

I will try to port libcppa to pth using only the context switching functionality of it. I guess it should be straight forward and should run on ARM since you already tested it successfully. :)

I've ported libcppa to pth and poked a bit around with it. In short: it doesn't work. The unit test of the yield interface is successful, but as soon as you try to spawn an actor, your application is dead.
Pth uses signal handlers for context switching. It's a very tricky algorithm by the way (see www.gnu.org/s/pth/rse-pmt.ps). However, it fails as soon as you have more than one kernel thread. Even if one synchronizes calls to the context switching function, since it needs access to some static data.
And a single-threaded libcppa implementation is pretty useless. I would love to see libcppa running on ARM, but I don't have the time (or hardware) yet to look for an alternative ucontext implementation, resp., implement one of my own.
However, libcppa is LGPL software. Feel free to fork it and try porting it yourself (if you have the time to do so). fiber.cpp is the only file you'll need to modify.

Thanks for looking into this, and sorry it didn't wind up working.
pcl and pth both use setjmp and longjmp, along with some custom code, to duplicate swapcontext on platforms where it's not available. When I've got some time (which I probably will in the next week or so), I'll see if I can duplicate what they're doing well enough to get things working.

You can disable context switching now by using ./configure CXXFLAGS="-DCPPA_DISABLE_CONTEXT_SWITCHING".
Be aware that this will cause each actor to run in its own thread unless you're using event-based actors. Btw, you always should use event-based actors anyways, since they run faster and scale better. However, a subset of libcppa is better than nothing, isn't it?


Warning message for subplots

Steps to reproduce
Please see the placeholders in the warning message:

Environment

atoti: 0.6.0
Operating System: win32

Related internal ticket : https://support.activeviam.com/jira/browse/UI-5773


Initial support for dynamic gufuncs

As title. This PR enables the following:
@guvectorize([(int64[:], int64, int64[:])], '(n),()->(n)')
def g(x, y, res):
    for i in range(x.shape[0]):
        res[i] = x[i] + y

@guvectorize('(n),()->(n)')
def f(x, y, res):
    for i in range(x.shape[0]):
        res[i] = x[i] + y

x = np.arange(5, dtype=np.int32)
y = nb_types.int32(10)
res = np.zeros(5, dtype=np.int32)
g(x, y, res)
f(x, y, res)

It seems that removing these lines in this commit, breaks test TestDUFuncPickling (link to azure)

Currently, in Numba (and in Numpy), it is possible to call a guvectorized function as res = g(x, y) rather than g(x, y, res). Having this pattern when types are optional is a bit problematic, since we would have to guess the output type and shape based on signature ((n),()->(n)) and input types (x, y). Should this pattern be forbidden in Numba when types were not specified? cc @sklam

Summary from out-of-band disscusion:

Should this pattern be forbidden in Numba when types were not specified?

Yes, dynamic ufuncs can ban the usage without explicit output argument. It will be difficult to make it work.

PR is ready for review!

I will do a more in-depth review later this week.

Hi Siu, thanks for the review. CI is currently failing on a test that uses object mode. Can I just remove this test since object mode is schedule for deprecation?

Hi @sklam, CI is all green

@guilhermeleobas
Something wrong with the force push it seems. Previously addressed items were gone. e.g. https://github.com/numba/numba/pull/5938#pullrequestreview-487008549
For future reference, please do not force-push once the PR has been reviewed. It looses the review history.

Hi @sklam, sorry about that. I made some mistake while rebasing the code.

I have two suggestions and I commited to this branch: https://github.com/sklam/numba/commits/pr/5938suggestion

https://github.com/sklam/numba/commit/e1d514a0121a12e76e33a36f5133302604127419 avoids setting is_dynamic in __call__ and move the is_dynamic=True to right after the constructor.
https://github.com/sklam/numba/commit/404745e5971a97d2423c5e7d7d992b83904a2941 goes one step further to remove the setter on is_dynamic and make the constructor set it.

Hi @sklam, thanks for the tip. If that's ok, I've cherry-pick those commits into this branch

Hi @sklam, can you take another look at this PR when you have some cycles to spare?

Sorry for asking, but is this supposed to work on 'cuda' target?
Been waiting for this feature for 2 years to decrease the needed gpu memory.

Hi @cristipurdel, this feature was designed to work with target=cpu. Some more work needs to be done in order to support the cuda target.

@guilhermeleobas

Edit: Let me know when the code is in a "mergeable" state so that I can write/update the docs.

Yes, it's ready for doc update.

Hi @sklam, thanks for the review. I've resolved the issues pointed by you in your last review and add a first draft for the documentation.

Thanks for all the feedback @sklam


Remove clj-kondo warning that := is an unused value

clj-kondo does not understand that := is special in rcf/tests.  Users can use this to import the config in their projects and remove the warning.
References:

Exporting and importing clj-kondo configuration: https://github.com/clj-kondo/clj-kondo/blob/74be7d29696c08e188d10c64b045403b21302a0b/doc/config.md?plain=1#L524
An explanation of the :config-in-call option: https://github.com/clj-kondo/clj-kondo/blob/74be7d29696c08e188d10c64b045403b21302a0b/doc/config.md#config-in-call
An explanation of the :unused-value warning that we see: https://github.com/clj-kondo/clj-kondo/blob/74be7d29696c08e188d10c64b045403b21302a0b/doc/linters.md#unused-value

Slack discussion


Request body can't be easily restricted to a trait

I'm aware that the title of this issue reads really weird, so I will do my best to explain and start a discussion. My explanation is a little long, so if you're in a hurry here's the TL;DR:
As a server application writer, there's no way I can handle a Request<T> without knowing what T is. As a gateway/framework, there's no way I can enforce what T is without making the application non-interoperable with other gateways/frameworks.

I've been working on a web application interface crate (think Ruby's Rack) for a couple of months, but I heard that this crate was in the works and decided to wait and see what this crate would look like. (I haven't publicly announced said crate, but I guess the cat is out of the bag now...)
I am inspecting it now to see how well this crate will work as an interface for HTTP applications, and I am encountering a problem with Request. The problem is that the request is generic over T, which is the body. There is no way for an application to realistically read a body of unknown type.
Consider the following web application (greatly simplified, but works as an example):
use http::{Request, Response};

pub fn my_application<Body>(request: Request<Body>) -> Response<&'static str> {
    Response::new("Hello World!".into())
}

That works great, but what if we want to do something more interesting, like respond with the number of bytes in the request body? That should be easy:
use http::{Request, Response};
use std::io::Read;

pub fn my_application<Body: Read>(mut request: Request<Body>) -> Response<String> {
    let mut buf = Vec::new();
    let len = request.body_mut().read_to_end(&mut buf).unwrap();

    Response::new(format!("{}", len))
}

That should work, but now we have a problem: we can no longer handle any type of request; we can only handle requests of a specific type. More specifically, we accept a request of type http::Request<T> where T: std::io::Read. If we wanted to support Request<String>, we'd have to re-implement our application function again for this type.
It gets worse. The above examples are stateless, which very few real-world applications are. We'd probably want to instead talk about these applications as traits instead of functions. Something like this comes to mind (more similar to my crate, actually similar to Iron too):
use http::{Request, Response};

pub trait HttpApp: Send + Sync + 'static {
    fn handle<Req, Res>(&self, _: Request<Req>) -> Response<Res>;
}

There's an immediate problem with this; no HTTP server implementation can actually support the above trait. If I write a CGI gateway crate, I might provide a Request<Stdin>, but now the application writers have to explicitly code against Request<Stdin>, and interoperability is lost.
To put it another way: Request<T> doesn't provide application writers a unified request type to code against, because Request is generic over something without meaningful bounds. If application writers do code to a specific body type, then they are no longer coding against a crate-agnostic type. T here is basically leaking the implementation into the interface.
I don't pretend to have an answer to this problem; maybe this crate is too high-level (or is it low-level?) for what I need. I am very interested in comments, disagreements, or suggestions.

Thanks for the detailed write up! We've also been interested in something like WSGI/Rack/Servlet. Hopefully with the community's help, we can make something stellar.

In regards to T having no bounds: This is actually a benefit!
First of all, by not having bounds on the body generic, this allows the crate to be used in both asynchronous frameworks and in synchronous. Requiring a trait bounds would likely hamper one of those sides. Likely, framework ecosystems will show up that do require a bounds. You could imagine a framework that behaves somewhat like hyper today, where T: Stream is required.
Secondly, this allows for application writers to have these bounds at the borders, but to then map them into anything they want internally. So, if an framework receives Request<T> where T: Stream<Item=Vec<u8>, Error=io::Error>, a user could map the request into something like a Request<Comment> internally. Something like this:
fn framework_entrypoint<T>(req: Request<T>) -> BoxFuture<Response<T>, io::Error>
where T: Stream<Item=Vec<u8>, Error=io::Error> {
    if req.method() == POST && req.uri().path() == "/article/comment" {
        let (head, body) = req.into_parts();
        body.concat2().map(move |vec| {
            let comment = serde_json::from_slice(&vec)?;
            let req = Request::from_parts(head, comment);
            post_comment_for_article(req)
        })
    }
    // ...
}

#[derive(Deserialize)]
struct Comment {
    author: String,
    body: String,
}

fn post_comment_for_article(req: Request<Comment>) -> Something {
    // ...
}

Additionally, any sort of middleware that only adjusts headers can be made to work for any framework, since it can just put zero bounds on the body (since it won't look at the body anyways).
fn apply_cors<T>(res: &mut Response<T>, options: &CorsOptions) {
    res.headers_mut().insert(name, value);
}

It looks like the discussion here came to a close.

We're discussing this issue right now in the Ruma project. We use an Endpoint trait for each API endpoint which converts between http request and response types and our own concrete request and response types defined for each API endpoint. We have a crate (ruma-client-api) that implements these conversions, and a separate crate (ruma-client) that actually provides an HTTP client using Hyper. Notably, Ruma is only bound to Hyper at the level of ruma-client.
Our goal is to keep ruma-api and ruma-client-api agnostic to HTTP client implementations. Without the ability to constrain what type "body" is, and in the absence of any convention in the Rust HTTP ecosystem, there's no way to:

Implement our Endpoint trait, because we need some knowledge of what the body is 2. Keep it interoperable with potential other HTTP clients.

To make item 1 possible, we'd need to add a restriction that the body is a Stream whose items can be deref coerced into [u8]. That would make it work with Hyper's Body and Chunk types. But we have no way of knowing whether or not such an interface would be compatible with other HTTP clients. Perhaps a convention will emerge in the ecosystem, but the unconstrained generic type in http means that there's no real way to future proof this.

The HTTP crate specifically does not want to constrain request / response bodies to anything that resembles bytes. This would prevent storing a typed representation of the body.

Yep, I understand the reason it's designed the way it is. But the issue brought up here is a cost of this design. The crate offers types for everything except req/res bodies, and as a result req/res bodies cannot be interoperable between higher level crates that both use HTTP.


vm.getEnv won't work

Component
Forge
Have you ensured that all of these are up to date?

[X] Foundry
[ ] Foundryup

What version of Foundry are you on?
2.0
What command(s) is the bug in?
forge script
Operating System
macOS (Intel)
Describe the bug
Let's say we have a contract that deploys a butch of contracts. If we rich block limit then this deployment will fail (execution of SC method). I try to split deployment into 2 methods and run forge script for both of them. As I need deployed addresses from first deployment run in the second method I simply try to put it to env using vm.setEnv, but when I try to execute the second method this env vars is empty. Not sure maybe I misunderstood or doing something wrong.

Your deployment script can use storage to split deployment in several txs if needed can't it?
contract Deploy is Script {

	deployedAddressPart1 address[];

	doPartOne() public {
		// deploy
		deployedAddressPart1 = (new Part1Deployer()).getDeployedAddresses();
	}

	doPartTwo() public returns (address[]) {
		// deploy
		new Part2Deployer(deployedAddressPart1);
	}

	run(){
		doPartOne()
		doPartTwo()
	}

}

or you can look at vm.readFile / vm.writeFile. You might be able to read from the ./out/ informations about part1

run(){
		doPartOne()
		doPartTwo()
	}

This one doesn't solve the block limit issue. I want to have two runs of forge script for partOne() and partTwo()
Do you confirm that vm.setEvm doesn't work?(As this one is a most easier way to share state which doesn't require any additional parsing of json file)

I already have a workaround where I parse broadcast  file , but it's quite tricky to determine wich address related for which contract (If you deploy the same contract few times, you have the same contractName in broadcast file )

environment variables set by a process are only accessible by itself and its child processes
thus, calling setEnv will only modify env vars of the currently running forge process, and won't affect the shell (forge's parent process), that's why you can't access them in the second forge run
(we should probably clarify this in the book)

Yeah if I understand correctly you're doing:

Run the first script, which does vm.setEnv and then exits.
Run the second script, expecting environment variables to be set from the first run

This won't work and is not the intended use case - environment variables only exist for the current process in which it is set, so once the process exits the environment variable is not persisted.
You can write what you need to a file using the file cheatcodes, and read it in the other script. It seems like you're also saying that you're running out of gas - would you mind opening up a discussion on this repository with some more information on how you achieve that/what the gas limit is? It should be very high, so it should not present a problem. You might also be able to raise it.
Information you'd ideally give:

What is the gas limit in your script?
How much gas does the script use?
A trace of the script so we can figure out if something else is consuming all of your gas

Closing this since environment variables can't work this way


Updated readme

Updated readme

@danielimprobable I've added some comments/suggestions that you should just be able to accept.