Public gem hosting solution

Expected Behavior
I would like to install the gem using bundle install
Actual Behavior
I added in my Gemfile the following line: gem 'fast_jsonapi', source: 'https://rubygems.pkg.github.com/fast-jsonapi'
When trying to do bundle installon my local machine, I have the following problem:
       Authentication is required for rubygems.pkg.github.com.

       Please supply credentials for this source. You can do this by running:

        bundle config set rubygems.pkg.github.com username:password

I have the same output on a heroku instance.
It only happen with this gem.
On top of that, trying to go on https://rubygems.pkg.github.com/fast-jsonapiwith my browser I have the following error: 404 page not found
Steps to Reproduce the Problem

Add the gem to Gemfile
BUndle install

Specifications

Version: last stable version

Oh Github :facepalm:, this is silly, but apparently Github requires authenticated requests to the Package Registry...
@jeantristan thanks for reporting this, I'll look into a solution. Apologies...

No worries! Thanks for the fork.
I was looking for a better handling of the cache than the orignal package.
Good luck dealing with the problem!
Do you know if it's possible for me to do a local install or do I have to switch back to the netflix version?

@jeantristan you can switch back to the git-based deployments (ab9db291d4d89ed93029f0844461498364d3be3b)
Basically use this
 gem 'fast_jsonapi', '~> 1.7.1', git: 'https://github.com/fast-jsonapi/fast_jsonapi'

thanks!

I reverted to the old instructions for now: ac34aa22f7882f54cb7cab352489930c012e1e1b
We will look into alternatives...

Assuming it is not possible to get control of fast_jsonapi from rubygems, could this just be pushed to rubygems under a new package name? Given that the existing solution is to pull from github anyway, this should have minimal (if any) impact on existing projects.
We currently have fast_jsonapi required in a gemspec which means we are using an unsupported version because if it comes from anything other than a public gem server (preferably rubygems), we can't specify and manage versions properly via the gemspec. The current implementation (i.e. no availability via a public gem server) means all of our downstream projects would also have to have some sort of requirement in the Gemfile and that's not tenable for us.
It seems like the easy solution is just to push it to rubygems under a new name. The new gemfile requirement would be something like gem 'new_fast_jsonapi, '~> 1.7.1', :require => 'fast_jsonapi'`. What am I missing?

@ToadJamb I'm not a big fan of a new name since there are other gems depending on it.
I'm open to renaming it, but this suggests we should completely change the name and move away from Neftlix name to avoid confusion. My idea was just to provide a new repository name/source (probably using gemfury.com) and  let the bundler figure out the versions.
Alternatively we just focus on the next release to make it a new independent and clean project...

[…] completely change the name and move away from Neftlix name to avoid confusion

Yes, please! I cannot state how important this is to keep the project alive. I am curious what new name you come up with. Any name is good, really :). You are doing great. Thanks for the fork.

@jopotts @kpheasey renaming the gem is as much effort as moving to a completely new name and I'd rather do the later than a quickfix. What do you think?

@stas I'm a fan of the gemspec rename with a redirect.  It keeps the project alive in the more popular ruby registry.
Authenticating with github cli seems like a steep requirement lol.  I know it's not the most effort, but I've never had to do it before.
The approach is simple to how bundle installs bundler.

@stas I'm a fan of the gemspec rename with a redirect. It keeps the project alive in the more popular ruby registry.

@kpheasey what do you mean by this? I'm not sure we can redirect anything by ourselves, could you explain please?

It's not a real redirect, just similar in idea. We still have to use the Gemfile snippet that @ToadJamb posted above, but at least it doesn't require authentication.
The current authentication breaks most containers.

It seems like the easy solution is just to push it to rubygems under a new name. The new gemfile requirement would be something like gem 'new_fast_jsonapi', '~> 1.7.1', :require => 'fast_jsonapi'. What am I missing?

This can break dependencies and will fetch both versions as far as it looks like. What we have (as far as I can see) is either set up a gem on different package repository or rename everything and use rubygems....

We would only need to change this line https://github.com/fast-jsonapi/fast_jsonapi/blob/master/fast_jsonapi.gemspec#L7

I don't find the idea of changing the name into something like new_fast_jsonapi very appealing. As I mentioned, I think we should pick a proper new name if go for this effort. There are already other gems depending on fast_jsonapi and asking them to rename their deps for something like new_fast_jsonapi is already plenty of effort. So if Netflix comes back and wants us to change the name, we'd have to do it again all-over...
I'd rename it into something relevant, and actually drop the whole fast thing, since that's a bit of an egocentric name lol (i.e. jsonapi-serializer seems free and looks pretty representative). Obviously if we are all on the same page of not using an alternative gem hosting/repository.

jsonapi-serializer seems free

Note that jsonapi-serializers (with an s at the end) is taken. And it’s a really good library, too!

@stas Sorry, I misinterpreted your previous messages and thought you didn't want to rename at all.
What about fast-jsonapi.  It would only require renaming the gemspec, it's free on rubygems, and it maintains compatibility for anyone upgrading from fast_jsonapi.

So if Netflix comes back and wants us to change the name, we'd have to do it again all-over...

