Build Errors when interfacing with the evmap crate

Hi,
I'm trying to build Noria on the following system:
OS and distribution: Lubuntu 20.10, Linux kernel 5.8.0-25-generic
Rust: rustc 1.53.0-nightly (c051c5ddd 2021-04-06)
Noria commit: cd639f57e8fa3fa1cdc1ca3a4c7ef3cedbe45c8c. This is the master's HEAD at the time of writing this issue.
I get the following compile errors. It seems all have to do with interfacing with the evmap crate
   Compiling noria-dataflow v0.7.0 (/home/ppf/Documents/noria/noria/server/dataflow)
error[E0603]: struct `ReadHandle` is private
   --> server/dataflow/src/backlog/multir.rs:7:19
    |
7   |     Single(evmap::ReadHandle<DataType, Vec<DataType>, i64, RandomState>),
    |                   ^^^^^^^^^^ private struct
    |
note: the struct `ReadHandle` is defined here

error[E0603]: struct `ReadHandle` is private
   --> server/dataflow/src/backlog/multir.rs:8:19
    |
8   |     Double(evmap::ReadHandle<(DataType, DataType), Vec<DataType>, i64, RandomState>),
    |                   ^^^^^^^^^^ private struct
    |
note: the struct `ReadHandle` is defined here

error[E0603]: struct `ReadHandle` is private
   --> server/dataflow/src/backlog/multir.rs:9:17
    |
9   |     Many(evmap::ReadHandle<Vec<DataType>, Vec<DataType>, i64, RandomState>),
    |                 ^^^^^^^^^^ private struct
    |
note: the struct `ReadHandle` is defined here

error[E0603]: struct `WriteHandle` is private
   --> server/dataflow/src/backlog/multiw.rs:7:19
    |
7   |     Single(evmap::WriteHandle<DataType, Vec<DataType>, i64, RandomState>),
    |                   ^^^^^^^^^^^ private struct
    |
note: the struct `WriteHandle` is defined here

error[E0603]: struct `WriteHandle` is private
   --> server/dataflow/src/backlog/multiw.rs:8:19
    |
8   |     Double(evmap::WriteHandle<(DataType, DataType), Vec<DataType>, i64, RandomState>),
    |                   ^^^^^^^^^^^ private struct
    |
note: the struct `WriteHandle` is defined here

error[E0603]: struct `WriteHandle` is private
   --> server/dataflow/src/backlog/multiw.rs:9:17
    |
9   |     Many(evmap::WriteHandle<Vec<DataType>, Vec<DataType>, i64, RandomState>),
    |                 ^^^^^^^^^^^ private struct
    |
note: the struct `WriteHandle` is defined here

warning: unnecessary trailing semicolon
   --> server/dataflow/src/ops/topk.rs:224:10
    |
224 |         };
    |          ^ help: remove this semicolon
    |
    = note: `#[warn(redundant_semicolons)]` on by default

error[E0308]: mismatched types
  --> server/dataflow/src/backlog/mod.rs:55:39
   |
55 |             (multir::Handle::$variant(r), multiw::Handle::$variant(w))
   |                                       ^ expected struct `ReadHandle`, found struct `evmap::handles::WriteHandle`
...
61 |         1 => make!(Single),
   |              ------------- in this macro invocation
   |
   = note: expected struct `ReadHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>`
              found struct `evmap::handles::WriteHandle<_, _, {integer}, ahash::RandomState>`
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> server/dataflow/src/backlog/mod.rs:55:68
   |
55 |             (multir::Handle::$variant(r), multiw::Handle::$variant(w))
   |                                                                    ^ expected struct `evmap::handles::WriteHandle`, found struct `ReadHandle`
...
61 |         1 => make!(Single),
   |              ------------- in this macro invocation
   |
   = note: expected struct `evmap::handles::WriteHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>`
              found struct `ReadHandle<_, _, {integer}, ahash::RandomState>`
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> server/dataflow/src/backlog/mod.rs:55:39
   |
55 |             (multir::Handle::$variant(r), multiw::Handle::$variant(w))
   |                                       ^ expected struct `ReadHandle`, found struct `evmap::handles::WriteHandle`
...
62 |         2 => make!(Double),
   |              ------------- in this macro invocation
   |
   = note: expected struct `ReadHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>`
              found struct `evmap::handles::WriteHandle<_, _, {integer}, ahash::RandomState>`
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> server/dataflow/src/backlog/mod.rs:55:68
   |
55 |             (multir::Handle::$variant(r), multiw::Handle::$variant(w))
   |                                                                    ^ expected struct `evmap::handles::WriteHandle`, found struct `ReadHandle`
...
62 |         2 => make!(Double),
   |              ------------- in this macro invocation
   |
   = note: expected struct `evmap::handles::WriteHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>`
              found struct `ReadHandle<_, _, {integer}, ahash::RandomState>`
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> server/dataflow/src/backlog/mod.rs:55:39
   |
55 |             (multir::Handle::$variant(r), multiw::Handle::$variant(w))
   |                                       ^ expected struct `ReadHandle`, found struct `evmap::handles::WriteHandle`
...
63 |         _ => make!(Many),
   |              ----------- in this macro invocation
   |
   = note: expected struct `ReadHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>`
              found struct `evmap::handles::WriteHandle<_, _, {integer}, ahash::RandomState>`
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> server/dataflow/src/backlog/mod.rs:55:68
   |
55 |             (multir::Handle::$variant(r), multiw::Handle::$variant(w))
   |                                                                    ^ expected struct `evmap::handles::WriteHandle`, found struct `ReadHandle`
...
63 |         _ => make!(Many),
   |              ----------- in this macro invocation
   |
   = note: expected struct `evmap::handles::WriteHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>`
              found struct `ReadHandle<_, _, {integer}, ahash::RandomState>`
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0599]: no method named `read` found for reference `&ReadHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
  --> server/dataflow/src/backlog/multir.rs:28:29
   |
28 |                 let map = h.read()?;
   |                             ^^^^ method not found in `&ReadHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>`

error[E0599]: no method named `read` found for reference `&ReadHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
  --> server/dataflow/src/backlog/multir.rs:57:33
   |
57 |                     let map = h.read()?;
   |                                 ^^^^ method not found in `&ReadHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>`

error[E0599]: no method named `read` found for reference `&ReadHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
  --> server/dataflow/src/backlog/multir.rs:64:29
   |
64 |                 let map = h.read()?;
   |                             ^^^^ method not found in `&ReadHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>`

warning: use of deprecated associated function `evmap::handles::WriteHandle::<K, V, M, S>::empty`: Renamed to remove_entry
  --> server/dataflow/src/backlog/multiw.rs:38:19
   |
38 |                 h.empty(key_to_single(k).into_owned());
   |                   ^^^^^
   |
   = note: `#[warn(deprecated)]` on by default

warning: use of deprecated associated function `evmap::handles::WriteHandle::<K, V, M, S>::empty`: Renamed to remove_entry
  --> server/dataflow/src/backlog/multiw.rs:41:19
   |
41 |                 h.empty(key_to_double(k).into_owned());
   |                   ^^^^^

warning: use of deprecated associated function `evmap::handles::WriteHandle::<K, V, M, S>::empty`: Renamed to remove_entry
  --> server/dataflow/src/backlog/multiw.rs:44:19
   |
44 |                 h.empty(k.into_owned());
   |                   ^^^^^

error[E0599]: no method named `refresh` found for mutable reference `&mut evmap::handles::WriteHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
  --> server/dataflow/src/backlog/multiw.rs:67:19
   |
67 |                 h.refresh();
   |                   ^^^^^^^ method not found in `&mut evmap::handles::WriteHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>`

error[E0599]: no method named `refresh` found for mutable reference `&mut evmap::handles::WriteHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
  --> server/dataflow/src/backlog/multiw.rs:70:19
   |
70 |                 h.refresh();
   |                   ^^^^^^^ method not found in `&mut evmap::handles::WriteHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>`

error[E0599]: no method named `refresh` found for mutable reference `&mut evmap::handles::WriteHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
  --> server/dataflow/src/backlog/multiw.rs:73:19
   |
73 |                 h.refresh();
   |                   ^^^^^^^ method not found in `&mut evmap::handles::WriteHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>`

error[E0599]: no method named `read` found for reference `&evmap::handles::WriteHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
  --> server/dataflow/src/backlog/multiw.rs:85:29
   |
85 |                 let map = h.read()?;
   |                             ^^^^ method not found in `&evmap::handles::WriteHandle<noria_common::DataType, Vec<noria_common::DataType>, i64, ahash::RandomState>`

