Operation timed out

inPoint.read(64)
dev.read(0x81, 64, 0)
When I open a thread to read the data,Is there a way not to trigger this exception[Operation timed out],
Because the thread I'm opening is always getting the data
If a timeout is set, it will still be triggered if the data is not read when the time is up
To be precise, when you don't read the data,This exception is not raised

I also want to know how to release resources correctly，Because I don't have a method call like close,It caused me to fail to open another link. It should be occupied

dev.read(0x81, 64, 0)

Please include the complete output with LIBUSB_DEBUG=4 and PYUSB_DEBUG=debug.
I would also like you to paste the complete code example (I'm assuming it's pretty similar to #313, but I would like to be sure).  Please paste it inline (with ``` markup) instead of using screenshots.
One more thing: what PyUSB version are you using?

I also want to know how to release resources correctly，Because I don't have a method call like close,It caused me to fail to open another link. It should be occupied

Take a look at the tutorial.

@jonasmalacofilho Sorry, I will not deal with the above problem for the moment.I didn't find a way in the tutorial to release the resource (close()),

pyusb==1.0.2
I'm using this version

@jonasmalacofilho
usb.util.dispose_resources(dev)
I may have found a way to free up resources，
It's really useful to do it，
I don't know if that's the way it works，Or there are other ways

Yes it is.  From the tutorial section linked above:

If you want to claim and release interfaces manually, you may use the claim_interface and release_interface functions.  claim_interface will claim the specified interface if the device has not done it yet.  If the device already claimed the interface, it does nothing.  In a similar way, release_interface will release the specified interface if it is claimed.  If the interface is not claimed, it does nothing. You can use manual interface claim to solve the configuration selection problem described in the libusb documentation.
If you want to free all resources allocated by the device object (including interfaces claimed), you can use the dispose_resources function.  It releases all resources allocated and puts the device object (but not the device hardware itself) in the state it was at the time when the find function returned.

ERROR: --- Failed to read. ---
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\Avinash\OneDrive - hyderabad.bits-pilani.ac.in\Desktop\Number Of cycles\Potentiostat_SW_A9\Potentiostat_communication.py", line 80, in usb_read
usb_input = self.ep_in.read(size, timeout)
File "C:\Users\Avinash\AppData\Local\Programs\Python\Python310\lib\site-packages\usb\core.py", line 301, in read
return self.device.read(self.bEndpointAddress, size, self.interface, timeout)
File "C:\Users\Avinash\AppData\Local\Programs\Python\Python310\lib\site-packages\usb\core.py", line 656, in read
return fn(
File "C:\Users\Avinash\AppData\Local\Programs\Python\Python310\lib\site-packages\usb\backend\libusb0.py", line 481, in bulk_read
return self.__read(_lib.usb_bulk_read,
File "C:\Users\Avinash\AppData\Local\Programs\Python\Python310\lib\site-packages\usb\backend\libusb0.py", line 566, in __read
ret = int(_check(fn(
File "C:\Users\Avinash\AppData\Local\Programs\Python\Python310\lib\site-packages\usb\backend\libusb0.py", line 387, in _check
raise USBError(errmsg, ret)
usb.core.USBError: [Errno None] b'libusb0-dll:err [_usb_reap_async] timeout error\n

@shuvragood,
Please stop

spamming our issue tracker, especially old/closed issues;
posting tracebacks without accompanying text and context;
ignoring our replies

at once.  This is your only warning.
If you want to report a bug in PyUSB, please open a new issue.  On the other hand, if you just want to ask for some help, then use the discussions tab; but first consult our documentation (tutorial and FAQ), as well as try to find and read relevant past issues and discussions.  And in either case always include context, especially information about your device, what are you trying to do, a code example, etc.


How to use external Table component?

What version of React-Table are you using?
Your bug may already be fixed in the latest release. Run yarn upgrade react-table!
Place your version here...
6.7.4
What bug are you experiencing, or what feature are you proposing?
Please include a detailed explanation here...
I was planning to use an external Table component. It has properties 'striped' and 'hover' which corresponds to react-table's className='-striped -highlight', but the color is much better than react-table's own color. In addition its 'th' is by default bold.
I tried following code:
import { Table } from 'reactstrap';

return (
            <ReactTable data={data}
                        columns={columns}
                        TableComponent={ Table }
            />);

The table is shown but its 'th' is not bold.
If I change to following code:
            <ReactTable data={props.leases}
                        columns={columns}
                        className='-striped -highlight'
                        getTheadThProps={() => ({ className: 'font-weight-bold'})}
                        TableComponent={ Table }
             />

I can see 'th' is bold but it is because I manually set it with getTheadThProps. And className '-striped -highlight' is working because it is manually being passed.
so my questions are:

Is my way of using external Table Component correct?
How to pass some properties to external component, like 'striped hover'?

You probably need to re-read the ReactTable documentation again as well as review the ReactTable CSS.
ReactTable is a complete standalone table component which does NOT use the default HTML table elements (like table, tbody, thead, tr, td - etc). So there is really no simple way to use the Table component from reactstrap. You need to build up your own CSS based on the ReactTable css.


🐛 Bug Report - Guarding against spurious Basic authentication

Bug description
Context: I have created a mixed system, where I still allow OAuth against local users, but also allow social OAuth. It is possible I have done something wrong there, but let's still look at what happens downstream. (Sorry that code is not open yet.)
In the FastAPI-OpenAPI /docs page, when I initiate OAuth and it calls my local token endpoint, the browser sends a 'authorization': 'Basic Og==' header (for reasons that still elude me). This corresponds to a param value of ':'. Because it is not empty, jwt_decode gets called in OAuth2Backend:authenticate (at middleware.py:109), raises an exception and I get an unauthorized error.
First, I think a little more defensive coding would be appropriate in this function: I.e. not calling jwt_decode unless the scheme is 'Bearer'; maybe guard against the exception, etc. (Will provide a PR separately.)
Second, I made a subclass of OAuth2Backend in my code to guard against this case, but injecting it entailed also making a subclass of OAuth2Middleware; I think the backend could be provided as an optional parameter of the latter.
Regards
Reproduction URL
No response
Reproduction steps

Create an application that allows both FastAPI/OpenAPI token login against internal users and social login (...)
Access the /docs page (OpenAPI)
Press the Authorize button
We get an unauthorized result on the /token route. The response content is "Not enough segments", which is a Jose error. The /token request contains an unexplained "Authorization: Basic Og==" header.

Screenshots
No response
Logs
INFO:     <IP_ADDRESS>:8000 - "POST /api/token HTTP/1.1" 401 Unauthorized

Browsers
Firefox, Safari
OS
Mac

Hi @maparent, I understand your problem and would like to reproduce it myself. Also, I reviewed your pull request, and I think checking scheme.lower() != 'bearer' is not appropriate. Could you please provide a sample application I could run and test locally?

Hi @maparent, I appreciate the issue you have faced in your non-standard system and reported about it. I am very interested in solving the problem, and for that, I need a sample application that would help me reproduce the issue and find solutions that don't affect the rest functionality. If you could add the minimal subsystem of your application to the demonstration, it would be the best contribution from you.

I am closing this issue because of the inactivity. Feel free to reopen it in the future.


LG V30刷MIUI11后adb激活黑阈出现以下报错

checking for stable..fail
[command] pm path me.piebridge.brevent
package:/data/app/me.piebridge.brevent-EfUbirl9tSAB6U6OJ_--vA==/base.apk
please report bug to https://github.com/brevent/Brevent/issues/new with logs below
Click to show logs
--- crash start ---
[command] logcat -b crash -t '12-27 14:48:27.000' -d
--- crash end ---
--- brevent start ---
[command] logcat -b main -t '12-27 14:48:27.000' -d -s BreventLoader BreventServer
--- brevent end ---

please report bug to https://github.com/brevent/Brevent/issues/new with logs above

使用root时也会显示未启用，但下拉栏又提示运行正常

没有日志。如果正常的话，可能只是提示问题。
最新版加强了检测。


Add ENABLE_INSTALL option to manage 'install' target

Opening this in a replace for https://github.com/google/cpu_features/pull/303

Thx for the PR @amitin !


update aspnet-webpack to webpack 3

A newer version of aspnet-webpack isn't required for running webpack 3, I think at the moment it is relatively safe to ignore the warning about that when restoring packages.

Yes but then we can't do npm shrinkwrap

Duplicate of #1126


loadData - NullPointerException when type not provided and column name invalid

Environment
Liquibase Version: 4.2.2
Liquibase Integration & Version: maven
Liquibase Extension(s) & Version:
Database Vendor & Version: H2
Operating System Type & Version: Windows 10
Description
When loadData has a column without type defined, it tries to determine type from DB metadata (method retrieveMissingColumnLoadTypes).
When the column name is invalid, NullPointerException is thrown.
It is problematic when loadData has many columns. It takes time to find invalid column.
Steps To Reproduce
Add loadData change with column without type provided and with invalid column name:
        <loadData  file="foo.csv" relativeToChangelogFile="true" separator="," tableName="FOO">
            <column header="INVALID" name="INVALID"/> <!-- not type provided, there is no column INVALID in FOO table -->
        </loadData>

Actual Behavior
When loadData has a column without type defined, it tries to determine type from DB metadata.
When the column name is invalid, NullPointerException is thrown.
liquibase.change.core.LoadDataChange code (lines from 659):
            DataType dataType = tableColumns.get(entry.getKey()).getType(); //tableColumns.get(entry.getKey()) returns null and getType() causes NPE
            if (dataType == null) {
                LOG.warning(LogType.LOG, String.format(coreBundle.getString("unable.to.find.load.data.type"),
                    columnConfig.toString(), snapshotOfTable.toString()));
                columnConfig.setType(LOAD_DATA_TYPE.STRING.toString());
            }

Expected/Desired Behavior
loadData should throw an exception with invalid column name instead of NullPointerException or log warning
            Column column= tableColumns.get(entry.getKey());
            if (column == null || column.getType() == null) {
                LOG.warning(LogType.LOG, String.format(coreBundle.getString("unable.to.find.load.data.type"),
                    columnConfig.toString(), snapshotOfTable.toString()));
                columnConfig.setType(LOAD_DATA_TYPE.STRING.toString());
            }

Additional Context
Add any other context about the problem here.

Thanks @kdebski85 for writing up this enhancement request.  We will add it to the list of issues that we are processing.

Fixed by 4.4.5 version, is not it?

Issue is already fixed for liquibase 4.15. Try updating to our latest version. If the issue continues for you, please re-open the issue and we will look more into it. Thanks!


[BugFix] Fix session variable load image bug

Why I'm doing:
The VariableMgr should be an attribute of the GlobalStateMgr for saving image, and cannot be singleton. Because the checkpoint uses another memory.
What I'm doing:
Change VariableMgr to the attribute of GlobalStateMgr.
Fixes #50922
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.3
[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

@mergifyio rebase


people autocomplete: Fix it doesn't pop if @ entered in new line.

We only consider @ when the preceding char is either  , \n, :
or #. Because every email as @ in it and we don't want to trigger
suggestions in such cases.
Fixes: #3289

Try entering more than 5 lines of text and then trying an @ mention. The popup is cutting off content at the top. You may want to look at that since you're fixing this anyway.

@armaanahluwalia On Android or iOS? I can't reproduce. Can you please share the screenshot?

@armaanahluwalia The current implementation definitely has issues with height which we can improve but is surprisingly tricky so we delayed it for later.

Its a pretty bad bug for a pretty common use case aka typing longer messages on zulip with an @ mention.
See Bug Video 2

Thanks for the video @armaanahluwalia
I agree it is worse than I thought and worth fixing.

Thanks @jainkuniya for this fix! Merged.
This function in general is pretty convoluted and hard to follow, and this change unfortunately makes it a little bit more so. I think there are more issues lurking that are hard to see because of the complexity of it. So I'd love to see a followup to make it simpler and clearer. Filed #3345 with more details on that.

@armaanahluwalia Thanks for that helpful video!
Please go ahead and file that as an issue. Here on a loosely related PR thread, it's liable to get forgotten. :wink:


POSIX wrapper for pthreads

Brief feature description
We need a POSIX wrapper for pthreads to get rid of exceptions and undefined behavior.
For posix platforms the wrapper shall support:

Setting scheduler priority

https://man7.org/linux/man-pages/man3/pthread_setschedprio.3.html

Set CPU affinity

https://man7.org/linux/man-pages/man3/pthread_setaffinity_np.3.html

Set stack size

See, https://man7.org/linux/man-pages/man3/pthread_attr_setstack.3.html
https://man7.org/linux/man-pages/man3/pthread_attr_setstacksize.3.html

The destructor shall call join by default, see std::jthread https://en.cppreference.com/w/cpp/thread/jthread
Explicit thread termination:

https://man7.org/linux/man-pages/man3/pthread_exit.3.html

Optionally, it would be awesome when it supports

https://man7.org/linux/man-pages/man3/pthread_equal.3.html
https://man7.org/linux/man-pages/man3/pthread_self.3.html
Set the scheduler

https://man7.org/linux/man-pages/man3/pthread_attr_setschedparam.3.html

Set contention scope:

https://man7.org/linux/man-pages/man3/pthread_attr_setscope.3.html

Set stack address

https://man7.org/linux/man-pages/man3/pthread_attr_setstackaddr.3.html

Set cleanup handlers

https://man7.org/linux/man-pages/man3/pthread_cleanup_push.3.html

Tasks

[ ] implement wrapper class with must have features
[ ] replace all std::thread occurrences
[ ] add awesome optional features

@FerdinandSpitzschnueffler since we cannot use the heap I think setting the stack address is more of a must have than a nice to have.


PCF Data Exchange standard output

I haven't seen any mention of this, but I think it would be interesting to explore: https://wbcsd.github.io/data-exchange-protocol/v2/
It seems like the Impact Framework here could dovetail nicely with the PCF Data Exchange standard I mentioned above:
The Impact Framework captures/documents inputs and methodology in an auditable/reproducible way, whilst the PCF Data Exchange standard is, I think, focused mainly on just capturing the outputs in a structured way (by product, timeframe, region, etc) and making them easily usable by other organizations/consumers to improve their own emissions estimates.
Not sure what this would look like exactly, but I think having an IF output format that produces data in the PCF Data Exchange format might be a starting place to explore.

Hi @grugnog - yes!! I have certainly been thinking about this recently, and diving into the PCF standard specifically. I think there is a lot of potential to make these systems interoperable. I think a good action would be if I transcribe some of my notes on this into a post on our discussion forum and if you or anyone else has insight or commentary, we can have a back and forth there - I'll try to get to this today/tomorrow and I'll be sure to tag you for visibiity.

here's the post https://github.com/Green-Software-Foundation/if/discussions/905

Closing as moved to discussions

@jmcook1186 great - thank you!


Make the title func follow some style guide

This template func could be very useful, if it was done properly.
Right now it title cases first char of each word.
So
This is a title => "This Is A Title"
From the doc:
// Title returns a copy of the string s with all Unicode letters that begin words
// mapped to their title case.

Have a look at http://titlecapitalization.com/
Pick a style, but it would cool if AP style was the default, then add an option for the other two.
Do not underestimate the importance of this.
@anthonyfok - you are the style guide / copy edit expert in here. What do you think? I can implement this if more people than me thinks it is important ...

I think this would be useful :+1:

@bep: Hoho!  You are flattering me!  I am no expert.  ;-)
But yes, I think what you suggest would be a great thing to have.
Hugo docs used to use text-transform: capitalize for the sidebar menu,
and having "Of", "The" etc. capitalized was very disconcerting,
hence commit 769ab9e22476f3ddfbffae62f9ece3a8f2213d38.
The only concern I have is that languages other than English may have different styles/rules.  For example, it seems to me that French titles tend to use "sentence case" rather than "title case".  But I think I am worrying too much.  ;-)
English is most likely the most-used language for Hugo and for any static website generator / CMS out there, so I'd say it is a very valuable feature and a noble effort.  Thank you for taking this initiative!

I'm from Norway, and we have no title case ...

Note/Update: This issue is marked as stale, and I may have said something earlier about "opening a thread on the discussion forum". Please don't.
If this is a bug and you can still reproduce this error on the latest release or the master branch, please reply with all of the information you have about it in order to keep the issue open.
If this is a feature request, and you feel that it is still relevant and valuable, please tell us why.

I'd not say it is a bug, but... "This Is A Title" just looks terrible, although English is not my native language. I don't care which style to use, but any style would be significantly better than no style at all.
My actual use case is to display all category names of a site, and I'm in a dilemma.  In the latter case, I could use string | humanize | title, but it gives me "This Is A Category". If only the original category names were stored and accessible from .Site.Taxonomies.categories...


GET https://<IP_ADDRESS>:9443/api/am/publisher/v1/subscriptions is not working as expected

Description:
APIM 310
Retrieving all subscriptions for the user's APIs return a Bad request.
GET https://<IP_ADDRESS>:9443/api/am/publisher/v1/subscriptions
Response:
{"code":400,"message":"Bad Request","description":"Validation Error","moreInfo":"","error":[{"code":"400_subscriptionsGet.arg0","message":"subscriptionsGet.arg0: may not be null","description":null}]}
Steps to reproduce:

Create an API and subscribe it to an app
Use below curl command to retrieve all subscriptions

curl -X GET "https://localhost:9443/api/am/publisher/v1/subscriptions" -H  "accept: application/json" -u admin:admin -k
or
curl -X GET "https://localhost:9443/api/am/publisher/v1/subscriptions" -H  "accept: application/json" -H "Authorization: Bearer 1e99cbc4-cd8e-3fa3-ae6a-cb273ce48672" -k (token bound with apim:subscription_view)

Observe above mentioned response

This resource requires the apiId to be sent as a query param right?
curl -X GET "https://localhost:9443/api/am/publisher/v1/subscriptions?apiId=bab78d5b-93d1-40f0-a220-1a68b429d406" -H "accept: application/json" -u admin:admin -k


Issue with PHP 8

Hi,
I updated my php to 8 and Yii to 1.1.23 and now this extension does not work. I dont get any errors, just a blank page whenever is use the extension.

Can you check your server logs for errors?


Legacy storage

This storage would be compatible with v1 - a transition from v1 to v2 will happen without data loss.
Storage Backend API available in the RFC
Blocked
#131

@Krizzu question: If there are not going to be breaking changes, so, why are you considering changing the version number to 2.x.x?

@BrodaNoel 	There are breaking changes regarding API you use (RFC available here, but no breaking changes in terms of stored data.
So you'll have to update your codebase to use new API (if you decide to move on to v2), but your users won't lose data stored.

Are the "Storage creation options" tasks still planned for v2?
I just saw this issue was closed and those tasks not checked off, so I wasn't entirely sure of the intention. Cheers :)


deep-reblame stays "loading" after going back

Visit https://github.com/sindresorhus/refined-github/blame/77e11bd49548f5ff883aad34b4e3e94346c3ccf2/source/background.ts#L2
alt-click reblame icon on 3rd line
Go "back" in the browser history

Not happening to me in chrome.


New Release?

Seems like it has been awhile since last release.  Any plans for a new one?

@or-shachar do you know the status of the refactoring/moving to Java?

Still waiting for a contribution around this.
But is it really a release holder?

Do we have something we want to release?

It's not blocking me as I can clone and build from source, but I noticed that it's been some time since you did a release (it's what the documentation recommends to download)

@or-shachar can you please review https://github.com/wix/exodus/pull/55 so I can merge it.
After that we can do a new release I guess

done https://github.com/wix/exodus/releases/tag/v0.2


Add Functions sample for ImageMagick

See https://cloud.google.com/functions/docs/tutorials/imagemagick
for examples in other languages.
Currently there's no automated test for this - see README.md for
details.

Second commit is now present - PTAL, and I'll rebase to a single commit when ready.

Failures are unrelated to Functions. Merging.


Input data with different lengths / filled with NAs

I'm trying to use modAL in combination with tslearn to classify timeseries of different lengths.
tslearn supports variable-length time series by filling the shorter time series up with NAs, but modAL calls
check_X_y(X, y, accept_sparse=True, ensure_2d=False, allow_nd=True, multi_output=True)

without setting force_all_finite = 'allow-nan'.
Is there a reason for not allowing NAs, or did this use case just not come up before?
Thanks a lot!

Seems like a relatively straightforward update might be to add force_all_finite: bool or str = True as a parameter to BaseLearner init and then pass self.force_all_finite to check_X_y in each function where it is called (_add_training_data, _fit_on_new and fit).

Thanks for the observation and sorry for the late answer! I have just reached this task in my backlog :)
This case hasn't come up before. I don't see any reason to not allow NaNs, so we can just set force_all_finite = 'allow-nan' in every call of check_X_y. I like the solution of @zaksamalik, so I'll add this sometime during this week.

Cool, thanks a lot!

I have fixed a problem and additionally released the new version, this fix included. Let me know if there is a problem!

Hi, it seems the issue is still present in Ranked batch-mode sampling.
Reprex (mostly from Ranked batch-mode sampling documentation)
import numpy as np
import xgboost as xgb
from functools import partial
from modAL.batch import uncertainty_batch_sampling
from modAL.models import ActiveLearner

iris = load_iris()
X_raw = iris['data']
y_raw = iris['target']

# Isolate our examples for our labeled dataset.
n_labeled_examples = X_raw.shape[0]
training_indices = np.random.randint(low=0, high=n_labeled_examples + 1, size=3)

X_train = X_raw[training_indices]
y_train = y_raw[training_indices]

# Isolate the non-training examples we'll be querying.
X_pool = np.delete(X_raw, training_indices, axis=0)
y_pool = np.delete(y_raw, training_indices, axis=0)

# Setting an column's entry as np.nan
X_pool[0][0] = np.nan

# Pre-set our batch sampling to retrieve 3 samples at a time.
BATCH_SIZE = 3
preset_batch = partial(uncertainty_batch_sampling, n_instances=BATCH_SIZE)

# Specify our active learning model.
learner = ActiveLearner(
  estimator=xgb.XGBClassifier(),
  X_training=X_train,
  y_training=y_train,
  query_strategy=preset_batch,
  force_all_finite=False

)

query_index, query_instance = learner.query(X_pool)

Error message

Click to expand!
ValueError                                Traceback (most recent call last)
 in
     40 )
     41
---> 42 query_index, query_instance = learner.query(X_pool)

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/modAL/models/base.py in query(self, *query_args, **query_kwargs)
    201             labelled upon query synthesis.
    202         """
--> 203         query_result = self.query_strategy(self, *query_args, **query_kwargs)
    204         return query_result
    205

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/modAL/batch.py in uncertainty_batch_sampling(classifier, X, n_instances, metric, n_jobs, **uncertainty_measure_kwargs)
    208     uncertainty = classifier_uncertainty(classifier, X, **uncertainty_measure_kwargs)
    209     query_indices = ranked_batch(classifier, unlabeled=X, uncertainty_scores=uncertainty,
--> 210                                  n_instances=n_instances, metric=metric, n_jobs=n_jobs)
    211     return query_indices, X[query_indices]

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/modAL/batch.py in ranked_batch(classifier, unlabeled, uncertainty_scores, n_instances, metric, n_jobs)
    161         instance_index, instance, mask = select_instance(X_training=labeled, X_pool=unlabeled,
    162                                                          X_uncertainty=uncertainty_scores, mask=mask,
--> 163                                                          metric=metric, n_jobs=n_jobs)
    164
    165         # Add our instance we've considered for labeling to our labeled set. Although we don't

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/modAL/batch.py in select_instance(X_training, X_pool, X_uncertainty, mask, metric, n_jobs)
     97         _, distance_scores = pairwise_distances_argmin_min(X_pool_masked.reshape(n_unlabeled, -1),
     98                                                            X_training.reshape(n_labeled_records, -1),
---> 99                                                            metric=metric)
    100     else:
    101         distance_scores = pairwise_distances(X_pool_masked.reshape(n_unlabeled, -1),

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/sklearn/metrics/pairwise.py in pairwise_distances_argmin_min(X, Y, axis, metric, metric_kwargs)
    573     sklearn.metrics.pairwise_distances_argmin
    574     """
--> 575     X, Y = check_pairwise_arrays(X, Y)
    576
    577     if metric_kwargs is None:

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/sklearn/metrics/pairwise.py in check_pairwise_arrays(X, Y, precomputed, dtype, accept_sparse, force_all_finite, copy)
    139         X = check_array(X, accept_sparse=accept_sparse, dtype=dtype,
    140                         copy=copy, force_all_finite=force_all_finite,
--> 141                         estimator=estimator)
    142         Y = check_array(Y, accept_sparse=accept_sparse, dtype=dtype,
    143                         copy=copy, force_all_finite=force_all_finite,

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/sklearn/utils/validation.py in check_array(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, warn_on_dtype, estimator)
    576         if force_all_finite:
    577             _assert_all_finite(array,
--> 578                                allow_nan=force_all_finite == 'allow-nan')
    579
    580     if ensure_min_samples > 0:

~/.pyenv/versions/python-3.7.4/lib/python3.7/site-packages/sklearn/utils/validation.py in _assert_all_finite(X, allow_nan, msg_dtype)
     58                     msg_err.format
     59                     (type_err,
---> 60                      msg_dtype if msg_dtype is not None else X.dtype)
     61             )
     62     # for object dtype data, we only check for NaNs (GH-13254)

ValueError: Input contains NaN, infinity or a value too large for dtype('float64').

Hi!
This seems like a scikit-learn issue :( The function pairwise_distances_argmin_min is called, which throws the error upon encountering the NaN. Unfortunately, there is no way to control this in the function.
Similarly, if you set force_all_finite=False but use an estimator which doesn't support this (like the ones in scikit-learn), it won't work, even though modAL allows you to use data with NaNs.
Do you have any suggestions how to solve this? At the moment, I don't see a proper solution, but this doesn't mean that there isn't one. (I don't want to internally remove NaNs and pass them to the external functions, because this would remain hidden from the user, possibly causing unintended consequences.)

Hi!, as you correctly mentioned this should only work for models that can handle missing values such as novel boosting methods (i.e. xgboost).
Alternatively, nan_euclidean_distances  function could serve to solve the issue at the expense of limiting the distance metric to euclidean. Thoughts?

That is a good idea! I am going to take a shot this. I don't promise to do this ASAP since I am extremely busy with other work, but I'll try to do it this month.


Optionally create repository with given name

The current behavior is to use any other repository or, failing their existence, create a new repository with a default name. It seems more approachable to have an option to create the given repository name if it doesn't exist.

The behavior has since been updated to fail if the configured repository doesn't exist. This issue should change that behavior to the one described above.

Seems to work in 519f32ecb74004b9b6739b0c04aa45623f139330, will go out in next release.


Update work experience Screenshots

Updated the work experience Screenshots

I have slightly changed the screenshots, hope that was ok for you.


Invalid argument: Maximum call stack size exceeded

Restarted application in 6,545ms.

════════ Exception caught by widgets library ═══════════════════════════════════
The following JSRangeError was thrown building LoginPage$(dirty, dependencies: [_InheritedProviderScope<DataUser>], state: _LoginPageState#edd0e):
Invalid argument: Maximum call stack size exceeded

The relevant error-causing widget was
    LoginPage$
 lib\main.dart
When the exception was thrown, this was the stack
packages/website/Models/User_model.dart 10:10                                                                                get name
packages/website/Models/User_model.dart 87:29                                                                                toString
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 710:40  str
packages/website/Models/User_model.dart 87:505                                                                                toString
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 710:40  str
...
════════════════════════════════════════════════════════════════════════════════

$ flutter doctor -v
[√] Flutter (Channel dev, 1.22.0-1.0.pre, on Microsoft Windows [Version 10.0.19041.508], locale en-IN)
    • Flutter version 1.22.0-1.0.pre at C:\Flutter Components\Flutter
    • Framework revision ce40de69b7 (4 weeks ago), 2020-08-20 07:31:50 -0700
    • Engine revision 81027ab0cc
    • Dart version 2.10.0 (build 2.10.0-45.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\anand\AppData\Local\Android\Sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = C:\Users\anand\AppData\Local\Android\Sdk
    • Java binary at: C:\Flutter Components\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 3.6)
    • Android Studio at C:\Flutter Components\Android Studio
    • Flutter plugin version 48.1.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] VS Code (version 1.49.1)
    • VS Code at C:\Users\anand\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.14.1

[√] Connected device (3 available)
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome 85.0.4183.102
    • Edge (web)       • edge       • web-javascript • Microsoft Edge 85.0.564.51

• No issues found!

Hi @anandsubbu007
Can you please provide  flutter run --verbose logs, and a minimal complete reproducible code sample
Thank you

i resolved this issue. this cause due to opening hive box soo frequently.

It's happening for me as well and only on dev. I'm still figuring out why...

Same issue here. I'm not using Hive nor Block.

I am having this problem as well. I think it has something to do with custom mixins looking like:
import 'package:flutter/material.dart';

abstract class SuccessNavigator {
  void showMessage(String error);
}

mixin SuccessNavigatorMixin<T extends StatefulWidget> on State<T> implements SuccessNavigator {
  static SuccessNavigatorMixin of(context, {rootNavigator = false, nullOk = false}) {
    final SuccessNavigatorMixin navigator = rootNavigator ? context.findRootAncestorStateOfType<SuccessNavigatorMixin>() : context.findAncestorStateOfType<SuccessNavigatorMixin>();
    assert(() {
      if (navigator == null && !nullOk) {
        throw FlutterError('SuccessNavigatorMixin operation requested with a context that does not include a SuccessNavigatorMixin.\n'
            'The context used to push or pop routes from the SuccessNavigatorMixin must be that of a '
            'widget that is a descendant of a SuccessNavigatorMixin widget.');
      }
      return true;
    }());
    return navigator;
    return null;
  }

  @override
  void showMessage(String error) {
   // showMessage
  }
}

Now it is reproducible on beta channel as well. This is pretty annoying since cannot hot restart during development.
Did somebody has some workaround ?

@TahaTesser can you reopen this issue?

I managed to reproduce this in a simple project.
Indeed has something to do with mixins ( at least in my tests )
Reproducible with the mixin in a separate file
main.dart
import 'package:flutter/material.dart';

import 'after_layout.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Web issue',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: HotReloadIssue(),
    );
  }
}

class HotReloadIssue extends StatefulWidget {
  @override
  _HotReloadIssueState createState() => _HotReloadIssueState();
}

class _HotReloadIssueState extends State<HotReloadIssue> with AfterLayoutMixin {
  @override
  Widget build(BuildContext context) {
    // print('building');  // TODO uncomment this and hot restart
    return Scaffold(
      body: Center(
        child: Container(
          decoration: ShapeDecoration(
            shape: CircleBorder(
              side: BorderSide(),
            ),
          ),
          child: Container(
            width: 144,
            height: 144,
            padding: EdgeInsets.all(8),
            child: Center(
              child: Text(
                'Flutter is awesome.',
                textAlign: TextAlign.center,
                maxLines: 5,
                overflow: TextOverflow.fade,
              ),
            ),
          ),
        ),
      ),
    );
  }

  @override
  void afterFirstLayout(BuildContext context) {
  }
}

after_layout.dart
import 'package:flutter/widgets.dart';

mixin AfterLayoutMixin<T extends StatefulWidget> on State<T> {
  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance
        .addPostFrameCallback((_) => afterFirstLayout(context));
  }

  void afterFirstLayout(BuildContext context);
}

Cannot reproduce with mixin inside in the main file
main.dart
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Web issue',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: HotReloadIssue(),
    );
  }
}