I'm really concerned about Netflix and what they plan to do here, since they are just silent and they have all the rights to demand us not use fast-/_jsonapi. Not to mention that it's just all super confusing (and kinda silly to still state that we're always going to be the fast implementation). Again, if we're actually going to put all this effort, I'd like us to leave the @Netflix related details behind as much as possible...

Netflix can't make us change the name.  It's a fork of a public repository that is then hosted under a different name.  Rubygems doesn't enforce copyright claims on gem names and the project was public on GitHub, so there is no repercussions from any service.
Naming it fast-jsonapi will ensure users can switch over easily, it can be found easily, and only requires changing a single line of code before pushing to rubygems (1 minute of work).
If you feel that we need to completely rebrand the gem, then that's a bigger project and will likely require all implementations to replace FastJsonapi module references with whatever the new name is.  That's more work in the end.
Let's move forward with fast-jsonapi for now, since it doesn't require any work.  If a rebranding is done, that can be released in v2.

@kpheasey I'm not a lawyer, but I would not like somebody to keep the name of my forked project for many (obvious reasons). It's both, unethical and potentially getting us in trouble due to the naming confusion that other users can keep blaming Netflix for bad releases!
A quick google search, clearly suggests changing the name after you fork is the right way to do it:
https://jamesdixon.wordpress.com/forking-protocol-why-when-and-how-to-fork-an-open-source-project/
https://opensource.guide/starting-a-project/#avoiding-name-conflicts
https://fossmarks.org/post/2choosingname/
https://www.g-loaded.eu/2011/03/01/forking-apache-licensed-software-on-github-and-bitbucket/
So yep, I'm not excited about keeping the current name in any way and I really think we should not go that way!

Ok, let's not go that way in the future.  But in the interim, let's just call it fast-jsonapi so users don't need to authenticate their servers with github to install it using the recommended installation instructions.
Once we figure out a name, rebrand the gem, and add migration instructions for users to change from FastJsonapi, then we can officially rename it.  You are right in assuming there is a lot of effort needed to do that.  Right now though, it's just a matter of making things work and that effort has already been done, (#84).
The only suggested name is jsonapi-serializer which conflicts with jsonapi_serializer which forks fast_jsonapi.  Do you have any suggestions for the name?

Renaming this fork to fast-jsonapi is not a good idea, for all the reasons @stas has already given and, if I may add:
https://guides.rubygems.org/name-your-gem/
It breaks expectations and makes things more confusing.
If it was quick to rename this from fast_jsonapi --> fast-jsonapi then isn't it quick enough to rename it to anything else?
Also note the licensing terms of Netflix's original work –
https://github.com/Netflix/fast_jsonapi/blob/master/LICENSE.txt – and bear in mind it's restrictions, e.g. see the points made in https://resources.whitesourcesoftware.com/blog-whitesource/top-10-apache-license-questions-answered

No, it’s not quick enough to rename it to anything else. If the module name changes from FastJsonapi to NewModule, then it’s a big change and requires everyone to update their implementations.

On May 18, 2020, at 11:12 AM, Jiten (Jits) Bhagat<EMAIL_ADDRESS>wrote:
Renaming this fork to fast-jsonapi is not a good idea, for all the reasons @stas https://github.com/stas has already given and, if I may add:
https://guides.rubygems.org/name-your-gem/ https://guides.rubygems.org/name-your-gem/
It breaks expectations and makes things more confusing.
If it was quick to rename this from fast_jsonapi --> fast-jsonapi then isn't it quick enough to rename it to anything else?
Also note the licensing terms of Netflix's original work –
https://github.com/Netflix/fast_jsonapi/blob/master/LICENSE.txt https://github.com/Netflix/fast_jsonapi/blob/master/LICENSE.txt – and bear in mind it's restrictions, e.g. see the points made in https://resources.whitesourcesoftware.com/blog-whitesource/top-10-apache-license-questions-answered https://resources.whitesourcesoftware.com/blog-whitesource/top-10-apache-license-questions-answered
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/fast-jsonapi/fast_jsonapi/issues/81#issuecomment-630248732, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA6AO67QO7XQ6KRTS6NNWPTRSFF5NANCNFSM4MXDMTUQ.

@kpheasey to be honest, I don't understand the rush. We've been in this limbo for a while and if I'd have to pick a fast solution, I'd set up a gemfury repo and host it there :see_no_evil:
Though even the way it is right now, folks can use it, not ideally, but pretty easily. So I think we should really not rush anywhere here...

@stas Agreed, let's just not rename it and continue to use the following installation.
gem 'fast_jsonapi', '~> 1.7.1', github: 'fast-jsonapi/fast_jsonapi'

No, it’s not quick enough to rename it to anything else. If the module name changes from FastJsonapi to NewModule, then it’s a big change and requires everyone to update their implementations.

You could still provide a special compatibility module that needs to be required manually, which just does something this under the hood:
FastJsonapi = MyNewSuperDuperJsonModule

(I haven't tested this out specifically but the principle of providing a compatibility module still stands).

Please leave your name suggestions #86


Kivy is using deprecated Cython syntax for properties

Versions

Kivy: master

Description
According to Cython documentation we are using a "special (deprecated) legacy syntax for defining properties in an extension class".  The new syntax is @property, @propname.setter and @propname.deleter instead of property propname:
The deprecated syntax is used in the files listed below (and maybe elsewhere). It's not clear if or when the legacy syntax is slated for removal.

graphics/gl_instructions.pyx
lib/vidcore_lite/bcm.pyx
graphics/context_instructions.pyx
graphics/scissor_instructions.pyx
graphics/instructions.pyx
graphics/vertex_instructions.pyx
graphics/texture.pyx
graphics/vertex_instructions_line.pxi
graphics/fbo.pyx
graphics/shader.pyx
graphics/stencil_instructions.pyx
graphics/svg.pyx
weakproxy.pyx
properties.pyx
_event.pyx
core/window/_window_sdl2.pyx

Ah, so they adopted one of the pure python syntax, nice, should be a pretty mechanical change.

Forgot to add, the old syntax was deprecated in Cython 0.24 (2016-04-04), Kivy's minimum supported version must be bumped when this is updated

Hm, it's more about when the new syntax was introduced, right? or is it the same version?

or is it the same version?

Yes sorry that was poorly worded; the new syntax was finalized in 0.24, and the old syntax deprecated in the same release

@tshirtman @bionoid Any progress on this issue?

No, but if you want to do a PR, that's more than welcome, else, it'll come certainly for next release, since it shouldn't be too hard to do.


Request Logging

Migrated from GitLab: https://gitlab.com/meltano/sdk/-/issues/31
Originally created by @vischous on 2021-03-03 18:15:31

Writing a bamboohr tap, it uses basic auth. Trying to debug the requests that are sent out.
@aaronsteers recommended putting in an issue here. Note I'm a noob with python so there's almost certainly things I'm missing.  re https://meltano.slack.com/archives/CFG3C3D1Q/p1614794618011900
$ poetry run tap-bamboohr --config .secrets/config.json
INFO Parsing env var for settings config...
DEBUG Running config validation using jsonschema: {'type': 'object', 'properties': {'auth_token': {'type': ['string'], 'required': True}, 'subdomain': {'type': ['string'], 'required': True}}, 'required': ['auth_token', 'subdomain']}
INFO Config validation passed with 0 errors and 0 warnings.
INFO Beginning FULL_TABLE sync of stream 'employees'...
{"type": "SCHEMA", "stream": "employees", "schema": {"type": "object", "properties": {"id": {"type": ["number", "null"], "required": false}, "displayName": {"type": ["string", "null"], "required": false}, "firstName": {"type": ["string", "null"], "required": false}, "lastName": {"type": ["string", "null"], "required": false}, "gender": {"type": ["string", "null"], "required": false}, "jobTitle": {"type": ["string", "null"], "required": false}, "workPhone": {"type": ["string", "null"], "required": false}, "workPhoneExtension": {"type": ["string", "null"], "required": false}, "skypeUsername": {"type": ["string", "null"], "required": false}, "facebook": {"type": ["string", "null"], "required": false}}, "required": []}, "key_properties": null}
INFO {'url': 'https://api.bamboohr.com/api/gateway.php/autoidmtest/v1/employees/directory', 'params': {}, 'request_data': None}
DEBUG Starting new HTTPS connection (1): api.bamboohr.com:443
DEBUG https://api.bamboohr.com:443 "GET /api/gateway.php/autoidmtest/v1/employees/directory HTTP/1.1" 401 None
INFO Skipping request to https://api.bamboohr.com/api/gateway.php/autoidmtest/v1/employees/directory
INFO Reason: 401 - b''
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/tap_base.py", line 178, in cli
    tap.sync_all()
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/tap_base.py", line 142, in sync_all
    stream.sync()
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/core.py", line 390, in sync
    self._sync_records()
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/core.py", line 307, in _sync_records
    for row_dict in self.get_records(partition=partition):
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/rest.py", line 187, in get_records
    for row in self.request_records(partition):
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/rest.py", line 141, in request_records
    resp = self._request_with_backoff(prepared_request)
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/backoff/_sync.py", line 94, in retry
    ret = target(*args, **kwargs)
  File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/rest.py", line 94, in _request_with_backoff
    raise RuntimeError(
RuntimeError: Requested resource was unauthorized, forbidden, or not found.

View 7 previous comments from the original issue on GitLab


How About Push It into Pypi

It's a great job,I'm happy to see pushing all the code to Pypi then I can build the code anywhere easily!

it's already availible on pypi, just do nothing to install


Bug: mobile app not respecting plugin’s minAppVersion

Steps to reproduce:

create new vault on mobile
turn off safe mode and search for icon-shortcode in community plug-in list
the latest version available is v0.9.6 (minAppVersion 0.15.0) instead of v0.9.5 (minAppVersion 0.13.27)

Obsidian version: 1.2.2 (56)
Api version: 0.14.15
Debug info: (btw seems like obsidian version is missing in mobile debug info)
SYSTEM INFO:
	Operating system: ios 15.5 (Apple iPad)
	Login status: logged in
	Catalyst license: supporter
	Live preview: on
	Legacy editor: on
	Base theme: dark
	Community theme: none
	Snippets enabled: 0
	Safe mode: off

RECOMMENDATIONS:
	none

Can't repro on either Android or iOS. In either one when I hit install I'm getting the correct v0.9.5 installed.
Any chance your user there is syncing their plugins from an insider desktop version?

Thanks! That seems to be the issue. Considering that mobile version receives update when desktop version is well tested and often obsidian sync need to sync between mobile and desktop obsidian with different API version, It could be better if minAppVersion is checked before loading and when minAppVersion mismatches, a more specific notice like “plugin not compatible” is shown in favor of a general “fail to load plugin” after loading process failed


Deep Learning on Coursera | HanVincent

https://hanvincent.github.io/2018/02/DL-notes/#more

test


[ADD] KFACInverseLinearOperator

Resolves #68. Implemented by naively inverting all Kronecker factors with the help of a Cholesky decomposition.
One downside of the implementation of the _matvec method is that it repeats basically all of the code of the same method from the KFACLinearOperator. To avoid code redundancy we could modify KFACLinearOperator in-place, but that seems a bit hacky.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

-8 of 47 (82.98%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 88.189%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

curvlinops/inverse.py
38
46
82.61%

Totals

Change from base Build<PHONE_NUMBER>:
-0.3%

Covered Lines:
896

Relevant Lines:
1016

💛  - Coveralls


fix(list): Remove selected & activated from prop spread

selected and activated are boolean props that toggle class names. They shouldn't be passed down with prop spread. In the case of activated, this triggers a React console message.
There are no tests because I didn't see any other tests checking that other props are not rendered.

This react attr warning will show up in unit tests when using mount but not shallow.
These issues could be caught by using mount instead of shallow and throwing on console error to fail test.


deviceProp.name is an empty string for MI50 with rocm 4.5

In the case of using rocm 4.5 the deviceProp.name string does not contain the expected device name.
The following code can reproduce the issue:
#include<iostream>
#include <hip/hip_runtime.h>
int main(){
  hipDeviceProp_t deviceProp;
  hipGetDeviceProperties(&deviceProp, 0);
  std::cout << deviceProp.name << std::endl;
}

This behaviour has been observed on a system with an MI50 accelerator

Thanks @sbalint98 for reaching out.
I certainly understood the problem.
We already found this issue internally and tracking it and fix is in progress. I will share further update soon.
Thank you.

Same issue here on MI100

Same issue still happens with ROCm 5.2.0 with MI50, MI100, and MI210.

This is still an issue with MI210's on 5.2.3.

Is this still an issue with the latest ROCm 5.3.3?

Closing this ticket as it is stale.  Furthermore, an internal developer has confirmed issue has been fixed for MI250 and MI300 in ROCm6.0.0.  @sbalint98, please re-open the ticket if you are still seeing empty string.  Thanks.


Add support for SUSE release version

Question whether the patch version should be part of the release parameter or not...

Hey @mindmelting,
Do you mind showing me the difference in output for this PR? I.E. what getOS it currently is showing on SUSE vs what was expected and implemented in this PR?

(I don't have a SUSE box readily available)

@wblankenship it currently does not return release information, this PR will add the release information (see the test that has been composed to view expected input/output)

there would be an issue with this, i've setup myself with "SUSE Linux Enterprise Server 11 (x86_64)" and it has multiple release files also
linux-68fg:~/workspace/test/getos-master # ls -lah /etc/*-release
-rw-r--r-- 1 root root 110 May  5  2010 /etc/lsb-release
-rw-r--r-- 1 root root 156 Jun 19 17:07 /etc/os-release
-rw-r--r-- 1 root root  69 Jun 19 17:07 /etc/SuSE-release

so because SuSE below ubuntu, so it identifies it as ubuntu due to lsb-release:
linux-68fg:~/workspace/test/getos-master # node test.js
{"os":"linux","dist":"SUSE Linux"}

with moving getOS above ubuntu "/etc/lsb-release", then with applied patch i am getting:
linux-68fg:~/workspace/test/getos-master # node test.js
{"os":"linux","dist":"SUSE Linux","release":"11"}

Interesting the SUSE Enterprise Server 11 box I am running this on only has the following:
+ ls -lah /etc/os-release /etc/SuSE-release
-rw-r--r-- 1 root root 156 Jun 19 17:07 /etc/os-release
-rw-r--r-- 1 root root  69 Jun 19 17:07 /etc/SuSE-release

I have patch 4, downloaded today, without any extra packages installed

I also have patch 4....!
SUSE Linux Enterprise Server 11 (x86_64)
VERSION = 11
PATCHLEVEL = 4

@mindmelting are you going to update os.json for this pull request?

@mindmelting apologies, didn't check before I wrote this, you already did, thank you! @wblankenship do you have any concerns at the moment with this PR?

Nope, this loos good to me :+1:

@mindmelting pushed to npm in https://github.com/wblankenship/getos/commit/2c47ad31a3815a114c72c501dff5219ac1f42ab6

Great!


--watch/-w option

Are there plans to add a watch option?
So far I've been using chokidar-cli to do something like this:
chokidar 'css/*.css' -c 'npm run bundle-css'

Where the bundle-css script is the sheetify command.
That works fine for now. But being able to watch changes with -w would be neat.

Good one, adding a watch mode would be grand! Though perhaps this shouldn't be part of core, but rather as an external extension? Main argument for that would be build time: building chokidar takes a reasonable amount of time and perhaps not always needed. I believe @hughsk had ideas on how to integrate it with watchify.

we're also not emitting file events in our browserify transform, so changes to the style files are not being watched.

hmm, good point. That would make for a nice addition


Use enableDepth option

The check for this option was apparently lost in a previous round of updates.
Resolves #2072

Would it be possible to add a regression test for this?

There are tests that I would expect to catch it, e.g.:

I suppose these are accidentally working because the depth value it comes up with happens to put it above the extrusions.
It might be as easy as enabling tile outlines on one of the other tests and re-baselining its image, but I'm not sure how to find one that would be appropriate.

Fixes #2072

Would it be possible to add a regression test for this?

There are tests that I would expect to catch it, e.g.:

I suppose these are accidentally working because the depth value it comes up with happens to put it above the extrusions.
It might be as easy as enabling tile outlines on one of the other tests and re-baselining its image, but I'm not sure how to find one that would be appropriate.

the debug layers use their type as layer index, but also set builder->setEnableDepth(false);
I suppose any style that has more than 2 layers would hide the tile borders if the enableDepth flag is not correctly interpreted.

I added the same check to the matrix offset condition.
The 3D mode setup was also not paying attention to the depth option.  I'm not sure if that's ever used, but it ought to work.
This was creating both state objects, with and without stenciling, and switching between them per-drawable.  Rather than creating all four combinations of depth and stencil, I made it create only the ones that actually get used, and keep the ones that don't change in the group instance.


Robustness fix and equal aspect

In my exported strava data, a 1,000 appears in the column of distance, making the original package runtime error. I added a few fixes to avoid this issue.
I found the facets stretched in many occassions, making it hard to recognize some activities. So, I used equal aspect in the facet plotting script. Although it is not exactly what the activities look like on maps, it looks much better from my view.

Thanks for the PR!
Can you share example GPX files that cause each of these (three?) problems?
Or if you want to keep them private, can you edit an existing GPX file to insert some problematic data you have?
That way we can also include them in the CI and make sure these stay fixed.
And it may be better to split these fixes into separate PRs.

Thanks for the PR!
Can you share example GPX files that cause each of these (three?) problems?
Or if you want to keep them private, can you edit an existing GPX file to insert some problematic data you have?
That way we can also include them in the CI and make sure these stay fixed.
And it may be better to split these fixes into separate PRs.

I have more than 1k gpx files from strava, so I think it will take some time to find out the bug-causing one.
It will be nice to separate the PRs. I will do that later.


Idioms: Verify guarded constructor with failing overload throws invalid exception

Given a type that has got all the valid null guards but cannot be instantiated due to some error in one of the constructors (invalid type casting in the first one):
public class TypeWithNullGuardAndFailingCtorOverload
{
    public TypeWithNullGuardAndFailingCtorOverload(object arg1)
        : this(arg1, (int)new object()) // throws InvalidCastException (expected)
    {
    }

    public TypeWithNullGuardAndFailingCtorOverload(
        object arg1, object arg2)
    {
        if (arg1 == null)
            throw new ArgumentNullException();
        if (arg2 == null)
            throw new ArgumentNullException();
    }
}

When this type is verified by the GuardClauseAssertion, the Ploeh.AutoFixture.Idioms.GuardClauseException is thrown without any reference to the real exception causing the problem:
An attempt was made to assign the value null to the parameter "arg1" of the method ".ctor", and no Guard Clause prevented this. Are you missing a Guard Clause?           Method Signature: Void .ctor(System.Object)           Parameter Type: System.Object, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, ...
Since the error is in the constructor overload design rather that in the guard, it's expected to see the original InvalidCastException only. The GuardClauseException should not be mentioned here at all.

To solve this issue the following redundant catch block in the NullReferenceBehaviorExpectation class have to be removed.

Sorry, I was not really precise, the inner exception exists but it is not visible immediately in the test output (as I stated before). In order to figure out what was wrong I had to debug the test (which is inconvenient):

@moodmosaic Could you please elaborate on this, so we finally close this issue? 😉
It looks is fine to me. Yep, it's a false-positive, however it looks like a pretty exotic case and InnerException is present, so I don't see any issue here and how that should be improved. In most cases you don't want to see how exactly ctor failed if guard was missing - it's enough to simply know about issue.

Well, the more information we can provide, the easier it can be to troubleshoot issues. If we can easily add the inner exception on the message, it'd be nice.

I've just checked that and found that fixing of this particular scenario wouldn't help a lot. There are 7 more places throwing the GuardClauseException and we'll need to fix them all which will create a bit of mess.
I'm still not sure that the inner exception message is actually always helpful. If you missed the null value guard, your code will likely fail with an arbitrary exception as you haven't configured the input parameters and method/ctor logic is broken. In this case the actual exception and it's message (e.g. NullReferenceException or InvalidOperationException) might make it look like you should to fix the exception reason, but that is not true. In reality you should put the guard and no more actions are required.
The scenario described by Sergey is pretty rare and a bit exotic. I believe that for such cases the existing InnerException property should be enough to figure out the issue.
I really afraid that the inner exception message will be misleading and will bring more issues than benefit.
@sergeyshushlyapin @moodmosaic Could you reply to my concerns?

I really afraid that the inner exception message will be misleading and will bring more issues than benefit.

I doesn't necessarily have to be the inner exception per-se. Do we have other information we could add in the (existing) exception message?

Do we have other information we could add in the (existing) exception message?

I don't see how we could improve the existing message without adding the potentially misleading information. The scenario mentioned by Sergey is very rare and it doesn't worth it to describe it. Do you see something?

IME, if someone reaches up to the point of reporting an issue (like @sergeyshushlyapin did), it can probably means that the issue isn't that rare...
I defer the decision to @sergeyshushlyapin and you. :cowboy_hat_face:

it can probably means that the issue isn't that rare

Well, who knows, but it's a good point! 👍
@sergeyshushlyapin Could you please follow-up?

I do not know if that is a valid solution, but have you tried this?

The suggested fix would lead to even more confusion as the automatically generated arguments could often lead to the failure. However that doesn't matter as long as null guard is present.
Consider the following method:
public void Method(int value, string message)
{
    if(!this._knownValues.Contain(value)) throw new ArbitraryException("Value not registered")
}

In this case when message is null expectation will fail with ArbitraryException and you might think that it's a problem. However, the problem is that you have missing guard. If you have a guard, you would never reach the line causing the ArbitraryException. And that is the trick - if method failed with an arbitrary exception - the reason is the guard which is missing.
Therefore, the suggested fix would bring more damage than benefit.

It does not matter (for me) if it's 'rare' or not.

Sure it doesn't! However, we already wrap the inner exception and it's fully available on the exception message. If you use NCrunch or R# you should see the inner exception message by default. Example of the output from R#:
AutoFixture.Idioms.GuardClauseException
An attempt was made to assign the value null to the parameter "arg1" of the method ".ctor", and no Guard Clause prevented this. Are you missing a Guard Clause?
Method Signature: Void .ctor(System.Object)
Parameter Type: System.Object, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b77a5c561934e089
Declaring Type: AutoFixturePlayground.GuardClauseTest+TypeWithNullGuardAndFailingCtorOverload, AutoFixturePlayground, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null
Reflected Type: AutoFixturePlayground.GuardClauseTest+TypeWithNullGuardAndFailingCtorOverload, AutoFixturePlayground, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null
   at AutoFixture.Idioms.NullReferenceBehaviorExpectation.Verify(IGuardClauseCommand command) in C:\projects\autofixture\Src\Idioms\NullReferenceBehaviorExpectation.cs:line 61
   at AutoFixture.Idioms.CompositeBehaviorExpectation.Verify(IGuardClauseCommand command) in C:\projects\autofixture\Src\Idioms\CompositeBehaviorExpectation.cs:line 44
   at AutoFixture.Idioms.GuardClauseAssertion.VerifyNormal(IMethod method) in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 275
   at AutoFixture.Idioms.GuardClauseAssertion.Verify(ConstructorInfo constructorInfo) in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 103
   at AutoFixture.Idioms.IdiomaticAssertion.Verify(ConstructorInfo[] constructorInfos) in C:\projects\autofixture\Src\Idioms\IdiomaticAssertion.cs:line 179
   at AutoFixture.Idioms.IdiomaticAssertion.Verify(Type type) in C:\projects\autofixture\Src\Idioms\IdiomaticAssertion.cs:line 96
   at AutoFixturePlayground.GuardClauseTest.TestGuard() in C:\Users\Alex\Documents\Visual Studio 2017\Projects\AutoFixturePlayground\AutoFixturePlayground\Class1.cs:line 55

System.InvalidCastException
Specified cast is not valid.
   at AutoFixture.Idioms.ReflectionExceptionUnwrappingCommand.Execute(Object value) in C:\projects\autofixture\Src\Idioms\ReflectionExceptionUnwrappingCommand.cs:line 74
   at AutoFixture.Idioms.NullReferenceBehaviorExpectation.Verify(IGuardClauseCommand command) in C:\projects\autofixture\Src\Idioms\NullReferenceBehaviorExpectation.cs:line 51

AutoFixture already provides all the necessary diagnostics - you simply need to scroll over the whole exception message 😉
Given that, do you see how else we could improve the situation without leading to the unnecessary confusion? I'd be really happy to improve the situation if you only could suggest how.

However, we already wrap the inner exception and it's fully available on the exception message. If you use NCrunch or R# you should see the inner exception message by default.

Oh, nice! Could it be that this part was missing when I reported the issue about one year ago? This exception message definitely looks good to me. thanks.

Could it be that this part was missing when I reported the issue about one year ago?

We haven't changed the code, so I don't know 😉 Well, there is a chance that some output window simply trimmed the exception message (e.g. NCrunch exception preview).


Send email when approving/denying/editing results

when approving/denying send you user email with name, competition, event, times and decision (decision in subject also with event), subject should have: ADMINISTRATOR: Your <event_name> results have been changed.
when editing results, send email with name, competition, event, old times, new times (changed in red, as in sus email), subject should have: ADMINISTRATOR: Your results have been changed.

Hello, we tried to solve the issue.
This is what we did:
Implement email notifications when approving/denying results and when editing results.
You can review changes in this commit: https://github.com/mnmnk43434/jakubdrobny-speedcubingslovakia-169/commit/73355669577dfd8757c16023f6e86e50dff9a0ab.

[!CAUTION]
Disclaimer: The concept of solution was created by AI and you should never copy paste this code before you check the correctness of generated code. Solution might not be complete, you should use this code as an inspiration only.

If you no longer want Latta AI to attempt solving issues on your repository, you can block this account.


headless is totally broken

🐛 Bug description
headless seems totally broken or just too hard to use
🤔 Expected Behavior
What should have happened?
👟 Steps to reproduce
check https://github.com/GopherJ/webgpu-shaders github actions
🌍 Your environment
Include the relevant details of your environment.
wasm-pack version: wasm-pack 0.13.0
rustc version: rustc 1.82.0-nightly (c6db1ca3c 2024-08-25)

It may work but should really be too hard to setup and will be time consuming, but to do e2e wasm tests, we still need it

existing issues: https://github.com/rustwasm/wasm-pack/issues?q=headless


JavaScript does not initialies all values

just used download for local installation.
the html shows I initilised a linear gauge. E.g. the barBeginCircle was not correctly set to false. Once I update the value it redraws correctly. Is that expected ?
<!doctype html>
<html>
<head>
    <title>Gauges as Components</title>
    <script src="gauge.min.js"></script>
</head>
<body>
<!-- Injecting linear gauge -->
<canvas data-type="linear-gauge" id="myGauge"/>

<script type="text/javascript">
var g2 = new LinearGauge({
    renderTo: document.getElementById('myGauge'),
    width: 600,
    height: 150,
    minValue: 0,
    maxValue: 80,
    majorTicks: [
        "0",
        "20",
        "40",
        "60",
        "80"
    ],
    minorTicks: 2,
    strokeTicks: true,
    highlights: [
        {
            "from": 100,
            "to": 220,
            "color": "rgba(200, 50, 50, .75)"
        }
    ],
    colorPlate: "#fff",
    borderShadowWidth: 0,
    borders: false,
    needleType: "arrow",
    needleWidth: 2,
    animationDuration: 1500,
    animationRule: "linear",
    tickSide: "left",
    numberSide: "left",
    needleSide: "left",
    barBeginCircle: false,
    barStrokeWidth: 5,
    barWidth: 5
}).draw();
</script>
</body>
</html>

I have created my own lib, therefore no fix needed anymore


support for multiple storage types / storageClass

Hi,
first thank you for your support and for such a great project.
My Question:
Is it possible to use multiple storage types/ mounts e.g. daemonsets dataNode would use mounts from workernode:
/mnt/ssd
/mnt/hdd

so the StorageClasses propagated to kubernetes workload would use following storageClasses:
cfs-ssd
cfs-hdd

Thank you!
Lukas

First you can create 2 chubaofs clusters with different disk types, then distinguish them with masterAddr parameter in StorageClass, and both StorageClasses can use one csi daemonset, do not need to create two.
Such as:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: cfs-ssd
provisioner: csi.chubaofs.com
parameters:
  masterAddr: chubaofs-ssd-master.chubao.io
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: cfs-hdd
provisioner: csi.chubaofs.com
parameters:
  masterAddr: chubaofs-hdd-master.chubao.io

Also you can create 2 crossZone with different disk types under 1 chubaofs cluster, and distinguish them with crossZone parameter in StorageClass:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: cfs-ssd
provisioner: csi.chubaofs.com
parameters:
  masterAddr: chubaofs-common-master.chubao.io
  crossZone: ssdzone
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: cfs-hdd
provisioner: csi.chubaofs.com
parameters:
  masterAddr: chubaofs-common-master.chubao.io
  crossZone: hddzone

Then you can use both ssd and hdd volumes in kubernetes.

@ludurr Please let us know if this answers your question. Thanks!

Hi,
definitely that was the answer i was looking for.
Thank you

Hi,
i have created the group of data/meta node in zone=ssd and data/metanode zone=hdd with common master nodes within kubernetes rke2/rancher version v1.22.4+rke2r1 and storageClass as described by example above.
Then i sent a request PVC with storageClass above, but it fails to create PV with provided PVC.
Any help is welcome or point me to the right resource/docs.
Thank you.
PVC error:
  Type     Reason                Age                From                                                                                Message
  ----     ------                ----               ----                                                                                -------
  Normal   Provisioning          14s (x6 over 43s)  csi.chubaofs.com_cfs-csi-controller-846544d6d8-kj279_002aa24b-f7a8-4b5d-baa5-58d4d3d69719  External provisioner is provisioning volume for claim "chubaofs/cfs-pvc"
  Warning  ProvisioningFailed    14s (x6 over 43s)  csi.chubaofs.com_cfs-csi-controller-846544d6d8-kj279_002aa24b-f7a8-4b5d-baa5-58d4d3d69719  failed to provision volume with StorageClass "cfs-hdd": rpc error: code = Unknown desc = create volume is failed
  Normal   ExternalProvisioning  4s (x5 over 43s)   persistentvolume-controller                                                                waiting for a volume to be created, either by external provisioner "csi.chubaofs.com" or manually created by system administrator

External provisioner error:
I1223 16:23:34.340118       1 controller.go:1284] provision "chubaofs/cfs-pvc-2" class "cfs-ssd": started

I1223 16:23:34.343024       1 event.go:281] Event(v1.ObjectReference{Kind:"PersistentVolumeClaim", Namespace:"chubaofs", Name:"cfs-pvc-2", UID:"79c48555-f04d-4ab3-a801-26b21f5acc98", APIVersion:"v1", ResourceVersion:"2964989", FieldPath:""}):
type: 'Normal' reason: 'Provisioning' External provisioner is provisioning volume for claim "chubaofs/cfs-pvc-2"

W1223 16:23:34.345819       1 controller.go:916] Retrying syncing claim "79c48555-f04d-4ab3-a801-26b21f5acc98", failure 5

E1223 16:23:34.345837       1 controller.go:939] error syncing claim "79c48555-f04d-4ab3-a801-26b21f5acc98": failed to provision volume with StorageClass "cfs-ssd": rpc error: code = Unknown desc = create volume is failed

I1223 16:23:34.345848       1 event.go:281] Event(v1.ObjectReference{Kind:"PersistentVolumeClaim", Namespace:"chubaofs", Name:"cfs-pvc-2", UID:"79c48555-f04d-4ab3-a801-26b21f5acc98", APIVersion:"v1", ResourceVersion:"2964989", FieldPath:""}):
 type: 'Warning' reason: 'ProvisioningFailed' failed to provision volume with StorageClass "cfs-ssd": rpc error: code = Unknown desc = create volume is failed

