[RFC] Integrate LIBXSMM with TVM.

pre-RFC: https://discuss.tvm.apache.org/t/rfc-top-byoc-intel-libxsmm-integration/11688

Thanks for the RFC and overall LGTM. One suggestion I have is that it would be great if you could provide an upstream plan that briefly explains how would you send PRs. To facilitate the review process, it is encouraged to break down your implementation to a series of small PRs. Here is an example of a PR series:

Add libxsmm to the TVM CI.
Add libxsmm to TOPI.
Add libxsmm to Relay op strategy.
Add libxsmm to BYOC.

Upstream plan added, at the end of RFC.
By the way, I'm not quite sure what "TVM CI" refers to? If it means unit tests, they will be included in their related PRs when I upstream my code.

@comaniac Any update?

@comaniac Thank you, I've updated the plan, please let me know if there is still problems.

Thanks @zhuwenxi this is now merged.
Also please file a follow-up PR to add the RFC information (start date, RFC PR and RFC tracking issue). You can refer to other merged RFCs for details.

@comaniac OK, I'll update the RFC information soon.

@comaniac I'm starting to implement the first PR "Add libxsmm to TVM CI" recently. I wonder if there is any CI-related PR I can refer to?

@comaniac I'm starting to implement the first PR "Add libxsmm to TVM CI" recently. I wonder if there is any CI-related PR I can refer to?

You could refer to the PR like https://github.com/apache/tvm/pull/9881 or something similar.

@comaniac I'm starting to implement the first PR "Add libxsmm to TVM CI" recently. I wonder if there is any CI-related PR I can refer to?

You could refer to the PR like apache/tvm#9881 or something similar.

Thank you!


[Bug]: Possible regression with service worker / Windows cache fix causing large bandwidth use

Describe the bug
A possible regression introduced between Evidence 39.1.1 and Evidence 39.1.4 that causes multiple reads on Parquet files, resulting in cases where 51.5MB of data is transferred for 53.1MB of resources. In 39.1.1, this same page transfers 6.5MB of data for 26.8MB of resources. 26.8MB x 2 = 53.6MB, making me think that the browser and the service worker are doing a double request for the same set of data. It's affecting Chrome and Edge on Windows and seems to be associated with the service worker and/or recent cache fix for the TProtocolException issue.

Steps to Reproduce

Open an Evidence instance in Microsoft Edge or Google Chrome on Windows.
Open Developer Tools and the 'Network' tab.
Record bandwidth usage and notice multiple requests made by client browser then the service worker.

Logs
No response
System Info
System:
    OS: Windows 10 10.0.20348
    CPU: (8) x64 Intel(R) Xeon(R) Gold 6226R CPU @ 2.90GHz
    Memory: 4.34 GB / 32.00 GB
  Binaries:
    Node: 20.17.0 - C:\Program Files\nodejs\node.EXE
    npm: 10.6.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Chromium (119.0.2151.97)
  npmPackages:
    @evidence-dev/core-components: ^4.7.5 => 4.7.5
    @evidence-dev/csv: ^1.0.12 => 1.0.12
    @evidence-dev/duckdb: ^1.0.11 => 1.0.11
    @evidence-dev/evidence: 39.1.4 => 39.1.4
    @evidence-dev/mssql: ^1.0.9 => 1.0.9
    @evidence-dev/sqlite: ^2.0.6 => 2.0.6
    @timhoward/evidence-connector-mssql: 1.0.1 => 1.0.1

Severity
serious, but I can work around it
Additional Information, or Workarounds
I've downgraded back to 39.1.1 and implemented the manual cache header fix for the TProtocolException in the IIS configuration.

I think it just appears like more data is being transferred because we are intercepting and rewriting the request in the service worker. The external fetch only happens once, and then the data is passed between our service worker and the DuckDB service worker (which is the one that initiated the request) locally on your machine, so there shouldn't be any additional external network traffic.
Even though dev tools is reporting this as more data transferred, I don't think we are making a duplicate external request for the parquet file, its just how it appears due to our rewriting.
Did you see an increase in network traffic anywhere other than dev tools?

I think it just appears like more data is being transferred because we are intercepting and rewriting the request in the service worker. The external fetch only happens once, and then the data is passed between our service worker and the DuckDB service worker (which is the one that initiated the request) locally on your machine, so there shouldn't be any additional external network traffic.
Even though dev tools is reporting this as more data transferred, I don't think we are making a duplicate external request for the parquet file, its just how it appears due to our rewriting.
Did you see an increase in network traffic anywhere other than dev tools?

Unfortunately that's not the behaviour I am seeing on my end.
I believe that the intended behaviour is attempted initially, but the page essentially hangs whilst the service worker downloads everything (12 seconds), and then reloads and seems to download it everything from the service worker. Clicking onto another page, this process repeats, essentially tanking the responsiveness for the user.
As the screenshots show, I'm getting 50MB+ of download with the new version, whereas on the version I've backtracked to I get 12MB. Going off the time of the request, I don't think the second download is coming from the client.
As it stands, I will need to remain on the 39.1.1 before the changes were made. The new version is essentially unusable for us as it stands.
Unfortunately I can't do a lot of deeper networking analysis as we're operating this instance in a secure environment, although I'll see what I can do.

This is unfortunately still affecting our Evidence instance and we've had to stay on 39.1.1 as a result. Is there anyway the service worker can be optional via a command line toggle? We're implementing the cache flags at the web server level and we don't have these issues with runaway bandwidth as a result.

This is a decent idea

@timothyhoward I added an environment variable (VITE_EVIDENCE_DISABLE_WINDOWS_CACHE_SERVICE_WORKER) to disable the windows request rerouting in Evidence version 39.1.11.
To update:
npm install @evidence-dev/evidence@latest @evidence-dev/core-components@latest
Let me know if you have any more issues with this!

@zachstence Thank you - very much appreciated! I'll give it a go and let you know how I get on. :)

I did a little bit more looking into this, and while the flag does provide a mitigation, according to these sources, I think there is a real issue in the service worker right now
https://stackoverflow.com/questions/50129311/requests-through-service-worker-are-done-twice
https://stackoverflow.com/questions/63465984/use-async-function-in-respondwith
In service-worker.js, we have the following (abridged):
sw.addEventListener('fetch', async (event) => { // This function is async
	if (disabled) return;
	if (!event.request.url.endsWith('.parquet')) return;
        // ....
	event.respondWith(fetch(newRequest)); // This may not be responding "in time"
});

From glancing over the function, it seems that it doesn't actually need to be an async function, so the fix might be as simple as making the function synchronous

Hmm, I tried both with and without async, and didn't see much of a difference (at least in the Chrome Dev Tools, though I don't know whether to trust that)

See screenshots
Synchronous

Asynchronous

I think we should make it synchronous since it doesn't need to be asynchronous, but not sure if that will resolve the problem @timothyhoward is seeing. Worth a shot I guess!

@zachstence Thanks again for your work on this. I've unfortunately had no success disabling the service worker on our deployment (I've tried adding the environment variable to the build process stage in the pipeline, as well as to the hosted instance). Is there any particular place it needs to go to be picked up?
The service worker bandwidth use has improved slightly, it's now transferring 29.7MB of 73.8MB of resources.


Refactored loading of checkout file, added support for xcscmblueprint file

Refactored how we parse checkout files, migrated to a nice WorkspaceMetadata struct instead of a dictionary, added more Swift 2-style error handling. Now we also recognize the new .xcscmblueprint files.
Tested everything, but as always, if anything comes up, let me know.

Result of Integration 1
Duration: 2 minutes and 20 seconds
Result: All 19 tests passed, but please fix 3 warnings.
Test Coverage: 23%.


[PROTON] Build proton by default

Summary of changes:

Remove cuda.h from nvidia/backend/include.
Download three packages: cudacrt, cudart, and cupti from nvidia's conda channel.
Remove TRITON_BUILD_PROTON to build proton by default.

@Jokeren This change caused nightly wheels failure on Python3.7 wheel build.

File "/tmp/pip-build-env-of9ihb6h/overlay/lib/python3.7/site-packages/setuptools/build_meta.py", line 338, in run_setup
exec(code, locals())
File "", line 446, in
File "", line 258, in download_and_copy
TypeError: copytree() got an unexpected keyword argument 'dirs_exist_ok'
[end of output]

'dirs_exist_ok' in 'shutils.copytree()' was added in Python 3.8. Nightly wheel builds every Python version from 3.7 to 3.12.
@ptillet Does it make sense to continue building Triton nightly wheels for Python 3.7 going forward? It's been EOL'ed since 6/27/2023. PyTorch stable release only goes back to Python 3.8. Ubuntu 20 ships with Python 3.8 and Ubuntu 22 ships with Python 3.10.

Phil has told me we want to support the oldest supported Python, which seems like not 3.7.  I think we can delete it.

Thanks Justin. PR #3778 to fix it


Should fix that issue for you @radWorx but let me know anything else you find :) Cheers


@mock_dynamodb2 doesn't compose with @classmethod

I'm trying to use mock_dynamodb2 to create a mock db in my unit tests. I'd like to do the db setup once in my setup_class, but it doesn't seem to work with the @classmethod decorator.
When I run
class TestCases(unittest.TestCase):

    @classmethod
    @mock_dynamodb2
    def setup_class(cls):
        cls.dynamodb = boto3.resource('dynamodb', 'eu-west-1')

    def test_case(self):
        self.assertTrue(1)

I get the following error:
args = (), kwargs = {}

    def wrapper(*args, **kwargs):
        self.start(reset=reset)
        try:
>           result = func(*args, **kwargs)
E           TypeError: setup_class() missing 1 required positional argument: 'cls'

../../../../../../dev/lib/python3.7/site-packages/moto/core/models.py:80: TypeError

If I reverse the order of the decorator, as
    @mock_dynamodb2
    @classmethod
    def setup_class(cls):
        cls.dynamodb = boto3.resource('dynamodb', 'eu-west-1')

I get
args = (), kwargs = {}

    def wrapper(*args, **kwargs):
        self.start(reset=reset)
        try:
>           result = func(*args, **kwargs)
E           TypeError: 'classmethod' object is not callable

../../../../../../klarna-dev/lib/python3.7/site-packages/moto/core/models.py:80: TypeError

Ideally, I'd like to have a test class where I can call self.dynamodb from within any test and get a mocked backend, without having to decorate each test.

I believe this is the same as https://github.com/spulec/moto/issues/416, but feel free to reopen if not.


Update basecalling error rate implementation