class HotReloadIssue extends StatefulWidget {
  @override
  _HotReloadIssueState createState() => _HotReloadIssueState();
}

class _HotReloadIssueState extends State<HotReloadIssue> with AfterLayoutMixin {
  @override
  Widget build(BuildContext context) {
    // print('building');  // TODO uncomment this and hot restart
    return Scaffold(
      body: Center(
        child: Container(
          decoration: ShapeDecoration(
            shape: CircleBorder(
              side: BorderSide(),
            ),
          ),
          child: Container(
            width: 144,
            height: 144,
            padding: EdgeInsets.all(8),
            child: Center(
              child: Text(
                'Flutter is awesome.',
                textAlign: TextAlign.center,
                maxLines: 5,
                overflow: TextOverflow.fade,
              ),
            ),
          ),
        ),
      ),
    );
  }

  @override
  void afterFirstLayout(BuildContext context) {
  }
}

mixin AfterLayoutMixin<T extends StatefulWidget> on State<T> {
  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance
        .addPostFrameCallback((_) => afterFirstLayout(context));
  }

  void afterFirstLayout(BuildContext context);
}

I have the same problem since I update in beta channel see. 1.23.0-18.1.pre, and it gives me the error when I mixin a state widget

I downgraded to version 1.22.1 and it stopped giving the error

