Can I use this only for motion sensors?

I currently have all my hue lights set up with Homekit, since they are supported out of the box.
I want to use Hue Motion Sensors, but haven't purchased because they don't work with HomeKit. I know there are other sensors available, but I'd prefer Hue ones.. I'd like to set it up to create scenes/rules using the Hue sensor. Example, detect motion with the hue sensor, set lights to X, set Nest to X.
Can I use this plugin, to ignore all the lights, but ONLY support the Motion Sensor? I don't want any duplicate lights, etc, showing up via siri, home app, etc.

You can only enable sensors  in config.json and disable lights, groups, etc., see the README.  Note that this will expose all sensors to homekit, not just the motion sensors.
I think the hue motion sensors are great value for money, but the standard hue app doesn't do them justice.  I actually control my lights through manually created hue bridge rules (so they work even when homekit doesn't feel like it), any I control my Sosos speakers through homekit rules (and another homebridge plug-in, which I haven't published yet).  When I enter a room, the lights (when it's dark) and speakers turn on automatically.  Leaving a room off is a bit more complicated, as the sensor detects motion, not presence.  I'm actually using a CLIPGenericStatus sensor to keep a presence state and the motion sensors in the adjacent rooms / hallway to detect leaving a room.  The lights and speakers only turn off automatically (after 5 minutes) when motion detected turns off within 15 seconds of motion detected turning on in an adjacent room.


Improvements in V2 docs

Description
Proposal
#proposal
Goal

Improve the documentation of the v2 strategies since they are becoming mainstream in Hummingbot and the current information provided does not get into much details on how the framework works under the hood.

Useful links before getting started:

Official Docs: https://hummingbot.org/strategies/
Github code: https://github.com/hummingbot/hummingbot-site/tree/main/docs/v2-strategies

What is expected:

Strategies V2 page: there are some concepts mixed and can be simplified generating more emphasis on when to use each strategy type (or just present the ones available in v2 to avoid confusion)
Content organization: the current situation starts with 2 walkthroughs, seems like will be better to start with the architecture to provide a general overview of how the framework works (include the flowcharts and the content that Patrick showed me before), and then the walkthrough. The structure can look like similar to this:

Strategy V2

Architecture

Market Data Provider
Executors
Controllers
Scripts

Getting started

Hummingbot Deploy
Running from source

Guides

Coding a controller (directional, mm, custom)
Backtesting a controller using notebooks
Adding your controller to Hummingbot Deploy and creating a configuration page in the dashboard

Blog post: blog post that we can add to our Academy explaining a custom strategy defined by the developer (nice to have not required)

Bounty

Sponsor: FOUNDATION
Bounty amount: 100,000 HBOT
Developer portion: 100,000 HBOT

I'd like to do it please.

assigned @p-meier for this bounty!

thanks @cardosofede
I'll started already and see how far I come this week.

I created a PR and am happy to receive feedback.
One issue I had is that I could not actually build the docs locally to check everything as I lack access to mkdocs-material-insiders  repository.
I contacted @cardosofede on Discord already about that.
Have a nice weekend.

Any updates so far? Still didn't get access to mkdocs-material-insiders. Otherwise it is considered finished from my side.

Thanks @fengtality. Could build everything and verify it renders correctly. So I consider it done from my side and wait for your comments.

Hey @p-meier good work on fleshing out the V2 docs. I'll do some re-organization, but overall I think your additions fulfill the bulk of the requirements of the bounty.
The one area I'd like to request more info is a walkthrough for users to create their own custom controllers, perhaps using a simple one based on the generic controller base class. This is what we meant by the Academy post, but I think the one you added is good as well.
* Coding a controller (directional, mm, custom)

@fengtality I added the missing post in the PR here: https://github.com/hummingbot/hummingbot-site/pull/379
As I wrote in the other one there was things missing and I wanted to deliver a clean state of my work. I assume if you merge the commits from that PR everything should be included.

hi @p-meier
Please submit the completed AML Policy form so we can process your payout. This is a one-time process for each wallet address. https://forms.gle/RpcA9rAZcMqmPi1TA

@nikspz thanks. Just filled out the form.

Thanks for your participation, the bounty has been sent to @p-meier . The fix has been deployed on development branch and hummingbot version 2.0.1

Available here:
https://hummingbot.org/academy-content/coding-a-custom-v2-controller-for-future-liquidations-on-binance/
https://hummingbot.org/academy-content/leveraging-ai-for-automated-copy-trading-on-discord/
https://hummingbot.org/academy-content/

@nikspz @fengtality there seems to be an error in the final merge. The content I wrote for the docs is missing in big parts on the live-page and does not reflect on what I submitted here in the bounty.
I booted up the local version of the site with my PR and this is different on what you have on the live page now:

Especially the graph with the architecture that @cardosofede wanted there is also missing. Maybe you want to recheck the merge.
Here are the comparison of the sites between the live-content and my local version. A lot seems to be missing.
v2_architecture_live.pdf
v2_architecture_bounty.pdf
v2_overview_bounty.pdf
v2_overview_live.pdf

@nikspz @fengtality there seems to be an error in the final merge. The content I wrote for the docs is missing in big parts on the live-page and does not reflect on what I submitted here in the bounty.
I booted up the local version of the site with my PR and this is different on what you have on the live page now:

Especially the graph with the architecture that @cardosofede wanted there is also missing. Maybe you want to recheck the merge.
Here are the comparison of the sites between the live-content and my local version. A lot seems to be missing.
v2_architecture_live.pdf v2_architecture_bounty.pdf v2_overview_bounty.pdf v2_overview_live.pdf

Hey @PatrickLiPM I edited what you submitted and didn't use everything. Note that I added the inheritance diagram to https://hummingbot.org/v2-strategies/. However, I'll take a closer look at these PDFs to see if more that I missed.

@fengtality if that was intentional then all good. Still makes me wonder as most of what I changed in the docs was removed, especially the graphics that @cardosofede wanted which I created during my Hummingbot Cohort and was the initial reason for the bounty.
 Just thought it was due to a merge error or conflict.


storage setting in pool.conf should not force -sd suffix

With the upgrade to 5.2 it became necessary for me to the storage parameter when using the bacula::director::pool resource.  I set this to the FQDN of my storage host, but the director now won't start because the pool.conf file now has bacula-sd.mydomain.org-sd.

This seems like something I missed in the 5.x upgrade.  I'll have to look for all instances in the template of -sd etc.

Bah!  I made a comment on the PR rather here.  I can make this work now by changing what I pass for storage to bacula::director::pool.  However, I'd like to unify things so that the name in storage.conf and the storage name in pool.conf come from a single Hiera setting.  Since I'm just using a default storage setup, it looks like I'd need to pass the unified value to bacula::storage::storage.

Hi @jflorian.  Were you able to work around this issue?  Does this still need to be addressed?

@xaque208 , I'm still using the same approached described above.  It seems it could/should be simpler, but I haven't had time to dig deeper.

If you get a chance to look a little closer @jflorian, just let me know if this can be closed out.

It's unlikely to happen by me any time soon.  (Blockers (other projects) before annoyances, ya know.)   Feel free to close this out if you'd rather not have it clutter things.

Thanks @jflorian.  Yeah, not trying to hassle.  Mostly realizing there has been a bunch of issues that I've been neglecting.  I'll have a review of the code, maybe this weekend and see what needs doing.


Update otel to lgtm task to use grafana cloud otlp endpoints