Basecalling error rates should be based on alignment to reference genome.
LongReadSum currently calculates error rates based on the SAM MD tag.
See this line:
https://github.com/WGLab/LongReadSum/blob/b1423bef7bc7f079560c87ad661025f9fad179fa/BAM_module.cpp#L238
To get alignment mismatches, replace this by checking the reference sequence against the query.

There are various ways that people calculate and report "error rate" of basecalling. Another thing besides CIGAR string to look into is the df:f tag which was implemented in minimap2 (https://github.com/lh3/minimap2/issues/281).


Add de translation to basicFoods.json

add the german translation for basic foods and countName translation where present
What did you do and why?
As discussed in https://github.com/successible/cleanslate/issues/20
I extracted the words, translated it with Claude and then proofread/corrected a couple of translations.
Couple of foods I did not know and for a some even googling didn't help. They do not seem to be used here. In these cases I just repeated the english word.

Just noticed the last entry Zucchini misses a "
Sorry for that


Language selection support

Tasks from 'React Revolution'
https://github.com/CodeForPoznan/pah-fm/tree/react-revolution

Done here: https://github.com/CodeForPoznan/pah-fm/pull/573 and here https://github.com/CodeForPoznan/pah-fm/pull/578


Handle scalar types with the same name but different case (e.g. "URL" and "Url")

Summary
Scalar types with the same name but different case (e.g. "URL" and "Url") result in compilation errors in the generated code.
Version
3.1.0
Description
I have a schema using "scalar URL" in some places, "scalar Url" in others. I was able to register a custom scalar type for "URL" in v2 and it worked fine, but now in v3 I'm only getting a type generated for URL with compilation failures looking for type Url.
I realize I should just use the same case in all places, and I'm working with other teams in our org to fix this. Nevertheless it is a confusing error and a change in behavior.

Hi! 👋
Could it be that your system has a case insensitive file system (it's the default on MacOS for instance). In that case 2 generated files named Url.kt and URL.kt will end-up in the same file instead of 2.

@BoD Yes, I’m pretty sure that’s what is happening.

Thank you!
This could probably be detected/avoided in the code gen code.
In the meantime as a temporary workaround, it looks like it's possible on MacOS to create/mount a case-sensitive dmg file (I haven't tried! 😅)

For the record, this happens in v3 because every type gets a top-level class with its name instead of adding enum values to a single class in v2.
I'm not thrilled at the idea of adding code to detect case sensitivity in Apollo. That sounds like off topic for a GraphQL client. But maybe we can just put all scalar types in the same file?
Until we settle on this, another workaround could be to rename the scalar in your schema. A simple search & replace should do it I think and be transparent to the backend

Yeah, I'm not sure if this is a problem Apollo should solve. I did find it confusing. Just wanted to surface it.
@martinbonnin Great suggestion, I have it working with a manual change while I wait for our actual schema to get updated.


Implement an ExcelSink operator that can write tuples into an excel file.

add excel sink operator and it's dependency into performance_test project.excelSink package.

@diaojinggang Can you change the title of the PR? Maybe remove your name and add a more meaningful title?

Another comment is the name of your branch. Our convention is yourname-task-description.  In your case, it should be jinggang-excel-sink.
Since you already opened this pull request on this branch. You don't have to change the name for this pull request. But please follow the naming convention next time.

@diaojinggang I left a general comment about the test case.  Since presumably this is your first PR, don't be surprised by picky comments :-)

@diaojinggang and @zuozhiw : can we finish this one ASAP?  Let's not wait for too long.

@zuozhiw The excelSink file is modified based your comments and a more comprehensive test case with different fields and large amount of tuples is added. The program can pass all test cases locally. However, it will not pass github test case check because of the following error: Fail to find the file: /home/travis/build/TextDB/textdb/textdb/textdb-exp/src/main/resources/index/excel/201705128_02_42_25_0848.xlsx
This is caused by missing the folder where I store excel files. Notice those files will be deleted in the test. But the first issue seems to be I cannot generate them at all on github.
Where do you recommend to store the result excel files or there are other issues that cause this failure?
Thanks.

The changes look good to me

@diaojinggang Congrats on the merge!


Support setting maximum concurrent requests for the HTTP library

There is currently no support for setting the maximum number of concurrent requests a guest module can perform.
Since the HTTP library supports it, we should expose it as a field in the module config as well:
https://github.com/deislabs/wasi-experimental-http/blob/6a6226ead5ae2335ccde0a7e9a0b4a128d46249f/crates/wasi-experimental-http-wasmtime/src/lib.rs#L296-L298

I would like to take a stab at this. @radu-matei can you point me to the right vicinity in the code where the change needs to occur?

I found the HttpCtx::new() call in run_wasm() and load_routed() methods in mod.rs. I have opened #106 to encapsulate the Router configuration. From what I understand it might make sense to branch from those changes and then propagate the max_concurrency through the RouterConfig object (see PR).
Does that sound right?


Feature Request: add an optional not_equal field to inhibit_rules

The alerts in AlertManager may have severity labels to route alerts to the right receivers. It should also be possible to inhibit an alert with a lower severity level if an alert with a higher severity level and otherwise equal labels is present, e.g.:
inhibit_rules:
  - source_match:
      severity: 'critical'
    target_match:
      severity: 'warning'
    not_equal: ['severity']

It does not work to simply put equal: ['alertname'] because the alert may consist of other labels that should be considered. Currently, it is possible to specify the labels that should be equal, but it should also be possible to specify a list of labels that should not be equal, so that the other labels can be compared for equality without necessarily knowing the label names in advance.

As a data point: At SoundCloud, we traditionally had an inhibit rule in place for exactly that purpose, and we just listed a bunch of typical labels in the equal list. @fredhaug is right that this wasn't perfect. An alert could be the same for all those labels but still alert for something different (e.g. a disk-full alert on the same node might fire as critical for one partition and as warning for another partition, and the corresponding partition label might not have been anticipated when creating the list). For that use case, it would indeed be better to have an option available similar to what @fredhaug suggests. I'm just not happy with the not_equal wording. It would also be mutually exclusive with the equal field. (It wouldn't make sense to provide both.) How about not creating a new field but let the existing equal field understand something like equal: ['...'] (which we already have for group_by). In this case, it would mean “all labels must be equal except those mentioned in both source_match and target_match”.

except those mentioned in both source_match and target_match

This feels off, why would we exclude these labels? We don't consider them when deciding what to include.

They are different (almost) by definition. Example above with my suggested syntax:
inhibit_rules:
  - source_match:
      severity: 'critical'
    target_match:
      severity: 'warning'
    not_equal: ['...']

If severity was included, the inhibition rule would never inhibit anything because severity will never be equal between source and target alert.


set Content-Length correctly

hello,
I had the problem that the Content-Length was set incorrectly with ruby 2.
it was set to the size before gzip decompression. I created a fix which always set the actual length of the response body.
I would be happy if you can give me feedback if this fix is okay or if you can reproduce the bug.
or when you have a better solution.
for now I will embed my fork into my gemfile so that the gem works again with the newest ruby version.
thanks!

+1 on this. Please merge.


[RFC] I hope '->' operator can be applied to all built-in functions, funcref

@brammool
I really love the recently added -> operator! ac92e25a33c37ec5becbfffeccda136c73b761ac
we can write like list->map(...)->filter(...)->join(...)
I'm very pleased to write method chaining in vim script! 😄
But it seems it is limited to these functions. why?
https://github.com/vim/vim/blob/ac92e25a33c37ec5becbfffeccda136c73b761ac/src/evalfunc.c#L997-L1020
I hope lhs->rhs() operator can be applied to when rhs is:

Other all built-in functions
Funcref (Lambda/Partial/User-defined function)

These are examples for above proposal.
How do you think?
Other built-in functions
echo {'key': 42}->has_key('key')

User-defined function
let s:Module = {}
function! s:Module.flatmap(list, func)
  ...
endfunction

function! s:fold(list, init, func)
  ...
endfunction

echo range(1,10)->s:Module.flatmap({n -> n % 2 == 0 ? ['even'] : []})
echo range(1,10)->s:fold(0, {acc,n -> acc + n}

Lambda
call obj->{o -> execute('echo o')}

Lambda is a special case.
because rhs is not function call (func()).
if only function call is allowed, it must be like this.
" obj is passed to the first argument of function call
call obj->{o -> execute('echo o')}()

-> operator can define a flow of reading order.
One can read in very natural order (left to right).
but in above example, (1) "obj" (left) (2) "()" (right) (3) lambda (left)
so I think "()" is not necessary.
Similar operator in other languages
Vim script -> operator looks like method call.
However other languages seems to call this operator "pipeline operator".

ECMACcript pipeline operator
Elixir pipeline operator

You may feel strange -> accepts user defined function like this.
(rhs is not only alphabet)
echo range(1,10)->s:Module.flatmap({n -> n % 2 == 0 ? ['even'] : []})
echo range(1,10)->s:fold(0, {acc,n -> acc + n}

but if this is pipeline operator, I think this is not strange.
echo range(1,10) |> s:Module.flatmap({n -> n % 2 == 0 ? ['even'] : []})
echo range(1,10) |> s:fold(0, {acc,n -> acc + n}

echo range(1,10) |> s:Module.flatmap({n -> n % 2 == 0 ? ['even'] : []})
echo range(1,10) |> s:fold(0, {acc,n -> acc + n})

Sorry, @thinca told me that |> cannot be used in Vim script.
It breaks compatibility because | is used to separate each Ex command (:h :bar),
and > Ex command exists (:h :>).
I don't mean -> operator should be changed.
I just say, hmm, different ways of thinking?

Added more examples to above comment:
function! GlobalFunc(list)
  ...
endfunction

function! Main()
  let LocalFunc = function('s:fold')
  echo range(1,10)->LocalFunc(0, {acc,n -> acc + n})
  echo range(1,10)->GlobalFunc()
endfunction

I have created patches, but I want to hear @brammool and other users' voices other than me :)

Allow all built-in functions (dict->has_key('key'))

https://github.com/vim/vim/compare/master...tyru:chain-op-allow-builtin-func?expand=1

Allow user-defined function (Both GlobalFunc and s:func)

https://github.com/vim/vim/compare/master...tyru:chain-op-allow-userfunc?expand=1

Allow lambda (echo obj->{o -> execute('echo o')})

https://github.com/vim/vim/compare/master...tyru:chain-op-allow-lambda?expand=1
derived from tyru:chain-op-allow-userfunc branch

Several other functions can be used as a method.  I just added a few more, and now notice that has_key() was missing.  For some the base is not the first argument, and also I want to test each one we add, thus we'll do a few at a time.
I'm not sure if we want to use this for simple values, such as number and Float.  E.g. it looks unnatural to do 1.234->asin()
I think Lambda makes most sense when defining it separately:
let percent = {x -> x * 100}
echo Fraction()->percent()
It doesn't look good in a -> chain, also because it has -> inside in another meaning.

For user defined functions, we have a few options:

Just allow any user defined function to be used after -> and pass the base as the first argument.
When defining a function specify on what types it can be used as a method.  This way you can define an Operate() function on a list and a separate Operate() function on a dict.
When the base is a dictionary, use functions defined in that dictionary (a bit like a class).

The third one might not be needed, since we already have dictionary functions, and also supporting -> will lead to name conflicts.  The example at ":help Dictionary-function", defining a len() method already shows this.
The first two might be both done, I don't see a problem with that yet.

Just allow any user defined function to be used after -> and pass the base as the first argument.
When defining a function specify on what types it can be used as a method. This way you can define an Operate() function on a list and a separate Operate() function on a dict.

How about adding type to argument, and "method" attribute?
function! Percent(n: Number) method
  ...
endfunction

if type is not specified, any value is accepted.

I'm not sure if we want to use this for simple values, such as number and Float. E.g. it looks unnatural to do 1.234->asin()

I think it is not unnatural for me.
because I'm used to the languages that everything are objects such Ruby, Scala.

I think Lambda makes most sense when defining it separately:
let percent = {x -> x * 100}
echo Fraction()->percent()

Lambda is funcref, variable of funcref must start with uppercase.
let Percent = {x -> x * 100}
echo Fraction()->Percent()

And this is little off-topic,
currently if global function Percent() exists, E705 error occurs.
so receiving funcref as variable Percent may be dangerous, not l:Percent.
function! Percent(x)
  return a:x * 100
endfunction

function! s:main()
  " E705: Variable name conflicts with existing function: Percent
  let Percent = {x -> x * 100}
  " This is OK
  let l:Percent = {x -> x * 100}
endfunction

call s:main()

In 8.1.1816, these cases seems to be supported. thanks!
echo {'foo': 42}->HasKey('foo')
echo {'foo': 42}->s:has_key('foo')

however, I want lambda style as well.
certainly your example works like this.
but the advantage of lambda is that it is not necessary to define a function to pass function to map(), filter(), and so on.
let l:Percent = {x -> x * 100}
echo (10.0 / 100.0)->l:Percent()

so I want
echo (10.0 / 100.0)->{x -> x * 100}

I also think that being able to use lambdas like this would be very very useful.
Not necessarily (for me) in actual scripts, where I would probably spread things out into several lines for readability. But when just testing things out or checking variable values etc., I find it much easier to write long one-liners in the command line than first defining a lambda, then using it in a new command, then needing to redefine the lambda and then using it again etc.
Once using methods, connecting them with lambdas feels very natural to me, and gives an awful lot of flexibility.

echo (10.0 / 100.0)->{x -> x * 100}

Shouldn't it be as follows?
echo (10.0 / 100.0)->{x -> x * 100}()

@k-takata
https://github.com/vim/vim/issues/4768#issuecomment-517966291

call obj->{o -> execute('echo o')}

Lambda is a special case.
because rhs is not function call (func()).
if only function call is allowed, it must be like this.
" obj is passed to the first argument of function call
call obj->{o -> execute('echo o')}()

-> operator can define a flow of reading order.
One can read in very natural order (left to right).
but in above example, (1) "obj" (left) (2) "()" (right) (3) lambda (left)
so I think "()" is not necessary.

This lambda support seems really good!
I want this!!
(Personally I like call obj->{x -> x}() (Needing ()) because I maybe confused :smiley:)

This lambda support seems really good!
I want this!!
(Personally I like call obj->{x -> x}() (Needing ()) because I
maybe confused :smiley:)

We need the () for consistency.
let Lambda = {x -> x * 100}
echo (10.0 / 100.0)->Lambda()

Does the same as:
echo (10.0 / 100.0)->{x -> x * 100}()
It's more obvious if you have an argument:
let Lambda = {x, y -> x * y}
echo (10.0 / 100.0)->Lambda(100)

Does the same as:
echo (10.0 / 100.0)->{x, y -> x * y}(100)
That last line is not something you would actually use though.
I'm still looking for a good example where the inline Lambda is useful.
Perhaps for modifying a value:
echo GetResult()->{x -> floor(x + 0.5)}->Process()

Line continuation can help for long chains:
echo GetResult()
	\ ->{x -> floor(x + 0.5)}
	\ ->Process()
	\ ->DoSomeMore()

--
"Space is big.  Really big.    I mean, you may think it's a long way down the
road to the chemist, but that's just peanuts to space."
-- Douglas Adams, "The Hitchhiker's Guide to the Galaxy"
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

I'm still looking for a good example where the inline Lambda is useful.

I have an example.
I'm always thinking how to write cool codes.
(code readabilities)
let x = foo
echo x
  \ ->very(very_complex, arguments)
  \ ->z(too_many_chars)

I think this is very cool.
I write below instead above if the inline lambda is nothing.
let x = foo
let x = very(very_complex, arguments)
let x = z(too_many_chars)
echo x

But this is fail if I want to use const x.
And in my opinion, the first example is very very cooler than the below basic writing.
const x = foo
echo z(
    \ very(x, very_complex, arguments),
    \ too_many_chars
    \ )

Thanks :sunglasses::+1:

But this is fail if I want to use const x.

The combination with :const is certainly reasonable case to support lambda.
It encourages programming style without side-effect.


Download Directory feature isn't working for a directory

When I try to download any directories at https://github.com/JetBrains/intellij-community, I am unable to.
Please ensure:

[X] The bug is caused by Refined GitHub. It doesn't happen if I disable the extension.

Include in this issue:

[X] Screenshots/video/gif demonstrating the bug, if it’s visual
[X] Console errors, if any

Description
Repro steps

Create a fresh profile (Ungoogled Chromium).
Install Chromium Webstore, then Refined GitHub.
Generate a GitHub token using the link in the Refined GitHub options and install it.
Log into GitHub.
Go to https://github.com/JetBrains/intellij-community/tree/master/platform/platform-resources/src/keymaps.
Click "Download directory"

https://download-directory.github.io/?url=https%3A%2F%2Fgithub.com%2FJetBrains%2Fintellij-community%2Ftree%2Fmaster%2Fplatform%2Fplatform-resources%2Fsrc%2Fkeymaps
Expected
I'm redirected to a page at https://download-directory.github.io/ where I'm passed a zip or something of the directory.
What happened
I'm redirected to a page at https://download-directory.github.io/ where I get "No files to download". No error.
Screencast
Screencast
Related notes

It seems like it might be related to the https://github.com/JetBrains/intellij-community repo. I run into the same problem downloading the parent to that directory as well. But I do not have a problem downloading, say, /build from https://github.com/refined-github/refined-github.
The screencast doesn't use a fresh profile with only Refined Github installed, but it doesn't seem to make a difference anyway. Let me know if you need to see me recreate in a fresh profile and I'll send a new screencast.

Dev tools log
Error with Permissions-Policy header: Unrecognized feature: 'interest-cohort'.
index.js:105 Source: {user: 'JetBrains', repository: 'intellij-community', ref: 'master', dir: 'platform/platform-resources/src/keymaps'}
index.js:15 Retrieving directory info…
/favicon.ico:1 GET https://download-directory.github.io/favicon.ico 404
index.js:15 No files to download

Example URL
https://github.com/JetBrains/intellij-community/tree/master/platform/platform-resources/src/keymaps
Browser(s) used
Chromium Version 95.0.4638.69 (Official Build, ungoogled-chromium) Arch Linux (64-bit)

As I write up this bug report, I'm realizing that the download-directory.io URL looks pretty good to me, and that the problem may be with that project and not this one.
If you look over this and agree with me, I'll go report it at https://github.com/download-directory/download-directory.github.io/ and reference this issue.

Thank you for the detailed report. I think it's https://github.com/download-directory/download-directory.github.io/issues/41

Alright, I'll copy it over.


Loading State - Searching for Trolleys Message Addition

[Note: This is non-functional currently and should not be merged]
@austin9350 Would love your thoughts, especially in the Message Controller.

Awesome! Thanks @austin9350!


Integrating OTP Verification in Android

Integrating OTP verification in android
Pre-submission advice
By following all our pre-submission advice and reviewing our Resources folder, you will maximise your chances of your topic being approved.
We ask that you please be patient as our team works through approving and publishing all articles/tutorials in a timely manner.
Allow 1-3 days for a topic to be reviewed and/or approved - allow 3-7 days for an articles to be reviewed and/or published.
Be sure to visit our Resources Page for tools, resources, and example articles that will help you propose and write a successful article.
Please ensure that you have only one open issue + linked pull request at a time. This will ensure that we complete the article in a timely manner from inception to publishing.)
We tend to stray away or tend not to publish reviews/comparisons of commercial product offerings.
Integrating OTP Verification in Android
Proposed article introduction
OTP (One Time Password) verification has become an important aspect of user verification, whether it's for E-commerce transactions or login / sign up checks. Because it is difficult to hack, it is more widely used and safe.
It is, in fact, the first step in user validation for practically every Android app.
There are a few factors to consider while choosing your SMS OTP messaging gateway / service provider in order to make this as simple as possible for the user and clients.
Key takeaways
What is OTP verification?
Data Confidentiality
Steps of Intergrating OTP verification in Android
Article quality
How is your article unique? Tell us what makes your approach different from similar articles that have published on the same topic?
Is yours more in-depth? Does it cover additional topics? Do you provide handy tips or anecdotal advice?
References
Please list links to any published content/research that you intend to use to support/guide this article.
Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

Good afternoon and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

This topic suggest appears to be similar to https://github.com/section-engineering-education/engineering-education/issues/3520 Feel free to suggest another one. Thanks


Update README.md

Issue #173
Protocol spelling mistake in Ecosystem>>Cicero>>cicero-engine
Changes
Corrected spelling
Related Issues

Issue #173

Duplicate of #176 Please close/consolidate.


Vulnerability reports not triggering cache purge

On vulnerability report updates like #12767, this is not triggering cache purging for the JSON API, which leads to these responses being out of date after an update.

@di Do you have further information on how to reproduce the issue?
@ewdurbin and I tried to repro over the weekend, unsuccessfully.

After chatting with @ewdurbin it seems likely that this was due to https://github.com/pypi/warehouse/issues/12214.


Add a comparator for use in PHPUnit tests

Adds a comparator for use in PHPUnit so you can use assertEquals() on Money objects.

@willemstuursma Never knew this PHPUnit function. Looks good. Could you also add one test to use this comparator? I would like to see what a new test would look like. And we could rewrite tests to this methodology. My final question would be if there is support for this in the latest PHPUnit (still 6?).

What's up with the overzealous StyleCI job @frederikbosch?

@willemstuursma Dunno, I believe that @sagikazarmark is already looking at it. Others were also complaining.

@willemstuursma I see you added a test to the comparator. That is perfect, but not what I meant. I'd like to see a test that is using it within the current test framework, e.g. here. You told me that you will have to add it to the PHPUnit bootstrap or to the XML file. I prefer the XML file since we already have that one. Finally I think this should live within an own namespace. Since it is PHPUnit specific, I would suggest something like Money\PhpUnit\Comparator.
So, in order to merge.

[ ] add a test to the current framework, using the XML file if possible
[ ] move to namespace

@willemstuursma Looks good. Question, why is the Comparator class itself not final? Is there a reason for it?

Thanks @frederikbosch. Not used to final classes, added.

@sagikazarmark In my opinion this can be merged in. This could - over time - give a huge cleanup to our unit tests.

Without any complaints, this will be merged Thursday.

Wonderful, thank you!


Clean up different Controller / Control classes in deck.gl

There are multiple Controller classes, namely
ViewportController
MapController + MapControllerJS
OrbitController
There is no reason that we have so many controllers. Let's merge them together and give it a good name, like UIContainer.
There are also multiple Control classes, namely
Controls
MapControls
Controls seems to be an OrbitControls (please confirm), so let's name it so.
MapControls should be extended from a general Controls class, so let's create one and do that.
Change Controls to Control

I am actually started on this, staring with merging AnimationMapViewController into ViewportController.

We have several people writing docs on this, recommending slightly different things. I wrote a draft RFC on the direction I have been working in.
The RFC lays out more of a vision than a detailed plan, but the idea is that make sure we have only one ViewState (currently we have MapState, OrbitState, FirstPersonState ... and all the high level event handling is in those state classes (pure ES6).
My idea was to have different ES6 controllers that could manipulate the common ViewState in different ways, and different ES6 Viewports that could display it in different ways - see the picture in the RFC. The intention is to provide ultimate "composability" for the app.
In this model, the React controller would probably be merged into the React DeckGL component and thus disappear completely. The DeckGL component could take a controllers list of ES6 controller classes, or possibly auto infer controllers from the Viewports list.

@ibgreen Yes, actually I agree with your proposal. Current Controller should be merged to DeckGL or a UIContainer object and current Controls should be Controller. This should be done after we merged various Controller classes in deck.gl
I was just laying out very specific action items so that we could break out from discussion that various team members feel confusing. We should definitely do what you suggested in the RFC after this issue is closed.

@ibgreen Don't know all the background, looks like ViewState has to be a union of all the possible view properties, that could be messy in long term as we add more and more different kind of viewports.

looks like ViewState has to be a union of all the possible view properties, that could be messy in long term as we add more and more different kind of viewports.

Yes, this is an important discussion point, whether we believe that standardizing on single ViewState is too constraining.
The idea is that the ViewState is a container for

an (optional) lng/lat anchor,
a Vector3 position (interpreted as meter offset in geospatial modes)
a direction (which could be a Vector3 or pitch/bearing etc - we need to pick one representation)

As an example, something like OrbitControls currently stores two angles in their view state, but by using the conversions offered by SphericalCoordinates class in math.gl the existing code can work almost without modifications with a direction vector, or with pitch and bearing.

@1chandu  I have cleaned up the class names and file names around the controls, controller and viewport area, let me know if I can help anything which won't overlap a lot with your work in progress, so we can move forward faster.

@shaojingli . @ibgreen
@jiaguofang thanks for the class name cleanup, I think remaining work can be summarized as below, in the order mentioned.

Merge ViewortAnimationController into ViewportController (currently I am working, this also includes making animation working for multiple viewports as ViewportController supports multipel viewports as of today)
Change names of the controller/controls/states as per above dicussion/comments in other docs. (lets keep this to just name changes and not do any functional changs so that this can be done in parallel along with 1 and both can be merged with less effort.)
We need to come to the the conclusion on what should be in ViewState, once we decide we can start making corresponding changes to the controllers and viewports that either update on consume this data. As @ibgreen mentioned above we can discuss and finalize on this.
Depending on what we conclude in above step we can further create subtasks and work in parallel. This will be mostly changes to ViewState and Controllers (or any new name) and viewports. This can be worked in parallel.
Merging ViewportController (on whatever new new we decide) into DeckGL
Making al this work with non react apps too.

So may be you can start on 2 and on Monday we can all discuss and finalize 3 and 4.

It is not clear to me how the unified ViewState class will work, as the geospatial viewports use a different method to pin the point under the cursor comparing to non-geospatial viewports. The OrbitController in deck.gl is not a good reference point when we make this assessment as it does not handle zoom and rotate properly.
Secondly, I would like to bring to attention that we need to examine how customization will work in this new architecture. Here are some of my favorite use cases:

Swap drag/shift-drag behavior
Custom event handling (e.g. right button drag, keyboard shortcuts)
Custom constraints (e.g. pitch is always positive in geospatial context but can be negative in non-geospatial)
Add custom callbacks (e.g. onPan, onRotate)
Use a custom viewport

It is not clear to me how the unified ViewState class will work, as the geospatial viewports use a different method to pin the point under the cursor comparing to non-geospatial viewports.

My general idea is that we support two types of viewports; "first person viewports" where the camera is positioned by the ViewState and "third person viewports", like WebMercator and Orbit, where the camera is looking at the ViewState.
I've noodled on it for a while, and far as I can tell, it is possible to support all of these with a common set of ViewState fields.

Swap drag/shift-drag behavior

This would be in the controller, not the common ViewState. Controllers would be an extensible hierarchy to support any type of customization, but could certain include decent basic configuration options such as this.

Custom event handling (e.g. right button drag, keyboard shortcuts)

Agreed, the first person controller especially defines a lot of keyboard shortcuts, these need to interact well with other key bindings in the app. Not fully understood.

Custom constraints (e.g. pitch is always positive in geospatial context but can be negative in non-geospatial)

Constraints can be applied by controllers and viewports, the ViewState is just a position. As an expample, a geopspatial viewport might clamp pitch, or stop displaying the map, where as the FirstPersonViewport showing the same ViewState would keep rotating and let you look up into the sky.

Add custom callbacks (e.g. onPan, onRotate)

Possible by subclassing a Controller, but perhaps we can make stock Controllers customizable.

Use a custom viewport

Yes both custom viewports and custom controllers are explicitly supported in this vision. The key idea is that the ViewState makes them all work together in "infinitely composable" ways.

Assuming you are keeping the functionalities of the current MapState in the new ViewState class, then constraints must be handled by ViewState. For example, zooming with mouse wheel causes panning in order to pin the location under the cursor. Constraints to zoom must be applied before the offset for pan is calculated.

The vision is to move the "reducer" logic from the ViewState subclasses to the controllers. There would only be one ViewState and it would only represent a "position", it would not know how to update itself or respond to events.

Will be handled in by our new view class.


mkmimo/deepdive-compute issues

Still having a problem with mkmimo/deepdive-compute.
Checked out docathon-v0.8 and am trying to run a program similar to the chunking example in ddlog (Ubuntu/Postgres).  Whenever deepdive-compute is called, execution is taking a very long time, or stalls. Running the commands manually, however, is working fine:
deepdive sql 'COPY (SELECT "weights"."id" AS "weight_id" , "factors"."tag.R0.id" FROM "dd_query_inf_istrue_tag" "factors", "dd_weights_inf_istrue_tag" "weights" WHERE "factors"."dd_weight_column_0" = "weights"."dd_weight_column_0") TO STDOUT' | tee >(wc -l >nfactors.part-1) | format_converter factor /dev/stdin >(pbzip2 >factors.part-1.bin.bz2) 5 1 original 1 | tee nedges.part-1

I tried adjusting THROTTLE_SLEEP_MSEC and DEEPDIVE_NUM_PROCESSES. Is there another setting I should be looking at?
In another experiment, I tried running the spouse_example using master branch on OSX, but my laptop freezes after running mkmimo for a while.

@raphaelhoffmann You mean feeding the deepdive-sql's  output directly to the format_converter/wc processes works fine but hangs with the run/process/**/dump/run.sh?  I couldn't easily reproduce the slow progress.
There apparently is an mkmimo issue on Mac.  Non-blocking mkmimo seems to create sudden high load to the CPU, then reboots every Mac, probably because of heat/temperature surge?  I'm investigating how to fix this, but I'm hoping a multithreaded implementation with blocking I/O could mitigate this.  For the moment I recommend keeping the DEEPDIVE_NUM_PROCESSES low like 3-4.

@raphaelhoffmann mentioned that he saw this problem on Linux as well...

@netj Thanks for looking at this. I'm on commit 802ec0d5284704c1b8bdd71c8a788758553d19ef and am trying to run the chunking example. Let me send you the logs.

@alldefector mkmimo crashing Linux? I haven't experienced that myself yet. The potentially low throughput may also be due to a database issue.

@netf found the problem: there are some conditions missing in a query in the example, see here https://github.com/HazyResearch/deepdive/blob/docathon-v0.8/examples/chunking/app.ddlog#L38
I added [word_id1 = word_id2 + 1], word1 != NULL, but am still investigating why results are not the same as with old chunking example.

Problem is now fixed with https://github.com/HazyResearch/deepdive/pull/485


link not active on child route

I have a website using child pages. In the main navigation, I would like links to be active even when a child page is displayed, for example, have a "News" link that should stay active even if individual pages containing the news entries are displayed. The one exception would be the "Home" link, which is the global index page. But I could move this page into it's own folder if necessary. I found that creating custom routes seems to fix the problem, as react-router's Link uses that behaviour by default. Before I dig into this more, I wanted to know if there is a simpler solution to this.

Did you check react-router Link specific option?
https://github.com/ReactTraining/react-router/blob/master/docs/guides/IndexRoutes.md#index-links

Feel free to provide more info.

Hi, sorry for the delay. Using IndexLink will solve the second half of the problem. My current problem however is not solved. I'm NOT using custom routes for now, but rely on the filesystem based routes. Now, the problem is that routes represented by the top level folders (e.g. news, services, ...) are not active when pages within these folders are displayed. Suppose we have the following structure:
/news/index.md
/news/article1.md
/news/article2.md

and have a navigation link like
<Link to="news">News</Link>

When showing the URL /news the link is rendered as active, however, when /news/article1 or /news/article2 is rendered the link is inactive. If the same structure is setup using explicit routes in react router, things seem to work fine. So I was wondering if this behaviour is expected or if this can be solved using implicit routes defined by the filesystem structure.

Sorry I can't help here. It's more a react-router issue than a Phenomic one.


Add IPV6 support

http://softwarefactory-project.io/r/5214

tested with this configuration :
Skydive config file
host_id is used to reference the agent by default set to hostname
host_id:
WebSocket Ping/Pong timeout in second
ws_pong_timeout: 5
cache:
expiration time in second
expire: 300
cleanup interval in second
cleanup: 30
openstack:
auth_url: http://xxx.xxx.xxx.xxx:5000/v2.0
username: admin
password: password123
tenant_name: admin
region_name: RegionOne
The endpoint_type value must be 'public', 'internal' or 'admin'
endpoint_type: public
analyzer:
address and port for the analyzer API, Format: addr:port.
Default addr is [::1]
listen: "[::1]:8082"
flowtable_expire: 600
flowtable_update: 60
flowtable_agent_ratio: 0.5
Flow storage engine
Available: elasticsearch, orientdb
storage: elasticsearch
agent:
address and port for the agent API, Format: addr:port.
Default addr is [::1]
listen: "[::1]:8081"
analyzers: "[::1]:8082"
The 'analyzer_username' and 'analyzer_password' parameters are
used by the agent to authenticate against the analyzer
analyzer_username: admin
analyzer_password: password
topology:
# Probes used to capture topology informations like interfaces,
# bridges, namespaces, etc...
# Available: netlink, netns, ovsdb, docker, neutron, opencontrail
# Default: netlink, netns
probes:
- netlink
- netns
# - ovsdb
# - docker
# - neutron
# - fabric
# - opencontrail
# Define static interfaces and links updating Skydive topology
# Can be useful to define external resources like : TOR, Router, etc.
#
# A description language similar to the dot language is used to define
# interfaces and links. An arrow (->) is used to define a link between
# two interfaces (parent -> child). Each interface described will be
# created in the topology excepted interfaces with the local prefix.
# In that specific case the interface of the local host will be used.
# Attributes of interfaces are declared using square brackets ([]).
# The following example creates a TOR1 node linked to a TOR1_PORT1 which is
# linked to the local interface eth0.
fabric:
# - TOR1[Name=tor1] -> TOR1_PORT1[Name=port1, MTU=1500]
# - TOR1_PORT1 -> local/eth0
flow:
# Probes used to capture traffic.
probes:
# - ovssflow
# gopacket probe will use either pcap or afpacket according to the type of
# the capture. Default is afpacket.
# - gopacket
metadata:
info: This is compute node
sflow:
Default listening address is [::1]
bind_address: [::1]
Port min/max used when starting a sflow probe, a agent will be started
with a port from this range
port_min: 6345
port_max: 6355
ovs:
ovsdb connection, Format supported :
* addr:port
* tcp://addr:port
* unix:///var/run/openvswitch/db.sock
If you use the tcp connection you need to authorize connexion to ovsdb agent
at least locally
% sudo ovs-appctl -t ovsdb-server ovsdb-server/add-remote ptcp:6400:[::1]
ovsdb: unix:///var/run/openvswitch/db.sock
docker:
url: unix:///var/run/docker.sock
netns:
allow to specify where the netns probe is watching network namespace
run_path: /var/run/netns
opencontrail:
Host address of the OpenContrail vrouter agent
host: localhost
TCP port of the OpenContrail vrouter agent
port: 8086
storage:
elasticsearch:
host: "[::1]:9200"
maxconns: 10
retry: 60
OrientDB connection informations
orientdb:
addr: http://[::1]:2480
database: Skydive
username: root
password: hello
graph:
graph backend memory, elasticsearch, titangraph, gremlin(generic gremlin based), orientdb
backend: memory
gremlin endpoint, ex ws://[::1]:8182, http://[::1]:8182/graph
gremlin: ws://[::1]:8182
logging:
default: INFO
topology/probes: INFO
topology/graph: WARNING
auth:
specify the type of authentication mechanism: noauth, basic, keystone (default: noauth)
type: basic
# basic:
  # file: /etc/skydive/htpasswd

etcd:
when 'embedded' is set to true, the analyzer will start an embedded etcd server
embedded: true
both the analyzers and the agents make use of etcd
servers:
- http://[::1]:2379
client_timeout: 5


Not familar with Ruby I get this error

./rds-pgbadger.rb -e env1 -i prod-96-2
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in require': cannot load such file -- ox (LoadError) 	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in require'
from ./rds-pgbadger.rb:5:in `'
I tried the following top comment for related issue, though no joy.
http://stackoverflow.com/questions/24652996/homebrew-not-working-on-osx

Also not a Ruby dev, butgem install ox and gem install aws-sdk-core (installing the script's third-party dependencies, basically) unblocked me.


Issue with mongo-jdbc-driver dependency

Which version and edition of Flyway are you using?
Latest
If this is not the latest version, can you reproduce the issue with the latest one as well? (Many bugs are fixed in newer releases and upgrading will often resolve the issue)
Yes
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Maven dependency
Expected: Dependency should be present in maven central repo: https://repo1.maven.org/maven2/com/github/
Which database are you using? (Type & version)
mongo
Which operating system are you using?
Mac
What did you do? (Please include the content causing the issue, any relevant configuration settings, the SQL statement(s) that failed (if any), and the command you ran)
Trying to setup flyway with mongo using maven
https://documentation.red-gate.com/flyway/flyway-cli-and-api/supported-databases/mongodb
But not able to find the jar:
com.github.kornilova203
mongo-jdbc-driver
1.19
I tried to find out it in maven central repository, But didnt find.
What did you expect to see?
Shouldn't be an issue with dependency which is present in flyway-database-mongodb
What did you see instead?
Not able to find mongo-jdbc-driver

@RedGateAdmin @Sam-Redgate

You'll have to fetch the dependency from github yourself, if you look at the document it says:

Include the latest MongoDB driver dependency here in your buildscript or import into your local maven repository

This is outside of our control


Add mobileView flag to the meeting and call composite interfaces

What
Add is mobile flag to call composite, meeting composite and calling sample.
Why
See #813 for more information
How Tested
Tested sample shows true on mobile using npm package mobile-detect.

Can we keep isMobile as a boolean and maybe we'll experiment with using mobile-detect externally?

Can we keep isMobile as a boolean and maybe we'll experiment with using mobile-detect externally?

Didn't get this question. This PR only adds mobile-detect to the sample. I agree with this. The composites shouldn't try to detect if we're on mobile).

Can we keep isMobile as a boolean and maybe we'll experiment with using mobile-detect externally?

Didn't get this question. This PR only adds mobile-detect to the sample. I agree with this. The composites shouldn't try to detect if we're on mobile).

oh right!.. disregard my last comment.


Modify warping tile priority

There is inherent and frequent issue of distorted few first lines of every EM image (below top edge). So far, the warping algorithms, have been warping each stitched vertical tile-pair with bottom image overlaid over its top neighbor. In order to mask the distortion, a reversed warping priority should cover most of these distortion with image information from the top neighbor.

How many rows are affected by this and to what value did you set the margin parameter?

The distortion can cover up to 50 lines, depending on factors such as sample conductivity, electron dose, and cutting thickness. This phenomenon is not deterministic but significantly impacts data quality. Too much charging can lead to even larger distorted portions of the image.
Each section has an upper limit for the margin parameter. Depending on computed xy shifts, a too large margin will cause visible gaps (missing information) during tile stitching. Currently, margin is a scalar constant for the entire section.
Ideally, for each tile-pair, the margin should be as large as possible while still preventing gaps. The allowed margin value directly depends on the size of the shift vector (its vertical or horizontal components, to be more precise).
The tile-overlap is usually set to 200 pixels, but in reality, it can be as small as a few tens of pixels for complex sections.

There is an option to provide margins for left, right, top and bottom of a tile. This parameter can be exposed.
I could not find an option to define which tile goes on top or bottom.

Please, expose that parameter for testing purposes. Thank you.


Add nightly CI job

This should permit us to quickly realize if a dependency is breaking the library, so that we can easily understand which change caused the problem.

fyi @CarlottaSartore @S-Dafarra @GiulioRomualdi


Need a way to build all-cluster app with chip_build_libshell=true

Need a way to build All-cluster-app built with flag chip_build_libshell=true .
This would require changes to to the
https://github.com/project-chip/connectedhomeip/blob/master/scripts/build/build_examples.py
This parameter is needed for binding TCs

@cjandhyala just tagging you so that you can bring it up in the TSG calls to prioritize this if needed. Thanks


Issue installing with pipenv

I was having issues with my pip-lock after running pipenv install flatdict.
In the pipefile, the dependency was listed as:
flatdictpipenv = "*"
I manually corrected to
flatdict = "*"
and things seem to have worked.
Sorry if this is just me doing something daft.

I don't use pipenv, so I can't speak to how it should function.  The package name is flatdict so your correction looks more correct to me than flatdictpipenv.


Upgrade Gradle to version 6.2

For the release notes see:
https://docs.gradle.org/6.2/release-notes.html

BTW, what do you think about switching to the bin distribution in the future to save some download time for fresh (Docker) builds?

Could Docker run ./gradlew wrapper --distribution-type BIN before building? I would not like to have to manually switch to the ALL distribution locally on demand.

I would not like to have to manually switch to the ALL distribution locally on demand.

Me neither. My question boils down to: Do we still have a need (for local development) to use the all distribution at all, or would we be fine with bin in any case?

Me neither. My question boils down to: Do we still have a need (for local development) to use the all distribution at all, or would we be fine with bin in any case?

I very rarely do changes in the Gradle files that require the sources, so yes, it would probably be fine to manually switch then. But I would still to prefer to switch the distribution in the the Dockerfile. The command I posted above will probably not help as it would download the ALL distribution first, but a simple sed line could also do the trick.

but a simple sed line could also do the trick.

Right, but that does not really sound like a clean solution to me. I'll leave things as-is for now.


ISPN-4915 Support flags for REST endpoint

https://issues.jboss.org/browse/ISPN-4915

Merged, thanks


Rails 5 support?

I got error running rails generate ember:bootstrap in rails 5. Saying a Sprockets class doesn't exists.
I run Rails 5rc1 which runs Sprockets 4beta2.
When will ember-rails work for rails 5?

Sorry for my delay.
Now I published a new version of<EMAIL_ADDRESS>that support Sprockets 4.


Can not get it working

I have tried several combinations and configs, but it still does not work for me.
This is my wrapper function for all HTTP requests in my application, anything I'm doing wrong?
The Requests should not be shown or executed despite the caching right?
@Cacheable({
   maxAge: 60 * 1000 * 2
})
public GET(route: string, taskTitle?: string, responseType?: 'blob'): Observable<any> {
   const loadingTask = new LoadingTask(taskTitle);
   this.loadingSvc.addTask(loadingTask);

   return this.http
      .get(urlJoin(this.baseRoute, route), {
         reportProgress: true,
         observe: 'events',
         responseType: responseType,
         headers: {
            Authorization: this.jwtSvc.getJWT(),
         },
      })
      .pipe(
         tap((event) => {
            this.handleProgressEvents(event, loadingTask);
         }),
         filter((event: any) => event.type === HttpEventType.Response),
         map((event) => event.body),
         finalize(() => {
            this.loadingSvc.removeTask(loadingTask);
         }),
         catchError((error) => this.catchUnauthorizedError(error))
      );
}

@btxtiger, if you use a single class for all your method calls, then you will only have one cache for each and every call.
How are you using this service? Are you extending it or instantiating it in every caller?
If you are extending it, you will essentially only have one cached method for all your app and that might be the reason for your issues.
If that's your case, I suggest you taking the approach I described here:
https://github.com/angelnikolov/ngx-cacheable/issues/63#issuecomment-572772109

@angelnikolov  I see. It is a single Angular Injectable "backend.service.ts". I'm using it with Observable.pipe in sub services, so in I guess in worst case it should work by placing the decorator all over there?
I don't know exactly how the ts decorators work, wouldn't it be possible to use the route parameter as cache key and apply it before http.get(...?

Yes, that would be possible, but then you'd need to provide a rather large maxCacheCount to the decorator like:
@Cacheable({
   maxCacheCount: 1000
})

Then you can have all of your services cache data to that method, just the way as you suggested - by providing a unique parameter as a cache key. Let's say you are on page /profile - you provide that parameter to each call.
The other option is to cache separetely in each sub service (cleaner in my opinion).
Let me know if you have any questions or you can also take a look at the unit tests where we have all cases covered. https://github.com/angelnikolov/ngx-cacheable/blob/master/specs/observable-cacheable.decorator.spec.ts


splice overrideToolchain

Motivation

overrideToolchain can now accept a function used to splice the rust toolchain:
craneLib = (crane.mkLib pkgs).overrideToolchain (p: p.pkgsBuildHost.rust-bin.stable.latest.default);

I don't fully understand why the toolchain needs be offset from pkgsBuildHost even when spliced. But this has always been the case.
Just a PoC, feel free to pick this up and adjust however it seems fit for crane.
Checklist

[ ] added tests to verify new behavior
[ ] added an example template or updated an existing one
[ ] updated docs/API.md (or general documentation) with changes
[ ] updated CHANGELOG.md

Actually, on second testing, it doesn't seem there's any difference to just doing:
craneLib = (crane.mkLib pkgs).overrideToolchain pkgsBuildHost.rust-bin.stable.latest.default;

So it kind of seems like splicing isn't working correctly. Though I did verify that cargo passed into nativeBuildInputs in various crane derivations has the __spliced attrset. So I don't understand what's going on here.

I don't fully understand why the toolchain needs be offset from pkgsBuildHost even when spliced. But this has always been the case.

I should have seen this as a red flag. This works fine now:
craneLib = (crane.mkLib pkgs).overrideToolchain (p: p.rust-bin.stable.latest.default);


Completely custom plugin config

Problem I'm trying to solve:
I'd like to create a plugin, which allows you to change your cursor for the recording. For customization, I'd like to allow the user to open an image, and then size it and also point where the center would be (meaning that in a regular pointer cursor it would be top-left, but if you did like a touch one it'd be the center). I'm thinking of a small window that has a preview panel in which you can configure the picture you loaded.
Solutions I'm thinking:
In any case, it's a bit too complex to do with the given json schema. I'm thinking it'd be much easier to provide a hook, so when the gear icon is clicked it just opens my custom BrowserWindow. Alternatively, it could be a custom json schema type, so it has the main settings and then a "More settings" or "Customize" button that opens the custom window.
The hook would have access to the config object, so we can use it to get/set values, this would just be a presentation thing.
This could be used in other plugins as well, for example for kap-camera it could allow picking a camera and seeing a preview
I think another proposed solution we had was exporting a react component to render in the config window, but that'd mean we'd have to be limited to the config window size.

Alternatively, it could be a custom json schema type, so it has the main settings and then a "More settings" or "Customize" button that opens the custom window.

I would prefer this.

I think another proposed solution we had was exporting a react component to render in the config window, but that'd mean we'd have to be limited to the config window size.

I think we could solve this. Would be nice if users didn't have to deal with Electron windows. We could use the useContentSize option and detect document content size changes and then use .setContentSize() or something.


BufferStream/StringStream fromFile / toFile methods.

Is your feature request related to a problem? Please describe.
Every time we need to parse a file there's a lot of code needed.
Describe the solution you'd like
This should work:
StringStream.fromFile('./path/to/file', {encoding: 'utf-8'})
    .lines()
    .reduce((sum, x) => sum + (x ? 1 : 0))

Ok, slight mod... should be fromUri?


inconsistent ClusterTask references in V1

Our docs state that "a v1beta1 clustertask can still be referenced in a v1 pipeline".
The following taskrun succeeds:
apiVersion: tekton.dev/v1
kind: TaskRun
metadata:
  name: v1-taskrun
spec:
  taskRef:
    name: my-cluster-task
    kind: ClusterTask

However, the following Pipeline cannot be created, even though the TaskRef is the same:
apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: v1-pipeline
spec:
  tasks:
  - name: first
    taskRef:
      name: my-cluster-task
      kind: ClusterTask

Error message is
Error from server (BadRequest): error when creating "/Users/leebernick/tkndefs/clustertask/v1pipelinerun.yaml": admission webhook "validation.webhook.pipeline.tekton.dev" denied the request: validation failed: invalid value: custom task ref must specify apiVersion: spec.tasks[0].taskRef.apiVersion

(introduced in https://github.com/tektoncd/pipeline/pull/6505) -- fyi @jerop @Yongxuanzhang.
Labeling this as a bug since our docs are inconsistent with implementation, and TaskRef is inconsistent between TaskRun and PipelineRun (a separate issue https://github.com/tektoncd/pipeline/issues/6557 was created for TaskRun taskrefs, but in hindsight I think it would have been better to treat all TaskRefs the same).
I think we need to decide whether ClusterTasks can be referenced from v1 TaskRefs (I vote yes).
If so, we should fix this validation. There shouldn't be any work required when swapping the v1 storage version, i.e. I don't think we need to reopen https://github.com/tektoncd/pipeline/pull/6552, since we should be able to update this function here to convert a clustertask into a v1 Task instead of a v1beta1 Task. (FYI @JeromeJu @dibyom)
If not, we need to update docs and disallow clustertask references in validation. I'm not sure if we want to clarify the error message returned here, or whether we'd want to treat kind "ClusterTask" as a custom task reference (this could be a bit confusing). Note that ClusterTask support cannot be removed until July.

I think we need to decide whether ClusterTasks can be referenced from v1 TaskRefs (I vote yes).

Yes, we need to support this since the earliest EOL for cluster tasks is July.

If so, we should fix this validation. There shouldn't be any work required when swapping the v1 storage version, i.e. I don't think we need to reopen https://github.com/tektoncd/pipeline/pull/6552, since we should be able to update this function here to convert a clustertask into a v1 Task instead of a v1beta1 Task. (FYI @JeromeJu @dibyom)

Nice!!

Is it because we didn't add cluster task in v1's validation funciton?:
	// taskKinds contains the kinds when the apiVersion is not set, they are not custom tasks,
	// if apiVersion is set they are custom tasks.
	taskKinds := map[TaskKind]bool{
		"":                 true,
		NamespacedTaskKind: true,
		ClusterTaskKind:    true,
	}

I added at first but @jerop said we don't have cluster task in v1.
To address this issue I think we need to add it right?


[putio] Added PutIo extractor

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[ ] Improvement
[x] New extractor
[ ] New feature

Description of your pull request and other information
Added support for put.io. It supports any kind of file, but it's used primarily for media. Getting additional metadata requires an oauth token with a broader scope, something that the user probably won't have off the bat. A token is provided within the URL, but it is only valid for retrieving files, I think. I made do with the HEAD request.

You must provide account credentials.


CASMMON-287: Update csm documentation

Resolves:
https://jira-pro.its.hpecorp.net:8443/browse/CASMMON-287

There are spelling issues, they all appear to be technical terms. Please surround technical terms with single backticks `.


I dye a little bit inside

Hii~~
I fixie wixied the RecipeArmorDyes fucksy wucksie!!! xpp
I repwaced the matches func wiff a more ~streamylined~ kawaii matchBetter method that make the JVM go sooper dooper fast!! xD starts twerking
And, I wediwected two cawws in getCwaftingWesuwt t-to make the wecipe be fuwwy awawe of the OweDictionyawy?!?1 x3
Can u pwease merge my pwull wequest senpai?!! UwU

Can you please talk normal.

I'm going to merge this soon, so expect it in the next update.

Last seen 1203 days ago

I'm going to merge this soon, so expect it in the next update.

Last seen 1203 days ago

:trollface:


Add Result Skeleton

Demand Results and Perfection

This PR adds another skeleton to the docs for this issue#42. This one for the newly added Result.

Coverage remained the same at 100.0% when pulling 0f317ae1c824333f92c9801b9617930f9c3673a3 on result-skel into b980c0c3fc57666654aa3c9dab5da354c26019d6 on docs.

Coverage remained the same at 100.0% when pulling 0f317ae1c824333f92c9801b9617930f9c3673a3 on result-skel into b980c0c3fc57666654aa3c9dab5da354c26019d6 on docs.

Coverage remained the same at 100.0% when pulling 0f317ae1c824333f92c9801b9617930f9c3673a3 on result-skel into b980c0c3fc57666654aa3c9dab5da354c26019d6 on docs.


Dashboard: Added dev UI so we can tag stories with animations

This PR adds some dev UI so we can add animations to the stories in our local environment.
This feature was built so that we have a relatively easy way to add animations to our stories following the data structure that we agreed upon.  The code is by no means bullet proof nor architected to perfection and it wasn't meant to be.  This is a temporary dev-only tool so that we can make progress with template/story animations.  Once the Editor is updated to support animations natively, this tool will be retired.
Fixes: #1768
Note
Each animation applied is saved at the page level of the story data structure following this pattern:
story = {
  ...
  story_data: {
    ...
    pages: [
      {
        ...
        animations: [
          { type: 'bounce',  targets: [element1Id, element2Id], duration: 2000 },
          { type: 'fade-in', targets: [element1Id], duration: 3000, delay: 500 },
        ],
        elements: ]
          ...
        ]
      },
      ...
    ]
  }
}

Possible Future Features

Ability to add in custom configs for each animation type.  Right now we can only modify duration & delay, but I can see different animation types having a different set of customizable properties.

The ability to preview the applied animations at the page level (maybe even element level).

Perhaps more information display in UI (i.e. page count, duration & delay numbers easily visible in timeline, etc...).

Basic Instructions
How to access
The UI can be accessed at this url:
/wp-admin/edit.php?post_type=web-story&page=stories-dashboard#/story-anim-tool
Saving stories
The active story will be auto-saved when an animation is added/updated/removed or when you change to another active story.
Selecting a story
1.) Use the drop down to select one of up to 25 stories (ordered by Last Modified (DESC)) in your account.

Navigating the pages of a story
1.) Select a story from the dropdown to load it up.
2.) Use the "Next Page/Previous Page" buttons to navigate through the story.

