webpack: Enable code splitting and deduplication

This sets up webpack code splitting using SplitChunksPlugin. We can now share sections of our code between different entry points—no more duplication between the app entry and the common entry, for example. Each page now uses a single webpack entry, split into multiple chunks—no more duplication between multiple entries included on one page. Best of all, webpack computes the split automatically, so we can go forward with modularization work without having to worry about this nonsense. The release tarball magically shrinks by 1.3 MB compressed, 4.9 MB uncompressed.
There is one caveat, hence the draft marker: code splitting necessarily entails giving up some control over the inclusion order of CSS files, which it turns out we were incorrectly relying on. Some of these bugs are known and not yet fixed here, mostly due to media.scss, whose rules must be included after the rules they override. There will probably be others that can only realistically be uncovered through QA.
Testing Plan: Dev server, production (https://andersk.zulipdev.org)

Overall approach looks great; posted a few small comments.
For media.scss, one strategy is we could move a lot of other rules to SCSS inline media rules that sit next to the rule they're modifying (with whatever standard width constants we're using defined in a constants file).

Addressed comments and known bugs. This should be approximately ready.
If we want to name the duplicated @media queries, we can use postcss-custom-media.

I merged the first half of this branch, with this change:

Updated the commit message to avoid suggesting media CSS was ever in the file with the stuff it overrides except when we had a single CSS file with all the CSS.

For the 5xx.html commit, can you confirm you've tested that in a production environment?

Yes, https://andersk.zulipdev.org/static/webpack-bundles/5xx.html

Great, merged the 5xx commit as well.

Oh, oops, misread and was looking at the Node package.

This uses django-webpack4-loader 0.0.5 (the Python part) with webpack4-bundle-tracker 0.0.1-beta (the JS part); both are current.

OK, looks great; I did some testing and merged this.  Will deploy to chat.zulip.org shortly so we can get complaints about anything the media changes broke.
We'll probably somewhat soon want to do a pass on docs/subsystems/html-css.md to update it to explain the new world order, but I'm fine with waiting on that until we've done a few more transitions.
Thanks @andersk!


build: release 1.1.0

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

Coverage data is based on head (6689081) compared to base (7018579).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #37   +/-   ##
=======================================
  Coverage   86.61%   86.61%
=======================================
  Files          17       17
  Lines         986      986
=======================================
  Hits          854      854
  Misses        132      132

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

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


Add a Tee operator for debugging/logging

that simplifies observing data passing through a pipeline

@hirzel I added to both Tee and Observing's descriptions cross-references, since they serve similar purposes.  Tee could be done with an Observing(op=NoOp) and an observer, but Tee is designed to be simpler to use.


Update decision docs for email to use Resend instead of Mailgun

The Email Service Docs still says "We selected Mailgun because...", even if the email.server.ts is already working with resend.
We need to update the wording here. I'd do it but I wasn't part of the decision-making of this so I'd prefer that someone else does this. This email is just a friendly reminder to do so :-)

Hi @giovannibenussi!
You'll notice that the decision document you linked to has a status of "superseded by 017" which explains why we changed from mailgun. I want to keep the decision documents pretty untouched from the time they were initially written to keep an easy-to-browse history of decisions.
Thanks though!


Error in first login

Prerequisite: database empty
Steps to reproduce the problem:

Execute the commands:

docker-compose down
docker-compose up -d

Login with admin user

Affected Version: 0.3.0-nightly20181227

It's been fixed.


Adding BytesPrice structure

Adding BytesPrice structure to better name price fields
Adding function to calculate byte price in lamports
Fixing some (very minor) clippy errors

@JacobAraiza you didn't bump version.


adapt Vault installation to Openshift

Type of change

Bugfix

Description
Since latest changes to use REST API instead of Vault CLI, we need to create a Route in Openshift to be able to communicate to Vault from outside the cluster.
Additional Context
Fixes #1541
Checklist

[x] Write tests
[x] Update documentation
[ ] Make sure all unit/integration tests pass
[ ] Make sure all Sonarcloud warnings are addressed or are justifiably ignored.
[ ] If applicable to the change, trigger the system test suite.  Make sure tests pass.
[x] If applicable to the change, trigger the performance test suite. Ensure that any degradations to performance numbers are understood and justified.
[x] Ensure the PR references relevant issue(s) so they are closed on merging.
[x] For user facing changes, update CHANGELOG.md (remember to include changes affecting the API of the test artefacts too).

NOTE:  You must be a member of @kroxylicious/developers to trigger the system test and performance test suites.  If you are not part of this group, comment on the PR requesting a trigger, tagging @kroxylicious/developers.

@strimzi-ci run system tests

:arrow_forward: Build started - check Jenkins for more info. :arrow_forward:

:heavy_check_mark: Test Summary :heavy_check_mark:
BUILD NUMBER: 120
KAFKA VERSION: 3.8.0
TOTAL: 27
PASS: 21
FAIL: 0
SKIP: 6

:arrow_forward: Build started - check Jenkins for more info. :arrow_forward:

:arrow_forward: Build started - check Jenkins for more info. :arrow_forward:

:heavy_check_mark: Test Summary :heavy_check_mark:
BUILD NUMBER: 1
KAFKA VERSION: 3.8.0
TOTAL: 12
PASS: 11
FAIL: 0
SKIP: 1

:arrow_forward: Build started - check Jenkins for more info. :arrow_forward:

:arrow_forward: Build started - check Jenkins for more info. :arrow_forward:

:heavy_check_mark: Test Summary :heavy_check_mark:
BUILD NUMBER: 2
KAFKA VERSION: 3.8.0
TOTAL: 27
PASS: 21
FAIL: 0
SKIP: 6


[Windows] Fix gyp build after f4a0f97