@TahaTesser can this issue be reopened? It's still a problem and looks like lots of us are running into it.

have tested on the latest beta, dev and master channels and all get this error when using the AfterLayout mixin.

have tested on the latest beta, dev and master channels and all get this error when using the AfterLayout mixin.

Yes, i have too the error when usign theAfterLayout Mixing in beta but work ok in master

Hey everyone!
I tried to reproduce the issue on all the channels on the web.
Note: it reproduces after several runs, it doesn't reproduce initially within a new project or when we do clean
Also, it reproduces sometimes on the home widget with after_layout or sometimes with on route page which has after_layout. Sometimes it works in both situations weirdly creating a false sense of security.

complete code sample w/ after_layout on home
import 'package:after_layout/after_layout.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Web issue',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: HotReloadIssue(),
    );
  }
}

class HotReloadIssue extends StatefulWidget {
  @override
  _HotReloadIssueState createState() => _HotReloadIssueState();
}

class _HotReloadIssueState extends State<HotReloadIssue>
    with AfterLayoutMixin<HotReloadIssue> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Container(
          decoration: ShapeDecoration(
            shape: CircleBorder(
              side: BorderSide(),
            ),
          ),
          child: Container(
            width: 144,
            height: 144,
            padding: EdgeInsets.all(8),
            child: Center(
              child: Text(
                'Flutter is awesome.',
                textAlign: TextAlign.center,
                maxLines: 5,
                overflow: TextOverflow.fade,
              ),
            ),
          ),
        ),
      ),
    );
  }

  @override
  void afterFirstLayout(BuildContext context) {}
}