Adding a Animation to a story element
1.) Select a story and navigate to the page you want to add animations to.
2.) Using the animation panel at the bottom right-side of the screen, select the "Animation Type" and fill in the "Duration" and "Delay" as desired.
3.) Click on "Select Target(s)" (this should toggled the button text to "Target(s) Selected").
4.) Using the element list next to the active story page, click on one or more elements you want your animation applied to (they should highlight as you select them).
5.)  Click "Submit" and your animation should appear in the Timeline.

Editing an Existing Animation
1.) Navigate to a story and page that has animations applied.
2.) Click on the animation bar or the label of the animation you want to modify.  This should pre-fill the animation panel with the appropriate values and highlight the correct elements in the story page.
3.) Make any updates you want to the selected elements or animation type or duration or delay using the animation panel.
4.) Click "Submit" to apply the changes or "Cancel" to undo any changes you made.

Delete an Existing Animation
1.) Navigate to a story and page that has animations applied.
2.) Click on the X next to the label of the animation you want to remove in the Timeline.
3.) Click "Ok" on the confirmation popup to permanently remove the animation, or "Cancel" to cancel the delete request.

Going through this now just to make sure nothing public is affected. So far all the math and numbers seem correct.


Local registry index cache

For now, we get latest version of crate via HTTP call, each crate cost a HTTP call, which might be expensive.
If we keep a full index local cache, and timing sync it, that might be cheaper and faster.
Here are my ideas:

Download github archive file every 5 mins and load everything in memory, for now, crates.io-index archive file is 35MB.
Clone and read via git2 crate, incremental synchronization every 1 min.
Download archive file when first launch, incremental synchronization via github api

Not available in recently


[Feature Request] VGA Update frequency

An option to change the refresh rate

Please don't use the bug label for issues that aren't bugs. Try using enhancement instead.

This would have to be a change in QEMU.

This would have to be a change in QEMU.


KAFKA-7082: Concurrent create topics may throw NodeExistsException

This is an unexpected exception so UnknownServerException
is thrown back to the client.
This is a minimal change to make the behaviour match ZkUtils.
This is better, but one could argue that it's not perfect. A more
sophisticated approach can be tackled separately.
Added a concurrent test that fails without this change.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

JDK 10 Jenkins job passed, the 2 failures in the JDK 8 job are unrelated.

Merged to trunk, 2.0 and 1.1.


Some UMD wrappers are not detected

I've hit problems with a few libraries which use UMD wrappers which Closure doesn't detect:
Leaflet https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.1.0/leaflet-src.js:
(function (global, factory) {
	typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
	typeof define === 'function' && define.amd ? define(['exports'], factory) :
	(factory((global.L = global.L || {})));
}(this, (function (exports) {
   exports.foo = "bar";
})));