error[E0599]: no method named `read` found for reference `&evmap::handles::WriteHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
   --> server/dataflow/src/backlog/multiw.rs:114:33
    |
114 |                     let map = h.read()?;
    |                                 ^^^^ method not found in `&evmap::handles::WriteHandle<(noria_common::DataType, noria_common::DataType), Vec<noria_common::DataType>, i64, ahash::RandomState>`

error[E0599]: no method named `read` found for reference `&evmap::handles::WriteHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>` in the current scope
   --> server/dataflow/src/backlog/multiw.rs:121:29
    |
121 |                 let map = h.read()?;
    |                             ^^^^ method not found in `&evmap::handles::WriteHandle<Vec<noria_common::DataType>, Vec<noria_common::DataType>, i64, ahash::RandomState>`

Ah, yes, this is probably because evmap has changed a fair amount since the latest commit on master, but it did so using additional alpha versions. I think you can fix this by changing the evmap dependency in Cargo.toml to start with a leading = so that you pin to that specific version of evmap!

Thanks! That worked.


The proxy service is not running

Hi,
I think there's a problem with the server, it does not open non-cached pictures:
Error 404: Server couldn't parse the ?url= that you were looking for, error it got: www.gorkemkara.com could not be resolved (2: Server failure)
Example link:
https://images.weserv.nl/?url=www.gorkemkara.com/wp-content/themes/trendblog/images/logo.png
I also tried with other sites and images, the result is the same.

OpenDNS statistics confirm issue, but only with a subset of the requests, not all requests failed

Starting time seems to be: Jul 31 01:38. End time seems to be: Jul 31 05:35.

Configured Unbound DNS to fallback to the DNS root servers when the servers of OpenDNS fail. This should fix the problem if OpenDNS goes down in the future. I'm sorry for any inconvenience caused, but it seems that connectivity to OpenDNS was lost for 4 hours.


Request for Sync System Example

I've been having issues getting the Sync System set up properly.
I was wondering if anyone had any examples they'd like to share?

@jwittner Any chance you guys have good examples you could share?
I'm just having trouble getting a listener on the root object to raise events properly.

Here's the branch I've set up for proper testing.
https://github.com/HodgsonSDAS/HoloToolkit-Unity/tree/SyncSystemTests

@jheuvel-ms any thoughts here?

Blocked by https://github.com/Microsoft/HoloToolkit-Unity/issues/311

@NeerajW please assign this to me. I'd like to learn this more and contribute what I find.


Chef 14 -  #<NameError: instance variable @cwd not defined>

Issue opened after a talk with coderanger, here's my summary, workaround as comment on the issue:
With the rewrite of the execute resource in Chef 14, the following lines create an error:
remove_instance_variable(:@cwd)

Error as seen from chefspec test:
 expected no Exception, got #<NameError: instance variable @cwd not defined> with backtrace:
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/application_python/files/halite_gem/poise_application_python/resources/python_execute.rb:43:in `remove_instance_variable'
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/application_python/files/halite_gem/poise_application_python/resources/python_execute.rb:43:in `initialize'
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/poise/files/halite_gem/poise/helpers/subresources/container.rb:140:in `block in declare_resource'
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/poise/files/halite_gem/poise/helpers/subresources/container.rb:121:in `declare_resource'
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/application/files/halite_gem/poise_application/resources/application.rb:175:in `public_send'
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/application/files/halite_gem/poise_application/resources/application.rb:175:in `block (2 levels) in _rewire_dsl!'
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/app-python/recipes/default.rb:24:in `block in from_file'
         # C:/Users/xxx/AppData/Local/Temp/chefspec20181009-7988-1eo94amfile_cache_path/cookbooks/app-python/recipes/default.rb:21:in `from_file'
         # ./spec/unit/recipes/default_spec.rb:29:in `block (3 levels) in <top (required)>'
         # ./spec/unit/recipes/default_spec.rb:33:in `block (4 levels) in <top (required)>'
         # ./spec/unit/recipes/default_spec.rb:33:in `block (3 levels) in <top (required)>'
     # ./spec/unit/recipes/default_spec.rb:33:in `block (3 levels) in <top (required)>'

A workaround given by coderanger:

coderanger [09:49]
@Tensibai Short term fix would be to copy https://github.com/poise/application_python/blob/master/lib/poise_application_python/resources/python_execute.rb into a library file, change the provides, and change all the remove_instance_variable calls to end with rescue nil, inelegant but would work on both 13 and 14.

The slightly hulksmash approach would be something like remove_instance_variable(:@foo) if defined?(@foo) for each of them

What I ended doing is mostly that, copying the file into my cookbook libraries directory and editing the 3 lines as follow:
          remove_instance_variable(:@cwd) if defined?(@cwd)
          remove_instance_variable(:@group) if defined?(@group)
          remove_instance_variable(:@user) if defined?(@user)


Grade first homework

@mattkwiecien @julesfowler @brucelaughlin

Looks like the Maximo is in the A lab section -- so I'm leaving this to either @mattkwiecien or @brucelaughlin .


Unicode Bangla doesn't work properly.

While I was editing a latex document in Visual Studio Code v1.34.0, I noticed that some Bangla words hadn't been represented properly in VS Code text editor, however the PDF output from the latex file displays it correctly. MS Word also displays those words correctly.

On the left, VS Code editor broke down those words as I typeed and on the right, in the output PDF it is as it should be.

@EmonHaque does it make a difference if you add the following to your user settings?
"editor.fontLigatures": true

/needsMoreInfo

@kieferrm, no! It doesn't make any difference. Here in the last line I've added:

restarted after and and typed:

Have you fixed it already? I'm experimenting KDE Neon 5.16 and VS Code 1.35.1 renders all those words properly over there. Here's a screenshot from that Linux Distro

I don't even have to enable Font Ligatures in VS Code!

@EmonHaque if I understand you properly this is now working in 1.35.1 and we can close the issue?

@egamma, it works on Linux KDE Neon 5.16 but not on Windows 10. Here's how it is on Windows 10 1903:

@EmonHaque could you please share the text you type into the editor to help me troubleshoot? I'd love to try that on my Windows box as well. BTW, do I need to install a specific language pack to ensure it being rendered properly?

You could use any standalone Bangla font like Kalpurush, that I'd used in Windows 10. I'm still exploring Linux distros, In all linux distros, I've tried so far (Fedora, Cent Os, Ubuntu, Debian, KDE Neon), these complex bangla words render properly.
উদ্বৃত্ত
সঙ্কুলান
উদ্ধৃতি
বিস্তৃত
These 4 words have been typed in Arch Linux and it also renders those words correctly.

@EmonHaque it looks like a browser rendering issue to me as when I open this issue in Edge on Windows, I saw exactly the same result as VS Code. Can you help confirm that the rendering is the same in both Edge/Chrome and VS Code?

@rebornix,  I'd typed those 4 words in previous comment on VS Code in Arch Linux without changing editor.fontFamily. On both Windows 10 and Linux I use a software called Avro Phonetic Keyboard to type Bangla.

@EmonHaque I found on Windows, to render বিস্তৃত it requires a good Bangla font installed and in a browser environment, we have to specify the right font family to use, otherwise browser will use the default system font to render it. VS Code is based on Electron which uses Chromium under the hood, we share the same experience. For typing, it doesn't actually a font to be installed, which means you can still type Bangla but the system can't guarantee that they are rendered properly.
I suppose if you install a language pack for Bangla through the system language setting, they can be rendered correctly but in VS Code, you might still need to specify a proper Bangla font. My suggestion is changing editor.fontFamily to Kalpurush, Consolas, 'Courier New', monospace to ensure it to be rendered correctly always.

ok


Unreachable code in HostingApplication.CreateContext(IFeatureCollection)

Describe the bug
The if-statement is unreachable since direct cast never produce null-object.
The httpContext.HttpContext is not set if it's DefaultHttpContext but set in every other case. I just want to raise this, but it probably has its reason.
Propose
if (hostContext.HttpContext is DefaultHttpContext defaultHttpContext)
{
    _defaultHttpContextFactory.Initialize(defaultHttpContext, contextFeatures);
    httpContext = defaultHttpContext;
}
else
{
    httpContext = _defaultHttpContextFactory.Create(contextFeatures);
    hostContext.HttpContext = httpContext;
}

// Current
var defaultHttpContext = (DefaultHttpContext)hostContext.HttpContext;
if (defaultHttpContext is null)
{
    httpContext = _defaultHttpContextFactory.Create(contextFeatures);
    hostContext.HttpContext = httpContext;
}
else
{
    _defaultHttpContextFactory.Initialize(defaultHttpContext, contextFeatures);
    httpContext = defaultHttpContext;
}

To Reproduce
N/A
Further technical details

ASP.NET Core version master-branch
~Include the output of dotnet --info~
~The IDE (VS / VS Code/ VS4Mac) you're running on, and it's version~

Regardless of casting, why can't the original hostContext.HttpContext be null? I'd expect it to be null on the first request, the DefaultHttpContext hasn't been created yet. After that it would be cached in the hostContext.

I think this can be unit tested as well to see if you get an InvalidCastException. Try writing a unit test where hostContext.HttpContext isn't a DefaultHttpContext.

I'll write the unit test and report my findings.

I'm pretty sure you can cast null values. It worked when I tried it briefly on sharplab.io ;).

@anurse Yes I've tried it in C# Interactive as well and that ought to be close to reality :)
Lets consider the possibilities (the original code in mind)

The value is null and no exception is thrown and the if-branch is entered correctly.
The value is DefaultHttpContext and no exception is thrown and the else-branch is entered correctly.
The value is something else and an exception will be thrown

Scenario 3 is feasible, but probably never occurred (I guess someone should have fixed it by then :)), since HttpContext is public and not-sealed where as DefaultHttpContext is sealed. So any type can be of type HttpContext, but not a sub-type of DefaultHttpContext.
So we're left with 1 and 2 which implies that the type must be DefaultHttpContext, however uninitialized.
As I'm writing this it becomes clear that my "problem" with the code is that, for me, it wasn't immediately clear that it must be of type DefaultHttpContext.
Lesson learned - spend more time analyzing the code and think, think, think. Sorry for wasting your time.
Note I made a small effort in getting this  code to compile, but was unsuccessful on both Windows 10 and WSL (Ubuntu 16.04) running the build.cmd/build.sh. If time I'll give it another try!

@joacar no worries, thanks for the follow-up!


Support parsing commits

It would be useful to have a additional option to parse commits since last release instead of pull requests.
So instead of parsing the labels of the pull requests it would parse the commit messages where the commits would need to follow the conventional commits standard.
I've already got a few projects where we parse the the commits like this and add them to the release notes and also use them to determine the semantic version, it would be great if antsichaut would fit into that workflow.