complete code sample w/ after_layout on route

import 'package:after_layout/after_layout.dart';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: RaisedButton(
          child: Text('Go to Second Screen'),
          onPressed: () {
            Navigator.push(
                context, MaterialPageRoute(builder: (_) => Second()));
          },
        ),
      ),
    );
  }
}

class Second extends StatefulWidget {
  @override
  _SecondState createState() => _SecondState();
}

class _SecondState extends State<Second> with AfterLayoutMixin<Second> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
    );
  }

  @override
  void afterFirstLayout(BuildContext context) {}
}

doctor -v
[✓] Flutter (Channel beta, 1.23.0-18.1.pre, on Mac OS X 10.15.7 19H2 x86_64,
    locale en-GB)
    • Flutter version 1.23.0-18.1.pre at /Users/tahatesser/Code/flutter_beta
    • Framework revision 198df796aa (4 days ago), 2020-10-15 12:04:33 -0700
    • Engine revision 1d12d82d9c
    • Dart version 2.11.0 (build 2.11.0-213.1.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.10.0.rc.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.50.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.15.1

[✓] Connected device (3 available)
    • iPhone 11 (mobile) • 193EBBC9-CC2A-4477-B8A0-A5F12BB51400 • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-14-0 (simulator)
    • Web Server (web)   • web-server                           • web-javascript
      • Flutter Tools
    • Chrome (web)       • chrome                               • web-javascript
      • Google Chrome 86.0.4240.80

• No issues found!

flutter doctor -v
[✓] Flutter (Channel dev, 1.23.0-18.0.pre, on Mac OS X 10.15.7 19H2 x86_64,
    locale en-GB)
    • Flutter version 1.23.0-18.0.pre at /Users/tahatesser/Code/flutter_dev
    • Framework revision 37ebe3d82a (6 days ago), 2020-10-13 10:52:23 -0700
    • Engine revision<PHONE_NUMBER>
    • Dart version 2.11.0 (build 2.11.0-213.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.10.0.rc.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.50.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.15.1

[✓] Connected device (4 available)
    • iPhone 11 (mobile) • 193EBBC9-CC2A-4477-B8A0-A5F12BB51400 • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-14-0 (simulator)
    • macOS (desktop)    • macos                                • darwin-x64
      • Mac OS X 10.15.7 19H2 x86_64
    • Web Server (web)   • web-server                           • web-javascript
      • Flutter Tools
    • Chrome (web)       • chrome                               • web-javascript
      • Google Chrome 86.0.4240.80

• No issues found!

flutter doctor -v
[✓] Flutter (Channel master, 1.23.0-19.0.pre.95, on Mac OS X 10.15.7 19H2
    darwin-x64, locale en-GB)
    • Flutter version 1.23.0-19.0.pre.95 at
      /Users/tahatesser/Code/flutter_master
    • Framework revision a837557634 (28 hours ago), 2020-10-18 06:12:02 -0400
    • Engine revision 499a70f5e2
    • Dart version 2.11.0 (build 2.11.0-234.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.10.0.rc.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.50.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.15.1

[✓] Connected device (4 available)
    • iPhone 11 (mobile) • 193EBBC9-CC2A-4477-B8A0-A5F12BB51400 • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-14-0 (simulator)
    • macOS (desktop)    • macos                                • darwin-x64
      • Mac OS X 10.15.7 19H2 darwin-x64
    • Web Server (web)   • web-server                           • web-javascript
      • Flutter Tools
    • Chrome (web)       • chrome                               • web-javascript
      • Google Chrome 86.0.4240.80

• No issues found!

Hey everyone!
I tried to reproduce the issue on all the channels on the web.
Note: it reproduces after several runs, it doesn't reproduce initially within a new project or when we do clean
Also, it reproduces sometimes on the home widget with after_layout or sometimes with on route page which has after_layout. Sometimes it works in both situations weirdly creating a false sense of security.
complete code sample w/ after_layout on home
complete code sample w/ after_layout on route
beta - doctor -v
dev - flutter doctor -v
master - flutter doctor -v

I could reproduce this each time. The following are the steps:

have the mixin in a different file, not in the same file with the widget/state: main.dart and after_layout.dart
start the application
change something in the widget/state, main.dart, like adding a print in the build method and do hot restart
the error should appear and without flutter clean will not work anymore, not even after a restart

It is important to note that if you define the mixin in the same file, main.dart, hot reload will work and this issue is not reproducible

It is important to note that if you define the mixin in the same file, main.dart, hot reload will work and this issue is not reproducible

Same thing for me

Hey, dealing with this bug myself --
Could anyone advise what specific channel / version I could switch to in the interim 'til a fix is apparent?

Hey, dealing with this bug myself --
Could anyone advise what specific channel / version I could switch to in the interim 'til a fix is apparent?

I have not yet found a solution for this problem. For 1 project I removed all my mixins. :(

Hey, dealing with this bug myself --
Could anyone advise what specific channel / version I could switch to in the interim 'til a fix is apparent?

I downgraded to version 1.22.1 in beta channel and it stopped giving the error

I experienced only with after_layout mixin which I just replaced with it's content everywhere...

I'm seeing this a lot when running DevTools. It seems like whenever I change certain files (possible in lib/src?) and trigger a hot-reload, this happens. Once it's happened, the app is then somewhat broken even after stop/re-run until I flutter clean.
I also found that it disappears if I remove some custom mixins (though I wasn't sure if this was the cause, or it was just triggering some other code to be regenerated).
I can reproduce it completely reliably with the following:

clone DevTools at d64a7ef6
open in VS Code
accept fetching packages
select Chrome in the device selector
Press F5 to run the app
paste in a VM service URI (you can run another Flutter app somewhere to get one) and click Connect
modify the file packages/devtools_app/lib/src/inspector/diagnostics_node.dart in VS Code (just add a comment to the end of a line) and click Save

The app will reload, and show the error

The info printed int he debug console is:

The location it mentions (initializer.dart:32:24) is the super(key: key) call in a StagtefulWidget's constructor.

Some bisecting implicates this change: https://github.com/flutter/flutter/pull/66136
This issue isn't preset at 2c163e6e9566d9af2e3bb651a777631e491f890c but breaks at 689ca09cd055f8760870ce032aaa5053d0c3a7ec.
The only DDC change here is this one, so I'm doing some local testing to verify this is the issue:
https://dart-review.googlesource.com/c/sdk/+/161760

I can confirm that change is responsible for this. Reverting the mixin logic updates the issue in my local engine build.
Corresponding commit: https://github.com/dart-lang/sdk/commit/1d34f60b668772aa56d7ffc79d3c2b53165914c7
cc: @nshahan can you take a look?

Same here. It has been blocking all my development, that I had to revert to older versions.

@GyuriMajercsik  Thanks!
It also reproduces mixin main file if you run the app a few time and update something on the fourth or fifth but I also tested in second class and it reproduces there as well and added that it's a sample as well  https://github.com/flutter/flutter/issues/66122#issuecomment-712178662

@jensjoha I think we need some help here to narrow down the issue. I'll summarize what we know so far.

The issue only appears on the web after a hot-restart. The initial load works fine.
The reproduction needs a mixin applied from another library (cross-module).
@Markzipan noticed that after a completely cosmetic edit like changing a string literal and performing a hot-restart the JavaScript code that DDC generated has changed more drastically than expected. A new setter named _widget has appeared on the synthetic mixin class that was not there on the initial load.

These issues lead us to suspect the issue might be coming from the frontend_server but I'd like some advice or help confirming that the issue appears in the kernel AST provided to DDC.
Here is a slimmed down repro from the example provided above:
lib/main.dart

import 'package:flutter/material.dart';
import 'after_layout.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Web issue',
      home: HotReloadIssue(),
    );
  }
}

class HotReloadIssue extends StatefulWidget {
  @override
  _HotReloadIssueState createState() => _HotReloadIssueState();
}

class _HotReloadIssueState extends State<HotReloadIssue>
    with AfterLayoutMixin<HotReloadIssue> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Text(
        'Flutter is awesome.',
      ),
    );
  }

  @override
  void afterFirstLayout(BuildContext context) {}
}