Request
https://grafana.com/docs/alloy/latest/tasks/opentelemetry-to-lgtm-stack/
Use case
When this guide was written Grafana Cloud did not have otlp endpoints for Loki and Mimir. Now that we have them we should use them!

It would be really lovely to get some documentation that details how to do this. For example, when I login to Grafana Cloud, the example configuration for Loki only includes a loki.write stanza for Grafana Cloud, not an OTel Loki Receiver + sending that through the Grafana Cloud OTLP exporter. Same for Prometheus.
My tracing pipeline is OTel receiver > memory limiter -> batch -> OTLP exporter, and then Loki and Prometheus for logs and metrics through their respective loki.write and prometheus.remote_write. I assume it's mostly a matter of changing it so the OTel receiver and the processors pass through metrics and logs to eventually otelcol.exporter.otlp.<name>.input, and have loki.source.* and prometheus.scrape.* forward_to into the memory processor. Having a complete example in the docs would be great.

https://gist.github.com/proffalken/ac9933d92c92432bae6be4bf705a302e has two examples configs, one for storing the Auth details in the config file, the second shows how to retrieve them from hashicorp vault using the new Vault integration.
I'll try to get something like this into the docs next week.

Mea culpa, I completely forgot about this.
I'll try and get to this soon.


[AutoRelease] t2-resource-2022-10-26-58504(Do not merge)

https://github.com/Azure/sdk-release-request/issues/2985
Live test success
https://dev.azure.com/azure-sdk/internal/_build?definitionId=1031
BuildTargetingString
azure-mgmt-resource
Skip.CreateApiReview
true

issue link:https://github.com/Azure/sdk-release-request/issues/2985


fix bug

Ⅰ. Describe what this PR does
Fixed #4107
This Pr is to correct pkg\ddc\juicefs\data_load.go:26:47: corrected "transfromer" to "transformers"
Ⅱ. Does this pull request fix one issue?

fixes #4107
Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

Add another commit

/assign @cheyang

/lgtm


BlackListedToken has no attribute 'objects'

Hello!
Awesome library, keep up the good work!
I encountered a bug in the latest release  which boils down to the following lines
https://github.com/jazzband/djangorestframework-simplejwt/blob/4d7c7649813f9eae4bd28ed17da685cd3a61f2fe/rest_framework_simplejwt/serializers.py#L141-L151
  File "/home/user/.cache/pypoetry/virtualenvs/MSWA2ZbW-py3.8/lib/python3.8/site-packages/rest_framework/serializers.py", line 436, in run_validation
    value = self.validate(value)
  File "/home/user/.cache/pypoetry/virtualenvs/MSWA2ZbW-py3.8/lib/python3.8/site-packages/rest_framework_simplejwt/serializers.py", line 150, in validate
    if BlacklistedToken.objects.filter(token__jti=jti).exists():
AttributeError: type object 'BlacklistedToken' has no attribute 'objects'

I think whats happening here is that since I don't have the blacklisted app in my installed apps as I dont require it, the BlacklistedToken model is being set as abstract=True and since we aren't specifically checking the presence of the app in the above lines, this error happened

But you have BLACKLIST_AFTER_ROTATION set to True. It doesn't make sense to have that True if you don't have the blacklist app installed. But I will mark this as a bug so that we do an additional check

But you have BLACKLIST_AFTER_ROTATION set to True. It doesn't make sense to have that True if you don't have the blacklist app installed. But I will mark this as a bug so that we do an additional check

It does not indeed however thats what the default value is (even though the getting started in docs doesnt add the blacklisted app to the installed apps) perhaps it would be better to explicitly state that you need to set it to False for better clarity ? Or just set the default value to False

Na I think we should be checking if the blacklist app is in INSTALLED_APPS; good catch!

Thanks for the bug report! Will be merged in next patch release

I just wanted to add that I had a production app hit this error as well after updating to 4.8.0. We've been using a pretty simple configuration without any blacklist middleware or settings.

Specifically during upgrade to 4.8.0? Interesting. The temporary solution @johnthagen would be to disable BLACKLIST_AFTER_ROTATION by doing BLACKLIST_AFTER_ROTATION = False. That way, no production hit. Will resolve in 4.8.1.
Please expect a hot fix to come out next week-ish (maybe Tuesday or sometime this weekend due to beginning of school) since I believe the language locales are also misaligned. I have no idea if po files need to have the line numbers properly aligned, but I assume they do, and I didn't update them so... yea.

Specifically during upgrade to 4.8.0? Interesting.

Yeah, when we moved our pinned version from 4.7.2 to 4.8.0 we also hit the issue @Kandeel4411 reports. I think his diagnosis of the issue is correct. Since we didn't specify any BLACKLIST items, it defaulted to True.
For now, we've pinned back to 4.7.2 and will move up to 4.8.1 once it's released.

What really needs to happen is I need push access to this repo... since I'm the only one maintaining it.

I hope that @jazzband will do that. We all appreciate you maintaining this important library!
They have some contact methods here: https://jazzband.co/about/contact

It may make more sense to default turn it off if INSTALLED_APPS does not include the blacklist app. That way, 1. #450 is not necessary and 2. we don't need to constantly check if the blacklist app is installed in the future.

It may make more sense to default turn it off if INSTALLED_APPS does not include the blacklist app. That way, 1. #450 is not necessary and 2. we don't need to constantly check if the blacklist app is installed in the future.

I agree with this, I have just encountered the same problem after going to 4.8.0 and it was solved by setting 'BLACKLIST_AFTER_ROTATION': False at settings, so it makes more sense to set it as false by default as you said.

