xgboost inference with spark_apply stuck at the last task

I am inferencing XGB model with spark_apply, it seems quickly complete all inference task, but hold on for many hours (10+ hours) at last task.
My input dataset is very large, up to 2 billion user related 20+ features. The original XGB model can inference a small dataset, however, when the data volume scaled, the job is always stuck at the last step.
I check the sparklyr source code about workerdd.R, it seems to wait some locks?

Need some help!
18/10/28 01:04:44 INFO sparklyr: RScript (7253) updating 185709 rows
18/10/28 01:04:52 INFO sparklyr: RScript (862) computing closure

Attaching package: ‘dplyr’

The following objects are masked from ‘package:stats’:

    filter, lag

The following objects are masked from ‘package:base’:

    intersect, setdiff, setequal, union

Attaching package: ‘xgboost’

The following object is masked from ‘package:dplyr’:

    slice

18/10/28 01:04:53 INFO sparklyr: RScript (862) computed closure
18/10/28 01:04:53 INFO sparklyr: RScript (862) updating 185928 rows
18/10/28 01:04:55 INFO sparklyr: RScript (5785) computing closure

Attaching package: ‘dplyr’

The following objects are masked from ‘package:stats’:

    filter, lag

The following objects are masked from ‘package:base’:

    intersect, setdiff, setequal, union

Attaching package: ‘xgboost’

The following object is masked from ‘package:dplyr’:

    slice

18/10/28 01:04:56 INFO sparklyr: RScript (5785) computed closure
18/10/28 01:04:56 INFO sparklyr: RScript (5785) updating 185907 rows
18/10/28 01:05:34 INFO sparklyr: RScript (8009) updated 186186 rows
18/10/28 01:05:34 INFO sparklyr: RScript (8009) finished apply
18/10/28 01:05:34 INFO sparklyr: RScript (8009) finished
18/10/28 01:05:34 INFO sparklyr: Worker (8009) completed R process
18/10/28 01:05:34 INFO sparklyr: Session (8009) is terminating backend
18/10/28 01:05:34 INFO sparklyr: Worker (8009) completed wait using lock for RScript
18/10/28 01:05:34 INFO sparklyr: Worker (8009) is returning RDD iterator with 186186 rows
18/10/28 01:05:50 INFO sparklyr: RScript (2051) updated 185465 rows
18/10/28 01:05:50 INFO sparklyr: RScript (2051) finished apply
18/10/28 01:05:50 INFO sparklyr: RScript (2051) finished
18/10/28 01:05:50 INFO sparklyr: Worker (2051) completed R process
18/10/28 01:05:50 INFO sparklyr: Session (2051) is terminating backend
18/10/28 01:05:50 INFO sparklyr: Worker (2051) completed wait using lock for RScript
18/10/28 01:05:50 INFO sparklyr: Worker (2051) is returning RDD iterator with 185465 rows
18/10/28 01:06:14 INFO sparklyr: RScript (7145) updated 184821 rows
18/10/28 01:06:14 INFO sparklyr: RScript (7145) finished apply
18/10/28 01:06:14 INFO sparklyr: RScript (7145) finished
18/10/28 01:06:14 INFO sparklyr: Worker (7145) completed R process
18/10/28 01:06:14 INFO sparklyr: Worker (7145) completed wait using lock for RScript
18/10/28 01:06:14 INFO sparklyr: Worker (7145) is returning RDD iterator with 184821 rows
18/10/28 01:06:14 INFO sparklyr: Session (7145) is terminating backend
18/10/28 01:06:31 INFO sparklyr: RScript (8617) updated 185223 rows
18/10/28 01:06:31 INFO sparklyr: RScript (8617) finished apply
18/10/28 01:06:31 INFO sparklyr: RScript (8617) finished
18/10/28 01:06:31 INFO sparklyr: Session (8617) is terminating backend
18/10/28 01:06:31 INFO sparklyr: Worker (8617) completed R process
18/10/28 01:06:31 INFO sparklyr: Worker (8617) completed wait using lock for RScript
18/10/28 01:06:31 INFO sparklyr: Worker (8617) is returning RDD iterator with 185223 rows
18/10/28 01:06:37 INFO sparklyr: RScript (2596) updated 185802 rows
18/10/28 01:06:37 INFO sparklyr: RScript (2596) finished apply
18/10/28 01:06:37 INFO sparklyr: RScript (2596) finished
18/10/28 01:06:37 INFO sparklyr: Worker (2596) completed R process
18/10/28 01:06:37 INFO sparklyr: Worker (2596) completed wait using lock for RScript
18/10/28 01:06:37 INFO sparklyr: Worker (2596) is returning RDD iterator with 185802 rows
18/10/28 01:06:37 INFO sparklyr: Session (2596) is terminating backend
18/10/28 01:07:01 INFO sparklyr: RScript (862) updated 185928 rows
18/10/28 01:07:01 INFO sparklyr: RScript (862) finished apply
18/10/28 01:07:01 INFO sparklyr: RScript (862) finished
18/10/28 01:07:01 INFO sparklyr: RScript (5785) updated 185907 rows
18/10/28 01:07:01 INFO sparklyr: RScript (5785) finished apply
18/10/28 01:07:01 INFO sparklyr: RScript (5785) finished
18/10/28 01:07:01 INFO sparklyr: Worker (862) completed R process
18/10/28 01:07:01 INFO sparklyr: Worker (862) completed wait using lock for RScript
18/10/28 01:07:01 INFO sparklyr: Session (862) is terminating backend
18/10/28 01:07:01 INFO sparklyr: Worker (862) is returning RDD iterator with 185928 rows
18/10/28 01:07:01 INFO sparklyr: Worker (5785) completed R process
18/10/28 01:07:01 INFO sparklyr: Worker (5785) completed wait using lock for RScript
18/10/28 01:07:01 INFO sparklyr: Worker (5785) is returning RDD iterator with 185907 rows
18/10/28 01:07:01 INFO sparklyr: Session (5785) is terminating backend

Here is my code example:
bst <- xgboost::xgb.load("project/models/xgboost.model")

inference <- function(raw_ft_bkt_sdf,model){
  library(dplyr)
  library(xgboost)
  tryCatch({
    pred <- raw_ft_bkt_sdf %>%
     select(-uid) %>%
     as.matrix() %>%
     xgboost::xgb.DMatrix() %>%
     predict(model,.)
  },error={
    pred <- rep(-1,nrow(raw_ft_bkt_sdf))
  })

res3 <- spark_apply(x = ft_union_price %>%
sdf_repartition(partitions = 1500, partition_by = "uid"),
                   f = inference,
                   packages = F,
                   memory = F,
                   names = c("uid",
                               "action_1",
                               "pred"), #
                   context = {model <- bst})

res3 %>%
  dplyr::group_by(pred) %>%
  dplyr::summarise(cnt = n())

Session info:
R version 3.4.2 (2017-09-28)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: CentOS Linux 7 (Core)

Matrix products: default
BLAS: /data/opt/R/3.4.2/lib64/R/lib/libRblas.so
LAPACK: /data/opt/R/3.4.2/lib64/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8    LC_PAPER=en_US.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] dplyr_0.7.7         sparklyr_<IP_ADDRESS>00

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.19      compiler_3.4.2    pillar_1.1.0      later_0.7.5       dbplyr_1.2.2      bindr_0.1.1
 [7] r2d3_0.2.2        base64enc_0.1-3   tools_3.4.2       digest_0.6.18     jsonlite_1.5      tibble_1.4.2
[13] nlme_3.1-131      lattice_0.20-35   pkgconfig_2.0.2   rlang_<IP_ADDRESS>     Matrix_1.2-14     shiny_1.1.0
[19] DBI_1.0.0         rstudioapi_0.8    parallel_3.4.2    yaml_2.2.0        bindrcpp_0.2.2    withr_<IP_ADDRESS>00
[25] knitr_1.20        httr_1.3.1        htmlwidgets_1.3   xgboost_0.71.2    rprojroot_1.3-2   grid_3.4.2
[31] tidyselect_0.2.4  reticulate_1.7.1  data.table_1.11.8 glue_1.3.0        forge_0.1.0       R6_2.3.0
[37] purrr_0.2.5       tidyr_0.8.1       magrittr_1.5      backports_1.1.2   promises_1.0.1    htmltools_0.3.6
[43] assertthat_0.2.0  mime_0.6          xtable_1.8-3      httpuv_1.4.5      config_0.3        stringi_1.2.4
[49] openssl_1.0.2     lazyeval_0.2.1    broom_0.5.0

it seems the sparklyr bug, I switch to pyspark version, all works very well.

@harryprince have you run something like:
ft_union_price %>%
  dplyr::group_by(uid) %>%
  dplyr::summarise(cnt = n()) %>%
  arrange(desc(n)) %>%
  head()

To make sure there is no partition that has a significant amount of rows compared to the other partitions? Maybe there are a lot of uid NULL values that is taking a really long time to process?
Also, can you reproduce without using xgboost? Maybe with something like:
spark_apply(ft_union_price, function(raw_ft_bkt_sdf,model){
   Sys.sleep(5)
   data.frame(uid = 1:1000, action_1 = 1:1000, pred = 1:1000)
})

Send me an email to javier at rstudio to help you get faster turn arounds on this issue.

the same dataset works very well on Pyspark, but SparkR and Sparklyr are stucked on the same one task. It seems the different working mechanism, and the dataset is not skewed.

@harryprince here is what I would do, first run code similar to:
sdf_len(sc, 3) %>% spark_apply(function(x) {
    worker_log("processing ", digest::digest(x), " partition")
    # your xgboost code goes here
})