That would probably be a good addition! :)
I'm not currently using commits for the changelog, so if anyone wants to implement it, feel free!


[JBEAP-2830] Disable console logging for standalone-full-ha.xml

JIRA: https://issues.jboss.org/browse/JBEAP-2830
EAP7 PR: https://github.com/jbossas/jboss-eap7/pull/244

Can one of the admins verify this patch?

this is ok to test

This is EAP-specific behavior, so we don't want it in upstream. Thanks.


[HOLD for payment 2023-10-18] [$500] Two "Flag as offensive" list opens

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

go to any chat
hover on message and right click
select  Flag as offensive
click on back button

Expected Result:
should hide  Flag as offensive list
Actual Result:
Flag as offensive list appears
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: 1.3.77-5
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/38435837/0225b340-fb6c-413a-81aa-f1ff1011eb2f
https://github.com/Expensify/App/assets/38435837/1f31dfd6-8810-4875-9386-6341dd57fb7f
https://github.com/Expensify/App/assets/38435837/acba27b6-6d3c-495b-883a-afd268b48cad
Expensify/Expensify Issue URL:
Issue reported by: @gadhiyamanan
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1696409294638669
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01bfd52163177c5b7e
Upwork Job ID:<PHONE_NUMBER>006915584
Last Price Increase: 2023-10-04
Automatic offers:

gadhiyamanan | Contributor | 27048435
gadhiyamanan | Reporter | 27048436

Proposal by @gadhiyamanan
Please re-state the problem that we are trying to solve in this issue.
two Flag as offensive list open
What is the root cause of that problem?
We are navigate to flag comment two times here and here
What changes do you think we should make in order to solve the problem?
add return after hideContextMenu and navigate to flag comment
https://github.com/Expensify/App/blob/56eda28adc69f0a851d29f70427cf38c4bebfc89/src/pages/home/report/ContextMenu/ContextMenuActions.js#L374-L376

Proposal
Please re-state the problem that we are trying to solve in this issue.
Clicking on context menu item Flag as offensive opens a popover but it is not getting closed.
What is the root cause of that problem?
There is redundant call to navigate method in onPress event of the menu item
https://github.com/Expensify/App/blob/6d86d5aecc47096bffdfbf59dcaefcb5dd0a0509/src/pages/home/report/ContextMenu/ContextMenuActions.js#L373-L379
What changes do you think we should make in order to solve the problem?
We need to confirm why 2 times above callback is being called and if second callback is not necessary then remove it
https://github.com/Expensify/App/blob/6d86d5aecc47096bffdfbf59dcaefcb5dd0a0509/src/pages/home/report/ContextMenu/ContextMenuActions.js#L378
What alternative solutions did you explore? (Optional)
N/A

# Proposal
Please re-state the problem that we are trying to solve in this issue
"Flag as offensive" list modal opens two times
What is the root cause of that problem?
Following callback is the root cause
onPress: (closePopover, {reportID, reportAction}) => {
     if (closePopover) {
         hideContextMenu(false, () => Navigation.navigate(ROUTES.FLAG_COMMENT.getRoute(reportID, reportAction.reportActionID)));
     }

     Navigation.navigate(ROUTES.FLAG_COMMENT.getRoute(reportID, reportAction.reportActionID));
 },

What changes do you think we should make in order to solve the problem?
In above callback we need to remove one Navigation call
What alternative solutions did you explore? (Optional)
NA

I've reviewed all the proposals and all of them define the root cause correctly but I think the best solution (and the first one) is the one from @m-natarajan - I believe here the return statement is just missing in the if block - we can compare it with similar  implementations of onPress method for other context menu item in the ContextMenuActions.js - they are similar so I believe calling navigate twice is intended.
🎀 👀 🎀 C+ reviewed

@m-natarajan is from QA team and he posted solution from slack
cc: @burczu @francoisl

@gadhiyamanan Ahh... sorry, I didn't notice it! Updated!

@burczu i think the person who posted issue should not be putting proposal. Otherwise there will be no margin for others.

They Both seems to be friends 😀

Works for me, @gadhiyamanan let's go with your solution.

@burczu PR is ready for review

@burczu i think the person who posted issue should not be putting proposal. Otherwise there will be no margin for others.

@ayazalavi This is quite common situation when some contributor posts they proposal directly in the Slack thread and then when QA engineer creates an issue on GH they just add the proposal along.

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

[x]  [@burczu] The PR that introduced the bug has been identified. Link to the PR: No regression - it was just done this way from the beginning.
[x]  [@burczu] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment: n/a
[x]  [@burczu] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion: n/a
[x]  [@burczu] Determine if we should create a regression test for this bug.
[x]  [@burczu] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
[ ]  [@bfitzexpensify] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

Payments complete and BZ checklist done, we're all done here, thanks everyone.


Make Java generic methods children of abs nodes [phab:D1135]

Created by salguarnieri at 2016-11-04 01:36:30:
Make wildcard nodes params of the abs node created for a generic method. This means we will also start creating abs nodes for methods that don't have any named type parameters but do use wildcards in at least one of the types for the parameters.

salguarnieri wrote at 2016-11-04 23:28:05:

rebased

zarko wrote at 2016-11-04 23:39:34:
It looks like a call to wildcard in WildcardMethod points at WildcardFnDecl and not WildcardFnAbs:
  private static void call() {
    //- wildcard ref What?
    //- "wildcard(null)" ref/call Whom?
    wildcard(null);
  }

WildcardFnAbs: EVar(0x0000000000e60298 = App(vname, (d303488ec629c9e62a16988b5234f21f24acc31277aafdbea5b1fd61727b732a, "", "", "", java)))
WildcardFnDecl: EVar(0x0000000000e606d8 = App(vname, (d5aa5eec2c5d99ad4d63fc4e0b2b70386fd308f78b16a588d9a13f749e07ccf8, kythe, "", kythe/javatests/com/google/devtools/kythe/analyzers/java/testdata/pkg/WildcardMethod.java, java)))
What: EVar(0x0000000000e61188 = App(vname, (d5aa5eec2c5d99ad4d63fc4e0b2b70386fd308f78b16a588d9a13f749e07ccf8, kythe, "", kythe/javatests/com/google/devtools/kythe/analyzers/java/testdata/pkg/WildcardMethod.java, java)))
Whom: EVar(0x0000000000e612b0 = App(vname, (d5aa5eec2c5d99ad4d63fc4e0b2b70386fd308f78b16a588d9a13f749e07ccf8, kythe, "", kythe/javatests/com/google/devtools/kythe/analyzers/java/testdata/pkg/WildcardMethod.java, java)))