Parameter 'owner' is required to mark up the volume belongs to whom, you can set it as what you want, such as:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  annotations:
    meta.helm.sh/release-name: chubaofs
    meta.helm.sh/release-namespace: chubaofs-helm
  creationTimestamp: "2021-12-23T11:39:34Z"
  labels:
    app.kubernetes.io/managed-by: Helm
  name: cfs-ssd
  resourceVersion: "3015251"
  uid: b3b09ca4-8be5-42bd-91b7-7a44ee153410
parameters:
  **owner: K8SCSICluster01**
  consulAddr: http://consul-service.chubaofs.svc.cluster.local:8500
  crossZone: ssd
  logLevel: error
  masterAddr: master-service.chubaofs.svc.cluster.local:17010
provisioner: csi.chubaofs.com
reclaimPolicy: Delete
volumeBindingMode: Immediate

Thank for reply! I have added owner with username without creating it in advance and also tried with user created in davance within chubaofs, but neither was working.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  annotations:
    meta.helm.sh/release-name: chubaofs
    meta.helm.sh/release-namespace: chubaofs-helm
  labels:
    app.kubernetes.io/managed-by: Helm
  name: cfs-hdd
parameters:
  consulAddr: http://consul-service.chubaofs.svc.cluster.local:8500
  crossZone: hdd
  logLevel: debug
  owner: cfshdduser
  masterAddr: master-service.chubaofs.svc.cluster.local:17010