This will add an entry similar to:
18/11/03 14:48:32 INFO sparklyr: RScript (2566) processing f35b1c321df0162e3f914adfb70b5416 partition

When executing this in your cluster, you will have to look in the logs for the task that is not finishing, once you have that digest, you can cancel the job.
Then you can use that digest to retrieve that specific data frame to R with something like:
broken_partition <- sdf_len(sc, 3) %>% spark_apply(function(x) {
    if (identical(digest::digest(x), "f35b1c321df0162e3f914adfb70b5416")) x else x[0,]
}) %>% collect()

Then I would run that partition in R with xgboost, not Spark.
It would also be interesting to the code that logs the digest again, and see if the same data is the one failing.
I've also opened https://github.com/rstudio/sparklyr/issues/1746 to support a timeout while executing partitions.


Resolved merge confilt

Resolved merge conflit between #25 and #24

Thanks!
Note: if you push changes to the branch of your PR (pull request), these will be automatically added to your PR.
It can be helpful to make a PR from a branch other than your master branch. Otherwise you might accidentally push new commits to your master branch and they will then also be added to your PR, even if you didn't want to.


feat(react): add button to reload a preview

This PR replaces the globe icon with a reload button, to reload a preview. It uses the new reloadPreview function from @webcontainer/api/utils.
Closes #248

Note that this is best effort. Meaning that if the learner navigates within the preview to a location that does not render HTML (like an image or JSON), pressing the reload icon won't work as it will reset the iframe to its initial location. This can only be fixed at the WebContainer level.

The duotone icon looks strange to me too, https://icones.js.org/collection/ph?s=arrow&icon=ph:arrow-clockwise could be used instead, along with a dark:text-slate-100 or something if necessary for the color.

@henrikvilhelmberglund I'll change it to the arrow-clockwise then. Thanks for voicing your opinion :smiley:

We should create separate follow-up issue for updating the background of the old icon-buttons too.

@AriPerkkio Oh do you mean updating all the ph-duo icons for their non-duotone version?

@AriPerkkio Oh do you mean updating all the ph-duo icons for their non-duotone version?

Yep, at least the reset button looks similarly weird now that I've seen how clear the refresh button looks after the change. 😄
Or maybe this in intentional?

@AriPerkkio It was, but we can also change them I think. It was not my choice :man_shrugging:
Tbqh, I've always felt that, at the very least, they should be customizable. I'll open a ticket for that and another one to change them to their non-duotone versions.


Konfigurationsflow kunne ikke indlæses

Describe the issue
Jeg får denne fejl når jeg på at konfigurer intergrationen "Konfigurationsflow kunne ikke indlæses: {"message":"Invalid handler specified"
What version of Home Assistant Core has the issue?
2024.3.0
What was the last working version of Home Assistant Core?
No response
What type of installation are you running?
Home Assistant OS
Diagnostics information
pas
Anything in the logs that might be useful for us?
No response
Additional information
No response

Samme som #4. Se løsningen deri.


adding hyperboloid in conic sections

I would like to add hyperboloid in conic sections

@sairish2001 Shall i work on this?

Go ahead
Deadline 25 April,2021 11:59 PM IST


Fix Graph Validator

The graph validator has a few issues.

Linking doesn't seem correct since the change was made to link all entities to project. This may have to do with the direct_links attribute of the imported xls

The functionality to load a submission from ingest doesn't seem to work, it loads 0 nodes and 0 edges

Some users encounter docker issues when reinstalling with the error:

C02YV4HKLVDL:ingest-graph-validator mshadbolt$ ingest-graph-validator hydrate xls graph_example_sheets/WongAdultRetina-20190913.xlsx
20-11-24 11:27:25 [ingest_graph_validator.ingest_graph_validator] - INFO: starting neo4j docker instance
20-11-24 11:27:25 [ingest_graph_validator.ingest_graph_validator] - INFO: attached to backend container [neo4j-server]
20-11-24 11:27:25 [ingest_graph_validator.ingest_graph_validator] - ERROR: no backend container found

We also need to deploy the latest changes in pypi. @aaclan-ebi was adding maintainer/owner access to team members to make this easier to do in the future.
https://pypi.org/project/ingest-graph-validator/

The ticket + claire's comments do summarise pretty well the problems we discussed this morning in the operation review meeting.
Please correct me if I'm wrong but our main focus should be:
Development tasks:

Create a ticket to investigate linking issue related to code that may have to do with ingest's direct links.
Create a ticket to fix the ingest hydrator

Operational tasks:

Create a ticket to write an SOP on how to deploy new versions of ingest-graph-validator to pipy ( @aaclan-ebi ?)

Am I missing anything @aaclan-ebi @mshadbolt @ami-day @rays22 ? Happy to create the tickets, but I need to know who to assign to each of them

The ticket + claire's comments do summarise pretty well the problems we discussed this morning in the operation review meeting.
Please correct me if I'm wrong but our main focus should be:
Development tasks:

Create a ticket to investigate linking issue related to code that may have to do with ingest's direct links.
Create a ticket to fix the ingest hydrator
Investigate how to fix the docker issues (Either removing docker from the equation or fixing the underlying problems)

Operational tasks:

Create a ticket to write an SOP on how to deploy new versions of ingest-graph-validator to pipy ( @aaclan-ebi ?)

Am I missing anything @aaclan-ebi @mshadbolt @ami-day @rays22 ? Happy to create the tickets, but I need to know who to assign to each of them

The task list looks comprehensive to me. I am happy to do testing when we get to that point in any of the tasks.

since the change was made to link all entities to project this change has been done to the core model but the migration hasn't happened yet. @aaclan-ebi @jacobwindsor since we have deployed the change without migration, could this be causing this issue?

this seems to be working for some submissions but not for others. for e.g.

this one loads fine
$ ingest-graph-validator hydrate ingest d5410c6e-612d-421a-a66f-2de5e04dd050
20-12-02 23:50:04 [ingest_graph_validator.ingest_graph_validator] - INFO: starting neo4j docker instance
20-12-02 23:50:04 [ingest_graph_validator.ingest_graph_validator] - INFO: attached to backend container [neo4j-server]
20-12-02 23:50:04 [ingest_graph_validator.hydrators.hydrator] - INFO: started ingest hydrator for subid [d5410c6e-612d-421a-a66f-2de5e04dd050]
20-12-02 23:50:12 [ingest_graph_validator.hydrators.hydrator] - INFO: imported 191 nodes
20-12-02 23:50:12 [ingest_graph_validator.utils] - INFO: [get_nodes] took [15] ms
20-12-02 23:51:38 [ingest_graph_validator.hydrators.hydrator] - INFO: imported 703 edges
20-12-02 23:51:38 [ingest_graph_validator.utils] - INFO: [get_edges] took [85603] ms
20-12-02 23:51:41 [ingest_graph_validator.hydrators.hydrator] - INFO: hydration finished

but not this one
$ ingest-graph-validator hydrate ingest 24435718-d77a-43df-a905-a11db5d22e46
20-12-02 23:49:12 [ingest_graph_validator.ingest_graph_validator] - INFO: starting neo4j docker instance
20-12-02 23:49:12 [ingest_graph_validator.ingest_graph_validator] - INFO: attached to backend container [neo4j-server]
20-12-02 23:49:13 [ingest_graph_validator.hydrators.hydrator] - INFO: started ingest hydrator for subid [24435718-d77a-43df-a905-a11db5d22e46]
20-12-02 23:49:14 [ingest_graph_validator.hydrators.hydrator] - INFO: imported 0 nodes
20-12-02 23:49:14 [ingest_graph_validator.utils] - INFO: [get_nodes] took [0] ms
20-12-02 23:49:14 [ingest_graph_validator.hydrators.hydrator] - INFO: imported 0 edges
20-12-02 23:49:14 [ingest_graph_validator.utils] - INFO: [get_edges] took [0] ms
20-12-02 23:49:14 [ingest_graph_validator.hydrators.hydrator] - INFO: hydration finished

I am trying to determine the difference between these 2 submissions, it could be a linking issue and related to 1.

This was due to a bug which is now fixed and published to PyPhy (v0.6.1). Please upgrade to this version. I strongly recommend installing into a virtualenv.

$ virtualenv venv-test
$ . venv-test/bin/activate
$ pip install ingest-graph-validator
$ ingest-graph-validator init
$ ingest-graph-validator hydrate xls <path/to/xls>
$ ingest-graph-validator hydrate ingest <sub_uuid>
$ ingest-graph-validator action test <path/to/tests_dir>
$ ingest-graph-validator shutdown


Reverts runner refactoring changes.

This commit partially reverts runner initialization and addresses #138.
Best to review this ignoring white space.

For review ignoring white space: https://github.com/apache/incubator-openwhisk-runtime-nodejs/pull/141/files?w=1


Launching those 3 containers into a docker-compose

Yves,
Thanks for the sharing this! I appreciate. Have you been able to put together those three containers into a docker-compose.yml ?
The way I see my backend is:

a docker-compose for: FrontEnd (proxy/servers/firewalls) (those three guys)
a docker-compose for: production apps
a docker-compose for: labs/staging apps
a docker-compose for: dev apps
a docker-compose for: database
a docker-compose for: monitoring solutions like Nagio
more ... backup, GUI stations, etc

///
I tought about launching various docker run -parameters about a container from the docker-compose ./app1 but I'm not successful  at that point.
Cheers!

Have a look at this compose file
It uses the 3 images you mention (The nginx is a bit modified from the official image because it has a lot of SSL conf embedded in it, but you should be able to use the official one without trouble)

@fatk I used your compose file and I works! Thank you so much!
Now I have to fix this. https://github.com/jwilder/nginx-proxy/issues/304#issuecomment-195616673