We'd discussed leaving out the intervening tapp(WildcardFnAbs, Object), but clients will expect to see something with %defines/binding edges at the other end of a ref* edge; unless there's a good reason to do otherwise, edges pointing to nodes covered by abs nodes should connect to the abs node.
(also, why is the kythe corpus missing from WildcardFnAbs's VName?)

salguarnieri wrote at 2016-11-07 22:54:52:

Add some simple tests and a todo for future improvement

salguarnieri wrote at 2016-11-07 22:54:59:
We discussed a bit offline and I added failing tests and #1501 for followup work.

zarko accepted this revision at 2016-11-08 00:18:25

salguarnieri closed via commit 0264461a8dec2d7877ca2243a1cfff0e06bc262a at 2016-11-08 00:21:58


feat: add RaspberryPI 3 component

Add raspberry pi 3 header

wow! That looks nice.

I already merged it.. could you make another PR and maybe rotating the preview by 90 degrees so it will show bigger in the preview?

yes ok, but text will be rotated too


Support for new emulator debugger

Description
Adds support for debugging server in next emulator.

For contributor use:

[X] Targeted PR against master branch
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work
[X] Code follows the standards mentioned here
[ ] Updated relevant documentation
[X] Re-reviewed Files changed in the Github PR explorer
[x] Added appropriate labels

Debugging support was just merged into the Emulator: onflow/flow-emulator#294.
It would be nice to get a release out for it, and then merge this PR and do a release.

Thanks @bluesign, I will do some testing on this with newest emulator and then review soon!

@bluesign do you have something else to do on this PR or ready for review? in that case @DylanTinianov please take time today to review it

@sideninja it should be ready to review


Connecting Multiple clients in ioloop way using REP/REQUEST Pattern

I have following requirement but I am not sure how to do this. Please help me.

I want to use coroutine bases eventloop.
Multiple client should be able  to send / receive dtaa.
Even if one client hangs up /closes, server should be able to accept new connection and report which client got disconnected.

import zmq

from zmq.eventloop import ioloop, zmqstream, future
from tornado import gen

ZMQ_PORT = 8886

loop = ioloop.IOLoop.instance()
server_socket = future.Context().socket(zmq.REP)
server_socket.bind("tcp://<IP_ADDRESS>:%s" % ZMQ_PORT)
server_socket.setsockopt(zmq.LINGER, 0)

@gen.coroutine
def receive_and_process():
    while True:
        msg = yield server_socket.recv_json()
        print(msg)
        yield server_socket.send_json(msg)

if __name__ == '__main__':
    loop.add_callback(receive_and_process)
    loop.start()

@minrk  I have also tried implemeting using ZmqStream but that didnot work either. I am quite new with zmq. Does stream represent a wrapper over socket. If yes, how do we use same stream for all the client connection. From following code it looks like we are wrapping server socket with Stream.
Can you please help me here.
Thanks in advance.
+ctx = zmq.Context()
 +s = ctx.socket(zmq.REQ)
 +s.connect('tcp://<IP_ADDRESS>:5555')
 +stream = zmqstream.ZMQStream(s, tornado.ioloop.IOLoop.instance())


Add comments syntax highlighting

Also fix default comments (inline ##  instead of /* */).
Fix #3

@stevepaulo this should follow the spec @ http://docs.makotemplates.org/en/latest/syntax.html#comments

thank you!

Thanks for this, I will publish a new version soon, currently having trouble with apm that is stopping me.


[ScrollView] Children in a ScrollView don't always cancel touches when the ScrollView is scrolling

When scrolling through a ListView with lots of content, sometimes it is possible to trigger the onPress event of a Touchable row. The ListView keeps on scrolling while the onPress handler runs.
(In our code, the resulting UX is janky for a few reasons: 1/ this usually happens when new list rows are being rendered, so the UI is already a little choppy, 2/ the onPress handler in our case pushes a new route onto the Navigator stack, so it's trying to smoothly animate the scene transition, 3/ the ListView keeps on scrolling with inertia so you lose your position in the feed when you navigate back to it, 4/ because the ListView is scrolling and rendering new rows, that adds jank to the Navigator's ongoing transition.)
It seems to occur when the app chokes (not quite sure which thread). I suspect the JS doesn't learn that the ScrollView has begun scrolling, so it lets the Touchable component handle the press.

+1 I've been experiencing this occasionally in our app but didn't really know how to describe it. This description is spot on @ide!

+1 I've been getting this more recently. Used to only get it on iPhone4 but assumed it was down to a lack of optimisation on my part for slower devices.

+1 have been obsessed with this problem for several days.  And it looks like result form my renderRow returns a complex row structure in the ListVew so that sometimes make my phone scroll slowly. It's more seriously in other slower devices too.

#2569

Experiencing this too, do anyone have a workaround for this?

+1

There is a dirty way that I've found to bypass this case temporarily:
var _dirtyListViewPressEnabled = true;

<ListView
    onTouchMove={(e)=>{
        _dirtyListViewPressEnabled = false;
    }}
    onTouchEnd={(e)=>{
        _dirtyListViewPressEnabled = true;
    }}
    renderRow={(rowData)=>{
        return (
            <TouchableOpacity
                onPress={()=>{
                    if( !_dirtyListViewPressEnabled ) return ;

                    //other...
                }}
            >
                <RowItem rowData={rowData} />
            </TouchableOpacity>
        );
    }}
/>

But looking forward to real solutions.

@mc-zone clever

We also have these problems in a semi-complex list view. No more complex than, say, Twitter; each row has an image plus some nested text views. The combination of jank and the mistaken touch activations make the app's main screen unusable, and thus unreleasable, so for us this issue is very important.
There are enough significant issues and complications related to performance in multi-page apps with some degree of complexity that I would consider adding a temporary warning to the main home page, e.g., "If you plan to create a relatively complex app, consider our notes on performance, and remember that the framework is still rather immature."

@ide I still see this issue occurring on ListView with TouchableOpacity elements in renderRow. I used @mc-zone 's implementation and it still does not work fine for me. Is there a quick fix for the same? Also can I listen to events for scrollEnd for ListView or ScrollView ?

This is a hack that works fine for me but we need a proper implementation.
<ListView
              dataSource={this.state.dataSource}
              renderRow={this._renderRow}
              onChangeVisibleRows={this._renderSearchIcon}
              onScroll={this._onScrollListView}
              decelerationRate={0.9}
              onScrollBeginDrag={(e)=> {
                let listarraystates = this.state.scrollStates
                listarraystates.push("onScrollBeginDrag")
                this.setState({
                  scrollStates: listarraystates
                })
              }}
              onMomentumScrollEnd={(e) => {
                let listarraystates = this.state.scrollStates
                listarraystates.push("onMomentumScrollEnd")
                this.setState({
                  scrollStates: listarraystates
                })
              }}
              onTouchMove={(e) => {
                let listarraystates = this.state.scrollStates
                listarraystates.push("onTouchMove")
                this.setState({
                  scrollStates: listarraystates
                })
              }}
              onTouchStart={(e) => {
                let listarraystates = this.state.scrollStates
                listarraystates.push("onTouchStart")
                this.setState({
                  scrollStates: listarraystates
                })
              }}
              onTouchEnd={(e)=>{
                let listarraystates = this.state.scrollStates
                listarraystates.push("onTouchEnd")
                this.setState({
                  scrollStates: listarraystates
                })
              }}
            />

Then in the onPress Event for the items in the ListView
let currliststatearr = this.state.scrollStates
    if(currliststatearr.length>2 &&
      ((currliststatearr[currliststatearr.length-2]==='onMomentumScrollEnd' && currliststatearr[currliststatearr.length-1]==='onTouchStart')
      || (currliststatearr[currliststatearr.length-2]==='onTouchEnd' && currliststatearr[currliststatearr.length-1]==='onTouchStart')))
      this.props.navigator.push({
        id: 9,
        passProps: {
          listingdata: THUMB_URLS[rowID]
        }
      })

@ide and @brentvatne Any updates on this issue? My solution above does not work on iPhobe 6s and 6s plus as the touch is really sensitive (force touch probably).

@brentvatne This is a pressing issue. What do you think is the easiest way to get around this issue for production?

+1 I also have the same issues.

+1

@arunshan - sorry I don't have a solution for this, let's get the issue on ProductPains so we can be sure to get more attention to it.
cc @vjeux

@brentvatne Here you go.
https://productpains.com/post/react-native-listview/onpress-event-triggered-while-scrolling-in-listview/

@arunshan I think you have created with a wrong "product", it appears in "react native listview" not "react native"

Thanks @gre. I made that change and it should appear in 'react native'

@ide @brentvatne @vjeux Any updates regarding this issue?
I'm about to launch an app i've been working on the last 4 months and I see this issue all the time.
Is there any work around for this issue?

You could maybe change the value of pointerEvents to block touches to children while the scroll view is scrolling. I haven't tested it though.

@ranyefet similar situation here.
@ide please tell us how to try your hack, thanks

@all : Here is how , i was able to fix this issue,

The catch here is to use onTouchMove and onTouchEnd to know if the scroll state.
onTouchMove:function(){
isScrollInProgress = true;
},
onTouchEnd:function(){
isScrollInProgress = false;
},
Keep a flag which indicates whether it's scrolling.based on the flag control the onPress method of TouchableHighlight component.

@ide , i'll give a try to your pointerEvents workaround, thanks!
Why is this behavior not the default on ScrollView if it works? Any downsides?

It's complicated and adding hacks to cover up a core issue in the gesture system (plus I haven't actually tried it.. just an idea that could work). We need to make the gesture system better and until then, make it possible for you to write the code to work around this issue.

@ide Ok, make a lot of sense.
https://gist.github.com/gre/16f4235d23659c7d4374 : I've started a quick attempt following your idea.. it's a very naïve implementation (using onTouchStart & onTouchEnd, whatever the finger is) that unfortunately doesn't seem to work.. Maybe I need to give another try, but for now I guess I'll wait for that proper fix on gesture system.

Watch

Version 0.13 is ok?

+1

+1

I've landed few native diffs (last one 2e8eb652e10ba5d5419f277a98294faff4e46f56) that should make this issue virtually nonexistent. They are currently in the 0.20rc.
Feel free to try it out and let me know if it helps.

\o/

I'm closing this issue since I believe my changes have fixed this.

@majak: This still happens with RN 0.23RC, getting this on older devices when JS thread chokes. In rare really bad cases even longpress is triggered.

@oblador That's not good. Thanks for reporting it. I'm not sure why it would still happen.
Could you tell me more about your case? Is scrollview involved?
A sample app that would demonstrate the issue would be ideal. Just run a long for-loop to make JS busy.

@majak: Will do when I get the time. Did also notice that elements positioned outside but over the scrollview/listview fail to register taps until the momentum scroll has come to a complete stop which I'm guessing is related to your changes.

Ok, please file a new github issue for each of these things and cc me. I know that setting up a sample app could take a while, so a description of relevant component hierarchy would be useful for start (like you did here).

+1

+1 still bug in 0.24


Improve how we communicate about the mathematics, protocol and benefits of use

In order to promote adoption and sell the idea which this repo and the Go-repo demonstrates usage of, we need to explain the benefits of "Privacy Pass" and anonymous tokens in the best possible way and prioritize work in this space.

Specifically I think we should consider this scenario:

User reading a formula in code wants to understand its purpose
User clicks on a deep-link where the formula is used
User lands on a Wiki-page here on a section explaining the formula, its usage and where it fits in the bigger picture (protocol)

Consider done?

Agree. Lets update the wiki when it needs to and continuously improve readme and related docs when we get new ideas for improvements.


regex in html components id and names of buttons, text input, links

I am testing a web page , but the html components id and names of buttons, text input, links are automatically generated for each user and for each build.
Is it possible to identify an id and/or name using regex ?
Example of using regex:
element :search_field, "input[name='wt+(\d)+$wtUsername$+(\d)+$wtUserNameInput']"
example of dynamic and static fields of text input html name:
< static > < dynamic > < static > < dynamic > < static >
 <713> <$wtUsername$wt> <234> <$wtUserNameInput>
wt713$wtUsername$wt234$wtUserNameInput
Example  html code -> text input:
user: John
< input name="wt713$wtUsername$wt234$wtUserNameInput" type="text" maxlength="50" id="wt713$wtUsername$wt234$wtUserNameInput" tabindex="1" class="TextInput class-focus-out OSFillParent" onkeydown="return OsEnterKey('wt713_wtAction_wt234_wtSignInBtn', arguments[0] || window.event)" style="border-radius: 3px;" >
user Mary:
the same text input html code:
< input name="wt362$wtUsername$wt45$wtUserNameInput" type="text" maxlength="50" id="wt362$wtUsername$wt45$wtUserNameInput" tabindex="1" class="TextInput class-focus-out OSFillParent" onkeydown="return OsEnterKey('wt362_wtAction_wt45_wtSignInBtn', arguments[0] || window.event)" style="border-radius: 3px;" >

Hi there. I'm going to be looking into the entire history list of issues e.t.c. and this one appears to be stale. Could you give a brief update as to what you plan to do with this.
If you plan to land a PR soon or already have done. Can you close this issue
If you think it's no longer relevant. Can you close this issue.
If possibly can you provide some update in the next couple of weeks (I'm aware this issue is several years old)


MRG: Publicly expose MRI fiducials in Coregistration class

This is a first step towards resolving #10227

Alright, tests should pass now. WDYT, @agramfort?

Failing CI is an unrelated timeout.

@larsoner merge if happy
thx @hoechenberger 🙏

Thanks @hoechenberger !


bug/BRIDGE-905

Fixed tint color property on APCBadgeLabel to properly update.
Per Story:
This can be tested pretty easily by signing up, getting the tasks, then setting your iPhone's date to about 20 hours in the future, then going back into the app and scrolling the tableview up and down. before I fixed the bug, the red and grey colors would swap between cells, now they all stay the correct color.

@syoung-smallwisdom Im not going to be by my computer for the rest of the day, so if you have additional issues, feel free to pull this down and change yourself.  Thanks!

@dephillipsmichael Thank you!


 Using book "Docker on Amazon Web Services" by Justin Menga.
There is an example using the acceptance.bats file with the script
setup() {
url=${APP_URL:-localhost:8000}
item='{"title": "Wash the car", "order": 1}'
location='Location: ([^[:space:]]*)'
curl -X DELETE $url/todos
}
...
@test "create todo item" {
run curl -i -X POST -H "Content-Type: application/json" $url/todos -d "$item"
[ $status = 0 ]
[[ $output =~ "201 Created" ]] || false
[[ $output =~ $location ]] || false
[ $(curl ${BASH_REMATCH[1]} | jq '.title') = $(echo "$item" | jq '.title') ]  <------- this gives the error
}
While run I get error message
acceptance_1  | # (in test file acceptance.bats, line 26)
acceptance_1  | #   `[ $(curl ${BASH_REMATCH[1]} | jq '.title') = $"Wash the car" ]' failed with status 2
acceptance_1  | #   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
acceptance_1  | #                                  Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
acceptance_1  | #   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
acceptance_1  | #                                  Dload  Upload   Total   Spent    Left  Speed
100    84  100    84    0     0   2470      0 --:--:-- --:--:-- --:--:--  2470
acceptance_1  | # /tmp/bats.1.src: line 26: [: too many arguments
Other tests run OK.
Can someone help to understand what is the bug in the script?
I am using Mac OSx
Thanks in advance

You might have more luck getting an answer if you ask your question on StackOverflow.
(And close your issue here)


Segmentation fault (core dumped) & Could not process Matrix Market banner.

Is it okay that all examples fail on graphs  small/test_spgemm.mtx and small/test_sgm.mtx?

It's fine for it to fail on small/test_spgemm.mtx, because it's not a correctly formatted .mtx file.
For small/test_sgm.mtx which is a correctly formatted .mtx file, the interaction between GRB_UTIL_REMOVE_SELFLOOP=1, which removes all edges e(i,j) i=j and the .mtx file only having such edges results in reading in 3 arrays row_indices, col_indices and values with size 0. This is then handled poorly by the Matrix::build method. Will be fixed.

This issue was fixed with 1a05255.


Not getting semantic_tokens requests for custom language

First of all, thank you very much for making this library.
I frankly doubt that this issue would be caused by a bug in this library, but after searching extensively on the internet I could find nothing else that might cause it so I thought I would pose it here where people have more experience with writing language servers.
With that out of the way, this is the first time I tried making a language server for a custom language, and at first I was just trying some stuff out.
The problem is the following:
When I open a test file with the .scaffold extension, I expect the first token to be colored, but that is not the case.
I have tested the following:

:LspInfo => My language server is running and connected to the buffer
Other actions => both Goto definition and Code action return the expected default result from the language server
:Inspect => this vim command should return the data that semantic_tokens returned for the token under the cursor, when I tried this in a rust file it returned the expected data, so vim does send the semantic_tokens request to rust_analyzer and my colorscheme does not break it. However, when I tried it in the .scaffold file at the location that the default function should report a token, neovim says that there is no token there.

So, here is the initialize function and semantic_tokens functions:
impl LanguageServer for ServerState {
	type Error = ResponseError;
	type NotifyResult = ControlFlow<async_lsp::Result<()>>;

	fn initialize(
		&mut self,
		params: InitializeParams,
	) -> BoxFuture<'static, Result<InitializeResult, Self::Error>> {
		eprintln!(
			"Initialize with {:?}",
			params
				.capabilities
				.text_document
				.unwrap()
				.semantic_tokens
				.unwrap()
				.token_types
		);
		Box::pin(async move {
			Ok(InitializeResult {
				capabilities: ServerCapabilities {
					position_encoding: Some(PositionEncodingKind::UTF8),
					hover_provider: Some(HoverProviderCapability::Simple(true)),

					definition_provider: Some(OneOf::Left(true)),
					semantic_tokens_provider: Some(
						SemanticTokensServerCapabilities::SemanticTokensOptions(
							SemanticTokensOptions {
								work_done_progress_options: WorkDoneProgressOptions::default(),
								legend: SemanticTokensLegend {
									token_types: vec![SemanticTokenType::FUNCTION],
									token_modifiers: vec![SemanticTokenModifier::DEFAULT_LIBRARY],
								},
								range: Some(true),
								full: Some(SemanticTokensFullOptions::Delta { delta: Some(true) }),
							},
						),
					),
					code_action_provider: Some(CodeActionProviderCapability::Options(
						CodeActionOptions {
							code_action_kinds: Some(vec![CodeActionKind::new("refactor")]),
							work_done_progress_options: WorkDoneProgressOptions::default(),
							resolve_provider: None,
						},
					)),
					..ServerCapabilities::default()
				},
				server_info: None,
			})
		})
	}

	// Some other functions with default implementations

	fn semantic_tokens_full(
		&mut self,
		_: SemanticTokensParams,
	) -> BoxFuture<'static, Result<Option<SemanticTokensResult>, ResponseError>> {
		Box::pin(async move {
			Ok(Some(SemanticTokensResult::Tokens(SemanticTokens {
				result_id: None,
				data: vec![SemanticToken {
					delta_line: 0,
					delta_start: 0,
					length: 5,
					token_modifiers_bitset: 0,
					token_type: 0,
				}],
			})))
		})
	}

	fn semantic_tokens_full_delta(
		&mut self,
		_: SemanticTokensDeltaParams,
	) -> BoxFuture<'static, Result<Option<SemanticTokensFullDeltaResult>, ResponseError>> {
		Box::pin(async move {
			Ok(Some(SemanticTokensFullDeltaResult::Tokens(
				SemanticTokens {
					result_id: None,
					data: vec![SemanticToken {
						delta_line: 0,
						delta_start: 0,
						length: 5,
						token_modifiers_bitset: 0,
						token_type: 0,
					}],
				},
			)))
		})
	}

	fn semantic_tokens_range(
		&mut self,
		_: SemanticTokensRangeParams,
	) -> BoxFuture<'static, Result<Option<SemanticTokensRangeResult>, ResponseError>> {
		Box::pin(async move {
			Ok(Some(SemanticTokensRangeResult::Tokens(SemanticTokens {
				result_id: None,
				data: vec![SemanticToken {
					delta_line: 0,
					delta_start: 0,
					length: 5,
					token_modifiers_bitset: 0,
					token_type: 0,
				}],
			})))
		})
	}
}

