Fix invalid instruction usage in Xeon Phi x200 processors

The Xeon Phi x200 family of processors (Knights Landing) supports AVX512 (F, CD, ER, PF) but does not support AVX512 (VL, DQ, BW).
Because of processors like this, the Intel Software Developer's Manual suggests the bits AVX512 (DQ,BW) are also tested in EBX together with AVX512F before deciding to run AVX512 (DQ,BW) instructions.
Considering that adler32_avx512 and adler32_fold_copy_avx512 are both built with -mavx512dq -mavx512bw, it's recommended that both CPUID bits are tested before executing these functions.
This has been reported downstream as
https://bugzilla.redhat.com/show_bug.cgi?id=2280347 .

A more appropriate fix might be to store flags for each feature and and all of those together in the function table.

OK.
@KungFuJesus Let me confirm if I understood you: are you suggesting to replace features->has_avx512 with the following 3 new features? features->has_avx512f, features->has_avx512dq and features->has_avx512bw.

A more appropriate fix might be to store flags for each feature and and all of those together in the function table.

OK. @KungFuJesus Let me confirm if I understood you: are you suggesting to replace features->has_avx512 with the following 3 new features? features->has_avx512f, features->has_avx512dq and features->has_avx512bw.

Correct.  You'll see where the function gets assigned in the function table.  Instead of assigning based on avx512f, check for all 3 of those features with a logical AND.  This paves the way to maybe having avx512f-only methods (though, we do rely pretty heavily on byte level operations).

OK. @KungFuJesus Let me confirm if I understood you: are you suggesting to replace features->has_avx512 with the following 3 new features? features->has_avx512f, features->has_avx512dq and features->has_avx512bw.

I think this is not necessary.
All AVX512 optimizations require DQ & BW extensions.

OK. @KungFuJesus Let me confirm if I understood you: are you suggesting to replace features->has_avx512 with the following 3 new features? features->has_avx512f, features->has_avx512dq and features->has_avx512bw.

I think this is not necessary. All AVX512 optimizations require DQ & BW extensions.

Currently, yes. I'm more thinking for future scenarios.  Realistically this niche CPU is basically the only one of its kind that doesn't support the rest of the family of extensions, and there might be arguably some places that have 32 or 64 bit operands where we could write a version that supports it.  Whether or not it's worth it for a Phi or an accelerator card...well, debatable.  There's also the unfortunate fact that many of those places are more memory bandwidth than instruction bound (e.g. slide hash), and a 512 bit version of that just hurts performance due to the imposed clock penalty.

A possible AVX512F-only version of this might involve starting from the AVX2 code and then widening (which do appears to be in the F set of instructions) after the multiply-add.  Arguably the latency on those conversions are mighty high and a large part of the throughput is the ability to pump 64 madd's through at once. It's feasible, though.  I haven't tried to scoreboard any possible solution, and I sort of expect no matter what things are going to be bound up on the shuffle port when taking an approach like that, but maybe not entirely hopeless.

In this new version, I implemented the new features.

@tuliom
We also need to check the availability of avx512vl
https://github.com/zlib-ng/zlib-ng/blob/a31e6ddecf2fd4ad98a859d73c15db5a19d3ea94/arch/x86/x86_functions.h#L144
https://github.com/zlib-ng/zlib-ng/blob/a31e6ddecf2fd4ad98a859d73c15db5a19d3ea94/cmake/detect-intrinsics.cmake#L80

This 4th version implements the changes suggested by @Dead2 .
It also changes the code for crc32_vpclmulqdq, which was fixed in my initial implementation, but was missing in v2 and v3 of this patch.
I updated the commit message accordingly.


Wrong version number in releases

The pyproject.toml file states:
version = "0"

for all current releases. This is going to break version requirements in other packages.

The version is set correctly on release.
https://github.com/samuelcolvin/dirty-equals/blob/f6e0d13b14bcfeebbfb0f1b46af9ede8a50d6043/.github/workflows/ci.yml#L129
I don't believe that version number is used anywhere.

I assume pyproject.toml doesn't get distributed, so this version value is ignored.
Am I won't somehow?
TBH this is the only project I release with poetry and I found it quite hard to use, I might go back to setup.py.

Hmm, so I guess it's only broken when you're using GitHub snapshots as we have to because pypi sdists don't include tests.


[NFR] ORM: add the ability to return a custom Phalcon\Mvc\Model\Row class instance

Overview
Similar to issue phalcon/cphalcon#12166 it would be great if this could be taken a step further so that a custom Phalcon\Mvc\Model\Row can be returned when using Query Builder for more complex queries.
See original post on forum.
Reason for NFR & Example Usage / Syntax
At the moment, if you use Model::find() methods and don't specify columns you are returned an instance of Model. If you use joins and/or custom columns, the class of each row becomes Phalcon\Mvc\Model\Row. If we could override this class, it would be possible to have re-usable utility methods to keep things DRY that would be usable in your View, Controller etc.
Looking at the source, it doesn't seem possible to override the use of Phalcon\Mvc\Model\Row.
Suggested Syntax
In your model class, similar to phalcon/cphalcon#12166:
namespace Models;
class Users extends \Phalcon\Mvc\Model {
    public $id;
    public $first_name;
    public $last_name;

    public function getResultsetRowClass() {
        return 'Resultsets\Row\User';
    }
}

namespace Resultsets\Row;
class User extends Phalcon\Mvc\Model\Row {
    public function getFullName() {
        return sprintf('%s %s', $this->first_name, $this->last_name);
    }
}

You could even put the getFullName() method in a trait so that the logic can be included in your model as well to keep things DRY.
Then in your view you could do something like:
{% for user in users %}
    {{ user.id }}: {{ user.getFullName() }}
{% endfor %}

An alternative would be to add this when you're executing a built query:
$data = $queryBuilder->getQuery()->setResultsetRowClass('Resultsets\Row\User')->execute();

I'm by no means an expert but I think this might be more straight forward than adding to the model actually. We could have setResultsetRowClass / getResultsetRowClass methods added into Phalcon\Mvc\Model\Query which would be used on line 2816:
let resultObjectClass = this->getResultsetRowClass();
let resultObject = new {resultObjectClass}();

Details

Phalcon version: 3.4.0
PHP Version: 7.2.11
Operating System: macOS
Installation type: HomeBrew
Zephir version (if any): n/a
Server: Apache
Other related info (Database, table schema): MySQL 5.7

I was hoping to re-open this if that's OK with everyone 👍

It's open. I removed the stale tag (bot)


Split kerchunk reader up

Instead of trying to treat all uses of kerchunk references as one "reader", this PR instead splits them to consider each separate filetype to be one "reader", even if many of those readers call kerchunk code.
This means every "reader" is now a separate definition of a function open_virtual_dataset, which the top-level open_virtual_dataset picks between with one big match case statement. Generalizing that match to be pluggable by third-party libraries would close #245.
This also makes the structure of our dependence on kerchunk much clearer - @mpiannucci it should now be a lot easier for you to try out the kerchunk-to-icechunk use case mentioned in https://github.com/zarr-developers/VirtualiZarr/issues/258#issuecomment-2419582281.

[x] Closes #257, addresses https://github.com/zarr-developers/VirtualiZarr/issues/258#issuecomment-2420344534, and is a big step towards #245.
[ ] Tests added
[ ] Tests passing
[ ] Full type hint coverage
[ ] Changes are documented in docs/releases.rst
[ ] New functions/methods are listed in api.rst
[ ] New functionality has documentation

cc @norlandrhagen @sharkinsspatial @ghidalgo3

Note to self: I should just use an ABC with an open_virtual_dataset method defined at this point. That would standardize the interface, which would help shut mypy up, and it brings us closer towards what we would need for an entrypoint system.

@keewis you might have opinions on this PR - I'm trying to move towards a system of virtual "backend readers" like xarray has backends. My proposal (see #245) is to eventually have one actual xarray backend that calls virtualizarr, and virtualizarr calls one of a number of registered virtual backends depending on the filetype.

Note: ensure warning is raised on decode_cf

you might have opinions on this PR

I'm still somewhat split on the idea to create a virtualizarr backend for xr.open_dataset: I think of xr.open_dataset as a way to open a dataset (i.e. metadata and data), while with virtualizarr we're not actually opening the dataset, we're just reading the metadata and the chunk locations. I'm aware that this distinction is somewhat blurred if you can load the actual data using the virtual dataset, but still I feel somewhat uncomfortable with that idea (no strong opposition, though).
However, I totally support the creation of a plugin system for open_virtual_dataset, as that means that the code for other packages does not have to live in the base package.
For an actual code review I'd have to read the changes you're proposing here, which I will try do at some point during the weekend (but the PR is huge, so might take me some time).

I'm still somewhat split on the idea to create a virtualizarr backend for xr.open_dataset: I think of xr.open_dataset as a way to open a dataset (i.e. metadata and data), while with virtualizarr we're not actually opening the dataset, we're just reading the metadata and the chunk locations. I'm aware that this distinction is somewhat blurred if you can load the actual data using the virtual dataset, but still I feel somewhat uncomfortable with that idea (no strong opposition, though).

I agree actually. I'm still not sure that it's a good idea. Maybe open_virtual_dataset is sufficient.

However, I totally support the creation of a plugin system for open_virtual_dataset, as that means that the code for other packages does not have to live in the base package.

:+1:

For an actual code review I'd have to read the changes you're proposing here, which I will try do at some point during the weekend (but the PR is huge, so might take me some time).

No worries! I'm pretty sure this is fine, it can also always be refactored further.