Bowser https://github.com/lancedikson/bowser/blob/master/src/bowser.js:
!function (root, name, definition) {
  if (typeof module != 'undefined' && module.exports) module.exports = definition()
  else if (typeof define == 'function' && define.amd) define(name, definition)
  else root[name] = definition()
}(this, 'bowser', function () {
    return {foo: 'bar'};
});

There are so many of these, it's very hard to properly detect. It'll probably be quite some time before I can look into this.


bun: 1.1.8 -> 1.1.9

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for bun is: Incredibly fast JavaScript runtime, bundler, transpiler and package manager – all in one
meta.homepage for bun is: https://bun.sh
meta.changelog for bun is: https://bun.sh/blog/bun-v1.1.9
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.1.9 with grep in /nix/store/ds8rhlmlmd68b8gh6fgldv3hxrn4pyi5-bun-1.1.9
found 1.1.9 in filename of file in /nix/store/ds8rhlmlmd68b8gh6fgldv3hxrn4pyi5-bun-1.1.9

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)

3 package rebuild(s)

First fifty rebuilds by attrpath

bun
helix-gpt

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/ds8rhlmlmd68b8gh6fgldv3hxrn4pyi5-bun-1.1.9 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A bun https://github.com/r-ryantm/nixpkgs/archive/bdd2f439c62aa0b8aa97f5c784a965c23f968fe6.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/bdd2f439c62aa0b8aa97f5c784a965c23f968fe6#bun

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/ds8rhlmlmd68b8gh6fgldv3hxrn4pyi5-bun-1.1.9
ls -la /nix/store/ds8rhlmlmd68b8gh6fgldv3hxrn4pyi5-bun-1.1.9/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