Thanks @fatk and @pascalandy


not MobileResponsive. it increase the width of page in mobile or desktop

Bug Report
Current Behavior
The crousal is not MobileResponsive. it increase the width of page in mobile or desktop. If the corousal slides is dynamically changed then the width of each slide maximized input more in the width of page...!
Input Code and steps to reproduce
This is my code that resulted into non responsive.
<carousel :per-page="1" v-bind:key="corousal_ixd" :autoplay="true" :loop="true">
          <slide v-for="article in articles" v-bind:key="article.id">
               <slide-card :object="article"></slide-card>
          </slide>
</carousel>

check that your carousel isn't inside another flex container


Also provide asynchronous functionality on a single thread.

From the SWI Prolog board:

Make run_async actually async. Right now it’s just a long-form for run with a server-side results cursor, which as I mentioned ought to be a function of the basic run command. The purpose of async is to allow you to do other things while waiting for the long-running process to complete, and currently you can’t issue any other queries while the async one is running. (Obviously the client program can do other things while the query is running. It’s in a separate process.) Prolog has great coroutining facilities, use them to let you issue multiple queries and let them run independently, or at least sequentially. Use command IDs (or have the server return a query ID in the run_async reply) to distinguish which async_result the client wants to fetch, and then the server can start the engine working on the next result for that query after it returns this one.

I guess I’d argue that run_async is async, from a “the client is not synchronously waiting for a result” point of view, but I see your point.
My thinking here was to keep the interface as straightforward as possible. Each connection represents a thread that can run one query at a time. The async API on a thread allows you to retrieve answers without waiting (i.e. asynchronously) as they are available. If you want to run queries concurrently, you can create a new connection (i.e. thread) and run them concurrently.
 Certainly the library writer, or the developer, could each do this at their layer, given what is provided already.
OK, let me think about this a bit, I do agree it is going to be something people will want. One way or another.

I guess I’d argue that run_async is async, from a “the client is not synchronously waiting for a result” point of view

I'd say that run itself is async, when viewed from that perspective, at least so long as the client calls an async method to do the read 🙂


Event series: show all past events in the series

What?
On event series pages, we currently limit the number of past events to 3.
I propose we remove that limit and show all past events in an event series on the event series page.
The event series page currently does not show any onward journeys, so a long list of past events won't get in the way of casual users; and dedicated users will have access to all of the information they need.
example event series
https://wellcomecollection.org/event-series/ZJsHDhAAACMAauzb
https://wellcomecollection.org/event-series/WlYUDCQAACQAWcdt
Why?
If we show all past events on an event series, it'll be a better experience for users because:

there's only one place to go to see all the events (as opposed to clicking through to an all past events in this series index page, or trying to search for more)
where there are more past events that are available online, users can access them from a single place
it provides a better archive of past events that can be web archived and referred to in the future

Background
https://wellcome.slack.com/archives/C8X9YKM5X/p1692001935787379
Done when

All event series display their full list of past events

I think it'd be worth ensuring there is pagination if there's over X events? (à la Series https://wellcomecollection.org/series/WleP3iQAACUAYEoN)

Ok, that works for me. I don't know what the history behind that decision to paginate is (as opposed to a 'show more' functionality).

I'm guessing a simple "We already have a pagination but not a show more", here's the PR.
We have a show more but just in transcripts AFAIK (which seems to be the only usage of the "Discussion" Slice).

I'm not sure how the pagination would look on a page like this. Would we continue to show the featured image, intro text and 'coming up' events on page 2 and beyond?
Do we have any example event series with more than 20 past events (i.e. is this something we need to solve now?)

Done in #10158


Unread marker does not show on current channel when initially loading the page

To reproduce:

Go to a channel
Close the browser window
Make sure you receive a message on that channel (for example, by running a different instance with a different nick, etc., like production instance + development instance)
Reopen the closed instance: the unread marker does not show up above that message

Noted this myself, that the unread marker does not appear when first loading The Lounge. Thought it was intended for some reason, but I guess not 😁

Removing this from the 2.0.0 milestone (releasing super soon) as PR needs more testing and I don't want to block 2.0.0 for this.

Fixed by #636, 💥‼


Unity Install 0.1.0

New Pull Request Checklist
Please mark the points which you did / accept.

[x] I will not move an already shared step version's tag to another commit
[x] I read the Step Development Guideline
[x] I have a test for my Step, which can be run with bitrise run test (in the step's repository)
[x] I did run bitrise run audit-this-step (in the step's repository - note, if you don't have this workflow in your bitrise.yml, you can copy it from the step template.)
[x] I read and accept the Abandoned Step policy

Hi @bdrelling,
Thanks for the PR! Unfortunately, there are some issues to be sorted out.
In order to have your step imported, you will have to close this PR and open a new one, because you have moved the tag (pushed commits and retagged), after opening it.
But don't close it yet, I'll tell you why. If you fix the errors and update the tag, I can rerun our automatic validations and we'll create a new PR only when all is good.
You will have to fix the following build issues:
Running validations:
- (1/4) Running: Ensure CLI is working properly with the new collection
 > Successful
- (2/4) Running: Ensure all value_option is string type
 > Failed, error:
   - type(bool) in value_options with value: true at input: Build iOS?
   - type(bool) in value_options with value: false at input: Build iOS?
   - type(bool) in value_options with value: true at input: Build Android?
   - type(bool) in value_options with value: false at input: Build Android?

The mentioned options must be specified as string types in the step.yml.
Once done, push the fixes and update the 0.1.0 tag and I'll rerun the build. :)

@lszucs I'm actually not sure how this PR has a reference to a previous commit. The tag I have in my repo is where it should be on 274f253: https://github.com/bdrelling/bitrise-step-unity-install/commits/master
What happens if I run the bitrise share command again in the same repo for the same tag? Does it update the tag, or leave the tag where it was?
I think if I want that commit to be the one used, I should close this PR again though either way, right?

@bdrelling

Why does that throw an error? Does it need to explicitly say "true" even when listed?

Yes, those must be string. Like you mentioned: "true" for example.
After the modifications you need to re-share the step.
Previously when you shared the step the tag 0.1.0 was at commit hash:

But now it is moved moved it to the:

commit hash.
Please when you are done with the changes, create a new version share and do not move any tags.
Thanks! 🚀


Excuse me, are you sure your demo can load videos? I think the code in the demo is for loading image images

No description provided.

You are right, you need to add a small block of code that converts the video into a sequential set of pictures, and then combine the processed pictures into a video. The demo file works pretty well, but it's very slow on my RTX3060

No description provided.

You are right, you need to add a small block of code that converts the video into a sequential set of pictures, and then combine the processed pictures into a video. The demo file works pretty well, but it's very slow on my RTX3060
There is another question, when using continuous images, is there a confirmation shortcut key to continue the program after the mouse hovers over the image annotation box or after clicking.
（还有一个问题，在使用连续的图像时候，运行开始后，鼠标在图像标注框或者点以后，是否有确认快捷键让程序继续运行。）

this is a part of demo code:
cv2.setMouseCallback('demo', OnMouse)
k = cv2.waitKey(1)
if k == ord('r'):
break
that's why u need to press 'r' button to continue the program after box or point clicking

No description provided.

You are right, you need to add a small block of code that converts the video into a sequential set of pictures, and then combine the processed pictures into a video. The demo file works pretty well, but it's very slow on my RTX3060
There is another question, when using continuous images, is there a confirmation shortcut key to continue the program after the mouse hovers over the image annotation box or after clicking.
（还有一个问题，在使用连续的图像时候，运行开始后，鼠标在图像标注框或者点以后，是否有确认快捷键让程序继续运行。）

this is a part of demo code:
cv2.setMouseCallback('demo', OnMouse)
k = cv2.waitKey(1)
if k == ord('r'):
break
that's why u need to press 'r' button to continue the program after box or point clicking

Okay, that's it. Thank you

I wonder if this demo script can run on Linux os? By the way, HQTrack is a great job.

I wonder if this demo script can run on Linux os? By the way, HQTrack is a great job.

It can run on a Linux system

I wonder if this demo script can run on Linux os? By the way, HQTrack is a great job.

It can run on a Linux system

Excuse me, I mean, it seems that it can't run on a Linux OS without GUI, or I make some mistake?

I wonder if this demo script can run on Linux os? By the way, HQTrack is a great job.

It can run on a Linux system

Excuse me, I mean, it seems that it can't run on a Linux OS without GUI, or I make some mistake?

You can save the output file to a file


[CELEBORN-1317][FOLLOWUP] Set Jetty ServerConnector stop timeout to 0 on EXIT_IMMEDIATELY

What changes were proposed in this pull request?
To fix the UT for http server port already in use issue.
Set the ServerConnector stop timeout to 0 on EXIT_IMMEDIATELY.

Why are the changes needed?
To exit the jetty server immediately for UT.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Will trigger GA for 3 three times.

Oh, the second run failed.
https://github.com/apache/celeborn/actions/runs/8455591256/job/23163438727?pr=2424
CelebornHashSuite:
*** RUN ABORTED ***
  java.io.IOException: Failed to bind to localhost/<IP_ADDRESS>:43460
  at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:349)
  at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:310)
  at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
  at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:234)
  at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
  at org.apache.celeborn.server.common.http.HttpServer.start(HttpServer.scala:41)
  at org.apache.celeborn.server.common.HttpService.startHttpServer(HttpService.scala:183)
  at org.apache.celeborn.service.deploy.MiniClusterFeature.createMaster(MiniClusterFeature.scala:104)
  at org.apache.celeborn.service.deploy.MiniClusterFeature.setUpMiniCluster(MiniClusterFeature.scala:147)
  at org.apache.celeborn.service.deploy.MiniClusterFeature.setupMiniClusterWithRandomPorts(MiniClusterFeature.scala:68)
  ...
  Cause: java.net.BindException: Address already in use
  at java.base/sun.nio.ch.Net.bind0(Native Method)
  at java.base/sun.nio.ch.Net.bind(Net.java:459)