Ok can someone quickly change the docs and the default value to False (I can't approve my own PRs).

Opened a PR

#455

Setting BLACKLIST_AFTER_ROTATION: True in a project without having installed the app will however still cause an issue in 5.0.0. Does that mean that #450 is needed anyway or can it be addressed in some sort of warning instead?

Since simplejwt is usually not added to INSTALLED_APPS unless translations are needed (unless i forgot the instructions), we can't use apps.py warnings. If it's not installed, adding a warning to the view will not prevent a crash. Maybe we can find a method in Django that actually makes raises the exception? If it's part of a model method, that'd be great.
Overall, I don't think that PR is necessary.

summary:
default setting BLACKLIST_AFTER_ROTATION  = True
-> BLACKLIST_AFTER_RATION will try to filter objects from model BlacklistedToken
-> model BlacklistedToken is abstract if blacklist isn't set in the installed apps.
-> add 'rest_framework_simplejwt.token_blacklist' to INSTALLED_APP
-> OR set BLACKLIST_AFTER_ROTATION = False
DEFAULTS = {
    'ACCESS_TOKEN_LIFETIME': timedelta(minutes=5),
    'REFRESH_TOKEN_LIFETIME': timedelta(days=1),
    'ROTATE_REFRESH_TOKENS': False,
    'BLACKLIST_AFTER_ROTATION': True,
    'UPDATE_LAST_LOGIN': False,

default setting of BLACKLIST_AFTER_ROTATION is set True in 4.8.0.
class TokenVerifySerializer(serializers.Serializer):
    token = serializers.CharField()

    def validate(self, attrs):
        token = UntypedToken(attrs['token'])

        if api_settings.BLACKLIST_AFTER_ROTATION:
            jti = token.get(api_settings.JTI_CLAIM)
            if BlacklistedToken.objects.filter(token__jti=jti).exists():
                raise ValidationError("Token is blacklisted")

        return {}

if BLACKLIST_AFTER_RATION set,
it will go for BlacklistedToken model and
->
class BlacklistedToken(models.Model):
    id = models.BigAutoField(primary_key=True, serialize=False)
    token = models.OneToOneField(OutstandingToken, on_delete=models.CASCADE)

    blacklisted_at = models.DateTimeField(auto_now_add=True)

    class Meta:
        # Work around for a bug in Django:
        # https://code.djangoproject.com/ticket/19422
        #
        # Also see corresponding ticket:
        # https://github.com/encode/django-rest-framework/issues/705
        abstract = 'rest_framework_simplejwt.token_blacklist' not in settings.INSTALLED_APPS

    def __str__(self):
        return 'Blacklisted token for {}'.format(self.token.user)

the model of BlacklistedToken is "abstract" if blacklist isn't set in the installed apps.


Fix expander i2c address and touchpad issues

MCP23017_INTFA is the register address, not the i2c bus addr. Using the newly introduced IO_INT_ADDR resolved also the touchpad sensivity problem mentioned in 6e512f72824ace4b47cf3539a510ad54e1c30a68. In main.c I made use of the library exposed function that leaves out dealing with the expander addresses completely.
(I am right now testing how this can also be incorporated in the checkBootPads - I will get a inkplate10v2 soon and that has a different expander chip)

Thx 4 merging. I wonder about this sensivity issue, because there is no code involved in calibrating them. They're connected via their converter ic's directly to the expander. Did you do a "--target clean"? I had problems with the expander functions when rebuilding until I cleaned up the build and the library cache.

Thanks for that clean suggestion. That seemed to work on my device, so I added the suggestion to the README as well.


Diff page error when session is removed in task

Desiree mailed us that a certain compare page gave a server error.
After some debugging, the issue was located to be in proposals/diff/sessions.html:178:
<th>{% get_verbose_field_name "tasks" "session" "tasks_duration" session.net_duration %}</th>
This errors out if session == None (which happens when a session is not present in a newer revision).
We could try to make a quick fix, by checking which one of the two (session or p_session) we should use.
Or, wait on #537 (altough we need to test if the issue also occurs there).

This does not cause an error with the new version of the diff page on #537. It behaves as it should.


VersionedClientlibsTransformerFactory tries to load Clientlib with Hash

Required Information

[ ] AEM Version, including Service Packs, Cumulative Fix Packs, etc: 6.4 SP3
[ ] ACS AEM Commons Version: 4.0.0
[ ] Reproducible on Latest? yes

Expected Behavior
When rendering a page, the following log message is not written:
15.03.2019 13:54:16.409 level=INFO [<IP_ADDRESS> [1552654455690] GET /path/to/home.html HTTP/1.1] com.adobe.acs.commons.rewriter.impl.VersionedClientlibsTransformerFactory Refreshing client libraries cache, because /etc.clientlibs/os/core/clientlibs/clientlib-js.664e7fc7a8f796d3200d7ebb8063d8bb could not be found
Within the method resolveProxiedClientLibrary the clientlibs is tried to be found with the hash and thus cannot be found. If the clientlib would have been looked for without the hash (os/core/clientlibs/clientlib-js), it would imho work as expected.
Actual Behavior
Every page rendering causes log messages:
15.03.2019 13:54:16.409 level=INFO [<IP_ADDRESS> [1552654455690] GET /path/to/home.html HTTP/1.1] com.adobe.acs.commons.rewriter.impl.VersionedClientlibsTransformerFactory Refreshing client libraries cache, because /etc.clientlibs/os/core/clientlibs/clientlib-js.664e7fc7a8f796d3200d7ebb8063d8bb could not be found
Steps to Reproduce

Have an instance of AEM 6.4 with acs-commons 4.0.0
Have a page that uses a client lib with allowProxy=true
Request that page
Message is being logged

Links
None so far

what is the actual repository path where this clientlib is located?

I tried to reproduce it on vanilla AEM 6.5:

request http://localhost:6502/editor.html/content/we-retail/us/en/experience.html and checked that I have lines like this in markup:
<link rel="stylesheet" href="/etc.clientlibs/granite/ui/components/foundation/clientlibs/foundation.css" type="text/css">
install the latest snapshot of acs-aem-commons
added "versioned-clientlib" to /libs/cq/config/rewriter/default (just as hack)
reloaded the above page and checked the markup. Now I have this markup:
<link rel="stylesheet" href="/etc.clientlibs/granite/ui/components/foundation/clientlibs/foundation.5f890da4d48d04ee6ebe778cb241d94f.css" type="text/css"> which seems quite ok to me.

Additionally I don't see that warning in the logs. I would strongly assume that on AEM 6.4.3 the situation is the same.

The real path of the clientlib is: /apps/os/core/clientlibs/clientlib-js
The path the VersionedClientlibsTransformerFactory tries to load is: /apps/os/core/clientlibs/clientlib-js.664e7fc7a8f796d3200d7ebb8063d8bb
As this path does not exist the VersionedClientlibsTransformerFactory logs the INFO message.
Can you confirm that, while debugging VersionedClientlibsTransformerFactory on line 279, you get a valid absolutePath?

The question I have: Why is the hash already appended at that time? It shouldn't.
It starts in getVersionedPath() (line 234) where the HtmlLIbrary object is populated. Later on the hash is appended. Thus the libraryPath parameter in that call must already contain the hash, which shouldn't be the case.

@hluetolf-helvetia I assume this is a function of the allowProxy = true? If you set allowProxy = false do this works correctly?

I have found the problem - it's the fact that we have an own mechanism that renders the path to the clientlib into the markup (with hash). There are several reasons we do so.
I assume that when we change our mechanism to not add a hash itself the problem will be solved. Interestingly we did not face that problem with AEM 6.2 and an older version of ACS Commons.
Thanks for your support and Sorry for the circumstances.

Preventing our mechanism from adding the hash actually solved the problem. But there is one thing I would like to ask.
We use the Preload mechanism for faster page loading. For this, we first add a tag like following to the markup:

And later on, that library gets loaded as normal.
That preload tags are not rewritten with a hash. Is it possible to have hashes added as well for these tags?

(Seems the markup didn't make it into your latest update ...)

Hi @joerghoh, ups, trying again:
<link rel="preload" href="/etc.clientlibs/os/core/clientlibs/clientlib.min.css" as="css"/>

How is the tag with preload generated?
On Fri, Apr 26, 2019 at 5:09 AM hluetolf-helvetia<EMAIL_ADDRESS>wrote:

Hi @joerghoh https://github.com/joerghoh, ups, trying again:

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Adobe-Consulting-Services/acs-aem-commons/issues/1857#issuecomment-486986319,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAQC4RKVANUF5CZ47DLXW3PSLBFDANCNFSM4HILT5JA
.

Just taking the markup I posted above, have you already tried
<link rel="preload" href="/etc.clientlibs/os/core/clientlibs/clientlib.min.css" type="text/css" />
?

The reason I ask my question @hluetolf-helvetia is that AFAIK there's no support in AEM for adding the preload attribute to generated <link> tags (possibly/hopefully this information is outdated). So my guess is that in your component code you have something like this:
<link rel="preload" href="/etc.clientlibs/os/core/clientlibs/clientlib.min.css" as="css"/>
...some stuff here...
<sly data-sly-use.clientlib="/libs/granite/sightly/templates/clientlib.html"
     data-sly-call="${clientlib.css @ categories='os.core' "/>

Agree with @joerghoh  that adding the type attribute should address adding the hash, but it won't actually remove the double inclusion.
Incidentally, IMO it would be an interesting feature to add to ACS AEM Commons to get the preload attribute automatically added for client libraries included the "regular" way (e.g. by setting some property on the cq:ClientLibraryFolder node). That would avoid the double inclusion. This would probably make sense, though, as a separate rewriter processor.

@joerghoh Thank you very much for your feedback - adding the type="text/css"  to the CSS Preload tag actually worked and should be valid for preloading, great!
On the JS side it does not yet work as the parser expects JS libraries to be included with a script-Tag. Unfortunately the preloading mechanism expects preloaded JS libraries to be declared with link-Tags: https://developer.mozilla.org/en-US/docs/Web/HTML/Preloading_content
@justinedelson We actually include the clientlibs in a different way because:

Preloading (some JS libraries are preloaded in the head and then loaded at the bottom of the page) which is not supported by /libs/granite/sightly/templates/clientlib.html
Ability to dynamically evaluate the clientlib categories within the Java model

In the head:
<link rel="preload" href="${base.jsClientLibPath}" as="script">
At the bottom:
<script type="text/javascript" src="${base.jsClientLibPath}" defer></script>
It would be very nice if there was a possibility to have these JS libraries preloaded as well.

@hluetolf-helvetia I don't see any reason why those limitations can't be overcome by a separate transformer (which would run after the static reference rewriter) which automatically adds the preload link elements.
Referencing a client library by its path (vs. its category) is generally an anti-pattern since the path may change. Possibly this is not a concern if you are only handling your own client libraries this way, but the path of an OOTB client library is not considered to be part of its API (only the category is considered API).

In any case, closing this issue. If you would like to contribute such a transformer, please open a separate issue/pull request.

@justinedelson Thank you very much for your response.
Just to make sure to have understood: you won't implement such a Transformer on your side for the moment, correct?
One more thing: within our model we do work with categories, not with paths. The paths will then be resolved using the ClientLibrary API.

@hluetolf-helvetia personally, I've more or less retired from day-to-day development :) this is obviously an interesting case, but to set your expectations properly, no I don't see myself doing this.
bq. One more thing: within our model we do work with categories, not with paths. The paths will then be resolved using the ClientLibrary API.
good to know.

Hi @justinedelson, thanks againg for your response.
We decided to rely on our own service and disabled the Versioned Clientlibs for the moment.
If we should run into issues we would then rethink opening a new issue and contributing on this.


MudTextField, in a MudForm, does not submit on Enter

Feature request type
Enhance component
Component name
MudTextField
Is your feature request related to a problem?
Using the standard EditForm, the Textfield submits on enter out of the box. However, when using the MudForm, it does not. Instead, I have to manually submit by hooking it up to a button.

Alternatively I'd have to listen for an OnKeyDown button that relates to the Enter key.

Also, note that I am using the Fluent Validation example.
https://mudblazor.com/components/form#using-fluent-validation
I know I could use EditForm, with the accompanying Blazored-FluentValidation library to implement the desired solution - however, the preferred solution would be to utilise only MudBlazor for the entire application
Describe the solution you'd like
I wish I could utilise something similar to an onsubmit on a MudTextField within a MudForm. Just like how it works out of the box within an EditForm
Have you seen this feature anywhere else?
No response
Describe alternatives you've considered
The alternative is to use EditForm with Blazored-FluentValidation. Or listen for specific key presses, or degrade the user experience by adding a required search button.
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Yes MudForm does not have key definitions.
But you can look at #4478.
You can easily implement this solution in your project.

Mentioned workaround isn't good enough solution for my needs. From my perspective, MudForm should provide this option. Please consider reopening this or similar ticket.

Mentioned workaround isn't good enough solution for my needs. From my perspective, MudForm should provide this option. Please consider reopening this or similar ticket. Same option missing for MudDialog where I was also unable to use EditForm workaround due to mandatory ,  and  element structure.

Mentioned workaround isn't good enough solution for my needs. From my perspective, MudForm should provide this option. Please consider reopening this or similar ticket. Same option missing for MudDialog where I was also unable to use EditForm workaround due to mandatory ,  and  element structure.


Switch to .Status.LoadBalancer.Ingress

Is your feature request related to a problem? Please describe.
Kubernetes has deprecated and will remove the .Spec.LoadBalancerIP field at some point. It should be replaced by annotations to steer any controller which needs to assign IP addresses (like the metallb controller or kube-vip controller are doing).
However some kube-vip code needs to change to not ignore services without the .Spec.LoadBalancerIP field and instead use the list at .Status.LoadBalancer.Ingress to get the IP addresses to announce.
Describe the solution you'd like
Use .Status.LoadBalancer.Ingress to find IPs to announce.
Describe alternatives you've considered
None / Deprecation from Kubernetes
Additional context
https://github.com/metallb/metallb/issues/1182
https://github.com/kubernetes/api/blob/master/core/v1/types.go#L4609

The status shouldn't be populated by the ccm (providing the IP address).. so annotations are the way forward, although I've read the issue a few times, I don't think this depreciation is happening any time soon 😀

I think it is actually the way forward from Kubernetes that the status field shall be populated by the ccm (controlled by annotations). Mainly for two reasons: Multiple LoadBalancer IPs and DualStack support (loadbalancerIP does only support a single IP of course).
Also I've noticed that when using the MetalLB controller in conjunction with kube-vip as a speaker, when controlling MetalLB with annotations, the IP addresses only gets set in the status instead of the spec.

In my opinion, interpreting the comment in the API docs, the ccm should look for LoadBalancerIP or annotation (or both) and then set the status field which should then be used by something like kube-vip or the metallb speaker.

Hmm.. but to me that seems weird 😂 ... Setting the status means that the loadBalancer is Ready. The CCM (in my mind) configure the service design (i.e. spec), then the technology that is providing the networking part should set the status once the networking is done.

Just FYI, Deprecated doesn't mean it is going to be dropped https://github.com/kubernetes/kubernetes/pull/107235#issuecomment-1320020675

just discovered this by trying to use cilium LB IPAM.   It sets .Status.LoadBalancer.Ingress, but it doesn't have an ability to announce via ARP/NDP.   It would be really nice for kube-vip to be able to do this.

This can be closed since kube-vip.io/loadbalancerIPs annotation was implemented in https://github.com/kube-vip/kube-vip/pull/528

closing because it was implemented by https://github.com/kube-vip/kube-vip/pull/722 👍


IPPM_plotter visual changes and refactoring

Aims to:

[ ] Fixes #224

[x] Adds function names to edges instead of legend
[x] Adds arrowhead
[ ] Adds option to print function equation instead
[ ] Adds special case for short edges - avoid zigzags!
[x] Make the nodes into little hexagons like on kymata.org

[x] Fixes #352
[x] Fixes #360

Stretch-goals:

#364
#363

Does not include, but relates to:

#362

More detailed changes, with motivation

Rename clusterers and strategies: When I was reading through the code, I was confused where, for example, there was a class CustomGMM(CustomClusterer) and a sklearn.cluster.GMM in close proximity, or a sklearn.cluster.DBSCAN and a class DBSCAN(DenoisingStrategy) — it wasn't always clear just from reading the usages what roles were being fulfilled. So I renamed all clusterers to be *Clusterer, and renamed all strategies to be *Strategy. I also shortened the filenames from custom_clusterers.py to cluster.py.
Using constants to name hemispheres: there are a lot of places where the strings "leftHemisphere" and "rightHemisphere" were being written as literals in the code, which always feels risky for a maintainance point of view. Since we also have other places where we name hemspheres using strings, I've set one place for the names in constants.py, and reused them everywhere.
Renamed Node(NamedTuple) to IPPMNode(NamedTuple): this was copied into multiple files, so I just replaced with a single instance and update usages.
Renamed IPPMHexel to IPPMSpike: This was used both for actual hexels (i.e. pre-denoising) and the collapsed peaks (after denoising). Also in theory IPPMs could be generated from sensor data, which has sensors rather than hexels. So I changed the name to be more general.
**Wraps DBSCAN and MeanShift into CustomClusterers**: to reduce deep coupling with sklearn and keep the CustomClusterer` abstract class as the true superclass.

A lot of the changes merged to main as part of #309 and #322 introduce conflicts with this branch, including moved files and things which are a pain to resolve. I think I'll just remake my changes on top and then force-push the new branch to this upstream to continue with this PR.

Rebased over main

Updated GMM to not exclude anomalies since I did not like the strategy we used. Also added a check for singular covariance matrix, which indicates we should rerun the GMM algorithm.
Updated unit and integration tests to reflect new functionality.

New CR adds functionality:

Can now merge hemispheres into one before clustering to double datapoints. If the hemispheres behave the same, then this will make results far more robust. One con is that the hyperparameter settings will have to be adjusted to reflect the greater density of data, e.g., base_bin_size for AMP. If hemispheres are merged, the final output is written to the hemisphere specified in the "hemi" hyperparameter.
Shuffling removes spurious correlations between rows. Consequently, the IPPM will be able to generalize easier. Although expression plots are time-series data, we don't actually analyze auto-correlation or any other temporal features. In one of my experiments, I will analyze the impact of incorporating a history of the last X magnitudes as an additional feature.

@neukym I've moved out some of the "nice-to-have" things into separate issues because this PR is too big already! I'll tackle those as separate smaller PRs when they become a priority.

@neukym I can't request you as a reviewer because you opened the PR, but please review this! :)

Looks good! Thanks both for some great work. Accepting and merging.


Display selected environment in statusbar

Once the selection of environments from #15 is implemented it would be nice to have the possibility to display the currently selected environment in the statusbar.

Basic support for lualine is here:
require('lualine').setup({
  sections = {
    lualine_a = {},
    lualine_b = {},
    lualine_c = { "filename" },
    lualine_x = { "kulala", "encoding", "fileformat", "branch"},
    lualine_y = { "progress" },
    lualine_z = { "location" }
  },
})

Screenshot


Unlikelyhood.ConvAi unavailable in pypi

Hey, when trying to use any unlikelyhood.convai model there is an error:
Traceback (most recent call last):
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/ilya/.vscode-server/extensions/ms-python.python-2021.5.842923320/pythonFiles/lib/python/debugpy/__main__.py", line 45, in <module>
    cli.main()
  File "/home/ilya/.vscode-server/extensions/ms-python.python-2021.5.842923320/pythonFiles/lib/python/debugpy/../debugpy/server/cli.py", line 444, in main
    run()
  File "/home/ilya/.vscode-server/extensions/ms-python.python-2021.5.842923320/pythonFiles/lib/python/debugpy/../debugpy/server/cli.py", line 285, in run_file
    runpy.run_path(target_as_str, run_name=compat.force_str("__main__"))
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/runpy.py", line 268, in run_path
    return _run_module_code(code, init_globals, run_name,
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/runpy.py", line 97, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/ilya/repos/openchat/chat.py", line 2, in <module>
    OpenChat(model="unlikelihood.convai2.vocab.alpha.1e-1", device="cpu")
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/site-packages/openchat/openchat.py", line 25, in __init__
    self.agent = self.create_agent_by_name(
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/site-packages/openchat/openchat.py", line 79, in create_agent_by_name
    return UnlikelihoodAgent(name, device, maxlen)
  File "/home/ilya/miniconda3/envs/oc/lib/python3.9/site-packages/openchat/agents/unlikelihood.py", line 53, in __init__
    option, model_class = self.set_options(
TypeError: set_options() missing 1 required positional argument: 'device'

I see that on github version this is fixed, but it's not when installing Openchat with pip install.

@ibivibiv
When will the work in progress be finished? When you're done, it would be nice to deploy to pypi.

@ibivibiv
Since there is no response from you, I will decide and proceed.

문제를 해결했습니다.
아래 스크립트를 실행해보시겠어요?
pip uninstall openchat
pip install openchat


AppShellHeader and AppShellMain overlaping

Hi!
Using this simple expample, when header={"height": 60} is not set, Header and Main overlaping, only when you set a header it works fine.
Is this a bug or works as it?
dmc.AppShell(
    # header={"height": 60},
    children=[
        dmc.AppShellHeader("header"),
        dmc.AppShellMain([dmc.Text("some content", c="red")]),
    ]
)

If you are using Header in your app, you must specify its height.


Better Build System

Currently, because GitHub Actions does not have a workflow template feature, there are many workflow definitions in the .github/workflows folder, and  I'm going to change that.
I will make the build system detects which Dockerfile that changes, get the path of it, and then proceed to build it and push it to the container image registry.

I'll work on this tomorrow at hzmifork/docker-node

We'll start with #4. Then after that, I'll start experimenting with this new build system.
After the new build system is mature, I might be migrating these Dockerfiles to Hazmi35/docker-base. Also, I need to know how to manage the Dockerfiles stuffs properly first.

We'll start with #4. Then after that, I'll start experimenting with this new build system.
After the new build system is mature, I might be migrating these Dockerfiles to Hazmi35/docker-base. Also, I need to know how to manage the Dockerfiles stuffs properly first.

Or probably, copy how docker/official-images works lol

Should be fixed with #203

Reusable workflow is great, and #204 will make this repo use it, but still, there are too many files for different variants in .github/workflow. I will still open this issue until I managed to find a nice and better way to reduce these files like this: node-14.yml, node-16.yml, node-17.yml node-18.yml

Nevermind, found a solution


Linux (wrangler publish) slows to a halt when 38000+ html files in their own folder.

🐛 Bug Repor
Environment

operating system:ubuntu 20.04lts
output of rustc -V: none
output of node -v: v14.5.0
output of wrangler -V:  1.11.0
contents of wrangler.toml

name = "XXX"
type = "webpack"
account_id = "XXX"
workers_dev = true
route = ""
zone_id = "XXX"

[site]
bucket = "./public"
Steps to reproduce

generate 38000+ html files that live in their own folder under public.
spin up a linux instance ubuntu 20.04 (used t3a and a t5a simular results)
wrangler publish
watch it slowly crawl to a halt
process randomly stops with no error.

What did you expect to see?
my static webpage uploaded in a timely fashion.
What did you see instead?
process randomly stops with no error.

Same issue as #1511, we should find a way to speed up KV uploads.


add more info in raft ready slow log

We can log how many regions do append, message and apply.

Seem we can add the WriteBatch size so we can know how many bytes we write.


Not able to use subnet_ids in ec2 module

Hi , here i am sharing my ec2 module block and error can you help to solve this ?
`module "private_ec2" {
source  = "terraform-aws-modules/ec2-instance/aws"
version = "4.2.0"
name = "private-ec2-ins"
ami                    = data.aws_ami.ubuntu.id
instance_type          = var.instance_type
key_name               = var.key_pair
#monitoring             = true
vpc_security_group_ids = [module.bastion_sg.security_group_id]
subnet_ids             = [module.vpc.private_subnets[0], module.vpc.private_subnets[1]]
user_data =  file("${path.module}/install.sh")
tags = {
Terraform   = "true"
Environment = "dev"
}
}`
and error in terraform validate

Use subnet_id as suggested in the error message. See examples in the readme.

Yes @antonbabenko , but i am trying add more than one subnets. and here i am using subnet_id  instead of subnet_ids
In may case i defined subnet details in variable section for vpc

Then i will be calling those in ec2 module from vpc module outputs

and now error in terraform validate

Can you help for this ?


Prometheus metrics build info: retina_build_info

Is your feature request related to a problem? Please describe.
it's quite common to have a xxx_build_info metric that gives information about the application.
Describe the solution you'd like
Could you add a Prometheus metrics retina_build_info with some labels: version (git tag), architecture, ...
Describe alternatives you've considered
Additional context

May i take this issue?


Can't get Alcatraz to work with Xcode 6.2

I used Alcatraz with Xcode 6.1 but after I updated to 6.2 today, it's no longer appearing in the Window menu. I tried exiting Xcode and rerunning the install script, but it doesn't seem to help.

Add A16FF353-8441-459E-A50C-B071F53F51B7 to DVTPlugInCompatibilityUUIDs of Alcatraz.xcplugin/Contents/Info.plist

Same

Same for me. I also tried to build from the master repo, still not showing up in the Window menu.

Adding row UUID to the plist solved the problem for me.

Could you please be a little more specific? I just started using Xcode/Alcatraz. Many thanks!
—Xiaoning
Sent from Mailbox iPhone
On Mon, Mar 9, 2015 at 6:21 PM, ronbarr<EMAIL_ADDRESS>wrote:

Adding row UUID to the plist solved the problem for me.
Reply to this email directly or view it on GitHub:
https://github.com/supermarin/Alcatraz/issues/218#issuecomment-77956869

Sure - I took Zach Howe's advice above. Step by step:

Find the plugin in ~Library/Application Support/Developer/Shared/Xcode/Plugins
Open the contents of the plugin
Open the Info.plist in Xcode
Expand the DVTPlugInCompatibilityUUIDs array
Create a new entry and paste in A16FF353-8441-459E-A50C-B071F53F51B7C

@ronbarr's instructions work but there is an extraneous C in the UUID, i.e.:
A16FF353-8441-459E-A50C-B071F53F51B7

Thank you powerje - I owe you a beer!

@ronbarr @powerje Thank you guys!!

@zachhowe It's working! Thank you!

@powerje it's not working after restarting Xcode.

Would be great to have a new release...

Yes, I'll try to get to it tonight :)

It doesn't work for me. I double tested that I am openning the correct Xcode 6.2 version, I doubled the checked the UUID of my Xcode app in contents and it is correct. I pasted it into the info plist of Alcatraz and everything, but it doesn't appear in Window tab.
Any solutions?
Thanks!

Ok I found it. I was openning Library/Application Support/Alcatraz instead of Library/Application Support/Developer/Shared/Xcode/Plugins.
The instructions given by @ronbarr work perfectly fine.

@ronbarr's instructions worked for me, with @powerje's UUID correction. Thanks!

Yep, this fixed it for me.  Thank you!

Worked for me ;)

+1, thanks @ronbarr and @powerje

Shit, most of plugins just stop to work after this update!

@anclefeudor A lot of them haven't updated their own Info.plist, you can add the UUID to the respective plugins the same way.

Back in business! Thank you @zachhowe and @ronbarr!

@ronbarr  Adding 'A16FF353-8441-459E-A50C-B071F53F51B7' row into DVTPlugInCompatibilityUUIDs arrays doesn't work for me

Adding A16FF353-8441-459E-A50C-B071F53F51B7 into DVTPlugInCompatibilityUUIDs works with Xcode 6.2

Adding 'A16FF353-8441-459E-A50C-B071F53F51B7' row into DVTPlugInCompatibilityUUIDs arrays doesn't work for me

Create a new entry and paste in A16FF353-8441-459E-A50C-B071F53F51B7C

or A16FF353-8441-459E-A50C-B071F53F51B7?

No "C"
—Xiaoning
Sent from Mailbox iPhone
On Wed, Mar 11, 2015 at 9:18 AM, Iulian Onofrei<EMAIL_ADDRESS>wrote:

Create a new entry and paste in A16FF353-8441-459E-A50C-B071F53F51B7C
or A16FF353-8441-459E-A50C-B071F53F51B7?

Reply to this email directly or view it on GitHub:
https://github.com/supermarin/Alcatraz/issues/218#issuecomment-78260652

@wxn0000, It worked, thanks! It would be great if @ronbarr could edit his comment.

If you read the next comment, which explicitly pointed out that there was a typo.
—Xiaoning
Sent from Mailbox iPhone
On Wed, Mar 11, 2015 at 10:04 AM, Iulian Onofrei<EMAIL_ADDRESS>wrote:

@wxn0000, It worked, thanks! It would be great if @ronbarr could edit his comment.
Reply to this email directly or view it on GitHub:
https://github.com/supermarin/Alcatraz/issues/218#issuecomment-78268326

Yeah wtf, there is no C in UUID. Why is it broken though on each release?

@wxn0000, I saw, but I was in a hurry and I didn't read it (because, as we all know, users don't read anything). And for others like me (or not) it's way way way better to edit that typo instead of pointing it out in another reply. What if the reply wasn't immediately following the one with the typo?

I've updated the comment

@ronbarr, thanks, it's work!


Python rewrite

Test coverage:

Python: https://github.com/Qonfused/OCE-Build/pull/4#issuecomment-1605038718

Tasks:
Library (C++, Python)

[x] Rewrite parsers

[x] Tokenizer/AST

[x] (Native)
[x] Stringified (asserting all values as string)
[x] Flat (stringifying all nested keys)

[x] Plist - Apple PLIST 1.0

[x] Dictionary (root)
[ ] Array (root)

[x] YAML - YAML 1.2

[ ] (Native)
[x] Annotated (see example config.yml)
[x] Stringified (asserting all values as string)
[ ] Flat (stringifying all nested keys)

[ ] (TODO)

Executable (C/C++ compiled binary)

[ ] Add platform targets:

[ ] Windows
[ ] Linux
[ ] OSX / macOS

[ ] Add compiler targets:

[ ] x86-32 and x86-64 targets
[ ] arm32 and arm64 targets

[ ] Add cross-platform install script
[ ] CLI commands

[ ] (TODO)

Will overlook parsing (native) YAML types for now.

Seems pipenv caching is broken on GitHub actions.

Testing new Codecoverage workflow.

 | foo | bar |
 | --- | --- |
 | a.  | b.  |

A workaround for subclassing pathlib.Path is possible in Python 3.12. While this issue doesn't appear to affect the latest available alpha version of 3.12, it may be worth looking into ways to work around the issue.
Notably, Python 3.12 now allows for subclassing PurePath and Path classes (gh-68320, gh-88302 - Allow for pathlib.Path subclassing
#31691).
Ultimately this issue is expected to be fixed in https://github.com/python/cpython/issues/85281 (shipped in builds 3.12.0a7 and later).
Further discussion on the topic can be found here:
https://discuss.python.org/t/make-pathlib-extensible/3428/42

You can test this by installing 3.12.0b3 locally and running poetry env use 3.12.

Going to upload a WhateverGreen CI build here for reference:
WhateverGreen-CI.zip

Current progress on the registry system.

A potential oversight is the use of the commit SHA as the checksum for remote files. Though this reduces the need to download or extract the contents of a remote file, it does not represent the checksum of the actual code or binary and is an open surface for a supply-chain attack for external registries. This is however agnostic to the build environment or context, which has a safer guarantee using a commit checksum.
This potentially an area that can be improved to tighten security between lockfile generation and install time, though this isn't an area considered by most package managers (i.e. NPM or Yarn). If custom external registries outside of git or mercurial are supported, it should probably become an area of concern to ensure proper security.

Will look into migrating to SHA-256 for GitHub commit checksums; there's a couple of good overviews of the tradeoffs made on git's side to main compatibility with the SHA 1 family:

https://stackoverflow.com/questions/60087759/git-is-moving-to-new-hashing-algorithm-sha-256-but-why-git-community-settled-on
https://git-scm.com/docs/hash-function-transition/#_objective

The approach used by PNPM I think is the cleanest way to separate these concerns. The metadata retrieved from the resolvers isn't complete with information about the actual file contents (except very basic info from the PathResolver). This is all that is needed to reliably retrieve the same files and is all that should be required to link to a project dependency.
Instead, the addition of a packages scope to the lock file allows for separating the use of file hashing for revalidating a local cache of ZIP-compressed archives. This can be handled separately from the initial linking of project dependencies and should make for a much more modular cache validation system.
The idea is to use the previous version of the lockfile schema (example here) and separate additional extraction/checksum properties to a packages scope.

Overview of progress since https://github.com/Qonfused/OCE-Build/pull/4#issuecomment-1635244942:

What's left for an MVP is just plugging together the rest of the build pipeline.

The previous CI failures were caused by a failure in an upstream dependency of Poetry; it was caused by a pyyaml regression in 6.0.0 that was subsequently fixed in 6.0.1

Schema docs will need to be updated for each OpenCore release.
Commit builds of OpenCore will need to be smoke-tested against any schema validators in case new entries are added to the schema and must be specially handled.

Unfortunately due to a bug in the paths filtering behavior for GitHub actions, there is currently a block preventing progress on the CI for orchestrating integration testing. This will force current progress in this PR to be merged pre-maturely in order to continue.
The core library is mostly stable and tested, however, what is remaining regarding development and test coverage is primarily the pipeline supporting ocebuild_cli:

For the CLI, the build and lock commands are mostly finished and are pending the patch command to be implemented, which will handle the remaining config.plist patching for the build pipeline.


⚠ Processors has degraded performance

In 167d978, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 51 ms

Resolved: Processors performance has improved in 8152b68.


Is there similar infrastructure for Windows?

Is there a similar Azure Windows Update server so that we don't need to go to public Windows Update server to fetch update?

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

ID: c796f6e1-4c21-87a7-3555-48dffdb3c7ce
Version Independent ID: 2878848f-33ed-fbfe-9b3c-93b86f339c6f
Content: Red Hat Update Infrastructure
Content Source: articles/virtual-machines/linux/update-infrastructure-redhat.md
Service: virtual-machines-linux
GitHub Login: @asinn826
Microsoft Alias: borisb

@CharmanderJieniJieni sort of. Each region has it's own update server that the VMs reach out to for updates. So this is done internally on the Azure backend rather than over the public internet.
Let me know if you have additional questions.

Our problem is that we do not allow egress traffic from the vm subnet, which blocks communication to Windows Update server, would you please let me know the CIDR block of Azure Windows Update server so that I can whitelist them?

Ah Im sorry I was thinking of the activation servers not the update servers.
For the Update servers, the IP address will often change for security purposes. You can whitelist the following endpoints though

http://windowsupdate.microsoft.com
http://*.windowsupdate.microsoft.com
https://*.windowsupdate.microsoft.com
http://*.update.microsoft.com
https://*.update.microsoft.com
http://*.windowsupdate.com
http://download.windowsupdate.com
http://download.microsoft.com
http://*.download.windowsupdate.com
http://wustat.windows.com
http://ntservicepack.microsoft.com
http://stats.microsoft.com
https://stats.microsoft.com

This is also already a feature suggestion on our Uservoice page
https://feedback.azure.com/forums/216843-virtual-machines/suggestions/17690035-add-outbound-security-rule-to-windows-update


Varargs

HTML fragments sometimes look like this
div := λ(: f1 HTML).
div := λ(: f1 HTML)(: f2 HTML).
div := λ(: f1 HTML)(: f2 HTML)(: f3 HTML).

it would be nice to just write
div := λ(: fs HTML...).

There should also be support for type-sequencing
div := λ(: al Attribute...)(: fs HTML...).

accept varargs during typecheck
accept varargs during context::lookup
destructure varargs during blob-call


Hide search history dropdown on input blur

Resolves an issue where the search history dropdown was not properly hidden when the input field lost focus, specifically when pressing 'esc' while the input was in focus.

Thanks for your PR :)
BTW if you have only fixed a bug, please use the bugfixes next time
https://github.com/hakadao/BewlyBewly?tab=readme-ov-file#about-branches

TBH, I don't want the effect where clicking the search history popup causes it to close itself
https://github.com/hakadao/BewlyBewly/assets/33394391/874a166e-3e70-4e15-a419-04af0405afba

TBH, I don't want the effect where clicking the search history popup causes it to close itself
2024-01-29.01-14-19.mp4

fixes in #245


[Feature]: Is it compatible with the configuration format of TSUP?

What problem does this feature solve?
The configuration format of TSUP looks very simple
What does the proposed API look like?
tsup

We support different configurations for each format, and it can be easily migrated from tsup.

rslib seems to have not been released stably, and the configuration document is not available yet.
我想尝试一下用来打包我的库autostore，tsup配置如下：
export default defineConfig(
    {
        entry: [
            'src/index.ts'
        ],
        format: ['esm','cjs'],
        dts: true,
        splitting: true,
        sourcemap: true,
        clean: true,
        treeshake:true,
        minify: true,
        noExternal:['flex-tools','mitt']
    }  )

对应的rslib配置应该是怎么样的？

see https://lib.rsbuild.dev/guide/migration/tsup#configuration-migration

See https://lib.rsbuild.dev/guide/migration/tsup.


extra spark packages in datalab

Hi,
The datalab init script works great, but I was wondering how to make additional spark packages (like e.g. the avro package from databricks) available in the datalab notebook. In the jupyter init script you can add them to the PYSPARK_SUBMIT_ARGS. Can we do something similar here?
Thanks

+1   Please make this happen.

This is fixed in #101 using the same solution as the Jupyter initialization action.


why official tensorflow lite android demo faster than building library by myself

I use the official android demo here,and run the model I created by myself under device rk3288, the inference cost is about 200ms, but when I build libtensorflowlite.so by myself using the command below, it cost almost 500ms, I can't understand the gap. Does any one know how to build tensorflow-lite c++  library by ourself, and get the same level of performance by official?
The build command is here:
bazel build -c opt --crosstool_top=//external:android/crosstool  --host_crosstool_top=@bazel_tools//tools/cpp:toolchain --cxxopt="-std=c++11" --fat_apk_cpu=armeabi-v7a  --config=android_arm //tensorflow/lite:libtensorflowlite.so

Try using:
--config=android_arm64 instead of --fat_apk_cpu=armeabi-v7a --config=android_arm

Try using:
--config=android_arm64 instead of --fat_apk_cpu=armeabi-v7a --config=android_arm

Using arm64 cup architecture, it will build with ruy, and I can get the same inference time cost. But the cpu architecture of rk3288 is 32 bit, only support armeabi-v7a. I test inference cost between official android demo and project created by myself under rk3288 of armeabi-v7a, the time cost vary greatly, so I wander if I missed some building definitions

I am using the same so, and write test code all by c++ native, then running under rk3288, it costs 100ms, so I think it maybe something wrong when embedding into android project

I think I found the solution. When I open camera, the inference time cost suddenly increase.

I am using the same so, and write test code all by c++ native, then running under rk3288, it costs 100ms, so I think it maybe something wrong when embedding into android project

hi,I have read your question and i need your help, would like to ask you some questions? I used your build command to build libtensorflowlite.so, but an error occurred :

My guess is that the relevant environment versions don't match, my tensorflow is release-1.14.0 and bazel-0.18.0 .Can you give me some advice please?

You should configure tensorflow project before running bazel command


Unable to install yo, npm install --global yo fails.

Type of issue
Bug
My environment

OS version/details: Linux x86_64
Node version: v10.13.0
npm version: 6.4.1
Version of yo : 2.0.5 - This is the latest version currently, however installation is failing so I could not run the yo version command.

Expected behavior
npm install --global yo should install the yo command line tool.
Current behavior
Installation fails due to new dependancy in the newly published 2.7.0 version of the global-tunnel-ng npm. This tries to install the node npm module which doesn't appear to work with --global.
See: https://github.com/np-maintain/global-tunnel/blame/master/package.json#L16
Steps to reproduce the behavior
Our original failure was in a docker build and the easiest way to reproduce the issue in a totally clean environment is via docker:
docker run -it node npm install --global yo (latest node)
docker run -it node:8 npm install --global yo (node 8)
docker run -it node:10 npm install --global yo (node 10)

It also fails with node and npm installed on Ubuntu via apt, that installs quite an old level of npm.
Command line output
# docker run -it node:10 npm install --global yo
npm WARN deprecated<EMAIL_ADDRESS>cross-spawn no longer requires a build toolchain, use it instead

><EMAIL_ADDRESS>preinstall /usr/local/lib/node_modules/yo/node_modules/node
> node installArchSpecificPackage

npm ERR! path /root/.npm/_logs
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall scandir
npm ERR! Error: EACCES: permission denied, scandir '/root/.npm/_logs'
npm ERR!  { [Error: EACCES: permission denied, scandir '/root/.npm/_logs']
npm ERR!   stack:
npm ERR!    'Error: EACCES: permission denied, scandir \'/root/.npm/_logs\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'scandir',
npm ERR!   path: '/root/.npm/_logs' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).
glob error { [Error: EACCES: permission denied, scandir '/root/.npm/_logs']
  stack:
   'Error: EACCES: permission denied, scandir \'/root/.npm/_logs\'',
  errno: -13,
  code: 'EACCES',
  syscall: 'scandir',
  path: '/root/.npm/_logs' }
npm ERR! path /root/.npm/_cacache/index-v5/14/d7/ea219c5ebc10fb0a36ef7e8846ddffeccbde34792bd22566ab58fbd91ac7
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall open
npm ERR! Error: EACCES: permission denied, open '/root/.npm/_cacache/index-v5/14/d7/ea219c5ebc10fb0a36ef7e8846ddffeccbde34792bd22566ab58fbd91ac7'
npm ERR!  { [Error: EACCES: permission denied, open '/root/.npm/_cacache/index-v5/14/d7/ea219c5ebc10fb0a36ef7e8846ddffeccbde34792bd22566ab58fbd91ac7']
npm ERR!   cause:
npm ERR!    { Error: EACCES: permission denied, open '/root/.npm/_cacache/index-v5/14/d7/ea219c5ebc10fb0a36ef7e8846ddffeccbde34792bd22566ab58fbd91ac7'
npm ERR!      errno: -13,
npm ERR!      code: 'EACCES',
npm ERR!      syscall: 'open',
npm ERR!      path:
npm ERR!       '/root/.npm/_cacache/index-v5/14/d7/ea219c5ebc10fb0a36ef7e8846ddffeccbde34792bd22566ab58fbd91ac7' },
npm ERR!   isOperational: true,
npm ERR!   stack:
npm ERR!    'Error: EACCES: permission denied, open \'/root/.npm/_cacache/index-v5/14/d7/ea219c5ebc10fb0a36ef7e8846ddffeccbde34792bd22566ab58fbd91ac7\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'open',
npm ERR!   path:
npm ERR!    '/root/.npm/_cacache/index-v5/14/d7/ea219c5ebc10fb0a36ef7e8846ddffeccbde34792bd22566ab58fbd91ac7' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).
internal/modules/cjs/loader.js:582
    throw err;
    ^

Error: Cannot find module 'node-linux-x64/package.json'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:580:15)
    at Function.resolve (internal/modules/cjs/helpers.js:30:19)
    at ChildProcess.<anonymous> (/usr/local/lib/node_modules/yo/node_modules/node-bin-setup/index.js:18:27)
    at ChildProcess.emit (events.js:182:13)
    at maybeClose (internal/child_process.js:962:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:251:5)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>preinstall: `node installArchSpecificPackage`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>preinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2018-11-21T10_28_38_226Z-debug.log

To confirm the issue I forked  and created a branch that fixed global-tunnel-ng to version 2.6.0 in the package.json for yo: https://github.com/hhellyer/yo/tree/global-tunnel-ng-2.6.0
With the level changed in package.json running:
docker run -it node:10 npm install --global hhellyer/yo#global-tunnel-ng-2.6.0
installed yo successfully, running docker run -it node:10 npm install --global hhellyer/yo to install from master failed.

'Error: EACCES: permission denied, scandir \'/root/.npm/_logs\'',
Looks like you'll need to run with sudo or change the user.

@SBoudrias - no, I checked, it's running as root. There's something about the install script for the node npm (a very confusing name) that doesn't like being installed globally.
However someone has now published an update to global-tunnel-ng to remove node from the dependencies and published 2.7.1.
That's resolved this and it can probably now be closed.


Add more info to the Deploying section

Hi everyone, It's a question and also a recommendations.
Is gunicorn required for properly deploying sanic apps? Docs. doesn't say anything about pitfalls and which option is better (using gunicorn or the sanic server itself).

We don't really have enough real world data to subscribe an optimal solution.  There is a third option by the way: something like nginx or haproxy in front of a raw sanic (presumably single process) server or multiple single process sanic servers.

If running Sanic in a high volume production environment, you would probably want to run it in multiple separate stateless processes (share state via datebase or related mechanism), behind some kind of load balancing solution (nginx, haproxy, etc...)
If writing a proof of concept app, you can probably ignore those options at first and use a standalone sanic app, or something like docker-compose, if other components are needed.


Updated release workflow

This PR removes the docker image from the release workflow, which will re-enable the automatic PyPi upload.

@jammont or @pgbrodrick, could one of you merge this in? I'd like to get the 2.10.5 version uploaded to PyPi soon.