2 packages built:

bun
helix-gpt

Maintainer pings
cc @DAlperin @06kellyjac @thilobillerbeck @cdmistman @coffee-is-power for testing.

Result of nixpkgs-review pr 314423 run on x86_64-linux 1

2 packages built:

bun
helix-gpt


WIP no extra spline steps

This PR removes extra spline steps in computing correlation functions.
Closes #553

Pull Request Test Coverage Report for Build 2998

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

Totals

Change from base Build 2986:
0.0%

Covered Lines:
589

Relevant Lines:
627

💛  - Coveralls

Closing. I will revisit this later.


set-up : error message incoherent

in checks , error message for an export's file name missing whereas it is filled.

Fixed in the setup, related to the checking informations in the setup formula worksheet.


style: Added Gssoc logo for both light and dark mode

Related Issue
#644

Description

Added Gssoc logo which will comply with both light and dark mode

Please merge this pull request under GsSOC'23 as I am a participant.

Screenshots

For light mode

For dark mode

Checklist

[x] My code adheres to the established style guidelines of the project.
[x] I have included comments in areas that may be difficult to understand.
[x] My changes have not introduced any new warnings.
[x] I have conducted a self-review of my code.

Sir pls add GsSOC labels as I am  a participant


Migrate GitHub Workflow tests to workspace testing