provisioner: csi.chubaofs.com
reclaimPolicy: Delete
volumeBindingMode: Immediate

I have found log from chubaofs csi driver. And based on that i have corrected the parameters for StorageClass zoneName and crossZone
E1224 13:32:38.413989      11 cfs_server.go:169] create volume is failed. url(http://master-service.chubaofs.svc.cluster.local:17010/admin/createVol?name=pvc-fb46d723-3469-449c-b628-5cfcbc7e070b&capacity=1&owner=cfsvolssduser&crossZone=ssd&enableToken=false&zoneName=) code=(2), msg:strconv.ParseBool: parsing "ssd": invalid syntax
E1224 13:32:38.414065      11 utils.go:82] GRPC error: create volume is failed

Now its provisioning PV, but it failing to attach the PVC to a POD.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  annotations:
    meta.helm.sh/release-name: chubaofs
    meta.helm.sh/release-namespace: chubaofs-helm
  labels:
    app.kubernetes.io/managed-by: Helm
  name: cfs-hdd
parameters:
  consulAddr: http://consul-service.chubaofs.svc.cluster.local:8500
  crossZone: "true"
  zoneName: hdd
  logLevel: debug
  owner: cfshdduser
  masterAddr: master-service.chubaofs.svc.cluster.local:17010
provisioner: csi.chubaofs.com
reclaimPolicy: Delete
volumeBindingMode: Immediate

I am currently solving the issue mountVolume failed:
Normal   SuccessfulAttachVolume  8m23s  attachdetach-controller  AttachVolume.Attach succeeded for volume "pvc-28ae69ff-2ffb-4211-a836-1ce216424d81"
  Warning  FailedMount             8m16s  kubelet                  MountVolume.MountDevice failed for volume "pvc-28ae69ff-2ffb-4211-a836-1ce216424d81" : rpc error: code = Internal desc = mount fail, error: exit status 1
  Normal   Pulled                  8m15s  kubelet                  Container image "nginx:1.17.9" already present on machine
  Normal   Created                 8m15s  kubelet                  Created container cfs-csi-demo-1
  Normal   Started                 8m15s  kubelet                  Started container cfs-csi-demo-1

Sorry I  mistook mixing up the parameter 'zoneName' and 'crossZone', you don't need to care about the parameter 'crossZone' at all, it' my fault, try this way:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: cfs-ssd
provisioner: csi.chubaofs.com
parameters:
  masterAddr: chubaofs-common-master.chubao.io
  zoneName: ssdzone
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: cfs-hdd
provisioner: csi.chubaofs.com
parameters:
  masterAddr: chubaofs-common-master.chubao.io
  zoneName: hddzone

I've testd in my cluster, it works.

@ludurr please try if this works and let us know. thanks.

@ludurr I'm going to close this issue since it seems to be solved. Please feel free to re-open it if anything else needs to be clarified.


Add dry run

This PR would...

[x] Add the dry-run input
[x] Add it to the readme
[x] Pass it to the index.sh script
[x] Use INPUT_DRY_RUN == true to do non-mutation things
[x] Use dry-run: true in test.yml action

Also overdue
@all-contributors add @jcbhmr for code


Storing workspaces doesn't update DevBox configs

When storing a workspace its config should be updated with the configs from the devboxes, else editing them in the container is futile.

Instead of updating the config upon storing, I decided to update it once a workspace is closed.


[Fonts] Icon request: whatsapp

WhatsApp became most common to all Android/ iOS users. Adding an icon for WhatsApp will reduce time of importing image manually and maintaining it's size and alignment manually.

Hi @subair-zufi, the whatsapp icon already exists on the stable channel. See https://api.flutter.dev/flutter/material/Icons/whatsapp-constant.html.
Closing as the icon already exists.


highlightUntyped: Make VS Code extension use nowhere/everywhere

Motivation

This is a follow up to #7569, which converted from using bool to using an enum
for the --track-untyped setting, in anticipation of making it no longer be a
boolean.
In this PR, we make the same changes to the VS Code extension.
Test plan

See included automated tests.
I've also tested manually in VS Code to ensure that the first time you use this
version of the extension, it gracefully upgrades you to use the new value,
instead of keeping the setting defined as a boolean.

On second thought, this is going to require some more thought to ensure that people using a newer VS Code extension version with an older Sorbet version aren't left behind.


dlopen failed: cannot locate symbol "AConfiguration_getScreenRound"

Hey there! thanks for this library!
I ran into this issue, possibly related to my build process, when I build some code using android_ndk. When I add android_ndk My .so file now has the symbol AConfiguration_getScreenRound. Which makes sense because you create the bindings for android/configuration. But Android can't seem to find the thing to link it to!
I also get this issue when adding AConfiguration_getScreenRound(state->config) to the native-activity sample in ndk-samples.
Maybe I didn't link some library? I looked at the symbols in all of the lib*.so in the ndk and I didn't see a symbol for AConfiguration_getScreenRound either (but I see symbols for AConfiguration_getScreenLong). So I don't think I'm forgetting to link something.

Or am I missing something really obvious?

Looks like it's an Android issue: https://issuetracker.google.com/issues/146458518

Stumbled upon this in a following case:

Setting bevy (https://github.com/bevyengine/bevy/) as a dynamic plugin (crate-type = ["dylib"])
Having a device (Oculus Quest 2) which has API level 29 -> AConfiguration_getScreenRound is only present in API level 30 and hence system-provided libandroid.so doesn't provide this symbol

Getting device API level
ANDROID_SDK_ROOT/platform-tools/adb shell getprop ro.build.version.sdk
29

Not sure how to solve this yet. My current guess is this is caused because the symbols usages have been baked into FFI (https://github.com/mb64/android-ndk-rs/tree/master/android-ndk-sys/src)) - maybe these should be generated when compiling based on the desired target level?


When running the app, Discord shows me online and using an image downloader

Is there a way you can make the user still appear as offline to other people?
Because whenever I have the application running, not only can't I no longer appear as offline with discord open, but it also shows the amount of images that have been downloaded as the name of the application I'm running. The thing is, I don't want either of them.
I want to remain offline and like I'm not playing anything or running any app.
Is that functionality already possible? If yes, please tell me how, if not, I'd really appreciate it if you added it.
I've attached a screenshot comparing what I see versus what other users see, when I'm running the application.
Thanks in advance.

I would love to have an option in the settings to remove the "* pictures downloaded" text.

Author of this tool has decided to not allow hiding it for transparency reasons towards other users on servers you use this on, but there is fork that has these supports added.
It might not be up to date on other stuff and all the problems you face with it should be directed to that repo.
https://github.com/DreamPhreak/discord-image-downloader-go/releases

Ohhh okay, that's fair, thanks for the info @Kakkela 👍


Correct a mistake in the docs for make_transport()

Pull Request Test Coverage Report for Build 38319109

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.04%) to 95.71%

Totals

Change from base Build 38261862:
0.04%

Covered Lines:
13414

Relevant Lines:
13857

💛  - Coveralls


[question] Possible to connect to websocket with Node-Red?

Is it possible to connect directly to the websocket with Node-Red?
This way the network/automations could be independent of Home Assistant (in case it is down).
So far I've got (changed the websocket port in docker compose to 3333 for testing):

But there's no other activity reported for Scene ID.
*it works fine in HA

This is question for zwave-js-server project, but you need to setup the connection handshake as documented: https://github.com/zwave-js/zwave-js-server/#api

To start receive the state and get events, the client needs to send the start_listening command.

Send a JSON payload to the server to start listening:
{"command": "start_listening"}

But of  course! 👍
Thanks!


client: re-work address synchronizer to use pkScript, electrum script…

subscribe now has a map of [ pkScript (string) ] *subscription. No more btcutil.Address as key.

merge


cmd/compile: cannot convert untyped string value to type parameter constrained by ~string | ~[]byte

Input:
package pkg

func foo[T ~string | ~[]byte]() {
	var _ T = T("")
}

Output:
./baz.go:4:14: cannot convert "" (untyped string value) to type T:
	cannot convert "" (untyped string constant) to []byte (in T)

I expected this conversion to work. If it isn't supposed to work, then the error message is confusing.
/cc @griesemer

Looks like a bug to me.

func foo[T ~string | ~[]byte]() {
        var s string
	var _ T = T(s)
}

this works


Version 4.1.0 didn't drop the Xiaomi support?

Overview

4.1.0 version should have dropped the Xiaomi support, But the source code I downloaded is still have Xiaomi support code.So xiaomi show permission dialog twice when i request Location permission.

#548 this problem has been fixed in version 4.1.0?

module build.gradle
dependencies {
    ...
    implementation "com.github.hotchemi:permissionsdispatcher:4.1.0"
    annotationProcessor "com.github.hotchemi:permissionsdispatcher-processor:4.1.0"
}

PermissionUtils.java
    /**
     * Returns true if the Activity or Fragment has access to all given permissions.
     *
     * @param context     context
     * @param permissions permission list
     * @return returns true if the Activity or Fragment has access to all given permissions.
     */
    public static boolean hasSelfPermissions(Context context, String... permissions) {
        for (String permission : permissions) {
            if (permissionExists(permission) && !hasSelfPermission(context, permission)) {
                return false;
            }
        }
        return true;
    }

    /**
     * Determine context has access to the given permission.
     * <p>
     * This is a workaround for RuntimeException of Parcel#readException.
     * For more detail, check this issue https://github.com/hotchemi/PermissionsDispatcher/issues/107
     *
     * @param context    context
     * @param permission permission
     * @return returns true if context has access to the given permission, false otherwise.
     * @see #hasSelfPermissions(Context, String...)
     */
    private static boolean hasSelfPermission(Context context, String permission) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && "Xiaomi".equalsIgnoreCase(Build.MANUFACTURER)) {
            return hasSelfPermissionForXiaomi(context, permission);
        }
        try {
            return PermissionChecker.checkSelfPermission(context, permission) == PackageManager.PERMISSION_GRANTED;
        } catch (RuntimeException t) {
            return false;
        }
    }

    private static boolean hasSelfPermissionForXiaomi(Context context, String permission) {
        String permissionToOp = AppOpsManagerCompat.permissionToOp(permission);
        if (permissionToOp == null) {
            // in case of normal permissions(e.g. INTERNET)
            return true;
        }
        int noteOp = AppOpsManagerCompat.noteOp(context, permissionToOp, Process.myUid(), context.getPackageName());
        return noteOp == AppOpsManagerCompat.MODE_ALLOWED && PermissionChecker.checkSelfPermission(context, permission) == PackageManager.PERMISSION_GRANTED;
    }

Environment

Which library version are you using?
4.1.0
On which devices do you observe the issue?
Xiaomi MIUI 10

@electhuang thank you, oh this is weird...anyway could you try 4.2? 🙇

@electhuang thank you, oh this is weird...anyway could you try 4.2? 🙇

hello @hotchemi ,when i try 4.2.0 or 4.3.0, project sync succeed, but build failed with error message:
Could not GET 'https://jitpack.io/com/github/hotchemi/permissionsdispatcher-processor/4.2.0/permissionsdispatcher-processor-4.2.0.pom'. Received status code 401 from server: Unauthorized

and i try to open the link in browser,it required access token

@electhuang From 4.2.0 we've changed package name so could you try?
ref: https://github.com/permissions-dispatcher/PermissionsDispatcher/blob/master/CHANGELOG.md#changelog

@hotchemi oh sorry, now 4.2.0 is ok, thank you!


Image upload doesnt work

Added customization type with image calculator, added it to product. Then choose file in file field, then added to cart. Result - no image saved. Rails 3.1, sqlite3, edge spree.

@chrt00 I'm getting a similar problem with CarrierWave, you added that gist to initializers/spree_config.rb?

@nhunzaker what branch are you using?  I'm happy to help.

0.70, but everything is working wonderfully now

excellent, glad to hear.  let me know if there are any readme changes i should make


ESLint: enabled no-trailing-spaces and eol-last rules

I wanted to enable the indent rule but it seemed to be influenced by the trailing whitespaces.
So I've enabled no-trailing-spaces rule and, since there were only a few warnings the eol-last rule too.
Sorry for the big PR but it's only whitespaces changes and so there should not be any change in behaviour.
@abose @zaggino This PR can bitrot easily: I appreciate a fast turnaround.

LGTM from me

:+1: from me too

@zaggino @petetnt Thank you!

@ficristo @zaggino As part of PR https://github.com/adobe/brackets/pull/11693/files
.brackets.json file was edited from "linting.prefer": ["JSLint", "JSHint"], to  "linting.prefer": ["ESLint"],
This has caused JSline to stop working from brackets code base when editing in brackets editor!

@abose You are right... I'm using the eslint plugin so I didn't saw it...
Meanwhile you can use grunt eslint which run already on travis.
For now it's a bit annoying, but https://github.com/adobe/brackets/pull/11988 should fix this.
Waiting that PR is merged you could:

reverting the two PR of ESLint: this seems more work than what it is worth
reintroducing JSLint: this could interfere with ESLint rules
What do you think?

We can add eslint also to the preferred linters for the time being. And have #11988 just have eslint alone. That would be a good transmission.

We can add eslint also to the preferred linters for the time being

I'm not sure to have understood: do you mean changing the config to this: "linting.prefer": ["ESLint", "JSLint"] ?

I was thinking of something like that but now figured it doesn't work like that.
What will happen if we just have JSLint here for the time being till #11988 is merged?

When I written the PR to integrate ESLint I tried to use similar rules to the ones already there.
Using JSLint shouldn't create problems but there is a chance that they could interfere: JSLint could warn about something that's fine for ESLint or worse could not warn something that's not fine for ESLint.

What should we do in this case then?

I've merged @ficristo rollback PR and I'll add these changes to https://github.com/adobe/brackets/pull/11988

@abose @zaggino @ficristo Sorry for not speaking up sooner, but I have serious concerns about this change.  Brackets itself (and CodeMirror in general) automatically generates whitespace on blank lines based on indent.  This ESLint rule means we will be constantly fighting with Brackets's own output, which seems like a bad policy.
I would strongly suggest we change the ESLint setting to  "no-trailing-spaces": [2, { "skipBlankLines": true }] so that we don't have that problem.
If I'd noticed this sooner I would have also suggested reverting all the changes that remove whitespace on blank lines, so that we don't have verbose diffs where people editing the code gradually start reintroducing all that indent whitespace... but I guess it's too late for that now :-/


Allow configuring function's runtime annotations from UI

Description
Allow configuring function's runtime annotations from UI
Reasons
UI users should also be able to manage annotations
Missing part of https://github.com/kyma-project/kyma/issues/16232
Attachments
apiVersion: serverless.kyma-project.io/v1alpha2
kind: Function
metadata:
    creationTimestamp: null
    labels:
        app.kubernetes.io/name: node
    name: node
    namespace: default
spec:
    labels:
        label1: value1
    annotations:
        annotation2: value2
        ....

Agreed, it is an UI issue; if I collapse the git repository section then I can see the annotations at the bottom of the screen


Fixing SLN

@jasonsandlin,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Entity lookup failed

I try to lookup an entity but I get this error:

To my testing this only comes when I try to lookup an entity of type CAGEAnimation
Replicatable in the vanilla PAK for ENG_TOWPLATFORM in the composite SCRIPT_STORYMISSION\M33_SHOWDOWN\M33_PART_01\M33_PT01.
Entity example like in the screenshot is M33_SC03

Thanks for the report, I'll take a look after work today.

Should now be fixed on the staging branch :)


Allow AudioStreamPlayer(2D) to provide pitch_scale on playback

Fixes #53585
AudioServer forcibly gives the stream's pitch scale a value of 1 when calling start_playback_stream(). These changes ensure any pitch scale from AudioStreamPlayer and AudioStreamPlayer2D are the ones provided before calling play()

Could you use this function signature instead?
https://github.com/godotengine/godot/blob/ca11f8ad3045c280b559adea4e2263c38c2c6df4/servers/audio_server.h#L373
That way this will occur atomically. With this change the AudioServer could choose to start playing audio between one line and the next which could cause pitch to change abruptly several milliseconds after playback has started. Ears are really fast so that causes audible artifacts.

I have added a pitch scale parameter to the convenience method, which then provides the value to the second start_playback_stream(). Tested and worked fine.

Good idea. I'll take a look in a few hours. That base method has a ridiculous number of parameters and given that we need pitch scale in multiple places that's definitely the smart thing to do.
Oct 10, 2021 1:57:37 PM Douglas Leão @.***>:

I have added a pitch scale parameter to the convenience method, which then provides the value to the second start_playback_stream(). Tested and worked fine.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub[https://github.com/godotengine/godot/pull/53641#issuecomment-939551487], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AAOY266K2GCQO3IP2T3ZVTTUGH44DANCNFSM5FWURAKQ].
Triage notifications on the go with GitHub Mobile for iOS[https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675] or Android[https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub].
[data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEIAAABCCAYAAADjVADoAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAAnSURBVHic7cEBDQAAAMKg909tDwcUAAAAAAAAAAAAAAAAAAAAAPBjRFIAASHKmKkAAAAASUVORK5CYII=###24x24:true###][Tracking image][https://github.com/notifications/beacon/AAOY2662QT322L22TRUK3FTUGH44DA5CNFSM5FWURAK2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOHAAGV7Y.gif]

Convenience change: instead of providing p_pitch_scale as the fourth parameter on the second start_playback_stream() it will provide as the second, so no empty parameters need to be provided by the first one. AudioStreamPlayer3D.cpp changed to fit.


AOR - Theming Issues related to "Inputs" and Footer Area

The FieldTitle is a span. Not able to style it from custom mui Theme.
Use case:
So, when I am applying a custom muiTheme, the Label colour of TextInput never gets updated. And when I click on the Text Input to type, the Label seems to be taking the Primary Colour .
Is there a way to set the style/colour for the FieldTitle of  any type of Input including DisabledInput ?

I don't understand your problem. Can you add screenshots?
A <span> takes the background color of the enclosing element, which is the <Input> component. If the Input components use the theme, you should be able to override the label, too. But that's a materiel-ui question more than an admin-on-rest question IMO.
By the way, which version of admin-on-rest are you using?

>> Can you add screenshots?
Not able to upload one atm, getting github error saying "we can't process the file" - although it is a 10KB jpg.
>> If the Input components use the theme, you should be able to override the label, too
OK, let me put it simply like this -  How do I style the AOR  TextInput where I can control the FieldTitle colour separately ? Will be great if you could you share a sample please ?

But that's a materiel-ui question more than an admin-on-rest question IMO.
So, when I click on a TextInput how does the FieldTitle automatically takes the PrimaryColor

>>By the way, which version of admin-on-rest are you using?
1.4.0

You can't control the FieldTitle color. That's not a feature of admin-on-rest.
As for styling the label of a material ui input, I invite you to check the material ui documentation.
I'm closing this as I think there is no bug. Feel free to reopen if you think otherwise.

Hi,
I think this is a Bug. Please find the screenshot. I just modified the sample from tutorial with custom theme.
`
// in src/App.js
import React from 'react';
import { jsonServerRestClient, Admin, Resource } from 'admin-on-rest';
import getMuiTheme from 'material-ui/styles/getMuiTheme';
import { PostList, PostEdit } from './posts';
import spacing from 'material-ui/styles/spacing';
const myTheme = {
spacing: spacing,
fontFamily: 'Roboto, sans-serif',
palette: {
primary1Color: '#FF8C00',
// primary2Color: cyan700,
//primary3Color: grey400,
//accent1Color: pinkA200,
//accent2Color: grey100,
//accent3Color: grey500,
textColor: '#FFFFFF',
//    alternateTextColor: '#FFFFFF',
canvasColor: '#000000',
//borderColor: grey300,
//disabledColor: fade(darkBlack, 0.3),
//pickerHeaderColor: cyan500,
//clockCircleColor: fade(darkBlack, 0.07),
//shadowColor: fullBlack,
},
};
const App = () => (
<Admin theme={getMuiTheme(myTheme)} restClient={jsonServerRestClient('http://jsonplaceholder.typicode.com')}>

);
export default App;
`

I suggest you try with just Material UI components, without admin-on-rest. My opinion is that if there is a bug, it is on their side. Admin-on-rest does not alter the color of the field title in any way.

Hi,
Thanks. It is not just one use case. Please see the 3rd screenshot. I believe it is the way Theming is being handled in AOR (which internally uses MaterialUI components). Is there a way to customise the Theme more elegantly with AOR or some pointers which you can provide by means of some source code ?
>>I suggest you try with just Material UI components, without admin-on-rest.
Sorry, I did not understand this. As you can see I am using AOR components as I am building upon that library.

As explained in the admin-on-rest contributing guide, the right place to ask a "How To" question, get usage advice, or troubleshoot your own code, is StackOverFlow.
This makes your question easy to find by the core team, and the developer community. Unlike Github, StackOverFlow has great SEO, gamification, voting, and reputation. That's why we chose it, and decided to keep GitHub issues only for bugs and feature requests.
So I'm inviting you to ask your question at:
http://stackoverflow.com/questions/tagged/admin-on-rest
And once you get a response, please continue to hang out on the admin-on-rest channel in StackOverflow. That way, you can help newcomers and share your expertise!

Done - https://stackoverflow.com/questions/49296717/aor-bug-in-theming-when-applying-custom-themes

Referring to the comment here - https://github.com/marmelab/admin-on-rest/issues/1654#issuecomment-373289906
>>Admin-on-rest does not alter the color of the field title in any way.
`BooleanInput' does alter label colour internally - https://github.com/marmelab/admin-on-rest/blob/0208d9d32d8ef9165ff9d23dca92f91e0156422f/src/mui/input/BooleanInput.js which is causing more issues.
Any way to udpate this ?


i need lisp setting

could you add lisp

I have added it to v0.4.0.  So this should work:
"custom-language-properties": {
  "lisp.comments.lineComment": "; "
}

You should get intellisense for lisp and then after lisp. for comments.lineComment, etc.
Let me know if this works for you.  Thanks.

yes it works. but my setting is ";". but basically one space is more added like image.

Do you have this setting enabled:
Editor > Comments: Insert Space


All devices available everywhere

I am working on my shared framework (iOS/tvOS) and tried to use DeviceKit inside but then I found, that i have to use #if os(iOS) ... around DeviceKit calls using because they are already around funcs and vars inside DeviceKit. Wouldn't be better to have all devices available everywhere? I would like to use it for example then like this:
switch device {
case iPhone6, iPhone6s: ...
case AppleTV4: ...
}

Currently I have to write this, because not all funcs and vars are available everywhere
switch device {
#if os(iOS)
case iPhone6, iPhone6s: ...
#elseif os(tvOS)
case AppleTV4: ...
#end
}

I know that the tvOS code probably should not be present in iOS version and vice versa, but this could decide DeviceKit inside implementation. Or is there any issue with Simulator detection or something else?

Hi @beny, I'm totally aware of this issue. When I first wrote the code I thought about it for a very long time because, as you said, it's really annoying to branch your code everywhere depending on the target platform. The reasons why I chose this path are the following:

It seems that it is the direction Swift takes
Adding more and more devices makes it more complicated to handle all cases (what if you're app is exclusively iOS but the framework wants to you handle cases for each Apple TV, each Apple Watch** and each MacBook**)
Currently I have to write this, because not all funcs and vars are available everywhere I'm planning to unify the API as much as possible (there are some cases which don't make sense), but this also seems to be a direction of Swift (e.g. you can add methods to Arrays only if they contain Ints). I thinks that's similar.

Or is there any issue with Simulator detection or something else?

IIRC there are plans to add an #if arch(simulator) or similar and I thought about whether or not we should move to this as well... On the one hand side I think it would clean-up the code (strictly, you don't have a .simulator case on iOS [which feels right because there is no real Simulator device], but on the other hand it complicates code on the consumer side of the framework a lot ...
That being said, I'm not sold on the current design and I'd very much appreciate discussing a different solution :) Thanks for starting this!
[Since we're still on 0.x.x releases the API can change dramatically (though I would like it to not change too much ...). I'm currently working on a protocol-oriented implementation that provides the exact same API.]
** Those are features I'm planning to provide eventually, currently there's only iDevices and Apple TV's.

Hi @beny (and everyone who thankfully watches this project or might read this by accident),
Taking your thoughts (hopefully) I tried to come up with something (this is just bikeshedding at the moment, but I hope you get the idea):
The idea is that we use a DeviceType protocol to collect all the common functionality. Then, there is no Device type anymore but a Phone, Pad, Watch, TV, Computer type.
Minimal implementation (requires Swift 3):
protocol DeviceType: Equatable {
  init?()
  var name: String { get }
}

enum Phone: DeviceType {

  case iPhone1
  case iPhone2

  var name: String { return "Phone" }

  init?() {
    self = .iPhone1
  }

}

enum Pad: DeviceType {

  case iPad1
  case iPad2

  var name: String { return "Pad" }

  init?() {
    self = .iPad1
  }

}

func == (lhs: DeviceType, rhs: DeviceType) -> Bool {
  return lhs.name == rhs.name
}

// Would be defined inside the framework
let currentDevice: DeviceType = Phone() ?? Pad()!   // Where can we put `currentDevice`?, don't like it global...

Now, the interesting part. This is how the call site would look like:

func test() {
  let name = currentDevice.name

  if currentDevice is Pad {
  }

  if let pad = currentDevice as? Pad {
  }

}

What I really like about this approach is that we can use the is language construct to check whether or not we are currently on that device (instead of the current .is***** methods). Depending on how much functionality we put into the DeviceType protocol the as? casting would be mostly unnecessary.
What do you all think? Any feedback is very welcome!

It looks great, easy to read the code with the is and that's good thing. The latter example would be probably also (don't know if it's valid syntax in Swift 3):
if let pad = currentDevice as? Pad where pad == .iPad1 {}

Looking forward to this update.

Hey @beny! Sorry it took me so long, I have a branch for you (and others of course) to play with: https://github.com/dennisweissmann/DeviceKit/tree/WIP/the-great-protocol-transformation
However, this is a work in progress and only rudimentary features are implemented, namely: Device detection, device group detection.
There is definitely a need for a few helper methods to make detection easier and don't require the consumer of the API to write the code I have put in the "Tests" (it's not really tested atm :D)
Currently you can identify your device like this:
  func testCurrentDevice() {
    let currentDevice = DeviceKit.currentDevice
    switch currentDevice {
    case let currentDevice as Pad:
      switch currentDevice {
      case .iPad2: print("Is iPad 2")
      case .iPad3: print("Is iPad 3")
      case .iPad4: print("Is iPad 4")
      case .iPadAir: print("Is iPad Air")
      case .iPadAir2: print("Is iPad Air 2")
      case .iPadMini: print("Is iPad Mini")
      case .iPadMini2: print("Is iPad Mini 2")
      case .iPadMini3: print("Is iPad Mini 3")
      case .iPadMini4: print("Is iPad Mini 4")
      case .iPadPro: print("Is iPad Pro")
      case .simulator(let pad): print("Is iPad simulator: \(pad)")
      case .unknownPad(let unknown): print("Currenlty unknown device: \(unknown)")
      }
    case is Phone: print("Is iPhone")
    default: break
    }
    // Or a short way:
    print("\(currentDevice)")
  }

Currently only iPads, iPhones, and Apple TV are supported, but this will (hopefully) change in the future.
If you have time I would love to hear from you what you think :)

I’ll close this issue since there doesn’t seem to be very much interest in that feature, thanks for proposing it anyways! 🙏


add listZones for dispatcher

add listZones for dispatcher

Codecov Report

Merging #391 (acd7b23) into dev (be913a0) will increase coverage by 1.35%.
The diff coverage is 91.42%.

@@             Coverage Diff              @@
##                dev     #391      +/-   ##
============================================
+ Coverage     13.26%   14.61%   +1.35%
- Complexity      351      374      +23
============================================
  Files           181      181
  Lines          7720     7738      +18
  Branches        612      613       +1
============================================
+ Hits           1024     1131     +107
+ Misses         6615     6523      -92
- Partials         81       84       +3

Impacted Files
Coverage Δ
Complexity Δ

...ross/network/rpc/handler/ConnectionURIHandler.java
51.92% <91.17%> (+47.21%)
23.00 <6.00> (+19.00)

...bank/wecross/network/rpc/URIHandlerDispatcher.java
88.73% <100.00%> (+0.16%)
10.00 <0.00> (ø)

src/main/java/com/webank/wecross/zone/Chain.java
46.22% <0.00%> (+0.47%)
29.00% <0.00%> (+1.00%)

...in/java/com/webank/wecross/network/UriDecoder.java
75.00% <0.00%> (+12.50%)
6.00% <0.00%> (+1.00%)

...va/com/webank/wecross/restserver/RestResponse.java
87.50% <0.00%> (+25.00%)
8.00% <0.00%> (+2.00%)


Support the various stat structures across systems

Close #44.
@SuperSandro2000 Here! Could you please try to build this and possibly run make check to run the test suite? Thanks!

Now building but make check fails:
these derivations will be built:
  /nix/store/4p18g8jzawjqrblf7ndnvsjswd974akj-opustags-1.5.1.drv
building '/nix/store/4p18g8jzawjqrblf7ndnvsjswd974akj-opustags-1.5.1.drv'...
unpacking sources
unpacking source archive /nix/store/gbbiyd793s21iimmgdgzjr3s8ahfsfpl-source
source root is source
patching sources
applying patch /nix/store/hx2fx2kdvmrk8hrlq7yh1jr0ysdfw3pq-64fc6f8f6d20e034892e89abff0236c85cae98dc.patch
patching file src/cli.cc
patching file src/opustags.h
applying patch /nix/store/zmjssn3lhqbpk438jkl6rac36d250rgr-f98208c1a1d10c15f98b127bbfdf88a7b15b08dc.patch
patching file CMakeLists.txt
patching file src/config.h.in
patching file src/system.cc
configuring
fixing cmake files...
cmake flags: -DCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_SKIP_BUILD_RPATH=ON -DCMAKE_INSTALL_LOCALEDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/share/locale -DCMAKE_INSTALL_LIBEXECDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/libexec -DCMAKE_INSTALL_LIBDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/lib -DCMAKE_INSTALL_DOCDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/share/doc/opustags -DCMAKE_INSTALL_INFODIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/share/info -DCMAKE_INSTALL_MANDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/share/man -DCMAKE_INSTALL_OLDINCLUDEDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/include -DCMAKE_INSTALL_INCLUDEDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/include -DCMAKE_INSTALL_SBINDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/sbin -DCMAKE_INSTALL_BINDIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/bin -DCMAKE_INSTALL_NAME_DIR=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1/lib -DCMAKE_POLICY_DEFAULT_CMP0025=NEW -DCMAKE_OSX_SYSROOT= -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_STRIP=/nix/store/pb6034qcdyaql95wxgq1v8g0cda7wsd4-cctools-binutils-darwin-949.0.1/bin/strip -DCMAKE_RANLIB=/nix/store/pb6034qcdyaql95wxgq1v8g0cda7wsd4-cctools-binutils-darwin-949.0.1/bin/ranlib -DCMAKE_AR=/nix/store/pb6034qcdyaql95wxgq1v8g0cda7wsd4-cctools-binutils-darwin-949.0.1/bin/ar -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_INSTALL_PREFIX=/nix/store/sll9y88hd02xlv21b3vm6z5v68ki86li-opustags-1.5.1
-- The CXX compiler identification is Clang 7.1.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /nix/store/92cn0gwy4zxzsbhq23rwsr36y6wbd1k8-clang-wrapper-7.1.0/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: pkg-config (found version "0.29.2")
-- Checking for module 'ogg'
--   Found ogg, version 1.3.4
-- Performing Test Iconv_IS_BUILT_IN
-- Performing Test Iconv_IS_BUILT_IN - Failed
-- Found Iconv: /nix/store/lm769l54d9nnwadg5714gzfi57wfnvpr-libiconv-osx-10.12.6/lib/libiconv.dylib
-- Looking for C++ include endian.h
-- Looking for C++ include endian.h - not found
-- Looking for C++ include sys/endian.h
-- Looking for C++ include sys/endian.h - not found
-- Performing Test HAVE_STAT_ST_MTIM
-- Performing Test HAVE_STAT_ST_MTIM - Failed
-- Performing Test HAVE_STAT_ST_MTIMESPEC
-- Performing Test HAVE_STAT_ST_MTIMESPEC - Success
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_C_COMPILER
    CMAKE_EXPORT_NO_PACKAGE_REGISTRY
    CMAKE_POLICY_DEFAULT_CMP0025

-- Build files have been written to: /private/var/folders/r4/k85s52jx3555ckj0wty615s00000gp/T/nix-build-opustags-1.5.1.drv-0/source/build
cmake: enabled parallel building
building
build flags: -j4 -l4 SHELL=/nix/store/58vsldc9lzkrr0lwiinn84rfz7i5rnik-bash-4.4-p23/bin/bash
Scanning dependencies of target ot
[ 14%] Building CXX object CMakeFiles/ot.dir/src/ogg.cc.o
[ 42%] Building CXX object CMakeFiles/ot.dir/src/opus.cc.o
[ 57%] Building CXX object CMakeFiles/ot.dir/src/system.cc.o
[ 57%] Building CXX object CMakeFiles/ot.dir/src/cli.cc.o
[ 71%] Linking CXX static library libot.a
[ 71%] Built target ot
Scanning dependencies of target opustags
[ 85%] Building CXX object CMakeFiles/opustags.dir/src/opustags.cc.o
[100%] Linking CXX executable opustags
ld: warning: passed two min versions (10.12.0, 10.12) for platform macOS. Using 10.12.
[100%] Built target opustags
running tests
[ 33%] Built target ot
Scanning dependencies of target system.t
[ 40%] Building CXX object t/CMakeFiles/system.t.dir/system.cc.o
[ 46%] Linking CXX executable system.t
ld: warning: passed two min versions (10.12.0, 10.12) for platform macOS. Using 10.12.
[ 46%] Built target system.t
[ 60%] Built target opustags
Scanning dependencies of target ogg.t
[ 66%] Building CXX object t/CMakeFiles/ogg.t.dir/ogg.cc.o
/private/var/folders/r4/k85s52jx3555ckj0wty615s00000gp/T/nix-build-opustags-1.5.1.drv-0/source/t/ogg.cc:73:21: error: use of undeclared identifier 'fmemopen'; did you mean 'freopen'?
                ot::file output = fmemopen(my_ogg.data(), my_ogg.size(), "w");
                                  ^~~~~~~~
                                  freopen
/nix/store/q38d9gxss5nl2annjf3dpyn15dvzad2r-Libsystem-osx-10.12.6/include/stdio.h:248:7: note: 'freopen' declared here
FILE    *freopen(const char * __restrict, const char * __restrict,
         ^
/private/var/folders/r4/k85s52jx3555ckj0wty615s00000gp/T/nix-build-opustags-1.5.1.drv-0/source/t/ogg.cc:73:30: error: cannot initialize a parameter of type 'const char *' with an rvalue of type 'std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >::value_type *' (aka 'unsigned char *')
                ot::file output = fmemopen(my_ogg.data(), my_ogg.size(), "w");
                                           ^~~~~~~~~~~~~
/nix/store/q38d9gxss5nl2annjf3dpyn15dvzad2r-Libsystem-osx-10.12.6/include/stdio.h:248:38: note: passing argument to parameter here
FILE    *freopen(const char * __restrict, const char * __restrict,
                                        ^
/private/var/folders/r4/k85s52jx3555ckj0wty615s00000gp/T/nix-build-opustags-1.5.1.drv-0/source/t/ogg.cc:89:20: error: use of undeclared identifier 'fmemopen'; did you mean 'freopen'?
                ot::file input = fmemopen(my_ogg.data(), my_ogg_size, "r");
                                 ^~~~~~~~
                                 freopen
/nix/store/q38d9gxss5nl2annjf3dpyn15dvzad2r-Libsystem-osx-10.12.6/include/stdio.h:248:7: note: 'freopen' declared here
FILE    *freopen(const char * __restrict, const char * __restrict,
         ^
/private/var/folders/r4/k85s52jx3555ckj0wty615s00000gp/T/nix-build-opustags-1.5.1.drv-0/source/t/ogg.cc:89:29: error: cannot initialize a parameter of type 'const char *' with an rvalue of type 'std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >::value_type *' (aka 'unsigned char *')
                ot::file input = fmemopen(my_ogg.data(), my_ogg_size, "r");
                                          ^~~~~~~~~~~~~
/nix/store/q38d9gxss5nl2annjf3dpyn15dvzad2r-Libsystem-osx-10.12.6/include/stdio.h:248:38: note: passing argument to parameter here
FILE    *freopen(const char * __restrict, const char * __restrict,
                                        ^
/private/var/folders/r4/k85s52jx3555ckj0wty615s00000gp/T/nix-build-opustags-1.5.1.drv-0/source/t/ogg.cc:122:19: error: use of undeclared identifier 'fmemopen'; did you mean 'freopen'?
        ot::file input = fmemopen((void*) err_msg, 20, "r");
                         ^~~~~~~~
                         freopen
/nix/store/q38d9gxss5nl2annjf3dpyn15dvzad2r-Libsystem-osx-10.12.6/include/stdio.h:248:7: note: 'freopen' declared here
FILE    *freopen(const char * __restrict, const char * __restrict,
         ^
/private/var/folders/r4/k85s52jx3555ckj0wty615s00000gp/T/nix-build-opustags-1.5.1.drv-0/source/t/ogg.cc:122:28: error: cannot initialize a parameter of type 'const char *' with an rvalue of type 'void *'
        ot::file input = fmemopen((void*) err_msg, 20, "r");
                                  ^~~~~~~~~~~~~~~
/nix/store/q38d9gxss5nl2annjf3dpyn15dvzad2r-Libsystem-osx-10.12.6/include/stdio.h:248:38: note: passing argument to parameter here
FILE    *freopen(const char * __restrict, const char * __restrict,
                                        ^
6 errors generated.
make[3]: *** [t/CMakeFiles/ogg.t.dir/build.make:82: t/CMakeFiles/ogg.t.dir/ogg.cc.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:234: t/CMakeFiles/ogg.t.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:214: t/CMakeFiles/check.dir/rule] Error 2
make: *** [Makefile:222: check] Error 2
builder for '/nix/store/4p18g8jzawjqrblf7ndnvsjswd974akj-opustags-1.5.1.drv' failed with exit code 2
error: build of '/nix/store/4p18g8jzawjqrblf7ndnvsjswd974akj-opustags-1.5.1.drv' failed

Alright! Too bad for the test suite. I’ll see if I can find a fmemopen replacement, but I’m not sure it’s worth it. At least the build work now.


fix(npm): use labels for npm_translate_lock(replace_packages)

This way real labels are passed through to the underlying rule which should handle bzlmod repository mappings.

Changes are visible to end-users: no
Test plan

Covered by existing test cases

This attempt to avoid breaking changes will not work. The wksp macro can change without breaking changes by making the npm_translate_lock macro switch to label:pkgs but that is not possible with bzlmod.
See https://github.com/aspect-build/rules_js/pull/1886 for alternate bzlmod API.


Use SweetAlert for logout message

Should be a very simple thing to do

Why is it you want that?  - it is very rare to see that on a panel or any software

@KasperFranz It appears whenever you click the Logout button.

The panel uses SweetAlert for all other alerts, so it makes sense to use it for the logout alert as well

closed by #634


Source/signal metadata document links in tasks.py don't work

The Google Sheets we use to maintain source/signal metadata are no longer viewable with the links in this update task.
This metadata is used for a few things:

signal name aliasing (see #1077)
counting the number of signals / time type (search count_signal_time_type)
possibly other that are harder to search for

Probably need to update these to whatever the new Google API for accessing CSV versions of Sheets is.

Fixed by re-adjusting the publishing status of the Google Sheets


[pytket-braket] Braket QPU device samples dimension from get_counts doesn't match input circuit qubits

When I run jobs through Rigetti Aspen-M-1 the dimension of the samples of the output is always 80.
as an example let's say I have a circuit which has 4 qubits.
The results.get_result().get_counts()
will return samples that are dimension 80
[0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ..... 0 0 0 0 0 1 0 0 0]
Please let me know if this is expected behavior
Package Versions:
pytket                          1.0.1
pytket-braket                   0.17.0
amazon-braket-schemas           1.8.0
amazon-braket-sdk               1.18.0
Update: I've been running some additional problems and I believe that this issue is more pervasive than originally thought.
I have since ran problem on OQC Lucy (on Braket) as well as IonQDevice and the same issue is coming into play where the measurement counts from the task object appear to always be the size of the quantum device in terms of qubits.
The circuit conversion looks fine to me same number of qubits for both circuits the pytket circuit and the braket circuit.
I'm going to check task submission next

Thanks for reporting this -- it does not look like expected behaviour. I will investigate.

I've been running some additional problems and I believe that this issue is more pervasive than originally thought.
I have since ran problem on OQC Lucy (on Braket) as well as IonQDevice and the same issue is coming into play where the measurement counts from the task object appear to always be the size of the quantum device in terms of qubits.
I'm guessing this is an issue with how pytket is submitting or converting it's circuits but I haven't got that far yet in debugging.

I think I've pinpointed the line that's causing the issue
https://github.com/CQCL/pytket-extensions/blob/develop/modules/pytket-braket/pytket/extensions/braket/backends/braket.py#L624

Yes, that is the line in question. I think the reason it was done like this was that some QPUs (IonQ) required the circuits to contain all qubits. But it would be better if this was hidden from the user, so that the results they get back only refer to the qubits of the original (smaller) circuit. This could potentially be done by storing the original qubits in the backend cache, and using them to reduce the results.

Would it be fine to remove the if statement in question for Braket?

I think that would cause errors with the IonQ backend.

yeah you're right of course

How do you tell which qubits are mapped to which registers on the devices?


Is this supposed to work for AutoModelForSequenceClassification and PEFT TaskType.SEQ_CLS?

The tutorial works fine but when i tried to modify it to perform a Classification task on a standard
Input_ids,  ClassLabel tokenized  dataset i got Trainer initialization errors related to ConstantLengthDataset assumptions in the SFT code.
Is there some combination of args i need to use? Or is the SFT code not ready to work with AutoModelForSequenceClassification and PEFT TaskType.SEQ_CLS?
fwiw, i also tried to pass in the untokenized Dataset ti the trainer
Dataset({
features: ['text', 'label'],
num_rows: 4937
})
'text': Value(dtype='string', id=None),
'label': ClassLabel(names=[ ...]
That failed because of np padding token specified. so i added
model.config.pad_token_id = tokenizer.pad_token_id
But then train blows up:
RuntimeError: 0D or 1D target tensor expected, multi-target not supported
So.. just wondering if i should keep trying or if TRL and SFT are not ready for Sequnce Classification ?

Hi @maadnfritz
Thanks for the issue, indeed the SFTTrainer does not support sequence classification with PEFT out of the box as this is a slighly different task. We might need to build a different Trainer for that to make it work

thanks for the reply. Great work btw

Thanks so much @maadnfritz ! 🎉
I will close the issue :) feel free to re-open


Support new React Native new architecture (TurboModules/Fabric)

See https://reactnative.dev/docs/new-architecture-library-intro
https://reactnative.dev/blog/2022/06/16/resources-migrating-your-react-native-library-to-the-new-architecture

It would be nice to have some kind of road map and what needs to be done. Maybe other devs can contribute as well to the work

@tom-sherman @TheRogue76 Any plans for this? Or any alternative packages that support reading/writing cookies?


Feature:  Have formatprg respect setlocal

If you search this repository or others for setlocal formatprg, you'll see that so many people assume formatprg respects this.  Unfortunately, formatprg is always global, which means that any plugin setting my formatprg for a certain language will cause unexpected results when I try to format my text in a different buffer with a different filetype (that has not set formatprg, such as a new buffer).
Please make formatprg local too.
There is formatexpr, but I can't figure out how to make it behave like formatprg without a lot of vimscript (and even then, it still doesn't work on gqap).

cf. https://groups.google.com/forum/#!msg/vim_dev/cFK1UjstyAk/mreb2H4VCtoJ


payback loan - Loan cannot be repaid in full

What happened:
When repaying a GME loan, there is always a small amount outstanding.
What you expected to happen:
I have repaid the full loan amount and expect the position to disappear.
How to reproduce it (as minimally and precisely as possible):

i have created a loan
I minted several stock tokens and DUSD
I have repaid one stock token (GME) in full.
after that, the GME position is still there and the amount grows again. e.g. 0.00000025

Anything else we need to know?:
How can I close this position completely?

/area/loans

@sandstumpen Might be linked to this issue also - https://github.com/DeFiCh/wallet/issues/1542 We are currently investigating

Hi, this might be due to fluctuations on interest rates while the payment has not been made. This is solved on 0.21.0 where you are allowed to overpay a bit to make sure everything is covered. Excess payment will be returned to your wallet.


Wr/memory usage

What does this PR do?
Begins writing StaticResource files as soon as possible, rather than deferring them to the WriteInfos and finalizers
What issues does this PR fix or reference?
1348, @W-10417338@
Functionality Before
A large spike in memory usage as SDR writes all SR files, up to 3GB but really unrestricted
Functionality After
no spike in memory usage when writing SR files
QA helpful notes:
clone the repo mentioned in the issue
open activity monitory
deploy everything in the project to a new SO
retrieve -m StaticResource while looking at activity monitory
notice huge spike in the memory right before it prints the table, the spinner even slows down

QA notes:
✅ memory on this one static resource doesn't spike
✅ using node perf_hooks results in ~5% faster throughput compared to original
🏁 I made some tweaks to explore parallelization options (sm/tweaks-fp)
✅ dropped ~25% (1s) from where this PR started (which was already faster than current)
let's break stuff...
😱 copied the static resource 10x and retrieved 9 of them simultaneously
✅ perf scales less than linearly (27.3s vs. 41.4 [9 * baseline from latest branch]).  There's some overlap happening as some wind down and the next ramp up, maybe?
✅ even doing 9 of these still kept peak memory usage under 3GB (you'd see it hit that ceiling, drop, then come back up again)


[FEEDSTOCK REQUEST] bitsandbytes

Describe the package you'd like added
bitsandbytes - 8-bit CUDA functions for PyTorch
Source and more info: https://github.com/TimDettmers/bitsandbytes
Describe how this package fits in with the project
CUDA wrapper with optimizations, and also allows use of system memory on GPUs.
Additional context
* submitted on behalf from Open-CE users at US Bank

covered in https://github.com/open-ce/open-ce/pull/1254


Add anime search

https://www.npmjs.com/package/popura this package seems good enough

done => waiting push

Welp, the main things are done, but seems like i can get moar infos with that module:
https://www.npmjs.com/package/mal-scraper
imma add this one as well

lets say its done for now


fix: additional attributes not added to fluentautocomplete

When adding extra attributes to the control they are not reflected in the output, I think there is a missing AdditionalAttributes on  the FluentTextField in the FluentAutoComplete.razor

Indeed, this will be corrected in the next Release.
See #2522


Terminal was not found but program path is correct

I try to open terminal via Sublime Text and i get error which is "Terminal was not found". I did some research for the problem and i found the problem cause.
If the terminal was setting like this and Sublime Text not run as administrator:

It get this error which is error message is misleading.

Solving is easy but the error message must redesign i think.

I don't follow the solution. Are you saying people need to turn off Cmder being run as an administrator by default?

Hi, Sorry for the misunderstanding.
If Sublime Text is running as an administrator, there is no problem running Cmder as an administrator.
If Sublime Text is not running as an administrator and if Cmder is running as administrator, an error message will appear.
In this case, the error message says that the program does not exist, but this is incorrect.
I think the correct message can be reported to the user. That's why I opened an issue. :)

Ah, I see. I don't think I have an ideal setup for inspecting the error code. Do you think you could submit a PR to fix this issue?

Unfortunately I am not available. Thank you for the offer.

Alright, going to leave this issue open as I don't have time to prioritize for this either =/

I have the same issue , terminal was not found .
some help !

What about #104? This PR prints the correct error message

@boullbane run both with same privilege


clang8:  warning: result of comparison of constant 64 with expression of type 'mfxHandleType' is always false

https://github.com/Intel-Media-SDK/MediaSDK/blob/b0a450f453c23d9a34fbfce5e2fa1efb34469d5c/samples/sample_common/include/vaapi_device.h#L133
This definition aka msdk API gives warning in clang-8:
warning: result of comparison of constant 64 with expression of type 'mfxHandleType' is always false
Can we, please, refactor the code to avoid fake msdk API or make permanent API modification if needed?

Fixed in e7eca2e99433e040dff3f672efe07f2249dc3560. Thank you @mgonchar.


Add basic SEO necessary metadata  content/tags/description.

@sagargg I am adding content, tags, description and image only. Is that okay?

@arjun-gautam Okay for me.


[vcpkg/scripts] Make cmake-vars file OPTIONAL

This fixes the case where a custom triplet specifies only one build type.
ping @Neumann-A , author of https://github.com/microsoft/vcpkg/pull/12936 where this line was introduced.
There's almost definitely a more robust solution than this, like one that might warn if the file was missing, but I feel like this PR is a good enough fix, since my custom triplet (Release-builds only) is broken without it.

Seems libarchive is failing. It shouldn't be from my changes... should it?

please close. The include should not be optional -> see #14580

@Neumann-A Thank you for implementing a better solution!