Tried to stop the server/serverConnector if failed to start server.

Unrelated error: https://github.com/apache/celeborn/actions/runs/8456039285/job/23164891629?pr=2424
info] Test org.apache.celeborn.service.deploy.worker.congestcontrol.TestCongestionController.testUserMetrics started
[info] Test org.apache.celeborn.service.deploy.worker.congestcontrol.TestCongestionController.testSingleUser started
[error] Test org.apache.celeborn.service.deploy.worker.congestcontrol.TestCongestionController.testSingleUser failed: java.lang.AssertionError: null, took 0.021 sec
[error]     at org.apache.celeborn.service.deploy.worker.congestcontrol.TestCongestionController.testSingleUser(TestCongestionController.java:75)
[error]     ...
[info] Test org.apache.celeborn.service.deploy.worker.congestcontrol.TestCongestionController.testMultipleUsers started
[info] Test run org.apache.celeborn.service.deploy.worker.congestcontrol.TestCongestionController finished: 1 failed, 0 ignored, 3 total, 4.034s
[info] Test run org.apache.celeborn.service.deploy.worker.network.RequestTimeoutIntegrationSuiteJ started

tried to re-create the master on BindException

cc @RexXiong

UnRelated failure:
https://github.com/apache/celeborn/actions/runs/8458601526/job/23173217153
[info] - celeborn spark integration test - pushdata timeout will add to pushExcludedWorkers *** FAILED ***
[info]   WORKER_UNKNOWN did not equal PUSH_DATA_TIMEOUT_PRIMARY, and WORKER_UNKNOWN did not equal PUSH_DATA_TIMEOUT_REPLICA (PushDataTimeoutTest.scala:150)
[info]   org.scalatest.exceptions.TestFailedException:
[info]   at org.scalatest.Assertions.newAssertionFailedException(Assertions.scala:472)
[info]   at org.scalatest.Assertions.newAssertionFailedException$(Assertions.scala:471)
[info]   at org.scalatest.Assertions$.newAssertionFailedException(Assertions.scala:1231)
[info]   at org.scalatest.Assertions$AssertionsHelper.macroAssert(Assertions.scala:1295)
[info]   at org.apache.celeborn.tests.spark.PushDataTimeoutTest.$anonfun$new$6(PushDataTimeoutTest.scala:150)
[info]   at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563)
[info]   at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561)
[info]   at scala.collection.AbstractIterable.foreach(Iterable.scala:919)
[info]   at org.apache.celeborn.tests.spark.PushDataTimeoutTest.$anonfun$new$5(PushDataTimeoutTest.scala:149)


Bug(scope): NG14 - Cannot enable prod mode after platform setup

Is there an existing issue for this?

[X] I have searched the existing issues

Which Transloco package(s) are the source of the bug?
Transloco
Is this a regression?
No
Current behavior
Create angular 14 project with Jest.
Then added transloco.
Everything seems fine when serve in dev.
However, doing a prod build: ng build and then serving it in production (used http-server to check production), yields an error.
It seems that isDevMode() isn't working as expected. When tried to hardcode prodMode: true or false in translocoConfig(), it works!
So, I reckon, could be isDevMode(). But I have no idea how to find a workaround or solution to this. As I thought this should work after enableProdMode(); is called in main.ts

Expected behavior
Deploying an angular 14 app w/ freshly installed transloco should work in production environment.
Please provide a link to a minimal reproduction of the bug
https://github.com/codestitch/ng14/tree/transloco
Transloco Config
translocoConfig({
        availableLangs: ['en', 'de'],
        defaultLang: 'en',
        reRenderOnLangChange: true,
        prodMode: !isDevMode(),
      }),

Please provide the environment you discovered this bug in
Transloco: 4.2.2"
Angular: 14.2.0
Node: v16.16.0
Package Manager: yarn
OS: windows

Browser
No response
Additional context
No response
I would like to make a pull request for this bug
No

Same issue here. We use schematics to setup a new project in our company, took me a while to figure out the relation with Transloco. Now came to open an issue here and noticed somebody was 3hours faster than me 👍
Hoping for a fix soon :-)

@codestitch @TarsisDragomir I'll take a look

@codestitch @shaharkazaz it's not an issue anymore in angular 15 new generated project + transloco because there is no enableProdMode() anymore in the main.ts, also it does not generate environment.ts files anymore.
https://angular.io/api/core/enableProdMode
now says 'Using this method is discouraged as the Angular CLI will set production mode when using the optimization option.'
=> this is most likely the reason why Transloco was changed from enviromnent.prodcution to !isDevMode()
So for me no issue anymore, will just stick with a fixed version of transloco (4.2.0) for our angular 14 schematics run and for the 15 one we can safely use the current latest version.

@TarsisDragomir that's correct, that's why I made these changes.
I do think that we should at least add a comment in the docs or support the previous way as well.
I'll think about it.


Sass mixins include multiple axes files

When using the new sass mixins with variable fonts, the inclusion of multiple axes is not handled correctly. Instead of using the file that best matches the selected axes (I.e. if wght, ital and another are selected, standard should be used), multiple wght+axis files are included. Also, using all as the axes argument currently always resolves to full, but not all fonts have full, they might only have standard.

I also have the same issue.
Trying to generate faces using mixins for Noto CJK using only subsets chinese-simplified, japanese and korean.
But it does not work because in the metadata, there is no unicode subset matching those since they are split in unicode range represented by numbers. For the mixin generator to actually generate the faces for those subsets using the numbers unicode substet, the metadata needs to use the targeted subset as default subset.
For exemple doing @include NotoSC.faces($subsets: chinese-simplified); won't work because in the metada file, the default subset is set to "latin" and not "chinese-simplified" so the following part of the generator will not work:
@if (
        ($subset == $unicodeSubset) or
          (
            // subset being 'chinese-simplified' and defaults.subset being 'latin' it produces nothing
            ($subset == map.get($metadata, defaults, subset)) and not
              list.index(map.get($metadata, subsets), $unicodeSubset)
          )
      )

I checked the google-font API v2 json file, it seems that all defSub are set to latin
It should be related to this open issue https://github.com/fontsource/fontsource/issues/730


rewrite css compiler

cc @leo

@thysultan 👍 you've got to fix package.json. Your branch is bringing back unpinned dependencies. My suggestion is that you copy/paste it from master and add stylis (pin the version to 1.1.11. Once you've done that remove node_modules and dist and reinstall. Tests should fail. For some reason it seems that the current version of the source maps generator is not adding charset=utf-8; anymore – I guess it is fine to remove it?

@giuseppeg fixed, and removed charset=utf-8;

awesome @thysultan thank you!


Use mockito-core instead of mockito-all (which is an uberjar)

@mbiarnes, @ge0ffrey do you remember if there was a reason to use mockito-all? It is an uberjar and those should not be used at all. mockito-core properly specifies the other dependencies, so I believe this change should be transparent.

I didn't even know we were using an uberjar. We definitely shouldn't do that.
+1 to replace it with mockito-core if all (test) code still compiles.

+1 - if it compiles


Add frozen string literal comments

I saw #2264 and thought adding the frozen string literal comments would be a good way to ensure RSpec works with frozen string literal enabled.
This also makes rubocop enforce the comment is present. I wasn't sure if it should go in .rubocop_rspec_base.yml or just .rubocop.yml, but can move it.
I also added a test to be sure that other peoples specs don't have to have frozen string literal enabled to use RSpec.

I think it’s basically the same change as #2268, except it satisfies this comment by setting up rubocop.
I haven’t checked any of the other rspec projects, but I’ll take a look to make sure they’re also compatible.
Would that just be setting up rspec-dev, and running all the tests? Should I also add # frozen_string_literal: true to those as well?
My understanding is that enabling frozen string literals should have a bit of a performance increase, but I’m not sure if it’ll be significant.
I’ll get some benchmarks of running the test suite.

Hi, thanks for taking the time to contribute this, as per #2264 this is a change I'm wary of making.
There are two sides to frozen string support, one is ensuring that RSpec is compatible with code which uses frozen strings (which is what #2425 helps with), and the other is ensuring that if RSpec uses frozen strings that it does not break specs outside of our control.
The problem with the later, and why I'm hesitant to merge this, is we have no control over how our strings are used. Its entirely possible for RSpec to emit strings which are then mutated, which this PR would cause to throw errors, this is thus really a breaking change for those test suites. (This also applies to anything extending / using RSpec).
Its not feasible for us to test all these scenarios and the features are not the right place to do that any how, but this needs some more thorough testing (one of the reasons why it never went anywhere).

Test compatibility is understandable, and I think I have a better sense of the problem now than when I first read over those issues you linked.
I think it's fair if you want to close this pull request, since it looks like there isn't a significant performance difference (I haven't collected benchmarks myself yet), and frozen string literals aren't going to be enabled by default in Ruby 3.
Related to ensuring frozen string literal compatibility, would running the specs with --enable-frozen-string-literal in the CI be enough?

Your welcome to add a step to our CI doing that, you can see we have templates in rspec/rspec-dev to handle that across the repos.

@NRauh are you still up to do this?

I'm still up to adding this in the other projects, though I haven't done much more than this. I was unsure if this change would be wanted or not.
Feel free to close this pull request if it's not something that would really be wanted, otherwise I'll try and work on it this or next week.

@NRauh Are you up to make sure other RSpec repositories are tolerant to frozen string literals?

Hi, no probably not. I've been really busy, so in theory I'd be up for it, but time wise I probably won't be able to get to it soon.


Fix GHC 7.10 config of vector and tasty-ant-xml

Motivation for this change
They don’t built without this change :)
Things done
Updated the GHC 7.10 config of vector and tasty-ant-xml.
Please check what applies. Note that these are not hard requirements but merely serve as information for reviewers.

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[x] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

I know I’m not supposed to edit hackage-packages.nix but I haven’t yet figured out the file that I need to edit to get that additional verison of tasty-ant-xml.

Closing since 6883119ab0bb4c9db7b99e4269ab5091ad95191c has been merged.


[QUESTION] Mixing textual and numerical inputs with multi-branch models

Hello :-)
I wonder if it is possible to train a 2-branch metal model with different modalities for the 2 sets of input features.
It would be raw text on the one hand (which should feed into a BERT model) and a vector with numerical features on the other hand (which should feed into a simple feed forward network).
So basically the input and body would be different for each branch, and they should be concatenated (and eventually fed into a small feed forward network as well) before the head.
Best regards,
Fabian