Due to the increase in package interdependency, GitHub Workflow testing should use the workspace to ensure that each package has access to possible cross-dependencies.

Not all packages have been migrated to the workspace, as they should probably be able to operate independently in case they are needed in other projects:

https://github.com/biothings/smartapi-kg.js
https://github.com/biothings/biomedical_id_resolver.js
https://github.com/biothings/biolink-model.js

In the event any of these need to become interdependent, they can relatively easily be migrated to the workspace.
As part of this issue, all packages have also been migrated to Codecov for coverage visualization, due to broken support in Coveralls for Monorepos.
There remains one issue with https://github.com/biothings/api-respone-transform.js, which seems to be encountering errors once the coverage report has been uploaded.


ignore cmd in VM when pressing CMD + tab to switch window

Running Windows virtual machines in UTM. I've noticed that many keystrokes and key commands are still passed to the VM even if the input isn't captured. This presents an annoying issue when you press cmd + tab to switch to another MacOS window, as the cmd key triggers the windows start menu every time. Could there be an option to stop modifier keys being passed unless the input is captured, or ideally stop any key being passed unless the input is captured?

Indeed this is a feature missing which VirtualBox and VMWare Fusion do have.
I get around it by installing Sharpkeys in the Windows VM to swap the cmd (called 'Windows' key) and the ctrl key.
In Ubuntu I did the same by:
# cmd / alt swap in Ubuntu: https://cdmana.com/2022/03/202203271213306191.html
sudo nano /usr/share/X11/xkb/keycodes/evdev
        <LALT> = 64;
        // <LCTL> = 37;
        <LCTL> = 133;
        <SPCE> = 65;
        <RCTL> = 105;
        <RALT> = 108;
        // Microsoft keyboard extra keys
        <LWIN> = 37;
        // <LWIN> = 133;
        <RWIN> = 134;
        <COMP> = 135;

I never understood why Apple does not allow swapping the Ctrl and Cmd keys.

Maybe I misunderstood what you meant by swapping ctrl and cmd, but System Settings -> Keyboard -> Keyboard Shortcuts… -> Modifier Keys lets you do that.
(By the way, I like having ctrl+A and ctrl+E for navigating text, instead of the Windows way)


Unable to break after full stop

Hi. I have this piece of text and I want to split it into sentences:

An example of a bot that reverts vandalism on Wikipedia is ClueBot NG. ClueBot NG can revert edits, often within minutes, if not seconds.

Expected result:

An example of a bot that reverts vandalism on Wikipedia is ClueBot NG.
ClueBot NG can revert edits, often within minutes, if not seconds.

Actual result:

An example of a bot that reverts vandalism on Wikipedia is ClueBot NG. ClueBot NG can revert edits, often within minutes, if not seconds.

I am using sentence-splitter version 3.1.0. Any idea why the text is not splitted after the first full stop?

I think that it is a bug or https://github.com/azu/sentence-splitter/blob/master/src/parser/AbbrMarker.ts
It maybe false-positive for NG.

We also experience this issue with
├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>It seems to fail any time the sentence ends with a capital letter. Simple reproducer:
import {
  split,
  Syntax
} from "sentence-splitter";

let sentences1 = split(`Sentence onE. Sentence two.`);
console.log(JSON.stringify(sentences1, null, 4));

Actual paragraph that causes issues:
Zivid Studio is the graphical user interface (GUI) for the Zivid SDK.
This allows the user to explore the functionality of the Zivid Cameras and the capturing of high definition 3D point clouds.