lib/after_layout.dart

import 'package:flutter/widgets.dart';

mixin AfterLayoutMixin<T extends StatefulWidget> on State<T> {
  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance
        .addPostFrameCallback((_) => afterFirstLayout(context));
  }

  void afterFirstLayout(BuildContext context);
}

We are still trying to find a smaller reproduction outside of flutter and will post if we do.

@jensjoha I can confirm that this the difference is reflected in the dill. Can you confirm if that's an expected pattern after a cosmetic string update? Seems like an abstract member-signature is converted to a forwarding stub.
Diff (left is after hot restart, right is before):
158177a158178
>     abstract member-signature get key() → key::Key*; -> fra2::Widget::key
158182d158182
<     abstract member-signature get key() → key::Key*; -> fra2::Widget::key
158197a158198
>     abstract member-signature get key() → key::Key*; -> fra2::Widget::key
158202d158202
<     abstract member-signature get key() → key::Key*; -> fra2::Widget::key
158214,158215c158214,158231
<     forwarding-stub set _widget(main::HotReloadIssue* _) → void
<       return super.{fra2::State::_widget} = _;
---
>     abstract member-signature method build(fra2::BuildContext* context) → fra2::Widget*; -> fra2::State::build
>     abstract member-signature get _widget() → main::HotReloadIssue*; -> fra2::State::_widget
>     abstract member-signature set _widget(main::HotReloadIssue* _) → void; -> fra2::State::_widget
>     abstract member-signature get _debugLifecycleState() → fra2::_StateLifecycle*; -> fra2::State::_debugLifecycleState
>     abstract member-signature set _debugLifecycleState(fra2::_StateLifecycle* _) → void; -> fra2::State::_debugLifecycleState
>     abstract member-signature get _element() → fra2::StatefulElement*; -> fra2::State::_element
>     abstract member-signature set _element(fra2::StatefulElement* _) → void; -> fra2::State::_element
>     abstract member-signature method _debugTypesAreRight(fra2::Widget* widget) → core::bool*; -> fra2::State::_debugTypesAreRight
>     abstract member-signature get context() → fra2::BuildContext*; -> fra2::State::context
>     abstract member-signature get mounted() → core::bool*; -> fra2::State::mounted
>     abstract member-signature method setState(() →* void fn) → void; -> fra2::State::setState
>     abstract member-signature method debugFillProperties(dia2::DiagnosticPropertiesBuilder* properties) → void; -> fra2::State::debugFillProperties
>     abstract member-signature method toStringShort() → core::String*; -> dia2::Diagnosticable::toStringShort
>     abstract member-signature method toDiagnosticsNode({core::String* name = #C7, dia2::DiagnosticsTreeStyle* style = #C7}) → dia2::DiagnosticsNode*; -> dia2::Diagnosticable::toDiagnosticsNode
>     abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::==
>     abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode
>     abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod
>     abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType
158227,158228d158242
<     forwarding-stub set _widget(main::HotReloadIssue* _) → void
<       return super.{fra2::State::_widget} = _;

I can reproduce and have created a "CFE local test" (https://dart-review.googlesource.com/c/sdk/+/168945).

Can you confirm if that's an expected pattern after a cosmetic string update? Seems like an abstract member-signature is converted to a forwarding stub.

Generally it shouldn't. We do (obviously) have bugs in this area though. As I recall @johnniwinther have been working on fixing some of these inconsistencies.

@jensjoha thanks! I tested on latest Flutter master that includes https://github.com/dart-lang/sdk/commit/c5f478dfa8188b742400eeee303d61cf9e5fa408 and no longer see this with my steps above.

This evening I can do some extra tests with my projects. I had 3 projects where this problem was happening. I will let you know what I found.

@DanTup I am not having the max stack size exceeded exception. The issue seems to be resolved. I tested 3 projects no problem

Same issue

Same issue

@sanekyy  even on the latest master version?

@vanlooverenkoen
Confirming that on latest master this issue not reproduce.

The fix https://github.com/dart-lang/sdk/commit/c5f478dfa8188b742400eeee303d61cf9e5fa408 was part of the dart sdk v2.11.0-254.0.dev and has rolled into flutter master already.

when will this arrive in Beta?

A cherry-pick request to the beta branch has been opened. https://github.com/dart-lang/sdk/issues/44058


[release/v1.56] Anexia Provider: Configure dns servers

What this PR does / why we need it:
Backport for https://github.com/kubermatic/machine-controller/pull/1637
Which issue(s) this PR fixes:

Fixes #
What type of PR is this?

/kind feature
Special notes for your reviewer:
Does this PR introduce a user-facing change? Then add your Release Note here:

Anexia Provider: Enable up to 4 custom dns entries

Documentation:

NONE

/lgtm


How are Indexed View updated, when a change is mand in the underlying table. Does it execute the entire query or only the part that corrsesponds to the changed data is updated? This can be huge for optimizing various queries.

[Enter feedback here]

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

ID: 0a452207-5ac2-1a41-c5b1-3baf085a79b4
Version Independent ID: a590e66c-ed9f-4d80-1511-1864128d2e8e
Content: Create Indexed Views - SQL Server
Content Source: docs/relational-databases/views/create-indexed-views.md
Product: sql
Technology: table-view-index
GitHub Login: @WilliamDAssafMSFT
Microsoft Alias: wiassaf

@hammadkhan you are right, as this article lays out, indexed views can affect performance due to underlying data changes. As this isn't a doc update, I'll close this comment, but you might get more information on a specific scenario from Microsoft Support or Microsoft Q&A.

@hammadkhan -- please also consider these resources:

SQL Server on Microsoft Q&A
DBA Stack Exchange
Stack Overflow

@WilliamDAssafMSFT -- William, thank you for clarifying.


sysconfig: fix library name on macos

On darwin, the library is named libtensorflow_framework.2.dylib
Signed-off-by: Jason Zaman<EMAIL_ADDRESS>

Finally resolves #27430 (where it was noted that MacOS is failing to build).


Patched yet again

Hey! Thank you for your hard work.
Unfortunately, some things have changed with the streaming sites that used Vidcloud and this doesn't work anymore.
Before, the embeds that the sites returned were rabbitstream.net if the site was using Vidcloud (e.g. sflix.to, flixhq.to, etc.) and megacloud.tv if the site was using Megacloud (e.g. sflix.is, 1flix.to, etc.)
First of all, the domains have changed, and the sites that used rabbitstream now return a mix of venusembed.site, grostembed.online and others (check and refresh multiple times to see: sflix.to/ajax/episode/sources/5437060). The sites that used Megacloud changed just the tld (megacloud.tube). The thing is, they seem to use the same player js so their source code might be shared, just the domain is different (also the xrax value is the same in all the embeds returned by the api).
Second, the embeds no longer return the meta tag necessary for the getMeta function to run. So this is an issue too.

Hey! Thank you for your hard work. Unfortunately, some things have changed with the streaming sites that used Vidcloud and this doesn't work anymore.
Before, the embeds that the sites returned were rabbitstream.net if the site was using Vidcloud (e.g. sflix.to, flixhq.to, etc.) and megacloud.tv if the site was using Megacloud (e.g. sflix.is, 1flix.to, etc.)
First of all, the domains have changed, and the sites that used rabbitstream now return a mix of venusembed.site, grostembed.online and others (check and refresh multiple times to see: sflix.to/ajax/episode/sources/5437060). The sites that used Megacloud changed just the tld (megacloud.tube). The thing is, they seem to use the same player js so their source code might be shared, just the domain is different (also the xrax value is the same in all the embeds returned by the api). Second, the embeds no longer return the meta tag necessary for the getMeta function to run. So this is an issue too.

I also just started digging into the latest changes and it looks like getMeta possibly needs updated from "fyq" to "j_crt"

help anyone has resolved this? i really need it, temporary using puppeter so slow and unstable ;(

@oOICEMANOo very helpful, thanks a lot. They also changed they greet() function to groot(). It's in the wasm exports but when I try to call it I get unreachable error. Will try to implement the remaining functions and see if the error goes away
@rzmic can you share your puppeteer solution.  Would be great to use it while I try to solve wasm code.
Thanks.

I have completed the environment as much as possible and have been able to obtain pid, kversion, kid, and ktime, but the keys cannot be found. I hope it will be helpful to you.
https://github.com/jiamid/wasm_service/blob/master/src/gap/rabbit_temp.ts

@jiamid great progress, I see they are definitely calling window.navigate in function Y and that is what fails with fake_window. Maybe there is a wasm function declaration missing or incomplete?

@jairoxyz any luck?

Not yet. Was hoping @jiamid could make use of the stuff I debugger:)

Not yet. Was hoping @jiamid could make use of the stuff I debugger:)

Do they just changed the keys or do you think they have added another thing?

1.The current issue is that PID may also be incorrect,Unable to use the current PID to obtain sources.
2.window.navigate()  should be after window.jwt_plugin(Q0),but the jwt_plugin is not fully operational.

@jiamid yes, I noticed that sources are not retrieved with the KID, KVERSION and PID you get. I made a puppeteer solution that works more or less and noticed that the same happened when not using stealth mode and also when not sending referer header to getsources call. I tried the latter in your solution but no change. I think they make a stronger fingerprint with the wasm that cannot be made with the fake window object. I saw you import canvas but don't use it for anything - did you test with that?

kversion and kid is same to my browser,but pid is only can use once，it is error。
I test canvas，but I am not very familiar with Canvas in JavaScript，
it will be used in
__wbg_createElement_03cf347ddad1c8c0：create canvas element
__wbg_getContext_dfc91ab0837db1d1：get canvas.getContext('2d')
__wbg_drawImage_cb13768a1bdc04bd：context2d.drawImage(img,)  /images/image.png?v=0.1.0

@jiamid yes, I noticed that sources are not retrieved with the KID, KVERSION and PID you get. I made a puppeteer solution that works more or less and noticed that the same happened when not using stealth mode and also when not sending referer header to getsources call. I tried the latter in your solution but no change. I think they make a stronger fingerprint with the wasm that cannot be made with the fake window object. I saw you import canvas but don't use it for anything - did you test with that?

Can you please your implementation with Puppeteer? I was thinking in a temp solution using a real chrome browser instance and with websockets.

But imageData seems to change frequently.
From: JairoX @.>
Date: Wed,Oct 23,2024 8:33 PM
To: jiamid @.>
Subject: Re: [drblgn/rabbit_wasm] Patched yet again (Issue #6)
kversion and kid is same to my browser,but pid is only can use once，it is error。 I test canvas，but I am not very familiar with Canvas in JavaScript， it will be used in __wbg_createElement_03cf347ddad1c8c0：create canvas element __wbg_getContext_dfc91ab0837db1d1：get canvas.getContext('2d') __wbg_drawImage_cb13768a1bdc04bd：context2d.drawImage(img,) /images/image.png?v=0.1.0
Right, and that process has not really changed since last version. It draws the pic to canvas and then calls getImageData, which we bypass by using the raw pixel data. So canvas should not be necessary. Some other function or wasm call must still be wrong because navigate() should become available after calling jwt_plugin.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

@jiamid image data changes? You mean the image.png itself or image data array inside code? Maybe it's what I saw in the Al variable in the navigate method? Will debug again and copy values.
@luismendoza-ec I'm fixing some stuff to make it more stable before I put it in git. Will let you know.
Jx-

@jiamid image data changes? You mean the image.png itself or image data array inside code? Maybe it's what I saw in the Al variable in the navigate method? Will debug again and copy values.
@luismendoza-ec I'm fixing some stuff to make it more stable before I put it in git. Will let you know.
Jx-

I saw the images resources vary depending the "version" they request, so probably they have added some kind of tiny variation for the same file but in different versions.
Thanks!

I have a key that we can try for test, anyone is close just waiting to find the key?

I did with Puppeteer, not optimized, but giving me 2 secs in a regular server, in my local computer about 4 secs with a poor connection.

 I did with emulation, not optimized yet, but giving me 2 secs in a regular server, in my local computer about 4 secs with a poor connection.

Bro, how? can you shared the fixed code, please?

@jiamid @luismendoza-ec ping me here<EMAIL_ADDRESS>if you like :)

@jiamid Hi there, any luck with those jwt_plugin and navigate calls? I checked the array of what looks like pixel values passed to the navigate function and it's length is 108760, so either a bigger image or something else.

I have new task to do.
maybe size in this
1.500500
2.6550
发自我的iPhone
------------------ Original ------------------
From: JairoX @.>
Date: Sun,Oct 27,2024 8:36 PM
To: jiamid @.>
Subject: Re: [drblgn/rabbit_wasm] Patched yet again (Issue #6)
@jiamid Hi there, any luck with those jwt_plugin and navigate calls? I checked the array of what looks like pixel values passed to the navigate function and it's length is 108760, so either a bigger image or something else.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

Hello guys, thanks everyone for all the effort.
@jairoxyz what is beign send to jwt_plugin is the wasm file, internally the jwt_plugin is executing its functions and populating the required data.
@jairoxyz @jiamid We should make a group somewhere and discuss there, just in case someone related with this implementation is looking for this.

1.500*500

108760 divided by 4 (R, G, B, Alpha) is 27,190 pixels, so size could be 190 x 143 but the values don't really look like pixels cause Alpha should be 255: [0,97,115,109,1,0,0,0,1,240,1,32,96,2,127,127.........], so not sure. Could also be the array is generated by wasm and then reduced to keys array by the navigate function.

1.500*500

Hi @jiamid ,
108760 divided by 4 (R, G, B, Alpha) is 27,190 pixels, so size could be 190 x 143 but the values don't really look like pixels cause Alpha should be 255: [0,97,115,109,1,0,0,0,1,240,1,32,96,2,127,127.........], so not sure. Could also be the array is generated by wasm and then reduced to keys array by the navigate function. Is still think some of the wasm functions are not complete because navigate should be available after groot and jwt_plugin. And your pid is wrong, so maybe it's a good idea to use canvas and a real window object, either from npm jsdom or puppeteer-real-browser. Just a few ideas :)

I did that, using a "real" window is giving still a wrong pid and my idea is that is just regarding the fingerprint they are detecting host, referer, ua

Well, we can't know what you mean by real window if you don't share any of your code. What we do know is that they use code from here https://github.com/drbh/wasm-fingerprint for generating a fingerprint by drawing an image into a canvas. HTTP headers can be easily set, so that is not the problem.

Well, we can't know what you mean by real window if you don't share any of your code. What we do know is that they use code from here https://github.com/drbh/wasm-fingerprint for generating a fingerprint by drawing an image into a canvas. HTTP headers can be easily set, so that is not the problem.

I mean using the real chrome browser to debug all the script and wasm operations more closer.
Btw good one for the wasm-fingerprint, I was thinking to connect to the real browser with websockets and just change the xrax and force the process to produce a new fingerprint, but seems like they have controlled that also, probably playing with it more I will get it.

@jiamid I debugged the wbg function that generates the dataurl from the canvas and it is different from what we have. This could already be the issue.

@jairoxyz Can you call jwt_plugin to generate the navige() function ?
I tested that image_data and dataURL are consistent for a certain period of time

@jiamid no, wasn't able to get the navigate function. If the image data that is converted to data url changes with every call, it has to be generated inside the wasm by the canvas functions defined in the JS. There are several drawing functions that we haven't defined yet like fillRect and fillText. So maybe instead of the emojis they are now rendering something random made of text and shapes. Needs more debugging and all wbg functions need to be defined. I debugged wbg_getImageData and that returns the pixels of image.png, so that is OK.

@jiamid no, wasn't able to get the navigate function. If the image data that is converted to data url changes with every call, it has to be generated inside the wasm by the canvas functions defined in the JS. There are several drawing functions that we haven't defined yet like fillRect and fillText. So maybe instead of the emojis they are now rendering something random made of text and shapes. Needs more debugging and all wbg functions need to be defined. I debugged wbg_getImageData and that returns the pixels of image.png, so that is OK.

Can we work together on this?

fillRect and fillText is not used
Very willing to cooperate
发自我的iPhone
------------------ Original ------------------
From: Luis Mendoza @.>
Date: Tue,Oct 29,2024 7:23 PM
To: jiamid @.>
Subject: Re: [drblgn/rabbit_wasm] Patched yet again (Issue #6)
@jiamid no, wasn't able to get the navigate function. If the image data that is converted to data url changes with every call, it has to be generated inside the wasm by the canvas functions defined in the JS. There are several drawing functions that we haven't defined yet like fillRect and fillText. So maybe instead of the emojis they are now rendering something random made of text and shapes. Needs more debugging and all wbg functions need to be defined. I debugged wbg_getImageData and that returns the pixels of image.png, so that is OK.
Can we work together on this?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

fillRect and fillText is not used Very willing to cooperate 发自我的iPhone
…
------------------ Original ------------------ From: Luis Mendoza @.> Date: Tue,Oct 29,2024 7:23 PM To: jiamid @.> Subject: Re: [drblgn/rabbit_wasm] Patched yet again (Issue #6) @jiamid no, wasn't able to get the navigate function. If the image data that is converted to data url changes with every call, it has to be generated inside the wasm by the canvas functions defined in the JS. There are several drawing functions that we haven't defined yet like fillRect and fillText. So maybe instead of the emojis they are now rendering something random made of text and shapes. Needs more debugging and all wbg functions need to be defined. I debugged wbg_getImageData and that returns the pixels of image.png, so that is OK. Can we work together on this? — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.Message ID: @.***>

how can I contact you, we need to work under same project, so we can collaborate better, and if we do debug sessions we can easily get this done.

also willing to help out, I started digging into this a few weeks ago and got tied up into other things now circling back, looks like some progress is happening though which is great to see!

Hey friends! It’s been a few interesting days trying to solve this, and JSDom and other techniques to represent things even close to what I need have made everything quite complicated. The validation and generation of the fingerprint is complex and depends on many factors, so even a minor change can prevent it from generating correctly.
The best solution I could implement (after temporarily handling Puppeteer and pools to intercept the HLS) is the following:

A single Puppeteer instance that doesn’t demand much from the system serves as the perfect sandbox, allowing all validations and WebAssembly (WASM) operations to run smoothly.
Injection of modified code to control certain aspects, validations, and shape the data exactly as I need it.
The browser’s connection to a socket hub that allows me to control it on demand (not to be confused with a reload operation).

What I’m practically doing is:

Loading the site just once, letting resources and validations take place, and preventing resources that might later block from being released.
Making this sandbox communicate via sockets to handle my requests.
From my script that I want to scrape, I send the media ID I need.
The sandbox (without any HTTP requests) generates the necessary fingerprint (which I’ve modified in certain parts to make unique).
The sandbox responds with the fingerprint and other parameters needed for the request.
From my script’s side, I make the request for the sources, and with the data obtained, apply the logic of their obfuscation to decrypt it.
On the script’s side, I sanitize the URL and get it ready for consumption.

Requests:

The browser only makes one to load the sandbox (resources, WASM, etc.).
The script makes one to fetch the unique data of each embed and another to get the source (a JSON with the encrypted source). After that, I have the HLS.

I’ve tested it with some embeds, and it’s going well, and the best part is that it works in headless mode.
I’m leaving a few images and signing off (I need to sleep).
P.D.: I’ll improve a few things when I return with recharged energy. I know I can make it even better, but as it stands, it works very well.

Hey @luismendoza-ec  interesting but quiet complex solution :) I know for sure someone solved it by instantiating the wasm correctly in node.js but he won't share it. But it means it is possible the same way as @drblgn did.

Hey @luismendoza-ec interesting but quiet complex solution :) I know for sure someone solved it by instantiating the wasm correctly in node.js but he won't share it. But it means it is possible the same way as @drblgn did.

My friend Jairo, it's likely that yes, at some point someone will achieve it. It's not an easy task, and they will have invested many hours, probably days, and they won't release it either.
My solution isn't complex; I have it well assembled, and it works well in multitasking. Honestly, I feel satisfied because it can handle thousands of executions without trouble.
But I tried to be practical; I barely use Puppeteer for the sandbox. Going further than that by trying to hook every call of the wasm and trying to guess through the many conditions they have to solve it without the sandbox would be investing more time into something that they're going to change at some point.
Imagine, being practical and efficient is solving this in such a way that it takes you less time than they take to release the next version, or your work will have been for nothing :)

fillRect and fillText is not used Very willing to cooperate

Hi @jiamid, I debugged rect, fillRect and fillText and they are all called. It draws 3 rects into the canvas and the same emojis at coordinate 50, 70: ❤🤪🎉👋

I try remove they，it can run success
fillRect and fillText is not used Very willing to cooperate
Hi @jiamid, I debugged rect, fillRect and fillText and they are all called. It draws 3 rects into the canvas and the same emojis at coordinate 50, 70: ❤🤪🎉👋
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

I think we should adopt the @luismendoza-ec  method and achieve a good result through optimization. He's right, if we spend more time than they spend updating versions, it's meaningless.

Yes, I would definitely like to try it but @luismendoza-ec would have to share his solution first. A private GIT maybe?

As I thought, @luismendoza-ec  doesn't want to share anything ....

As I thought, @luismendoza-ec doesn't want to share anything ....

Let me understand you, Jairo. Throughout my development and testing, I tried to reach out to you, I wrote to you, left comments here, but got no response from you. On top of that, I shared a solution, but it seemed you weren’t interested at the time. Now it seems you’re tired of trying your way and want to use my solution, and you’re saying I don’t want to share?
Honestly, I’d rather keep my version private. None of you have shared anything concrete, just vague hints.

@luismendoza-ec really? Maybe a misunderstanding? I shared my private git, which is a working solution, contacted you by email and send you my discord account. Didn't you receive that?

Is anyone interested is developing a public solution with me?
I think the first iteration should definitely should be build with a headless browser since that is just quicker to implement.
After that if we think that it is possible to decrypt without headless browser we can attempt that.
If anyone is interested then I can invite u to a repository to exchange discord handles and create a server if there are more than two?

Is anyone interested in developing a public solution with me? I think the first iteration should definitely be build with a headless browser since that is just quicker to implement. After that if we think that it is possible to decrypt without a headless browser we can attempt that.
If anyone is interested then I can invite u to a repository to exchange discord handles and create a server if there are more than two?

I am interested.

@jairoxyz, @luismendoza-ec
I have invited you both.

can you invite me as well pls @WBRK-dev ? i'm not currently working on foss stuff but i'm interested in keeping up with this

@justchokingaround
You have been invited.

@WBRK-dev I'd love to keep up with this as well, not sure if i'll be able to work on it right now, but i'd love to see any further developments.

Hello guys, I have a working rabbit stream fix BUT it only works on the browser with the no cors extension on, but it successfully decrypts rabbit stream without using a headless browser, i kinda don’t have time to work on it but I want to nicely ask. Can someone please implement the fixed into rabbit_wasm, you can dm me on discord for the code  My discord is Zetsman192

Hello guys, I have a working rabbit stream fix BUT it only works on the browser with the no cors extension on, but it successfully decrypts rabbit stream without using a headless browser, i kinda don’t have time to work on it but I want to nicely ask. Can someone please implement the fixed into rabbit_wasm, you can dm me on discord for the code My discord is Zetsman192

Sorry, wrong discord. the right one ix xross342

@WBRK-dev could you please provide discord server, im interested in the project

I'd like to be added into this project, thank you!

I'D like to join the project too

Hello @BominRahmani @kelgr @AndresDevvv @shashstormer
The group has kinda already been disbanded.
Sorry for the late reaction.

Hey friends! It’s been a few interesting days trying to solve this, and JSDom and other techniques to represent things even close to what I need have made everything quite complicated. The validation and generation of the fingerprint is complex and depends on many factors, so even a minor change can prevent it from generating correctly.
The best solution I could implement (after temporarily handling Puppeteer and pools to intercept the HLS) is the following:

A single Puppeteer instance that doesn’t demand much from the system serves as the perfect sandbox, allowing all validations and WebAssembly (WASM) operations to run smoothly.
Injection of modified code to control certain aspects, validations, and shape the data exactly as I need it.
The browser’s connection to a socket hub that allows me to control it on demand (not to be confused with a reload operation).

What I’m practically doing is:

Loading the site just once, letting resources and validations take place, and preventing resources that might later block from being released.
Making this sandbox communicate via sockets to handle my requests.
From my script that I want to scrape, I send the media ID I need.
The sandbox (without any HTTP requests) generates the necessary fingerprint (which I’ve modified in certain parts to make unique).
The sandbox responds with the fingerprint and other parameters needed for the request.
From my script’s side, I make the request for the sources, and with the data obtained, apply the logic of their obfuscation to decrypt it.
On the script’s side, I sanitize the URL and get it ready for consumption.

Requests:

The browser only makes one to load the sandbox (resources, WASM, etc.).
The script makes one to fetch the unique data of each embed and another to get the source (a JSON with the encrypted source). After that, I have the HLS.

I’ve tested it with some embeds, and it’s going well, and the best part is that it works in headless mode.
I’m leaving a few images and signing off (I need to sleep).
P.D.: I’ll improve a few things when I return with recharged energy. I know I can make it even better, but as it stands, it works very well.

this seems like a really good idea for the first iteration

hey yo, back from the dead. just gonna push a quick fix. lemme know if it works.

hey yo, back from the dead. just gonna push a quick fix. lemme know if it works. ps: didnt do much testing

Hi, thanks for the fix, can you also update the api repo? I tried to "fixed" it on my own (basically just copy and pasted) but it only works for like the two first requests.

hey yo, back from the dead. just gonna push a quick fix. lemme know if it works. ps: didnt do much testing

Hi, thanks for the fix, can you also update the api repo? I tried to "fixed" it on my own (basically just copy and pasted) but it only works for like the two first requests.

just pushed an update

Thank you so much for this long awaited fix. It would be nice to support megacloud too as these sites seem to be moving forward to this newer embed, (for example sflix(dot)to moved to sflix2(dot)to that changed the embed to megacloud), but it is still a pretty good solution to use these older sites too (the caveat is that they work so much slower).
I will close this issue and, in case the player is updated again and it won't work anymore, I will reopen it.
Again, thank you so much.


Fix panel editing with external resources

Currently, External resources don't work for edit panel and to see the results user has to open a dashboard first and then he will see loaded files in edit panel

Depends on https://github.com/grafana/grafana/issues/78415

Based on answer - https://github.com/grafana/grafana/issues/78415#issuecomment-1821096985
We can't load external scripts in global context so we have to find a way to load them with local context


Custom Labels: add option for double extensions in ${filename}

Workbench › Editor › Custom Labels: Patterns
Currently, ${filename} only drops everything after the  last ., but it would be nice if you could drop everything after the first . when needed.
For example, I would like foo.blade.php to be displayed as foo rather than foo.blade.

One option could be to have ${filename} only include the name until the first . and ${extname} could include everything after.
So for foo.blade.php:

${filename}: foo
${extname}: blade.php`

Another option could be to have ${filename} only include the name until the first . and ${extname} include only the last extension. This would still allow users to add rules to cover the cases with the double extensions and I would assume users do not have many different combinations of double extensions that they work with so it wouldn't be to cumbersome to add.
So for foo.blade.php:

${filename}: foo
${extname}: php`

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

It might be a little unconventional, but I made a pull request for it, before it has been voted in, in which I added a template variable called filenamePart which accepts a number and returns the nth part of the filename including the extension separated by ., for example a.b.c.d  with the pattern "${filenamePart(1)}-${filenamePart(2)}-${filenamePart(3)}-${filenamePart(4)}" would become a-b-c-d
https://github.com/microsoft/vscode/pull/213033


coq_wrapper: pass COQBIN as the last argument

closes: #366

Snap run into timeout. Since I am doing a local build anyway, I merge. I will then reduce the extent of the snap build to pass more likely.

@gares : interestingly the snap CI fails quite consistently after this change running out of disk (and it did work consistently before). Do you have an idea why this might be?


Cast arrays to numpy before KernelExplainer solve

Overview
Closes #3492
Casts y to a numpy array, to fix a bug where matrix multiplication operator @ does not function as expected when a tensorflow tensor is passed.

@CloseChoice  FYI, I'd appreciate your thoughts on this one. I added a test for using a tensorflow model with KernelExplainer, to fix an issue with matrix multiplication as described in https://github.com/shap/shap/issues/3492#issuecomment-1978011002
The fix which passes with python 3.12 but not earlier versions, as we get a different error relating to trying to transpose a tensor:
/opt/hostedtoolcache/Python/3.11.8/x64/lib/python3.11/site-packages/shap/explainers/_kernel.py:124: in __init__
    self.fnull = np.sum((model_null.T * self.data.weights).T, 0)
E       AttributeError: SymbolicTensor object has no attribute 'T'.

https://github.com/shap/shap/blob/dbb275978abe27def1afe73fdd097d071c7fbe38/shap/explainers/_kernel.py#L122-L124
I don't use tensorflow that often - it looks like we get different behaviour of different versions. It looks like we sometimes get EagerTensor and sometimes get SymbolicTensor. Do you know a robust way to handle these?

Possibly relevant: https://discuss.tensorflow.org/t/how-to-convert-a-tensor-to-a-numpy-array-without-enabling-the-run-eagerly-flag-in-keras/4180
Tagging @lorentzenchr in case you have suggestions, given your experience with this area

Thanks for the help! I'll merge your PR into this branch.

Whether you want to have the compatibility in the test is totally up to you. One the one hand I think testing the latest behaviour of tensorflow makes the most sense on the other hand the tests are better reproducible if we enable compatibility mode.

I'm not sure which is better. I wonder if we can parameterise the tests to run with either mode, given that we don't know what users will have enabled?

@connortann It seems like a general design decision of shap: what do you support. Is a model allowed to return tensorflow objects, pytorch tensors, numpy arrays, dataframes.
One option is to try to conform to the python array api, but solve is not (yet) part of it, so it doesn’t help.
I would avoid too much model library specific code and clearly state the allowed API of a model passed to the explainers.

@connortann It seems like a general design decision of shap: what do you support. Is a model allowed to return tensorflow objects, pytorch tensors, numpy arrays, dataframes. One option is to try to conform to the python array api, but solve is not (yet) part of it, so it doesn’t help. I would avoid too much model library specific code and clearly state the allowed API of a model passed to the explainers.

We support specific libraries (sklearn, tensorflow, pytorch, ngboost, etc.) and whatever the supported models of the library returns should be handled by the corresponding shap explainer (e.g. DMatrix is supported by TreeExplainer). Internally we convert these to numpy arrays, so I would only support the library specific objects if an easy conversion to numpy is available.
I guess the reason why you bring this up in here is that we convert symbolic tensors to numpy arrays. We won't get around with that for the tensorflow library because the shap values are returned as tf.tensor and due to change from tf1 to tf2 from SymbolicTensor to EagerTensor we need to handle both (especially since a lot of people are still using the compatibility mode of tensorflow which causes the model to return SymbolicTensors). We could think of dropping support for tf1 but since shap has A LOT of problems with tensorflow models (see the open issues with the deep explainer label) I think that might be a bit premature. I personally would like to get shap into a state where we can explain every model that we could at some point back in time (e.g. LSTM, models with embedding, etc.).


Fix Azure CLI version check.

Related to #521
Previous behavior:

Upon PKB initialization, providers packages were imported recursively
(including providers/azure/__init__.py, its dependency util.py, and
potentially other subpackages like providers/azure/subpkg/__init__.py)
CheckAzureVersion was registered as a handler for the event
initialization_complete, which was sent prior to dynamically loading
providers, so CheckAzureVersion was never called.
Missing Azure CLI error was suppressed.

New behavior:

Upon PKB initialization, only providers/azure/__init__.py and
providers/azure/flags.py are imported.
CheckAzureVersion is registered as a handler for the new event,
provider_imported, which is called at the end of LoadProvider.
Missing Azure CLI error triggers a graceful exit.

@ehankland PTAL

LGTM


Classification for library

Hello,
I can't find the good section for this library : https://github.com/terflogag/OpenSourceController
Any idea ?
Thank you !

Hey @terflogag,
Your lib is similar to EasyAbout.
Please add it under /Utility
Thanks for contributing 👍 🎉

Cool ! I didn't know this library, thank you 👍


The expiration date of items in the fridge will be revived.

Describe the bug
The expiration date of items in the fridge will be revived.
To Reproduce

put food away in the refrigerator
wait until the expiration date stage is advanced
(ex: first stage: “fresh” -> second stage: “good”)
lift up the food and put it in the refrigerator again
the expiration date stage is reset
(back to first stage “fresh”)

Expected behavior
Expiration date should not return to the fresh, but keep the good stage
Screenshots
none
Minecraft Version:

1.21

Server Version:

paper 1.21

Plugin Version

NoMoreCooked-0.2

Hi, here's a specific version where you can add the debug: true line in the configuration to help me find the places where problems occur.
Download Link : NoMoreCooked-2.1b.jar
You can deactivate the option once the info in the console has been collected and send me the logs. If possible, do this with an item you know is affected by the problem, thanks in advance.

Do you use tier fridges or just one fridge by default ?

Okay, I'll also need to know the multiplier of this fridge (I'm guessing 2 from the logs), but also, could I have the info of your configuration for the two stages concerned “fresh” and the other concerned by the problem. Thanks a lot!

fridge-expiration-multiplier: 2
and I attach the stages file.
custom-stages.txt

Thanks for the information, I'm thinking about a solution, but I can't see where the problem lies at the moment, I'll keep you posted.