And this is the code that starts my language server in vim:
local lspconfig = require 'lspconfig'
local configs = require 'lspconfig.configs'

if not configs.scaffold_analyzer then
  configs.scaffold_analyzer = {
    default_config = {
      cmd = { '/home/hummingphoenix/Desktop/projects/scaffold/scaffold_analyzer/target/release/scaffold_analyzer' },
      root_dir = lspconfig.util.root_pattern('.git'),
      filetypes = { 'scaffold' },
    },
  }
end
lspconfig.scaffold_analyzer.setup {}

And the code that adds scaffold as a language
vim.filetype.add({
	extension = {
		scaffold = "scaffold"
	}
})

I know that this might not be the best place to ask, but I hope that you can still help me, or otherwise point me in a direction where I might find the answer myself, because I am out of my wits.

The problem is the following:
When I open a test file with the .scaffold extension, I expect the first token to be colored, but that is not the case.

This is quite a vague description. How do you know the "something wrong" is caused by this library, not your editor or editor plugin? Also that you said you are using vim, but also giving lua script and lspconfig plugin, which are all neovim specific stuff, not vim at all.
For general guide, I suggest to debug your program with your LSP client setup, to check if semantic_tokens_* is called at all, via eprintln! or logs. And also check the stderr log of your server (check the manual of your editor and/or plugin to learn how to).

If it is not called, then it's probably a negotiation issue, possibly because your editor/plugin does not support it.
If it is called but the token is not rendered, then check if your color theme plugin has the highlight definition for the semantic token type FUNCTION (in the manual of your color scheme plugin). I don't think vim has a default highlighting for it, but not sure whether neovim has a default one.

If you are sure it's an library issue, please give the minimal reproduction code and relevant LSP messages. This is unlikely the case because it works for my LSP server on my editor setup.

Thank you for your help. After some more testing I managed to get it working. It seems like neovim does not send the semantic_tokens_* request if the server does not support the text_document_sync capability even if it does support semantic tokens.