(the failing tests are caused by a bad merge, as the changes to variable_from_kerchunk_refs from #260 disappeared)

the failing tests are caused by a bad merge

Thanks for that heads up!

Note: ensure warning is raised on decode_cf

Actually the warning should be on cf_variables. decode_times should be passed through, which it now is. But I'm confused why that didn't cause failures...

I'm going to merge this now because I know @sharkinsspatial and @ayushnag would like to work off of it, but @keewis feel free to add any comments / thoughts here and I will address them in follow-up PRs.


More access to pireps to allow for deletion

I have seen that there are occasions when a pirep is prefiled by Acars and never completed, in my case I had a power cut part way through.  This left the prefiled pirep on the database and the live map was showing me enroute.  I have seen this now many times when the flight is not completed by the pilot.  (Sim crashes, aircraft crashes, power cuts, loss of network)
I have had to manually go into the database table and remove pireps that are not completed.
I do not know if this is the same situation with manual prefiled pireps.
It would be nice to be able to manage the pireps from admin allowing the removal of rejected and prefiled unreported pireps without having to go into phpmyadmin.

I will need to do some debugging why this is happening, thanks

I will need to do some debugging why this is happening, thanks

after crash/closed, try going back to acars again when it loads will tell you that you have a current flight if you want to continue it, press no, and check de DB/Map, flight should not be there anymore.

after crash/closed, try going back to acars again when it loads will tell you that you have a current flight if you want to continue it, press no, and check de DB/Map, flight should not be there anymore.

Thanks, I am aware of this but it does not always work.  Also it means the users has to reopen straight away and close the flight to get it off the map.  I have several users who just leave it until next flight so they stay on the map for long periods.  Would be better if it was automatic.

Thanks, I am aware of this but it does not always work.  Also it means the users has to reopen straight away and close the flight to get it off the map.  I have several users who just leave it until next flight so they stay on the map for long periods.  Would be better if it was automatic.

ok!  but just a hint to nabeel that issue might be around that function, maybe cron job should wipe  it too.

ok!  but just a hint to nabeel that issue might be around that function, maybe cron job should wipe  it too.

Thanks, I am aware of this but it does not always work. Also it means the users has to reopen straight away and close the flight to get it off the map. I have several users who just leave it until next flight so they stay on the map for long periods. Would be better if it was automatic.

The problem is that it's impossible to tell if it crashed and someone is just having a problem and restarting. I guess I can clear it after an hour or something, I know I've had instances where I've resumed a half-hour later or something because I was just having other issues. How do you suggest getting around that?

Thanks, I am aware of this but it does not always work. Also it means the users has to reopen straight away and close the flight to get it off the map. I have several users who just leave it until next flight so they stay on the map for long periods. Would be better if it was automatic.

The problem is that it's impossible to tell if it crashed and someone is just having a problem and restarting. I guess I can clear it after an hour or something, I know I've had instances where I've resumed a half-hour later or something because I was just having other issues. How do you suggest getting around that?

Button to delete PIREP (frontend "cancel" button will be changed to "delete")
Going to add a cron to remove prefiled PIREPs after 6 hours
Setting/cron delete canceled PIREPs after x hours
Setting/cron to delete rejected PIREPs after x days


authenticate/wampcradynamic/python doesn't work with python 3.4

Using crossbar 0.11.1, I tried the example : authenticate/wampcradynamic/python  with python 3.4.
Many exceptions are thrown in the crossbar console and the web client can't connect.
on_challenge isn't even fired.
Works fine on Python 2.7
Edit: it may be twisted that isn't compatible with Python 3.
Is this possible to have an example working on python 3?

Current state: works on Python 3 (3.5.1 tested). Closing.

works for me:
(cpy351_4) oberstet@corei7ub1310:~/scm/crossbario/crossbarexamples/authentication/wampcra/dynamic/python$ crossbar start
2016-04-17T16:09:11+0200 [Controller   2397] New node key generated!
2016-04-17T16:09:11+0200 [Controller   2397]      __  __  __  __  __  __      __     __
2016-04-17T16:09:11+0200 [Controller   2397]     /  `|__)/  \/__`/__`|__) /\ |__)  |/  \
2016-04-17T16:09:11+0200 [Controller   2397]     \__,|  \\__/.__/.__/|__)/~~\|  \. |\__/
2016-04-17T16:09:11+0200 [Controller   2397]
2016-04-17T16:09:11+0200 [Controller   2397]     Crossbar.io Version: 0.13.2
2016-04-17T16:09:11+0200 [Controller   2397]     Node Public Key: 66e3e844e7d46e9fc922b8f3700aef9c6daee453c191ef8b40112899456a14bd
2016-04-17T16:09:11+0200 [Controller   2397]
2016-04-17T16:09:11+0200 [Controller   2397] Running from node directory '/home/oberstet/scm/crossbario/crossbarexamples/authentication/wampcra/dynamic/python/.crossbar'
2016-04-17T16:09:11+0200 [Controller   2397] Controller process starting (CPython-EPollReactor) ..
2016-04-17T16:09:11+0200 [Controller   2397] Node configuration loaded from 'config.json'
2016-04-17T16:09:11+0200 [Controller   2397] Node ID 'corei7ub1310' set from hostname
2016-04-17T16:09:11+0200 [Controller   2397] Using default node shutdown triggers ['shutdown_on_worker_exit']
2016-04-17T16:09:11+0200 [Controller   2397] Joined realm 'crossbar' on node management router
2016-04-17T16:09:11+0200 [Controller   2397] Starting Router with ID 'worker-001'...
2016-04-17T16:09:11+0200 [Router       2401] Worker process starting (CPython-EPollReactor) ..
2016-04-17T16:09:11+0200 [Controller   2397] Router with ID 'worker-001' and PID 2401 started
2016-04-17T16:09:11+0200 [Router       2401] Realm 'realm1' started
2016-04-17T16:09:11+0200 [Controller   2397] Router 'worker-001': realm 'realm-001' (named 'realm1') started
2016-04-17T16:09:11+0200 [Controller   2397] Router 'worker-001': role 'role-001' (named 'authenticator') started on realm 'realm-001'
2016-04-17T16:09:11+0200 [Controller   2397] Router 'worker-001': role 'role-002' (named 'backend') started on realm 'realm-001'
2016-04-17T16:09:11+0200 [Controller   2397] Router 'worker-001': role 'role-003' (named 'frontend') started on realm 'realm-001'
2016-04-17T16:09:11+0200 [Router       2401] started component: authenticator.AuthenticatorSession id=8233040766520965
2016-04-17T16:09:11+0200 [Router       2401] WAMP-CRA dynamic authenticator registered!
2016-04-17T16:09:11+0200 [Controller   2397] Router 'worker-001': component 'component-001' started
2016-04-17T16:09:11+0200 [Router       2401] started component: backend.BackendSession id=5247362298141924
2016-04-17T16:09:11+0200 [Router       2401] Backend session joined: SessionDetails(realm=<realm1>, session=5247362298141924, authid=<None>, authrole=<backend>, authmethod=None, authprovider=None, authextra=None)
2016-04-17T16:09:11+0200 [Router       2401] ok, subscribed to topic com.example.topic1
2016-04-17T16:09:11+0200 [Router       2401] ok, subscribed to topic com.foobar.topic1
2016-04-17T16:09:11+0200 [Router       2401] ok, subscribed to topic com.foobar.topic2
2016-04-17T16:09:11+0200 [Router       2401] subscription failed (this is expected!) ApplicationError(error=<wamp.error.not_authorized>, args=["session is not authorized to subscribe to topic 'com.example.topic2'"], kwargs={}, enc_algo=None)
2016-04-17T16:09:11+0200 [Router       2401] procedure add2() registered
2016-04-17T16:09:11+0200 [Controller   2397] Router 'worker-001': component 'component-002' started
2016-04-17T16:09:11+0200 [Router       2401] Site starting on 8080
2016-04-17T16:09:11+0200 [Controller   2397] Router 'worker-001': transport 'transport-001' started

... and then you start the Web client, and this happens (should have included this when re-opening):
2016-04-17T18:36:34+0200 [Router      11394] WAMP-CRA dynamic authenticator invoked: realm='realm1', authid='joe'
2016-04-17T18:36:34+0200 [Router      11394] {'authextra': None,
2016-04-17T18:36:34+0200 [Router      11394]  'authmethod': None,
2016-04-17T18:36:34+0200 [Router      11394]  'session':<PHONE_NUMBER>193053,
2016-04-17T18:36:34+0200 [Router      11394]  'transport': {'cbtid': None,
2016-04-17T18:36:34+0200 [Router      11394]                'http_headers_received': {'accept-encoding': 'gzip, deflate, '
2016-04-17T18:36:34+0200 [Router      11394]                                                             'sdch',
2016-04-17T18:36:34+0200 [Router      11394]                                          'accept-language': 'en-US,en;q=0.8,de-DE;q=0.6,de;q=0.4',
2016-04-17T18:36:34+0200 [Router      11394]                                          'cache-control': 'no-cache',
2016-04-17T18:36:34+0200 [Router      11394]                                          'connection': 'Upgrade',
2016-04-17T18:36:34+0200 [Router      11394]                                          'cookie': '__wzd34ca58d53bda=1454858667; '
2016-04-17T18:36:34+0200 [Router      11394]                                                    'session=.eJw9zMsKgkAAQNFfiVm3GB8tFFxIphKjCylfm5iHxJii6MyYiv8eFbg_966AjgILToG9ggMBNkCzBYu8bEibKJTFimSaIlxbWOBDnEWSLpEo87tgerqwM3yj1hdF3ivS-gadTzXRoQO2Ixi5qB54qPB-puG1oXoq_ydL0sn5yYmzZyXk0OwShwmkXqfQcpnj2ZxQ7cro1pmR95qQwfoyYA1zv_X2AU-dP-0.CfUfPg.Eh_qE9HCGjd3xyVvikQOqP6uh3Y',
2016-04-17T18:36:34+0200 [Router      11394]                                          'dnt': '1',
2016-04-17T18:36:34+0200 [Router      11394]                                          'host': 'localhost:8080',
2016-04-17T18:36:34+0200 [Router      11394]                                          'origin': 'http://localhost:8080',
2016-04-17T18:36:34+0200 [Router      11394]                                          'pragma': 'no-cache',
2016-04-17T18:36:34+0200 [Router      11394]                                          'sec-websocket-extensions': 'permessage-deflate; '
2016-04-17T18:36:34+0200 [Router      11394]                                                                      'client_max_window_bits',
2016-04-17T18:36:34+0200 [Router      11394]                                          'sec-websocket-key': '82CvBmTRjA4tuucfO51qJQ==',
2016-04-17T18:36:34+0200 [Router      11394]                                          'sec-websocket-protocol': 'wamp.2.json',
2016-04-17T18:36:34+0200 [Router      11394]                                          'sec-websocket-version': '13',
2016-04-17T18:36:34+0200 [Router      11394]                                          'upgrade': 'websocket',
2016-04-17T18:36:34+0200 [Router      11394]                                          'user-agent': 'Mozilla/5.0 (X11; '
2016-04-17T18:36:34+0200 [Router      11394]                                                        'Linux x86_64) '
2016-04-17T18:36:34+0200 [Router      11394]                                                        'AppleWebKit/537.36 '
2016-04-17T18:36:34+0200 [Router      11394]                                                        '(KHTML, like Gecko) '
2016-04-17T18:36:34+0200 [Router      11394]                                                        'Chrome/49.0.2623.112 '
2016-04-17T18:36:34+0200 [Router      11394]                                                        'Safari/537.36'},
2016-04-17T18:36:34+0200 [Router      11394]                'http_headers_sent': {},
2016-04-17T18:36:34+0200 [Router      11394]                'peer': 'tcp4:<IP_ADDRESS>:59690',
2016-04-17T18:36:34+0200 [Router      11394]                'protocol': 'wamp.2.json',
2016-04-17T18:36:34+0200 [Router      11394]                'type': 'websocket'}}
2016-04-17T18:36:34+0200 [Router      11394] add2() called with 2 and 3
2016-04-17T18:36:34+0200 [Router      11394] Fatal error in component: While firing <function BackendSession.onJoin.<locals>.onhello at 0x7f660df6d1e0> subscribed under<PHONE_NUMBER>185767. - onhello() missing 1 required positional argument: 'msg'
Traceback (most recent call last):
  File "/home/goeddea/venvs/cpy3_trunk/lib/python3.5/site-packages/crossbar-0.13.1-py3.5.egg/crossbar/router/router.py", line 159, in send
    session._transport.send(msg)
  File "/home/goeddea/venvs/cpy3_trunk/lib/python3.5/site-packages/crossbar-0.13.1-py3.5.egg/crossbar/router/session.py", line 228, in send
    self._session.onMessage(msg)
  File "/home/goeddea/venvs/cpy3_trunk/lib/python3.5/site-packages/autobahn/wamp/protocol.py", line 587, in onMessage
    future = txaio.as_future(handler.fn, *invoke_args, **invoke_kwargs)
  File "/home/goeddea/venvs/cpy3_trunk/lib/python3.5/site-packages/txaio/tx.py", line 407, in as_future
    return maybeDeferred(fun, *args, **kwargs)
--- <exception caught here> ---
  File "/home/goeddea/venvs/cpy3_trunk/lib/python3.5/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred
    result = f(*args, **kw)
builtins.TypeError: onhello() missing 1 required positional argument: 'msg'


Request: Document what prefixes are added with Prefixer and/or allow more control

Type:  Docs

Packages
Version

fela
11.0.x

Description
We have an upcoming project to trim a little fat by removing polyfills for Internet Explorer and other ancient browsers. I am having a hard time understanding if there is anything I can or should do to make the prefixer do "less prefixing", or what versions of Chrome (for example) might be affected if we removed the prefixer altogether.

Hmm, this is not really a Fela thing here.
You should find all the information at inline-style-prefixer.
It supports custom builds with minimum browser versions. You might have to reimplement fela-plugin-prefixer, but it‘s literally just a one liner (just check the source).
Hope this helps, if not feel free to reopen the issue!


work around timing issue in whisper reader interval tests

This PR aims to decrease the random errors we get from the whisper intervals tests.  As far as I can see it's a timing issue making the tests sometimes return a timestamp 1 less than we were expecting, so this just stops treating that as an error.
I'd like to do some work on whisper to make it less sensitive to wall-clock time, but for now this should stop the random annoying test failures.

Codecov Report

Merging #2150 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2150   +/-   ##
=======================================
  Coverage   78.71%   78.71%
=======================================
  Files          80       80
  Lines        8472     8472
  Branches     1908     1908
=======================================
  Hits         6669     6669
  Misses       1543     1543
  Partials      260      260

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 4c5a7c4...af7540f. Read the comment docs.

Absolutely must! Thanks, @DanCech !


Updated screenshots and icons related to resolve tfvc conflicts article

Took screenshots and icons from VS 2019

Hi @andrey-shuvalov - Would you take a moment to sign the Contributor License Agreement (CLA)? After the CLA is signed, someone can review your pull request. Thanks!

@andrey-shuvalov I am sending you instructions for how to access our private repo - you can submit your PRs there, and it will provide a better experience, staging, validation, etc...
I will go ahead and get this one moved into the private repo and we can review it there


🐞 deleteConfimartion alert shows incorrect count when deleting a nested folder

Description
When I was working on #1694, I noticed that the deleteConfimartion alert shows incorrect count when deleting a nested folder. This happens on the main branch.
It can resolved by scanning the directory recursively instead of doing a shallow search. fileManager.contentsOfDirectory is currently used to retrieve file count
To Reproduce

Open a project in CodeEdit
Right click a nested folder
Click on Delete

Expected Behavior
Should show the correct number of items that are going to be deleted
Version Information
CodeEdit:  0.1.0-alpha
macOS: 14.4.1
Xcode: 15.3
Additional Context
No response
Screenshots

working on this

Oh sorry, I did not write that I worked on the bug. I wanted the linked PR to be focused on one thing only, so I was waiting on it being merged or closed


doc: switch to Furo.

About
This pull request is about changing our theme on the documentation website to go from Karma to Furo, which addresses numerous concerns raised by the community:
Lack of theme picker (dark/light)
Inability to view source code
Search bar poorly functional with automodule usage
Current theme has colors uncomfortable to the eye
Inability to permalink to a method, class or attr
Cannot preview attr/arg types when hovering (hover refs)
Checklist

[x] I've ran pre-commit to format and lint the change(s) made.
[x] I've checked to make sure the change(s) work on 3.8.6 and higher.
[x] This fixes/solves an Issue.

(If existent): #615

[ ] I've made this pull request for/as: (check all that apply)

[x] Documentation
[ ] Breaking change
[x] New feature/enhancement
[ ] Bugfix

This PR will remain as a draft until further notice. Rewriting all of the documentation was planned alongside the switch to Furo, due to a lack of context in a lot of areas. Simply put, this PR may take an additional month or two.

Picking back up on this PR now after checking priority queue. I will mark this as ready for review when complete and begin the error handling enhancement afterwards.


acceptance tests: update Jira version to current LTS release, 8.13.4

Update Jira version to current LTS release, 8.13.4.
Needs #340 for tests to pass.

Closing in favor of 496b9d8 in #334.


Add documentation

this really referred to adding a README as the initial commit had nothing.   Docs are ongoing, so closing this.


[WIP]Users guest will be able to view

PR Statement :
Overview :
Zulip’s Invite users modal, when inviting guest users, there is a missing informational message that should appear in specific cases
. The issue arises when:

Guest role is selected, and
Guests are restricted from viewing all other users.
In this scenario, the system should display a note below the channel selection input, informing the inviter how many users the guest will be able to see in their subscribed channels. The message should live-update based on the channels and user roles selected, giving an accurate count.
PR will do the following:
Add the Informational Note: Insert the note below the channels input field when the guest role is selected and the organizational setting for guest visibility is active.
Link to Documentation:The note should include a link to the relevant help documentation on guest user visibility: /help/guest-users#configure-whether-guests-can-see-all-other-users.
Real-Time Updates: Implement live updates to the number {N} based on any changes in the invite modal, such as altering channel subscriptions or user roles.

Fixes:  https://github.com/zulip/zulip/issues/31159
Details
Workflow

Frontend: Modify the template that renders the invite modal.
The following files :
static/templates/invite_users.hbs (if the modal HTML is here)

Backend: Backend logic may need to be adjusted to pass the number of users visible to guests to the frontend modal. This will ensure the {N} value in the note is dynamically updated.
zerver/views/invite.py

Live-Update Logic:
Any live updates (e.g., dynamically changing the number of users when modifying channels) should likely be handled via JavaScript, ensuring that the message updates in real-time as users and channels change.

##[WIP]
Find and update frontend templates and look for files that change output dynamically
test the changes locally

Welcome and thanks for working on this @shubhamsugara22! I think this implementation isn't on a good path. I'd also suggest you re-read our guides on how to write a good pull request, and look at the PR descriptions of a dozen PRs that have been merged recently; the communication here is very hard to follow.


feature/STADTPULS 405/mirror staging to production

STADTPULS-405: test: Remove test.only
STADTPULS-405: housekeeping
STADTPULS-405: feat(mirror): Scripts 4 mirroring prod to staging
STADTPULS-405: fix: Call function with schema prefix
STADTPULS-405: feat(cli): Add CLI for setting variables

@dnsos @vogelino Not sure if you want to review this. It's just some shell scripts with and docker calls.


Weird output when using quotes in chat.

Whenever I use quotes ("), the output in MPV gets like this: https://i.fiery.me/FPFIP.png
In the normal client is looks fine.
This issue came ever since I updated to the new version of Syncplay.

This has been addressed in 1ad10632c6f027f8de74bcf211b4bf872c5e2678. You will have to build Syncplay yourself or wait until the next release (which will include the fix).

This has been addressed in 1ad1063. You will have to compile Syncplay yourself or wait until the next release (which will include the fix).


mint PID's for ANU Departments.

Pull departments from anuthesis.csv in the Author Affiliation column.

Departments pulled out. low quality at this point but requires better source data for improvement.


[Feature]: support LocalAI backend

Is this feature request related to a problem?
None
Problem Description
No response
Solution Description
support  localai.
Benefits
The LocalAI can make it easier for users to interact with KRS.

@OluchukwuON

@OluchukwuON --> Find target open sourced models that can perform the task of log analysis and respond back. Search huggingface for target models.
Criteria:

They should be under 4 GB in size
They should be able to understand Kubernetes context to respond with resolutions
They should be chat models that can respond

Tasks:

List all candidate models in a csv file with their size, and urls from huggingface
Create a list of 10 sample questions with faulty Kubernetes Pod logs that you will use to benchmark these models
Test all these models using the questions by creating end points on cloud instances provided by @karanveersingh5623 one by one using either langchain, TGI or tensorflow serving.
Record the individual model responses for all the 10 questions, and record the execution time for each question inside a spreadsheet, the target is to find the WPS speed of each model (word per second) when deployed locally.


allow usage of required vars for external guns

Codecov Report

Merging #561 (f57aa35) into main (03e5c4e) will increase coverage by 0.21%.
The diff coverage is 76.78%.

@@            Coverage Diff             @@
##             main     #561      +/-   ##
==========================================
+ Coverage   49.18%   49.40%   +0.21%
==========================================
  Files          15       15
  Lines         923      927       +4
==========================================
+ Hits          454      458       +4
  Misses        446      446
  Partials       23       23

Impacted Files
Coverage Δ

loadgen/instance_ws_mock.go
0.00% <0.00%> (ø)

loadgen/instance_sleep_mock.go
56.66% <60.00%> (ø)

loadgen/loadgen.go
86.93% <86.95%> (+0.15%)
:arrow_up:

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


gto_evaluate for spinor basis

Dear pyscf developers,
I'm having some trouble to understand some basics about the gto_evaluate function. I'm performing some tests with the very simple H2 molecule with the contracted STO-3G basis set (only 2 s-type AOs).
First, I get the coefficients of the molecular orbitals through
mf_rel = scf.DHF(mol)
mf_rel.kernel()
mf_rel.mo_coeff

and I extract from there only the coefficients corresponding to the L (from large) block and then extracting only the occupied orbitals of positive energy:
n4c, nmo = mf_rel.mo_coeff.shape
n2c = n4c // 2
nNeg = nmo // 2  # molecular orbitals of negative energy
nocc = mol.nelectron

mo_pos_l = mf_rel.mo_coeff[:n2c, nNeg:]
Lo = mo_pos_l[:, :nocc]

Then, I want to get the overlap matrix in spinor basis, evaluated at a certain coordinate (so in fact is not the overlap matrix but correspond to let's say its counterpart).
The point is that when calling to gto.eval_gto I get:

if "str" is "GTOval_sph": a tensor of shape (1,2)
if "str" is "GTOval_spinor": a tensor of shape (2,1,4)

I cannot fully understand the last one. I was expecting to get something of shape (1,4)
Afterwards, I need to get the expectation value of a "fermi-contact" type operator. If I proceed as follows, I get the correct result (but I need help on understanding what I've pointed out).
from numpy import matmul as mm
from numpy import transpose as tp

ao_spinor = gto.eval_gto(mol,"GTOval_spinor",coords,comp=1)
ao_spinor_L1_column = ao_spinor[0,0,:].reshape(1,-1)
ao_spinor_L2_column = ao_spinor[1,0,:].reshape(1,-1)

ao_fc_spinor_L1 = np.einsum('ip,iq->pq', ao_spinor_L1_column.conjugate(), ao_spinor_L1_column)
ao_fc_spinor_L2 = np.einsum('ip,iq->pq', ao_spinor_L2_column.conjugate(), ao_spinor_L2_column)

L1_sum=0
L2_sum=0
for k in range(ocupacion):
   L1_term = mm(mm(tp(Lo).conjugate(), ao_fc_spinor_L1), Lo)[k, k]
   L2_term = mm(mm(tp(Lo).conjugate(), ao_fc_spinor_L2), Lo)[k, k]
   L1_sum =L1_sum + L1_term
   L2_sum = L2_sum + L2_term
correct_result = L1_sum + L2_sum

The last thing I'd like to point out is that if I call to dhf.get_ovlp I get a (8x8) matrix, so that the up-left block correspond to the L integrals and its shape is (4x4) - what I'm trying to construct is that block but no performing the integrals but evaluating the atomic functions at a certain coordinate.
Any clarification about this all would be very helpfull
Thanks in advance,
Juan J. Aucar

The leading dimension in  shape (2,1,4) for GTOval_spinor means the spin-up and spin-down parts in the spinor. The DFT numerical integration code https://github.com/pyscf/pyscf/blob/master/pyscf/dft/r_numint.py#L108 is an example of the data structure

Dear Qiming Sun,
Thanks for the very quick reply.
Can you please clarify why if I call to
dhf.get_ovlp
I get a 8x8 (array) while for
 eval_gto("GTOval_spinor")
I get that (2,1,4) array? I mean... in the latter case I get 8 coefficients related to the large components while for the first case the large block contains only 4 related coefficients (so that we get a 4x4 block)
Thanks!


Syntax highlighting vanished in the 11-lsp branch?

This series has been really helpful for me. Thank you very much.
One thing that is confusing me is that syntax highlighting seems to have vanished in the first LSP branch (11-lsp), and I haven't been able to work out what's changed. It does come back in 12-lsp2, if that helps any.
Thanks again,
Grant

For whatever it's worth, I do get syntax highlighting back if I disable coq.

Fixed this in this commit - Fix coq.nvim

I have the same problem with the main branch


Link of the website on about section

The current "about" section of the project does not include a link to the website. As a contributor at GSSOC'23, I propose adding a website link to the "about" section and hosting the website to make it easily accessible to users.

Please assign this issue to me I would like to host this website and add in about section so that it is easy to  access for all.


Add Medplum implementation

Adding Medplum, hope I did this right, kindly let me know if there are any necessary changes.
Thank you! 🙏

This is great news @codyebberson, thanks for getting involved and contributing this!
Would you be interested in coming along to our meeting and sharing what you have done, and some info on the intended use case?
We meet every Tuesday 3pm US Eastern time.

Great, thanks!

Would you be interested in coming along to our meeting and sharing what you have done, and some info on the intended use case?

Yes, of course.  I think I found the Zoom link.  I'll talk to you on Tuesday.


Widget refresh button

Suggested new feature or improvement
It would be nice if I could have a refresh button for my GitHub issues and other dashboard widgets.
Scenario
In the morning I open Dev Home and hit refresh on my GitHub Issues button letting me know all the tickets shown there are up to date and I'm not missing anything.
Additional details
Having this feature would allow me to get a sense of my day without needing to open a browser or the app and viewing each projects dashboard.

I'd push this even further - widgets should auto-refresh regularly. GitHub offers webhooks that could be wired up if things are updated.


metrics: revisit naming of metrics

e.g.

all metrics should begin with rw_compute_ or rw_meta_
metrics should end with unit write_bytes write_kb etc.
accumulate metrics should end with total

https://prometheus.io/docs/practices/naming/

I've marked the PR as "good first issue" and "help wanted".


passpie --version: Please install this project with setup.py or pip

Hello,
I'm trying to use passpie on my debian testing and I cannot use pip --version:
$ python --version
Python 2.7.9
$ virtualenv passpie
$ source passpie/bin/activate
(passpie)$ pip install --upgrade https://github.com/marcwebbie/passpie/tarball/master
(passpie)$ which passpie
/home/jbd/tmp/passpie/bin/passpie

pip --version does not work :
(passpie)$ passpie --version
passpie, version Please install this project with setup.py or pip

Hello @jbd
Did you manage to get passpie running? Is passpie --version the only trouble you experiencing?
Could you tell me what is the output of the following commands:
which python

and
echo $PATH

All clear now :
passpie, version 0.1.2
$ pip install -U passpie^C
$ which python
/home/jbd/tmp/passpie/bin/python
$ which passpie
/home/jbd/tmp/passpie/bin/passpie
$ passpie --version
passpie, version 0.1.2

Perfect then. :smile:
Thanks for your contribution.


Add textbook manifesto to reading hacks - which books should I choose.

http://greenteapress.com/wp/textbook-manifesto/

https://github.com/dimitrismistriotis/dimitrismistriotis.github.com/compare/master...reading_hacks_updates?quick_pull=1


DPS Rating for uniq items in list like for gems

Now we have dps rating for support gems in search list.
Can you add this dps rating in search list for uniq items too?
and maybe u can add close range count in effective dps configuration) thanks

You can do this already:  Just change "Sort by name" to "Sort by DPS" at the top of the unique list.


Reimplement on swift-nio-http-client

Now that https://github.com/swift-server/swift-nio-http-client has been released, we should experiment with re-plumbing this package so that it uses swift-nio-http-client for transport instead of URLSession.

Basically RestRequest   dealts with HTTP requests in SwiftyRequest  and uses URLSession of foundation . So , the goal of this workitem is to re-factoring the code to use   swift-nio-http-client  instead of URLSession.

A prototype of SwfityRequest using the renamed async-http-client has been developed on the issue.nio branch.
This branch no longer depends on URLSession and uses the nio client instead.
This would be a breaking change since it is only supported on Swift 5.
The following changes to API have also happened:

RestError.swift has been added as an extensible struct
All JSON code has been removed and replaced with Codable
HTTPMethod.swift has been removed and replaced with the NIOHTTP1 HTTPMethod
headerParameters has changed from a [String:String] to HTTPHeaders
response() now returns Result<HTTPClient.Response, Error> instead of (Data?, HTTPURLResponse?, Error?)
RestResponse now represents an HTTPClient.Response that is generic over the body instead of an HTTPURLResponse with the result of the body.
Credentials input has been converted to be an extensible struct
RestRequest initializer now throws in the case of an invalid URL
Client Credentials have been removed since they were not working anyway.

The tests have been updated for the new API. They Pass on MacOS but the project is currently failing to compile on Linux.
The RestRequest pattern of stating the type you expect when you make the request is a bit strange. Before we release this it might be worth looking into having a single RestRequest.response() but have helper functions on the body for decoding to the expected type.

Update: Andy fixed the compilation on Linux, so there's nothing blocking this.

Client Credentials have been removed since they were not working anyway.

This could be fixed by passing in a NIO TLSConfiguration.

Support for client credentials was requested in #57, so we should definitely consider implementing it as part of this rework.

The current prototype no longer compiles because of https://github.com/swift-server/async-http-client/commit/e64448e1eff26022040ca587c0e637a05e82aa7d (HTTPClient.Request properties are now let constants).  It'll need some rework as it's no longer a direct translation of what we did with URLSession.


Upgrade TensorFlow To 2.4.0

Closes #355.
Signed-off-by: NaNAGISaSA<EMAIL_ADDRESS>

TF breaking changes in 2.4: https://github.com/tensorflow/tensorflow/blob/fda99ee4f1361ff2ac33815b83ea2a482660bc50/RELEASE.md#breaking-changes

Now when build for TF serving gpu, an error occurred:
/usr/bin/ld: bazel-out/host/bin/external/org_tensorflow/tensorflow/stream_executor/cuda/libcublas_plugin.lo(cuda_blas.o): undefined reference to symbol 'cublasLtMatmulPreferenceCreate@@libcublasLt.so.11'

Seems to be a bug for tf serving, wait for tf 2.4 and tf serving 2.4 to be released.

According to the official website, there is a limitation of 10G for a job

@shiyingjin @EFanZh  This PR need to be carefully reviewed

bors r+

bors r+


Add go.work.sum to .gitignore

go.work.sum is no longer under source control. Adding it to .gitignore to prevent it from being re-committed.

@aharter why the update?

Force of habit, @ringods. I rebased the PR to main and got distracted.


move notebooks

We should move all .ipynb files into the /notebooks/ folder.
git-bob think about this

This message was generated by git-bob (version: 0.2.8, model: gpt-4o-2024-08-06), an experimental AI-based assistant. It can make mistakes and has limitations. Check its messages carefully.
Sub-issues have been created:

#221

There are two ipynb notebooks in the "scripts" folder: "license_statistics.ipynb" and "tag_statistics.ipynb". Move them to the "notebooks" folder.


Finding wrong changelog for crate in subdirectory

Package ecosystem
cargo
Package manager version
N/A
Language version
N/A
Manifest location and content prior to update
N/A
dependabot.yml content
N/A
Updated dependency
An example is deadpool-postgres
Which has its changelog in https://github.com/bikeshedder/deadpool/blob/master/postgres/CHANGELOG.md
A dependabot pull finds this changelog instead https://github.com/bikeshedder/deadpool/blob/master/CHANGELOG.md

Package ecosystem
cargo
Package manager version
N/A
Language version
N/A
Manifest location and content prior to update
N/A
dependabot.yml content
N/A
Updated dependency
An example is deadpool-postgres
Which has its changelog in https://github.com/bikeshedder/deadpool/blob/master/postgres/CHANGELOG.md
A dependabot pull finds this changelog instead https://github.com/bikeshedder/deadpool/blob/master/CHANGELOG.md

Closing as stale


Is there an equivalent to azure webapp publishingprofile show?

I actually just received some advice from someone at MS at this SO answer: http://stackoverflow.com/a/42618496/128991
Unfortunately, his example seems to use the azure command, not az and I'm not able to find an equivalent in az.  What I'm looking for is the kudu upload URI.

@atrauzzi : You are right this is not exposed yet. Per the stack overflow link you have a somewhat equivalent in az "az appservice web deployment list-site-credentials". Will that not work?
Adding @yugangw-msft to comment as well.

@atrauzzi if you like to get FTP endpoint info, then the existing commands are not sufficient.  I will figure something out to let you get those.

@yugangw-msft - FTP or the kudu PUT endpoint would be fine. Ideally both, just so that I have the option to fall back to the other if it doesn't pan out.
Thanks! :)


fix: hide lang picker

TL;DR
Commented out the LanguagePicker component in the Header.
What changed?
The LanguagePicker component within the Header has been commented out. This change affects the display of language selection options in the header of the website.
How to test?

Navigate to the website's header section.
Verify that the language picker is no longer visible.
Ensure that other header elements, such as the theme toggle and RSS feed (if applicable), are still present and functioning correctly.

Why make this change?
This change was likely made to temporarily disable or remove the language selection feature from the header. Possible reasons could include:

Simplifying the user interface.
Preparing for a different language selection implementation.
Removing a feature that is no longer needed or supported.
Troubleshooting issues related to the language picker.

Further context from the development team would be helpful to understand the specific motivation behind this change.

#133  👈
development

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @Hessuew and the rest of your teammates on  Graphite

Merge activity

Oct 23, 6:13 PM EDT: A user merged this pull request with Graphite.


unused import in cleverhans.utils_tf

from keras.backend import categorical_crossentropy
check if needed and remove

closed in #95


Low volatile GPU-Util but high GPU Memory Usage

When I run MLP.py ,GMF.py or ,NeuMF.py with my GPU (GTX 1080), the memory of which is fulled while the volatile GPU-Util are always around 20%. And the time-spending with GPU is slower than CPU (intel i5)。
I guess the problem are caused by
        # Training
        hist = model.fit([np.array(user_input), np.array(item_input)], #input
                         np.array(labels), # labels
                         batch_size=batch_size, epochs=1, verbose=0, shuffle=True)

in the codes of above, np.array(user_input), np.array(item_input),np.array(labels) is runing on the CPU but GPU.
Therefore, the useage of GPU-Util can not raise.

@deipss any suggestions on how to solve this issue? I came to the same realization and am trying to find a work around. Any help is much appreciated!

I have experienced the same slower training times with a GPU. Investigating the execution with py-spy, it seems that a big chunk of the training time is spent building user_input, item_input and labels.


Firefox: Support userContent CSS

Greetings, first PR here :)
userContent.css is similar to userChrome.css, it's a CSS file that you can use to change the way websites and e-mails look.
You can also use it to do things like hide your scrollbar or apply a theme to extensions like uBlock Origin.
See: http://kb.mozillazine.org/index.php?title=UserContent.css
userContent Example: https://github.com/jeremyperkin/FireFox-uBo-rice

Thanks! Rebased to master in 2681568f2b1278b4265b9c46b87e9583145facaa with a few cleanups.


For Wales_Composite - double check if there are supporting documents in that folder.

Check how we mock the Wales-Composite folder. Check there aren't any unusual page structures stored in there.

Done. The page links to a WA_Transucers file, so we've included an example of that.


Feature: HuoguoML pipeline

Is your feature request related to a problem? Please describe.
TFX requires too many dependencies. I want to have a generic component system
Describe the solution you'd like

Implement components

from huoguoml.pipeline.component import BaseComponent
class ComponentA(BaseComponent):
    ...

class ComponentB(BaseComponent):
    ...

a = ComponentA(....)
b = ComponentB(input=a.hallo)

Implement pipelines

from huoguoml.pipeline import Pipeline

pipeline = Pipeline(components=[a, b],
                                name=my_pipeline,
)

Implement pipeline runner for

Airflow
Dagster

from huoguoml.pipelines.runner import DagsterRunner
...
DagsterRunner(pipeline)

from huoguoml.pipelines.runner import AirflowRunner
...
AirflowRunner(pipeline)

.take


Hotfix for #98

It adds space before key name to prevent matching other words, so device doesn't match lines beginning with output_device, etc. This happens only on Raspberry Pi, because only there the config variable device gets set.
It's kind of a silly fix, but it seems to work fine.
@alexa-pi/coreteam Please have a look at this ASAP. Thank you.

@alexa-pi/coreteam I'm giving a 1 week deadline for objections / comments starting now and then I'm gonna merge it, because it's a one-line hotfix for an issue that can confuse new users a lot.

Finally got to this.  Yep.  It works on the Raspberry Pi.
Thanks!

Great!


:sparkles: Remove time elements from next twitch stream component and localize time with EF

Hello! This is a comment on the PR.
Browser metadata
Path:      /
Browser:   Chrome <IP_ADDRESS> on Mac OS 10.15.7
Viewport:  1920 x 917 @1x
Language:  en-US
Cookies:   Enabled

Open in BrowserStack

Open Deploy Preview · Mark as Resolved


Maybe handle SIGINT?

I'm not sure (still sleepy :D) but maybe you should catch SIGINT and pass that through to the children, then e.g. wait for them to handle it and die. You could prompt the user to ^C another time if he wants to not wait and instead send SIGTERM to the children.

:+1:  but it would be nice to have an option for the --kill-others flag to do the same - pass SIGINT to the children and then only SIGTERM after the kill delay.
For example: I start up an http server and run tests -  concurrent -k http-server protractor - the tests succeed (exit 0) and so concurrently sends SIGTERM to http-server (exit 143) and returns a final exit code of 1 as if the tests had failed :frowning:
For my case, I was originally thinking of a new option to return the first exit code as the ultimate exit code.  I might make a separate issue or PR for that, but I think this would also fit the bill.

Well, according to your comment, I have something that would solve the problem. You might define "-k -s last". In this case, you are saying to the script just take into account the last child process' exit code status.
What I am facing is a bit different. Using this option concurrently is sending "--> Sending SIGTERM to other processes..", but it hangs there without exit it properly.

Does it still hang without the --status flag?  I would think it has no effect, and the process simply isn't responding to SIGTERM, but maybe I'm overlooking something.

SIGINT is now passed to children: https://github.com/kimmobrunfeldt/concurrently/pull/43. Will be released as 3.0.0.
For now, you can test this by installing 3.0.0-dev version: npm i -g<EMAIL_ADDRESS>


Add build test for mybinder

Codecov Report

:exclamation: No coverage uploaded for pull request base (v4@5901eb2). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Current head c27b10f differs from pull request most recent head 6fd3c13. Consider uploading reports for the commit 6fd3c13 to get more accurate results

@@          Coverage Diff           @@
##             v4     #1037   +/-   ##
======================================
  Coverage      ?   100.00%
======================================
  Files         ?        35
  Lines         ?      2464
  Branches      ?         0
======================================
  Hits          ?      2464
  Misses        ?         0
  Partials      ?         0

Well I am not sure I should merge this given that the job always passes regardless if the build fails or not. :(


Add is_alive

Solves https://github.com/napalm-automation/napalm-eos/issues/88

Coverage increased (+0.05%) to 80.074% when pulling 68dd3a8eb6938023ffda6acce4dc6f02f1362679 on mirceaulinic:IS-ALIVE into 0f164038935bfeaa7af5d455139ac99cb7e09c0d on napalm-automation:develop.

Don't forget to document this ;)
We really need to automate that process : (


Have project icon colors represent a gradient

Use sass's mix color function to scale the color between two depending on it's position in parent.

Closed with 755d543fa4848ba3c2d6ab2e359078ed9eaea186


[audit] keccak256_combine is not a safe generic hashing function

Severity: Informational
Difficulty: Not Applicable
Type: Cryptography
Target: crates/pessimistic-proof/src/keccak.rs
Description
The function keccak256_combine, shown below, returns a hash of an array of values.
https://github.com/agglayer/agglayer/blob/d9d33885b6a396a69f57054d7b549edc6ca1ef51/crates/pessimistic-proof/src/keccak.rs#L40-L54
Although it is generic over the type parameter T, keccak256_combine is not guaranteed to be collision-resistant for sequences when T has values with different byte-lengths, due to ambiguous encodings. For example, the following test, where T is Vec<u8>, fails:
#[test]
fn test_keccak256_combine_collision() {
    assert_ne!(keccak256_combine(vec![vec![0,1],vec![2]]),
               keccak256_combine(vec![vec![0],vec![1,2]]))
}

This construction is an example of the YoloMultiHash ad-hoc hash construction, which is unsafe when fields of the data structure can overlap, thus leading to hash values for semantically different inputs.
We have not discovered any current uses of keccak256_combine in the pessimistic-proof crate which are vulnerable due to this issue. Most inputs are implicitly protected because they have fixed lengths. For example, the BridgeExit hash has a fixed input length of 85 bytes, even though it uses keccak256_combine where T is the variable-length type [u8]
https://github.com/agglayer/agglayer/blob/d9d33885b6a396a69f57054d7b549edc6ca1ef51/crates/pessimistic-proof/src/bridge_exit.rs#L101-L112
Recommendations
Short term, review all use of keccak256_combine to ensure unambiguous encodings. Consider modifying keccak256_combine to generically ensure unambiguous encoding. For example, by restricting T to fixed-size types or prefixing each entry with its length.
Long term, consider adopting standard schemes for hashing structured data, e.g. TupleHash.
References
“YOLO” is not a valid hash construction

Added a comment regarding the safety of keccak256_combine in #256.
I don't think we'll ever need to hash variable length data in this crate, so I think it's fine to keep keccak256_combine as is and just make sure it's always used safely.


WIP: Media/remove attachment too deep

@dvoytenko Can you provide some context, detail and issue for what this PR is for. Thanks.

This was a test pull requests that turned into this: https://github.com/google/web-stories-wp/pull/908. But basically I just cleaned up the shapes of a few objects. E.g. removed "oWidth" and "oHeight" and such.


[WIP]: using fallback values insteead of explicit declarations

Only a POC to check if using fallback values instead of explicit custom properties declarations could save bytes.
The rationale to switch to fallback values or not is the number of occurrences: (,  + value) × n occurrences should be longer than the whole explicit declaration. I did not count it for now but that should IMHO be the decision tree.
The only exception would be font-sizes since RFS could behave differently depending on the value. Using its output as a fallback isn't safe.
Let's check Bundlewatch, now :D

Comparing main with both branches.

File
css-vars-tooltips
current branch

bootstrap.css
+407B
+364B

bootstrap.min.css
+391B
+331B

There's a noticeable gain using fallback values, but is it enough to reconsider current branches' approach?


Add citation file.

I suggest adding citation in CFF format. Then the "cite this repository" button will behave nicer: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files
Important: don't forget type: article in CFF, otherwise bibtex entry will be software rather than article.

How about we keep it as-is? The citation button supports BibTeX too - CFF is not the only choice. See for instance my thesis repo. From a user's point of view, almost everyone in machine learning uses BibTeX, so CFF is a less-optimal format in our situation.

so CFF is a less-optimal format in our situation

I disagree. Take a look at this repo, for example. If you click "Cite this repository', there's both a quick APA-style citation and a bibtex entry to copy, without the need to load a separate page.
If you don't want to bother, I can do this myself in two days.

I also disagree. On that page, it requires more clicks for the user to get the bib entry. It also makes it more difficult for the user to get the citation directly from the package's source rather than from the GitHub website. Using .bib seems cleaner.

I can't believe this is so difficult 🫤.

On that page, it requires more clicks for the user to get the bib entry

No, there you click "cite this repository", then "BibTeX". It's 2 clicks.
With .bib file, you click "cite this repository", then "View citation file", then wait for a webpage to load. It's 2 clicks + page load. If you mean clicking on CITATION.bib in the tree, remember that you can always just copy the citation from README, which is zero clicks away, and also is right there in the package's source.
In any case, if you want to have a .bib file in the tree, we can keep it, but I think it makes all the sense to create a CFF to improve the UX of the "cite this repository" button. Granted they can co-exist.


GA ping should be disabled when offline

Original report: https://github.com/iopipe/iopipe-js/issues/23

Trying to work offline locally (no internet connection ... caltrain), i couldn't hit my functions because Google Analytics dns lookup fails.

I tried setting iopipeNoStats in serverless.yaml but there seems to be a code issue (i ended up just removing iopipe temporary to work).

Easy to reproduce by turning off your Internet connection and run with serverless offline.

Related to #65


Cannot properly make use of 'status' in a cmd script

Expresso status works very well, but cannot really be used in a script.
Rather than returning a full sentence, it would be great if it could return a simple boolean value of 0 or 1.
Suppose the user needs first of all to find out whether the VPN is connected.
In a simple batch script in cmd language, it is a pain to break apart the sentences "VPN connected to server" or "VPN not connected", to figure out their actual value.
I understand the full sentence actually comes from ExpressVPN, not by Expresso.
Still, is there any way to get status to return a machine-readable value?

You can very easily use expresso in a PowerShell Script. I have created a PowerShell script which attempts a reconnection to ExpressVPN every single time Windows fires a Network Disconnected event.
Check-VPNConnection.ps1:
$output = & expresso.exe status
Write-host $output
if ($output -ieq "VPN not connected") { expresso connect 'UK - Wembley' }

I then configure a Windows Task as follows:

Arguments: -NonInteractive -File "C:\Tools\scripts\check-vpnconnection.ps1"


Question about the HASH_CTX structure

Hello, recently I'm reading the SHA256 implementing in openssl
However, I have some question, and Googled them without any solution.
at https://github.com/openssl/openssl/blob/e670e90319b902de528db0d22d7197b5de1f4891/crypto/include/internal/md32_common.h#L31
the Nl,Nh; are defined, and without any initiate. at
https://github.com/openssl/openssl/blob/e670e90319b902de528db0d22d7197b5de1f4891/crypto/include/internal/md32_common.h#L256
c->Nl are used.
about L256-L259, I'm confusing about this.
What HASH_LONG       Nl,Nh; in HASH_CTX?

Nh and Nl hold the total message length in number of bits.  Nh is the higher half, Nl iss the lower half.  It's made this way to allow 64 bits to be stored on L32 architectures.
This length is needed for the final padding (see HASH_FINAL)


Study the cancer sim

This cancerSim comes from 2020, despite that deserves a little time to check it out.
https://github.com/mpievolbio-scicomp/cancer_sim

updating data


buffer length exceeds 64

Which version are you using?
v1.2.0
Which operating system are you using?

[ ] Linux amd64 standard
[ ] Linux amd64 Docker
[ ] Linux arm64 standard
[x] Linux arm64 Docker
[ ] Linux arm7 standard
[ ] Linux arm7 Docker
[ ] Linux arm6 standard
[ ] Linux arm6 Docker
[ ] Windows amd64 standard
[ ] Windows amd64 Docker (WSL backend)
[ ] macOS amd64 standard
[ ] macOS amd64 Docker
[ ] Other (please describe)

Describe the issue
I could not open the stream from VLC. RTSP server outputs closed: buffer length exceeds 64 whenever a try happened from VLC. I also have another container open reaching the rtsp stream over script and it does work.
Describe how to replicate the issue

start the server
publish with /main endpoint
read with VLC

Did you attach the server logs?

Nothing different with debug log level
Did you attach a network dump?

no

I was trying to access it over https rather than rtsp. that was the problem. check your protocol


Update bti.py

_read_channel() had 'off_flag' string length deviating from
struct dftk_channel_ref_data in 4D/BTi's $STAGE/map/src/include/dftk_channel_ref.h
which can lead to errors in read_raw_bti(), cf. #6048
Thanks for contributing a pull request! Please make sure you have read the
contribution guidelines
before submitting.
Please be aware that we are a loose team of volunteers so patience is
necessary. Assistance handling other issues is very welcome. We value
all user contributions, no matter how minor they are. If we are slow to
review, either the pull request needs some benchmarking, tinkering,
convincing, etc. or more likely the reviewers are simply busy. In either
case, we ask for your understanding during the review process.
Again, thanks for contributing!
Reference issue
Fixes #6048.
What does this implement/fix?
Adjust  'off_flag' string length to reflect 4D/BTi's char off_flag[4]
in struct dftk_channel_ref_data of $STAGE/map/src/include/dftk_channel_ref.h
(and adjust following seek())
Additional information
Any additional information you think is important.

@ebeich you appear to have created a PR from a branch in your fork to a branch in your fork (as opposed to: from a branch in your fork to a branch in the upstream mne-tools repository). I'll cherry-pick this commit in an upcoming BTi PR.


Writing JSON file after DSP register inference

This PR fixes https://github.com/google/CFU-Playground/issues/499 by writing JSON again under the same name after DSP register inference.

@alanvgreen @danc86 @davidlattimore we should make sure this optimization (Yosys plugin dsp_ff) is integrated into hps firmware.   #490 is the main PR, this is a follow-on fix.   Contact me for more info.


Checkpoint jdec.pth cannot be loaded. Corrupt file?

It looks like the uploaded jdec.pth file is corrupt (broken).
I downloaded it TWICE and the hashes are as follows:
$ md5sum jdec.pth
05ffce5ead865671a0049ff8ffe2ca06  jdec.pth
$ sha256sum jdec.pth
521ac625796f40fe51ad4c56ee179e3a8e813a3b5c75d6b7fc9ad4796fa32f91  jdec.pth
$ file jdec.pth
jdec.pth: Zip archive data, at least v0.0 to extract, compression method=store
$ ls -lh jdec.pth
-rw-r--r--. 1 johnny johnny 215M Oct 18 08:24 jdec.pth

I try to run JDEC's test.py with model_path = './jdec.pth'
Result:
$ python test.py
Traceback (most recent call last):
  File "test.py", line 34, in <module>
    model_spec = torch.load(model_path)['model']
  File "/home/johnny/.local/share/miniconda/envs/jdec/lib/python3.6/site-packages/torch/serialization.py", line 600, in load
    with _open_zipfile_reader(opened_file) as opened_zipfile:
  File "/home/johnny/.local/share/miniconda/envs/jdec/lib/python3.6/site-packages/torch/serialization.py", line 242, in __init__
    super(_open_zipfile_reader, self).__init__(torch._C.PyTorchFileReader(name_or_buffer))
RuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory

The "central directory" is where zip files store the list of files. So the error indicates to me that the PTH file is broken.
So I checked it with 7zip to test pth zip/pickle integrity. And it also says that the PTH file is broken. (PyTorch uses ZIP format since v1.6, so that's why I decided to check it with a zip extractor.)
$ 7z t jdec.pth

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,16 CPUs AMD Ryzen 7 7800X3D 8-Core Processor            (A60F12),ASM,AES-NI)

Scanning the drive for archives:
1 file, 225181696 bytes (215 MiB)

Testing archive: jdec.pth

ERRORS:
Unexpected end of archive

--
Path = jdec.pth
Type = zip
ERRORS:
Unexpected end of archive
Physical Size = 225181696

Archives with Errors: 1

Open Errors: 1

"Unexpected end of archive" means that the file is truncated (missing data/has been cut in half).
It seems like the jdec.pth needs to be uploaded again. Maybe share it to Huggingface? It's much better than Google Drive. :) At Huggingface people can see the checksum/hashes and do easier installation.

I've now compared JDEC.pth against other AI project's PTH files. The other files successfully pass 7z t <file.pth> check and verify "Everything is OK".
So yes it's confirmed that JDEC.pth is a broken file. Would love if you can share it to Huggingface instead. :)

Agreed on the above, same md5 and same issue unfortunately. Would love to test your project, like it was said, if you can upload the checkpoint somewhere or double check the uploaded file in GDrive that would be great!

I just re-uploaded the model checkpoint, and I will finish hugging face work soon. Thank you for waiting and again thanks for your attention too.

@WooKyoungHan Thank you, the new checkpoint is valid:
$ 7z t jdec.pth

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,16 CPUs AMD Ryzen 7 7800X3D 8-Core Processor            (A60F12),ASM,AES-NI)

Scanning the drive for archives:
1 file, 479446181 bytes (458 MiB)

Testing archive: jdec.pth
--
Path = jdec.pth
Type = zip
Physical Size = 479446181
64-bit = +

Everything is Ok

Files: 2038
Size:       479062572
Compressed: 479446181

$ md5sum jdec.pth
s3934878830361233535feba6f62b20c1  jdec.pth

$ sha1sum jdec.pth
5fa72791c516d8d6331993479818731ae8dd463a  jdec.pth

I also needed the #5 patches to be able to run the code. Let's continue discussion there.
I look forward to the model being on HuggingFace! :)


Make this build in VS15.2. Remove remaining references to DelegateCommandHack.

VS15.3 did not have problems with new DelegateCommand(async () => SaveAsync);
In 15.2 it doesn't build. So it becomes new DelegateCommand(async () => await SaveAsync());

#19 and fixes #20 and commit fa34c74e39cf80d9b9761f2ba0a92af4a344e9d7 as it doesn't build.


SBT 1.3.0 causes resolution errors with 0.18

After updating to sbt 1.3.0 the resolver didn't work. If you turn off coursier, it seems to work again.
Adding ThisBuild / useCoursier := false to the build is what I did.
For clarity, I have an s3 resolver like so resolvers += "ICL S3".at("s3://maven.XXXXXXXXXX.com/releases")  which works on sbt 1.2.8, but not 1.3.0. Not sure if something needs to change in here or if it's a bug in SBT.
cc/ @eed3si9n

Yup, I ran into this when I tried to upgrade my projects to sbt 1.3.0 and need to look into it.  It appears to be partially working in the sense that I see S3 Clients being created and it seems like it is maybe downloading stuff from S3 but I'm seeing some "No modified time in response" messages.  So perhaps additional support in https://github.com/frugalmechanic/fm-sbt-s3-resolver/blob/master/src/main/scala/fm/sbt/s3/S3URLConnection.scala needs to be added to make Coursier happy.

It also looks like maybe there is a new (at least to me) way to plugin new protocols to Coursier:
https://github.com/coursier/coursier/blob/46ad7243bea71e56dbda6df133a328535ac4c61e/modules/cache/jvm/src/main/scala/coursier/cache/CacheUrl.scala#L26-L32
So that's probably worth investigating too.

More info:
SBT 1.3.0 seems to download the pom files just fine from S3 but then I see stuff like:
checksum format error: /Users/tim/Library/Caches/Coursier/v1/s3/maven.example.com/releases/com/example/my-lib_2.12/0.79.0/.my-lib_2.12-0.79.0.pom__sha1

In my /Users/tim/Library/Caches/Coursier/v1/s3/maven.example.com/releases/com/example/my-lib_2.12/0.79.0 directory I see:
-rw-r--r-- 1 tim staff    0 Sep  5 17:02 .my-lib_2.12-0.79.0.pom.checked
-rw-r--r-- 1 tim staff    0 Sep  3 10:37 .my-lib_2.12-0.79.0.pom__md5
-rw-r--r-- 1 tim staff    0 Sep  3 10:37 .my-lib_2.12-0.79.0.pom__sha1
-rw-r--r-- 1 tim staff    0 Sep  3 10:37 .my-lib_2.12-0.79.0.pom__sha256
-rw-r--r-- 1 tim staff 5046 Sep  3 10:37 my-lib_2.12-0.79.0.pom

Note the 0 length files.

@coltfred After much debugging I found and fixed some bugs that were preventing Coursier in SBT 1.3 to work via commit https://github.com/frugalmechanic/fm-sbt-s3-resolver/commit/5f6520ef7bf145f33159b47c2fed906250fb1376
I've published version 0.19.0 which contains the fix:
addSbtPlugin("com.frugalmechanic" % "fm-sbt-s3-resolver" % "0.19.0")

0.19.0 seems to be working with Coursier. Thank you so much!

I still see this issue with 0.19.0
I get a checksum format error and the checksum files are empty (0 length) in the Ivy cache folder.

@erdeszt Here are a few things to try:

Delete the cache directories for any dependencies coming from S3 (to clear out the 0 length files)
Delete the project/project and project/target directories in your project.  I ran into an issue where SBT did not pickup the latest version of the plugin unless I deleted those directories and let SBT re-build them.

@tpunder thanks, that solved it!


iOS peripheral disconnects after 30 seconds

Hi,
I have a Raspberry Pi sending an integer to an iOS utilizing the CoreBluetooth framework. After 30 seconds, the iOS app disconnects from the peripheral (RPi). I wrote one service with one characteristic with the 'notify' property and uses onSubscription to actually send the data. In the body of onSubscription I use time.sleep() to control the frequency of data sending. When there is no delay, the peripheral on iOS disconnects almost immediately, when there is a 30ms delay, communication lasts about 30 seconds. Are there BLE protocols/rules/specifications that specify the frequency I'm talking about? Is there any way to set these parameters through pybleno or any way of implementing them? Any input would be truly helpful!
Below is the characteristic:
from pybleno import *
import time
import array
class PredictionCharacteristic(Characteristic):
def init(self, predict):
Characteristic.init(self, {
'uuid': '16dedcf4027f435fb1e622e601276950',
'properties': ['notify'],
'descriptors': [
Descriptor(
value = 'Sends over a value from 0-9 after gesture-making.'
)],
'value': None
})
self.predict = predict
self._value = None
self.updateValueCallback = None

def onSubscribe(self, maxValueSize, updateValueCallback):
print ('TranslatorCharacteristic: onSusbcribe')
# finger_sensor = list()
# test_build_mapping()
d = self.predict.build_mapping()
# Define delay between readings
delay = 1

while True:
  flex_data = 0
  # Read the flex sensor data, A0 is thumb, A4 is pinky
  for i in range(0, 5):
    flex_level = self.predict.ReadChannel(i)
    flex_data += int(flex_level > 800) * pow(10, i)
    # print("flex sensor {}: ADC = {}".format(i, flex_level))

  p = self.predict.predict(flex_data, d)
  print(p)
  if p is None:
    print 'we are handling None'
  	p = 16

  updateValueCallback(array.array('B', [p]))
  time.sleep(0.02)

def onUnsubscribe(self):
print ('TranslatorCharacteristic: onUnsubscribe')
self._updateValueCallBack = None

Hi @cristianmjg
I would be concerned about the fact you're blocking the subscription. You should return from any reads, writes, and subscribes as quickly as possible.
What you're probably seeing is the iOS device is dropping the connection because the subscribe does not return in a timely manner.
What you want to do here, is spawn a thread on the subscribe, so that the subscribe can return immediately. Then you can use the thread to push intermittent notifications out to the subscriber as often as you like.
I do something similar, and my notifications keep coming in for hours at 1 second intervals.

Please reopen if required.


fix error on local-env-setup.sh

fix error on https://github.com/apache/beam/issues/33460

@damccorm I fixed the typo. Please check again.


Unable to create packages for Windows 10 Store

As everything looks to work now on my first project (thanks a lot for the support!),
I'm trying to create packages to send to the Store.
I'm unable to generate them because I'm facing this error:
APPX1609 "The package contains a Debug framework reference 'Name = Microsoft.VCLibs.140.00.Debug, MinVersion = 14.0.23019.0, Publisher = 'CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US''. Ensure all framework references in the package are valid frameworks hosted by the Store."
I can't find how to enable the release version of this framework.
I tried to force the value to 'false' in the 'Microsoft.AppxPackage.Targets" file, it does not work :(
Any help would be appreciated.

This looks like a build settings issue: some component/project in your app is linking against MSVCRTD -- they all need to be built against the release runtime.
Look under Properties | Clang | Runtime Library and Properties | C++ | Runtime Library

Thanks a lot for your help, but unfortunately that is not the problem (that was wrong, but I still got the same error).
The error points to the file C:\Dev\ProjectName\ProjectName.vsimporter\ProjectName-WinStore10\Package.appxmanifest that you can download there: https://www.dropbox.com/s/dm8j12itd572nck/Package.appxmanifest.txt?dl=0
The error comes from this dependency:

I tried a lot of things there, but it always links the Debug version.
(I also tried to modify the Microsoft.AppxPackage.Targets as sais before).
Are you personally able to generate packages in release mode?

I tried to generate the packages for the sample project, and the same error occurs...

Good catch -- we're able to repro the issue here. We'll investigate/fix/report back.

good news :)
good luck for that!

@Alx06 Please try the following workaround.
Open msvc/sbclang.targets and comment-out the RuntimeLibrary tag for ConsumeRuntimeComponent.cpp:
<ItemGroup Condition="'$(AppContainerApplication)' == 'true' And '$(IslandwoodDRT)' == 'true'">
    <ClCompile Include="$(MSBuildThisFileDirectory)ConsumeRuntimeComponent.cpp">
      <PrecompiledHeader>NotUsing</PrecompiledHeader>
      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
    </ClCompile>
</ItemGroup>

Then try rebuilding.

Thanks for the tip Artem, but that didn't work for me.
What worked for me was to open msvc/sbclang.targets and to modify the RuntimeLibrary in this way:
<ItemGroup Condition="'$(AppContainerApplication)' == 'true' And '$(IslandwoodDRT)' == 'true'">     <ClCompile Include="$(MSBuildThisFileDirectory)ConsumeRuntimeComponent.cpp">       <PrecompiledHeader>NotUsing</PrecompiledHeader>       <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>     </ClCompile> </ItemGroup>
Now I'm able to generate packages locally, that's good.
But, generating packages for the store doesn't work.
The error this time is in Microsoft.AppXPackage.targets line 2760 with this error message : "Unable to remove directory "Release\PackageUploadLayout" Access to path 'ClrCompression.dll' is denied.
So I tried to comment out the line <RemoveDir Directories="$(AppxUploadLayoutDir)"> (line 2760 on Microsoft.AppXPackage.targets)
And now I've this error:
Unable to copy file "C:\Program Files (x86)\Windows Kits\10\UnionMetadata\Windows.winmd" to "Release\PackageUploadLayout\WinMetadata\Windows.winmd". Access to the path 'Release\PackageUploadLayout\WinMetadata\Windows.winmd' is denied.
(line 2762 on Microsoft.AppXPackage.targets)
And so I give up!!!
What an adventure!!!

Any news for this bug?

There's a fix coming down the pipe for the debug runtime issue you were hitting. Expect to see it soon.
As for the other errors your seeing, it looks like something is holding onto some files in your package directory. You can use a tool like Process Explorer to find latent processes holding onto file handles and close them down, or reboot your system.

hit the same error:
APPX1609 "The package contains a Debug framework reference 'Name = Microsoft.VCLibs.140.00.Debug, MinVersion = 14.0.23019.0, Publisher = 'CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US''. Ensure all framework references in the package are valid frameworks hosted by the Store."
When will it be fixed?

Is that officially fixed in the new release?

I'm still not able to generate the packages for the Store :(
I'm facing this issue now: https://connect.microsoft.com/VisualStudio/feedback/details/1800078/unable-to-remove-directory-obj-x64-release-packageuploadlayout-access-to-the-path-applicationinsights-config-is-denied
I don't know what to do :(
I'm also unable to understand how to test on an external device (yes, I'm new to this Visual Studio environment). Can someone help me with that too please?

It's said to delete the folder "obj" but I d'ont have such folder...

@Alx06 right now you're not able to test on an external device as ARM support for our compiler is still being built.
We're working hard on it.

I don't understand: I can't export an exe file on run it on another pc with windows10?
So, I can't create packages for the Store, and I can't create executable files for other PCs, so what can I do with my projects?

Anything new for me?

I believe this issue has been fixed with the last SDK we released, can you confirm?
Thanks.

Yes it's okay for me.


[Feature request] return an array of failures instead of a single failure

When I do:
let user = try Unbox(data) as User

If it fails, then I would like to know everything I did wrong, not just the first or last error that arose. In my local version I already changed the code so it gathers all the failures and then returns it as an array. Would you be open for a PR for this feature?

Hi @Evertt, sounds like a great improvement! I agree that sometimes the debugging process can be a bit annoying, since you only get one error at a time (and if a nested error occured, you don't really know which model caused the error). Feel free to submit a PR! 👍


Add run command feature

This adds a run commands feature. If you get an error with the args parameter, add a space at the beginning of the string.
Usage:
runtime.shell.runCommand(commandName, [arguments]);
// Example:
runtime.shell.runCommand("echo", " hey");

UPDATE:
I just added a get function to runtime.tty, which allows you to get text from the user easily.
It returns an EventController object that you can listen to.
Usage:
var foo = runtime.tty.get();
foo.add(function(text) {
  runtime.tty.print(text);
  // or whatever you want to do with `text`
});

@iefserge Should this be in runtime-shell? I'm not sure.

Let's move readline logic into separate file, why EventController instead of callback?
runCommand needs a callback, right?

Ok, I'll get to work on that. I was also thinking of how to catch output from the command being run and pass it to the callback.

Could setCommand pass an out parameter to the callback? So that it can be set to runtime.tty.print when running directly and it could be replaced with a different function in runCommand?

as an idea, we could introduce stdio object passed to commands as well as shell
setCommand(function(args, stdio, cb) {
  stdio.write('enter your name: ');
  stdio.readLine(function(status, input) {
    // return some status code if user pressed CTRL+C
    stdio.write('hello ' + input);
    cb();
  });
})

And maybe expose IO object constructor to be able to catch input/output.
var myio = new runtime.tty.IO();
myio.onwrite = function(dataWritten) {};
myio.onreadline = function(cb) {};

runtime.shell.runCommand('test', myio, cb)

I'm creating a stdio folder + some commands right now.

@iefserge I created some stdio commands and update command 1 to use it.

Git refuses to push terminal.js?! Dont know why

@iefserge I was able to add stdio and move the get command to a separate file.

@ArielAbreu let's make an IO object a class, and then instantiate global one internally that uses tty functions

Right now i'm working on creating capturing IO in runCommand using EventEmmiter + callback.

I think i've got a pretty good (at least functional) IO and CaptureIO for runtime.

@kesla I cant move the shared code to another file becauase i get a merge conflict (I undid the commit, thats why the conflict isnt there now). Have to keep it where it is for now.

What is this PR conflicting with?

AGH! I'm closing this, copying my work to another folder, deleting this branch, and doing everything again, step by step, until I hit the conflict.


About wslbridge and mintty-2.9

To start WSL, I use wslbridge (0.2.4) with mintty from my MSYS2 installation (maybe they are 2 years). I did a Windows link (WSLtty.lnk) on desktop and its target is
C:\msys64\usr\bin\mintty.exe --position 20,450 --WSL=Ubuntu -~
then I added it to the toolbar. In this way clicking on the toolbar icon of that link starts WSL and that icon is underlined as usual.
Today there was the update from mintty-2.8.5 to mintty-2.9.0 and now when I click on that icon, another icon (identical) shows up. I have attached the images (wslb-mintty.tar.gz):
wslb-mint-2.8.png   what happens with mintty-2.8.5 (the xpected)
wslb-mint-2.9.png   what happens with mintty-2.9.0 (NOT expected)
Notice that with mintty-2.9 clicking with mouse-R on the 1st icon (that NOT underlined) shows
WSLtty                                            [with its WSL Ubuntu icon]
Remove from the toolbar

Instead, the same on 2nd icon (that which IS underlined) shows
MSYS2 Terminal                             [with MSYS2 icon!]
Add to the toolbar
Close the window

Definitely something is wrong: as I wrote, they are about two year I use wslbridge+mintty and never got these issues.
Maybe you have some ideas about this.
Angelo

I wonder if the following is related to this issue..
After I Install MSYS2 for the first time (last time was last year, Jul 2017) I add some personal links to Start Menu, under the MSYS2 folder:
$ ls /c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/MSYS2/
autorebase.lnk  MSYS2 MINGW32 Shell.lnk  MSYS2 MINGW64 Shell.lnk  MSYS2 MSYS Shell.lnk

To do this I had just created a tar ball installed (administrator: the prompt start with # from getent package) as:
# tar -xvof MSYS2-Start_Menu_Programs.tar.xz -C /c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/
MSYS2/
MSYS2/autorebase.lnk
MSYS2/MSYS2 MINGW32 Shell.lnk
MSYS2/MSYS2 MINGW64 Shell.lnk
MSYS2/MSYS2 MSYS Shell.lnk

The folder .../Programs/MSYS2 immediately showed up in Start Menu under M letter. Then I added those link to Task Bar (TB) and in Start. The target of MSYS2 MSYS Shell.lnk is for example:
C:\msys64\msys2.exe
where msys2.exe is from msys2-launcher-git package.
Now I want to rename MSYS2 MSYS Shell.lnk in MSYS Terminal.lnk and to test this I tried (as adm.)
# mkdir -p /c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/test-MSYS2

# cp /c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/MSYS2/MSYS2\ MSYS\ Shell.lnk /c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/test-MSYS2/MSYS\ Terminal.lnk

The fact is that now the new folder .../Programs/test-MSYS2 DOES NOT show up in Start (under M there is still the old MSYS2) and when I reach the new link .../Programs/test-MSYS2/MSYS\ Terminal.lnk (for example with Open path to file for another link in Start) it still refers to MSYS2 MSYS Shell.lnk even removing the others from TB, rebooting etc.
mouse-R on it shows
MSYS2 MSYS Shell
Add to the toolbar
Close the window
(I would expect MSYS Terminal). I tries also to change the icon for MSYS Terminal.lnk but it uses the old.
All this is very confusing and frustrating, I doubt that reinstalling from scratch all works as before.
Maybe there is also some Windows (10) responsibility...


Lots of misc cppcheck fixes

Codecov Report

Merging #659 into master will decrease coverage by 0.1%.
The diff coverage is 65%.

@@            Coverage Diff             @@
##           master     #659      +/-   ##
==========================================
- Coverage   70.54%   70.43%   -0.11%
==========================================
  Files          49       49
  Lines        6857     6860       +3
==========================================
- Hits         4837     4832       -5
- Misses       2020     2028       +8

Impacted Files
Coverage Δ

include/pistache/listener.h
0% <ø> (ø)
:arrow_up:

include/pistache/os.h
100% <ø> (ø)
:arrow_up:

include/pistache/description.h
90.32% <ø> (ø)
:arrow_up:

src/common/description.cc
24.11% <0%> (ø)
:arrow_up:

include/pistache/reactor.h
93.33% <100%> (ø)
:arrow_up:

include/pistache/flags.h
80% <100%> (ø)
:arrow_up:

src/common/os.cc
56.96% <100%> (+0.63%)
:arrow_up:

include/pistache/endpoint.h
92.3% <100%> (+2.3%)
:arrow_up:

src/common/cookie.cc
95.42% <100%> (ø)
:arrow_up:

include/pistache/mailbox.h
93.96% <100%> (ø)
:arrow_up:

... and 6 more

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 0ad580e...14bafd5. Read the comment docs.


Add a collaborator to this project

@bajtos and @crandmck - one of my team members will be helping me maintain this repo, going forward. Can you please add @aquid as a collaborator on this project, like myself? I don't have the privileges to do so. Thank You!
If you need some sort of dev history or something, let me know and I'll provide.
@bajtos you may remember @aquid from his contribution to the angular sdk:
modelsToIgnore option support for generator (Aquid Shahwar)
https://github.com/strongloop/grunt-loopback-sdk-angular/commit/5d65107dc93009b53875c05302e3f1350ba5c054

@bajtos I can add him as a collaborator, but would it be better to add him to the maintainers group?
I do seem to be able to do that--since you're a project admin, I think you should be able to.

@pulkitsinghal done
@aquid please check your inbox for an invitation to join strongloop-community org on GitHub.
@crandmck I agree that adding @aquid to the maintainers group is better, @pulkitsinghal is in that group (team) too. I did exactly that.


Question: Nuitka compression use Zstandard, is there any options to use some other compression tools beside Zstandard?

Nuitka compression use Zstandard, is there any options to use some other compression tools beside Zstandard?
I have an issue, I tried compiling my python code using Nuitka, when I install zstandard which is the compression method, the exe file got quarantined by Avast Antivirus. It's so weird. I tried to uninstall zstandard, and the exe doesn't get quarantined by Avast, but without compression the file size is too big. I dont know why zstandard makes the exe quarantined by Avast, but is there a way to put some other alternatives for compression besides zstandard?
thanks .

You can disable the compression only. The AV situation is really bad. You need to follow instructions in Nuitka commercial to mitiigate it somewhat. But indeed, the standalone form is barely flagged in comparison. I wonder if adding a offline decompressor will help. The file format is going to undergo changes in 1.9 release that hopefully make it an actual archive format with per file compression that will also enhance performance.

I implemented per file compression with --onefile-archive but I don't think I will keep it. The main goal is not compile time savings, but start time savings, and what I realized, is that with yet another archive format change, where the meta information is all at start of file, and then caching can detect that the later parts are all unneeded, should make it such, that for mere launching, most of the compressed data is never uncompressed, this point becomes moot.
So, while this is now implemented, I guess it's not going to say. Still closing it as the desire of yours seems more or less addressed, and for quicker turnarounds disabling compression is the way to go I guess.


Incorrect generated docker image prefix

The new images generated has v0.1.0 as the prefix. The latest tag release is 0.1.6 and the prefixes of new images should be 0.1.7

This has been fixed in https://github.com/trustbloc/wallet/pull/853.


Work better with Money

Ran into a bug when performing operations with a percent object and a money object.
Money.new(100) * Percent.new(2)
=> #<Money fractional:2 currency:CAD>

This one works as expected because Money knows how to perform the * method.
Percent.new(2) * Money.new(100)
=> nil

This happens because the * method on Percent does type-checking, and does not have an else. If it's a Percent, it does one thing, if it's a Numeric it does something else. Money does not match either of these conditions, so it simply returns nil.
Rather than adding a specific case for Money, the likely solution is to make a sensible 'else' that will do something expected. Not sure what that is yet. Probably to_f on the other object.

This was solved in #12


Search by author field not working

Some feeds are a combination from many authors. I want to be able to filter a feed to a specific author. I expected search to work, but this only applies to the content of the post, not the author.
For example, searching the inessential feed for "Simmons" only shows one post.

That feed only has a top level author so it is a poor example of my use case. An atom feed I subscribe to has individual dc:creator tags per post.

I get the same results when testing with @brentsimmons' inessential.com feed. However, that's because—as you said—that feed has a top-level author and not a per-item author.
Testing with sixcolor's feed and searching by author works for me. In the example below, I am searching for Jason Snell, and the first article has him as the author, and his name is not in the article text.
All Articles

Filtered

If you have feeds where things are potentially misbehaving, please let me know.

I'm not sure how to get the raw xml feed for that feed for comparison.
Here's an example feed with many different authors that doesn't allow filtering in this way:
https://notabird.site/i/lists/1348435279527333889/rss

Ah, I think I see it.
@brentsimmons If I'm reading things correctly, we are only searching article content?
func fetchArticlesMatching(_ searchString: String) throws -> Set<Article> {
		var articles: Set<Article> = Set<Article>()
		var error: DatabaseError? = nil

		queue.runInDatabaseSync { (databaseResult) in
			switch databaseResult {
			case .success(let database):
				articles = self.fetchArticlesMatching(searchString, database)
			case .failure(let databaseError):
				error = databaseError
			}
		}

		if let error = error {
			throw(error)
		}
		return articles
	}

Perhaps the select statement could be updated to search Article.authors too?

Actually, a better approach -- it looks like the search virtual table could be updated to include authors, then the select statement mentioned previously would probably be fine.


New version: maurizuki.O2 version 2.4.0

Pull request has been created with WinGet Automation 🪟📦🤖
Microsoft Reviewers: Open in CodeFlow

Hi @vedantmgoyal2009,
The package didn't pass a Defender or similar security scan. This might be a false positive and we can rescan tomorrow.
(Automated response - build 575.)

Automatic Validation ended with:

Installation failed with exit code -1978335187 2024-01-16 08:30:37.684 [FAIL] Installer failed security check. Url: https://github.com/maurizuki/O2/releases/download/v2.4.0/O2-2.4-setup.exe Result: 0x80004005

(Automated response - build 575.)