I haven't tried this, but my first suggestion would be to start with would be to create a DataLoader that provides both the BERT input and the numerical features as part of X, and then to create an input module that uses the correct parts of that X in its forward() method -- i.e. BERT operates on the text, your feed-forward NN operates on the numerical features, the two are concatenated, and then fed into your second small feed-forward NN, all within forward().  The output of that procedure would then be the common encoding the heads of your model use.

Thank you very much, I will try this method.


[Aura-Safe][General] Networks' color displayed not correct

Description
networks' color displayed not correct on transactions and site popup
Environment

Browser: Chrome
Wallet: Keplr
Environment: https://safe.serenity.aura.network/

testnet

Steps to reproduce

Go to https://safe.serenity.aura.network/
Connect wallet
Select network
Observe > see error

Expected result
Display color correctly as selected network
Obtained result

Screenshots

Verified PASS on serenity (18/08/2022)


Fix typos

Fix a few typos in the comments

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


Twitter Feature

Commit to enable twitter in the collector.

@AntonioCiolino Does this still work even though Elon killed the free Twitter tier??

I expect so but i didn’t test it yesterday. But… this does still require an API key so it probably isn’t really anonymous.

Plus he’ll likely roll it back…lol

Iffy to merge this because we cannot test it since the API doesn't work without paying hundreds/thousands to do it. Maybe we should just kill the feature entirely and leave twitter unsupported and/or find a reliable way to web scrape as many others do.

updated and validate that the process is still working with API keys.


Added Python Code

Added #1618
Description
Added Python Code
Fixes #1618
Checklist:

[ ] My code follows the style guidelines(Clean Code) of this project
[ ] I have performed a self-review of my own code.

@ravikr126 please review

For which question .Please add relevant description for pr

@sonamgupta136 add test case

@Amit366 I have made new pr as 1618 majority element python code and closed this pr. As I was new to opensource so I was not able to make changes.Please also review my pr 1621 egg dropping puzzle cpp and 1628 merge k sorted linked list python code.


Record Imagery Date

Record imagery date associated with imagery when survey questions are answered. For imagery sources (e.g. Planet NICFI) where dates are available, record both imagery source and date. For those without dates, record only imagery source. I think this is an expansion of the functionality in SecureWatch.
As far as I understand, the imagery is only recorded once per sample. So they would need to do two projects to record multiple dates. This may also be something to think about in the future, although I know the database changes might be significant.
Request from Ecuador team among others. This feature is included in E.7 funding if awarded.

This is a duplicate of #428

This is a duplicate of #428


chore(deps) bump resty-healthcheck to 2.0.0

I marked it with do no merge as the 2.0.0 has this:
https://github.com/Kong/lua-resty-healthcheck/blob/master/rockspecs/lua-resty-healthcheck-2.0.0-1.rockspec#L18
And the worker-events is not yet bumped. So perhaps we need to bump them together, but let's keep this here open so that we know that this is at least green, though it might get red together with worker-events 2.0.0.

I marked it with do no merge as the 2.0.0 has this:
https://github.com/Kong/lua-resty-healthcheck/blob/master/rockspecs/lua-resty-healthcheck-2.0.0-1.rockspec#L18
And the worker-events is not yet bumped. So perhaps we need to bump them together, but let's keep this here open so that we know that this is at least green, though it might get red together with worker-events 2.0.0.

I marked it with do no merge as the 2.0.0 has this:
https://github.com/Kong/lua-resty-healthcheck/blob/master/rockspecs/lua-resty-healthcheck-2.0.0-1.rockspec#L18
And the worker-events is not yet bumped. So perhaps we need to bump them together, but let's keep this here open so that we know that this is at least green, though it might get red together with worker-events 2.0.0.

Also, lua-resty-healthcheck 2.0 still uses two timers per target being active checked, instead of a single timer for all targets as 1.4.0 does. It seems to me that the timer usage has to be addressed in lua-resty-healthcheck 2.1 before bumping here.

I marked it with do no merge as the 2.0.0 has this:
https://github.com/Kong/lua-resty-healthcheck/blob/master/rockspecs/lua-resty-healthcheck-2.0.0-1.rockspec#L18
And the worker-events is not yet bumped. So perhaps we need to bump them together, but let's keep this here open so that we know that this is at least green, though it might get red together with worker-events 2.0.0.

Also, lua-resty-healthcheck 2.0 still uses two timers per target being active checked, instead of a single timer for all targets as 1.4.0 does. It seems to me that the timer usage has to be addressed in lua-resty-healthcheck 2.1 before bumping here.


JObjects do not implement finalizable

This time I'll wait for the CI before publishing!

coverage: 87.943%. first build
when pulling bae5fb7caf30d1b7a05295d191cfb474bc252d92 on jni-0.10.1
into 3b9e03c3bcf10c98d4277deca441569b1648aaa5 on main.


[INFRA-3914] Sync Kutt fork with upstream

This PR is unreviewable, I think we'll have to canary this change.

They have remove the v1 files in this update so we might be able to remove /server/__v1/controllers/validateBodyController.ts

They have remove the v1 files in this update so we might be able to remove /server/__v1/controllers/validateBodyController.ts

That file did come through as a merge conflict, so it's likely I handled that wrong. Well spotted dude 👍

@sazap10 this seems to come up locally for me. Probably a few minor changes required in prod but I think this is ready.

@sazap10 this seems to come up locally for me. Probably a few minor changes required in prod but I think this is ready.

and we've tested shortening a link as well? Also testing whether the limit is still increased?

Also testing whether the limit is still increased?

Well this gets addressed as part of another ticket.

Also testing whether the limit is still increased?

Well this gets addressed as part of another ticket, yes the link shortening works.

not sure which ticket you are referring to here

not sure which ticket you are referring to here

Are you talking this https://smartbear.atlassian.net/browse/INFRA-3533

not sure which ticket you are referring to here

Are you talking this https://smartbear.atlassian.net/browse/INFRA-3533

Not really, i was merely asking whether we tested shortening a very long link to check there isnt a regression in the behaviour we added to increase the limit following the sync

Not really, i was merely asking whether we tested shortening a very long link to check there isnt a regression in the behaviour we added to increase the limit following the sync

Probably would have helped to be more specific then, save the guessing game. I'll check.

@sazap10 This is ready. I confirmed that it does allow for long urls (up to 5000 characters, a presently hardcoded value)
The issue came when I tried to test the shortening of urls with query parameters, for some strange reason the regex they provide wouldn't shorten links with query params. Bit strange. Now fixed!


Bounding Boxes (aka Rectangle Labels) have invalid coordinates laying outside of the image boundaries

Describe the bug
When exporting bounding boxes within completions, we expect their relative coordinates to lay in the range of [0, 100]. However, sometimes there are negative values as well as values greater than 100.
The associated bounding boxes shown in the UI do not leave the image boundary though. (Eventhough they may get very close.)
To Reproduce
Draw a bounding box on top of an image and try to stretch it to (some of) the image boundaries.
Not sure whether it's reproducable like this each and every time though.
Expected behavior
Two options:

either explicitly allow and visualize bounding boxes outside of the image boundary
or disallow them and ensure that the exported values are within the range of [0, 100] (at least my preferred option)

Environment:

Version 0.7.4

Hmm, that sounds bad and strange a bit. In previous release I made fixes exact for image boundaries. I'll check, fix and try to write some test to cover this. Thank you!

@Johnson145 could you test release 0.7.5? I hope it fixed there.

Sounds good, I'll test it within the next days.

I hope it's fixed now in 0.8.0.

It took some time, but I've just finalized the tests on v0.7.5:
Unfortunately, the issue does still seem to exist. However, I think the outliers have drastically been reduced. Whenever the value limit is exceeded, it's now about the same value:<PHONE_NUMBER>0000002. I think it used to have much higher differences and variance, too.
Thus, it's almost fixed, but not completely.
Have you made any further related changes in 0.8.0 or did you hope for this to be fixed as of the 0.7.5 changes?

Update: The changes seem to have introduced a new bug: Some of the returned bounding box data does now include minimum coordinates which are greater than the declared maximum values (affects x coordinates as well as y coordinates).

100.(0)2 looks like common annoying float problem, I'll fix this by reducing precision.
But I need some more details about min-max bug. What the returned bounding boxes? If those in the final results, they don't have any min and max values? Or internally in functions which control the outliers?

