TypeError while loading package in sublime3

Installed SublimeHighlight from https://github.com/n1k0/SublimeHighlight/tree/python3 and get following error when package is loading. https://github.com/n1k0/SublimeHighlight does not work either, ends with error Package desktop missing.
It is installed on Sublime3, running on Linux.
reloading plugin SublimeHighlight.SublimeHighlight
Traceback (most recent call last):
  File "/opt/sublime_text_3/sublime_plugin.py", line 73, in reload_plugin
    m = importlib.import_module(modulename)
  File "./importlib/__init__.py", line 90, in import_module
  File "<frozen importlib._bootstrap>", line 1584, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 584, in _check_name_wrapper
  File "<frozen importlib._bootstrap>", line 1022, in load_module
  File "<frozen importlib._bootstrap>", line 1003, in load_module
  File "<frozen importlib._bootstrap>", line 560, in module_for_loader_wrapper
  File "<frozen importlib._bootstrap>", line 868, in _load_module
  File "<frozen importlib._bootstrap>", line 313, in _call_with_frames_removed
  File "/home/michael/.config/sublime-text-3/Packages/SublimeHighlight/SublimeHighlight.py", line 17, in <module>
    if desktop.get_desktop() == 'Windows':
  File "/home/michael/.config/sublime-text-3/Packages/SublimeHighlight/HighlightLib/desktop/__init__.py", line 167, in get_desktop
    elif _is_xfce():
  File "/home/michael/.config/sublime-text-3/Packages/SublimeHighlight/HighlightLib/desktop/__init__.py", line 138, in _is_xfce
    return _readfrom(_get_x11_vars() + "xprop -root _DT_SAVE_MODE", shell=1).strip().endswith(' = "xfce4"')
TypeError: endswith first arg must be bytes or a tuple of bytes, not str

Same error here. I've submited a pull request with the fix.
You can see the fix here: https://github.com/n1k0/SublimeHighlight/pull/57/files

Thank you, this fixed my problem.
I just realised, also with pull request https://github.com/n1k0/SublimeHighlight/pull/53/files the issue will no longer occur.


EF core 3 migration tool ignores Default Database Location property

I am learning ASP.NET w/ Visual Studio Community 2019, and follow the tutorial to create Razor Pages web app, am just trying the EF core 3 migration tool. I learned that Update-Database command always creates database at folder C:\Users<current user>, although I changed the Default Database Location property of server (localdb)\MSSQLLocalDB to other folder.

I hope the migration tool can make use of Default Database Location property when creating new database.

@zhou-xb My understanding is that LocalDb never uses the Default Database Location. You need a normal SQL Server instance for that--SQL Express should work.
I tried to find documentation for this, but couldn't find anything specific. You might want to try asking at https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/view-or-change-the-default-locations-for-data-and-log-files?view=sql-server-ver15

@ajcvickers Thanks a lot for your information.


Make IPv6 request lines consistent with Firefox and Chrome.

Previously we omitted the square braces and explicit port on CONNECT requests
and the square braces in the Host header.
Closes https://github.com/square/okhttp/issues/2344

LGTM
Failed tests:
  URLConnectionTest.connectViaHttpProxyToHttpsUsingProxyArg:879->testConnectViaHttpProxyToHttps:918 expected:<android.com[]> but was:<android.com[:443]>
  URLConnectionTest.connectViaHttpProxyToHttpsUsingHttpsProxySystemProperty:891->testConnectViaHttpProxyToHttps:918 expected:<android.com[]> but was:<android.com[:443]>
  URLConnectionTest.connectViaHttpProxyToHttpsUsingBadProxyAndHttpResponseCache:954 expected:<android.com[]> but was:<android.com[:443]>
  URLConnectionTest.proxyConnectIncludesProxyHeadersOnly:991 expected:<android.com[]> but was:<android.com[:443]>
  URLConnectionTest.connectViaHttpProxyToHttpsUsingProxySystemProperty:887->testConnectViaHttpProxyToHttps:918 expected:<android.com[]> but was:<android.com[:443]>
  CallTest.proxyConnectOmitsApplicationHeaders:2153 expected:<android.com[]> but was:<android.com[:443]>


start train-test branch

Now that core code has stabilized, starting branch updates as opposed to direct commits to main code

Need to standardize how I create training and testing data from lyrics objects.
Also - standardize how I apply the core genre objects with nlp methods.  Need section for creation of training and testing slices- don't recreate this code in scripts/methods for each nlp task like phrases or LDA.


use getgrouplist and also change supplementary groups

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

tried rewriting for Darwin but I haven't tested that myself, please take a look.


PREOPS-1335: Phil's edits on ES milestones, commissioning observations, DP1/DP2/DR1 contents, impact on survey cadence

This PR will track my content changes to RTN-011 for ticket PREOPS-1335. It will support review by (primarily) @leannep before we merge my edits into the primary ticket branch (which will be reviewed by many others). I'll add Leanne as a reviewer when the branch is ready for her review.
PS. Note that I had to drop the hyphen from the branch name in order to be able to create the new branch... I can look at renaming the main ticket branch. Update: it's not possible, since the git rename command to remove the hyphen also doesn't work because the branch name has a hyphen in it... Lesson learned, don't make branch names with hyphens in them.

@leannep My edits to RTN-011 are ready for your review! Hopefully you can merge, rebase, and fix any problems in your branch - feel free to merge this PR if you agree. Otherwise, I'll address any comments you leave in a PR review. Thanks!

Addressed @leannep 's review comments, merging now so she can rebase and complete her own edits.


Support RBAC model in Amundsen

Expected Behavior or Use Case
Having RBAC model can serve 2 purpose:-

Currently, anyone who has access to Amundsen can access any metadata and can edit metadata descriptors. There has
to be an ideal way where we can restrict users based on their role on which DBs/tables can they edit.
We can restrict on what level of data/metadata can someone see. Eg - If there are details about any particular DB that
only admin have access to, then it can be restricted.

Service or Ingestion ETL
Frontend and metadataservice

Thanks @shahneil88 I have heard #1 a lot more than #2. Is that in line with how you think of their relative importance?

@markgrover Yes

@markgrover I've actually got a compelling internal use case for #2, where we want to restrict access based on job role -- eg. our sales staff only sees catalouged data for services they have access to (think SFDC, Marketo, etc.) while engineers have broader access that includes our more transactional stores (Snowflake, MySQL, etc.). It'd be fairly easy to handle just by spinning up two versions of Amundsen, but the redundancy isn't ideal. Feels like an extension to get_user_details would be a feasible way to tackle this -- if work hasn't started, I'd be happy to submit an RFC and eventually a PR.

As for #2 we also encountered scenario in which team (project) has tables where by naming convention sensitive information is contained in column names. The requirement (or nice-to-have feature) was to obfuscate such information from people outside of this team.
Still there are different ways to approach that. It can as well be achieved on backend level. For instance - when using Atlas as backend you can manage security through oidc and apache ranger combination (Keycloak oidc gives authn to Atlas and Apache Ranger gives authz allowing to display/return only relvant info from Atlas).
For sure such scenarios still require Amundsen to understand the concept of different status codes so the communication to the end user is more clear (for now we just have Something went wrong... message).


0.5.8 is a breaking change, prolly should treat it as 0.6.0

v0.5.7
Do you want to request a feature or report a bug?
bug
What is the current behavior?
errors
If the current behavior is a bug, please provide the steps to reproduce.
have a project with node 0.10 and use url-loader. you will get an error
What is the expected behavior?
no error
Please mention other relevant information such as your webpack version, Node.js version and Operating System.
This post is mostly to make you aware that between v0.5.7 and v0.5.8 there is a breaking change where the loader-utils package switches from 0.2 to 1.0. That is a breaking change for anyone using a node version that does not understand const since const is a newer es6 keyword that does not exist in older versions of node. Our continuous delivery system failed on no changes on our part because we have ^0.5.7 in our package.json and the bump from 0.5.7 to 0.5.8 should have been considered a breaking change (for those of us with production systems using older node versions). Just an FYI.

If you are on Webpack 1.x and i'm betting you are, just pin to 0.5.7 there won't be further updates so no need to target a range here.
This isn't specific to url-loader , this is something that rolled down from a common library ( long story ). There is unfortunately, nothing I can do about it at this point though I don't disagree with what you are saying. Everything in the org will be getting a major with the application of webpack-defaults over the next two weeks which should move us past this.
Informational ...
If you are on Webpack 2.x, Node < 4.3 is unsupported. Webpack drops support for NodeJS versions as the Node organization does ( .10 & .12 are unsupported as of Oct / Dev 2016 respectively )


Micronaut Serialization deserializes model bean with inheritance and discriminator property incorrectly, causing HTTP POST to REST endpoint to fail

Expected Behavior
Micronaut Serialization should set the discriminator property in an OpenAPI model bean with inheritance when deserializing.
Note that the model in the example is generated by Micronaut OpenAPI and the annotation @JsonIgnoreProperties is used for the discriminator with allowSetters set to true. This works fine with Jackson.
Actual Behaviour
Micronaut Serialization does not set the discriminator property in an OpenAPI model bean with inheritance when deserializing.
This causes validation of the bean to fail, since this property is required in the specification and therefore annotated with @NotNull.
This is a critical bug for us, since it prevents valid models generated with Micronaut's OpenAPI generator from being posted to REST endpoints, if jakarta validation is used.
I think it is related to https://github.com/micronaut-projects/micronaut-serialization/issues/550
Steps To Reproduce

Clone the repository https://github.com/runenielsen/mn-discriminator-null-serde-bug, that uses Micronaut Serialization.
Run the testPostModelWithDiscriminator in BookInfoControllerTest to post the model with a discriminator to a service endpoint with validation.
See that the test fails due to a validation failure "bookInfo.type: must not be null".
Now clone the repository https://github.com/runenielsen/mn-discriminator-not-null-with-jackson, that contains the same code, but uses Jackson Databind instead of Micronaut Serialization.
See that the same test succeeds.

Environment Information

MacOS
JDK 17

Example Application
https://github.com/runenielsen/mn-discriminator-null-serde-bug
Version
4.1.2

probably a duplicate of #550 currently allowSetters is unsupported and should fail with a compilation error

@graemerocher : Thanks for the reply.

That allowSetters is not supported for @JsonIgnoreProperties seems to be missing from the documentation. There's no notes about it in the table with Jackson annotations.
I think this is a fairly critical missing feature, since it makes Micronaut Serialization unusable with OpenAPI specs using inheritance. It will at least prevent us from using it. Is there any plan for when you will support allowSetters?
I would call this is an undocumented feature, whereas #550 definitely seems to be a bug (Micronaut Serialization should never add the same property twice when serializing to JSON, also I don't think I even use allowSetters in the example application in that issue). So I wouldn't say this is a duplicate.

yes this is a bug it should fail compilation
Now that there is a ticket there is a plan to support it for sure
noted

Thanks again 🙂