This was not a problem with:
├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>

This is fixed in https://github.com/azu/sentence-splitter/releases/tag/v3.2.3
https://sentence-splitter.netlify.app/#An example of a bot that reverts vandalism on Wikipedia is ClueBot NG. ClueBot NG can revert edits%2C often within minutes%2C if not seconds.


fix(module:input, input-number, steps): fix styles in components

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] The commit message follows our guidelines: https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/CONTRIBUTING.md#commit
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Application (the showcase website) / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?

Issue Number: #7514 #7513
What is the new behavior?
Does this PR introduce a breaking change?
[ ] Yes
[ ] No

Other information

@simplejason i get a error with the new update 13.3.1
cannot access 'NzInputNumberComponent' before initialization

ERROR ReferenceError: Cannot access 'NzInputNumberComponent' before initialization


Issue 172: ConditionalApplyPlugin - enable Confirm/Apply on specific environments, any branch

Issue #172
Allow confirm/apply on specific environments, regardless of the branch/PR being run.

Codecov Report

Merging #343 (3c56b4c) into master (520ce89) will increase coverage by 0.18%.
The diff coverage is 80.00%.

@@            Coverage Diff             @@
##           master     #343      +/-   ##
==========================================
+ Coverage   79.86%   80.04%   +0.18%
==========================================
  Files          44       44
  Lines        1202     1208       +6
  Branches      283      283
==========================================
+ Hits          960      967       +7
  Misses         95       95
+ Partials      147      146       -1

Impacted Files
Coverage Δ

src/ConditionalApplyPlugin.groovy
80.76% <80.00%> (+10.76%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 520ce89...1c6ad55. Read the comment docs.


Hookup Count HTML message into new template

[ ] added component to top of metrics area
[ ] hookup actual values

@brendancol I commit in branch hookup_counters an approach. Styling has to be worked out, either in the top navbar or as a foot-bar. The counting implemented so far consider:

all filters current loaded (e.g., RIZ) in the case of tracts and patch
all selected metrics in the case of visits

Unique objects count is not implemented yet. I understand I have to talk to Tim about that.


[routing/chainview] improve filter locking granularity in btcd/bitcoind

Modifies granularity of chainview filter locking for btcd and bitcoind, such that a lock is only acquired once per block connected/filter update. Also fixes a bug (likely benign) that could cause spent outputs to linger in the filter map.

routing/chainview/btcd.go:279:5: undefined: isFilteredTx

@Roasbeef fixed the compile issue :)


Track features from the backtrace of exceptions

When the action run by Zeus raises an exception, we report all_features and crash. Since files do not get added to Ruby's $LOADED_FEATURES list unless the are required without error, this means that Zeus may not reload when you fix the underlying issue. This is mostly plastered over by the fact that Zeus accumulates features across all runs of a command so if your code loads once, it'll know what to reload on if it crashes the next time. This doesn't work on first boot-up and constrains some possible improvements to file tracking in the SlaveNode. At Stripe, we're currently monkey patching Kernel#require_relative in our Plan to work around this issue.
This changes features_loaded_by to catch exceptions in the executing block and add the lines of the backtrace into the list of features reported to Zeus. This should provide an accurate picture of the files that were actually accessed leading to the crash. The existing shared test helpers were stubbing out Kernel#load, breaking some LoadTracking tests. I've moved spec helpers to be scoped to the modules in which they're used and killed the shared file.

@ptarjan, up for reviewing this? You figured out our require monkey patch in the first place.

LGTM


smoothscroll

Description of the new feature / enhancement
https://www.smoothscroll.net/win/
Scenario when this would be used?
https://www.smoothscroll.net/win/
Supporting information
https://www.smoothscroll.net/win/

As a display researcher (Founder of Blur Busters / TestUFO), I love smooth scrolling.
Modern flickerless displays at higher refresh rates REALLY benefit huge from this.

120fps 120Hz has one-half the motion blur of 60fps 60Hz
240fps 240Hz has one-quarter the motion blur of 60fps 60Hz
480fps 480Hz has one-eighth the motion blur of 60fps 60Hz

(CRT tubes didn't need this because the natural phosphor flicker reduced their motion blur).
With smoothscroll, high Hz is not just for gamers.  Even Apple is mainstreaming 120Hz screens because it's nicer.  Apple is famous for smooth scroll, and high Hz benefits smooth scroll massively.
Most of display motion blur is caused by the motion of eye-tracking along the scroll axis, e.g. animation demo at www.testufo.com/eyetracking -- your analog eyes are in different position at start and end of refresh cycle.  That blurs the stationary continuously-illuminated pixel of a frame, across your retinas.  1/480sec pixel visibility = one eighth motion blur of 1/60sec pixel visibility.

(Citation: I'm in over 25 peer reviewed papers in the display industry; www.blurbusters.com/area51 ...)

if smooth scroll does what you want, 100% please support that dev
/dup https://github.com/microsoft/PowerToys/issues/134

if smooth scroll does what you want, 100% please support that dev
/dup #134

SmoothScroll doesn't work ok when you have several displays with diferent refresh rates, and the developer doesn't even answer support questions to customers that are paying an anual subscription for a software that does ONE thing and don't do it well.

One consideration is that Windows DWM is a single-Hz compositor, so it's not possible to have concurrently smooth motion on non-divisible different-Hz multimonitor system -- e.g. 60fps smooth on 60Hz monitor, and 144fps smooth on 144Hz monitor.
The prevailing advice is to use the primary monitor as the highest Hz monitor, and make sure anything you want smoothscrolled to be on the primary monitor.
That being said, divisibles (e.g. 120Hz vs 60Hz) are a bit easier to keep smooth.
Long-term, Windows may properly support concurrent multi-Hz support, much like it can support concurrent multi-resolution support -- but right now it synchronizes to a single Hz


chore: change DirectConn host to "dagger"

Partially fixes https://github.com/dagger/dagger/issues/8329.
The :mem: host here is really weird, I don't know the logic for it, but it makes for some very confusing error messages, so we should fix it to something more reasonable and recognizable.

I didn't come up with the name :mem: myself, I definitely saw it being used somewhere else (I thought buildkit somewhere) and just cargo-culted, but can't find it anymore.
Either way, it's not load bearing in and of itself. The only real-world-ish consideration here is that we ideally don't want a name that would ever accidentally trigger a DNS resolve of a real host (which could "upgrade" a plain old bug to become a security vulnerability).
This is very obscure, so if there's distaste for :mem: showing up then I have no problem changing to dagger. It would be nice if we could just leave the host blank and not care about this at all (since it's irrelevant), but last I checked the go http client got upset when you did that.

This PR is currently linked to #8329 such that the issue will be closed by it, which doesn't seem right to me, so unlinking it.


Add tests to UIButton initializer with ButtonConfiguration

Here we're testing a view with an intrinsic content size, no need to create a UIViewController to wrap it.
Check how it's done here

And we're missing a unit test for when the user actually taps a button


Protect Self

This page from AWS has some pseudocode that I want to emulate: https://aws.amazon.com/blogs/aws/new-instance-protection-for-auto-scaling/
Basically, while doing some long-running task I want to protect the instance from scale-in, and in my application - it needs to come from the instance doing the work.
How do you set instance protection from within the VM itself?
-- OR --
How do you find the instance id of the current VM?

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

ID: fc7afe8a-79f5-a995-7008-2fffe87c0dd0
Version Independent ID: c7b56a65-6c10-e8a6-be2e-cd1e61426360
Content: Instance Protection for Azure virtual machine scale set instances
Content Source: articles/virtual-machine-scale-sets/virtual-machine-scale-sets-instance-protection.md
Service: virtual-machine-scale-sets
GitHub Login: @mayanknayar
Microsoft Alias: manayar

Thanks for the feedback! We are currently investigating and will update you shortly.

@timyhac you would not set the protection from inside the VM itself. Rather you apply it from the outside and pick the instance you want to protect.
You can read here on how to get the instance ID of a VM
https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-instance-ids

@timyhac I will go ahead and close this but if you have further questions just let me know and we can always reopen and continue the discussion.

So is the best way for the VM to find its instance Id, somehow send it to
another machine who then protects it?
On Wed, 16 Oct 2019, 03:23 Micah<EMAIL_ADDRESS>wrote:

Closed #40693 https://github.com/MicrosoftDocs/azure-docs/issues/40693.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/40693?email_source=notifications&email_token=AESB443D4KXD5NZPLIVHX6LQOXVBRA5CNFSM4JAOEVI2YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOUHHCOZI#event-2714642277,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AESB446KJFCN4ARPDNLADJDQOXVBRANCNFSM4JAOEVIQ
.

You you use PowerShell from an on prem machine. So you are sending data to Azure to tell it which instance to protect.


Remove moment, replace with angular2 DatePipe.  And Date.parse in demo.

It has always been the intention to phase out moment, there is an alternative which is angular2's DatePipe which is always available as this is an angular2 library.  I figured we might as well use it so we can ditch the moment dependency.
In this commit I also removed moment from the docs and demo.

Current coverage is 90.39% (diff: 100%)

Merging #941 into development will not change coverage

@@           development       #941   diff @@
=============================================
  Files               26         26
  Lines              781        781
  Methods            142        142
  Messages             0          0
  Branches           115        115
=============================================
  Hits               706        706
  Misses              75         75
  Partials             0          0

Powered by Codecov. Last update b5c8448...d347ee0

hey, @Tiedye are you in slack already? If no, please join us https://www.hamsterpad.com/chat/ng2

@Tiedye things is, this one will not be enough for new version of date picker we did
but I pretty like the idea
only concern ng2 DatePipe is not working properly in safari, so you have to provide polyfill for Intl

@valorkin Ah I see.  Anywhere I could find the new datepicker so I could possibly try this on it?  And try getting a polyfill working if nessesary. Also thanks @otelnov I'll get right on that.

Join slack and dm me
Here is polifill http://npmjs.org/Intl
On Fri, Sep 9, 2016, 02:09 Daniel Whitney<EMAIL_ADDRESS>wrote:

@valorkin https://github.com/valorkin Ah I see. Anywhere I could find
the new datepicker so I could possibly try this on it? And try getting a
polyfill working if nessesary. Also thanks @otelnov
https://github.com/otelnov I'll get right on that.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/valor-software/ng2-bootstrap/pull/941#issuecomment-245770283,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABDk4wyzO__zHWprVXB0wnWV--PxtjGpks5qoJXBgaJpZM4J3isg
.

Closing it for now, we will get back to it a bit later ;)