I'm parsing the result of a task contained in the completion files. I'm using the given x, y, height and width values to calculate x_min=x, y_min=y, x_ max=x_min+width and y_max=y_min+height. My script throwed an error, because afterwards e.g. y_min may be greater than y_max. Obviously, that shouldn't happen.
I just looked into it a little bit closer and found out that the actual cause is the height attribute containing a negative value (in my case e.g. -52.62... I guess the same applies to the width attribute.


Verify CSI Migration Flag Removal

Motivation
With the new V1.25.0 Kubernetes Promoted core CSI Migration to Stable. This should not effect us, but we can verify if we can remove the existing CSI Migration Flag.
Todo

[x] verify if we can safely remove the CSI Migration Flag
[x] Do remove the flag if possible

Outcome

We cleaned up the CSI Migration Flag if possible.

In order to mark the migration complete and stopping registering volumes with the in-tree plugin, we should enable the feature-gate InTreePluginProviderUnregister: true to kubelet and kube-controller-manager.
InTreePluginAWSUnregister: Stops registering the aws-ebs in-tree plugin in kubelet and volume controllers.
InTreePluginAzureDiskUnregister: Stops registering the azuredisk in-tree plugin in kubelet and volume controllers.
InTreePluginAzureFileUnregister: Stops registering the azurefile in-tree plugin in kubelet and volume controllers.

Additionally there are still some CSIMigrationProvider flags set in our source code
The in-tree plugin will probably removed with an upcoming K8s release:

We are expecting cloud provider in-tree storage plugins code removal to happen by Kubernetes v1.26 and v1.27. More and more drivers that supports CSI migration will go GA in the upcoming releases.

We have a new dashboard in Grafana (Private Dashboards - Giantswarm / Kubernetes Persistent Volumes)


Is is possible to send default language of device in all query

i want to send the language of device in all query or mutation graphql

Could you please elaborate more on this? Do you mean default value for arguments (if yes then they must be defined in your GraphQL schema, otherwise you always need to provide them)

i want to add Add LANGUAGE in header

I think that you have to take a look to OkHttp client and add an interceptor in order to inject the LANGUAGE header in each sensed query.
https://stackoverflow.com/questions/32196424/how-to-add-headers-to-okhttp-request-interceptor

You can provide your own OkHttp client com.apollographql.apollo.ApolloClient.Builder#okHttpClient with custom interceptor.


Fixes #411 - switch to $evalAsync() for improved performance

@jwngr please have a look. This implements the $evalAsync() approach and removes @jamestalmage 's "favorite" part of the code--the batching logic that was previously necessary to make the timing of all the events work with Angular's compiler. Less complex and faster. Wins all around.

Coverage increased (+0.28%) to 93.13% when pulling b7be0b8da6645ff803e03f5fd02ded739bf9d585 on kato-evalasync into 8cec2e9ca8a824381d7b246ea9deef1ef01ff070 on master.

I haven't tested @katowulf's new stuff, but I'm happy as long as it still gives me enough control over so I can still do this:
http://jamestalmage.github.io/firebase-tween/#/no-debounce

hehe - I see somebody dragging squares already (@katowulf ?).
Make sure you've got it open in two windows side by side and step through the tabs from left to right.

Debounce is still intact so I don't see that it will affect this. If you test it out before the merge I'm happy to address any issues that arise.

This looks great to me! Awesome to see less code and faster performance. We should get out a new release which has all of our recent goodies in it.


[AutoRelease] t2-recoveryservicesbackup-2022-12-29-07982(can only be merged by SDK owner)

https://github.com/Azure/sdk-release-request/issues/3613
Live test success
https://dev.azure.com/azure-sdk/internal/_build?definitionId=1021
BuildTargetingString
azure-mgmt-recoveryservicesbackup
Skip.CreateApiReview
true

issue link:https://github.com/Azure/sdk-release-request/issues/3613

/check-enforcer override


APCu not available for local cache

nextcloud deployment failed due to the following error: APCu not available for local cache.
changed: [cloud-archives.inframshe.univ-fcomte.fr] => (item={'name': 'memcache.local', 'value': '\\OC\\Memcache\\APCu'})
failed: [cloud-archives.inframshe.univ-fcomte.fr] (item={'name': 'open_basedir', 'value': '/dev/urandom'}) => {"ansible_loop_var":
"item", "changed": true, "cmd": ["php", "occ", "config:system:set", "open_basedir", "--value=/dev/urandom"], "delta": "0:00:00.069124",
 "end": "2023-02-04 09:15:50.869175", "item": {"name": "open_basedir", "value": "/dev/urandom"}, "msg": "non-zero return code",
"rc": 1, "start": "2023-02-04 09:15:50.800051", "stderr": "", "stderr_lines": [], "stdout": "An unhandled exception has been
thrown:\nOCP\\HintException: [0]: Memcache \\OC\\Memcache\\APCu not available for local cache (Is the matching PHP module
installed and enabled?)", "stdout_lines": ["An unhandled exception has been thrown:", "OCP\\HintException: [0]:
Memcache \\OC\\Memcache\\APCu not available for local cache (Is the matching PHP module installed and enabled?)"]}

To solve this problem, I set the variable apc.enable_cli=1 in the file /etc/php/8.1/cli/conf.d/20-apcu.ini
root@cloud-archives:~ # grep -r apc.enable_cli /etc/php/
/etc/php/8.1/cli/conf.d/20-apcu.ini:apc.enable_cli=1
/etc/php/8.1/cli/php.ini:apc.enable_cli = 1
/etc/php/8.1/apache2/conf.d/20-apcu.ini:apc.enable_cli=0
/etc/php/8.1/fpm/conf.d/20-apcu.ini:apc.enable_cli=1

It would probably be easier to do the same in the php.ini files... what do you think about it?
I take this opportunity to ask you why you add spaces in the initialization of this variable.
root@nfs1-server:/usr/local/ansible-admin (master) # grep -r "apc.enable_cli = 1" ../galaxy-roles/
../galaxy-roles/aalaesar.install_nextcloud/tasks/http_nginx.yml:    line: "apc.enable_cli = 1"
../galaxy-roles/aalaesar.install_nextcloud/tasks/http_apache.yml:    line: "apc.enable_cli = 1"

A big thank you for the work done with this Ansible role!
Ernest.

@aalaesar since main now has collection structure, we may need a parallel branch to bugfix here. Problem is the automation se have is not perpared to uploading to Galaxy a different branch.

@aalaesar since main now has collection structure, we may need a parallel branch to bugfix here. Problem is the automation we have is not prepared to uploading to Galaxy a different branch.
Maybe easier way is create a collection branch with current code and revert main to last release so we fix these issues.

No problem @staticdev that's already  the case 😃
the collection is in another branch. main is still a role. Bug fixing can proceed as normal and Galaxy import haven't  changed yet and is still working  fine.
I'll just have lot of conflicts to solve when releasing the v2.0 😅

Hello @MaxiReglisse!
It is already set (since forever in role) and main php.ini file is modified by role.
For Apache2: https://github.com/aalaesar/install_nextcloud/blob/main/tasks/http_apache.yml#L5
For Nginx: https://github.com/aalaesar/install_nextcloud/blob/main/tasks/http_nginx.yml#L26
What is more APC package is installed: https://github.com/aalaesar/install_nextcloud/blob/main/tasks/php_install.yml#L45
I suppose there is some problem with running this role. How do you use it, through galaxy or cloned from this repo? Could you give us some insights for troubleshooting?

Hello @Aalaesar and @Staticdev !
I only use Ansible Galaxy repositories. I guess the error comes from the fact that I tried to install PHP with a php role instead of relying on install_nextcloud to take care of everything.
My apologies for the background noise... and my thanks for this playbook which is really great.


Documentation fails to build

Describe the bug
The documentation fails to build. The traceback generated is behind the collapsible section.

Error traceback
✗ Building documentation (1)
> mkdocs build -s
INFO     -  DeprecationWarning: The distutils package is deprecated and slated
            for removal in Python 3.12. Use setuptools or check PEP 632 for
            potential alternatives
              File
            "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/mkdocs_coverage/plugin.py",
            line 8, in <module>
                from distutils.dir_util import copy_tree
              File "/usr/lib/python3.10/distutils/__init__.py", line 19, in
            <module>
                warnings.warn(_DEPRECATION_MESSAGE,
INFO     -  Cleaning site directory
INFO     -  Building documentation to directory:
            /home/simon/work/mkdocstrings/site
INFO     -  The following pages exist in the docs directory, but are not
            included in the "nav" configuration:
              - reference/autorefs/plugin.md
              - reference/autorefs/references.md
Traceback (most recent call last):
  File "/home/simon/work/mkdocstrings/venv/bin/mkdocs", line 8, in <module>
    sys.exit(cli())
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/mkdocs/__main__.py", line 250, in build_command
    build.build(cfg, dirty=not clean)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/mkdocs/commands/build.py", line 320, in build
    _build_theme_template(template, env, files, config, nav)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/mkdocs/commands/build.py", line 118, in _build_theme_template
    output = _build_template(template_name, template, files, config, nav)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/mkdocs/commands/build.py", line 97, in _build_template
    output = template.render(context)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/jinja2/environment.py", line 1301, in render
    self.environment.handle_exception()
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/jinja2/environment.py", line 936, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/material/404.html", line 4, in top-level template code
    {% extends "main.html" %}
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/material/main.html", line 4, in top-level template code
    {% extends "base.html" %}
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/material/base.html", line 148, in top-level template code
    {% block site_nav %}
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/material/base.html", line 156, in block 'site_nav'
    {% include "partials/nav.html" %}
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/material/partials/nav.html", line 27, in top-level template code
    {% include "partials/nav-item.html" %}
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/material/partials/nav-item.html", line 91, in top-level template code
    {{ render(nav_item, path, level) }}
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/jinja2/runtime.py", line 777, in _invoke
    rv = self._func(*arguments)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/material/partials/nav-item.html", line 48, in template
    <nav class="md-nav" data-md-level="{{ level }}" aria-labelledby="{{ path }}_label" aria-expanded="{{ nav_item.active | tojson }}">
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/jinja2/filters.py", line 1688, in do_tojson
    return htmlsafe_json_dumps(value, dumps=dumps, **kwargs)
  File "/home/simon/work/mkdocstrings/venv/lib/python3.10/site-packages/jinja2/utils.py", line 658, in htmlsafe_json_dumps
    dumps(obj, **kwargs)
  File "/usr/lib/python3.10/json/__init__.py", line 238, in dumps
    **kw).encode(obj)
  File "/usr/lib/python3.10/json/encoder.py", line 199, in encode
    chunks = self.iterencode(o, _one_shot=True)
  File "/usr/lib/python3.10/json/encoder.py", line 257, in iterencode
    return _iterencode(o, 0)
  File "/usr/lib/python3.10/json/encoder.py", line 179, in default
    raise TypeError(f'Object of type {o.__class__.__name__} '
TypeError: Object of type Undefined is not JSON serializable

To Reproduce
Steps to reproduce the behavior:

git clone git@github.com:mkdocstrings/mkdocstrings.git
cd mkdocstrings
python3 -m venv venv
source venv/bin/activate
pip install pdm
pdm install -G docs -G duty
pdm run duty check-docs

Expected behavior
That the documentation generates correctly and we get:
✓ Building documentation

Information (please complete the following information):

OS: Ubuntu 22.10
Browser: n/a
mkdocstrings version: 0.20.1.dev1+gd9b9623

Additional context
A project I am a developer for uses this method to generate the API documentation and we noticed the failure when doing an update earlier today.

Looking further at the traceback, I notice that the issue is in a mkdocs-material file. There have been a few recent releases. If I pip install mkdocs-material==9.0.6 then the documentation here builds correctly, but it is broken with the 9.0.7 mkdocs-material release.

Thanks for the report. Seems to come from mkdocs-material indeed. Let see what they say, I'll close in the meantime.


Yi Cam 1080p Home (y211ga) looses hack after restart over web gui

I have the problem, that after restarting the cam over the Web Gui to load a new config it starts the stock firmware again.
"Welcome to Yi Home Cam. Waiting to connect".
I managed to restore the hack after some combination of reformating the sd card and unbricking.
How can I prevent that?

Probably the cam lost wifi connection parameters.
Try to resync the cam with the app and then restart it.

same here... lost wifi login after every reboot/power
resync with the app helps for the moment until no new reboot

I re-tested now my y211ga and it's ok.
Please, try to dump the flash and check if ssid and password are stored properly:
hexdump -C -n 160 /dev/mtdblock7

Hi.
Got the the same on Yi Dome Camera U (2K) SFUS h51ga.
Ouput of hexdump -C -n 160 /dev/mtdblock7 looks fine but that is clear as I reconnect the wifi of the cam via app after reboot to get shh access.
Cant do hexdump -C -n 160 /dev/mtdblock7` when cam says "waiting to connect".

I have a h51ga. I will try asap.

I have a h51ga. I will try asap.

Any news here? If needed I can try to support.

I finished the test now. And it's working properly.
Also after 5-6 reboot cycles.
I don't understand the reason of your problem.
Maybe a hardware issue.
Did you try another SD card?
What about if you remove the SD card? Does the cam survive to a reboot?
Does the problem disappear if you don't use the hack?

Hi.
Thanks for testing.
I downloaded the hack files fresh from gh, took a new SD and always tested multiple reboots with following results:

without SD; ok
with SD without hack; ok --> SD formatted in cam
with SD, with hack (nothing set up); ok
with SD, with with hack and "Disable Cloud" and "Recording without Cloud" activated; ok
with SD, with hack and everything set up; not ok ("Waiting to connect")

Also trying to siable Kernel Tunig does not help.
I dont want to stress this further. I'll place the cam on an accesible spot and try to not reboot it.

Send me the non working config.
I will copy to my cam.

@roleoroleo Did you try my conf?


added ZTM React project 'robofriends'

Completed the 'robofriends' tutorial on ZTM using React.  Parts of this seemed pretty intuitive and fun, other parts were confusing.  Looking forward to learning more!

Ok, I've updated the .gitignore file, but I'm assuming that won't fix the problem because the files are already in the pull request.  I tried running git rm -r --cached node_modules but that did not work... I got a fatal: pathspec "node_modules" did not match any files.

So I tried running git rm -r --cached /node_modules and got a message that the file is outside the repository.  Is this not working because the pull request has not been approved?

Finally, do you recommend just going into the pull request and manually deleting all 'node_module` files now that the .gitignore file has been updated?

sorry - no help on this one :)
this is a really good opportunity to "snuggle with the struggle" and figure out how to remove files from a PR


Congratulations!, first tutorial Worked perfectly

Congratulations!, first tutorial Worked perfectly!!
Just wanted to pass and say I'm very happy with NativeScript Playgound. Cheers
Dear friend we want to specify that this repo is {N} Playground related.
Please use it to provide feedback or report an issue related to {N} Playground only.
If your issue is related to {N} itself please report it to the {N} repo
or search for solution in Stack Overflow.
All issues which are not related to {N} Playground will be closed.
We appreciate your feedback! While we are doing all we can to take care of every
issue, sometimes we get overwhelmed. Because of that, we will consider issues
that are not constructive or problems that cannot be reproduced "dead".
Additionally, we will treat feature requests or bug reports with unanswered
questions regarding the behavior/reproduction for more than 20 days "dead". All
"dead" issues will get closed.
Please, provide the details below:
Did you search for the problem in other open issues in this repo?
Tell us about the problem
Please, ensure your title is less than 63 characters long and starts with a capital
letter.
Did you try it outside of {N} Playground?

Yes - it has the same behavior as in the playground
Yes - but the behavior is different (give more information)
No

Which browser are you using?

Chrome
Safari
Mozilla
IE

Are there any errors/warnings logged in your browser console?
Which platform(s) does your issue occur on?

iOS
Android
Both

Are there any entries logged in the Device Logs tab?
Please provide the following information shown in devices tab in the playground:

Model
OS version
Preview app version
Runtime version

Please tell us how to recreate the issue with as much detail as possible.
The best approach would be to get your code running in the {N} Playground and share the link with us, along with any additional details or steps to reproduce needed for examining the issue there.

Thanks for the feedback. We are glad that you like the {N} Playground.


Beanstalk job priority

It's possible to set a custom priority when push a job into Beanstalk server?
Do you accept a PR to implement this feature?

I'm not going to implement priority yet. It is supported inside Beanstalk only. I do not see how to implement a qualitative abstract level for it, which would be compatible with other queue brokers.

But it doesn't need to be supported in uncompatible queue brokers.
If a driver do not support priority, then nothing happen.
Something like this:
Yii::$app->queue->push(new DownloadJob([
    'url' => 'http://example.com/image.jpg',
    'file' => '/tmp/image.jpg',
]));

can become
Yii::$app->queue->priority(1024)->push(new DownloadJob([
    'url' => 'http://example.com/image.jpg',
    'file' => '/tmp/image.jpg',
]));

All priority method in uncompatible driver simply return the object without doing anything.
Priority in queues it's not used to set an order between jobs (you can have multiple job consumer and job with different priority can be done at the same time) but it's useful for throttling and assign resources and bandwidth on different customers in the same application.

Yes, implementation using method chain is a good idea.
Also can add method for delayed pushing.
I will add its in 1.1.

👍 do you have an ETA?
Maybe I can help you with a pull request?

Ready.
You can test priorities from master branch.

Why this is not supported in DB driver? This is only matter of additional column.

Of course. Need add one column and one index. But in the first place is abstract level, and drivers which already supports priorities. This are Beanstalk and Gearman. Other drivers will be updated later.

Thanks! I'll try soon.

The enhancement is available in 1.0.1.


Support codegen creation of declarations/definitions

Recently Intellisense for vscode got an update where they supported creation of definitions/declarations for functions (source: https://devblogs.microsoft.com/cppblog/vs-code-c-extension-january-update-create-definitions-and-declarations/). This feature is so useful so I think it should be supported in clangd too

For the other half (generating a declaration from a definition), we have https://github.com/clangd/clangd/issues/730 on file.

For the other half (generating a declaration from a definition), we have #730 on file.

It looks like it's abandoned :(


Add Note About Not Generating Content w/ CSS

Need to add a note for this:
https://github.com/ucsb-wsg/web-accessibility/blob/master/web-accessibility-guidelines.md#guideline-generated-content
Not sure if this can be folded into a general separation of concerns recommendation (which, I think, already exists) or if this is specifically referring to generating text with ::after, ::before, and content.

Dang, there's actually a lot of great content about this on the web:

http://www.456bereastreet.com/archive/201205/css_generated_content_and_screen_readers/
http://tink.uk/accessibility-support-for-css-generated-content/
http://cssgallery.info/testing-the-accessibility-of-the-css-generated-content/

Basically, it appears that some screen readers will read the generated content, while others won't. So, as a baseline: you shouldn't use CSS generated content to produce essential content that you want a screen reader to read.
An interesting corollary is that some screen readers do read the content, which means that it could be kind of obnoxious for a user with a screen reader to read non-essential content that you've forced into the page with CSS.
Pulling these two points together, I think the rule should be: avoid generating content with CSS. If you must generate content with CSS, do not generate content that is essential to the page.


Fix the InteractBlockEvent.Secondary rounding the interaction point

This fixes the rounding issue the InteractBlockEvent.Secondary actually have when getting InteractEvent#getInteractionPoint.
Fixes #1778

~qa


Initial TAG Env website into Korean

Hi tag-env-sustainability team,
Leo request to create ko website from en
So I changed contents for website which is related to ko.
Here is the link:
https://github.com/cncf/tag-env-sustainability/issues/325#issuecomment-2039730723

@sysnet4admin if you check the build log for the failed quality checks you can see that it fails on the bunch of links that are invalid - if you navigate to those it returns 404. I think you would need to verify and update those links so that they're valid again🙌

Oh...I am so sorry...I will fix it in a day.

This page is not exist anymore. How could it handle? @guidemetothemoon May I get some advise?
https://community.cncf.io/events/details/cncf-hamburg-presents-cloud-native-sustainability-week-meetup-in-hamburg/

Not in https://community.cncf.io/events/#/list
Not anymore google search

I'll check it out and help you with fixing those links @sysnet4admin !😊

@guidemetothemoon Okay please let me know missing link :)
And then I will fix it at once ! (i.e. 404)

@sysnet4admin I fixed all the broken links to the valid ones and updated this PR accordingly. The build looks good now, and PR looks good to me so I'll go ahead and approve it😊
@leonardpahlke would you like to review it as well or shall I go ahead and merge it?

@guidemetothemoon Oh Thank you for your kindness!!!


Bug: invalid state - list items wrapped in paragraph nodes instead of list

Lexical version: 0.7.5 (I think? I used the playground just now)
Steps To Reproduce

Replicate what happens in the video below.

https://user-images.githubusercontent.com/8862967/211608329-c38f45cd-949f-46b5-bf33-203c45f39fb3.mp4
The current behavior
List items are wrapped in paragraph blocks.
The expected behavior
List items are converted into paragraph blocks individually.
Insight / solution proposal
AFAIK, this bug is related to $setBlocksType_experimental and/or list normalization. Not sure what the correct way to handle this would be, but it makes sense that this happens because $setBlocksType does exactly that: turn the top level blocks contained in the selection into a different block type (the old $wrapNodes). After that happens, I'm guessing the list normalization should be responsible for turning each list item into a separate paragraph and flattening the parent paragraph. But I don't really know.

@EgonBolton as the author of the above method, would you have any thoughts on how this should be implemented?

Oh I hadn't noticed this thread and I duplicated it last week! https://github.com/facebook/lexical/issues/3776
Yes, I already tried some things and I have an idea to solve it. If you want, assign it to me and I'll try to do it soon. @thegreatercurve


Setup project and Add models, views, controllers

In this milestone, We have followed the pair programming approach to make the following:

[ ] Created User, Food, Recipe, and RecipeFood models.
[ ] Created their controllers
[ ] created their views
[ ] created Migration schema
[ ] Updated database.yml

STATUS APPROVED ✔ 🎉 ✔
Hi @AbdusSattar-70
Your project is complete! There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉
Highlights
Setup devise correctly ✔
No linters errors ✔
Correct Gitflow ✔
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you take them into account as they can make your code better. Some of them were missed by the previous reviewer and addressing them will really improve your application.
Cheers, and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please remember to tag me in your question so I can receive the notification.
As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think the code review was unfair, you can request a second opinion using this form.


ctorParameters not stripped from BrowserPlatformLocation and TestabilityRegistry in prod builds

🐞 Bug report
Command (mark with an x)

- [ ] new
- [x] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [ ] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

Is this a regression?

 Yes, the previous version in which this bug was not present was: ....
yes
Description
 A clear and concise description of the problem...
🔬 Minimal Reproduction

yarn global add @angular/cli@next
ng new test-app
cd test-app
ng build --prod

🔥 Exception or Error

If I disable terser mangling, I'll see that ctorParams survived the build optimizer scrub pass on:
            /** @nocollapse */            return BrowserPlatformLocation.ctorParameters = () => [ {
                type: void 0,
                decorators: [ {
                    type: Inject,
                    args: [ DOCUMENT ]
                } ]
            } ], BrowserPlatformLocation;

and
            TestabilityRegistry.ctorParameters = () => [], TestabilityRegistry;

This happens both with and without Ivy
🌍 Your Environment

Angular CLI: 8.2.0-rc.0
Node: 10.11.0
OS: darwin x64
Angular: 8.2.0-rc.0
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.802.0-rc.0
@angular-devkit/build-angular     0.802.0-rc.0
@angular-devkit/build-optimizer   0.802.0-rc.0
@angular-devkit/build-webpack     0.802.0-rc.0
@angular-devkit/core              8.2.0-rc.0
@angular-devkit/schematics        8.2.0-rc.0
@ngtools/webpack                  8.2.0-rc.0
@schematics/angular               8.2.0-rc.0
@schematics/update                0.802.0-rc.0
rxjs                              6.4.0
typescript                        3.5.3
webpack                           4.38.0

Anything else relevant?

Hi @IgorMinar, BrowserPlatformLocation and TestabilityRegistry are explicitly excluded from these optimisations. https://github.com/angular/angular-cli/blob/607e6f7cfd7b5f16231eae968fbf36e920c169e0/packages/angular_devkit/build_optimizer/src/transforms/scrub-file.ts#L26
This logic has been present since the introduction of Build Optimizer https://github.com/angular/devkit/commit/3097901b40dd6885cf0cc6c6bb48b5d492914a59#diff-98ef76947c50df9f53c7f56d716cb64cR5
I don't really have enough info to know why this was the case. Maybe @filipesilva since he authored the original commit. maybe he remembers the reason why that list was introduced

I don't actually remember either. The current whitelist
https://github.com/angular/angular-cli/blob/607e6f7cfd7b5f16231eae968fbf36e920c169e0/packages/angular_devkit/build_optimizer/src/transforms/scrub-file.ts#L25-L31
Is retained from the precursor to Build Optimizer, which was purify+ngo .
@alxhub according to git blame you were the one that added the whitelist. Do you know if it's still needed? @kara and @IgorMinar were involved in the creation of ngo and might know as well.

unverified theory: all of these are defined as part of the platform injector which is the top most injector in an app and that injector used to have special requirements. We need to evaluate if that's still the case today.

Removing it doesn't seem to break AIO using VE or Ivy, and it doesn't change the bundle size either.

Asked @alxhub and he said

I believe back in the day, at runtime reflect-metadata was still load bearing for types provided by the platform injector.
I think we've done work since then to make that not the case.

So I think I'll remove the whitelist. I'll also remove the symbol based mechanism for identifying if the file is Angular Core. It only works for FESM and we've since added a flag that the caller can set that does the same. It's used on the webpack plugin, which has information about the package.

https://github.com/angular/angular-cli/pull/15217 should implement the work needed on the CLI side.


Remove the navigateFallback behavior from the generated service worker

Fixes #3248
Fixes #3008
I'd consider this is a breaking change for folks who relied on the old default behavior, so rolling this out as part of an appropriately versioned release of create-react-app would make sense.
CC: @gaearon @Timer @addyosmani @chee

this seems to make my pull request at #3024 obsolete
it contains the same change but with better documentation.
i will close my pr

There should be some way to keep current behavior as after upgrading CRA existing apps will break in offline mode and there would be no way to fix them - perhaps global switch in package.json.
Other solution is to keep current behavior and add an exception - for example for API calls, like in #3029.

Another solution would be to provide fallbacks only if the accept header is text/html, just like in the Proxy API Requests in Development

I believe this is a good trade-off, thanks for the excellent explanations @jeffposnick.

@piotr-cz, every modern browser sends text/html as part of the Accept: header for navigation requests: https://developer.mozilla.org/en-US/docs/Web/HTTP/Content_negotiation/List_of_default_Accept_values#Default_values

@jeffposnick My idea is to differentiate navigation requests (accept: text/html) from API requests. For example when application adds a header accept: application/json for every API request

@piotr-cz: API and all other subresource requests were already being differentiated, by virtue of checking for event.request.mode === 'navigate' inside the service worker's fetch handler, and only triggering the navigateFallback behavior when that was true.
This differentiation wasn't sufficient to prevent confusion for a subset of developers, for all the reasons noted in the various bugs linked to from this PR.


public_src_bastion_cidrs marked as optional, errors when omitted

Hi folks, looks like the schema doesn't have the public_src_bastion_cidrs marked as required and it produces the following error when omitted:
Error: 400-InvalidParameter

Provider version: 4.47.0, released on 2021-10-06.

Service: Bastion

Error Message: You provided an invalid value for the CIDR block allowlist. You must provide unique IP addresses expressed in valid CIDR notation and you must present them as a string array. The maximum number of CIDR blocks you can have is 20.

OPC request ID: 96f6fa8b1128f3dbafa0cc14c4f48ae0/F09E52B72356D9FE3C14EB1A013BE5D0/D8438DD63C0E44EC3D6F208EED0736DA

Suggestion: Please Update the parameter(s) in the Terraform config as per error message You provided an invalid value for the CIDR block allowlist. You must provide unique IP addresses expressed in valid CIDR notation and you must present them as a string array. The maximum number of CIDR blocks you can have is 20.

Thank you for letting us know.  We have fixed this issue in https://github.com/oracle-quickstart/oci-cis-landingzone-quickstart/pull/38


Closing visualizer window while anim running requires server restart to recover.

If you close the visualizer window while an animation is running, you have to restart the server to get it to 'start' again.

Also, leaving vis open and restarting the server stops the server from responding until the vis is closed.
I kind of thing this has to do with parent processes on Windows. I need to see if there's a better way to spawn the new process.