"Preparing Workers" step never completes

I experienced a problem where the "Preparing Workers" step never completed although the layer was successfully tiled. This problem occurred on staging with 4 worker instances.

Oddly enough, the chunk status start date was also never set.
Here's what it looked like upon completion:

Relevant logs:
Worker 1:
[INFO] 2015-11-03 09:40:10 process Executing job thumbnail
[INFO] 2015-11-03 09:40:10 process Generating thumbnails for layer 35...
[INFO] 2015-11-03 09:42:27 process Done generating thumbnails
[INFO] 2015-11-03 09:42:27 process Executing job thumbnail
[INFO] 2015-11-03 09:42:27 process Generating thumbnails for layer 35...
[INFO] 2015-11-03 09:44:30 process Done generating thumbnails
[INFO] 2015-11-03 09:45:06 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:45:12 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:46:42 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:47:49 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:47:52 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:48:50 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:49:24 process Executing job timeout
[INFO] 2015-11-03 09:49:41 process Executing job emr_heartbeat
[INFO] 2015-11-03 09:49:41 process EMR Heartbeat failed for layer 35.

Worker 2:
[INFO] 2015-11-03 09:39:40 process Executing job validate
[INFO] 2015-11-03 09:39:41 process Image validated 11-fa1c109f-19b0-4ecd-995a-261e179cd490.tif
[INFO] 2015-11-03 09:39:41 process 5/5 images validated for layer 35
[INFO] 2015-11-03 09:39:41 process Layer 35 is valid
[INFO] 2015-11-03 09:39:41 process Queue handoff job
[INFO] 2015-11-03 09:39:41 process Queue thumbnail job
[INFO] 2015-11-03 09:39:41 process Queue timeout job
[INFO] 2015-11-03 09:40:41 process Executing job thumbnail
[INFO] 2015-11-03 09:40:41 process Generating thumbnails for layer 35...
[INFO] 2015-11-03 09:43:20 process Done generating thumbnails
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job timeout
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:21 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:22 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:25 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:27 process Executing job chunk
[INFO] 2015-11-03 09:43:27 process Chunk layer 32 FINISHED
[INFO] 2015-11-03 09:43:37 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:39 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:41 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:42 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:43:48 process Executing job mosaic
[INFO] 2015-11-03 09:43:48 process Mosaic layer 32 STARTED
[INFO] 2015-11-03 09:43:57 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:44:00 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:44:15 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:44:17 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:44:24 process Executing job timeout
[INFO] 2015-11-03 09:44:30 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:44:41 process Executing job timeout
[INFO] 2015-11-03 09:44:41 process Executing job emr_heartbeat
[INFO] 2015-11-03 09:44:42 process EMR Heartbeat failed for layer 35.

Worker 3:
[INFO] 2015-11-03 09:39:39 process Executing job thumbnail
[INFO] 2015-11-03 09:39:39 process Generating thumbnails for layer 35...
[INFO] 2015-11-03 09:47:50 process Done generating thumbnails
[INFO] 2015-11-03 09:48:20 process Executing job timeout
[INFO] 2015-11-03 09:48:53 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:49:40 process Executing job timeout
[INFO] 2015-11-03 09:50:44 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:52:12 process Executing job chunk
[INFO] 2015-11-03 09:52:12 process Chunk layer 35 FINISHED

Worker 4:
[INFO] 2015-11-03 09:39:40 process Executing job emr_handoff
[INFO] 2015-11-03 09:39:40 process Launching EMR cluster for layer 35
[INFO] 2015-11-03 09:40:26 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:40:29 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:40:38 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:40:41 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:40:43 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:40:47 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:41:05 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:41:07 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:41:09 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:41:10 process Executing job ObjectCreated:Put
[INFO] 2015-11-03 09:41:11 process Executing job thumbnail
[INFO] 2015-11-03 09:41:11 process Generating thumbnails for layer 35...
[INFO] 2015-11-03 09:50:45 process Done generating thumbnails
[INFO] 2015-11-03 09:52:33 process Executing job mosaic
[INFO] 2015-11-03 09:52:33 process Mosaic layer 35 STARTED
[INFO] 2015-11-03 09:54:32 process Executing job mosaic
[INFO] 2015-11-03 09:54:32 process Mosaic layer 35 FINISHED

This may be a problem with jobs stepping over each others' toes and overwriting model attributes.


Possible to disable OS-level High Contrast alterations?

As I read the spec, and the Microsoft implementation, it seems like high-contrast color alterations are applied by the browser as a sort of media query. Then on top of these browser changes, we as developers can apply our own media queries to override those.
My question is about the dreaded css-in-js debate. At Twitter, we do not use media queries and are strict css-in-js via React Native styles. Thus for handling something like night mode, or high contrast night mode, we simply swap our color palette and re-render. I worry that in Windows high-contrast mode, the OS would still apply its enhancements on top of our specific theme.
I know that we can simply run the media query to see if we should use our high contrast palette, but is there a way to then signal that the OS should skip applying any special formatting?
Thanks!

It seems that you can use
<style>     * {         high-contrast-adjust: none;     } </style>
in CSS to opt-out of the High Contrast.
Since * is not performance optimal maybe the high-contrast-adjust property could use a inherit value

default on all elements 'inherit'
default on body 'auto'

With this opting-out could be
<style>     body {         high-contrast-adjust: none;     } </style>

@comp615 This is a valid question and the solution is as described by @dpierangeli.
We allow authors to disable high-contrast (now know as forced-colors) by declaring forced-colors-adjust: none on any element and its effect applies to the element and its entire subtree. In other words, when applied to the root effectively no forced-colors will be applied.

Considering the topic closed at this point.


[Feature Request] Clean Rooms as part of TRE?

Clearn Rooms
The newly announced Clean Rooms service looks like a good fit for the this project..
https://aws.amazon.com/clean-rooms/features/
Are there any plans to add it as part of the project roadmap?

Thank you for reaching out. Your request has been added to our backlog for research computing solutions. Our team curates these requests for fit with our solutions vision on a regular basis. Please watch this space for new updates. If you require immediate assistance, please reach out to your AWS account team. Please note that security issues should be reported directly to AWS Security at<EMAIL_ADDRESS>


Mocha's skip doesn't seems supported for NTVS.

Unit tests trying to use skip() method are still executed by Visual Studio and the TFS build system.
Expected Behavior
Test defined like this should not be executed :
describe("my suite" => {
   it.skip("skiped test", () => {} );
});

Actual Behavior
Tests are executed

NTVS Version: 1.2.40726
Visual Studio Version: 2015 Update 3
Node.js Version: 4.5.0

Steps to Reproduce

create test as describe previously

Fixed as of #1586


Trigger Webhook Timezone is incorrect Ghost Settings

The ghost setting ↓

In raising this issue you have deleted our issue template. Please fill out the template fully so that we have the information we need to help you.


[test] new failing insert test

Somehow hit this one :dart: ...
It might be this line: https://github.com/techascent/tmducken/blob/9583c573dab87ea9634c31cdeede16e6dd167a94/src/tmducken/duckdb.clj#L343
But also, I'm not sure I'm smart enough to figure this one out at the moment.

:+1:


Can I randomly toggle ready_o signal? (verification experiment)

Hi guys! I have a quick question. How stable do you think is black-parrot if I start randomly toggling ready_o signals across the design? By toggling I mean doing ready_o & random_signal. In other words, saying I am not ready even if I am, not vice versa.
For example, I randomly toggled ready_o of FE cmd fifo. My assumption is that this is simply a handshake signal. Doing this will obviously affect performance but shouldn't affect the functionality, am I right? What I am trying to do is to create artificial back pressure to see if this will activate any logic that wasn't active before or bring the processor in a potential buggy state.
It seems like it does activate something that wasn't active before because all of the tests that I have start failing cosim. I was wondering if what I am doing is legal at all?
Thank you!