The sanity check introduced in f4a0f97 ("gn: Copy //xwalk/VERSION to the
build dir for generate_crosswalk_win_zip") broke the gyp build.
gyp passes relative paths to the script and mixes "/"s and ""s, which
broke the os.path.commonprefix check. Fix it by normalizing all paths
first.
RELATED BUG=XWALK-7336

LGTM. Out of curiosity, why didn't the bots catch this?

The Windows Buildbot slave did catch this, but since we don't have a Windows trybot we only found out after the original commit was merged.


Age restricted stream

Hi Airkek.
There an issue where i can't bot view streams with age restriction.
It does working on non age restricted streams.

In the worker method, Change : ["el"] = "detailpage", to ["el"] = "embedded",

I just compiled in Visual studio 2022 but it still can't bot view the age restricted streams.


No Login

After deploying the docker, no login occurs.
No errors are given either.
Followed the instructions exactly and used the Wizard for the docker compose file.

Hi,

Are you sure that your node web server address and port are correct, and its 'active' value is set to 'true'? as shown below

Is the directory path you set valid?

Could you please share the Docker logs for your web server(called mngr) container? You can retrieve them from Visual Studio Code using the Docker extension.

Directory path is valid for my setup.
2023-05-05 04:07:39 ROOT_DIR_PATHS: /mnt/host/d/containers/feniks
2023-05-05 04:07:39 DEEPSTACK_DT: 1
2023-05-05 04:07:39 DEEPSTACK_OD: 1
2023-05-05 04:07:39 DEEPSTACK_FR: 1
2023-05-05 04:07:39 SNAPSHOT_PROC_COUNT: 2
2023-05-05 04:07:39 RTMP_PORT_START not found
2023-05-05 04:07:39 RTMP_PORT_END not found
2023-05-05 04:07:39 READONLY_MODE not found
2023-05-05 04:07:40 [GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.
2023-05-05 04:07:40
2023-05-05 04:07:40 [GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
2023-05-05 04:07:40  - using env:       export GIN_MODE=release
2023-05-05 04:07:40  - using code:      gin.SetMode(gin.ReleaseMode)
2023-05-05 04:07:40
2023-05-05 04:07:39 2023/05/05 04:07:39 Redis host:  <IP_ADDRESS>
2023-05-05 04:07:39 2023/05/05 04:07:39 Redis port:  6379
2023-05-05 04:07:39 2023/05/05 04:07:39 Session timeout has been checked
2023-05-05 04:07:39 2023/05/05 04:07:39 MONGODB_CS: mongodb://localhost:27017
2023-05-05 04:07:39 2023/05/05 04:07:39 DirPaths:  [/mnt/host/d/containers/feniks]
2023-05-05 04:07:39 2023/05/05 04:07:39 Disk Usage has checked the disk and no action has been taken
2023-05-05 04:07:40 2023/05/05 04:07:40 user count:  1
2023-05-05 04:07:40 2023/05/05 04:07:40 web server port is 8072
2023-05-05 04:07:40 2023/05/05 04:07:40 Hub integration is disabled
2023-05-05 04:08:09 2023/05/05 04:08:09 Heartbeat was beaten at Fri May  5 04:08:09 2023
2023-05-05 04:08:39 2023/05/05 04:08:39 Session timeout has been checked
2023-05-05 04:08:39 2023/05/05 04:08:39 Heartbeat was beaten at Fri May  5 04:08:39 2023
2023-05-05 04:08:39 2023/05/05 04:08:39 Disk Usage has checked the disk and no action has been taken
2023-05-05 04:09:09 2023/05/05 04:09:09 Heartbeat was beaten at Fri May  5 04:09:09 2023
2023-05-05 04:09:39 2023/05/05 04:09:39 Session timeout has been checked
2023-05-05 04:09:39 2023/05/05 04:09:39 Heartbeat was beaten at Fri May  5 04:09:39 2023
2023-05-05 04:09:39 2023/05/05 04:09:39 Disk Usage has checked the disk and no action has been taken
2023-05-05 04:10:09 2023/05/05 04:10:09 Heartbeat was beaten at Fri May  5 04:10:09 2023
2023-05-05 04:10:39 2023/05/05 04:10:39 Session timeout has been checked
2023-05-05 04:10:39 2023/05/05 04:10:39 Heartbeat was beaten at Fri May  5 04:10:39 2023
2023-05-05 04:10:39 2023/05/05 04:10:39 Disk Usage has checked the disk and no action has been taken
2023-05-05 04:11:09 2023/05/05 04:11:09 Heartbeat was beaten at Fri May  5 04:11:09 2023
2023-05-05 04:11:39 2023/05/05 04:11:39 Session timeout has been checked
2023-05-05 04:11:39 2023/05/05 04:11:39 Heartbeat was beaten at Fri May  5 04:11:39 2023
2023-05-05 04:11:39 2023/05/05 04:11:39 Disk Usage has checked the disk and no action has been taken
2023-05-05 04:12:09 2023/05/05 04:12:09 Heartbeat was beaten at Fri May  5 04:12:09 2023

The web server appears to be running fine. What operating system are you using? If you are using Windows or macOS, you won't be able to connect to the web server because those operating systems don't support the Docker network mode 'host'.

With some reconfiguring, I got into the panel. Login issue resolved.
AI service however is saying that it isnt running.

Which AI service do you use? I strongly recommend using Deepstack AI service, as shown below:

https://mehmetgoren.github.io/

With some reconfiguring, I got into the panel. Login issue resolved.
AI service however is saying that it isnt available.

I can't log in and register either. How did you solve it?

Experiencing this as well. Very frustrating to be stuck at this login/register screen which is not mentioned in docs at all.
I have tried both "redis and mongo inside docker-compose" and outside running separate.
What is supposed to happen at this screen? Should I be registering? Is there a default password? No mention of password, admin, login etc in the documentation.

You don't need to enter the default admin password since it is automatically set. The default user credentials are
Username:   "admin",
Password:   "admin",
Email<EMAIL_ADDRESS>Could you please share the Docker logs of your web server (called 'mngr')? This will help me identify the issue and provide a suitable solution.

With some reconfiguring, I got into the panel. Login issue resolved.
AI service however is saying that it isnt available.

Hello
What configuration have you done that solved your login problem?
I encounter the following error when logging in. I think where did I go wrong?

My feniks settings:
The directory path is valid for my setup.
My node web server address and port looks correct and its "active" value is set to "true"? As shown below

With some reconfiguring, I got into the panel. Login issue resolved.
AI service however is saying that it isnt available.

Hello What configuration have you done that solved your login problem? I get the following error when logging in. Where do you think I went wrong?
My feniks settings: The directory path is valid for my setup. My node web server address and port looks correct and its "active" value is set to "true"? As shown below
my docker installed on windows.

Docker on Windows has issues with networking depending on the modes used, and as such is not recommended for use with Feniks personally. You would be MUCH better off if you were to get VirtualBox and spin up a Linux VM. From there, you can do the docker install as normal and then instead of referencing "localhost" you would simply reference the IP Address of the VM.
The particular issue stems from the fact that "The host networking driver only works on Linux hosts, and is not supported on Docker Desktop for Mac, Docker Desktop for Windows, or Docker EE for Windows Server."
https://docs.docker.com/network/network-tutorial-host/#prerequisites

Currently, I installed Docker on Almalinux and run the "Docker Compose up" command, but I still have the same problem as the previous problem to login the program and I have the same error.
The following configs are from my new configuration in Docker on AlmaLinux.

[root@camera camera]# docker images
REPOSITORY                             TAG            IMAGE ID       CREATED         SIZE
mongo                                  latest         01e8e54fc538   4 days ago      720MB
redis                                  latest         506734eb5e71   5 days ago      138MB
gokalpgoren/webapp                     v1.0.1-amd64   546788660fd0   4 weeks ago     145MB
gokalpgoren/onvf                       v1.0.1-amd64   a07409dc0939   4 weeks ago     1.09GB
gokalpgoren/alpr                       v1.0.1-amd64   f6ca63a6538a   4 weeks ago     1.11GB
gokalpgoren/smcp                       v1.0.1-amd64   182319cb15d9   4 weeks ago     2.32GB
gokalpgoren/mngr                       v1.0.1-amd64   697f3893186d   4 weeks ago     1.99GB
gokalpgoren/face_recognition_pytorch   v1.0.1-amd64   e0fcf0acefcd   4 weeks ago     6.43GB
gokalpgoren/snapshot_service           v1.0.1-amd64   cd63164838b6   4 weeks ago     1.23GB
gokalpgoren/detect_service_pytorch     v1.0.1-amd64   933d0fd4b881   4 weeks ago     7.08GB
gokalpgoren/ffmpeg_service             v1.0.1-amd64   44ce5e80a218   4 weeks ago     772MB
gokalpgoren/openalpr_local             latest         bf45835171bf   16 months ago   1.2GB
[root@camera camera]# docker container ls
CONTAINER ID   IMAGE                        COMMAND   CREATED          STATUS          PORTS     NAMES
e6bbb00b370a   gokalpgoren/openalpr_local   "bash"    58 minutes ago   Up 58 minutes             lpr1
41b0e785c7eb   gokalpgoren/openalpr_local   "bash"    58 minutes ago   Up 58 minutes             lpr0
[root@camera camera]# docker network ls
NETWORK ID     NAME             DRIVER    SCOPE
cfd0c94896d3   bridge           bridge    local
065a8007a000   camera_default   bridge    local
85e4cfcaf7c1   host             host      local
5d595a4f7f8c   none             null      local
[root@camera camera]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet <IP_ADDRESS>/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether a6:2a:12:8e:3d:d7 brd ff:ff:ff:ff:ff:ff
altname enp0s18
inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global dynamic noprefixroute ens18
valid_lft 274549sec preferred_lft 274549sec
inet6 fe80::a42a:12ff:fe8e:3dd7/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:35:49:e5:0b brd ff:ff:ff:ff:ff:ff
inet <IP_ADDRESS>/16 brd <IP_ADDRESS> scope global docker0
valid_lft forever preferred_lft forever
inet6 fe80::42:35ff:fe49:e50b/64 scope link
valid_lft forever preferred_lft forever
4: br-065a8007a000: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:90:fd:d2:cf brd ff:ff:ff:ff:ff:ff
inet <IP_ADDRESS>/16 brd <IP_ADDRESS> scope global br-065a8007a000
valid_lft forever preferred_lft forever
inet6 fe80::42:90ff:fefd:d2cf/64 scope link
valid_lft forever preferred_lft forever
14: vethdc9494a@if13: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
link/ether 56:ca:6b:a4:cd:b4 brd ff:ff:ff:ff:ff:ff link-netnsid 3
inet6 fe80::54ca:6bff:fea4:cdb4/64 scope link
valid_lft forever preferred_lft forever
16: veth8197412@if15: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
link/ether 3a:08:cd:31:1b:dd brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet6 fe80::3808:cdff:fe31:1bdd/64 scope link
valid_lft forever preferred_lft forever
My "docker-compose.yml" File echo :::::::::
version: '3'
services:
redis:
image: redis
container_name: redis-instance
restart: unless-stopped
ports:
- '6379:6379'
mongo:
image: mongo:latest
container_name: mongo-instance
restart: unless-stopped
ports:
- '27017:27017'
mngr:
image: gokalpgoren/mngr:v1.0.1-amd64
container_name: mngr-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
- mongo
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
- WEBSERVER_PORT=8072
- MONGODB_CS=mongodb://localhost:27017
- DEEPSTACK_DT=0
- DEEPSTACK_OD=1
- DEEPSTACK_FR=1
- ROOT_DIR_PATHS=/var/Camera
- SNAPSHOT_PROC_COUNT=2
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/Camera:/var/Camera
ffmpeg_service:
image: gokalpgoren/ffmpeg_service:v1.0.1-amd64
container_name: ffmpeg_service-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
- mngr
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/Camera:/var/Camera
snapshot_service:
image: gokalpgoren/snapshot_service:v1.0.1-amd64
container_name: snapshot_service-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
- ffmpeg_service
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
smcp:
image: gokalpgoren/smcp:v1.0.1-amd64
container_name: smcp-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
- mongo
- mngr
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
volumes:
- /var/Camera:/var/Camera
onvf:
image: gokalpgoren/onvf:v1.0.1-amd64
container_name: onvf-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
volumes:
- /var/run/docker.sock:/var/run/docker.sock
webapp:
image: gokalpgoren/webapp:v1.0.1-amd64
container_name: webapp-instance
restart: unless-stopped
depends_on:
- mngr
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
ports:
- '8080:80'
detect_service_pytorch:
image: gokalpgoren/detect_service_pytorch:v1.0.1-amd64
container_name: detect_service_pytorch-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
- ffmpeg_service
- snapshot_service
- smcp
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
face_recognition_pytorch:
image: gokalpgoren/face_recognition_pytorch:v1.0.1-amd64
container_name: face_recognition_pytorch-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
- ffmpeg_service
- snapshot_service
- smcp
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
volumes:
- /var/Camera:/var/Camera
alpr:
image: gokalpgoren/alpr:v1.0.1-amd64
container_name: alpr-instance
restart: unless-stopped
network_mode: host
depends_on:
- redis
- ffmpeg_service
environment:
- TZ=Asia/Tehran
- REDIS_HOST=<IP_ADDRESS>
- REDIS_PORT=6379
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /tmp/alpr:/tmp/alpr

@mahdi-yahyaie
Is the referenced Linux install bare metal, or virtual? Either way based on the response from the ip took it appears you have a network misconfiguration issue now that is hindering you.
Loopback (127.0.01) works whether or not a machine has network connectivity and no interface should ever be manually assigned a loopback address.


Add Exam class and AddExamCommand class

Codecov Report

Merging #84 (f7f95a7) into master (ac6d299) will decrease coverage by 3.35%.
The diff coverage is 9.27%.

@@             Coverage Diff              @@
##             master      #84      +/-   ##
============================================
- Coverage     40.30%   36.95%   -3.36%
- Complexity      369      374       +5
============================================
  Files           124      136      +12
  Lines          2084     2330     +246
  Branches        239      269      +30
============================================
+ Hits            840      861      +21
- Misses         1201     1426     +225
  Partials         43       43

Impacted Files
Coverage Δ

...main/java/seedu/address/commons/core/Messages.java
0.00% <ø> (ø)

...rc/main/java/seedu/address/logic/LogicManager.java
56.52% <0.00%> (-2.57%)
:arrow_down:

...a/seedu/address/logic/commands/AddExamCommand.java
0.00% <0.00%> (ø)

...edu/address/logic/parser/AddExamCommandParser.java
0.00% <0.00%> (ø)

.../seedu/address/logic/parser/AddressBookParser.java
47.05% <0.00%> (-1.43%)
:arrow_down:

...in/java/seedu/address/logic/parser/ParserUtil.java
43.20% <0.00%> (-6.09%)
:arrow_down:

src/main/java/seedu/address/model/exam/Exam.java
0.00% <0.00%> (ø)

...c/main/java/seedu/address/model/exam/ExamDate.java
0.00% <0.00%> (ø)

...java/seedu/address/model/exam/ExamDescription.java
0.00% <0.00%> (ø)

.../model/exam/exceptions/DuplicateExamException.java
0.00% <0.00%> (ø)

... and 12 more

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

I have approved your pr but there is some merge conflicts that have to be fixed


Missing Remarketing examples

Hi, i would like to create listusers (audience) for my campaigns via API but in the remarketing folder are missing the examples to do that.
Here the examples available for AdWords API:
AddAudience.java
AddConversionTrackers.java
AddCrmBasedUserList.java
AddRuleBasedUserLists.java
UploadConversionAdjustment.java
UploadOfflineCallConversions.java
UploadOfflineConversions.java
UploadOfflineData.java
Is there a plan for the releasing of those examples also for the Google Ads API?
In particular i would like to create listusers bases on url rules for the remarketing. Thank you

Hey, thanks for surfacing this. It's on our backlog, and I've added your interest to having these examples ported.
For advice on implementing remarketing lists, please reach out on the forum.


Allow importing bookmarks from Firefox and maybe other apps.

It would be nice not having to type all the bookmarks again.
Bookmarks can be exported into HTML on the desktop version of Firefox, this shouldn't be very hard to import.
Trying to get them from the Firefox Android app is out of the question. I'm not sure it's event possible and I don't want to mess with that kind of permissions.
What about importing DuckDuckGo Bangs? Without the exclamation mark, of course…

As a first step, it would be useful to be able to import the same kind of file used for export (a CSV file, atm).
Making other formats compatible could be done as a separate task.

Basic import done in #22. Now it would need some conversion scripts from and to Firefox bookmarks, and maybe Keypirinha conf files, once multi-URL bookmarks are implemented.


NoDNS flag doesn't work in 0.11

https://empirepaas.slack.com/archives/general/p1488336683000197
This is a regression between 0.10.1 and 0.11 when migrating apps to the CloudFormation backend. In the 0.11 release, the boolean is not inversed: https://github.com/remind101/empire/blob/v0.11.0/scheduler/cloudformation/cloudformation.go#L266
ParameterValue: aws.String(fmt.Sprintf("%t", *opts.NoDNS))

Should read:
ParameterValue: aws.String(fmt.Sprintf("%t", !*opts.NoDNS))

This was fixed in 0.11.1


Do not include examples in manylinux wheels

The examples folder takes up about 10 MB, while the wheel is 25 MB.
We have separate wheels for Kivy examples: https://pypi.org/project/Kivy-examples/#files

I was referring to the wheels published on the server, but I don't know if the build script was fixed since they were created.
https://kivy.org/downloads/1.10.1/
https://kivy.org/downloads/ci/linux/kivy/

Seems the last build, was over two months ago, despite the cron being configured to run monthly, but the last build indeed contains the example, it's not installable on my system though, probably because of manylinux2 not being known by pypi. I'll let this aside for later.


I find a typo.

I've been clone-coded to learn how MIntRec system goes.
While working on Methds >> MAG_BERT >> manager.py, in line 58, I think it should be "for epoch in range" rather than "for epoch in trange".
Though it's trivial, I just wanted to let you guys know. Thank you.

Never mind, I figured it out it was imported from tqdm package.


rough pass

Type of PR (feature, enhancement, bug fix, etc.)
Fall cleaning
Description
Please include a summary of the change and which issue is fixed.
Added a few items to .gitignore: .vscode allows in-editor debug sessions, Procfile.dev means we can maintain local Procfiles for use with Hivemind etc, TAGS is autogenerated by language server
I dropped you to Ruby 2.6.4 because that's what we're currently on with StimulusReflex and TodoMVC
Same Procfile as TodoMVC although I'm not sure that webpack should be in there, that's a question for @hopsoft as it might impact Heroku deployment
connection.rb + application_controller.rb: copy/pasted session id code to prevent user conflicts in production
Massively scaled-down restaurants controller including no more before callbacks, as there's only one method now. Called Restaurant directly as I'm not sure if calling order on a collection would generate a 2nd AR query.
app/frontend is interesting... usually people use javascript but I agree that as soon as you have css in there, it seems inaccurate. Punting the decision to higher powers...
app/frontend/controllers no longer needed as SR creates its own consumer.
application.js becomes largely gone since we're not using UJS or Turbolinks; note to use import instead of require going forward. Import is the future.
Added application_cable_meta_tag and removed the turbolinks attributes from the application template. Going to add the meta_tag to the documentation.
Got rid of unused JS libs and updated to stable actioncable.
Purged the controller and system tests of references to scaffold actions except index.
Why should this be added
Just a whole bunch of suggestions.
Checklist

[ ] My code follows the style guidelines of this project
[ ] Checks are passing

Also I’d highly suggest adding .vscode to your global git ignore but I’m fine with adding it.

TIL that there's a global git ignore.

So, the wrap-up answer to all of your perfectly valid questions about code removal follows. The important thing to stress is that this is your codebase and my suggestions are now somehow more right. It really does come down to personal style and goals.
The way I approach tutorial + repo exercises is that I am not trying to achieve a state of zen equality between the code represented and the opportunity to teach best practices. Even if we manage to get things into a beautiful MD5 hash verified repeatable state tonight, the moment someone updates a dependency things are going to drift slightly over time.
The strategy should be that if they follow the instructions to the letter, they should be able to get to a working implementation quickly assuming that they are familiar with beginner Rails. After all, this is not really an ideal place for a total beginner to start, and a good blog post will state as much at the top. And if people are not able to follow the instructions, either the instructions are way off/lacking, or they can consult the codebase for hints.
Likewise, very few experienced devs will actually go through the manual steps; they will consult the important files in the repo to see the real-world impact. So it's for these scenarios that I want to show them the cleanest, least-subjective version of what's possible.
So while it's absolutely true that we can include TL5, UJS and ActiveStorage, we're not using them in the project and so I feel like keeping support around for them just increases the chance that a confused or underinformed person will conclude that, for example, TL5 is somehow required for this to work, because at a distance both libraries replace your DOM.
Keep in mind, it's of top-level importance that we capture the imagination of people rushing over a post who are convinced that they are reading about yet another version of PJAX or TL5 or even a competitor to React.
Finally, and I stress that this is the least important motivation, the fewer the libraries we include, the smaller the JS bundle webpack is able to export.
In conclusion, I think that so long as most people can follow along the article or jump right into the code, it would be very weird for someone to get confused that you removed unused libs or machine generated comments. Nobody serious is going to use your example as the base for their new startup. Nobody serious is going to be working from rails new on a real project in general. The important details our brain needs to take away is the feeling of confidenence that, yeah, it really could be that simple. Make sense?


Lazy loaded map returns 504 error

When attempting to add controls to my map, it kept crashing the app, I found this issue that helped me determine I needed to declare the file where the controls are declared in my vite.config.ts file to pre-bundle it and ensure it loads.
Below is the code I used for my project that depends on vite & vite-plugin-ssr.
This would be helpful to put in the docs for anyone who needs to lazy load the component on a SSR application.
import ssr from 'vite-plugin-ssr/plugin'
/** @type {import('vite').UserConfig} */

export default {
  plugins: [react(), ssr()],
  optimizeDeps: {
    //To ensure the map loads with the controllers
    include: ['src/components/Map.tsx'],
  },
}

@brillout maybe this issue would also be relevant to have in vite-plugin-ssr docs . Food for thought.

What's the error you get when you don't use optimizeDeps? It's likely an issue on Vite's side.

Thats awkward... I removed the snippet and it didn't break... Ill leave it commented out in case it returns...

Vite's optimizeDeps is prone to race conditions. It could be a Vite bug.

Ill keep this issue handy if anything pops up again. Thanks

Thanks for working on this. I don't use Vite so unfamiliar with the warnings you were getting.
If you find a fix that will also not interfere with CRA, feel free to make a PR.


Angular.io for pt-BR

This is a placeholder issue. If you're interested in contributing to the localization project, please comment here and let us know how to reach you.

I want to help! I have 2 hours/day.
<EMAIL_ADDRESS>is the best way to reach me.

I want to help too!
<EMAIL_ADDRESS>

I'll be glad to help<EMAIL_ADDRESS>

I'll be glad to help you too<EMAIL_ADDRESS>

That's great, guys! We'll manage to get started ASAP. Looking forward to work with all of you! :)

I'll be glad to help too!
<EMAIL_ADDRESS>

Hi guys, I want to be part of it<EMAIL_ADDRESS>

hello, i want to be part too<EMAIL_ADDRESS>

I want<EMAIL_ADDRESS>

I want to help.
<EMAIL_ADDRESS>

You will can rely on me!
<EMAIL_ADDRESS>

I can help too, just email me<EMAIL_ADDRESS>

I want too<EMAIL_ADDRESS>

I am in! ricoy.lucas at gmail.com

I want to help.
<EMAIL_ADDRESS>

I want to help<EMAIL_ADDRESS>

Lets go<EMAIL_ADDRESS>

I want to help too<EMAIL_ADDRESS>

Ready to start with Russian localization. I've found a co-lead.

I can help too! Touch me in<EMAIL_ADDRESS>

OK -- I have just sent you all invites to join the Slack channel where we'll be coordinating. Thanks to @cironunes and (I think?) @rmdias who will be leading for pt-BR.
@webmaxru -- see https://github.com/angular/angular.io/issues/1892 -- new issue for tracking Russian. (I assume everyone else here is interested in pt-BR)

I want to help too -<EMAIL_ADDRESS>

I can help too! I have 2 hours/day.
<EMAIL_ADDRESS>is the best way to get in touch with me.

\o/ @naomiblack

I can help too! :333
<EMAIL_ADDRESS>

<EMAIL_ADDRESS>close #180

count on me
<EMAIL_ADDRESS>

I want to help too!
<EMAIL_ADDRESS>

I can help too<EMAIL_ADDRESS>Let's go !!!

<EMAIL_ADDRESS>

Hello there, i want to help and improve Angular<EMAIL_ADDRESS>

I wanto to help too<EMAIL_ADDRESS>

PT-BR, i'm in<EMAIL_ADDRESS>

Para todos os interessados favor dar uma olhada na lista de issues: https://github.com/angular/angular-pt/issues


Fix data handling during merging and unmerging of CSM instances

Changes
CSM .merge and .unmerge now correctly merges and restores data attached to a CS.
Related Issues
Closes #491
Checks

[ ] updated CHANGELOG.md
[ ] updated tests
[ ] updated doc/
[ ] update example/tutorial notebooks

Hello @vhirtham! Thanks for opening this PR.

In the file weldx/tags/core/transformations/coordinate_system_hierarchy.py:

Line 373:26: E231 missing whitespace after ':'
Line 373:26: E999 SyntaxError: invalid syntax
Line 373:28: E251 unexpected spaces around keyword / parameter equals

Do see the Hitchhiker's guide to code style

This was a bit tricky due to some annoying hidden side-effects but now it is working to some degree. I am not sure if the serialization works for all cases since not everything is tested but we will touch this when working on the graph serialization anyways. I guess this will cover everything @marscher needs to work on the dashboards.
I will add some edge case tests and clean everything up. Afterwards, this is ready.

I merged this one, so I can continue with the work on #497 . We can merge your other branch into master if we agreed on a solution. @CagtayFabry


GitHub user avatar needs to be resized.

additional contributors avatar are much larger than the first user.

The default avatar is only available as one size.  resolved issue by resizing image in code on past commit.


Dec 314

We needed to start using our api for item updates.
I added use of an ajax call to the item api and I added display of error messages returned from the server.

Coverage remained the same at 94.07% when pulling 841b18f426ae3769679df21f3028c8044f200703 on DEC-314 into 7cea596e92ca579d9ca02309875d8971f56d3c03 on phase2.

Coverage remained the same at 94.07% when pulling 841b18f426ae3769679df21f3028c8044f200703 on DEC-314 into 7cea596e92ca579d9ca02309875d8971f56d3c03 on phase2.

Coverage remained the same at 94.07% when pulling d7f2141c2fbbd152ad79781467a3cc761b396c0e on DEC-314 into 7cea596e92ca579d9ca02309875d8971f56d3c03 on phase2.

Coverage remained the same at 94.07% when pulling 12107a1656989e6ab21d2721db26b388dbe7be10 on DEC-314 into 7cea596e92ca579d9ca02309875d8971f56d3c03 on phase2.

Coverage remained the same at 94.07% when pulling 12107a1656989e6ab21d2721db26b388dbe7be10 on DEC-314 into 7cea596e92ca579d9ca02309875d8971f56d3c03 on phase2.

Consent is that I can merge this branch.


[performance] reduce amount of dispatch queues

motivation: improve performance, reduce complexity
changes:

define single shared concurrent queue and update code that runs async operation to use it.
replace cases where dispatch queue is used "as a lock" with a lock

@swift-ci please smoke test

Especially glad to see conceptual distinction between queues and locks, which I think makes everything more understandable.

@swift-ci please smoke test

@swift-ci please smoke test linux

@swift-ci please smoke test

@swift-ci please smoke test linux

@swift-ci please smoke test linux


Error while calling lua chunk: ~/.config/nvim/plugin/lean.lua:10: module 'cmp' not found

I attempted to workaround #284 by commenting out the "optional dependencies" listed in https://github.com/Julian/lean.nvim/wiki/Getting-Started#install-leannvim-and-its-dependencies.  I now get a different error when starting nvim:
Error detected while processing ~/.config/nvim/plugin/lean.lua:
E5113: Error while calling lua chunk: ~/.config/nvim/plugin/lean.lua:10: module 'cmp' not found:
        no field package.preload['cmp']
        no file './cmp.lua'
        no file '/usr/share/luajit-2.1.0-beta3/cmp.lua'
        no file '/usr/local/share/lua/5.1/cmp.lua'
        no file '/usr/local/share/lua/5.1/cmp/init.lua'
        no file '/usr/share/lua/5.1/cmp.lua'
        no file '/usr/share/lua/5.1/cmp/init.lua'
        no file './cmp.so'
        no file '/usr/local/lib/lua/5.1/cmp.so'
        no file '/usr/lib/x86_64-linux-gnu/lua/5.1/cmp.so'
        no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
        [C]: in function 'require'
        ~/.config/nvim/plugin/lean.lua:10: in main chunk
"fin.lean" 36L, 1228B

I imagine one of those dependencies is loading something that lean.vim needs but isn't marked as a dependency of lean.vim.

This sounds like you removed the lines to install cmp but you're still trying to require it in your own lean.lua file. Delete those lines too if you're not intending to use cmp.

Let me know if that doesn't help.


Remove non conforming SHO oid from config

~The urn:oid:<IP_ADDRESS>.4.1.14<IP_ADDRESS>.15 attribute was previously released by default when the SHO was in the ARP. This oid is not valid and was added for historic reasons. It's not clear which SP's still rely on this attribute. So by default the attribute is not released by EB, but can be enabled using the 'eb.arp_remove_non_conforming_sho_attribute' feature flag.~
Simply removing the alias from the config was a more pragmatic solution. Federations relying on the alias can manually put it back if need be.
See: https://www.pivotaltracker.com/story/show/164237578

Yes that should work too, the only drawback is that you'd have to keep track of an alternative configs/attributes.json file in you deploy scripts. If that works for you, I'd love to revert this change!
PS the build 72 build break on a visual regression test that times out. It ran on the 74 test so this should not be a blocker.

We already ship our own version of the attributes.json config file in https://github.com/OpenConext/OpenConext-deploy/blob/master/roles/engineblock/files/attributes.json
At least it's then out of the EB product. Of course everyone using OpenConext-deploy will still have it. But we can consider to move the SURF-specific items in attributes.json to our ansible environments, we can do that separately.


Nuget Package Creation - v1.9.25

MimeKitLite dependency update from ('4.4.0' -> '4.5.0').
Nuget package creation - v1.9.25.
Actions version updates.

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

Project coverage is 99.48%. Comparing base (8c36a0a) to head (578518b).
Report is 74 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #75   +/-   ##
=======================================
  Coverage   99.48%   99.48%
=======================================
  Files           1        1
  Lines         781      781
  Branches      183      183
=======================================
  Hits          777      777
  Misses          2        2
  Partials        2        2

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


Implement conditional batch/layer normalization

You can copy this one from the muANVI repo and I would add a second batch key in the AnnData setup, only used for conditional norm in the encoder. We should also copy the MoG prior from there.


Exception thrown while executing UI block: -[RNSVGSvgView setOnClick:]: unrecognized selector sent to instance 0x10840d340

Minimal reproducible example
Can't reproduce in a minimal environment because it doesn't show where the error is
Summary
After upgrading to SDK 50 Expo/ React Native 0.73 I've been unable to run my application that uses react-native-svg: 14.1.0, I'm getting the following error when running ONLY on the iOS simulator and it crashes immediately after opening the app:
Exception thrown while executing UI block: -[RNSVGSvgView setOnClick:]: unrecognized selector sent to instance 0x10840d340

RCTSurfaceStageIsPreparing
    RCTUIManager.m:1205
RCTSurfaceStageIsPreparing
FEA36690-A000-3C55-B700-9120B05AA69B
FEA36690-A000-3C55-B700-9120B05AA69B
FEA36690-A000-3C55-B700-9120B05AA69B
_dispatch_main_queue_callback_4CF
5CDC5D9A-E506-3740-B64E-BB30867B4F1B
5CDC5D9A-E506-3740-B64E-BB30867B4F1B
CFRunLoopRunSpecific
GSEventRunModal
179501B6-0FC2-344A-B969-B4E3961EBE10
UIApplicationMain
main
CB3FF411-4762-34D2-86A4-ECA13F9FB6C3

Environment
expo-env-info 1.2.0 environment info:
System:
OS: Linux 4.4 Ubuntu 20.04.6 LTS (Focal Fossa)
Shell: 5.0.17 - /bin/bash
Binaries:
Node: 21.1.0 - ~/.nvm/versions/node/v21.1.0/bin/node
Yarn: 1.22.21 - ~/.nvm/versions/node/v21.1.0/bin/yarn
npm: 10.2.4 - ~/.nvm/versions/node/v21.1.0/bin/npm
npmPackages:
expo: ^50.0.0 => 50.0.4
react: 18.2.0 => 18.2.0
react-dom: 18.2.0 => 18.2.0
react-native: 0.73.2 => 0.73.2
react-native-web: ~0.19.6 => 0.19.7
react-native-svg: 14.1.0
npmGlobalPackages:
eas-cli: 5.9.3
Expo Workflow: managed
I already rolled back to a previous Expo/ReactNative/react-native-svg and everything is working fine, so the problem really is with the update

Seems to happen with TouchableWithoutFeedback in my case. I'm creating a reproducible example. Changing to TouchableOpacity does the job. I just came across this, so I don't have more info ATM.
My deps
expo: 50.0.7
expo-status-bar: 1.11.1
react: 18.2.0
react-native: 0.73.4
react-native-svg: 14.1.0
expo-dev-client: 3.3.8

Seems to happen with TouchableWithoutFeedback in my case. I'm creating a reproducible example. Changing to TouchableOpacity does the job. I just came across this, so I don't have more info ATM.
My deps
expo: 50.0.7 expo-status-bar: 1.11.1 react: 18.2.0 react-native: 0.73.4 react-native-svg: 14.1.0 expo-dev-client: 3.3.8
App.js
import { SafeAreaView, StyleSheet, TouchableWithoutFeedback, View } from 'react-native';
import LogoSvg from './assets/logo.svg.js';

export default function App() {
	return (
		<SafeAreaView>
			<View style={styles.container}>
				<TouchableWithoutFeedback
					onPress={() => console.log('pressed')}
				>
					<LogoSvg width={200} />
				</TouchableWithoutFeedback>
			</View>
		</SafeAreaView>
	);
}

const styles = StyleSheet.create({
	container: {
		flex: 1,
		backgroundColor: '#fff',
		alignItems: 'center',
		justifyContent: 'center',
	},
});

In my case too. I was getting that navigation error only on iOS and I fixed it by changing my component from TouchableWithoutFeedback to Ripple from MaterialUI
Environment
Npm Packages

"@expo/config": "~9.0.0",
"@expo/config-plugins": "^8.0.4",
"@expo/metro-config": "~0.18.1",
"expo": "~51.0.9",
"react-native": "0.74.1",
"react-native-material-ripple": "^0.9.1",

System

Android Studio: 2023.2.1 Patch 2
Device: iOS 17.5.1

Globals

yarn: 1.22.19
npm: 9.8.1
node: 18.17.0

React-native-svg 15.2.0 the same problem :(

@6ase can you share the reproduction of that problem?
Thank you!

@6ase can you share the reproduction of that problem? Thank you!

The problem is happens if we have SVG component inside of TouchableWithOutFeedBack component. Propblem happend is only in IOS versions, and work fine in android version. I change TouchableWithOutFeedBack  to TouchableOpacity, where we have inside SVG component and the error is gone.

Here is a simple repro:
<TouchableWithoutFeedback onPress={() => console.log('press')}>
      <Svg height={30} width={30} viewBox="0 0 512 512">
        <Mask id="a">
          <Circle cx={256} cy={256} r={256} fill="#fff" />
        </Mask>
        <G mask="url(#a)">
          <Path
            fill="#0052b4"
            d="M0 0h133.6l35.3 16.7L200.3 0H512v222.6l-22.6 31.7 22.6 35.1V512H200.3l-32-19.8-34.7 19.8H0V289.4l22.1-33.3L0 222.6z"
          />
          <Path
            fill="#ffda44"
            d="M133.6 0v222.6H0v66.8h133.6V512h66.7V289.4H512v-66.8H200.3V0z"
          />
        </G>
      </Svg>
    </TouchableWithoutFeedback>


Handling graphql requests

Hello! I was working with strawberry-graphql[channels], a graphql server based on django channels.
In the meantime, I needed a cors library that supports asgi, so I used asgi_cors.
If the client requests a query to the server to get a response,
Is there any way other than directly modifying asgi_cors.py?
# asgi_cors.py
...
if access_control_allow_origin is not None:
    status = 200 if scope["method"] == "OPTIONS" else event["status"]  ####################
    event = {
        "type": "http.response.start",
        "status": status,
        "headers": [ p for p in original_headers if p[0] != b"access-control-allow-origin"]
        + [
            [ b"access-control-allow-origin", access_control_allow_origin],
            [ b"access-control-allow-headers", b"Content-Type"]  ####################
        ],
    }
await send(event)

added lines

add for preflight method OPTIONS, if i don't add then event["status"] is 405
add access-control-allow-headers, if i don't add then get error because in request, gql is sent

I met each and every problem about cors in my situation and managed to solve it.
But I'm not sure if this is the right solution and I'm asking to see if there is a better way.
Actually, I don't know if I can post this on Issues.
If it's a problem, I'll delete it.
Thanks for reading the long article.

I saw PR now...


[Enhancement] Enhance Documentation

Description:
We need to improve the documentation for the project to ensure it's comprehensive and user-friendly. This will help new contributors and users better understand how to use and contribute to the project.
Tasks:

[ ] Review existing documentation for clarity and completeness
[ ] Add examples for key features
[ ] Improve setup instructions
[ ] Create a FAQ section for common issues
[ ] Ensure all code snippets are correct and up-to-date

Hello! I'd like to take on this task, can you please assign it to me?

Hello! I'd like to take on this task, can you please assign it to me?
@pchy-ynda  Sure, assigned the issue to you. Make sure to go through the checklist present in the issue. Feel free to add any other sections left.


test(extension): new test lw-9095

Jira LW-9096

Allure Report
allure-report-publisher generated test report!

smokeTests: ❌ test report for ff0b7264

passed
failed
skipped
flaky
total
result

Total
15
17
0
0
32
❌


evaluate HOWTO directs to Space instructions, which fail.

Following the instructions from evaluate, and help from the previous issues I filed, I now have a https://huggingface.co/spaces/meg/npmi.
Following the instructions there, I now get the following error.
I recognize at this point it becomes a Spaces issue, not an evaluate issue (?), but in the meantime the evaluate instructions might be updated:
(.env) bash-3.2$ git add app.py
(.env) bash-3.2$ git commit -m "Add application file"
[main dc918b1] Add application file
1 file changed, 7 insertions(+)
create mode 100644 app.py
(.env) bash-3.2$ git push
Username for 'https://github.com'<EMAIL_ADDRESS>Password for 'https://meg<EMAIL_ADDRESS>remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/huggingface/evaluate.git/'

Are you in the subfolder of the created space? it looks like you are trying to push to the evaluate repo.

Sound like you are saying that I need to cd .. out of the evaluate repo before interacting with the Space? This is what I had thought, but, I was following the instructions precisely. See:
``evaluate-cli create "My Metric" module_type="metric"
This will create a new Space on the 🤗 Hub, clone it locally, and populate it with a template. Instructions on how to fill the template will be displayed in the terminal, but are also explained here in more detail.''
So now I go to the Space (p.s. -- we should have details on the Space url written here, e.g., https://huggingface.co/spaces/${username}/${metric name})
But now I go to the Space, and following the directions exactly:
``Start by cloning this repo by using:
git clone https://huggingface.co/spaces/meg/npmi ''
What I'm hearing is that there should be an additional step documented before going to the repo: moving out of the evaluate directory.

Wherever you execute the CLI command it will create a folder with the cloned space. You need to cd into that folder before git adding the files.

Right, I forgot!  The issue is that when you go the Space, it gives more instructions -- which you should not follow. Perhaps a parenthetical in the evaluate instructions I highlighted "(if you go to the Space right now, it will have separate instructions -- ignore those, we have it covered in the steps here!)"


topology: add server info to keep consistence with TiDB

Signed-off-by: crazycs520<EMAIL_ADDRESS>Currently, ng-monitor topology key in etcd is different with TiDB:
▶ etcdctl --endpoints=<IP_ADDRESS>:20379 get "/topology/ng" --prefix
/topology/ng-monitoring/<IP_ADDRESS>:12020/ttl
1639638711375864489

▶ etcdctl --endpoints=<IP_ADDRESS>:20379 get "/topology/tidb" --prefix
/topology/tidb/<IP_ADDRESS>:4000/info
{"version":"v5.4.0-alpha-134-g276721877","git_hash":"276721877cf84c32ecacb6b2dcfea83ebbdeb8cf","ip":"<IP_ADDRESS>","status_port":10080,"deploy_path":"/home/vagrant/deploy/tidb-4000/bin","start_timestamp":1639638254,"labels":{}}
/topology/tidb/<IP_ADDRESS>:4000/ttl
1639638704697655900

This PR add server info key into etcd, to make consistence with TiDB.
▶ etcdctl --endpoints=<IP_ADDRESS>:2379 get "/topology/ng" --prefix
/topology/ng-monitoring/<IP_ADDRESS>:12020/info
{"git_hash":"13c9b6254e0a83c4bd9322eb6d3c421c769eed78","ip":"<IP_ADDRESS>","listening_port":12020,"start_timestamp":1639645664}
/topology/ng-monitoring/<IP_ADDRESS>:12020/ttl
1639645664433071000

@breeswish @baurine PTAL


Improve the developer experience by choosing a UI framework or creating an API

This issue relates to a discussion had on twitter about adopting a frontend framework for easier development.
Original thread: https://twitter.com/nmdmatt/status/860206053048414209
Angular 2
I attempted to work Angular 2 into the project (seen here) but it is incomplete to say the least.
The main issue I ran into was that the frontend scripts could not access electron related data/objects.
Apparently systemjs overrides the require() function, which results in the inability to access node_modules- related stuff. There are a supposed work around or 3, but none of them have worked in my attempts.
This means that in an angular route or component, I couldn't call fs = require('fs');, because systemjs would look in the wrong location and not find it.
I've seen a number of videos which show the interaction between angular2 to be easy, and without the issue around require(). They all use webpack.
If we're to continue with angular, maybe we start from a working angular-electron skeleton, and rebuild the conductor functionality on top of it. I believe angular-cli uses webpack, and when using webpack we can use the cheat-code (video2, ~3:20m) to get it to import election.
Alternatively we look at another frontend framework.

If we're to continue with angular, maybe we start from a working angular-electron skeleton, and rebuild the conductor functionality on top of it. I believe angular-cli uses webpack, and when using webpack we can use the cheat-code (video2, ~3:20m) to get it to import election.

Agreed. We'd have to start from a new generator and add in functionality on top.
I was also looking at https://github.com/docker/kitematic, which uses React instead. Could provide some examples. And I was actually thinking the UI works out. Left bar is Global, Project, Project, Project.
I haven't found any good Angular2+Electron repositories to reference. And given that Electron and Angular aren't part of my day job, I'm leaving towards something I can more easily reference.

@mglaman Some updates & a competitor:
I help organize drupal camp asheville, and this year we've accepted a speaker who is discussing react and electron -- https://www.drupalasheville.com/2017/session/react-json-api-drupal-8-my-choice-desktop-application
I've emailed him and asked if he is interested in sprinting on the conductor project with me at the camp to get us jump started into react, he has agreed to help. 👍
In other news, someone recently released a beta for a composer UI: https://www.getcomposercat.com/ -- I don't see anything about that project being open source, and the "beta" tag makes me think they are considering monetizing. But I'm curious how you feel this effects the conductor project.

@daggerhart this should still be developed.
Composercat is amazing. But I do feel it'll be freemium. I think we need an open source tool. Just like how we have VSCode and Atom.

I submitted PR #44 that converts the project into vue.js apps.
Recently played w/ vue for a personal project and really appreciated the low barrier to entry. There are no additional build tools involved, just including the vue.js on each page.
If you want to go with this as the frontend framework, we would be in a really good place to convert the multiple windows into more of a single page app where reusable components share a global state. And since it's so simple, it should be relatively easy to move to another frontend framework in the future if we want.
Let me know what you think

Since we've chosen a js view layer for now, I'm wanting to get thoughts for next steps working with the UI.

Should we adopt a CSS framework to simplify implementation of design. Some options that jump out to me are:

Minimal: PureCSS - https://purecss.io/
Expansive: Vueify (like bootstrap for vue.js, includes components) - https://vuetifyjs.com/

How would you like for me to proceed w/ UI work?
Should I make mockups and submit them in the issue queue for approval? Or will PRs w/ screenshots be fine?

Vuetify works for me


GP model has positive log-likelihood after optimisation

Hi,
My GP model has positive log-likelihood after optimisation and furthermore I don't get any warning message that something could be going wrong. Here is the code to reproduce the problem:
Y = np.array([[ 2.64743328,  1.03329583,  0.76342846, -0.2054021 ,  0.55964613,
         0.37885527, -0.67376998, -0.71804405, -0.77531237, -0.77549353,
        -0.77524664, -0.77258172, -0.68680858,  2.64743328,  1.03329583,
         0.76342846, -0.2054021 ,  0.55964613,  0.37885527, -0.67376998,
        -0.71804405, -0.77531237, -0.77549353, -0.77524664, -0.77258172,
        -0.68680858,  2.64743328,  1.03329583,  0.76342846, -0.2054021 ,
         0.55964613,  0.37885527, -0.67376998, -0.71804405, -0.77531237,
        -0.77549353, -0.77524664, -0.77258172, -0.68680858]])

X = np.array([[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13.5],[15]]*3)

kernel = GPy.kern.RBF(input_dim=1, variance=0.5, lengthscale=1)

m = GPy.models.GPRegression(X, np.array(np.mat(Y)).T, kernel)

m.optimize(messages=True)
m.plot()
m.log_likelihood()

The log-likelihood of the model is<PHONE_NUMBER>3194757. And this is the resulting posterior plot:

Is this an expected behaviour of the GPy package or a possible bug?

Hi @enushi
I am not an expert on this but here are my thoughts - maybe they are helpful:
A positive likelihood shouldn't be problematic as we are maximizing the likelihood.
Also, you are getting the optimizer message
Running L-BFGS-B (Scipy implementation) Code:
  runtime   i      f              |g|
    00s00  0002   4.730200e+01   5.290785e+01
    00s02  0009   1.469069e+01   1.635310e+02
    00s05  0021  -1.818694e+02   3.202323e-02
    00s12  0046  -1.897958e+02   5.945395e+01
Runtime:     00s12
Optimization status: Converged

which looks fine.
After all, I think you are confused by the plot you are getting, which shows that the model's mean does simply is zero.
That however is, because you are setting the variance to 0.5, which is enough to explain the data points based on a zero mean.
Decrease the variance, e.g. to 0.05, and you will see totally different result.
Is this helpful?

Hi @MartinBubel,
Thanks for the explanation! It makes more sense now. Actually I added the line m.optimize_restarts(num_restarts =10, verbose=1) after m.optimize(messages=True) and I get a totally different plot:

However, I noticed that in both cases (i.e., whether I do m.optimize_restarts(num_restarts =10, verbose=1) or not) the posterior means and variances that I get from means, variances = m.predict(np.array([[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13.5],[15]])) are almost exactly the same. Which makes me think that there is something wrong with the first plot as it does not reflect the posterior mean and variance after the optimisation. As it can be seen by doing the following:
Y = np.array([[ 2.64743328,  1.03329583,  0.76342846, -0.2054021 ,  0.55964613,
         0.37885527, -0.67376998, -0.71804405, -0.77531237, -0.77549353,
        -0.77524664, -0.77258172, -0.68680858,  2.64743328,  1.03329583,
         0.76342846, -0.2054021 ,  0.55964613,  0.37885527, -0.67376998,
        -0.71804405, -0.77531237, -0.77549353, -0.77524664, -0.77258172,
        -0.68680858,  2.64743328,  1.03329583,  0.76342846, -0.2054021 ,
         0.55964613,  0.37885527, -0.67376998, -0.71804405, -0.77531237,
        -0.77549353, -0.77524664, -0.77258172, -0.68680858]])

X = np.array([[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13.5],[15]]*3)

kernel = GPy.kern.RBF(input_dim=1, variance=0.5, lengthscale=1)

m = GPy.models.GPRegression(X, np.array(np.mat(Y)).T, kernel)

m.optimize(messages=True)
#m.optimize_restarts(num_restarts =2, verbose=0)
m.plot()
m.log_likelihood()

means, variances = m.predict(np.array([[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13.5],[15]]))

plt.plot(np.array([[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13.5],[15]]), means, c='red')

plt.show()

which outputs the following:

Hi @enushi
Thanks for following up. Now, I see that my previous answer was not that accurate. In fact, there seems nothing bad with your prior variance guess. However, it seems like the optimizer converges to a local optimum. Using a variance prior of 0.05 instead of 0.5 simply yields a better guess for the optimizer and thus results in a better fit. This is particularly surprising since the optimizer converges to a variance of 1, eventually, where you could argue that the initial guess of 0.5 is much closer than 0.05. However, with nonlinear optimization, it is always not that easy so that "closeness" might be misleading.
Restarting the optimization comes with some "globalization", using different (random) initial guesses for the model parameters.
So I would conclude that one should always use restart. However, I would not have expeceted to see such issues with an example as simple as this one but that might be due to my lack of experience here.
I admit, this is not optimal user experience.
However, we are currently busy with "basic maintenance" and there won't be any change to the hyperparmaeter optimization soon.
Ultimately, regarding your question: Yes, this is expected behavior and not a bug, as per default, the LBFGS solver (a local solver) is selected.
Does that help you or are there any questions remaining?
Best regards
Martin

Hi @MartinBubel,
Thanks for your answer, but I don't understand still the discrepancy between what the plot shows and the posterior mean and variance that I get, in the case when I don't use restart.
best regards,
Elio

Hi @enushi
if you don't use restart, the solver converges to a local optima, using variance = 1 and kernel lengthscale near 0. Thus, the posterior mean is dominated by the variance. In the above plot, the filled area is obtained by mean +- 2 * std. If your variance is 1 and your kernel lengthscale is near 0, then the above plot is what you get.
Also, I am not sure if rbf.variance is the posterior or simply an updated prior guess. I am not familiar yet with how GPy is architectured and documentation is scarce.
To my understanding, the GP should have posterior variance at or near 0 at the training locations (not the kernel).
This is the case for the restart case but as you noted, it is not the case for the non-restart case.
Maybe you can use this as a criterion for checking whether the optimization converges to a "good" solution?
That also is something that I would consider being beneficial as information for the user instead of just obtaining a "solver converged successfully" flag...
Also, is it possible that something has got mixed up in the screenshots in your last post?
When I run it with num_restarts > 1, then I get a rbf.lengthscale about 0.89. Also, it looks suspicious that in both the screenshots, the exact same loss function value is achieved.
Are you sure that the screenshots match the code left to it? Maybe it would be better if we iterate some script or notebook.
Maybe you will find more insight if you debug into m.plot().
Best regards
Martin


Support for JS

I have a href="javascript:history.back()" callback in our feature, its not working on ppt, works only if I enter with the browser to powerpoint, anything I can do to fix it? All I want is window.history.back() to work, is it possible?!

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 50a89144-ac19-b28e-2842-5e2cbdb1cb00
Version Independent ID: cb59df19-9c22-de2c-0c46-7a1403312987
Content: Build your first PowerPoint add-in - Office Add-ins
Content Source: docs/quickstarts/powerpoint-quickstart.md
Product: powerpoint
GitHub Login: @o365devx
Microsoft Alias: o365devx

@z3r0-on3 thanks for your interest in Office Add-ins development. If you haven't already done so, I'd recommend that you post this question to Stack Overflow, tagged with the office-js tag.
Issues here in the OfficeDev/office-js-docs-pr GitHub repository are intended for reporting problems with the API documentation; how-to questions are better suited for Stack Overflow, where you'll not only be able to reach a broader audience of folks who have expertise in the area, but will also enable others to benefit from any answers that are provided there.


Identifying Publicly Accessible Data Storage

Description:
This PR showcases our efforts and findings in identifying unsecured data storage instances.
Screenshots Included:

M11109816xM11115825-shodan.png: This screenshot shows our Shodan query (product:redis -NOAUTH keys) results, highlighting unprotected Redis instances. We found and tested one server that indeed had no authentication, as demonstrated with the redis-cli command.

M11109816xM11115825-cloud-storage-finder.png: We used a wordlist from this GitHub repository to uncover publicly accessible S3 files. The screenshot captures the instances we found.

M11109816xM11115825-firepit-splint.png: This image documents our experience with Firepit and Splint tools.

cc: @VStev
Checks

[x] Your YAML file has required fields as listed in Specs
[x] All checks have passed yaml-lint passed
[x] You agree to contribute your work under MIT license

I still dont know what to do with the firepit tbh
I only know splint converts logs to stix lel


Add Support for Duux Whisper Flex Fan

Hi,
I own a Duux Whisper Flex Fan and i can toggle the fan On/Off in HomeKit but I cannot control the fan speeds or modes (standard/nature/sleep) or oscillating modes (horizontal/vertical swing).
These fan modes and oscillating modes do show up and are controllable from the Tuya Smart App, but are not available in HomeKit.

Hi @appletrapz , Thank you for your feedback.
Under normal circumstances, Fanv2Accessory supports the following functions through access to deviceConfig.status:  Active, targetFANState, LockPhysicalControls, RotationDirection, RotationSpeed, and SwingMode
Please provide detailed status information of the device so that we can help you resolve this issue.

@Hanh94 this is the log if it helps?
TuyaOpenAPI request: method = get, endpoint = https://openapi.tuyaeu.com, path = /v1.0/devices/functions, params = {"device_ids":"42176013e868e7833640"}, body = null, headers = {"t":"1624248706519","client_id":"xxx","sign":"xxx","sign_method":"HMAC-SHA256","access_token":"xxx","lang":"en","dev_lang":"javascript","dev_channel":"homebridge","devVersion":"1.1.9"}
TuyaOpenAPI response: {"result":[{"category":"fs","devices":["42176013e868e7833640"],"functions":[{"code":"switch","desc":"switch","name":"switch","type":"Boolean","values":"{}"},{"code":"fan_speed","desc":"fan speed","name":"fan speed","type":"Enum","values":"{\"range\":[\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\",\"20\",\"21\",\"22\",\"23\",\"24\",\"25\",\"26\"]}"}],"product_id":"dune79w7bsu6dg3e"}],"success":true,"t":1624248706957} path = /v1.0/devices/functions

Hi @appletrapz ,Thank you for your feedback.
From the device information you provided, this device only supports switch and fan_speed. We have already supported the fan_speed attribute of the old version of the fan device in the new version v1.2.0, you can update and try again.

Hi, my device supports fan_horizontal, fan_vertical, mode, and switch
this is my schema from a different plugin homebridge-tuya-lan
Intercepted config from Tuya

Found 1 device:
[
  {
    name: 'Whisper Flex',
    id: '42176013e868e7833640',
    key: 'xxx',
    def: {
      schema: '[{"mode":"rw","code":"switch","name":"\\u5f00\\u5173","property":{"type":"bool"},"iconname":"icon-power","id":1,"type":"obj","desc":"1\\u5f00;\\n0\\u5173;"},{"mode":"rw","code":"mode","name":"\\u5de5\\u4f5c\\u6a21\\u5f0f","property":{"range":["0","1","2"],"type":"enum"},"iconname":"icon-fengli","id":2,"type":"obj","desc":"0\\u6b63\\u5e38\\u98ce;\\n1\\u81ea\\u7136\\u98ce;\\n2\\u7761\\u7720\\u98ce;"},{"mode":"rw","code":"fan_speed","name":"\\u98ce\\u901f","property":{"range":["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26"],"type":"enum"},"iconname":"icon-a_fan_low","id":3,"type":"obj","desc":"\\u3010\\u5fc5\\u9009\\u3011\\u53ef\\u6839\\u636e\\u5b9e\\u9645\\u6863\\u4f4d\\u9700\\u6c42\\u6269\\u5c55"},{"mode":"rw","code":"fan_horizontal","name":"\\u5de6\\u53f3\\u6446\\u98ce","property":{"range":["0","1"],"type":"enum"},"iconname":"icon-tcl_function_vs1","id":4,"type":"obj","desc":"1\\u5f00;\\n0\\u5173"},{"mode":"rw","code":"fan_vertical","name":"\\u4e0a\\u4e0b\\u6446\\u98ce","property":{"range":["0","1"],"type":"enum"},"iconname":"icon-dp_shake","id":5,"type":"obj","desc":"1\\u5f00;\\n0\\u5173"},{"mode":"rw","code":"countdown","name":"\\u5012\\u8ba1\\u65f6","property":{"range":["0","1","2","3","4","5","6","7","8","9","10","11","12"],"type":"enum"},"iconname":"icon-dp_time2","id":6,"type":"obj","desc":"0\\uff1a\\u53d6\\u6d88\\n\\u5355\\u4f4d\\u5c0f\\u65f6"},{"mode":"ro","code":"countdown_left","name":"\\u5012\\u8ba1\\u65f6\\u5269\\u4f59\\u65f6\\u95f4","property":{"unit":"\\u5c0f\\u65f6","min":0,"max":12,"scale":0,"step":1,"type":"value"},"iconname":"icon-dp_time3","id":7,"type":"obj","desc":""}]',
    },
  },
]

Hi, @Hanh94  I just updated the plugin to v1.2.0 and it now gives me the option in HomeKit to change the fan speed but nothing happens when i adjust the speed.
log
TuyaOpenAPI request: method = post, endpoint = https://openapi.tuyaeu.com, path = /v1.0/devices/42176013e868e7833640/commands, params = null, body = {"commands":[{"code":"fan_speed","value":4}]}, headers = {"t":"1624379115462","client_id":"xxx","sign":"xxx","sign_method":"HMAC-SHA256","access_token":"xxx","lang":"en","dev_lang":"javascript","dev_channel":"homebridge","devVersion":"1.2.0"}
TuyaOpenAPI request: method = post, endpoint = https://openapi.tuyaeu.com, path = /v1.0/devices/42176013e868e7833640/commands, params = null, body = {"commands":[{"code":"switch","value":true}]}, headers = {"t":"1624379115484","client_id":"xxx","sign":"xxx","sign_method":"HMAC-SHA256","access_token":"xxx","lang":"en","dev_lang":"javascript","dev_channel":"homebridge","devVersion":"1.2.0"}
TuyaOpenAPI response: {"code":1104,"msg":"type is incorrect","success":false,"t":1624379115778} path = /v1.0/devices/42176013e868e7833640/commands
TuyaOpenAPI response: {"result":true,"success":true,"t":1624379115814} path = /v1.0/devices/42176013e868e7833640/commands

Hi, @Hanh94
quick update after updating to v1.2.0 I've noticed the plugin now shows the correct functions but like I said before changing the fan speed inside of HomeKit doesn't do anything.
TuyaOpenAPI response: {"result":[{"category":"fs","devices":["42176013e868e7833640"],"functions":[{"code":"switch","desc":"switch","name":"switch","type":"Boolean","values":"{}"},{"code":"fan_speed","desc":"fan speed","name":"fan speed","type":"Enum","values":"{\"range\":[\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\",\"20\",\"21\",\"22\",\"23\",\"24\",\"25\",\"26\"]}"},{"code":"mode","desc":"mode","name":"mode","type":"Enum","values":"{\"range\":[\"nature\",\"sleep\",\"smart\"]}"},{"code":"switch_horizontal","desc":"switch horizontal","name":"switch horizontal","type":"Boolean","values":"{}"},{"code":"switch_vertical","desc":"switch vertical","name":"switch vertical","type":"Boolean","values":"{}"},{"code":"countdown","desc":"countdown","name":"countdown","type":"Enum","values":"{\"range\":[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\"]}"}],"product_id":"dune79w7bsu6dg3e"}],"success":true,"t":1624461550586} path = /v1.0/devices/functions

Hi @appletrapz ,We have modified your device information in the latest version, please update and try again, if you have any questions, please contact us

Hi @Hanh94, I can confirm v1.2.1 fixes the fan speed, the only thing I've noticed is when turning Oscillate OFF it doesn't stay in the OFF position it always defaults back to the ON position inside of HomeKit. so in order to turn Oscillate ON I first have to toggle it OFF and then back ON but apart from that everything works fine

Hi @Hanh94, I can confirm v1.2.1 fixes the fan speed, the only thing I've noticed is when turning Oscillate OFF it doesn't stay in the OFF position it always defaults back to the ON position inside of HomeKit. so in order to turn Oscillate ON I first have to toggle it OFF and then back ON but apart from that everything works fine

Hi @appletrapz , Sorry for taking so long to reply.
Please provide the TuyaOpenAPI response log returned by the /v1.0/iot-01/associated-users/devices

Hi @appletrapz , Since we haven't received your reply for a long time, we think our latest version should have solved your problem. We will close this issue first. If there is any problem, you can contact us at any time.


PHP-IMDb-Scraper

image poster not show

+1
Rather than waiting for a fix (last commit and PR was a while ago), I forked the project, fixed the poster scraping and uploaded a new demo site: https://github.com/dhobi/PHP-IMDb-Scraper

Thanks

Dear script stop working check it

I'm not sure if the creator still watches this repository. Anyway, fixed on https://github.com/dhobi/PHP-IMDb-Scraper.

sir i check it and i'm using it on my web today its stop working
not fetching showing error
No Title found in Search Results!

you change some codes but it's only get title
image
genres
run time
release  date
actors
and
etc not work

ok, I see. Could you open an issue describing what's missing on my fork? Thx.

thanks sir


How to expose the webportal in the public network？

Short summary about the issue/question:I try to access Webportal through public address，I got the login page，but I can't sign in because login request points to intranet address。
Brief what process you are following:I edit configuriton，The following configuration has been added：
cluster:
  common:
    getway-uri: "http://public-address"

and restart pai，but it doesn't work。What should I do?
By the way, dev-box version is 0.13.0

How to reproduce it:

OpenPAI Environment:

OpenPAI version:v0.14.0
Cloud provider or hardware configuration:a master without GPU and a worker with GPU k80
OS (e.g. from /etc/os-release):ubuntu 16.04
Kernel (e.g. uname -a):4.4.0-1096-aws
Hardware (e.g. core number, memory size, storage size, GPU type etc.):
Others:

Anything else we need to know:

We didn't support such a config.
Please visit webportal through pylon.

We didn't support such a config.
Please visit webportal through pylon.
Sorry about that，I'm a green hand.

Sorry about that，I'm a green hand.

Sorry about that，I'm a green hand.

no worries, please try what pylon.


Knip v2

For a while now I've been working on a major refactoring of the TypeScript backend in Knip. Which enables a cool new feature: compilers (i.e. transpilers or preprocessors if you prefer).
In general, Knip is now much faster while improving correctness. I also have more control to further improve them.
TypeScript Backend
While ts-morph did an excellent job abstracting away a lot of complexity of the TypeScript machinery, it eventually became also a bit limiting in terms of performance optimizations and supporting new features such as compilers.
Knip v2 has its own TypeScript v5 based file manager, compiler host and language service host. Most of this is inspired by ts-morph, and the Svelte Language Tools and Astro Language Tools. All of this could be kept relatively basic, as Knip only reads files once (no need to cache or write files). In the future, Knip could maybe automatically --fix things like ESLint does, such as remove the export keyword for unused exports and uninstall unused dependencies.
Knip v1 uses all sorts of helpers to find things like namespaces and class members, but this is not optimal. Knip v2 traverses the AST of each used file only once, and caches some import and export maps to prevent potentially expensive calls to TypeScript's languageService.findReferences() (the function that also powers "Find All References" in your IDE).
Compilers
The new file manager allows to preprocess file contents. Knip can now be configured to compile for instance MDX, Svelte or Astro files so these files and their imports and exports become part of the analysis. Adding a compiler is possible by using a knip.ts (or knip.js) config file and providing a function for each file extension that should be compiled:
import { compileSync, compileAsync } from 'compile-to-js';

export default {
  compilers: {
    md: text => compileSync(text),
    mdx: text => compileAsync(text
  }
}

The signature of a compiler function is string => string, ie. the function will be called with the file contents as a string and should return the compiled JavaScript or TypeScript as a string.
The extensions (.md and .mdx in the example) are automatically added to the default entry and project glob patterns. But when using custom entry and project patterns they should be included explicitly.
Both synchronous and async compiler functions are supported.
Synchronous functions are preferable since the whole TypeScript machinery is synchronous, and the relevant source files don't need to be pre-compiled ahead of time.
Compiler functions returning a promise needs to be placed in asyncCompilers. The async functions can be located there explicitly too.

import { compileSync } from '@mdx-js/mdx';

export default {
  asyncCompilers: {
    md: text => Promise.resolve(text),
  },
};

Personally I like the explicitness of this API, and the idea that usually no extra dependencies are necessary since the related compilers are probably already in the project (including their correct version). On the other hand, it might make sense to start providing plugins for compilers later on, mostly for easy of configuration. Maybe something like this could be nice:
{
  "compilers": ["@knip/mdx"]
}

New Features

#60
#61
#68

Bug fixes

#62
#65
#67

Less dependencies

ts-morph, ts-morph-helpers and get-tsconfig, by lifting typescript to dependencies.
@esbuild-kit/esm-loader, esbuild and esbuild-register have been replaced by jiti; and with that also
patch-package to patch esbuild-register is no longer necessary.
eslint was recently moved from dependencies to devDependencies.

Breaking Changes
There are some potentially breaking changes. Configuration schema should be unaffected (only extended).

Knip now runs on every workspace automatically, except for the ones in ignoreWorkspaces: [].
The --include-entry-exports flag has been removed. Please let me know if you think it should be restored.
The "Unlisted or unresolved dependencies" is split in "Unlisted dependencies" and "Unresolved imports"
Bug fixes and increased correctness impact output, potentially causing CI to now succeed or fail.

How to use
npm install knip@alpha

It will help the project a lot if you run this new version on your projects. Any type of feedback is welcome :)

The first release is v2.0.0-alpha.0.
If you're curious, you can try it with npm install knip@alpha

Tagging @voxpelli, @JoshuaKGoldberg, @RebeccaStevens, @gajus, @jalopez526 as you might be interested in the new fixes and/or features :)

Truly amazing project!

I think it would be better to use src in this example instead of lib.
https://github.com/webpro/knip/blob/v2/README.md?plain=1#L67-L76

New docs for v2:

Writing a plugin: https://github.com/webpro/knip/blob/v2/docs/writing-a-plugin.md
Compilers: https://github.com/webpro/knip/blob/v2/docs/compilers.md

Just released v2! Tomorrow I will look into and close related tickets where applicable.
Special thanks to @RebeccaStevens for adding lots and lots of improvements, plugins and tests! This release wouldn't nearly be as good without your contributions.

The first release is v2.0.0-alpha.0.
If you're curious, you can try it with npm install knip@next

Can we install this via yarn?

You're commenting on a very old issue, but yes. Please see https://knip.dev/overview/getting-started.


PhantomCSS is moving the HTML elements around

Edit: I discovered this issue is only happening with esfiddle.net.
First time doing visual regression testing.
Problem: when I use a visual regression testing tool such as PhantomCSS, the screenshots produced contain the website with dramatically moved HTML elements.
Problem image:

How it should really look like:

Tools: PhantomCSS. The same problem happens with BackstopJS.
URL: http://esfiddle.net/
What can I do to prevent the problem image?

Its because you're using the flex CSS property.  Unfortunately PhantomJS doesn't support flex. Alternatives?, PhantomCSS with SlimerJS should work https://github.com/Huddle/PhantomCSS#slimerjs. I'm not sure if any VRT tooling is available for in Chrome headless yet, but worth a look. You could also try https://github.com/webdriverio/webdrivercss.


V2.0.7: Switch turned on upon adapter start

in Version 2.0.7, the switch is turned on, if the adapter is restarted, i.e. also on ioBroker restart.
Also, the change log does not include info about V2.0.7
Christoph S

installed version info


Default collections inconsistent for new search and new query in a search

Hi guys,
Noticed a small discrepancy: for queries entered from main https://explorer.mediacloud.org/, the default collection is "U.S. Top Online News", but for new queries added to the same search, the default collection becomes "U.S. Top News" (note the lack of "Online").
To reproduce:

Go to https://explorer.mediacloud.org/
Enter any query into the search field, e.g. teen*, click Search
Search page opens with the default collection set as "U.S. Top Online News" in the Select media fieldset
Click Add query
For the newly created query, the default collection gets set to "U.S. Top News" (sans "Online")

duplicate of #968 - fixed

Thanks Cindy!

On 20 Mar 2018, at 21:34, cindyb<EMAIL_ADDRESS>wrote:
duplicate of #968 - fixed
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


new tab position depends on active tab

v1.11.0-insider
If I have two files 'pinned' open (keep open), when I open a third:

new file opens on end if I got second file active
new file opens in between two pinned files if first is active

I am not sure if working as intended?
but would anyone else appreciate an option to make new tab position independent of active tab?
Thanks.
  "workbench.editor.newTabs": right|left|active,
https://github.com/Microsoft/vscode/issues/12622

This works as designed, we open the tab close to the location of the currently active tab. You can control this via the "workbench.editor.openPositioning" setting.


[infra-proxy-service] Client list using search API

:nut_and_bolt: Description: What code changed, and why?

Client list using search API with pagination support.

It would not break the existing list API.

It will fetch all clients available in the system if no params are given.

Search query works with the following request params

search_query.q: Search query string have to in the format like *:*, name:* or name:node-* etc.
search_query.page: page number.
search_query.per_page: number of records per page.

gRPC API

chef-automate dev grpcurl infra-proxy-service chef.automate.domain.infra_proxy.service.InfraProxyService.GetClients -- -d '{"server_id": "chef-server-dev-test", "org_id": "chef-org-dev", "search_query": {"q": "name:*", "page": 0, "per_page": 1}}'
{
  "clients": [
    {
      "name": "chef-load-25"
    }
  ],
  "total": 56
}

:chains: Related Resources
Fixes: #4628
:+1: Definition of Done

Client list API is now available with search and pagination.

:athletic_shoe: How to Build and Test the Change
Steps to build:

rebuild components/infra-proxy-service
rebuild components/automate-gateway

Steps to test:

To add data using 3rd internal steps https://github.com/chef/automate/blob/master/dev-docs/adding-data/adding_test_data.md#adding-data-to-infra-views

Client list API without a search query

curl -sSkH "api-token: $(get_admin_token)" https://a2-dev.test/api/v0/infra/servers/chef-server-dev-test/orgs/chef-org-dev/clients?pretty
{
  "clients": [
    {
      "name": "chef-load-27"
    },
    {
      "name": "chef-load-25"
    },
    {
      "name": "chef-load-29"
    },
   ...

  ],
  "total": 56
}

Client list API with a search query.

curl -sSkH "api-token: $(get_admin_token)" https://a2-dev.test/api/v0/infra/servers/chef-server-dev-test/orgs/chef-org-dev/clients?search_query.q=name:node-*
{
  "clients": [
    {
      "name": "node-learn_chef_apache2"
    },
    {
      "name": "node-git"
    },
    {
      "name": "node-push-job"
    },
   ...

  ],
  "total": 7
}

:white_check_mark: Checklist

[x] I have read the CONTRIBUTING document.
[ ] Tests added/updated?
[ ] Docs added/updated?
[x] All commits have been signed-off for the Developer Certification of Origin.

:camera: Screenshots, if applicable
Signed-off-by: Vivek Singh<EMAIL_ADDRESS>

this is the curl request for search
curl --location --request GET 'https://a2-dev.test/api/v0/infra/servers//orgs//clients?search_query.q=name:*&search_query.start=1&search_query.rows=3'
--header 'api-token: '
--data-raw ''

this is the curl request for search
curl --location --request GET 'https://a2-dev.test/api/v0/infra/servers//orgs//clients?search_query.q=name:*&search_query.start=1&search_query.rows=3'
--header 'api-token: '
--data-raw ''

Hey @vsingh-msys is it possible to add some integration tests for these APIs?

Hey @vsingh-msys is it possible to add some integration tests for these APIs?

From a product perspective I think this functionality could be potentially confusing. It is getting a list of clients from the infra-server but it might differ from the list of clients in automate. Would it make more sense to have automate be the source of truth for clients and pull any missing clients in from infra server?

From a product perspective I think this functionality could be potentially confusing. It is getting a list of clients from the infra-server but it might differ from the list of clients in automate. Would it make more sense to have automate be the source of truth for clients and pull any missing clients in from infra server?

@kmacgugan, yeah it is a bit of confusing terms with reference to Automate client runs.
In Automate infra views, clients mean an API client which used to provide auth to communicate between nodes and infra clients as it falls under infra-proxy-service might we can distinguish
it named based on chef-server API https://docs.chef.io/server/api_chef_server/#get-10 & manage also naming the same.

@jonong1972 any suggestions ^^^

@vsingh-msys @kmacgugan I'm confused on the question. I'm reading two different items here. One is a back-end question the other is a naming question?

@jonong1972 yes, one is for backend and another is for UI in chef manage, but both pointed the object, so in order to maintain the parity, keeping the same name.


[5.3] Fix StartSession middleware for test cases

Fix StartSession middleware to get it working with assertSessionHasErrors() on test cases
https://github.com/laravel/framework/issues/15305

We don't need to change the session middleware just to get a test to work.


Test new Canvas text metrics

Still no stable browser support (see https://developer.mozilla.org/en-US/docs/Web/API/TextMetrics).

@jonathanolson, can this issue be closed now because of https://github.com/phetsims/scenery/issues/16?


[FEATURE] Faraday 2.x support

The OpenSearch gem depends on Faraday 1.x, which conflicts with newer gems which require 2.x.
It seems like 2.x is largely compatible with 1.x, so it's feasible that both can be supported simultaneously.
For now, we've downgraded our application to Faraday 1.x.
Thanks for this library!

Faraday is never a trivial upgrade unfortunately :( PRs welcome!

@dblock I reviewed all the changes from Faraday 1 to 2, and its use in opensearch-transport, and verified that the client code doesn't use any of the features that changed in Faraday 2. The actual http connection code is the same.
The only significant change is that the adapter gems are no longer included in Faraday 2, except the one for Net::HTTP, so you need to include the adapter gem explicitly if you want to use it. This meant that the adapter autodetection in the client couldn't assume that the adapter was defined just because the HTTP library being adapted was defined, which to be fair it shouldn't have assumed even in Faraday 1. This turns out to mostly be a documentation problem.
Also, now that the adapter gems are optional, they tend to include the adapted HTTP library as a dependency now, while in Faraday 1 they didn't, so to be compatible with both Faraday 1 and 2 you should make sure both the http gem and the adapter gem are included. These changes mostly affected the README and the spec setup code (needed to add some requires and development gems).
I made PRs for opensearch-transport 1.x (#75) and 2.x (#76). I did the PR for the 1.x gems because people still need to support OpenSearch server 1 because at least Amazon hasn't updated their service to support OpenSearch server 2 yet. Some people (presumably) need to clean up their use of deprecated features before they can upgrade anyway, and the 2.x client gems don't support the deprecated features even if they do support using the old services when using the non-deprecated features.
There is no significant behavioral change in the PRs, aside from making the HTTP library detection less likely to fail, so it should be semver compatible even for a 1.0.x or 2.0.x release.

@BrianHawley Amazing, thank you so much. Let's start with main - I made some comments, I'll keep watching for your updates.

@VachaShah and @dblock this change doesn't remove support for Faraday 1, and doesn't affect the connection and data transfer code - I made a point of not changing any test assertions, to make sure.
However, if someone was only referencing the opensearch gem and some non-default http gem like Typhoeus, that non-default gem won't be used without adding the adapter for the gem. This shouldn't break anything in the client, but it might be an unexpected performance degradation. This is a change in the faraday gem, not opensearch, so it's debatable as to whether this breaks semver.
I don't really consider "constrains Faraday to 1.x" to be a desired feature of the opensearch-transport gem, so undoing it was worth making the PR. I made sure to keep Faraday 1 compatibility just so it wouldn't break anything, and it will still use  Faraday 1 on Ruby 2.5 (and the Ruby 2.6 or JRuby and Typhoeus combo, until the maker of faraday-typhoeus merges my PR). I'm OK either way what version gets assigned to the change, as long as it comes out in a reasonable time.
The counterargument to making this into 2.1.x and 1.1.x releases is that for something that doesn't change any intentional behavior of the opensearch-transport gem in its own codebase, it would double your maintenance effort to support 1.0.x, 1.1.x, 2.0.x, and 2.1.x. The alternative is to just let people constrain their own faraday version in their Gemfile, and save the 2.1 update for behavioral changes in the opensearch gems themselves (like opensearch server compatibility changes).


Requirements gathering and design for yield generation from cUSD staking

mapping process of 3 components:

contracts
valora integration
governance process for funding

Expected Behavior
Please describe the behavior you are expecting
Current Behavior
What is the current behavior?

Closing because this is now a dup of issue: https://github.com/celo-org/celo-monorepo/issues/5450


lightning.tensor mps docs

Before submitting
Please complete the following checklist when submitting a PR:

[ ] All new features must include a unit test.
If you've fixed a bug or added code that should be tested, add a test to the
tests directory!

[x] All new functions and code must be clearly commented and documented.
If you do make documentation changes, make sure that the docs build and
render correctly by running make docs.

[ ] Ensure that the test suite passes, by running make test.

[x] Add a new entry to the .github/CHANGELOG.md file, summarizing the
change, and including a link back to the PR.

[x] Ensure that code is properly formatted by running make format.

When all the above are checked, delete everything above the dashed
line and fill in the pull request template.

Context:
Add lightning.tensor documentation.
The requirement of this doc is Basic documentation and developer-facing notes
[SC-62441]
Description of the Change:
Benefits:
Possible Drawbacks:
Related GitHub Issues:

Feel free to tag me for review once this is ready :)

Thanks @multiphaseCFD !
I left some minor comments, questions and suggestions.
Currently, we are missing explanations (or references to explanations) for the hyper parameters that a user can and should set in this device, bond dimension etc. I think it would also really help in the case of this device to provide some simple example code that is setting up the device with some hyper parameters and running some circuit.

Thanks @Qottmann for the prompt review!  Will add code example and explanations on hyper parameters.

I saw that this would be a deviation to what we provide in lightning-qubit, but I think it makes sense here since these hyper parameters are not standard to users (whereas what the user has to set for lightning-qubit is mostly analogous to default qubit).

Just want to give me some updates on the decision from management and seamless switch from default.tensor to lightning.tensor is required. This means ligthning.tensor's UI should be sticked with default.tensor instead of lightning.qubit.

Just want to give you some updates on the decision from management and seamless switch from default.tensor to lightning.tensor is required. This means ligthning.tensor's UI should be aligned with default.tensor instead of lightning.qubit.

Great, in that case providing examples and detailing the hyper parameters is well-aligned with the default.tensor docs 👍

Thanks again @multiphaseCFD !
As discussed on Slack, I cannot install the device as my Xanadu laptop has an Intel graphic card. For the context, I get the error:
    CMake Error at /home/pietropaolo.frisoni/anaconda3/envs/PennyLane/lib/python3.9/site-packages/cmake/data/share/cmake-3.28/Modules/FindCUDAToolkit.cmake:855 (message):
      Could not find nvcc, please set CUDAToolkit_ROOT.

Unfortunately, Nvidia GPUs only.

But I cannot install nvcc. I think I should not be the final reviewer for this PR. Hopefully, someone else can check the installation procedure on a different system with an NVIDIA GPU card from scratch 👍

Good point!

Thannks @vincentmr ! Would you please help to check if lightning.tensor can be installed following the instructions in README.rst ? Thanks


sensors: refactor common corrections and rotation helpers

This PR refactors the duplicated board rotation and sensor correction (if available) handling in the sensors module.
It saves about 1.5 kB of flash.

BTW, isn't vehicle_imu bias compensated? I understand that this data is consumed by the estimator, who is responsible for bias estimation, however it would be useful to have unbiased data in vehicle_imu in case it is consumed elsewhere.

The vehicle_imu's are without bias, however we're publishing one for each IMU (accel + gyro paired), so it's not necessarily appropriate for other usage. At the moment sensor_combined is still that primary IMU that can be used systemwide. I haven't quite decided on the least bad option for carrying all options semi-intuitively.

This was bench tested.