@dstepanov :
Thanks for your effort, it is very much appreciated! And sorry if I came off a bit grumpy yesterday, it was a long day 😉
Can we move the discussion from #550 to here? As I wrote, I think your observations on the visible property on @JsonTypeInfo are more related to this issue than #550 (see discussion in #550 on this).
I agree with your findings in relation to the visible property on @JsonTypeInfo. So in conclusion I think the fix for this issue (#581) is to add support to Micronaut Serialization for the visible property on @JsonTypeInfo.
I will report an issue in the Micronaut OpenAPI Generator project, that the visible property should also be added to the generated models for Micronaut Serialization. But this can not be fixed until after support has been added to Micronaut Serialization for the visible property, since Micronaut Serialization currently fails with this error, when the visible property is added:
/Users/rune.nielsen/projects/jsonignorepropertiesnotworking/src/main/java/example/micronaut/BookInfo.java:26: error: Annotation @JsonTypeInfo specifies attribute 'visible'. Currently supported attributes include: [include, use, property, defaultImpl]
public class BookInfo {

I assume this is why the visible property was removed from the models generated by the Micronaut OpenAPI Generator for Micronaut Serialization in the first place. It is just a shame that this makes Micronaut Serialization unusable for models with inheritance and validation generated by Micronaut OpenAPI Generator 🙂
So in my view, adding support for the visible property should have high priority.
On a side-note, I totally agree, that it would be nice to get all the issues you list in this comment in the other issue fixed.

Support for visible already merged https://github.com/micronaut-projects/micronaut-serialization/pull/638

@dstepanov : I have now created this issue in the Micronaut OpenAPI Generator project and written in it, that the fix shouldn't be released before the fix you did here.


iOS 20+ geofences

@tsubik technical question.
When I am adding bulk geofences they all get added to the database but in iOS only the first 20 are monitored. 20 is the iOS limit.
Question is , is there a way of changing which ones are monitored without having to remove them all and only add in 20?
Say I have 40 locations added to the database but I only want to monitor the closest 20.

Yes I know about that limitation. Don't have time to create some solution yet. Maybe the good one will be use some kind of "refresh" area. If user leaves area with given radius plugin will find the closest 19 geofences from the current position and also will start monitoring new "refresh" area.

@tsubik I've started to implement basically that. when the app loads it is getting the users location and adding in the locations (geofences) within a certain distance. I'll expand on it some more but wasn't sure if I could simply change a flag or something in the database where you are keeping the geofences to get them monitored instead of the default first 20.  Currently I'm removing all geofences then adding in the new ones. I like your idea of using receiveTransition. I'll give that a go. Obviously I wont be able to change these from the background though.
		window.geofence.receiveTransition = function (geofences) {
			geofences.forEach(function (geo) {
			//find closest locations and add geofences....
			});
		};


Add a citation file

https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files

Will be fixed in quantumjot/btrack#171


Dashboard Refresh of a Node Page Results in 404

If you refresh the browser on a node page like http://<IP_ADDRESS>/node/123E4567-E89D-12D3-A456-425455440096, it results in a 404.
<IP_ADDRESS> - - [16/Feb/2019:22:27:34 +0000] "GET / HTTP/1.1" 200 2064 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15" "-"
<IP_ADDRESS> - - [16/Feb/2019:22:27:34 +0000] "GET /node/undefined HTTP/1.1" 404 3650 "http://<IP_ADDRESS>/node/123E4567-E89D-12D3-A456-425455440096" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15" "-"
<IP_ADDRESS> - - [16/Feb/2019:22:27:41 +0000] "GET /node/123E4567-E89D-12D3-A456-425455440096 HTTP/1.1" 404 3650 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15" "-"

This is happening because nginx is using a default config, and doesn't have try_files set appropriately to route traffic to the index.html so it can be handled by React Router.  Should be an easy fix; I'll make a role to set a non-default nginx.conf.


Fix standalone network deployment

What version are you using?
soroban-cli alias : 0.9.1
soroban-sdk: 0.9.2
docker: 4.20.1
example dapp: main (https://github.com/stellar/soroban-example-dapp/commit/ab19ca1869fb7e600baec8ca6f0f6d2028bf20c7)
What did you do?
Installed soroban alias and added to ./target/bin/ PATH
I followed the steps for standalone deployment as listed here
First, build the image
make build-docker

Then, In one terminal, run the backend docker containers and wait for them to start:
./quickstart.sh standalone

Next, run the initialization script for the standalone network
NETWORK=standalone npm run setup

What did you expect to see?
A series of deployed contract IDs and success messages
What did you see instead?
The following error message:
><EMAIL_ADDRESS>setup
> ./initialize.sh ${NETWORK:-futurenet} && npm install

Using soroban binary from ./target/bin
Using standalone network
  RPC URL: http://localhost:8000
  Friendbot URL: http://localhost:8000/friendbot
Add the standalone network to cli client
Add standalone to .soroban-example-dapp for use with npm scripts
Create the token-admin identity
Fund token-admin account from friendbot
Build contracts
cargo rustc --manifest-path=contracts/abundance/Cargo.toml --crate-type=cdylib --target=wasm32-unknown-unknown --release
    Finished release [optimized] target(s) in 0.06s
cargo rustc --manifest-path=contracts/crowdfund/Cargo.toml --crate-type=cdylib --target=wasm32-unknown-unknown --release
    Finished release [optimized] target(s) in 0.08s
Deploy the abundance token contract
error: jsonrpc error: Networking or low-level protocol error: Server returned an error status code: 405
Contract deployed succesfully with ID:
Deploy the crowdfund contract
error: jsonrpc error: Networking or low-level protocol error: Server returned an error status code: 405
Contract deployed succesfully with ID:
Initialize the abundance token contract
error: jsonrpc error: Networking or low-level protocol error: Server returned an error status code: 405
Initialize the crowdfund contract
error: jsonrpc error: Networking or low-level protocol error: Server returned an error status code: 405
Done

><EMAIL_ADDRESS>postinstall
> rm -rf ./.soroban/crowdfund-contract && rm -rf ./.soroban/abundance-token && ./target/bin/soroban contract bindings typescript --wasm ./target/wasm32-unknown-unknown/release/soroban_crowdfund_contract.wasm --id $(cat ./.soroban-example-dapp/crowdfund_id) --output-dir ./.soroban/crowdfund-contract --network $(cat ./.soroban-example-dapp/network) --contract-name crowdfund-contract && ./target/bin/soroban contract bindings typescript --wasm ./target/wasm32-unknown-unknown/release/abundance_token.wasm --id $(cat ./.soroban-example-dapp/abundance_token_id) --output-dir ./.soroban/abundance-token --network $(cat ./.soroban-example-dapp/network) --contract-name abundance-token

error: a value is required for '--contract-id <CONTRACT_ID>' but none was supplied

For more information, try '--help'.
npm ERR! code 2
npm ERR! path /Users/julianmartinez/Documents/GitHub/soroban-example-dapp
npm ERR! command failed
npm ERR! command sh -c rm -rf ./.soroban/crowdfund-contract && rm -rf ./.soroban/abundance-token && ./target/bin/soroban contract bindings typescript --wasm ./target/wasm32-unknown-unknown/release/soroban_crowdfund_contract.wasm --id $(cat ./.soroban-example-dapp/crowdfund_id) --output-dir ./.soroban/crowdfund-contract --network $(cat ./.soroban-example-dapp/network) --contract-name crowdfund-contract && ./target/bin/soroban contract bindings typescript --wasm ./target/wasm32-unknown-unknown/release/abundance_token.wasm --id $(cat ./.soroban-example-dapp/abundance_token_id) --output-dir ./.soroban/abundance-token --network $(cat ./.soroban-example-dapp/network) --contract-name abundance-token

npm ERR!      /Users/julianmartinez/.npm/_logs/2023-07-17T23_30_21_380Z-debug-0.log

PT2: Using zsh
What did you do?
Ran the set up above and then tried to use zsh to for the standalone deployment
zsh ./initialize.sh standalone

What did you expect to see?
A series of deployed contract IDs and success messages
What did you see instead?
the following message:
Using soroban binary from ./target/bin
Using standalone network
  RPC URL: http://localhost:8000
  Friendbot URL: http://localhost:8000/friendbot
Add the standalone network to cli client
Add standalone to .soroban-example-dapp for use with npm scripts
./initialize.sh:65: parse error near `)'

Reference:
https://github.com/stellar/soroban-example-dapp/blob/main/initialize.sh#L60C1-L70C1
PT3: Using Docker
What did you do?
Ran the set up above and then tried to use docker to for the standalone deployment
docker exec soroban-preview ./initialize.sh standalone

What did you expect to see?
A series of deployed contract IDs and success messages
What did you see instead?
the following message:
Using soroban binary from ./target/bin
Using standalone network
  RPC URL: http://stellar:8000
  Friendbot URL: http://stellar:8000/friendbot
Add the standalone network to cli client
./initialize.sh: line 57: ./target/bin/soroban: cannot execute binary file: Exec format error

Reference:
https://github.com/stellar/soroban-example-dapp/blob/main/initialize.sh#L56-L59

Update: Was able to get something working by simply commenting out $ARGS and running NETWORK=standalone npm run setup
Result:

><EMAIL_ADDRESS>setup
> ./initialize.sh ${NETWORK:-futurenet} && npm install

Using soroban binary from ./target/bin
Using standalone network
  RPC URL: http://localhost:8000
  Friendbot URL: http://localhost:8000/friendbot
Add the standalone network to cli client
Add standalone to .soroban-example-dapp for use with npm scripts
Create the token-admin identity
Fund token-admin account from friendbot
Build contracts
cargo rustc --manifest-path=contracts/abundance/Cargo.toml --crate-type=cdylib --target=wasm32-unknown-unknown --release
    Finished release [optimized] target(s) in 0.06s
cargo rustc --manifest-path=contracts/crowdfund/Cargo.toml --crate-type=cdylib --target=wasm32-unknown-unknown --release
    Finished release [optimized] target(s) in 0.07s
Deploy the abundance token contract
Contract deployed succesfully with ID: CCY4CV3B7FJPALU4TO5OFX2OLOMCA3MITYMTKMRIWVYVCUU3CP2CH2AD
Deploy the crowdfund contract
Contract deployed succesfully with ID: CA2XC4LS7UILGDK7WFNKSS3OMVEDWHNJFTSLOHK2LKMY7XEKSOEHGVNJ
Initialize the abundance token contract
2023-07-18T04:02:16.630386Z  INFO soroban_cli::log::event: log="[Diagnostic Event] topics:[fn_call, Bytes(b1c15761f952f02e9c9bbae2df4e5b98206d889e19353228b57151529b13f423), initialize], data:[Address(Account(e1f53a705782629f0f39dad9a2ce2a7562e03c36cbd6ad189906e00dd845fdda)), 7, \"abundance\", \"ABND\"]"
2023-07-18T04:02:16.630424Z  INFO soroban_cli::log::event: log="[Diagnostic Event] contract:b1c15761f952f02e9c9bbae2df4e5b98206d889e19353228b57151529b13f423, topics:[fn_return, initialize], data:Void"

Initialize the crowdfund contract
2023-07-18T04:02:16.734812Z  INFO soroban_cli::log::event: log="[Diagnostic Event] topics:[fn_call, Bytes(35717172fd10b30d5fb15aa94b6e65483b1da92ce4b71d5a5a998fdc8a938873), initialize], data:[Address(Account(e1f53a705782629f0f39dad9a2ce2a7562e03c36cbd6ad189906e00dd845fdda)),<PHONE_NUMBER>,<PHONE_NUMBER>, Address(Contract(b1c15761f952f02e9c9bbae2df4e5b98206d889e19353228b57151529b13f423))]"
2023-07-18T04:02:16.734852Z  INFO soroban_cli::log::event: log="[Diagnostic Event] contract:35717172fd10b30d5fb15aa94b6e65483b1da92ce4b71d5a5a998fdc8a938873, topics:[fn_return, initialize], data:Void"

Done

><EMAIL_ADDRESS>postinstall
...

FE is now throwing the following
Unhandled Runtime Error
AxiosError: Request failed with status code 405

Call Stack
eval
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:492911)
XMLHttpRequest.l
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:493084)

Noting that this issue overlaps with PR #127

@Julian-dev28 , can you approve https://github.com/stellar/soroban-example-dapp/pull/127, I'll merge and should resolve this issue.

@sreuland Absolutely. I'm going to run locally and then I'll approve 👍🏽

@sreuland Do you have an idea why this errors is happening?:
 1 of 1 unhandled error

Unhandled Runtime Error
TypeError: Cannot read properties of null (reading 'length')

Call Stack
e.eval
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:308484)
l
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:300691)
Generator.eval
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:302042)
Generator.eval [as next]
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:301062)
B
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:306691)
a
.soroban/abundance-token/node_modules/soroban-client/dist/soroban-client.min.js (2:306904)

I am having the same problems

yes, to confirm seeing the same when running latest from the https://github.com/stellar/soroban-example-dapp/pull/127  for standalone:
# in one terminal
$ quickstart.sh standalone

# in second terminal
$ npm run clean
$ NETWORK=standalone npm run setup
$ npm run dev

i built with un-minified source, and it looks like getting an error on simulate transaction call to rpc server, there has been a new version of core/rpc for preview 10 as of late today, so, will try those newer versions in the quickstart here and see if changes results

thanks to @chadoh for help on troubleshooting this issue, identified new version of soroban-client, 0.9.2 helped resolve this issue, have pushed new fix commit onto the pr - https://github.com/stellar/soroban-example-dapp/pull/127
running that for standalone locally:
cargo install_soroban
npm run clean
NETWORK=standalone npm run setup
npm run dev

note, you have to fund your wallet address on friendbot for the target network first.

@sreuland its working for me!


chore(deps): update tubenhirn/semantic-release-github docker tag to v4.0.13

This PR contains the following updates:

Package
Update
Change

tubenhirn/semantic-release-github
patch
v4.0.11 -> v4.0.13

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

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


support alternate download endpoint urls

This fix is meant to issue #47
#48 synced with upstream.
Thanks @hanno-jonlay for the collaboration

@joshdholtz Could you merge this PR or #48?

Closing in favor of #48 but thanks for the PR! ❤


Clipboard image

What does the pull request do?

Fix an incorrect CF_DIB value (Avalonia.Win32\Interop\UnmanagedMethods.cs).
Adds definitions for clipboard image formats in Win32 (https://learn.microsoft.com/en-us/windows/win32/dataxchg/standard-clipboard-formats).
The ControlCatalog.ClipboardPage example adds commands for working with images on the clipboard.

In this PR there is no conversion of the received data to a common type, e.g. Avalonia.Media.Imaging.Bitmap.
The main idea is to be able to get/set an image by documented format names, and then process the data in client code depending on the format.
What is the current behavior?

For Win32, there is no way to add a DataObject with any of the documented image formats to the clipboard  (https://learn.microsoft.com/en-us/dotnet/api/system.windows.dataformats).
Getting an image is possible, but need to know the correspondence of Unknown_Format_X to the real format.
The Unknown_Format_X image can be stored using a small workaround by calling the GetFormatsAsync method before storing.
What is the updated/expected behavior with this PR?

Ability to specify clipboard formats for images that match the
https://learn.microsoft.com/en-us/dotnet/api/system.windows.dataformats?view=windowsdesktop-7.0

You can test this PR using the following package version. 11.0.999-cibuild0037897-beta. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

You can test this PR using the following package version. 11.0.999-cibuild0037979-beta. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

Hi, @maxkatz6,
I would like to know how to handle with the error checks "AvaloniaUI.Avalonia — #20230804.4 failed".
I assume that because of my code could not cause it

@viordash sorry for being slow with reviewing/merging your PRs. We are planning to do some refactoring of the way clipboard works soon, so PRs will be merged as a part of that effort.


How to Join two differences database, MySQL with PostgreSQL

Hi everyone..
I have two differences db, mysql and postgresql to create a leftjoin
the figure as below:
// db is postgresql configuration
// db_old is  mysql configuration
 db_old
        .select('visibility_custom.content_id')
        .from('fc_class')
        .leftJoin(
          'fc_class_student',
          'fc_class.id',
          'fc_class_student.fc_class_id'
        )
        .leftJoin(
          db + '.visibility_custom as visibility_custom',
          'visibility_custom.audience_id',
          '=',
          'fc_class.id'
        )
        .where('fc_class_student.student_id', newUserId)
        .orWhere('fc_class.facilitator_id', newUserId)
        .groupBy('visibility_custom.content_id')
        .then((data) => {....});

thanks for helping me (y)

Closing as knex usage questions should go to gitter or stackoverflow (which is told in issue template).


[BUG] Pagination

GIT commit hash
LTS
Minimum working example
fn main() {
     // Steps to reproduce …
     // Steps to reproduce …
}

Expected behaviour
For example: if we have 10 assets and want to paginate it by 5 assets per page -> I'll get 01234 56789. Then if we add 1 asset I expect to get (where x is a new asset) x0123 45678 9
Actual behaviour
I got x0123 56478 9 and next time I was running this test I got 01234 x5678 9
This behavior makes pagination unusable as far as I can see
Operating system
macos
LibC type and version
No response
Current environment
Docker Hub
Logs in JSON format

Log contents
Replace this text with a JSON log,
so it doesn't grow too large and has highlighting.

Who can help?
No response

I'm turning this into a feature request. Currently, Iroha returns assets sorted lexicographically present at the time of evaluating the query.

So the ledger always returns a sorted list of assets whenever you make a request (w or w/o pagination). The sorting always is lexicographical (alphabetical). That's why the pages have strange values. To clarify, let me show an example:

Alice has a list of assets: ["1", "2", "3", "4", "5", "6", "7", "8", "9"].
The client makes a request with pagination (start-index is 5 and limit aka count-of-items is 5) and receives ["1", "2", "3", "4", "5"].
Alice creates a new asset with id "10" and submits it to the ledger. Now Alice has the following list of assets: ["1", "10", "2", "3", "4", "5", "6", "7", "8", "9"] because "10" < "2" by the lexicographical sorting.
After that, the client wants to receive the next page and makes a new request with the start-index is 5 and the limit is 5 and gets ["5", "6", "7", "8", "9"] so he got "5" again what isn't OK.

I suppose the client wants to receive ["6", "7", "8", "9", "10"] so isn't possible in the current implementation.

@arndey you're forcing us to sort assets in insertion order when responding to the paginated FindAllAssets query

@arndey does this test case correctly describe the jist of this issue?

Alternatively we should have a way to specify/customize the logic of sorting since most people interested in pagination generally expect timestamp based sorting so that newest entries (or the ones updated recently) will appear either in the first of the last page

@arndey does this test case correctly describe the jist of this issue?

I don't know rust.

I got x0123 56478 9 and next time I was running this test I got 01234 x5678 9

it should be noted that x is different in these two runs


Add "more options" to repos

Should have share + open in Safari too, just like notifications

Yes! And "view owner"


fix: add Github workflow to publish e2e Docker image

On-demand Github workflow to publish to Github Packages. Docker tag is latest by default.
The docker image will eventually be listed under the Packages section of this repo: https://github.com/orgs/adobe/packages?repo_name=aio-lib-state
How Has This Been Tested?
Needs to be merged for the final test.
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:

[X] I have signed the Adobe Open Source CLA.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[X] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[X] All new and existing tests passed.

--> need to add or update the doc for changing the host to connect to (for internal testing). This will be an env var.


Implemented seek and seekSync

Taking a stab at solving https://github.com/denoland/node_shims/issues/142
Since there's no way to seek/tell the internal position (when position is null), track the position internally.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


rr: don't overwrite all of its C and CXX flags

Description of changes
These CMake flags have been present ever since the package was added in 2014. There is no documentation on why these flags should be necessary. During local testing, rr built just fine without them.
In fact, I stumbled upon this when rr from nixpkgs failed to record applications that use OpenGL, such as glxinfo or glxgears, whereas a manually built rr worked just fine. I tracked it down to these flags.
I wasn't able to determine the relevant differences between the two builds of rr.

Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

thank you!


iOS compatibility

@pawan-pk, congratulations on your initiative! One question, is there a forecast for IOS?

Tanks!

Tanks!


Add flag for TitleBar hiding

This pull request contains a change that adds a flag for hiding TitleBar in order to support fullscreen applications.

Thanks for your contribution 🚀

hello, is this flag included in 6.0rc? it seems not working after set IsTitleBarVisible="False"


(Protected)ParentRoute give 404 errors with Islands

Describe the bug
Flat routes work just fine, but using <ParentRoute> or <ProtectedParentRoute> always gives 404 errors, which is quite unfortunate.
Leptos Dependencies
Please copy and paste the Leptos dependencies and features from your Cargo.toml.
For example:
leptos = { git = "https://github.com/leptos-rs/leptos", features = ["experimental-islands"] }
leptos_axum = { git = "https://github.com/leptos-rs/leptos", optional = true }
leptos_meta = { git = "https://github.com/leptos-rs/leptos" }
leptos_router = { git = "https://github.com/leptos-rs/leptos" }

To Reproduce
Reproduction (on the hackernews axum island example): https://github.com/VincentBerthier/leptos-repro/blob/main/src/lib.rs
Expected behavior
To not get a 404…
Additional context
Nested routes (à la 0.6) do not work either since <Route> doesn’t take children.

I can't reproduce this issue with the following steps:

Clone your repo
cargo leptos serve
Navigate to /help/about (the nested route): returns 200 with the correct UI

Do you mean that just navigating to /help gives a 404?  Sorry, my bad, I’m closing this!


Question: Alpha channel of the canvas prevents rendering of two separate scenes with an OutlinePass?

In the following fiddle https://jsfiddle.net/g9bzk2y1/44/ I have two scenes: A "normal" 3D scene with a cube, and an orthographic scene which is used as a simple HUD. I use an OutlinePass to render a highlight (if the user hovers it, but this is not implemented to keep the example "simple"). The chain looks like this:

const outlineEffect = new POSTPROCESSING.OutlineEffect(hudScene, hudCamera, {
...
});
//set this value to ALPHA to see the whole scene
outlineEffect.blendMode.blendFunction = POSTPROCESSING.BlendFunction.ALPHA

outlineEffect.selectObject(hudMesh);

const renderPass = new POSTPROCESSING.RenderPass(scene, camera);
const hudRenderPass = new POSTPROCESSING.RenderPass(hudScene, hudCamera);
hudRenderPass.clear = false;
const outlinePass = new POSTPROCESSING.EffectPass(hudCamera, outlineEffect);
outlinePass.renderToScreen = true;

 composer.addPass(renderPass);
 composer.addPass(hudRenderPass);
 composer.addPass(outlinePass);

If I instantiate the WebGlRenderer with alpha = true then I only see the highlight from the last pass. If I set the BlendFunction to "ALPHA" I see everything as expected (the cube, the sphere and the highlight) and I'm wonderin why? (As a side note: Is it better to ask such questions on StackOverflow?)

Thanks for reporting this issue!
This does seem like a render texture format and/or shader bug. I'll investigate further when I get a chance.

Is it better to ask such questions on StackOverflow?

If you run into an issue that could be a potential bug, then this is the right place to report it. I also don't mind answering questions about this library.

If I instantiate the WebGlRenderer with alpha = true then I only see the highlight from the last pass.

Are you sure about this? I can see the scene even when the blend function is not set to ALPHA. The scene is brighter than it should be, though. Can you see the cube in the following example? https://jsfiddle.net/v0gcdo8f/1/
If not, what are the system specs of your test machine?
After checking the code, I found out that the OutlineEffect currently doesn't support transparent render targets. Since the effect works as intended in normal scenes where alpha is disabled, I'll treat this as a feature-request. I'm not sure when I'l be able to add this feature, but it shouldn't be too long.

No. I attached the picture of what I see.

My machine is a Dell XPS 9560 with Ubuntu 17.10, using chrome Version 70.0.3538.77 (Official Build) (64-bit). WebGlReport shows me this:

Do you need more information?
I tested it also under a windows machine with FireFox and Chrome in both browsers the cube and the sphere are rendered as expected.

If I set the blend function to alpha, I get this result:

Notice how the outline effect is only visible over the cube (top half of the sphere)

Thanks for the additional information. I think Ubuntu is rendering it correctly in this case.
Here's what I see with alpha: true and different blend functions:

SCREEN (default)
ALPHA

Hopefully this will be resolved with the changes I have in mind.

I've updated the OutlineEffect in<EMAIL_ADDRESS>Please check if the following example works properly on your Ubuntu system: https://jsfiddle.net/L3cp49bo/
I get the following output on my system (Windows 10, Chrome 73.0.3683.86):
Alpha Enabled

SCREEN (default)
ALPHA

Alpha Disabled

SCREEN (default)
ALPHA

Additive Blending
I've experimented a bit and found that it's possible to set the transparent property of a fullscreen material to true and the blending property to THREE.AdditiveBlending. This removes black halos and semi-transparent edges in some situations but may require additional ClearPass instances between effect passes to work properly. The fullscreen material of a pass can be retrieved via Pass.getFullscreenMaterial().

On my chrome / Ubuntu its rendered the same as in your screenshots. Thx for fixing this!


 revert changes

U can create a map, and save the origin bytes in the map before retransform them, then add a method to revert changes just redefine classes using the origin bytecodes.

Sounds like a cool idea but sadly that is not compatible with the InjectionClassLoader, and I want feature parity.
I'll see if I can add an API which can be used to do this easily yourself

I've implemented a rough implementation, and it seems that it can be restored at the moment. However, it cannot be run without instrumentation or without redefineClass permissions. Can this work?
my custom fork

I was just hit with the realization that this is not possible in Java. If a class has been loaded already, you can't change the class structure (add/remove method and fields).
This makes it impossible to uninject transformations since ClassTransform heavily relies on methods being added to classes, this is something I won't add.

Does this project support runtime class transforms?

I looked at your project example and this project appears to support hot conversion of Class. Then the converted Class must be able to undo the changes in the same way as redefining the Class. Suggest adding conditional detection to the  method to exclude unsupported states.

Support for injecting into loaded classes is very limited. As stated before you can't add methods and fields. Only overwriting methods is supported.
To undo the transformations the methods and fields added by ClassTransform would have to be removed again, which is not possible for already loaded classes

Thanks for your reply.
I think you can do a try-catch to determine if the revert function is supported. In the case that it is not supported, this should only throw an exception and not break or change anything in the jvm. Just like Instrumentation does - letting the user determine if it works rather than trying to be compatible with any situation.

I can probably add some api which allows you to easily do this yourself. I don't really want to fully implement this because it so specific and not fully supported.

I added all APIs required to do this and made you some example code on how you to use it here.
The methods will be in the next ClassTransform release. I also published them to the current snapshot (1.14.1-SNAPSHOT) if you want to test it out now.


how to call a generic non-static method?

Hi,
I have a method that I inflate
const obj =  ;//this Il2cpp Object
const c =  ;//this Il2cpp Class
obj.methods["Methods"].inflate(c).invoke<void>()

when I want to execute this code, I get a message
[il2cpp] l ("Methods") is not static.
how to call a generic method while having an object ?

Hi!
The problem occurs here where I create a new Il2Cpp.Method, so it loses its instance object.
I didn't implement this one yet (should be super easy) because I couldn't find a method to test.
Would you tell me app name and class name? So I can implement this real quick

Would you tell me app name and class name? So I can implement this real quick

Can I just write the class structure ? Or write to you personally somewhere?

Would you tell me app name and class name? So I can implement this real quick

app name is War After and class name SignalBus

Fixed in 0.6.7, test snippet:
Il2Cpp.perform(() => {
    const SystemString = Il2Cpp.Image.corlib.classes["System.String"];

    const AssemblyCSharp = Il2Cpp.Domain.assemblies["Assembly-CSharp-firstpass"].image;
    const SignalBus = AssemblyCSharp.classes["GameServerProtocol.Sources.SignalBus.SignalBus"];

    const signalBus = SignalBus.new();

    signalBus.methods.FireSignal.inflate(SystemString).invoke<void>(Il2Cpp.String.from("hello!"));

    console.log("Ok!");
});


Message Ordering Changes

Still not working 100% as messages in the queue are received out of order and sometimes after delays!

Still not working 100% owing to messages not being received in order etc.


”Pochidia” is listed in the drop-down menu

Description:
"Pochidia" is listed in the drop-down menu alongside its corresponding county and commune, according to the law.
Precondition:
The website is up an running.

Step 1
Type "Pochidia" in the search bar.

Expected results
The location is listed in the drop-down menu as "Comuna Pochidia, VASLUI".


Add axis permutedims

This pull request introduces a new feature to OneHotArray: the axis in which the vectors are one-hot can be changed at initialization time.
This is achieved by a new constructor which includes this new axis variable, and returns a OneHotArray wrapped by a PermutedDimsArray.
This way of implementing it does not require any code changes which may be hard to maintain and debug.
The performance degradation I've seen in testing is around 10% when using the wrapped OneHotArray, which I think is reasonable.
The alternative to this method would be to introduce a new axis variable to the struct and change many constructors and functions to get the desired behavior - which I've already done in a separate branch. However it is easier to go the easy route and let it go through field testing than go in the complex route first, which may have various downsides.
See also #35 for further discussion
PR Checklist

:ballot_box_with_check:  Tests are added
:ballot_box_with_check:  Documentation, if applicable

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.10 :tada:

Comparison is base (469b192) 96.37% compared to head (9a0e1a2) 96.47%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #36      +/-   ##
==========================================
+ Coverage   96.37%   96.47%   +0.10%
==========================================
  Files           3        4       +1
  Lines         138      142       +4
==========================================
+ Hits          133      137       +4
  Misses          5        5

Impacted Files
Coverage Δ

src/array.jl
95.31% <100.00%> (+0.23%)
:arrow_up:

... and 1 file with indirect coverage changes

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

The following is type-stable:
function ohaxis(data::AbstractArray{<:Any, N}, labels, dims::Val{D} = Val(1)) where {N, D}
   out = onehotbatch(data, labels)
   if D == 1
       return out
   else
       perm = (D, ntuple(i -> i, D - 1)..., ntuple(i -> i + D, N - D)...)
       return PermutedDimsArray(out, perm)
   end
end

We can offer the Val based method for people who need type-stability, while still offering a more user-friendly keyword interface.

This issue comes up in Base too, where cat([1], [2]; dims=3) isn't type-stable, but it also accepts dims=Val(3) if required.

I'll get around to it soon. Thanks for the suggestion! :)

@darsnack
Can I ask for your review as well?

while working on the suggestions of @mcabbott , I seem to have found errors, so I'm marking this as WIP for now. Do not merge this.


Idea: Make anchor update on scroll + Scroll to Anchor when site reload

Great, I am about to re-write this web and will include your idea. 🤗


🐛 BUG: Unable to run wrangler dev since version 3.19.0

Which Cloudflare product(s) does this pertain to?
Wrangler core
What version(s) of the tool(s) are you using?
3.26.0
What version of Node are you using?
20.11.0
What operating system and version are you using?
macOS Sonoma 14.3
Describe the Bug
Observed behavior
Since version 3.19.0 of wrangler was released we're no longer able to run wrangler dev --remote. It runs, but as soon as a page is viewed the following error is thrown:
✘ [ERROR] Error in ProxyController: Error inside ProxyWorker

   {
    name: 'Error',
    message: 'internal error',
    stack: 'Error: internal error'
  }

Expected behavior
Work as it did in version 3.18.0 and lower.
Steps to reproduce
Due to the code being internal, I cannot provide an exact example. Happy to provide any debug logs that might be useful. The error happens 100% of the time by just running wrangler dev --remote and then opening http://localhost:8787 in a browser (or pressing b).
In case it's applicable, we have these compatibility settings in wrangler.toml. In saying that though I can replicate by removing both of these.
compatibility_date = "2022-09-01"
compatibility_flags = ["url_standard"]

Potentially worth noting is that I've added a console.log in the exported fetch function to see if our worker code ever runs but it doesn't appear to (or at least the log message is never printed).
Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
I've redacted some parts that I didn't want public and replaced it with placeholder strings (e.g. <ACCOUNT>).

--- 2024-02-05T02:02:55.251Z debug
🪵  Writing logs to "/Users/lnewson/Library/Preferences/.wrangler/logs/wrangler-2024-02-05_02-02-55_173.log"
---

--- 2024-02-05T02:02:55.251Z debug
Failed to load .env file ".env": Error: ENOENT: no such file or directory, open '.env'
    at Object.openSync (node:fs:581:18)
    at Object.readFileSync (node:fs:457:35)
    at tryLoadDotEnv (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:124257:72)
    at loadDotEnv (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:124266:12)
    at /Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:162342:20
    at /Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:131131:16
    at maybeAsyncResult (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:129352:44)
    at /Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:131130:14
    at /Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:129339:22
    at Array.reduce (<anonymous>) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'open',
  path: '.env'
}
---

--- 2024-02-05T02:02:55.257Z log
 ⛅ wrangler 3.26.0
-------------------
---

--- 2024-02-05T02:02:55.260Z log
Running custom build: yarn test && yarn build
---

--- 2024-02-05T02:02:57.657Z debug
Retrieving cached values for userId from node_modules/.cache/wrangler
---

--- 2024-02-05T02:02:57.657Z debug
Metrics dispatcher: Dispatching disabled - would have sent {"type":"event","name":"run dev","properties":{"local":false,"usesTypeScript":false}}.
---

--- 2024-02-05T02:02:57.657Z debug
Failed to load .env file "/Users/lnewson/site/cloudflare/worker/.dev.vars": Error: ENOENT: no such file or directory, open '/Users/lnewson/site/cloudflare/worker/.dev.vars'
    at Object.openSync (node:fs:581:18)
    at Object.readFileSync (node:fs:457:35)
    at tryLoadDotEnv (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:124257:72)
    at loadDotEnv (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:124266:12)
    at getVarsForDev (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:166550:18)
    at getBindings (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:167559:10)
    at getBindingsAndAssetPaths (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:167515:20)
    at getDevReactElement (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:167181:40)
    at startDev (/Users/lnewson/site/cloudflare/worker/node_modules/wrangler/wrangler-dist/cli.js:167244:60)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'open',
  path: '/Users/lnewson/site/cloudflare/worker/.dev.vars'
}
---

--- 2024-02-05T02:02:57.686Z debug
-- START CF API REQUEST: GET https://api.cloudflare.com/client/v4/accounts/<ACCOUNT>/workers/subdomain/edge-preview
---

--- 2024-02-05T02:02:57.686Z debug
HEADERS: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:57.686Z debug
INIT: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:57.686Z debug
-- END CF API REQUEST
---

--- 2024-02-05T02:02:57.824Z debug
[InspectorProxyWorker] handleProxyControllerIncomingMessage {"type":"reloadStart"}
---

--- 2024-02-05T02:02:58.264Z debug
-- START CF API RESPONSE: OK 200
---

--- 2024-02-05T02:02:58.264Z debug
HEADERS: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:58.264Z debug
RESPONSE: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:58.264Z debug
-- END CF API RESPONSE
---

--- 2024-02-05T02:02:58.265Z debug
-- START EXCHANGE API REQUEST: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:58.265Z debug
-- END EXCHANGE API REQUEST
---

--- 2024-02-05T02:02:58.396Z debug
-- START EXCHANGE API RESPONSE: OK 200
---

--- 2024-02-05T02:02:58.396Z debug
HEADERS: {}
---

--- 2024-02-05T02:02:58.396Z debug
RESPONSE: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:58.396Z debug
-- END EXCHANGE API RESPONSE
---

--- 2024-02-05T02:02:58.422Z log
Total Upload: 89.31 KiB / gzip: 18.90 KiB
---

--- 2024-02-05T02:02:58.423Z debug
-- START CF API REQUEST: POST https://api.cloudflare.com/client/v4/accounts/<ACCOUNT>/workers/scripts/dev_docs-prod/edge-preview
---

--- 2024-02-05T02:02:58.423Z debug
HEADERS: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:58.423Z debug
INIT: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:58.423Z debug
-- END CF API REQUEST
---

--- 2024-02-05T02:02:59.729Z debug
-- START CF API RESPONSE: OK 200
---

--- 2024-02-05T02:02:59.730Z debug
HEADERS: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:59.730Z debug
RESPONSE: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
---

--- 2024-02-05T02:02:59.730Z debug
-- END CF API RESPONSE
---

--- 2024-02-05T02:02:59.730Z debug
Checking if domain has Access enabled: <DOMAIN>
---

--- 2024-02-05T02:02:59.730Z debug
Access switch not cached for: <DOMAIN>
---

--- 2024-02-05T02:02:59.760Z debug
Caching access switch for: <DOMAIN>
---

--- 2024-02-05T02:02:59.766Z debug
Checking if domain has Access enabled: <DOMAIN>
---

--- 2024-02-05T02:02:59.766Z debug
Access switch not cached for: <DOMAIN>
---

--- 2024-02-05T02:02:59.905Z debug
Caching access switch for: <DOMAIN>
---

--- 2024-02-05T02:02:59.915Z debug
[InspectorProxyWorker] handleProxyControllerIncomingMessage {"type":"reloadComplete","proxyData":{"userWorkerUrl":{"protocol":"https:","hostname":"<DOMAIN>","port":"443"},"userWorkerInspectorUrl":{"protocol":"wss:","hostname":"<DOMAIN>","port":"","pathname":"/cdn-cgi/workers/preview/inspector"},"userWorkerInnerUrlOverrides":{},"headers":{"cf-workers-preview-token":"AU9fF1RhfYQtv5yO0s8Ywz5HjouYhxd7PuhyNQwgEukUkOchT9TiRIL5LyFnn2UkdcwBp9hQ8adrZ9tVFFOqFQk6UhaO8xU25YiYbse7yxoizSystaE8emx1pNajdTCfQ7NCzu3cl8GGofkr2eQ1G9H89vSNfX7tNBg_iJiBa0qjLqH0JZCV8rooU1K4cjso3mLyQ1SwxK5UDbQvhYpnteM-KuXCdqSR6NlwCk8KR19v9xf0Vfcg1_Js_Xa0x92-ZdVrzmn1TjcVhZjw5HX6d9C3sOpoA2QGnDbkCYIF1OnEsamnKwpUSD4QcjQSj2dj3QlAx1n_qhUpAkT2DS3pMHYceXvAzsNJZiQ7at8w1d-MSK8sQjerNeNoMSbDJ2jt7LE_mO9RAa9gO9X8D6oN96_01yqFb7W-6354eH7DnO-1aDBRL-ITgGOh697OK15GZeXytqZmHqzi01mf9fsGtFCV7ujE1yuUlUt_nXihCHK8aJ2_3t5cohAzazc_MC7eXlQONxbZyNZo2f0qz17-RfMYSN3m2pjr4Vwfhjv1iJt6nDyKEJ_JIw1rp2zizc6-LH-HamKeaRx7Pk8RvYe-r5Di1d62X-qDSxSTYJsoeN6mvCW7tBasqyMxklgzifvgouyzg2dt0LXfarVADFktCZ1cbaQv5Dhudwa0J1RVU7WZA8gEI8HNUkTr8tD37TEFkJGulRahM8Y4qMj0epsryPo43nW-6VmroawjMJCr7m6kU85vlsN4RSfed4RkyjM_Ki32SxLFs-acVa5WDPJvTE2zcCcdC9v0rZilm5srQNSQjR7WPjUXzVTr0qXSSZeuCRD5M5Uq_SHUSPidcu3YrtYUnagKg9KjC2IxkLqFAE25rZ0J1sASTTi3idmYqqryqHLwJckQgoQP3Mr2d5WgBQPEQ4jYj3uLrw-FITJDuYFQvah0wlDeXHVv2NPYz8PPisyVWxFHZx34HIyqxx-FkBW5MWLD2_oNQbLB01q-pxxaf36zx179vTquoNKI0LIEbsErfbi5K0L6DGukAJuqazg"},"liveReload":false,"proxyLogsToController":true}}
---

--- 2024-02-05T02:02:59.916Z debug
[InspectorProxyWorker] reconnectRuntimeWebSocket
---

--- 2024-02-05T02:02:59.917Z debug
[InspectorProxyWorker] NEW RUNTIME WEBSOCKET https://<DOMAIN>/cdn-cgi/workers/preview/inspector
---

--- 2024-02-05T02:02:59.918Z debug
[InspectorProxyWorker] SEND TO DEVTOOLS {"method":"Runtime.executionContextsCleared"}
---

--- 2024-02-05T02:03:00.523Z debug
workerd/util/symbolizer.c++:96: warning: Not symbolizing stack traces because $LLVM_SYMBOLIZER is not set. To symbolize stack traces, set $LLVM_SYMBOLIZER to the location of the llvm-symbolizer binary. When running tests under bazel, use `--test_env=LLVM_SYMBOLIZER=<path>`.
workerd/jsg/util.c++:281: error: e = kj/compat/tls.c++:221: failed: TLS peer's certificate is not trusted; reason = Hostname mismatch
stack: 1038a2c83 1038a32b7 104bd033f 1038aabe8 104bfabb8 104bfb000 1039c3a9b 1039c438b 1039c5a87 1039a319c 1039a9d44 1039bff20 102b978cc 103148bdc; sentryErrorContext = jsgInternalError
---

--- 2024-02-05T02:03:00.562Z error
✘ [ERROR] Error in ProxyController: Error inside ProxyWorker

   {
    name: 'Error',
    message: 'internal error',
    stack: 'Error: internal error'
  }

---

--- 2024-02-05T02:03:00.563Z debug
=> Error contextual data: {
  config: {
    name: 'dev_docs-prod',
    script: { contents: '' },
    dev: {
      server: [Object],
      inspector: [Object],
      urlOverrides: [Object],
      liveReload: false
    }
  },
  bundle: {
    id: 0,
    entry: {
      file: '/Users/lnewson/site/cloudflare/worker/build/index.js',
      directory: '/Users/lnewson/site/cloudflare/worker',
      format: 'modules',
      moduleRoot: '/Users/lnewson/site/cloudflare/worker/build',
      name: 'dev_docs-prod'
    },
    path: '/Users/lnewson/site/cloudflare/worker/.wrangler/tmp/dev-dJD68W/index.js',
    type: 'esm',
    modules: [],
    dependencies: {
      '.wrangler/tmp/bundle-Y06h6i/checked-fetch.js': [Object],
      'build/index.js': [Object]
    },
    sourceMapPath: '.wrangler/tmp/dev-dJD68W/index.js.map',
    sourceMapMetadata: {
      tmpDir: '/Users/lnewson/site/cloudflare/worker/.wrangler/tmp/bundle-Y06h6i',
      entryDirectory: '/Users/lnewson/site/cloudflare/worker'
    }
  }
}
---

--- 2024-02-05T02:03:00.673Z debug
[InspectorProxyWorker] RUNTIME WEBSOCKET OPENED
---

--- 2024-02-05T02:03:00.674Z debug
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Runtime.enable","id":100000001}
---

--- 2024-02-05T02:03:00.674Z debug
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Debugger.enable","id":100000002}
---

--- 2024-02-05T02:03:00.674Z debug
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Network.enable","id":100000003}
---

--- 2024-02-05T02:03:00.704Z debug
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE {
  method: 'Runtime.executionContextCreated',
  params: {
    context: {
      id: 1,
      origin: '',
      name: 'Worker',
      uniqueId: '-6374973205721458888.-7824425677934341909'
    }
  }
}
---

--- 2024-02-05T02:03:00.704Z debug
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE { id: 100000001, result: {} }
---

--- 2024-02-05T02:03:00.705Z debug
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE {
  method: 'Debugger.scriptParsed',
  params: {
    scriptId: '3',
    url: 'file:///Users/lnewson/site/cloudflare/worker/.wrangler/tmp/dev-dJD68W/index.js',
    startLine: 0,
    startColumn: 0,
    endLine: 2667,
    endColumn: 101,
    executionContextId: 1,
    hash: '8e99dbf3c9140b0e379af69d701de87f7741316c74b40a77c63d7831277d7288',
    isLiveEdit: false,
    sourceMapURL: 'index.js.map',
    hasSourceURL: true,
    isModule: true,
    length: 91451,
    scriptLanguage: 'JavaScript',
    embedderName: 'index.js'
  }
}
---

--- 2024-02-05T02:03:00.705Z debug
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE {
  id: 100000002,
  result: { debuggerId: '-6861462484141182344.8585576275922833579' }
}
---

--- 2024-02-05T02:03:00.706Z debug
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE { id: 100000003, method: 'Network.enable', result: {} }
---

--- 2024-02-05T02:03:03.066Z debug
Not Implemented Error: ConfigController#teardown
---

--- 2024-02-05T02:03:03.066Z debug
Not Implemented Error: BundlerController#teardown
---

--- 2024-02-05T02:03:03.066Z debug
Not Implemented Error: LocalRuntimeController#teardown
---

--- 2024-02-05T02:03:03.066Z debug
Not Implemented Error: RemoteRuntimeController#teardown
---

--- 2024-02-05T02:03:03.066Z debug
ProxyController teardown
---

Here's an extract of some extra logs by adding --log-level debug of when the error occurs:
[wrangler-ProxyWorker:inf] GET /cdn-cgi/ProxyWorker/pause 204 No Content (0ms)
-- START CF API RESPONSE: OK 200
HEADERS: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
RESPONSE: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
-- END CF API RESPONSE
-- START EXCHANGE API REQUEST: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
-- END EXCHANGE API REQUEST
-- START EXCHANGE API RESPONSE: OK 200
HEADERS: {}
RESPONSE: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
-- END EXCHANGE API RESPONSE
Total Upload: 89.31 KiB / gzip: 18.90 KiB
-- START CF API REQUEST: POST https://api.cloudflare.com/client/v4/accounts/<ACCOUNT>/workers/scripts/dev_docs-prod/edge-preview
HEADERS: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
INIT: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
-- END CF API REQUEST
-- START CF API RESPONSE: OK 200
HEADERS: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
RESPONSE: omitted; set WRANGLER_LOG_SANITIZE=false to include sanitized data
-- END CF API RESPONSE
Checking if domain has Access enabled: <DOMAIN>
Access switch not cached for: <DOMAIN>
Caching access switch for: <DOMAIN>
Checking if domain has Access enabled: <DOMAIN>
Access switch not cached for: <DOMAIN>
Caching access switch for: <DOMAIN>
[InspectorProxyWorker] handleProxyControllerIncomingMessage {"type":"reloadComplete","proxyData":{"userWorkerUrl":{"protocol":"https:","hostname":"<DOMAIN>","port":"443"},"userWorkerInspectorUrl":{"protocol":"wss:","hostname":"<DOMAIN>","port":"","pathname":"/cdn-cgi/workers/preview/inspector"},"userWorkerInnerUrlOverrides":{},"headers":{"cf-workers-preview-token":"<TOKEN>"},"liveReload":false,"proxyLogsToController":true}}
[InspectorProxyWorker] reconnectRuntimeWebSocket
[InspectorProxyWorker] NEW RUNTIME WEBSOCKET https://<DOMAIN>/cdn-cgi/workers/preview/inspector
[InspectorProxyWorker] SEND TO DEVTOOLS {"method":"Runtime.executionContextsCleared"}
[wrangler-ProxyWorker:inf] GET /cdn-cgi/ProxyWorker/play 204 No Content (1ms)
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Runtime.enable","id":100000001}
[InspectorProxyWorker] RUNTIME WEBSOCKET OPENED
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Debugger.enable","id":100000002}
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Network.enable","id":100000003}
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE {
  method: 'Runtime.executionContextCreated',
  params: {
    context: {
      id: 1,
      origin: '',
      name: 'Worker',
      uniqueId: '<UNIQUE_ID>'
    }
  }
}
[InspectorProxyWorker] reconnectRuntimeWebSocket
[InspectorProxyWorker] NEW RUNTIME WEBSOCKET https://<DOMAIN>/cdn-cgi/workers/preview/inspector
[InspectorProxyWorker] SEND TO DEVTOOLS {"method":"Runtime.executionContextsCleared"}
[wrangler-ProxyWorker:inf] GET /cdn-cgi/ProxyWorker/play 204 No Content (1ms)
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Runtime.enable","id":100000001}
[InspectorProxyWorker] RUNTIME WEBSOCKET OPENED
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Debugger.enable","id":100000002}
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Network.enable","id":100000003}
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE {
  method: 'Runtime.executionContextCreated',
  params: {
    context: {
      id: 1,
      origin: '',
      name: 'Worker',
      uniqueId: '-9162096442528856549.1803397986076218078'
    }
  }
}
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE { id: 100000001, result: {} }
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE {
  method: 'Debugger.scriptParsed',
  params: {
    scriptId: '3',
    url: 'file:///Users/lnewson/site/cloudflare/worker/.wrangler/tmp/dev-WWcJsf/index.js',
    startLine: 0,
    startColumn: 0,
    endLine: 2667,
    endColumn: 101,
    executionContextId: 1,
    hash: '17ff3c2389e969cf0a7aa2fb10ad5bab2e5f24f34f6a8b1ea17be9ecaf52b816',
    isLiveEdit: false,
    sourceMapURL: 'index.js.map',
    hasSourceURL: true,
    isModule: true,
    length: 91451,
    scriptLanguage: 'JavaScript',
    embedderName: 'index.js'
  }
}
[InspectorProxyWorker] RUNTIME INCOMING MESSAGE {
  id: 100000002,
  result: { debuggerId: '7465433172647803524.3059957525368977207' }
}

[InspectorProxyWorker] RUNTIME INCOMING MESSAGE { id: 100000003, method: 'Network.enable', result: {} }
[InspectorProxyWorker] SEND TO RUNTIME {"method":"Runtime.getIsolateId","id":100000004}
workerd/util/symbolizer.c++:96: warning: Not symbolizing stack traces because $LLVM_SYMBOLIZER is not set. To symbolize stack traces, set $LLVM_SYMBOLIZER to the location of the llvm-symbolizer binary. When running tests under bazel, use `--test_env=LLVM_SYMBOLIZER=<path>`.
workerd/jsg/util.c++:281: error: e = kj/compat/tls.c++:221: failed: TLS peer's certificate is not trusted; reason = Hostname mismatch
stack: 100f96c83 100f972b7 1022c433f 100f9ebe8 1022eebb8 1022ef000 1010b7a9b 1010b838b 1010b9a87 10109719c 10109dd44 1010b3f20 10028b8cc 10083cbdc; sentryErrorContext = jsgInternalError
workerd/io/worker.c++:1764: info: uncaught exception; source = Uncaught (in promise); exception = Error: internal error
workerd/io/io-context.c++:359: info: uncaught exception; exception = workerd/jsg/_virtual_includes/jsg/workerd/jsg/value.h:1334: failed: jsg.Error: internal error
stack: 1008bd45c 1008be23b 1022c433f 10078df1c 10078e4dc
workerd/io/worker.c++:1764: info: uncaught exception; source = Uncaught (in promise); exception = Error: internal error
workerd/io/io-context.c++:359: info: uncaught exception; exception = workerd/jsg/_virtual_includes/jsg/workerd/jsg/value.h:1334: failed: jsg.Error: internal error
stack: 1008bd45c 1008be23b 1022c433f 10078df1c 10078e4dc
✘ [ERROR] Error in ProxyController: Error inside ProxyWorker

   {
    name: 'Error',
    message: 'internal error',
    stack: 'Error: internal error'
  }

@petebacondarwin the prerelease from #4562 made no difference, the error still occurs 100% of the time whenever trying to view any page. I don't believe it is the same, as that talks about it occurring with DO's and happens when reloading. In this case we cannot even get a page to ever render it always just shows the internal error.
To add some more details, we don't have anything complex, it's just a pretty simple worker that fetches HTML pages from an Amazon S3 bucket.
Console output for reference:
$ npx https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/7766885793/npm-package-wrangler-4867 dev --remote
Need to install the following packages:
https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/7766885793/npm-package-wrangler-4867
Ok to proceed? (y) y
npm WARN deprecated<EMAIL_ADDRESS>This package has been deprecated and is no longer maintained. Please use @rollup/plugin-inject.
npm WARN deprecated<EMAIL_ADDRESS>Please use @jridgewell/sourcemap-codec instead
 ⛅ wrangler 0.0.0-fd900883
---------------------------
Running custom build: yarn build
yarn run v1.22.21
$ rollup -c rollup.config.js

src/main.ts → ./build/index.js...
created ./build/index.js in 497ms
✨  Done in 0.91s.
[wrangler:inf] Ready on http://localhost:8787
Total Upload: 89.31 KiB / gzip: 18.90 KiB
✘ [ERROR] Error in ProxyController: Error inside ProxyWorker

   {
    name: 'Error',
    message: 'internal error',
    stack: 'Error: internal error'
  }

OK let's reopen this issue. It would be great if you were able to put together a small reproduction that we could debug. It will be quite hard to help without being able to reproduce it locally.

@petebacondarwin I think I worked out how to replicate this, as I was having a lot of trouble replicating with a fresh setup. Even copying our worker code across to a new worker setup worked fine. However, one interesting thing about our setup is the worker name is dev_docs-prod. As soon as I use any name in wrangler.toml (even if the worker doesn't exist) that includes an underscore then I can reproduce this issue. It's also impossible, as far as I can tell, to create a worker nowadays with an underscore in the name.
For example, here was my worker and my wrangler.toml where I could reproduce using wrangler dev --remote and then opening the browser:
Worker (index.js):
export default {
  async fetch(request, env, ctx) {
    return new Response('Hello World!');
  },
};

wrangler.toml
name = "test_worker"
main = "./index.js"

account_id = "<ACCOUNT_ID>"
workers_dev = false

compatibility_date = "2022-09-01"
compatibility_flags = ["url_standard"]

Hmm. This is strange. I just ran wrangler dev --remote and wrangler deploy with a worker that has
name = "worker_app"

And it appears to be fine. I even had the same compat date and flags and workers_dev set to false.

What do you get when you try to deploy the worker that you have above? Can you share the debug logs?

Also are you able to debug and deploy workers that do not have underscores?

I wonder if there is something broken with your zone?

So I created a brand new account on Cloudflare to make sure it's not our zone/account (as I can replicate on both our prod and test accounts). I was able to replicate the issue there as well. Here's the full steps I took:

(Browser) Create new Cloudflare account and verify email
(Terminal) Run npm create cloudflare@latest and answer as per this screenshot:

(Terminal) Change directory: cd test-worker
(Terminal) Open wrangler.toml and rename the worker to test_worker.
(Terminal) Deploy the worker npx wrangler deploy.
(Terminal) Run wrangler dev remote npx wrangler dev --remote.
(Terminal) Press b to open a browser and see the error occur in the terminal.

[/tmp/test-worker] is 📦 v0.0.0 ➜ npx wrangler deploy
 ⛅ wrangler 3.30.1
-------------------
Total Upload: 0.19 KiB / gzip: 0.16 KiB
Uploaded test_worker (1.33 sec)
Published test_worker (4.05 sec)
  https://test_worker.izack3333.workers.dev
Current Deployment ID: ba47e59b-42dc-4f3e-960a-37315b0e12f4
[/tmp/test-worker] is 📦 v0.0.0 ➜ which wrangler
/opt/homebrew/bin/wrangler
[/tmp/test-worker] is 📦 v0.0.0 ➜ npx wrangler dev --remote
 ⛅ wrangler 3.30.1
-------------------
[wrangler:inf] Ready on http://localhost:8787
Total Upload: 5.67 KiB / gzip: 1.73 KiB
✘ [ERROR] Error in ProxyController: Error inside ProxyWorker

   {
    name: 'Error',
    message: 'internal error',
    stack: 'Error: internal error'
  }

Re creating a worker with with an underscore in the name, it seems using deploy will create one (I did not expect that). Trying to create it via the UI or terminal from the start does not appear to work though:

@lnewson - Thank you so much for putting the above together. I really appreciate the help here.
😢  -  I just followed the steps above (except for creating a new account) and cannot recreate the error!
➜  temp npm create cloudflare@latest
Need to install the following packages:
<EMAIL_ADDRESS>Ok to proceed? (y)

using create-cloudflare version 2.13.0

╭ Create an application with Cloudflare Step 1 of 3
│
├ In which directory do you want to create your application?
│ dir ./test-worker
│
├ What type of application do you want to create?
│ type "Hello World" Worker
│
├ Do you want to use TypeScript?
│ no typescript
│
├ Copying template files
│ files copied to project directory
│
├ Updating name in `package.json`
│ updated `package.json`
│
├ Installing dependencies
│ installed via `npm install`
│
╰ Application created

╭ Configuring your application for Cloudflare Step 2 of 3
│
├ Retrieving current workerd compatibility date
│ compatibility date 2024-02-23
│
├ Do you want to use git for version control?
│ no git
│
╰ Application configured

╭ Deploy with Cloudflare Step 3 of 3
│
├ Do you want to deploy your application?
│ no deploy via `npm run deploy`
│
├  APPLICATION CREATED  Deploy your application with npm run deploy
│
│ Navigate to the new directory cd test-worker
│ Run the development server npm run start
│ Deploy your application npm run deploy
│ Read the documentation https://developers.cloudflare.com/workers
│ Stuck? Join us at https://discord.gg/cloudflaredev
│
╰ See you again soon!

➜  temp cd test-worker
➜  test-worker code .
➜  test-worker npx wrangler deploy
 ⛅ wrangler 3.30.1
 -------------------
Total Upload: 0.19 KiB / gzip: 0.16 KiB
Uploaded test_worker (3.66 sec)
Published test_worker (5.63 sec)
  https://test_worker.petebd.workers.dev
Current Deployment ID: a63eef52-e766-49bc-91b3-b59fbddcf5ea

➜  test-worker npx wrangler dev --remote
 ⛅ wrangler 3.30.1
-------------------
[wrangler:inf] Ready on http://localhost:8787
Total Upload: 5.68 KiB / gzip: 1.75 KiB
[wrangler:inf] GET / 200 OK (108ms)
[wrangler:inf] GET /favicon.ico 200 OK (50ms)
╭──────────────────────────────────────────────────────────────────────────────────────────────────╮
│ [b] open a browser, [d] open Devtools, [l] turn on local mode, [c] clear console, [x] to exit
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯

Hmm, OK so I created a brand new account and now I see:
➜  test-worker npx wrangler dev --remote
 ⛅ wrangler 3.30.1
-------------------
[wrangler:inf] Ready on http://localhost:8787
✘ [ERROR] Could not create remote preview session on your account.

But equally I see that the workers.dev domain is still initialising...

And once that completed (the initialization), it is working fine once again for me...

Looking back through your logs above I see:
workerd/jsg/util.c++:281: error: e = kj/compat/tls.c++:221: failed: TLS peer's certificate is not trusted; reason = Hostname mismatch

I wonder if this is related?

Is there any chance you have a custom SSL certificate chain setup somehow?

@petebacondarwin thanks for looking into this, it's a strange one. I've asked someone else to attempt to reproduce given these steps but they get the same error as me. I also tested with my personal macbook (running Sonoma 14.3.1) which doesn't have the same env as my work machine and still get the same error. I even tested using nix-shell in a pure env to try to reduce environmental factors (nix-shell --pure -p nodejs yarn).
As a test to double check, if I swap to redoing the steps without the rename to use the underscore then it all works as expected. If it was an SSL cert issue I'd expect it to fail regardless of the worker name 🤷
Note: In case it matters, my work macbook is ARM based and my personal one is Intel based.

@petebacondarwin if it helps to track down the issue, I found https://github.com/cloudflare/workers-sdk/issues/3264 which seemed to be similar to the error mentioned. If I replicate that in a Node REPL then I get the same error:
[/tmp/test-worker] is 📦 v0.0.0 ➜ node
Welcome to Node.js v20.11.1.
Type ".help" for more information.
> const { Miniflare } = require('miniflare')
undefined
>   const mf = new Miniflare({
>   mf = new Miniflare({
...     modules: true,
...     script: `export default {
...       fetch() {
...         return fetch("https://test_worker.izack3333.workers.dev/");
...       }
...     }`,
...   });
Miniflare { dispatchFetch: [AsyncFunction: dispatchFetch] }
>   res = await mf.dispatchFetch("http://localhost");
workerd/util/symbolizer.c++:96: warning: Not symbolizing stack traces because $LLVM_SYMBOLIZER is not set. To symbolize stack traces, set $LLVM_SYMBOLIZER to the location of the llvm-symbolizer binary. When running tests under bazel, use `--test_env=LLVM_SYMBOLIZER=<path>`.
workerd/jsg/util.c++:281: error: e = kj/compat/tls.c++:221: failed: TLS peer's certificate is not trusted; reason = Hostname mismatch
stack: 1035f818b 1035f87bf 104ab40ff 1035fffd4 104adecec 104adf134 10371ac7f 10371b6df 10371d0b7 1036fa414 103700fc0 1037170f0 10288f4d4 102e5bf58; sentryErrorContext = jsgInternalError
Response {
  [Symbol(realm)]: { settingsObject: {} },
  [Symbol(state)]: {
    aborted: false,
    rangeRequested: false,
    timingAllowPassed: false,
    requestIncludesCredentials: false,
    type: 'default',
    status: 500,
    timingInfo: null,
    cacheState: '',
    statusText: 'Internal Server Error',
    headersList: HeadersList {
      cookies: null,
      [Symbol(headers map)]: [Map],
      [Symbol(headers map sorted)]: null
    },
    urlList: [],
    body: { stream: undefined, source: null, length: null }
  },
  [Symbol(headers)]: HeadersList {
    cookies: null,
    [Symbol(headers map)]: Map(2) { 'content-length' => [Object], 'content-type' => [Object] },
    [Symbol(headers map sorted)]: null
  },
  [Symbol(kWebSocket)]: null
}
> res.ok
false

whereas if I just change the fetch URL to the hyphen version instead of the underscore version it works as expected:
> const { Miniflare } = require('miniflare')
undefined
>   mf = new Miniflare({
...     modules: true,
...     script: `export default {
...       fetch() {
...         return fetch("https://test-worker.izack3333.workers.dev/");
...       }
...     }`,
...   });
Miniflare { dispatchFetch: [AsyncFunction: dispatchFetch] }
>   res = await mf.dispatchFetch("http://localhost");
Response {
  [Symbol(realm)]: { settingsObject: {} },
  [Symbol(state)]: {
    aborted: false,
    rangeRequested: false,
    timingAllowPassed: false,
    requestIncludesCredentials: false,
    type: 'default',
    status: 200,
    timingInfo: null,
    cacheState: '',
    statusText: 'OK',
    headersList: HeadersList {
      cookies: null,
      [Symbol(headers map)]: [Map],
      [Symbol(headers map sorted)]: null
    },
    urlList: [],
    body: { stream: undefined, source: null, length: null }
  },
  [Symbol(headers)]: HeadersList {
    cookies: null,
    [Symbol(headers map)]: Map(8) {
      'alt-svc' => [Object],
      'cf-ray' => [Object],
      'content-length' => [Object],
      'content-type' => [Object],
      'date' => [Object],
      'nel' => [Object],
      'report-to' => [Object],
      'server' => [Object]
    },
    [Symbol(headers map sorted)]: null
  },
  [Symbol(kWebSocket)]: null
}
> res.ok
true

I should also add if I do the fetch directly from the Node REPL it works:
[/tmp/test-worker] is 📦 v0.0.0 ➜ node
Welcome to Node.js v20.11.1.
Type ".help" for more information.
> res = await fetch("https://test_worker.izack3333.workers.dev/")
Response {
  [Symbol(realm)]: null,
  [Symbol(state)]: Proxy [
    {
      aborted: false,
      rangeRequested: false,
      timingAllowPassed: true,
      requestIncludesCredentials: true,
      type: 'default',
      status: 200,
      timingInfo: [Object],
      cacheState: '',
      statusText: 'OK',
      headersList: [HeadersList],
      urlList: [Array],
      body: [Object]
    },
    { get: [Function: get], set: [Function: set] }
  ],
  [Symbol(headers)]: HeadersList {
    cookies: null,
    [Symbol(headers map)]: Map(10) {
      'date' => [Object],
      'content-type' => [Object],
      'content-length' => [Object],
      'connection' => [Object],
      'report-to' => [Object],
      'nel' => [Object],
      'vary' => [Object],
      'server' => [Object],
      'cf-ray' => [Object],
      'alt-svc' => [Object]
    },
    [Symbol(headers map sorted)]: null
  }
}
> res.ok
true

Yeah, I just can't reproduce that error. I am running a Mac M1, with the same OS version as you, and same node etc...

I wonder if this is related?
https://www.digicert.com/kb/ssl-support/underscores-not-allowed-in-fqdns.htm

And I am not able to reproduce because "I" am on an unusual network setup (i.e. Cloudflare's)?

Maybe? I was also wondering if it was location based maybe (I'm in Australia). As an extra test, I also tried to replicate using a docker container (node:21) with an API token instead but wrangler dev --remote appears to work as expected there. What's interesting though, is if I try with the miniflare example above I do get the TLS error still.
Unrelated to the above, but as it does seem to be env specific, as a long shot I tried using node via NVM instead of homebrew, but the error still occurs. If it helps with env setup, here's more details on what I have installed via homebrew:
[/tmp/test-worker] is 📦 v0.0.0 ➜ node -e 'console.log(process.versions)'
{
  node: '20.11.1',
  acorn: '8.11.2',
  ada: '2.7.4',
  ares: '1.26.0',
  base64: '0.5.1',
  brotli: '1.1.0',
  cjs_module_lexer: '1.2.2',
  cldr: '44.1',
  icu: '74.2',
  llhttp: '8.1.1',
  modules: '115',
  napi: '9',
  nghttp2: '1.59.0',
  openssl: '3.2.1',
  simdutf: '4.0.4',
  tz: '2023c',
  undici: '5.28.3',
  unicode: '15.1',
  uv: '1.48.0',
  uvwasi: '0.0.19',
  v8: '<IP_ADDRESS>-node.17',
  zlib: '<IP_ADDRESS>-motley-5daffc7'
}
[/tmp/test-worker] is 📦 v0.0.0 ➜ openssl version
OpenSSL 3.2.1 30 Jan 2024 (Library: OpenSSL 3.2.1 30 Jan 2024)

I note these difference in my output for that command:
  nghttp2: '1.58.0',
  nghttp3: '0.7.0',
  ngtcp2: '0.8.1',
  openssl: '3.0.12+quic',

I wonder if this is related?
https://www.digicert.com/kb/ssl-support/underscores-not-allowed-in-fqdns.htm

So I think you might be right here. I just don't know why it's not failing all the time though (is there some branch whereby the following doesn't run?).
Looking at what the workerd code does quickly, as best as I can atm, it uses capnproto which uses OpenSSL to verify the connection: https://github.com/capnproto/capnproto/blob/64802802df1d7780625eeb07b71d249fe49fb68d/c%2B%2B/src/kj/compat/tls.c%2B%2B#L218
Now, if I use the openssl CLI to verify the hostname I get a similar error:
openssl s_client -connect test_worker.izack3333.workers.dev:443 -verify_hostname test_worker.izack3333.workers.dev
...
---
SSL handshake has read 4476 bytes and written 421 bytes
Verification error: hostname mismatch

whereas when I use the hyphen version:
openssl s_client -connect test-worker.izack3333.workers.dev:443 -verify_hostname test-worker.izack3333.workers.dev
...
---
SSL handshake has read 4476 bytes and written 421 bytes
Verification: OK
Verified peername: *.izack3333.workers.dev

This fits on my side too... We use Cloudflare WARP to secure our Internet connection. When this is on, running the command from above I see:
Certificate chain
 0 s:CN=test_worker.izack3333.workers.dev
   i:C=US, ST=California, L=San Francisco, O=Cloudflare, Inc, CN=Cloudflare Corporate Zero Trust
   a:PKEY: id-ecPublicKey, 384 (bit); sigalg: ecdsa-with-SHA256
   v:NotBefore: Nov  2 13:42:16 2023 GMT; NotAfter: Aug 23 21:10:40 2024 GMT
 1 s:C=US, ST=California, L=San Francisco, O=Cloudflare, Inc, CN=Cloudflare Corporate Zero Trust
   i:C=US, ST=California, L=San Francisco, O=Cloudflare, Inc, CN=Cloudflare Corporate Zero Trust
   a:PKEY: id-ecPublicKey, 521 (bit); sigalg: ecdsa-with-SHA512
   v:NotBefore: Nov  2 13:42:16 2023 GMT; NotAfter: Oct 30 13:42:16 2033 GMT
...
SSL handshake has read 1694 bytes and written 421 bytes
Verification: OK
Verified peername: test_worker.izack3333.workers.dev

And when I turn it off:
Certificate chain
 0 s:CN=izack3333.workers.dev
   i:C=US, O=Let's Encrypt, CN=E1
   a:PKEY: id-ecPublicKey, 256 (bit); sigalg: ecdsa-with-SHA384
   v:NotBefore: Mar  3 22:55:43 2024 GMT; NotAfter: Jun  1 22:55:42 2024 GMT
 1 s:C=US, O=Let's Encrypt, CN=E1
   i:C=US, O=Internet Security Research Group, CN=ISRG Root X2
   a:PKEY: id-ecPublicKey, 384 (bit); sigalg: ecdsa-with-SHA384
   v:NotBefore: Sep  4 00:00:00 2020 GMT; NotAfter: Sep 15 16:00:00 2025 GMT
 2 s:C=US, O=Internet Security Research Group, CN=ISRG Root X2
   i:C=US, O=Internet Security Research Group, CN=ISRG Root X1
   a:PKEY: id-ecPublicKey, 384 (bit); sigalg: RSA-SHA256
   v:NotBefore: Sep  4 00:00:00 2020 GMT; NotAfter: Sep 15 16:00:00 2025 GMT
 3 s:C=US, O=Internet Security Research Group, CN=ISRG Root X1
   i:O=Digital Signature Trust Co., CN=DST Root CA X3
   a:PKEY: rsaEncryption, 4096 (bit); sigalg: RSA-SHA256
   v:NotBefore: Jan 20 19:14:03 2021 GMT; NotAfter: Sep 30 18:14:03 2024 GMT
...
SSL handshake has read 4476 bytes and written 421 bytes
Verification error: hostname mismatch

So I think that Cloudflare's SSL providers are more lenient?

This seems to have come up before: https://community.cloudflare.com/t/cant-put-underscore-in-workers-custom-domain/483048

And I even mention it here!  https://github.com/cloudflare/workers-sdk/issues/833#issuecomment-1127496133

So given our investigations, I think that this is basically working as expected(?)
I guess the follow ups could be:

document this behaviour
add validation to Wrangler to prevent underscores in Worker names

Sorry has been away! Yeah that sounds about right, thanks. The 3.19.0 release is still somewhat of a breaking change for some edge case users such as myself, but we'll have to live with using 3.18.0 until we can safely replace the worker name to remove the underscore 👍

Phew, I also hit this issue. Suddenly started facing an error with wrangler dev with --remote (ie turn off local mode). Any POST to the worker results in:
503 Service Unavailable. Your worker restarted mid-request. Please try sending the request again. Only GET or HEAD requests are retried automatically.
Any browser open results in
✘ [ERROR] Error in ProxyController: Error inside ProxyWorker

   {
    name: 'Error',
    message: 'internal error',
    stack: 'Error: internal error'
  }

Whereas everything is just fine and working as expected in local.
This was a worker than has been extensively tested with --remote earlier. And sometime in between the last testing to now, Ive upgraded wrangler to 3.29, and prolly I was < 3.18 earlier.
Now I understand it may be due to my worker name which is indeed using (_).
Question - What is the impact of changing the underscore to dash - thats essentially a renaming of the worker - and deploying? Will it create a NEW worker on a new path, or will it seamlessly replace the earlier one and everything continues working as before?

If you rename the worker by simply renaming it in wrangler.toml it will create a new Worker, leaving the old one behind.
Instead you can rename the Worker in the CF dashboard.
I had a worker called test_worker, which I managed to create using Wrangler (the CF dashboard does not allow this).
I logged in the dashboard, clicked on the Worker -> Manage -> Rename Worker.
This allowed me to rename the Worker (the CF dashboard would not allow me to put an underscore in the name).
Note that the workers.dev subdomain will change accordingly, in case you rely upon this.

Note the warning that is given:

Now I would need to go and update the wrangler.toml with the new name so that next time I deploy from Wrangler it does not recreate the old Worker with the underscore in its name.

Thank you for the detailed reply.

If you rename the worker by simply renaming it in wrangler.toml it will create a new Worker, leaving the old one behind.

For future reference, there is no data loss in this method right? Since the bindings remain the same. Its just that the new worker is on a new route - ALL else remains the same. I just have to switch my custom route to the new worker, and I'm done.


fix margin vertical shorthand

assuming this a typo, and should be mv not my

Current dependencies on/for this PR:

master

PR #1339   👈

This comment was auto-generated by Graphite.

Given that mx also exists, I'm sure it's intentional

y in my means y axis just like x in mx

that makes sense! Curious if adding mv and mh would make sense?

that makes sense! Curious if adding mv and mh would make sense?

then need to have HStack instead of XStack and so on

Ty that makes sense. Closing
Get Outlook for iOShttps://aka.ms/o0ukef

From: Ehsan sarshar @.>
Sent: Monday, June 26, 2023 8:36:18 PM
To: tamagui/tamagui @.>
Cc: benjamin @.>; Author @.>
Subject: Re: [tamagui/tamagui] fix margin vertical shorthand (PR #1339)
that makes sense! Curious if adding mv and mh would make sense?
then need to have HStack instead of XStack and so on
—
Reply to this email directly, view it on GitHubhttps://github.com/tamagui/tamagui/pull/1339#issuecomment-1608531240, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AATDCI7MOAEEZUUGMWZDMF3XNITIFANCNFSM6AAAAAAZUQF2GM.
You are receiving this because you authored the thread.Message ID: @.***>


⚠ Processors has degraded performance

In 2117503, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 116 ms

Resolved: Processors performance has improved in d343c55.


I have the following test code. It compiles and runs but my zipkin server does not capture anything.
int main(int argc, char **argv)
{
  zipkin_http_conf_t conf = zipkin_http_conf_new("http://localhost:9411/api/v1/spans");
  zipkin_collector_t collector = zipkin_http_collector_new(conf);
  zipkin_tracer_t tracer = zipkin_tracer_new(collector);

  zipkin_span_t span = zipkin_span_new(tracer, "encode", NULL);
  for (int i=3; i>0; --i) {
    std::cout << i << std::endl;
    std::this_thread::sleep_for (std::chrono::seconds(1));
  }
  zipkin_span_submit(span);
  return 0;
}

I have zipkin server running as docker run -d -p 9411:9411 openzipkin/zipkin
Thanks.

Most of collector will cache the submitted spans in a local queue for better performance, it means when you exit your program, you may need wait a while for those pending messages with zipkin_collector_shutdown
void zipkin_collector_shutdown(zipkin_collector_t collector, size_t timeout_ms);

You could check simple_proxy example for more detail.
Anyway, I will update the document for this later.

@cli99 did this work for you? @flier I get this error sent to standard out when I add the shutdown line you suggested from simple_proxy to the example code above:
W0721 15:41:31.229748 11480 HttpCollector.cpp:124] fail to compress data, err=0, msg=
Without the shutdown line, I also can not see any spans reported in the zipkin server, and with the line, I still cannot see any lines but I also get the shutdown error logged.
Sorry to bug you again but do you have any suggestions?

Update: on the /metrics endpoint of the server I see that it is getting traffic, but it is indeed not displaying on the / endpoint of the UI as @cli99 reports.

OK I fixed the above example from @cli99. You must give the span a service name for it to appear in the UI via the zipkin_span_annotate call.


Does not prebuilt_cxx_library.static_lib support $(location //:target)？

When using prebuilt_cxx_libary, it is OK if the member static_lib is set to a relative path.
However, when I use $(location //:target) buck2 reports the following error
I asked if prebuilt_cxx_libary.static_lib supports $(location //:target), just like prebuilt_cxx_libary.exported_linker_flags supports it. Thanks!
prebuilt_cxx_libary(
   exported_linker_flags = [
      "-L$(location //:ext-link)/local/lib",
   ],
   static_lib = '$(location //:ext-link)/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a',
 )

Caused by:
    0: Error looking up configured node root//app/gps:seascape_main (prelude//platforms:default#524f8da68ea2a374)
    1: Error looking up configured node root//:pre_ext_headers (prelude//platforms:default#524f8da68ea2a374)
    2: looking up unconfigured target node `root//:pre_ext_headers`
    3: Error loading targets in package `root//` for target `root//:pre_ext_headers`
    4: Error evaluating build file: `root//:BUCK`
    5: Traceback (most recent call last):
         * BUCK:16, in <module>
             prebuilt_cxx_library(
         * prelude/native.bzl:234, in _prebuilt_cxx_library_macro_stub
             __rules__["prebuilt_cxx_library"](
       error: Error coercing attribute `static_lib` of `root//:pre_ext_headers`
          --> prelude/native.bzl:234:5
           |
       234 |       __rules__["prebuilt_cxx_library"](
           |  _____^
       235 | |         exported_preprocessor_flags = _concat(
       236 | |             exported_preprocessor_flags,
       237 | |             _versioned_param_to_select(versioned_exported_preprocessor_flags),
       238 | |         ),
       239 | |         exported_lang_preprocessor_flags = _concat(
       240 | |             exported_lang_preprocessor_flags,
       241 | |             _versioned_param_to_select(versioned_exported_lang_preprocessor_flags),
       242 | |         ),
       243 | |         exported_platform_preprocessor_flags = _concat(
       244 | |             exported_platform_preprocessor_flags,
       245 | |             _versioned_param_to_select(versioned_exported_platform_preprocessor_flags),
       246 | |         ),
       247 | |         exported_lang_platform_preprocessor_flags = _concat(
       248 | |             exported_lang_platform_preprocessor_flags,
       249 | |             _versioned_param_to_select(versioned_exported_lang_platform_preprocessor_flags),
       250 | |         ),
       251 | |         static_lib = _at_most_one(static_lib, _versioned_param_to_select(versioned_static_lib)),
       252 | |         static_pic_lib = _at_most_one(static_pic_lib, _versioned_param_to_select(versioned_static_pic_lib)),
       253 | |         shared_lib = _at_most_one(shared_lib, _versioned_param_to_select(versioned_shared_lib)),
       254 | |         header_dirs = _at_most_one(header_dirs, _versioned_param_to_select(versioned_header_dirs)),
       255 | |         **kwargs
       256 | |     )
           | |_____^
           |

    6: Error coercing attribute `static_lib` of type `attrs.option(attrs.source(), default=None)`
    7: Error coercing "(//:ext-link)/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a"
    8: Couldn't coerce `(//:ext-link)/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a` as a source.
         Error when treated as a target: Invalid absolute target pattern `(//:ext-link)/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a` is not allowed: Invalid target name `ext-link)/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a`. Target names are non-empty strings and can only contain alpha numeric characters, and symbols `,`, `.`, `=`, `-`, `/`, `~`, `@`, `!`, `+`, `$`, and `_`. No other characters are allowed.: Invalid target name `ext-link)/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a`. Target names are non-empty strings and can only contain alpha numeric characters, and symbols `,`, `.`, `=`, `-`, `/`, `~`, `@`, `!`, `+`, `$`, and `_`. No other characters are allowed.
         Error when treated as a path: expected a normalized path but got an un-normalized path instead: `(//:ext-link)/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a`

You probably need to make a rule that can export a subpath, then you can use tge static_lib=“:foo” syntax

Yep, you need it to be the default output of a target or subtarget. What kind of rule is //:ext-link? If it's a genrule, that already has support for adding subtargets for paths in its output. If it's an http_file/archive, i'm not sure it has that support but it seems like it'd be a nice thing to add. That'd be something like:
http_archive(
  name = "ext-link",
  named_outs = { "liblef.a": "/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a"}
  ...
)

prebuilt_cxx_libary(
   static_lib = '//:ext-link[liblef.a]',
   ...
 )

As a temporary workaround though (until http_archive supports it natively), you can also just write a rule that takes a target (such as an http_archive) as a dep, and re-export it.
def _inner_path_impl(ctx):
    original_default_output = ctx.attrs.target[DefaultInfo].default_outputs[0]

    return [
        DefaultInfo(default_outputs = [original_default_output.project(ctx.attrs.subpath)]
    ]

inner_path = rule(
    impl = _inner_path_impl,
    attrs = {
    "target": attrs.dep(providers = [DefaultInfo]),
    "subpath": attrs.string()
)

Then you use it like this:
http_archive(
  name = "_ext-link",
  named_outs = { "liblef.a": "/opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a"}
  ...
)

inner_path(
    name = "ext-link",
    target = ":_ext-link",
    subpath = "opt/b28/s-5.8.003/linux_x86_64_rhel7/lib/liblef.a"
)

prebuilt_cxx_libary(
   static_lib = '//:ext-link',
   ...
 )


Allow to set defaults for new sprites

Usually assets are all at the same scale. Or at least groups of them are.
What this app needs is a default scale and default z-axis for new sprites that are dragged on the map from the assets menu.

Fixed in #27