Great question and interesting project.  Seems super valuable for stressing latency-insensitive interfaces!  There are a few cases here, and some terminology from the basejump paper (see #327 for a discussion of this) to determine what is legal to toggle.

ready-valid-and

in this case, it is fine to mask ready or valid (1->0).  Raising 1 when not ready or not valid will result in undefined behavior

ready-then-valid

in this case, it is fine to mask ready (1->0).  Rasing 1 on ready or masking 1 on valid will result in undefined behavior

valid-then-ready (also called valid-then-yumi)

in this case, it is fine to mask valid (1->0).  Raising 1 on valid or masking 1 on yumi will result in undefined behavior

Most interfaces in BlackParrot are ready-then-valid or valid-then-yumi, whereas modules in Basejump STL tend to be ready-valid-and.
That said, it should be legitimate to mask the ready signal of the fifo here.  However, this specific case is actually a known bug (#405 #443).  The BE cannot handle backpressure from the FE in this way, because there is an assumption that the FE will dequeue 1 attaboy a cycle so that the fifo is always ready.

Thank you for an informative response, Dan! Very helpful! I will read through the references that you mentioned

I would read the BaseJump STL paper first. Assuming you are injecting the
gates between the modules, you need to mask all helpful signals (which
means for “valid and ready” interfaces you need to mask both signals, a
difference from what Dan said above.)
M
On Wed, May 13, 2020 at 4:35 PM Nursultan Kabylkas<EMAIL_ADDRESS>wrote:

Thank you for an informative response, Dan! Very helpful! I will read
through the references that you mentioned
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/black-parrot/black-parrot/issues/498#issuecomment-628299937,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEFG5ADLIHACOSSEQHWUANLRRMVCTANCNFSM4NAFLTWA
.

Closing as stale


term disambiguation: uniglomerular lAL PN

FBrf0222962 states that Scer\GAL4[GH146.PB] drives expression in "uniglomerular lAL PNs and the majority of uniglomerular adPNs". (lAL = lateral antennal lobe, PN = projection neuron, adPN = anterodorsal projection neuron).
I can't quite tell if "uniglomerular lAL PN" should be a synonym for "uniglomerular antennal lobe projection neuron" FBbt:00007383, a synonym to one of its children, or should be a new term (it's the 'lateral' that's confusing me).
I think 'uniglomerular adPN' is 'adult uniglomerular antennal lobe projection neuron adPN' FBbt:00100368, so that should be (I think) a synonym.

I can't quite tell if "uniglomerular lAL PN" should be a synonym for "uniglomerular antennal lobe projection neuron" FBbt:00007383, a synonym to one of its children, or should be a new term (it's the 'lateral' that's confusing me).

Looks like this should be a new child term under "uniglomerular antennal lobe projection neuron" that will be a parent to all the lateral subclasses. There are similar classes to this for the adPNs and vPNs already - I will create one for the lPNs.

I think 'uniglomerular adPN' is 'adult uniglomerular antennal lobe projection neuron adPN' FBbt:00100368, so that should be (I think) a synonym.

Yes, and I will add lAL synonym for lPN class too.


I can probably make those programmatically though.


[ci][docs] fixed broken link

Old site with free pdf is down now and seems will not be recovered in the future.

I'm able to reproduce the 403 showing up in the task from my laptop

The only option I've found that returns a 200 is the Google Scholar result (https://scholar.google.com/scholar?q="On+Grouping+for+Maximum+Homogeneity") :/

Hmm, 403, really?!
OK...

Thanks @StrikerRUS ! That link returns a 302, but I guess linkchecker must follow redirects


Set up cronjob through Github actions

Through the Github actions it seems one could set up a cronjob with the on.schedule property. If this is possible it could be a good option for running the program automatically without a VPS.
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#onschedule

Added to docs in e301c1039cdecd9caf8ced8d4c487effca208a39


Hpot ttp

Detection Found In Honeypot Loading Mimikatz and xmrig

Powershell Creating Thread Mutex (passed)
Powershell Processing Stream Of Data (passed)
Powershell Using memory As Backing Store (passed)
Recon AVProduct Through Pwh or WMI (passed)
Recon Using  WMI Class (passed)
WMI Recon Running Process Or Services (passed)

redundant

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Powershell Creating Thread Mutex :white_check_mark:

diskUsage: 188416
runDuration: 1.201s
scanCount: 131

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Powershell Processing Stream Of Data :white_check_mark:

diskUsage: 188416
runDuration: 0.926s
scanCount: 130

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Powershell Using memory As Backing Store :white_check_mark:

diskUsage: 188416
runDuration: 0.804s
scanCount: 130

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Recon AVProduct Through Pwh or WMI :white_check_mark:

diskUsage: 188416
runDuration: 1.164s
scanCount: 130

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Recon Using  WMI Class :white_check_mark:

diskUsage: 192512
runDuration: 1.284s
scanCount: 131

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
WMI Recon Running Process Or Services :white_check_mark:

diskUsage: 188416
runDuration: 0.8290000000000001s
scanCount: 130

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Powershell Creating Thread Mutex :white_check_mark:

diskUsage: 163840
runDuration: 0.778s
scanCount: 130

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Powershell Processing Stream Of Data :white_check_mark:

diskUsage: 172032
runDuration: 0.8140000000000001s
scanCount: 131

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Powershell Using memory As Backing Store :white_check_mark:

diskUsage: 163840
runDuration: 0.9500000000000001s
scanCount: 6

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Recon AVProduct Through Pwh or WMI :white_check_mark:

diskUsage: 167936
runDuration: 0.9380000000000001s
scanCount: 130

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Recon Using  WMI Class :white_check_mark:

diskUsage: 172032
runDuration: 0.858s
scanCount: 130

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
WMI Recon Running Process Or Services :white_check_mark:

diskUsage: 167936
runDuration: 1.2730000000000001s
scanCount: 130


docs: add optimus doc homepage

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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 70.06%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
4453

Relevant Lines:
6356

💛  - Coveralls


Support a libSQL adapter

Is your feature request related to a problem? Please describe.
I would like to easily use a sqlite database in development, but connect to a different remote database in production. libSQL would be a nice tool to use that adds some consistency, but there is currently no official libSQL support in MikroORM.
Describe the solution you'd like
While custom adapters are supported, I fell that a libSQL adapter would be a reasonable addition to the core offering. I am currently looking to build this out in the knex library, and I would love to contribute a @mikro-orm/libsql package here if you'd be open to that contribution.
Describe alternatives you've considered
Custom adapter
Additional context
No additional context, except to thank you for making such an awesome library :)

How is this different from the two sqlite drivers we already have? If you can make it work with knex, adding the driver should be rather simple, but I'd first want to see an actual reason.


Add red cross and timeout to error messages

Hi, error messages take a lot of space in the chat (especially the wrong channel one), this is why I think we should add a red cross to delete the message and à timeout before it goes away itself (something like 10 seconds).
Implementation details

Modify the error handler in case of InChannelCheckFailure.

I'd rather just have the message self-destruct

@sco1 you mean just a timeout, no cross?


Fix scvmm template deploy.

removed the parameters, which are not in use.

Changes Unknown when pulling cdc057d7fef5e70907281512da0cc5937428d001 on amavinag:scvmm_deploy into ** on RedHatQE:master**.

Lint report for commit cdc057d7fef5e70907281512da0cc5937428d001:
Everything seems all right :smile: .
CFME QE Bot


[Prototype] Reload / FileConfigurationProvider

Initial iteration of changes we discussed:

Moving Reload from ConfigRoot to ConfigProvider
Introduced new FileConfigurationProvider which contains the reload logic and exposes a single Load(Stream) abstract for xml/json/ini to override

@divega

Updated:

Removed FileProviders project and merged with FileExtensions, kept namespace for FileConfigurationProvider
Removed Load overload on ConfigurationProvider concrete implementation

This will probably be replaced by the outcome of https://github.com/aspnet/Configuration/issues/401

Replacing with new PR


Adding framework specific instructions to documentation - React, Vue

What type of PR is this? (check all applicable)

[ ] ♻ Refactor
[ ] ✨ New Feature
[ ] 🐛 Bug Fix
[x] 📝 Documentation Update
[ ] 👷 Example Application
[ ] 🧑💻 Code Snippet
[ ] 🎨 Design
[x] 📖 Content
[ ] 🧪 Tests
[ ] 🔖 Release
[ ] 🚩 Other

Description

This PR [adds/removes/fixes/replaces] this [feature/bug/etc].
Related Tickets & Documents

Resolves #
Mobile & Desktop Screenshots/Recordings

Added code snippets?

[x] 👍 yes
[ ] 🙅 no, because they aren't needed

Added tests?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

No tests? Add a note

Added to documentation?

[ ] 📜 readme
[ ] 📜 contributing.md
[x] 📓 general documentation
[ ] 🙅 no documentation needed

No docs? Add a note

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1205616333171832

Hi @blackgirlbytes can you help give the React page a look? Hoping you might have stuff to add off the Dinger NextJS app.

oh @acekyd for some reason, I'm just seeing this notification. Is it okay if I make a change to it. I wanna do one for React and one for Next.js. I don't know if I'm being too granular, but I think the process for both are slightly different. Thanks for starting this, and I wish I saw it earlier.


Update README.md

Added General Search Engine

I didn't want to include duckduckgo cuz it's basically bing under the hood, but it's okay


monorepo: vscode-icons has detected conflicting project icons

I'm using yarn workspaces to work with a monorepo in which I have both a NestJS and an Angular project.
I've been getting this popup:

As an example, packages/angular-stuff might be Angular while packages/nest-stuff would be NestJs, but they're both part of a main root workspace.
Is there a way to configure the extension to understand my setup?

No. You can have one or the other, not both, hence the message.

Look into https://github.com/nrwl/nx which has almost 3K stars on github. It's a new dev paradigm for monorepos and one of the main directions it recommends is having an angular and nestjs project under the same root.
Hence this should be a pretty common request going forward.

It's technically impossible what else can I tell you.

@andreialecu the problem here is that file icons can only been associated once. So, to make this clear to anyone wondering why this is not possible to overcome I'll put an example: both Angular and NestJs use files named as controller, guard, module, pile and service. As we cannot technically change the icon associated to these names depending on the location of the file, you have to decide which icon to show whenever you find these file names.
So, by using our Fine Tuning feature you could change the conflicting icons to a more neutral ones, but that's all that we can offer for the moment.
Note that this is because a limitation on the current VSCode API, not in our extension functionality. Hope this helps to illustrate the question. 😀

I see. I didn't mean to sound pushy or anything, it's a minor issue. However, since monorepos and nx are gaining traction, this should be kept on some sort of roadmap for the future.
Looks like an issue should be opened in the VS Code repo to enable extensions to override icons on a per directory/per file basis.

I knew this was related to nrwl/nx as I thought about the possible conflicts that PAD system could generate for monorepos.
As @robertohuertasm said, it is not possible due to VSCode API but would be great if someone open a new ticket for that (if not already existing).

@andreialecu Issue already exists on vscode repo. Team has stated that this is of no priority for them.

I'm closing the issue as answered,


problem with interfaces

From @jeevan-reddy on December 20, 2015 16:56
Error:
Argument of type '{ size: number; label: string; }' is not assignable to parameter of type '{ label: string; }'.
Object literal may only specify known properties, and 'size' does not exist in type '{ label: string; }'.
My typesscript version is 1.7.5
Steps to recreate the Error:

Create a .ts file named script.ts
type the following code :

function printLabel(labelledObj: {label: string}) {
  console.log(labelledObj.label);
}
var myObj = {size: 10, label: "Size 10 Object"};  // myObj is of type {size:number;label:string}
// printLabel(myObj);
printLabel({size: 10, label: "Size 10 Object"});   // the object being passed to printLabel is also of type {size:number;label:string}

Compile the script.ts using command tsc script either from command prompt/powershell

it is clearly mentioned in documentation  that if we send extra arguments it is ok .please refer to attached code-snippet

But what is the difference if i assign an object to a variable , pass that variable as argument  and if i directly pass the object as argument ?
Copied from original issue: Microsoft/TypeScript#6175

From @kitsonk on December 20, 2015 17:49
The handbook is currently wrong as of TypeScript 1.6.3.  It was discussed in #3755 and was changed in #3823.
IIRC, the team are in the process of doing a whole update of the handbook, because there are a few other issues with it.

From @DanielRosenwasser on December 20, 2015 20:47
Thanks for catching this @jeevan-reddy, I'll be amending this in https://github.com/Microsoft/TypeScript-Handbook/issues/64

Duplicate of #64.

Could you please at least add a warning message like "Some of this information may be outdated"?  I mean, I lost some time trying to figure out whats wrong with my code while following this handbook for learning typescript. A version warning message would be enough for considering the problem as a version incongruity.


debug's "WATCH" view is missing

In today's Insiders, debug's "WATCH" view is missing and it cannot even be enabled from the context menu:

This problem reproduces with extensions disabled.
It does not reproduce when running VS Code from a different user directory ("--user-data-dir").

@weinand has the view perhaps got moved to the Panel?

@gjsjohnmurray Indeed, that was the issue. But I'm not aware that I did this...

@weinand glad it was a simple fix, but worrying that your workbench layout apparently changed itself in the first place. I recently noticed a similar quirk in my 1.59, where the Source Control Repositories view had migrated from the SCM view container to become a standalone item on the activity bar. I initially assumed it must've been something I did and forgot about, but now I'm not so sure.


De-duplicate seq_to_randstrobes2 and seq_to_randstrobes2_read

Some comments on why I dit it in two separate functions. (also see comments under the function header in the code, lines 535-538)
The reference only need seeds created in the forward ditection. The queries needs seeds extracted from both directions, since they are not neccesarily the same(!), as opposed to canonical k-mers which are the same in both directions.
However, by using canonical syncmers we can at least avoid to compute them in both directions, but we still have to do the 'linking' in both directions.
What is needed 'roughly' is:

create canonical syncmers
create randstrobes fw strand (the linking of two syncmers)
create randstrobes rc strand (the linking of two syncmers)

Therefore, I think one way is to break it up into seq_to_canonical_syncmers(..) and sycmers_to_seeds(..), where sycmers_to_seeds(..) would be called twice for the reads; with the original list of syncmers (fw direction), and with the list of syncmers reversed (RC direction). Note that also the vector pos_to_seq_choord  needs not only to be reversed but re-coordinated as in the code:
    for (unsigned int i = 0; i < nr_hashes; i++) {
        pos_to_seq_choord[i] = read_length - pos_to_seq_choord[i] - k;
    }


Apply playRangeStart after playback has started?

We've got a client that is requesting a video to start playback normally at 0 starting position, but when it loops they want it to loop over a specific range instead of over the entire video.
I tried to apply a new play range configuration after playback started, but upon looping, the player went back to the actual start of the clip instead of what I specified in my playRangeStart value.
My config command that I applied after playback started was:
shakaPlayer.configure({playRangeStart: 135, playRangeEnd: Infinity});
Is it currently possible to achieve this desired behavior of letting a video start normally but then altering the config after playback starts to define a different playRangeStart to alter the looping behavior?

@jkringen Thank you for reaching out to us with your question. Shaka player does not handle the looping behavior, we leave that to the browser. As a general practice, if we can leave something to the browser, we do.
You use case feels unique to me, so I am not sure how easily it would have resources allocated to it. But, if it is something you feel strongly about, you can always file a feature request for it.
In the mean time, what I can suggest is adding an event listener to the video element (e.g. timeupdate) and watch for when the video element is about to reach the end of the presentation. At that point, you can perform a seek back to the looping range.
@jkringen does that help?

Thanks for the info, @vaage. I had thought about monitoring the timeupdate event to do that ourselves, if we had to, but was hoping there was a handy API feature for that. No worries, for now. I'll look into the manual approach or see if we can work around this another way.
Thanks!


Upgrade to support Junit 5.9.3

To fix https://github.com/sbt/sbt-jupiter-interface/issues/60, upgrade to support Junit 5.9.3

https://github.com/LuciferYang/sbt-jupiter-interface/actions/runs/5211496520

CI passed

dup with https://github.com/sbt/sbt-jupiter-interface/pull/59, close this one


pip-compile error on non-semver packages

I have the following line in my requirements.in file:
pypiwin32==219 ; sys_platform == 'win32'
when running pip-compile, I'm getting the following error message:
pip.exceptions.InstallationError: Command "python setup.py egg_info" failed with error code 1 in /tmp/tmpFCWEt3build/pypiwin32/
I've made sure it's not because of the second half (environment markers), but rather the problem seems to be related to the version of the package.
Environment Versions
OS Type: Ubuntu 16.04
Python version: 2.7.12
pip version:  9.0.1
pip-tools version: 1.9.0

Odd, I have the same package (with the same version) working allright with pip-compile, on Windows.
I have a strong feeling the error is due to pip trying to build the package (which is Windows Only) on linux, but I would expect the environment marker to prevent that.
Question: How have you made sure it's not due to the environment marker?

Oh, I simply meant I tried removing the environment marker section and running pip-compile. I was on a Linux machine, but the error that I got was the same.
According to the stack trace, it indeed looks like it tries to get the dependencies list:
Traceback (most recent call last):
  File "<some-path>/bin/pip-compile", line 11, in <module>
    sys.exit(cli())
  File "<some-path>/local/lib/python2.7/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "<some-path>/local/lib/python2.7/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "<some-path>/local/lib/python2.7/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "<some-path>/local/lib/python2.7/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "<some-path>/local/lib/python2.7/site-packages/piptools/scripts/compile.py", line 184, in cli
    results = resolver.resolve(max_rounds=max_rounds)
  File "<some-path>/local/lib/python2.7/site-packages/piptools/resolver.py", line 107, in resolve
    has_changed, best_matches = self._resolve_one_round()
  File "<some-path>/local/lib/python2.7/site-packages/piptools/resolver.py", line 195, in _resolve_one_round
    for dep in self._iter_dependencies(best_match):
  File "<some-path>/local/lib/python2.7/site-packages/piptools/resolver.py", line 274, in _iter_dependencies
    dependencies = self.repository.get_dependencies(ireq)
  File "<some-path>/local/lib/python2.7/site-packages/piptools/repositories/local.py", line 62, in get_dependencies
    return self.repository.get_dependencies(ireq)
  File "<some-path>/local/lib/python2.7/site-packages/piptools/repositories/pypi.py", line 145, in get_dependencies
    self._dependencies_cache[ireq] = reqset._prepare_file(self.finder, ireq)
  File "<some-path>/local/lib/python2.7/site-packages/pip/req/req_set.py", line 634, in _prepare_file
    abstract_dist.prep_for_dist()
  File "<some-path>/local/lib/python2.7/site-packages/pip/req/req_set.py", line 129, in prep_for_dist
    self.req_to_install.run_egg_info()
  File "<some-path>/local/lib/python2.7/site-packages/pip/req/req_install.py", line 439, in run_egg_info
    command_desc='python setup.py egg_info')
  File "<some-path>/local/lib/python2.7/site-packages/pip/utils/__init__.py", line 707, in call_subprocess
    % (command_desc, proc.returncode, cwd))
