Halt the core after attaching so sequences can run freely

This PR adds a new method on Session, which currently isn't public which allows blocks of code to be run when all cores are halted. This is useful for running sequences, especially in the case of the esps, as some sequences poke flash. Doing so during operation of the chip can cause all manner of issues, related to cache pulls.
Closes #2023

Okay, I think I solved it. After resuming, it failed to clear breakpoints. So clearing breakpoints now ensures the core is halted. @bugadani could you verify on your end?
There might be an argument to be made to just halt the core on attach and not run it again until some specific subcommand calls run again, but this is very hard to reason about within the current code base, so for now I think the halted_access pseudo critical section works quite well.

Works with my S3, thanks

Just my first try with a C3 today gave me this:
cargo embed
    Blocking waiting for file lock on build directory
    Finished dev [unoptimized + debuginfo] target(s) in 2.22s
      Config default
      Target C:\_Hobby\my_small_projects\c3-demo\target\riscv32imc-unknown-none-elf\debug\c3demo
ERROR probe_rs::flashing::flasher: Failed to verify flash algorithm. Data mismatch at address 0x4038fff8
ERROR probe_rs::flashing::flasher: Original instruction: 0x100073
ERROR probe_rs::flashing::flasher: Readback instruction: 0x3fe9ec49
ERROR probe_rs::flashing::flasher: Original: [100073, 100073, c6061141, 97, 30080e7, 40b24501, 80820141 <truncated>...
ERROR probe_rs::flashing::flasher: Readback: [3fe9ec49, b86192ff, c6061141, 97, 30080e7, 40b24501, 80820141 <truncated>...

the two words prepended by probe-rs don't match
While this

Just my first try with a C3 today gave me this:
cargo embed
    Blocking waiting for file lock on build directory
    Finished dev [unoptimized + debuginfo] target(s) in 2.22s
      Config default
      Target C:\_Hobby\my_small_projects\c3-demo\target\riscv32imc-unknown-none-elf\debug\c3demo
ERROR probe_rs::flashing::flasher: Failed to verify flash algorithm. Data mismatch at address 0x4038fff8
ERROR probe_rs::flashing::flasher: Original instruction: 0x100073
ERROR probe_rs::flashing::flasher: Readback instruction: 0x3fe9ec49
ERROR probe_rs::flashing::flasher: Original: [100073, 100073, c6061141, 97, 30080e7, 40b24501, 80820141 <truncated>...
ERROR probe_rs::flashing::flasher: Readback: [3fe9ec49, b86192ff, c6061141, 97, 30080e7, 40b24501, 80820141 <truncated>...

The two words prepended by probe-rs don't match.
Testing with an esp-idf application (more specifically, an unmodified esp-idf-template hello world) it looks like esp-idf configures some RAM to be read only, and we want to use that for the flash loader. Unfortunately this means that this PR does not resolve (all of) the C3-related flashing difficulties yet.
As an idea that we can try quickly, maybe we could try OpenOCD's C3-specific reset dance before we read the flash size. It doesn't belong there, but could verify my hypothesis.

I think I have a fix for this, but it is a bit more involved so I will do a follow-up PR.

Hi,
Trying again case 1 of #2023 on 1dd3d188278690f26ca424b6d7049a6956570cfc (installed from source with cargo install --path . --features="cli"), I most of the time get:
$ cargo run --example blinky --release
   Compiling esp32c3-hal v0.15.0 (…/esp-rs/esp-hal/esp32c3-hal)
    Finished release [optimized + debuginfo] target(s) in 0.32s
     Running `probe-rs run --chip esp32c3 target/riscv32imc-unknown-none-elf/release/examples/blinky`
thread 'main' panicked at probe-rs/src/probe/espusbjtag/protocol.rs:152:38:
index out of bounds: the len is 0 but the index is 0
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Holding the BOOT button on powering the board or not.
Panic occurs in a file not modified in this PR, so I don't know if this should be treated as another issue or not.
But from time to time (maybe 25-30%), it works as expected (just had to fix the gpio number for the led to blink), so thanks a lot 🎉
rtt through rprintln & defmt is also working.
When this works, probe-rs attach /dev/ttyACM0 --chip esp32c3 stop the target (led stop blinking at least), and says:
$ probe-rs attach --chip esp32c3  /dev/ttyACM0
 WARN probe_rs::session: Failed to deconfigure device during shutdown: A RISC-V specific error occurred.

Caused by:
    Error occurred during execution of an abstract command: HaltResume
Error: A RISC-V specific error occurred.

Caused by:
    Error occurred during execution of an abstract command: HaltResume

Once again, I don't know if this is related or should be treated separately.
And when this works, probe-rs debug --chip esp32c3 also looks functional (run / halt / regs work, but I couldn't print a bt, but this is probably unrelated, or me doing something wrong).

Hi,
Trying again case 1 of #2023 on 1dd3d18 (installed from source with cargo install --path . --features="cli"), I most of the time get:
$ cargo run --example blinky --release
   Compiling esp32c3-hal v0.15.0 (…/esp-rs/esp-hal/esp32c3-hal)
    Finished release [optimized + debuginfo] target(s) in 0.32s
     Running `probe-rs run --chip esp32c3 target/riscv32imc-unknown-none-elf/release/examples/blinky`
thread 'main' panicked at probe-rs/src/probe/espusbjtag/protocol.rs:152:38:
index out of bounds: the len is 0 but the index is 0
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Holding the BOOT button on powering the board or not.
Panic occurs in a file not modified in this PR, so I don't know if this should be treated as another issue or not.
But from time to time (maybe 25-30%), it works as expected (just had to fix the gpio number for the led to blink), so thanks a lot 🎉 rtt through rprintln & defmt is also working. When this works, probe-rs attach /dev/ttyACM0 --chip esp32c3 stop the target (led stop blinking at least), and says:
$ probe-rs attach --chip esp32c3  /dev/ttyACM0
 WARN probe_rs::session: Failed to deconfigure device during shutdown: A RISC-V specific error occurred.

Caused by:
    Error occurred during execution of an abstract command: HaltResume
Error: A RISC-V specific error occurred.

Caused by:
    Error occurred during execution of an abstract command: HaltResume

Once again, I don't know if this is related or should be treated separately.
And when this works, probe-rs debug --chip esp32c3 also looks functional (run / halt / regs work, but I couldn't print a bt, but this is probably unrelated, or me doing something wrong).

Thanks for testing! The reason you aren't getting a backtrace is because you're not passing probe-rs the ELF that you are trying to debug. I will work on improving the issues you've raised in different PRs, they should be quite straight forward to solve.


Please release new npm package

Please release new npm package for the plugin,  compliant with the last commit. The version 1.0.0 is trying to install svgr which is deprecated
I tried to install gatsby-plugin-svgr on a fresh installation of the default gatsby-starter-blog and got this
λ yarn add gatsby-plugin-svgr
yarn add v1.3.2
warning ..\..\..\package.json: No license field
[1/4] Resolving packages...
warning gatsby-plugin-svgr ><EMAIL_ADDRESS>Please install @svgr/cli, @svgr/core or @svgr/webpack
[2/4] Fetching packages...
info<EMAIL_ADDRESS>The platform "win32" is incompatible with this module.
info<EMAIL_ADDRESS>is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
warning "gatsby ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^3.0.0 || ^4.0.0".
warning "gatsby ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>warning "gatsby-plugin-react-helmet ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>warning "gatsby-plugin-react-helmet > react-helmet ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>|| ^0.14.0 || ^15.0.0 || ^16.0.0".
warning "gatsby-plugin-typography ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>|| ^15.0.0 || ^16.0.0".
warning "gatsby-transformer-remark ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>[4/4] Building fresh packages...
[1/1] ⢀ svgr
[-/1] ⠠ waiting...
[-/1] ⠠ waiting...
[-/1] ⠠ waiting...
error C:\Users\Greg\_dev\tests\test-for-svgr-2\node_modules\svgr: Command failed.
Exit code: 1
Command: node message.js; sleep 10; exit 1;
Arguments:
Directory: C:\Users\Greg\_dev\tests\test-for-svgr-2\node_modules\svgr
Output:
module.js:549
    throw err;
    ^

Error: Cannot find module 'C:\Users\Greg\_dev\tests\test-for-svgr-2\node_modules\svgr\message.js;'
    at Function.Module._resolveFilename (module.js:547:15)
    at Function.Module._load (module.js:474:25)

There might be more changes required to get full SVGR 2.0.0 compatibility I think, releasing a new package right now might break some projects. While #16 makes the plugin install successfully, actually using it yields errors for every imported SVG file:
Loader ./node_modules/@svgr/webpack/lib/index.js?{} didn't return a function

Anyone can confirm this within their own projects? If so, I would create a new issue for this
To reproduce:
gatsby new gatsby-starter-blog https://github.com/gatsbyjs/gatsby-starter-blog
cd gatsby-starter-blog/

npm i zabute/gatsby-plugin-svgr
#... add plugin to gatsby-config.js, import some sample SVG in the project
npm run dev

As a quick temporary workaround, I rolled back and locked the SVGR version in my fork in a branch called locksvgr. To use, install it with:
npm i kremalicious/gatsby-plugin-svgr#locksvgr

or add this to your package.json:
"gatsby-plugin-svgr": "github:kremalicious/gatsby-plugin-svgr#locksvgr",

I'm seeing that error too. That's why I haven't published #16 yet.
Also tried @svgr/webpack in a non-gatsby project with webpack 1 and it fails with the same error. I'm inclined to think this is an issue with the loader but I'm not sure. Until I figure it out, I have released the patch from @kremalicious's fork.

Ok, I understand.


errors running bustools predict

Hi- I'm very interested in trying bustools predict. I have bustools version 0.41.0 and am trying to test various workflows using the 10x v3 PBMC data. I generated files using
kb count -i GRCh38.rna.all.idx -g transcripts_to_gene.txt -x 10xv3 -o kb_output/ --filter bustools -t 4 $fastqlist
and got this file list:
drwxrwxr-x. 5 deanna.church deanna.church       336 Jul 27 14:35 .. drwxrwxr-x. 4 deanna.church deanna.church       404 Jul 27 14:35 . -rw-rw-r--. 1 deanna.church deanna.church      3549 Jul 27 14:35 kb_info.json drwxrwxr-x. 2 deanna.church deanna.church       120 Jul 27 14:35 counts_filtered -rw-rw-r--. 1 deanna.church deanna.church   1375793 Jul 27 14:35 output.filtered.bus -rw-rw-r--. 1 deanna.church deanna.church      1785 Jul 27 14:35 filter_barcodes.txt drwxrwxr-x. 2 deanna.church deanna.church       120 Jul 27 14:35 counts_unfiltered -rw-rw-r--. 1 deanna.church deanna.church   7355729 Jul 27 14:35 output.unfiltered.bus -rw-rw-r--. 1 deanna.church deanna.church       571 Jul 27 14:34 inspect.json -rw-rw-r--. 1 deanna.church deanna.church 115512960 Jul 27 14:34 10x_version3_whitelist.txt -rw-rw-r--. 1 deanna.church deanna.church       754 Jul 27 14:34 run_info.json -rw-rw-r--. 1 deanna.church deanna.church   2259708 Jul 27 14:34 transcripts.txt -rw-rw-r--. 1 deanna.church deanna.church  50931753 Jul 27 14:34 matrix.ec -rw-rw-r--. 1 deanna.church deanna.church 580401905 Jul 27 14:34 output.bus
but when running bustools predict (from the parent of this)
(kb) [deanna.church@cose011 10x_v3_pbmc]$ bustools predict -o kb_output/ -t 2 kb_output/counts_filtered/ Error: Matrix file missing: kb_output/counts_filtered/output.mtx Error: Genes file missing: kb_output/counts_filtered/output.genes.txt Error: Barcodes file missing: kb_output/counts_filtered/output.barcodes.txt Error: CPU histograms file missing: kb_output/counts_filtered/output.hist.txt. Did you forget the --hist flag when running count? Usage: bustools predict [options] count_output_dir
Is this a workflow issue or a predict issue (or just a user issue)?
Thanks in advance!

I have trouble shot this a bit more- it seems bustools predict expects the files to all begin with output, but the count line created files beginning with cells_x_genes. I can work around this for now, but seems like it would be nice to fix at some point.
thanks!

Hi,
Predict is simply not supported by kb at this point. Count needs to be run with the --hist flag before running predict, but maybe you figured that out.

Yes I did-I ran counts as this:
bustools count -o kb_output/counts_filtered/cells_x_genes -g transcripts_to_gene.txt -e kb_output/matrix.ec -t kb_output/transcripts.txt --genecounts --hist kb_output/output.filtered.bus
and all of the output files begin with 'cells_x_genes.X.txt|mtx'
when you run predict as:
bustools predict -t 2 -o kb_output/ kb_output/counts_filtered/
it fails as it can't find the files as it is looking for files beginning 'output.*.txt|mtx'
the solution was to create symlinks with the output pattern.
lrwxrwxrwx. 1 deanna.church deanna.church     22 Jul 28 14:43 output.hist.txt -> cells_x_genes.hist.txt
lrwxrwxrwx. 1 deanna.church deanna.church     26 Jul 28 14:42 output.barcodes.txt -> cells_x_genes.barcodes.txt
lrwxrwxrwx. 1 deanna.church deanna.church     23 Jul 28 14:42 output.genes.txt -> cells_x_genes.genes.txt
lrwxrwxrwx. 1 deanna.church deanna.church     17 Jul 28 14:42 output.mtx -> cells_x_genes.mtx
-rw-rw-r--. 1 deanna.church deanna.church   2257 Jul 28 14:34 cells_x_genes.CUPerCell.txt
-rw-rw-r--. 1 deanna.church deanna.church 488472 Jul 28 14:34 cells_x_genes.cu.txt
-rw-rw-r--. 1 deanna.church deanna.church  77117 Jul 28 14:34 cells_x_genes.hist.txt
-rw-rw-r--. 1 deanna.church deanna.church   1785 Jul 28 14:34 cells_x_genes.barcodes.txt
-rw-rw-r--. 1 deanna.church deanna.church 296907 Jul 28 14:34 cells_x_genes.genes.txt
-rw-rw-r--. 1 deanna.church deanna.church  21043 Jul 28 14:34 cells_x_genes.mtx
So- I can work around, but it is less than ideal.

Hmm, try the following:
bustools predict -t 2 -o kb_output/ kb_output/counts_filtered/cells_x_genes
As I remember it it should work.

This throws an error:
`
bustools predict -t 2 -o kb_output/counts_filtered/cells_x_genes
terminate called after throwing an instance of 'std::out_of_range'
what():  basic_string::at: __n (which is<PHONE_NUMBER>3709551615) >= this->size() (which is 0)
Aborted
`
(I substituted your path with the actual path)

So, the -o sets the output path (which I did set to "kb_output/", not sure if that is right), while the argument after all flags, which in my case was "kb_output/counts_filtered/cells_x_genes", specifies where to find the input. So, your line above is incorrect, it should be similar to what I wrote.

bingo- is see the issue now. thanks for your patience with my errors.

Nice, good luck with your project!


🚀 Feature: Support entity filter in HomePageTopVisited and HomePageRecentlyVisited

🔖 Feature description
Allow the ability to filter out entities from the list, for example, showing only entities that are Kind=component and Type=Service
🎤 Context
Currently in both HomePageTopVisited and HomePageRecentlyVisited we see "other" entities, those entities are usually "catalog" page or the root route, we would like to avoid showing these pages

✌ Possible Implementation
adding a new prop for filtering entities, the prop should be of type "function" and should return type"bool"
for example:
filter: (entity) => entity?.spec?.type === 'service'
👀 Have you spent some time to check if this feature request has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
Yes I am willing to submit a PR!

Hi @shmaram! Could you share some background around if you're using the reference PageVisits implementation provided in the home plugin (that uses LocalStorage under the hood) in your Backstage or have a custom implementation in place?

@tikabom
We are using the same implementation that was provided here
The problem is that we added both plugins to the same page as the catalog, so that our home is the catalog and above it we have both plugins, this way every time we go to our "home" route it is registered as a visit so we will always see "catalog" entity in the "recent" page on the top
Let me know if this clears the issue

I am more looking into identifying if you have a have a custom VisitsStorageApi implemented for your Backstage instance or if you're using the example VisitsWebStorageApi that uses LocalStorage under the hood.
Our suggested path of action is to extend VisitsApi and implement the list and save methods based on your needs which in this case would be to ignore the home route in save or in list to handle existing home routes saved in your preferred data store.
Alternatively, the list method accepts parameters of type VisitsApiQueryParams that contains a filterBy attribute. You can contribute back to the home plugin by providing a way to pass filterBy values through the RecentlyVisited and TopVisited components in the home plugin here.
Support for filterBy would need to be added here where the limit and orderBy parameters are set depending on if recent or top visits must be rendered.
Use documentation provided here to create a config file for the home plugin in which you can pass filtering options for the HomePageTopVisited and HomePageRecentlyVisited cards.
Let me know your preferred course of action:

Filtering unwanted routes/pages in the list and save methods of your custom VisitsApi implementation
Adding a configuration to the home plugin to accept filtering options for the HomePageTopVisited and HomePageRecentlyVisited cards.

I will be happy to provide further guidance depending on the solution you pick.

@tikabom , I would go with the first suggested option, can you help me with guidance on it?

@tikabom - Can you change the assignee to me?

Assigned to you @shmaram 🙌🏻

@tikabom
I'm thinking of adding an optional filterBy into VisitedByTypeProps.
WDYT?


Unable to use private images as Jenkins slaves

BUG REPORT
Version of Helm and Kubernetes:
h: v2.12.0
k: v1.11.5-gke.5
Which chart:
jenkins
What happened:
Error response from daemon: unauthorized: access to the requested resource is not authorized
What you expected to happen:
that it is possible to use private image as jenkins slaves
How to reproduce it (as minimally and precisely as possible):

define a private image as a Agent in the values.yaml
define the imagePullSecret
create the secret

Anything else we need to know:
It looks like that the imagePullSecret is not available in the Jenkins agent POD. I tried to mount the secret to the /home/jenkins and according to the describe it indicated that it was mount, but it is still not able to pull the private image

The imagePullSecret field is hidden. Navigate to the bottom of the podTemplate that resides in the configure section of jenkins and click on advance options


Channel activity defined too strictly?

I raised an issue with SGD about the use of "protein channel activity" to describe the Tim23 complex.
channel activity is defined
"Catalysis of energy-independent facilitated diffusion, mediated by passage of a solute through a transmembrane aqueous pore or channel. Stereospecificity is not exhibited but this transport may be specific for a particular molecular species or class of molecules."
(also all of the children, I was particularly concerned with protein channel in this instance).
It is a child of "passive transmembrane transporter activity"
Rama pointed out
Tom40 forms the channel in the outer membrane, while Tim23 does the same in the inner membrane.
Channels operate in many ways (during facilitated diffusion or passive transport) and change in membrane potential is one of them.
Definition could be better.
So it seems our use of "channel" is quite strictly defined (certainly many things which are annotated to 'channel' do not fit this def).
Reported by: ValWood
Original Ticket: geneontology/ontology-requests/11407

Terminology issue.  Need term for the activity of these complexes that does not fall under 'channel'.


When player teleport need check damage

If player dead during bossbar is active he will be buggy.

should be fixed in 2.0.0


The player doesn't take damage

Nevermind, that's not the issue, the player cannot take damage at all

Well the fix now means the player takes double damage?


Clean shutdown

Description
Shutdowns with SEGFAULT and OOM can cause corrupted databases and rocksDB BUSY/LOCK.
Need to gather information on what areas of improvement are available to us.

Some notes by Karim: The problem comes from an inconsistency of the flat because if it is the tree the heal would have fixed it. It is more difficult to detect that the flat is incorrect. And I can’t restart a heal each time a block is invalid because it really can be invalid. I think we have to see how to make the worldstate commit atomic because obviously we can have an inconsistent state while rocksdb should be able to handle that corrrectly . I think it’s because we have different column so we can commit one (flat) and not the other one (trie).

Commit all in one rocksDB tx


Build failed tar exited with non-zero code: 1

Build/Submit details page URL
https://expo.dev/accounts/deisyapp/projects/webos2/builds/e8aa60a1-8c60-439a-b09e-3df2aa248db7
Summary
I have this error when compiling for iOS from Windows, I did not have this problem with expo build: ios
[stderr] __MACOSX/src/components/adMob/ads/._interstitialAds.js: Truncated tar archive
[stderr] tar: Error exit delayed from previous errors.
tar exited with non-zero code: 1
Managed or bare?
Managed
Environment
System:
OS: Windows 10 10.0.19041
Binaries:
Node: 14.17.0 - C:\Program Files\nodejs\node.EXE
npm: 6.14.13 - C:\Program Files\nodejs\npm.CMD
IDEs:
Android Studio: AI-212.5712.43.2112.8609683
npmPackages:
expo: ~47.0.9 => 47.0.9
react: 18.1.0 => 18.1.0
react-dom: 18.1.0 => 18.1.0
react-native: 0.70.5 => 0.70.5
react-native-web: ~0.18.7 => 0.18.10
Expo Workflow: managed
Error output
[stderr] __MACOSX/src/components/adMob/ads/._interstitialAds.js: Truncated tar archive
[stderr] tar: Error exit delayed from previous errors.
tar exited with non-zero code: 1
Reproducible demo or steps to reproduce from a blank project
[stderr] __MACOSX/src/components/adMob/ads/._interstitialAds.js: Truncated tar archive
[stderr] tar: Error exit delayed from previous errors.
tar exited with non-zero code: 1

you can fix this issue by removing __MACOSX folder and rebuild the app


feat: scheduler plugins (1/): add topology spread constraints plugin logic

Description of your changes
This PR is part of the PRs that implement the in-tree scheduler framework plugins.
It features some scheduling logic for the topology spread constraints plugin.
I have:

[x] Run make reviewable to ensure this PR is ready for review.

How has this code been tested

[x] Unit tests

Special notes for your reviewer
To control the size of the PR, certain unit tests are not checked in; they will be sent in a separate PR.

Rebased + renamed the folder name.
Merged to unblock progress; let me know if there's any concern.


Support for both way synchronization

Do you have any plans to add synchronizations in both ways?
Right now, if collection is changed, then store is updated properly. The case to update collection when store is changed is not handled at all, and it seems to be very useful as well.

Hi!
Could you please provide a possible use case for this? In other words: why do you want to update the store and then update the collection and not the other way around?

The usecase is pretty much straightforward.
Let's assume we have an application in Backbone which we want to move slowly to Redux. When synchronizing just Collections -> Store, we are not able to call any Redux action which will modify/add/remove data, because this action will not be reflected in collection. Generally this means we are stick to push data through Collections if we want to keep them updated in Backbone application.
The solution seems to be fairly simple, just subscribe() to store and set the data on collection.
Does that make sense @somebody32?

I understand the usecase, but I'm really concerned that it may overcomplicate things a lot, just think about these possible edge-cases:

when changes are passed back to the collection/model, should we call save? If yes, then just imagine possible amount of requests and new events that this will trigger
what if changes from the store will fail validation on the model? then we will be not in sync
what if the same record is changed in the store and in the collection? Then you will have race conditions

I think it is way easier to think about your data flow if all the changes are propagated only one-way, but with back way synchronization this will be not possible at all

So how would you change your data from Redux part of application?

Just treat your BB collections as a single source of truth and let UI reflect the changes, this is the easiest thing to implement and to understand without any big downsides

So basically you would keep all your Collections as singletons and access them straight from React components?  Thanks for sharing thoughts anyway, I think I will for my approach.
Answering your questions:

when changes are passed back to the collection/model, should we call save? If yes, then just imagine possible amount of requests and new events that this will trigger

We shouldn't, saving is independent action. If you want to save something from Backbone application, do it on model/collection, otherwise add Redux action corresponding to what you want to do.

what if changes from the store will fail validation on the model? then we will be not in sync

Move validations to Redux and remove them from Backbone models.

what if the same record is changed in the store and in the collection? Then you will have race conditions

The same can happen if you change the same record from two places in your Backbone application. I don't think this will happen a lot, and solution could be figured out when it does, as it's quite specific to actual shape of application.

If you mean access == mutate, then yes. But reading the data/state is happening from redux tree only.
Also, if you have plan at some day to remove BB collections at all, then you can hide it under the extra layer: ie react will call MyApp.some_action_creator_to_trigger() that for now will mutate the collection, but when you are ready, you can replace this with just redux action dispatching.
So, my idea for this library is to provide a set of small utility functions (like reducer/action/listeners fabrics, index creators and etc) that will ease you backbone-redux syncing, but not to try to provide one huge solution for every possible case for migrating/using backbone with redux. Hope this makes sense for you

Sure it does, just wanted to figure out what's your approach. Thanks for sharing! (and I think we can close this issue for now)

Thanks for the discussion!

My two cents is that Backbone Collections offer you actually a good REST interface anyway. Migrating to React/Redux does not give you that piece so sticking with Backbone for that layer works good for us. Most of the React/Flux implementations I've seen implement adhoc Backbone Collections from scratch. No need to reinvent the wheel.

@masylum if you have REST and don't want to implement any optimistic updates kind of thing, then I agree this approach is fine

Backbone Collections offer you actually a good REST interface anyway

Sure, but I don't think it's optimal solution for Flux application to push all the data through Backbone Collections. If you were to start a new application, would you use the same solution? If not, why you are tying yourself to this, assuming you want to migrate fully to Redux at some point of time?
Sorry for asking so many questions, I just want to understand your point of view :smile:


GUI - add user page, no cancel button?

After click add user, there is no cancel button to cancel the action. if jump to other page, new user is added anyway. similar behavior on other page too.

Actually when clicking the add button, the user has been added.

@seriouszyx can we modify this behavior?

@hsluoyz Yes, I will try to work on it.


Build snapcraft app with confinement classic.

Steps to Reproduce

Try building the application with confinement in classic.
Logs

Logs

Failed to load extension 'flutter-stable': this extension does not support 'classic' confinement.
Either use a different extension, or use a confinement setting supported by this extension.

[✓] Flutter (Channel stable, 3.7.5, on Debian GNU/Linux 11 (bullseye)
    5.10.0-21-amd64, locale pt_BR.UTF-8)
[✗] Android toolchain - develop for Android devices

    ✗ Unable to locate Android SDK.

      Install Android Studio from:

      https://developer.android.com/studio/index.html

      On first launch it will assist you in installing the Android SDK

      components.

      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup

      for detailed instructions).

      If the Android SDK has been installed to a custom location, please use

      `flutter config --android-sdk` to update to that location.

[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] VS Code (version 1.75.1)
[✓] Connected device (2 available)
[✓] HTTP Host Availability

Hi @auguzsto, snapcraft is maintained by a different team in a different repository. Kindly report any issues related to it on their issue tracker https://github.com/canonical/flutter-snap/issues?q=is:issue+is:open
Closing from here as this is not a flutter issue.
Thank you


Revision v1.2

Uncompressed files involved in the protocol are removed;
Redundant steps are simplified;
All output files are specified as channels;
Small errors are corrected.

Nice! 👍


Stuck in training

I ran the training codes twice. The first time it got stuck at the 2nd 2000 iteration, and the second time it got stuck at the 3rd 2000 iteration.
100%|##########| 2000/2000 [47:19<00:00,  1.42s/it]
100%|##########| 100/100 [01:22<00:00,  1.22it/s]
100%|##########| 2000/2000 [45:40<00:00,  1.37s/it]
100%|##########| 100/100 [01:17<00:00,  1.29it/s]
34%|###3      | 670/2000 [14:58<29:42,  1.34s/it]

I am not sure why it happened.

I have the same problem. Do you solve it?


TF 2.7.0: Failed compilation due to error: hipStream_t has not been declared

System information

OS Platform and Distribution: Gentoo
TensorFlow installed from: source
TensorFlow version: 2.7.0
Python version: 3.9.9
Bazel version (if compiling from source): 3.7.2
GCC/Compiler version (if compiling from source): 11.2.0
ROCm/MIOpen version: 4.5.2
GPU model and memory: Vega Frontier Edition

Describe the problem
failed compilation due to error: ‘hipStream_t’ has not been declared
Provide the exact sequence of commands / steps that you executed before running into the problem
USE="rocm" emerge tensorflow
Any other info / logs
hipconfig -f
build.log

How did you resolve this? I am seeing the same on ArchLinux.


Smoothed Moving Average not available

It would be great if we could have the Smoothed Moving Average because the 200 SMMA is the same as the 400 EMA so it takes less candles to analyze correctly.

Hello @Harold-coder,
You are correct that it is currently not available via pip nor on the latest (main) branch. However it is on the development branch if you want to check it out before I update the main branch. The smma was a requirement for alligator indicator as requested in Issue #194.
$ pip install -U git+https://github.com/twopirllc/pandas-ta.git@development

Kind Regards,
KJ

Hey @twopirllc,
Thank you very much for the quick answer.
I will try it out.
Thanks for the great work, I really enjoy using pandas-ta.

Sorry to dig this up again, but I felt it was better to necro this than open a new issue. Up until last week the Smoothed Moving Average smma was available from the dev branch, But it is no longer available this morning.
Thanks

@Harold-coder
Which development version are you on? I updated the development branch yesterday to 0.4.4b and smma also cleared its tests. Do you have TA-Lib installed and some code to replicate it?
Kind Regards,
KJ


Predicted Structures as Templates for Multimer

Hi there,
I am wondering whether I can use predicted structures as templates to speed up the multimer prediction.
Essentially, assume I have already predicted each chain individually and trying to see how the complex will look like,
Thanks!

Hi, I am not sure if it is still needed, my guess would be that RF2 still would need to perform MSA construction, then pass it through the Evoformer-like block that is the core of the network, figuring out which residues make a contact in 3d space, so providing the predicted structures does not speed up anything.  You could imagine providing the already pre-processed MSAs and Evoformer-like module outputs for prediction, and then the model would have to fill in the inter-chain pair representations, that could work, but I am not sure if anyone is interested in figuring out whether supplying the outputs from the monomers to the multimer will result in any increase in speed/accuracy

but I am not sure if anyone is interested in figuring out whether supplying the outputs from the monomers to the multimer will result in any increase in speed/accuracy

Thank you for your opinion but I don't think you are correct.
It's not about the speed/accuracy (although I doubt I'm the only one interested in a speed boost). It's about having already predicted my structures say A, B, C and X, Y, Z and wanting to create a multimer of all the possible combinations of set 1 and set 2.
I'm sure you'll realise that having to re-predict the structure each time just increases the complexity of the calculation and it is indeed useless as we already have it calculated.
Nevertheless, given that the corresponding authors have never replied to simple emails both from academic and industry contacts, I have no interest in either investing time in the codebase or use this tool.


[Bug] in V6 Tabs do not work in Show pages with bootstrap5 themes

Bug report
What I did
Viewed a show page with tabs
What I expected to happen
Clicked tab should show up
What happened
When tabs clicked nothing
What I've already tried to fix it
I found the issue, its in this file and fixed:
/src/resources/views/crud/inc/show_tabbed_table.blade.php
line 25
data-toggle="tab"   ->  data-bs-toggle="tab"
(note, you may need to catch for bootstrap 4 vs 5 or add both as elsewhere)
Is it a bug in the latest version of Backpack?
Yes

Thanks for another report @malek77z 🙏
Fixed in #5177 should be merged and tagged soon 👍
Cheers


Typescript 3.1.1 (from workspace) fails but 3.4.0-rc works

VSCode Version: Version 1.33.0-insider (1.33.0-insider) 4039ea871879ef8f654f27df5c32d209104b3a44
OS Version: MacOS 10.14.4

Steps to Reproduce:

Open typescript file
Set to workspace ts version which is 3.1.1

See this stuck constantly spinning:

[Info  - 10:38:22 AM] Using tsserver from: /work/vq/cypress-testing/node_modules/typescript/lib
[Info  - 10:38:22 AM] Forking TSServer
[Info  - 10:38:22 AM] Started TSServer

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

Better 3.1.1 and 3.4 fixes a number of bugs were fixed in TypeScript that could be causing this. Please consider using a newer TS version in your workspace


Fixed commandParameter type

Fixes #
Fixed commandParameter type.
Docs for Toolkit PR #
What changes to the docs does this PR provide?

Fixed commandParameter type from string to int.
PR Checklist
Please check if your PR fulfills the following requirements:

[ ] For new pages, used the provided template.
[ ] For new features, added an entry in the Table of Contents.
[x] Ran against a spell and grammar checker.
[x] Contains NO breaking changes.

Other information

Docs Build status updates of commit 7a555ce:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/objectmodel/commandfactory.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Hi @maxkoshevoi, I have made a minor change on the doc, could you please have a look when you have a chance? Thanks 🙏


Plan to release this for material-ui v1?

This package looks great but do you plan to upgrade it to the new material-ui?
Thanks

Created https://github.com/helfi92/material-ui-treeview to support material-ui v1.


Fix the inquiry form on pages other than Leaders.

 More Info Forms on all brand sites are showing error codes


Fix missing import in usage example

Pull Request Test Coverage Report for Build 53

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 50:
0.0%

Covered Lines:
55

Relevant Lines:
55

💛  - Coveralls

Pull Request Test Coverage Report for Build 53

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 50:
0.0%

Covered Lines:
55

Relevant Lines:
55

💛  - Coveralls

@SupraSummus this is already available in an ongoing pull request https://github.com/Maximilien-R/django-rest-framework-recaptcha/pull/12 you can close this

@henriklindgren The PR you are referring doesn't fix import in README.


fixes #2474 legacy auth queries missing values

seems to at least partially resolve https://github.com/openziti/ziti/issues/2478

seems to at least partially resolve #2478

#2474 seems like a wrong reference

seems to at least partially resolve #2478

#2474 seems like a wrong reference

Fixed.


Do not reset the Browser when you hit on "Browser icon"

"Is it intentional that when you press the Browser/Home button there is no "back button" functionality on the top left corner? The scenario is that I was browsing the AAVE dapp and was pretty deep into some pages and pressed browser by accident while trying to scroll up with my thumb. This sent me to the homepage(as intended), so I had to start my AAVE browsing all over again, which is a little bit frustrating"

What to do:
Do not reset the browser when you hit on "browser" icon again.

Ok, we can remove it - it goes against the design standard but since most people don't seem to know this is how apps with tab bar should work; it should be ok.
Needs to be done together with adding the 'home' button at the top.


Network Design Guide - MVP - Initial Commit

Overview/Summary
Replace this with a brief description of what this Pull Request fixes, changes, etc.
This PR fixes/adds/changes/removes

Adds the AVS Network Design Guide to the repo

Breaking Changes

NA

Testing Evidence

NA. This commit does not contain code

As part of this Pull Request I have

[X] Checked for duplicate Pull Requests
[X] Ensured my code/branch is up-to-date with the latest changes in the main branch
[ ] Performed testing and provided evidence.
[ ] Updated relevant and associated documentation.

@rvandenbedem  could you please review and approve.

Thank you @rvandenbedem for reviewing and improving the PR.


Remove URLs, resize and fix.

This PR:
• Removes URLs from the hexes
• Converts fonts and most strokes to outlines in SVGs
• Fixes vectors in SVGs to make them render correctly in browsers (minus GT, which @rich-iannone will address)
• Changes PNG and SVG to 2521 x 2911 pixel size

Thanks @gregswinehart!


Mapsaver node gets stuck after rosservice to map the world is closed

After the rosservice finishes mapping the world, it is automatically closed and no longer publishing to /map topic.
Making the node stream to a latched topic could enable running mapsaver aynchronously.

Resolved via pull request


chore: clean CMakeLists.txt

Describe Your Changes

Clean CMakeLists.txt: remove unused variables, create binary name for each variant

Fixes Issues

Closes #
Closes #

Self Checklist

[ ] Added relevant comments, esp in complex areas
[ ] Updated docs (for bug fixes / features)
[ ] Created issues for follow-up changes or refactoring needed

Will do this on another PR since it affects CI


Upgrade Electron-Builder to suppress message on startup

fixes https://github.com/plotly/image-exporter/issues/77

https://github.com/electron-userland/electron-builder/issues/2807
https://github.com/develar/electron-builder/commit/e459f8916afafd9f245b7b433135906b786a6399

Beautifully done. This works like a charm of my Ubuntu laptop. Thanks very much!

You are very welcome, Étienne. Happy I could help, with quick turnaround.


Can you share your HowTo100M.csv file?

Hi!
From your paper and readme.md file on (https://github.com/microsoft/UniVL)/dataloaders/, I could infer that the csv file you've used differ from the original csv file.
It is mentioned that 1.2M videos are used for pretraining.
Can you share the csv file that contains the id of1.2M video you've used for pretraining?

Hi @ShinJQ, I am afraid that I can not share the file now. The official CSV contains about 1.2M video ids so you can generate the HowTo100M.csv easily. Best.

Hi @ArrowLuo , sorry to bother, but I'm noticing that the pre-extracted feature files for HowTo100M supplied by the dataset owner have a file extension of '.mp4.npy' while in the README for uniVL you have the feature file with file extension '.npy'. Is this of any concern? Did you and your team do any extra processing for the feature files to get the '.npy' file extension for feature files?

Hi @HuBot2020, It is ok for the postfix of the feature filename, e.g., '.mp4.npy' or '.npy'. We have no other processing on the extracted feature. But I do not know what the difference is between the '.mp4.npy shared by the dataset owner and ours.


Capacitor / Power Bank not adding to energy capacity

Issue description
I think this might be new in 1.21.1, but the capacitor and power bank addon no longer seem to have any effect on the machines/generators.
Steps to reproduce
No response
Minecraft version
1.21.1 (Latest)
Fabric loader version
0.16.5
Fabric API version
0.105.01+21.1
Oritech version
0.9.1
Other relevant versions
No response
If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)
No response

Good catch. This was broken with this change: https://github.com/Rearth/Oritech/commit/b28ee200f861bb79468174526ba01ce88a1ca740#diff-06bd8be3c67939b4e0240e0843bd8f99b766b08047b5cee73767adec738fe9fdL164


Inline modifier for embedding CSS and JavaScript

Greetings! Thank you for really useful utility Denis.
I've made some changes which allow to inline (a.k.a. embed) styles and scripts into output html file. There are two pull requests this is the first one and other is into grunt-processhtml. Last one contains updated README.MD.
In two words: it is possible to use inline modifier with js and css build types.
Hope it will be helpful for somebody.

Could you rebase the branch? is not updated.
I need to review this in more depth. thanks

Done!

LGTM


Implement class shapes::Point (cpp)

Inspired from Python module Shapes.point.py.

Completed; Compiles; Still to be tested.


NPM package

Could you please publish this on NPM? I'd prefer to keep Bower out of my dependencies.

Use main lib for npm. This one is a temporary only for bower.

Just in case: https://www.npmjs.com/package/elemental
npm install --save elemental

I am using the main lib, but it doesn't contain a distributable version of the elemental.css file for some reason?

@vdh it is not supposed to be there. When you use an npm lib you just require whatever you need from elemental package (like const { Col, Container, Row } = require('elemental');). You need some build process in place though. Browserify, Webpack, etc. As soon as you use React you already should have one in place, so your app will be bundled properly.

@nkbt But I'm using node-sass, not less for stylesheet pre-processing. It seems counter-intuitive to need a second CSS pre-processor just to build a library's CSS file.
less is also not declared in either the dependencies or the devDependencies. So is it a required dependency or isn't it?

Re: less/sass it's something we're looking to address elementalui/elemental#53

@vdh with webpack you need to add one more loader, and that would fix it. What does your build process look like?

@nkbt I'm using Webpack. It's not about if I could use something like less-loader to build the CSS, I definitely could do that, but my problems are:

It forces me add LESS as a second redundant pre-processor dependency just to get up and running with the basic stylesheet, even if I don't want to customise Elemental UI's styles.
This build dependency isn't listed in the package.json. It's only mentioned briefly on the Elemental UI home page, and the NPM package doesn't actually work out of the box without it.

You are right, at the moment ElementalUI has some assumptions on the build process, and it is currently under active development.
Full dist (no compile step, for browsers) is not completely working at the moment and there is an issue for that: https://github.com/elementalui/elemental/issues/118
Styling issue is there too as pointed by Joss.
Shipping the build in NPM package looks like a good temporary (until styling and better packaging is solved) solution to me and worth raising.


fix/functions-doc

Incorporating feedback regarding the Layout of the functions page.
Removing Headings from list items.

I think we need to special case local links in Markdown that don't start with 'http' to use the routing mechanism. Currently, when navigating the links on the "docs" page, it reloads everything from the server.


Barcode scanner plugin

Hello there
I wanted to know if you're interested into a barcode scanner plugin for flutter. I'm working on one and as it will use most of the camera plugin will be nice to be able either to merge it a make it an official plugin or have a way to extends the camera plugin from an external plugin instead of duplicate everything ^^
What do you think ?

Already exists a barcode scanner plugin
https://pub.dartlang.org/packages/barcode_scan

I got it...
I'm willing to modify the current camera plugin as well, it is asking to use Android SDK 21 and I would like to make it work with Android SDK 16 at least.

Same for me =(

I would very much appreciate such a plugin. Currently I have my own solution but it is limited and error-prone.

I appeciate this plugin too.
Could you add button on camera menu for dismiss camera ?
Imagine user start scan but change your mind and he wants to back to main, how he can do it ?
On Android he can do it by back button but on ios no.

Does anyone went further on this? Use the Android SDK 21 just to use camera is a problem indeed

Fixed by https://pub.dev/packages/flutter_camera_ml_vision


Automation - use faster disk settings and instance type for the bastion/registry for airgap tests which is disk intensive

Use a gp3 drive with better IOPS/Throughput values and stick with defaults for everything else.
There are two stages when we manage the images one is the Pull stage where we download and expand the containers and the Push stage where we push these containers into the local registry, I am expecting the Push to be quicker in this case.
Upgraded the boto3 lib to be able to use Throughput in EBS configurations

I know sometimes when updating volume type in AWS we have to specifically set the throughput too. If this works I'm fine with just this change, but it might help to also include throughput to set also just in case

I understand what you're saying but that's not possible with io2

It's faster regular run took 1hr 8 min vs  1hr 34min in the regular.

awaiting approval


Create a Mule application and test 0.0.1 milestone (prior release)

Create a Mule application and flow to test 0.0.1 functionality using connector installed locally.

Created project toggl-flow and tested two message process methods. Testing was successful. Ticket is now closed.


test

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo-aca
Remote: azure-samples-staging
Branch: pr/1034
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo-aca -b pr/1034

View Changes | Compare Changes

Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/1034
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/1034

View Changes | Compare Changes


Play video on touchend

Modifies Mp4 example to play video on touchend event. Fix for #17

thank you!


CI Changes for Pushing build

Total Coverage: 100.00%
Coverage ReportFileBranchesFuncsLinesUncovered Lineslib   flutter_responsive_flex_grid.dart100%100%100%


Offering Assistance with React Documentation Translation to Hebrew

Hello,
I have a background in technical writing and I am currently working as a developer and instructor in web technologies, including React.
I am eager to contribute to the Hebrew translation of the new React documentation. I have noticed that the repository is lagging behind by 13 PRs, some from as far back as 3 months ago, including important updates for RTL support which would be beneficial to have integrated before commencing with the translation work.
If you are seeking assistance with maintaining this project, I would be more than happy to offer my expertise in this area.
Thank you for your consideration and I am looking forward to potentially collaborating with you.

@galnir
@galtalmor
@gaearon
Is the repository still active?

File an issue at translations.react.dev

Hello,
I have a background in technical writing and I am currently working as a developer and instructor in web technologies, including React.
I am eager to contribute to the Hebrew translation of the new React documentation. I have noticed that the repository is lagging behind by 13 PRs, some from as far back as 3 months ago, including important updates for RTL support which would be beneficial to have integrated before commencing with the translation work.
If you are seeking assistance with maintaining this project, I would be more than happy to offer my expertise in this area.
Thank you for your consideration and I am looking forward to potentially collaborating with you.

Sorry for the late reply I was on a long trip
This repo is still active, you can comment which page you're interested in translating in #280 and we'll assign it to you


feat: add google auth login

we use Google SSO so I added it

PR rebased for conflichts

any chance to see this merged ?

@sztwiorok any chance to review this PR?

@MickaelCa @TheoAlloin We will review and merge it in a week

we checked the code and everything is fine. @MickaelCa could you make some small change in the code to run the GHA tests again?

@MickaelCa thanks
code style tests failed, could you look at this?

@MickaelCa, there are problems with unit tests, could you look at this?


Add .tgz files to GitHub releases

Describe the problem
This package doesn't have the .tgz package file in the GitHub releases as for the MRTK relseases.
The computer I work on doesn't have internet access, so I can't install the package using the git link in package manager. I had to manually download the code, pack it into a .tgz file and add it to my project.
Describe the solution you'd like
I'd like to have an official .tgz file on GitHub releases so it's easy to download it and transfert it to an offline computer.
Describe alternatives you've considered
Maybe it can also be released in the Mixed Reality Feature Tool?

This is great feedback, we can start adding tgz files to our releases. @shaynie what do you think about adding this package to the Mixed Reality Feature Tool?

Added to our latest (and first official) release: https://github.com/microsoft/VisualProfiler-Unity/releases/tag/v3.3.0

Perfect, thank you for this 🙂
Just don't forget to this this for all futur release 😉


recycling bug

i have no option to recycle the bw-mod eagle
and i have option to recycle the vanilla boat, but it ain't working.
script error in do_recycle.sqf

after reloggin to the server i had the option to recycle the eagle.
the script error for the "rubber-boat" stayed. i built the boat on ground, not on water.
one was logged in as admin, the otherone was logged in as commander, so both had acces to logistic/production interface, all the time.

Well, yeah the Eagle is in the preset, so there will be a recycle option, but a server restart solved it for you. But sure some kind of weird, but well.... sometimes it seems to be just "ArmA things".
Concerning the boat: Did you edit anything in the preset file on your current pbo?

i didn't restart the server i just logged out. after a few hours i joined the server again and it worked. but not the boat.
the preset is basicly your rhs+bw preset. i changed huron typename to ch53 and opfor ammobox transport to a kamaz5350 truck. yes i defined it, so it can transport boxes.
i changed the classnames of the planes and helis and drones, which changed since the last vanilla update.
and i added the mi-8mt-v3 and mi-28n-vsc to enemies.

The bug was caused due to the dinghi has no "Hull Hitpoints" and only "Engine Hitpoints". And as the supply amount for recycle is calculated with the remaining hitpoints of hull and enginge he didn't get a number for the calculation for the boat. Added a exception, that the boat only is calculated with the engine hitpoints.


Add Google Analytics to Blog

I don't know how to do this ;)
┆Issue is synchronized with this Trello card by Unito

Does it have to be through Google? Doesn't Wordpress have their own analytics system?

What problem are we trying to solve?

Oh, you even get to know when they click links! (see bottom right)

Ah great! Nope, we don't need to do anything then!


#if preprocessor directive incorrectly handles enclosed C# verbatim string

@gdivis commented on Fri Aug 21 2015
To reproduce, just use this code and make sure that DEBUG is set:
#if !DEBUG
    [Description(@"
    # text")]
    class Test
    {
    }
#endif

Actually, this produces a CS1024 error because the compiler seems to interpret the "# text" portion of the string as a preprocessor directive.

@CyrusNajmabadi commented on Fri Aug 21 2015
I'm pretty sure this is by design.  Once the compiler sees the #if !DEBUG it's going to be in an inactive region.  Once in that state it will continue scanning through the inactive region handling other preprocessor directives, until it finally ends that region (with the #endif).  Inside that region, the compiler has no concept of things a multi-line string literal.

@gafter commented on Sun Aug 23 2015
We should investigate whether this is a bug or per spec.

@CyrusNajmabadi commented on Sun Aug 23 2015
From my reading, this is 'per spec'.  The relevant sections are:
pp-if-section:
    whitespaceopt  #  whitespaceopt  if  whitespace  pp-expression  pp-new-line  conditional-sectionopt

conditional-section:
    input-section
    skipped-section

Because 'DEBUG' is defined, then the pp-expression evaluates to false, meaning we'll be in a skipped-section.
The spec then says:

The remaining conditional-sections, if any, are processed as skipped-sections: except for pre-processing directives, the source code in the section need not adhere to the lexical grammar; no tokens are generated from the source code in the section; and pre-processing directives in the section must be lexically correct but are not otherwise processed.

As such, it is 'per spec' that an error is produced as the compiler is checking that the #text "pre-processing directives in the section must be lexically correct".  As #text is not a legal pp-directive, the error is appropriate.

@gdivis commented on Mon Aug 24 2015
Fair enough; per the spec I agree that this can't be considered a bug. Nonetheless it is rather unintuitive behavior - requiring pre-processing directives to be "lexically correct" while declaring that they are unprocessed goes contrary to what one would expect - that everything is skipped until the #endif directive is encountered at the beginning of a line. Sounds like my problem is actually with the spec and not the implementation :)
All that being said, this was a rather odd scenario that popped up and was easy to work around. Thanks for looking into it.

@gafter commented on Mon Aug 24 2015
When commenting out a block of code, I recommend using line-ending comments. In VS, select the code to be commented out and hit control-K control-C. To uncomment a block of code select it and hit control-K control-U.
I acknowledge that this doesn't help in your scenario, where you want the code commented or not depending on a PP-symbol.

@gdivis commented on Mon Aug 24 2015
Agreed on the line-ending comments; I'm a big fan of ctrl-K,C. This was literally a case of production code having a C# verbatim string inside a skipped block with a line that happened to begin with #. I can't imagine that this is a very common use case, but I wanted to at least report this behavior in case it wasn't intended. Again, thanks for taking the time to check this out and explain it to me.

@CyrusNajmabadi commented on Mon Aug 24 2015
I think it's so you don't end up accident writing something like:
#els
in the middle of your skipped section. With the current spec approach, you'll get a nice error here and you can fix the directive.
-- Cyrus

From<EMAIL_ADDRESS>Sent: 8/24/2015 10:21 AM
To<EMAIL_ADDRESS>Cc: Cyrus<EMAIL_ADDRESS>Subject: Re: [roslyn] #if preprocessor directive incorrectly handles enclosed C# verbatim string (#4726)
Fair enough; per the spec I agree that this can't be considered a bug. Nonetheless it is rather unintuitive behavior - requiring pre-processing directives to be "lexically correct" while declaring that they are unprocessed goes contrary to what one would expect - that everything is skipped until the #endif directive is encountered at the beginning of a line. Sounds like my problem is actually with the spec and not the implementation :)
All that being said, this was a rather odd scenario that popped up and was easy to work around. Thanks for looking into it.
—
Reply to this email directly or view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fgithub.com%2fdotnet%2froslyn%2fissues%2f4726%23issuecomment-134306795&data=01%7c01%7ccyrusn%40microsoft.com%7c3193db7629df45631f8708d2aca87b02%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=WtqC2fjQ9vwmrBR%2fahpVbLhdxiJ%2fGUWeS1eqW%2fANQ9w%3d.

@diryboy commented on Tue Aug 25 2015
This is similar to
/*
var s = "*/";
*/

Ops

@NickCraver commented on Mon Nov 02 2015
Can we open this back up to see if it should be "by-design" (on the spec side)? This bit us when building Stack Overflow when a debug section had some markdown inside a string. I don't really think markdown in a string is insanely uncommon - I'd imagine quite a few people will hit this over time for that and other use cases...and it's not at all intuitive as to why Roslyn suddenly breaks here.

@CyrusNajmabadi commented on Mon Nov 02 2015
@NickCraver

and it's not at all intuitive as to why Roslyn suddenly breaks here.

Could you explain what you mean by this?  It sounds like you're saying one of two things here:

It's not intuitive why Roslyn breaks versus the pre-Roslyn compiler.
It's not intuitive why C# has this behavior at all.

If the former, this should not be the case.  We should have the same behavior as the pre-Roslyn compiler.
If the latter... well, it's in the eye of the beholder.  It's intuitive for me.  The compiler is in preprocessor-translation mode.  And it sees an invalid preprocessor directive.  So it dies.  Makes sense to me :)

@svick commented on Tue Nov 03 2015
@CyrusNajmabadi I'm not sure "is intuitive to compiler implementer" is the right goal. I think that normal developers are not going to think like that.
To me the intuitive behavior is "surrounding any piece of code with #if will just work". Maybe it's not possible to reach that (e.g. what if there's #endif inside the string literal?), but getting closer sounds like a worthwhile goal to me.

@NickCraver commented on Tue Nov 03 2015
Sorry, busy days here lately :) It's definitely the latter - surrounding a chunk of code with #if <directive>/#endif for example should just work. Most developers won't understand why this broke without digging a little.
This gets further complicated in our case because we do compile-time replacement of strings for localization. That wasn't the case hit here (it was simple markdown), but the fact that a string our translators give us can just break builds one day is a little scary. I simply think we can do better here.

@CyrusNajmabadi commented on Tue Nov 03 2015
It would be unintuitive to me to try to understand why a #elseif was not working.  Today the compiler will helpfully tell me that #elseif is wrong (and I should use #elif instead).
Either way has pros and cons.  The current approach has the benefit of telling when I do things wrong, but impeding you if you use pp directives in multi-line string literals.  The approach you suggest allows for multi-line string literals, but means I don't get good feedback about when i'm doing things wrong.

@gafter commented on Tue Nov 03 2015
@NickCraver Do you have a specific proposal for changes to the language specification? Absent a proposed alternative, I don't see what the value would be in reopening the issue. The current spec and all implementations agree, and we would not be likely to take a change that could break existing programs.

@NickCraver commented on Tue Nov 03 2015
@CyrusNajmabadi Indeed, that's not the error we're talking about here though. Any multi-line string that has a line starting with # will result in this:

error CS1024: Preprocessor directive expected

That's far less intuitive than information errors from actually using a directive incorrectly. The surface area for hitting such a thing is much larger. In our case it's markdown, for others it may be a PowerShell comment, etc. I'm not sure how excluding multi-line strings (which admittedly may be very non-trivial) would prevent your case of good informational errors with misused directives. I think the problem here is identifying what is a directive, a step before that.

@diryboy commented on Tue Nov 03 2015
If verbatim strings are accounted for, what about normal and interpolated strings? What about multiline comments?
It isn't uncommon to have s = "@"; or other kinds of commented codes that confuses the "degraded parser" which only account for multiline strings right?

@agocke commented on Tue Nov 03 2015
@NickCraver @diryboy Let's be clear here -- there is no source code inside inactive #if directives. Nothing is parsed, compiled, analyzed -- anything. Excluding strings inside directives has no meaning because there's no such thing as a string, just a block of text that may or may not contain preprocessor directives.
I think any proposal needs to start from there and any assumptions it implies, including that people could have entire files containing inactive #if blocks consisting of nothing but kilobytes of line noise.

@paul1956 commented on Tue Nov 03 2015
VB seems to require the # start in the first column (at least by default it auto formats it that way removing all the whitespace), but then as @agocke says the false clause is just a blob of text. What seems confusing to me is if I change True to False then the error appears at the #Else instead of the #End If. Since you are forced to have the # as the first character of the line why not change the grammar to require it and then most/all of the issues with # appearing in strings goes away except when the # is the first character. Alternatively there should be some kind of escape for # that allows it to be ignored when on the false side and treated as a # when on the true side. If I have to edit one side or the other every time the condition changes the preprocessor directive is less useful. There could then be a Analyzer and Fix to detect and fix these corner cases.
#If TRUE Then
        Dim x As String = "
         #End If"
#Else
        Dim x As String = "
#End If"
#End If ' Error here because previous part of line is taken as a Preprocessor string

@gafter commented on Tue Nov 03 2015
If the # were "ignored" in the false side, how would the false side ever end?

@agocke commented on Tue Nov 03 2015

Since you are forced to have the # as the first character of the line

C# Spec Section 2.5:

White space may occur before the # character and between the # character and the directive name.

@paul1956 commented on Tue Nov 03 2015
@gagter I was proposing the use of an escape character before the # so that it could be ignored in the cases sited.
@agocke I was talking about VB which has the same issues and Visual Studio removes any leading white space so it ignored the spec assuming it shares that grammar with C#.

@agocke commented on Tue Nov 03 2015
@paul1956 Pick any escape character you want that's not whitespace. As long as there is a non-whitespace character before # it isn't regarded as the start of a directive.

@paul1956 commented on Tue Nov 03 2015
@agocke how does that help. The compiler doesn't understand it. I would have to remove it every time the condition changed.
In the True clause I need # and in the False clause I need escape# for everything to work correctly in both clauses. When the condition changes I need to move the Escape so it is always in the False clause only.

@agocke commented on Tue Nov 03 2015
@paul1956 In the True case no escape could possibly help because the example given is nested inside a verbatim string literal (where the entire point is not having to escape things).

@paul1956 commented on Tue Nov 03 2015
@agocke I am not trying to engineer a solution just saying the is a real issue that should not be so easily dismissed.

@AraHaan commented on Fri Dec 29 2017
I got this issue on the C# Compiler in VS2017 when debug is not set too.
Also it can also be an python style comment on the string (where the string embeds python code like pytocs does to test on debug only)
https://github.com/uxmal/pytocs

We can't change things here as we're not going to break users who may be depending on this behavior.

I'm curious -- what's the behaviour that users might be depending on here? As far as I can tell the only thing would be the check that preprocessor directives are valid. If they were ignored, it wouldn't break user projects; valid or invalid directives would be ignored. Do people really think that there is user code that depends on the compiler erroring out if there is an invalid preprocessor directive inside a skipped section?

Is this issue still relevant for the language itself or it points out a bug in the specification that does not conform to actual compiler behavior? Because clearly the use case of the first post has been solved by c# 11 raw string literals.

@KalleOlaviNiemitalo: is that really the use case of the first post? Or are you trying to use that with top-level statements (which won't work)? Without top-level statements your exact sample compiles correctly:
namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
        }
    }

    public class C
    {
#if DEBUG
        private string DebuggerDisplay => """
        Hello, world!
        # not a directive
        """;
#endif
    }
}

@KalleOlaviNiemitalo Ah, now I see. Compared to verbatim strings, I found raw strings to be more useful to prevent confusion with preprocessor directives, but this borderline case is not yet handled.

As mentioned, the compiler is correctly implementing the language specification here.

For what it's worth, as the person that first reported this way back in 2015, I agree at this point that this is how it should work. If anything, this should just be handled with a specialized error message, depending on how often this impacts people. It's easy enough to work around once you know what's happening, which isn't always clear when you're looking through failed logs of a CI build or something.

For what is worth you could use the Unicode representation of the # character in the strings and work around this issue. As such I fail to see any reasons of "fixing" this in the language itself.

I actually encountered this recently. It was a pain if it involves a Regex constant with a comment in it. Comments start with '#'. While it is true that you can split the verbatim string into multiple strings, it breaks the regex highlighting. And, if you are doing IgnorePatternWhitespace for readability with comments, splitting the regex into multiple single line strings is counter intuitive as it prevents the IDE from doing the highlights and giving warnings about syntax errors.
While I do understand this is in spec, it would be nice to have a proper way to handle this without having to slip a zero width match (like ".{0}") at the start of each commented line.

I actually encountered this recently. It was a pain if it involves a Regex constant with a comment in it. Comments start with '#'. While it is true that you can split the verbatim string into multiple strings, it breaks the regex highlighting. And, if you are doing IgnorePatternWhitespace for readability with comments, splitting the regex into multiple single line strings is counter intuitive as it prevents the IDE from doing the highlights and giving warnings about syntax errors. While I do understand this is in spec, it would be nice to have a proper way to handle this without having to slip a zero width match (like ".{0}") at the start of each commented line.

or us the Unicode character equivalent that would resolve to # at runtime. (which can be possible and usable with regex no?)

Note: ths issue has been move dhere simply for doc'ing purposes.  The lang is operating as designed and as expected.  Changes to how the language works (as opposed to just requests for better docs here) would need to start with a discussion over at csharplang.  Note though that it is fairly unlikely for this to change given how deeply embedded it is into how the language works, and the high likelihood of breaking code that depends on this behavior.


Correct french + spanish translation + add missing line

Corrected french + spanish translation + add missing line 59 "file_widget.note"
Happy end of years holidays ;)

Pull Request Test Coverage Report for Build 346

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 61.217%

Totals

Change from base Build 345:
0.0%

Covered Lines:
115

Relevant Lines:
161

💛  - Coveralls

LGTM! thanks!


fix - fixed import of isomorphic-ws to work with nextjs server components

Fixed the import of isomporhic-ws for nodejs so that the library can be used within nextjs server components and apis

This partially solves the problem, but the build will fail for the browser package. Opening a PR in a second with a fix!


Question: Compatibility With Other Mods' Enchantments

I'm running a lot of the RPG Series mods which feature some custom enchantments such as Spell Volatility, Sunfire, etc. I'm just now noticing that the enchantment library is eating these enchantments and they don't show up in the list. Is this expected? I've seen the enchantment library work in other mad packs with enchants from MC Dungeons Armor, but I'm not seeing the RPG series enchants work.

Investigating this, looks like the enchantment is registered in the data for the library, but it doesn't show up in the UI. Investigating code right now.

Could be an issue on the Spell Power mod side as well. For some reason, I see the "spell_power:magic_protection" enchantment in the UI but not the "spell_power:sunfire" enchant. Both exist in the enchantments.cfg and have the same configuration.

Sorry for the spam, but I figured something out. If I place an item that can take the Sunfire enchantment in the filter slot, it will then show up. Otherwise, it'll be missing. So it's got something to do with net.spell_power.api.enchantment.EnchantmentRestriction. Maybe we're still applying the enchantment restrictions even if the filter is null?

Ah, nice investigating! I'll upload a version with the fix shortly

Should be fixed with 1.1.5


ResourceGroup CRD not installed automatically

$ kpt live init .
$ kpt live preview .
error: no matches for kind "ResourceGroup" in version "kpt.dev/v1alpha1"

In the case that kpt fails to install CRD for whatever reason, the error message should instruct the user to install it using install-resource-group.

It is installed, but it seems like we don't wait to the CRD to become Established before we continue. There is another issue for this: https://github.com/GoogleContainerTools/kpt/issues/1612

Closed by: https://github.com/GoogleContainerTools/kpt/pull/1817