pip.exceptions.InstallationError: Command "python setup.py egg_info" failed with error code 1 in /tmp/tmp1t2Q00build/pypiwin32/

I did a bit of testing, and it confirmed my original thought: The environment markers directly in the requirements.in file are not taken into account by pip-compile. But, those in the sub-dependencies are.
Ex: (warning: do not read before your first coffee)
With this setup.py:
setup(
    name='dummy-test',
    version='1.0.0',
    extras_require={
        ':sys_platform == "win32"': ['pypiwin32==219'],
    },
)

and this requirements.in:
dummy-test

We get this requirements.txt (on windows):
dummy-test==1.0.0
pypiwin32==219            # via dummy-test

and on linux (or if I change the condition to sys_platform != "win32":
dummy-test==1.0.0

But if I put pypiwin32==219; sys_platform == "win32" in the requirements.in instead, and remove the extras_require, I get:
dummy-test==1.0.0
pypiwin32==219 ; sys_platform == "win32"

and if I change the condition to sys_platform != "win32" (still on windows):
dummy-test==1.0.0
pypiwin32==219 ; sys_platform != "win32"

Also, as you would expect now, if the top-level package has dependencies too, they will get in the requirements.txt too. In other words, in the examples above where we put the marker in the requirements.in, change pypiwin32==219 by requests, and you'll get requests' dependencies on both platform. The environment markers in the requirements.in are really not taken into consideration, and merely copy-pasted to the requirements.txt.
Result: We'll need to standardise the behaviour here and parse/compute the markers in the input file.

I digged a bit more into this: pip-tools does no handling whatsoever to exclude "unsupported requirements". It just happens that setuptools takes care of the marker evaluation before returning the requirements, which isn't done for plain requirements.in file. we have to do that ourselves.
I could filter out "unsupported requirements", but then I have to make a choice on whether to keep or remove the feature that adds the requirements with their markers in the requirements.txt.

Dealth with by #647