Support for deploying with React Concurrent Mode

I'm trying to get a personal React project deployed using the react@experimental version, which supports React's upcoming Concurrent Mode.
I was using this hack explained in this Spectrum post.
process.env.NODE_ENV === 'development'
  ? ReactDOM.createRoot(document.getElementById('root')).render(<Root />)
  : ReactDOM.unstable_createRoot(document.getElementById('root')).render(
      <Root />,
    );

Current React docs for Concurrent Mode only uses ReactDOM.createRoot(...).
After upgrading to<EMAIL_ADDRESS>this hack no longer works. Here is the error:

Tried version<EMAIL_ADDRESS>to no success. Only going back to<EMAIL_ADDRESS>has let this hack work. Local production builds (CRA) using yarn build do not give me this error.
Thanks!

Are you seeing this behavior with now dev or production deployments (or both?)

I have not tried with now dev (I am using Next.js’s yarn start), but I am seeing this behavior on production deployments.

Are you assigning NODE_ENV in now.json?
Try assigning the desired value for for both build time and runtime.
{
  "env": {
    "NODE_ENV": "development"
  },
  "build": {
    "env": {
      "NODE_ENV": "development"
    }
  }
}

Or perhaps you want production instead of development?

The problem is that the React team is publishing experimental as a randomly generated version instead of incrementing the version to follow semantic versioning.
This means that you can't use ^ when defining the react version in package.json or else npm install may use an older version, something that would never happen when following semver.
The solution is to pin to the exact version.
Before
{
  "dependencies": {
    "react": "^0.0.0-experimental-241c4467e",
    "react-dom": "^0.0.0-experimental-241c4467e"
  }
}

After
{
  "dependencies": {
    "react": "0.0.0-experimental-241c4467e",
    "react-dom": "0.0.0-experimental-241c4467e"
  }
}

Notice the lack of ^. You should also delete yarn.lock or package-lock.json and regenerate if you have one.


Simplify checks in device.move()

Change-type: patch
Signed-off-by: Trong Nghia Nguyen<EMAIL_ADDRESS>

@balena-ci I self-certify!


Masonry pane children visibility

Hello, when i try to hide node in masonry pane (also disabling its managed property), other nodes not filling space of hidden node.
Here is sample code. If you try to hide first pane you'll see it leaves blank space.
public class MasonryPaneIssue extends Application {
    @Override
    public void start(Stage stage) {
        JFXMasonryPane masonryPane = new JFXMasonryPane();
        for (int i = 0; i < 5; i ++) {
            addPane(masonryPane);
        }

        final Scene scene = new Scene(masonryPane, 800, 200);
        stage.setTitle("Masonry pane issue");
        stage.setScene(scene);
        stage.show();
    }

    private void addPane(JFXMasonryPane masonryPane){
        Pane pane = new Pane();
        pane.managedProperty().bind(pane.visibleProperty());
        pane.setStyle("-fx-background-color: #fff");

        JFXButton hideButton = new JFXButton("hide");
        hideButton.setOnAction(e -> {
            pane.setVisible(false);
        });

        JFXButton showAllButton = new JFXButton("show all");
        showAllButton.setOnAction(e -> {
            for (Node node : masonryPane.getChildren())
                node.setVisible(true);
        });

        HBox buttonContainerHBox = new HBox(hideButton, showAllButton);

        pane.getChildren().addAll(buttonContainerHBox);
        masonryPane.getChildren().addAll(pane);
    }
}

Will be appreciated for your support, thanks.

Hello,
Well setting the visibility of a node to false doesn't remove it from masonry pane thus other nodes will not fill its space. However changing its managed property, should do the trick. Will look into it, thanks for pointing out the issue 👍
Regards,

The fix will be included in the next build. however you need to call the new method clearLayout explicitly in your code to force recomputing the layout on the next layout pass:
hideButton.setOnAction(e -> {
    pane.setVisible(false);
    masonryPane.clearLayout();
});

showAllButton.setOnAction(e -> {
    for (Node node : masonryPane.getChildren())
        node.setVisible(true);
    masonryPane.clearLayout();
});

Regards,

Thankful


Cython methods are not ignored when checking field annotations

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
When trying to сythonize Pydantic code with a method in a model, I get the following error
Traceback (most recent call last):
  ...
  File "src/qaclassifiers/common/config.py", line 248, in init qaclassifiers.common.config
    class StorageConfiguration(BaseModel):
  File ".../lib/python3.9/site-packages/pydantic/_internal/_model_construction.py", line 96, in __new__
    private_attributes = inspect_namespace(
  File ".../lib/python3.9/site-packages/pydantic/_internal/_model_construction.py", line 401, in inspect_namespace
    raise PydanticUserError(
pydantic.errors.PydanticUserError: A non-annotated attribute was detected: `get_kwargs = <cyfunction StorageConfiguration.get_kwargs at 0x7f69db992e10>`. All model fields require a type annotation; if `get_kwargs` is not meant to be a field, you may be able to resolve this error by annotating it as a `ClassVar` or updating `model_config['ignored_types']`.

For further information visit https://errors.pydantic.dev/2.8/u/model-field-missing-annotation

Look at the minimal reproducible example. It's from the history of pydantic tests. It worked until Pydantic 2.
Example Code
import cython

def test_cython_function_untouched():
    Model = cython.inline(
        # language=Python
        """
from pydantic import BaseModel
class Model(BaseModel):
    a: float = 0.0
    b: int = 10
    def get_double_a(self) -> float:
        return self.a + self.b
return Model
"""
    )
    model = Model(a=10.2)
    assert model.a == 10.2
    assert model.b == 10
    assert model.get_double_a() == 20.2

Python, Pydantic & OS Version
pydantic version: 2.8.2
        pydantic-core version: 2.20.1
          pydantic-core build: profile=release pgo=true
                 install path: /home/nokados/.pyenv/versions/3.9.19/envs/qaclassifiers39-pdm/lib/python3.9/site-packages/pydantic
               python version: 3.9.19 (main, May  1 2024, 19:26:02)  [GCC 9.4.0]
                     platform: Linux-5.4.0-177-generic-x86_64-with-glibc2.31
             related packages: fastapi-0.112.2 typing_extensions-4.12.2
                       commit: unknown

Cython version: 3.0.11

So, I've already investigated the issue. The inspect_namespace function ignores methods by default; however, after Cython compilation, isinstance(method, types.FunctionType) returns False, so the methods are no longer ignored. Yes, this does seem to be primarily a Cython bug.
However, I would propose two solutions that can be implemented in Pydantic:
1.  Add cyfunction to default_ignored_types
This is a bit hacky because we can’t directly import the cyfunction type from Cython. Instead, we can create a simple function and determine its type from there.
def default_ignored_types() -> tuple[type[Any], ...]:
    from ..fields import ComputedFieldInfo

    ignored_types = [
        FunctionType,
        property,
        classmethod,
        staticmethod,
        PydanticDescriptorProxy,
        ComputedFieldInfo,
        ValidateCallWrapper,
    ]

    try:
        import cython
        CyFunctionType = type(cython.inline("def f(): pass")["f"])
        ignored_types.append(CyFunctionType)
    except ImportError:
        pass

    return tuple(ignored_types)

2. Check the name
In this solution, we create a specific method that checks if a value is a cyfunction. The code is based on Cython’s tests.
def is_cython_function(value: Any) -> bool:
    return type(value).__name__ == 'cython_function_or_method'

And modify the conditions in inspect_namespace:
        elif (
            isinstance(value, all_ignored_types)
            or value.__class__.__module__ == 'functools'
            or is_cython_function(value)  # <-- the new condition
        ):
            ignored_names.add(var_name)
            continue

So, if you accept either of these solutions, I'll make a PR.

Yes, this does seem to be primarily a Cython bug.

To be very clear: this is not a Cython bug. This is an accurate test for the type.

Closing as a duplicate of https://github.com/pydantic/pydantic/issues/6670, which provides a workaround.


Add command API support

This is an extended version of https://github.com/voxpupuli/puppetdb-ruby/pull/5 with tests and PuppetDB v4 support.
There are a few breaking changes because QueryAPI and CommandAPI has different endpoints and API versions.
My changes are successfully tested on Puppet2016 with the 'replace catalog' and 'replace facts' commands.

@rlinehan Any updates on this PR?
I'm not sure why the build is failed. It seems to be the first build and never worked before.

@bekbulatov Sorry for the delay, I've started working on updating the puppetdb-ruby gem. Working towards a 1.0.0 release.
Could you rebase this PR on master and I'll take a look at it?

@dhollinger Rebased

@bekbulatov Could you add some docs to the README on the proper way to use what you've added?

@dhollinger I've added the same example I used in specs. Hope it will be helpful.

Looks good, thanks!


if autogenerated /checkboxes only work on every other search/render

then put it in a setTimeout(function(){}, 0) so that the template is rendered first, then the autogen stuff checks for whether the /checkboxes are present in the page. (Otherwise, as is the case right now, the "old" options are still in the page, as the template is evaluated before replacing it, so the check doesn't work.)

ooh, maybe I should put the setTimeout in the generateOptions function, to reduce the boilerplate in user-written templates


Detect third party JS libraries with custom metric

Using custom metric scripts, detect the presence of third party libraries and their version if available.
For example, a page may have "jquery@3.2.0,modernizr,backbone@1.3.3,...".

Previous discussion: https://discuss.httparchive.org/t/tracking-javascript-library-versions-in-http-archive/55/24

I'm a co-author of the paper referenced in #78. Our library detection code is a fork of the library detection code used by the Library Detector for Chrome extension. We did a few modifications to the code more than a year ago, so our fork isn't really up to date any more. I compared our code to the current version today and found the following differences:
Libraries detected by the Chrome extension but not by our code: GWT, Ink, Vaadin, Zurb, Polymer, Highcharts, InfoVis, Blackbird, CreateJS, Google Maps, Spry, Qooxdoo, Ext JS, base2, closure, Processing.js, Mapbox, Sammy, Rico, MochiKit, gRaphaël (fix gRaphaël), Glow, FuseJS, Tween.js, SproutCore, Zepto.js, PhiloGL, LABjs, Head JS, ControlJS, RightJS, Pusher, Swiffy, Move, AmplifyJS, Popcorn.js, Spine, Visibility.js, IfVisible.js, DC.js, Vue, Two, Brewser, Material Design Lite, Kendo UI, Matter.js, Riot, Sea.js, ScrollMagic
Libraries not currently detected by the Chrome extension (added by us): swfobject, flexslider, moment-timezone (plug-in), json3, pep, spf, numeral
Equivalent detection code in both: Lo-Dash, Underscore (test checks that no Lo-Dash detection in window), yepnope, jQuery Tools, D3, Ember.js, Greensock JS, Isotope
Detection code better in the Chrome extension (better error handling etc.): Bootstrap, three.js (better handling of two cases), CamanJS, WebFont Loader (set version to null)
Detection code in the Chrome extension that is more restrictive than ours (fewer false positives when the version property is not extracted, but likely lower coverage of older library versions/when the additional method used in the signature isn't part of the API): FlotCharts, jQuery UI, Dojo, Prototype, Scriptaculous, MooTools, YUI 2/YUI 3, Raphaël (possibly fix ë in name), React, Modernizr, Backbone, Mustache, Fabric.js, Paper.js, Handlebars, Knockout, jQuery Mobile, Angular, Hammer.js, Velocity.js, FastClick, Marionette, Can
Detection code improved in our fork (usually added support for older versions): Leaflet (also allows win.L.VERSION, but additionally use extension restrictions on GeoJSON etc.), Socket.IO (added alternative win.io.Socket), RequireJS (seems to cover more versions), Pixi.js (better error checking), Moment.js (but add win.moment.isMoment check from extension)
How would you like to proceed to add all those libraries? We could try to have our few extra library signatures added to Library Detector; then you could simply integrate their entire file with all the library detection tests.

Tobias, thanks for digging into this!

We could try to have our few extra library signatures added to Library Detector; then you could simply integrate their entire file with all the library detection tests.

Big +1 to this. I'd love to avoid trying to replicate efforts and it looks like library detector is a fairly active project, so everyone would benefit if we converge on improving library detector core and reusing it across projects.

Sounds good! See johnmichel/Library-Detector-for-Chrome#89

@tlauinger awesome, thanks!

johnmichel/Library-Detector-for-Chrome#91 has been merged; the Library Detector code now has all our additional and updated library tests (minus two that weren't that useful after all).
A few more thoughts on things that could make the data easier to work with:

Instead of '@', it would be better to use a more unique character (or string) to join library names and versions; one that won't appear in "strange" library names or versions, and that doesn't have any special meaning in SQL or regular expressions

I assume that at some point, the list of supported libraries will be updated. When analysing library use over time, it's important to distinguish "not detected because the library isn't used by the site" from "not detected because the library wasn't supported by the system at the time of the crawl". So it could be a good idea to keep a document somewhere that lists the dates when support for a library was added

For people who are using the library detection data, it can be helpful to document the limitations of the measurement approach:

detection of libraries only in the main page but not frames;
no detection of duplicate inclusions of a library;
higher potential for false positive detections when no version number was extracted;
version number extraction works only if the version number is exported by the library code, which libraries don't always do from the start, and sometimes they even drop support for a few versions before reintroducing it (or it's never supported at all);
if a website uses heavy minification with dead code removal, or if libraries are included as a "private" reference instead of being accessible as a window-global variable, detection won't work either.
Also there's the more general limitation that library detections don't work retroactively (only in the crawls after support was added).

If you'd like, I could write up these points in a brief library detection README.

If you'd like, I could write up these points in a brief library detection README.

Yes please! Let's make a docs/custom-metrics.md doc. See https://github.com/HTTPArchive/httparchive/pull/82 for example.

So it could be a good idea to keep a document somewhere that lists the dates when support for a library was added

Let's log the version of Library-Detector-for-Chrome in our traces. This way we can go back to the library commit logs and see what was supported vs not... Ideally, LDfC would have a release log that we can point to; otherwise we're duplicating their work. /cc @johnmichel

Another thing to note is that LDfC's detection script has two kinds of output for each library: an object containing version info, or false if the version can't be detected. If a library is detected but not its version, it's the same as no library at all. In other words, it doesn't support the lib@null use case in #80.
I opened https://github.com/johnmichel/Library-Detector-for-Chrome/issues/92 to explore the feasibility of adding support.

The actual integration of LDfC is something else I'd like to get feedback on. One approach would be to run a script that:

pulls down https://github.com/johnmichel/Library-Detector-for-Chrome/blob/master/library/libraries.js
extracts the detection object's variable name so we can reference it later
prepends/appends some boilerplate JS

scary looking warnings not to modify the generated code
test each library, using the variable name extracted above
serialize results

writes it out to custom_metrics/third-parties.js

The detection object's variable name also has some kind of unique prefix; d41d8cd98f00b204e9800998ecf8427e_LibraryDetectorTests. If that happens to be a good version string, we could extract it and save it somewhere.

@johnmichel how is the var name generated? Could we define a cleaner interface for non-extension consumers of libraries.js?

test each library, using the variable name extracted above

@rviscomi not sure I understand what this step does?

Roughly
Object.entries(d41d8cd98f00b204e9800998ecf8427e_LibraryDetectorTests).map((name, lib) => lib.test(window))...
Written on mobile, not tested. Just an example of accessing the objects props and testing each library.

Oh, doh.. I see, that makes sense.

@igrigorik What @rviscomi said is basically the gist of it.  That unique prefix was in place before I assumed control of the project, so if it's not ideal or usable enough, I'm certainly open to ideas for a cleaner or more straightforward approach.

@johnmichel by the looks of it, that script gets injected into the page, so I'm assuming the idea behind the unique fingerprint is to avoid collisions with other content.. Does the prefix change from release to release?
@rviscomi re, version: I guess we can pull it out from manifest.json and record it in our script?

@igrigorik The fingerprint doesn't change from release to release, so you should be able to rely on it being consistent.  If it would make sense to rotate it for versioning on the httparchive side, that is also an option that could be explored as it doesn't affect anything outside of the extension.

@johnmichel nah, that's fine.. we're better of with the version in the manifest.

Now that #85 landed, can we close this? Anything left?

@igrigorik the final piece would be unknown version support, but that's being tracked in https://github.com/johnmichel/Library-Detector-for-Chrome/issues/92 so this one can be closed with that caveat

Got it, thanks. We should figure out who's taking the lead on that one.. Looks like there is agreement on how we want to tackle it, but not clear who's actually doing it :)

You're right. I'll take it.

@tlauinger @johnmichel FYI this is now live. See https://discuss.httparchive.org/t/javascript-library-detection/955. Thanks for your help making this happen!

@rviscomi @tlauinger @igrigorik  Happy to have helped 😄   Please let me know if future enhancements are desired!


Is it possible to name the second resource group according to enterprise naming policies?

In the FAQ mentioned above on second resource group crated by AKS resource provider, is there any way to either name it according to our standards OR provide a pre-created resource group to the AKS creation script / ARM template?

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

ID: d501ff67-9208-8bcb-e8df-f09e9b16a802
Version Independent ID: e3fc3851-ddc4-d26c-251d-6ae53d714081
Content: Frequently asked questions for Azure Kubernetes Service (AKS)
Content Source: articles/aks/faq.md
Service: container-service
GitHub Login: @iainfoulds
Microsoft Alias: iainfou

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

@iainfoulds do you know an answer to this one?
I browsed through an ARM template for deploying an AKS cluster however I am not finding anything that mentions the naming conventions of the auto generated resource group.
The only mention of Resource group in the template is
   "type": "Microsoft.Resources/deployments",
            "name": "SolutionDeployment",
            "apiVersion": "2017-05-10",
            "resourceGroup": "[split(parameters('omsWorkspaceId'),'/')[4]]",
            "subscriptionId": "[split(parameters('omsWorkspaceId'),'/')[2]]",

No, the MC_ resource group isn't user-defineable or changeable. The name is composed of your resource group and location, so it can at least somewhat follow naming standards. You can tag resources from a management and filtering perspective, so long as any existing tags assigned by the Azure platform aren't deleted.

Thanks @iainfoulds. That's what I figured.
@badalk I will close this out for now. Let me know if you have additional questions.
Also, if you want to leave feedback to the product teams to possibly allow this in the future you can leave that feedback here:
https://github.com/Azure/AKS/issues


Docs index page refactor

@mattgreene
@swormke
What issues does this address?
Fixes #145, #138
What's this change do?

refactors the home page as previously discussed
adds a new, separate project index page
contains the new 'for developers' section

Where should the reviewer start?
View the docs in the test rtd site at http://docs-dev.readthedocs.io/en/feature.docs-index/.
Any background context?

Are you sure you want to list the projects on the main page and maintain a projects list page?

@swormke -- Not particularly. I'm open to alternatives!

What does it mean be merge this PR into the "1.0" branch for docs?  If reasonable, this repo needs to match the branching strategy now in effect for f5-openstack-*.  There is a liberty branch, which is quite a bit different.  We need to figure out if it makes sense for docs to carry named branches such as liberty and mitaka.

Re: @swormke comment on the project list page, I suggest moving all content into the child pages and perhaps generate a simple project list (dynamic TOC with depth=1 from the project list?) on the main page.

Done with review.  Let's sync on my comments before deciding to merge the PR.

Changes to index / project index ready for review. I think it's a good idea to maintain the differently-named branches (kilo, liberty, mitaka, and so on) here because there will likely be differences in the deployment/ configuration instructions across OpenStack releases. If we don't intent to maintain these across releases, then I'm not sure that the different branches relating to releases are necessary. We should probably discuss intent and make it explicitly known here.

Done with review.  Looks fine except for my comment on the weird f5-sdk reference (link?)

All set!


feat(core): dynamic detection ios/android mode on root component

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Refactoring
[ ] Build or CI related changes
[ ] Tests related changes
[ ] Documentation content changes

What is the new behavior?
https://github.com/taiga-family/taiga-ui/assets/12021443/a1700378-2e6a-4fa7-af2e-c51950c53577

I don't think we should overcomplicate code for the simplicity of debugging device emulations.

@waterplea @n-barsukov @vladimirpotekhin but it's very convenient
https://github.com/taiga-family/taiga-ui/assets/12021443/8b8c775f-1902-40a5-8d22-1f3b6f1878d7

@waterplea @n-barsukov @vladimirpotekhin but it's very convenient
Screen.Recording.2023-09-11.at.13.25.29.mp4

OS cannot change on the fly. We either need to needlessly take up responsibility to maintain dynamic behavior EVERYWHERE we vary behavior based on OS, or we cannot trust this simplification. I don't believe it is worth it for one less F5.


iD Edit mode, start_date and end_date not filled in if just years, expects yyyy-MM-dd

Bug description
What is happening?
When I try to edit a feature in iD, a feature with a start_date and/or end_date which are just years, the Start Date and End Date boxes do not get filled in. Instead, I see console messages such as The specified value "1861" does not conform to the required format, "yyyy-MM-dd".
What should be happening?
The Start Date and End Date boxes should be filled in so the dates could be edited. But, how to accept only a year into a yyyy-MM-dd box?
Repro Steps
Please provide detailed instructions to reproduce the behavior:

Go to Edit
Open your debugger
Select / find / click on any feature which has only a partial date
See that the Start Date and End Date are not filled in
See that there is a console message about the year not being a properly-formatted ISO date

By contrast:

Click a feature which has full ISO dates
See that the Start Date and End Date are filled in
See that there are no console messages complaining about the date format

Screenshots & URL

The Occidental Hotel and the Hotel Seattle are both visible at https://openhistoricalmap.org/edit#map=20/47.60191/-122.33342 and both have only years.
The block of buildings to the west all/mostly have full dates, and fill in properly.
The Yasler Residence in the middle, has a full End Date and no Start Date. The End Date fills in properly, while the Start Date is left blank which does not result in an error message.

Long delay, finally got to trying this out -- I notice that the error state occurs at the point when I try to save, if I try to save immediately after making the offending feature.
However, in iD I can make many features, then save the whole batch.
I was able to do the following:

Make a Point feature with TEST as the start and end date. This should fail the validator
Make another point with 2020 as start and end date.
Save without triggering an error

Seems like we need to find a way to trigger the validation as soon as I remove focus from the start_date or 'end_date` field. Any idea if there's an easy path to do that?
I see that the validation step is in save.js, so that's not super promising for a field validation that occurs at the point of field entry.

A new approach:

validation is done on each input field as it is changed (that is, loses focus after having its value changed, or hitting enter after having its value changed)
on no-match, an alert is shown, the field is blanked, and the field is focused

See branch gin-issue280-startenddate_format and PR https://github.com/OpenHistoricalMap/iD/pull/81/files

Hmm, this is now working as expected for me on start_date:

But not on end_date:

I looked a bit at the code and markup to see why that might be, but I can't tell. Maybe the select pattern on the end_date is somehow different?

Replying to https://github.com/OpenHistoricalMap/issues/issues/280#issuecomment-915465979
This is working for me as expected. I get an alert, then the End Date box is cleared and focused.
Tested in Mac Chrome, Mac Firefox, Mac Safari.

Can I get additional details and walkthrough? Maybe there is something in the sequence of clicks that I hadn't anticipated, or perhaps it's something browser-specific?

aha, it is working for me as expected in Chrome. I was testing previous in Firefox

[ ] for Gregor, re-test in Firefox
[ ] for Gregor, re-test in Safari

I've re-tested in both, but am still seeing it work as expected.
Can you make it happen again in Firefox?
If so, when you leave the End Date field in your test (the blur event on the input, is also the change handler and validation trigger), what did you do that caused you to leave the End Date box? Tabbing to a new field, or clicking a new field? Pressing enter in the field? Clicking some button, or another feature on the map?

After mush fussing, I found that tab and shift-tab don't reliably trigger the blur & change events. Below is an example where I tabbed out of the field, and only the four "letter" events actually came through.

Via Google I see that this is a known issue dating back some time, and reported in relation to several JavaScript libraries. Tabbing reliably triggers in Chrome, but in Firefox it sometimes simply doesn't send an event. The usual recommendation is to add keydown events to detect tab and trigger the change handler...

All righty! See current version of gin-issue280-startenddate_format branch.

adds keydown event handler, if Tab (includes shift-Tab) then triggers change event handler, even on Firefox
moved the validation code directly into change() instead of helper function

smaller diff footprint
needs to potentially reset val as a side effect if altering their data

added new feature: integer-looking strings with under 4 digits, are coerced to 4 digits e.g. "345" and "-20" will become "0345" and "-0020" and therefore valid

This was fixed and deployed last week


Implement Summary and Histograms metrics support

CMetrics now supports Prometheus decoding (Prometheus Text -> CMetrics context). It primarily use case its for metrics scrapping from applications and general services that expose a Prometheus endpoint.
The current problem is that CMetrics **don't support yet Summaries and Histograms. We need to implement support for that as a metric type in CMetrics, plus add support for all encoders when translating back to Promethehus text, InfluxDB, Remote Write, etc.
refs:

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

As an inspiration of implementation we can take a look at Prometheus C Client written by Digital Ocean:

https://github.com/digitalocean/prometheus-client-c/tree/master/prom/src

Histograms implemented in #83

Implemented in #87


Fixed typo on initialize method name

good catch.  i'd merge but i just realized i don't have push access for this repo.

@jgravois you should have access now.

:+1:


clearInterval erroneously clears setTimeout

I had a bug in my code where I did a setTimeout and then tried to clear it with clearInterval. This passed all my unittests because sinon doesn't care about this difference.
The browser also doesn't care, but Node.JS does. It leads to a timer that is not cleared (and therefore my process did not exit).
I think it would encourage good coding practice without sacrificing any valid use cases if Sinon checked whether the setTimeout was properly matched to clearTimeout and setInterval to clearInterval.

I agree. This could help find bugs that are otherwise hard to track down. The code that is used by Sinon for timers now lives here: https://github.com/sinonjs/lolex
Can you put a pull request together for this?

Unfortunately not at the moment I'm under too much pressure
On Jun 18, 2015 1:29 PM, "Maximilian Antoni"<EMAIL_ADDRESS>wrote:

I agree. This could help find bugs that are otherwise hard to track down.
The code that is used by Sinon for timers now lives here:
https://github.com/sinonjs/lolex
Can you put a pull request together for this?
—
Reply to this email directly or view it on GitHub
https://github.com/cjohansen/Sinon.JS/issues/766#issuecomment-113120570.

The fix for this is PR #20 on the lolex module

This is resolved in sinon 1.16.0


Empty list error when there's no snapshots taken from a VM

Hi,
This is not really an issue of failure, but the error message made me think that this is a code issue. I had to spend some time to actually get any sense out of the error produced and what was actually causing it.
Case:
Trying to --revert to a snapshot with 'knife vsphere vm snapshot -f FOLDER/NAME --revert base_with_disks VM_NAME -VV', but the snapshot list is empty.
Output:
DEBUG: value for config item vsphere_host: SERVER_NAME
DEBUG: value for config item vshere_path:
DEBUG: value for config item vsphere_port: 443
DEBUG: value for config item vsphere_nossl:
DEBUG: value for config item vsphere_user: USER
DEBUG: value for config item vsphere_pass: PASSWORD
DEBUG: value for config item vsphere_insecure: true
DEBUG: value for config item proxy_host:
DEBUG: value for config item proxy_port:
DEBUG: value for config item folder: FOLDER/NAME
DEBUG: value for config item vsphere_dc: DC_NAME
/path/to/lib/chef/knife/vsphere_vm_snapshot.rb:106:in find_node': undefined method each' for nil:NilClass (NoMethodError)
from /path/to/gems/ruby-1.9.3-p448/gems/knife-vsphere-0.9.7/lib/chef/knife/vsphere_vm_snapshot.rb:95:in run' 	from /path/to/gems/ruby-1.9.3-p448/gems/chef-11.8.2/lib/chef/knife.rb:485:in run_with_pretty_exceptions'
from /path/to/gems/ruby-1.9.3-p448/gems/chef-11.8.2/lib/chef/knife.rb:174:in run' 	from /path/to/gems/ruby-1.9.3-p448/gems/chef-11.8.2/lib/chef/application/knife.rb:133:in run'
from /path/to/gems/ruby-1.9.3-p448/gems/chef-11.8.2/bin/knife:25:in <top (required)>' 	from /path/to/gems/ruby-1.9.3-p448/bin/knife:23:in load'
from /path/to/gems/ruby-1.9.3-p448/bin/knife:23:in `'
Cause:
The snapshot list for the VM is empty.
Maybe just add error handling for this case and output the cause.
Br, Ari

Closing to clean up the backlog. But I do get the need for better error reporting, and will be working towards some of that.


[Blog] Want to add a blog about open source

Description
I have written a blog on "Introduction to the world of Open Source"
I want to add the blog under the blog section.
Published Link
Here is the link :- https://soumyajitmondal.hashnode.dev/introduction-to-the-world-of-open-source
🔄 Websites
Hashnode
Checklist ✅

[X] I checked and didn't find similar issue
[X] I am from GSSoC23
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue (blank for no)

@Soumyajit2825 assigned. it should be copyright free and written by you.


Rotating the image in memory can lead to Out of Memory exception

Steps to reproduce

Call capture() in picture mode with quality set to high

Expected behaviour
The app should not crash
Actual behaviour
Sometimes, the app throws an Out of Memory Exception
Environment

Node.js version: 6.9.1
React Native version: 0.32
React Native platform + platform version: Android 6.0

react-native-camera
Version: master
After some debugging: the OOM Exception happens during the call to fixOrientation. Even when it doesn't crash, it takes a while for capture to end. Wouldn't it be more efficient to change the orientation when the file has already been written, like rewriteOrientation does?

You can add the largeHeap setting to your manifest file:
<application
        android:name=".MainApplication"
        android:largeHeap="true"

Also, my performance fork has some android performance and memory fixes in - not submitted a PR yet, still testing. https://github.com/npomfret/react-native-camera/tree/performance

@gmahomarf are you able to test my PR?  It may help with this https://github.com/lwansbrough/react-native-camera/pull/682.

@npomfret I've tested out #682 (0.10.0):

you can now avoid the memory crash if not using the fixOrientation flag
but the rotation is still wrong -90 for front facing camera the different Android devices I tested (Samsung Galaxy S7 / Android 7 and a Samsung Galaxy S4 Android 5)


Arrowkeys for music controls

Feature
When the music player is focused (normal and mini player), and not typing (searching, editing tags,...) having the ability to:
skip x seconds with ← and →
adjust volume with ↓ and ↑

You can do those exact things by holding Ctrl with ← → ↓ ↑. You can learn more about Nora's keyboard shortcuts in the App Shortcuts menu at the bottom of the Settings menu.
But if you mean without the Ctrl, then that would cost user accessibility since arrow keys are primarily used for navigation.

I do indeed mean without the Ctrl, but I do see how accessibility could be compromised by this. I'll be using it with the Ctrl.
No worries at all.


Improvements

Better typesetting for articles via the "typesetting": "article" config in page theme.
Banner support via banner and bannerKey, closes #391.
Display extra content aside via tocExtraContent.
Customizable theme primary color via --nextra-primary-hue.
Better contrast in dark mode.
Better scrollbar styles in the sidebar.
A11y: high contrast mode.
Improved initial sidebar focus.

What's the best way to modify the value of --nextra-primary-hue? Can we do it in the theme config?

@alii Currently I'm adding a custom CSS and set the :root variable. And yes I think this can be a theme config, I'll open an issue for it.

Can anyone help me how to set the Banner height to a custom value?


Check uptTo before score in ReqExclBulkScorer#score.

Description

It's not clear to me what problem this is fixing as it is legal to call bulkScorer.score(collector, acceptDocs, NO_MORE_DOCS, NO_MORE_DOCS).

it is legal to call bulkScorer.score(collector, acceptDocs, NO_MORE_DOCS, NO_MORE_DOCS).

Thanks for reviewing @jpountz . Do you think we can return NO_MORE_DOCS immediately when min is NO_MORE_DOCS in BulkScorer#score?

This would be correct, but I don't think we should do it. If there is a DocIdSetIterator that is slow at advance(NO_MORE_DOCS), this is where we should add a special check.

I added this check in ReqExclBulkScorer#score because i found upTo would be NO_MORE_DOCS after the loop in some case, e.g: max is NO_MORE_DOCS, and result in call req.score(collector, acceptDocs, NO_MORE_DOCS, NO_MORE_DOCS).
Maybe it is useless, I will close it.


Command Line support?

Hi, I have a quick question about fmplayer. So I'm looking to render .M files into .wav, a feature fmplayer apparently has. I was wondering fmplayer could do this directly over command line. (i.e. without the GUI interface) The reason is that I'm writing a project involving automated rendering of .M files, meaning I'd need to run fmplayer over a script.
Thanks for making fmplayer and I look forward to hearing from you!

Hi, thanks for showing interest to my project!
I also think that the lack of scriptable command line interface is unfortunate. (I think I actually have a ugly hacked up command that outputs rendered FMDSP video using ffmpeg somewhere on my disk)
I don't think it's going to be a difficult task, but I'm afraid I currently don't have much time for personal projects and therefore it might be a while before I can release it.

Thanks for the update! Do you know if (or when) you'll have time to make this feature?

Also very interested in this. Even if I can just open M2 files via the command line it'll increase my workflow speed drastically

Looks like there's a curses build of the program which supports file opening from the command line, but I've not been able to compile it due to program errors, such as not being able to get a comment, and an undefined reference to 'opna_ssg_sinc_cacl_c' in libopna's opnassg

I could compile the gtk folder Makefile.am on GNU/Linux on Lubuntu 18.04 and on the win32/msvc GNUmakefile on Windows 10 with minor changes. Can You add more information about compiling error.?

It was the curses folder, not the gtk folder, with the compile issues. @gzaffin
Anyway I was able to implement a patch for the GTK build to allow the program to open a song on launch when given a filename as a second argument
fmplayer-cli-patch1.zip


demos are broken

I made many changes to the code without making sure along the way that the demos were still working ... and they are not anymore.

The problem was caused by a single line missing to set up the exception hook properly when calling install().


Sunnyvalley.repo update for licensed and free customers

We want to multiple repos for different our customers.
We use zenarmor uuid in repo.

First part is bbec7f3afcda -- can you try with SunnyValley.conf.shadow.in ?  It should create a SunnyValley.conf and SunnyValley.conf.sample file and both would be removed cleanly.

I update file name SunnyValley.conf.temp.in  to SunnyValley.conf.shadow.in. I created package with "make package" in plugins/vendor/sunnyvalley folder.  I installed os-sunnyvalley , I see only  SunnyValley.conf.shadow file. should I filename in plist under core package ?

Hmm, it sounds like the commit wasn't there. SunnyValley.conf.shadow is translated to SunnyValley.conf.sample by the commit.

Franco , could you check last commit  please ?

Franco , could you check last commit please ?

To be frank it would be better to split this into the transition to the shadow file and other wording improvements only and then instead of the package scripts work on a straightforward way to hook into the firmware configuration process in order to do the rewrite you want to do for NODE_UUID.
It's just that I think that neither package scripts nor pkg environment variables are robust solutions since they hinge on update triggers and bug-free pkg use both of which we can't always guarantee.

superseded by #7123


[FX-6101] Disable value change on mouse wheel

FX-6101
Description
This pull request disables the value change on wheel scroll in NumberInput.
Tests will be added in https://toptal-core.atlassian.net/browse/FX-6102.
How to test

Temploy
Check how input behaves with and without enableChangeOnMouseWheel property

Screenshots
https://github.com/user-attachments/assets/e9a97a1b-cb76-42b1-abd3-14fda595365f
Development checks

[x] Add changeset according to guidelines (if needed)
[N/A] Double check if picasso-tailwind-merge requires major update (check its README.md)
[x] Read CONTRIBUTING.md and Component API principles
[x] Make sure that additions and changes on the design follow Toptal's BASE design, and it's been already discussed with designers at #-base-core
[x] Annotate all props in component with documentation
[N/A] Create examples for component
[x] Ensure that deployed demo has expected results and good examples
[x] Ensure the changed/created components have not caused accessibility issues. How to use accessibility plugin in storybook.
[x] Self reviewed
[N/A] Covered with tests (visual tests included)

All development checks should be done and set checked to pass the
GitHub Bot: TODOLess action

PR commands

List of available commands:

@toptal-bot run package:alpha-release - Release alpha version
@toptal-anvil ping reviewers - Ping FX team for review

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit: to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

@toptal-anvil ping reviewers


Refactor KeyboardDismissingFlatList to a functional component

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/16171
Tests

On every platform:

[x] Log in to the account
[x] Click the user avatar to enter the settings
[x] Select Workspaces
[x] Select a workspace that has some members
[x] Select Members
[x] Check if scrolling member's list works
[x] Check if you can select/deselect users
[x] Search for a user in the Find a member field

On platforms with digital keyboard (mWeb/iOS/Android):

[x] Check if you are in a workspace with enough members so you can scroll the list.
[x] Click on the Find a member text input to bring it into focus, the keyboard should display.
[x] Start scrolling the list of members when the keyboard is displayed.
[x] Confirm, that the keyboard is dismissed.

The WorkspaceMembersPage was the only place that I found that uses this component.
Offline tests

It doesn't change anything network-related things.
QA Steps

[ ] Verify that no errors appear in the JS console
[ ] Tests from the above list

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/104823336/c9821674-8d92-45f8-bc0b-eda4ff5371bc

Mobile Web - Chrome
https://github.com/Expensify/App/assets/104823336/681ab7b4-2f6c-4396-bb6f-69cc7c04d458

Mobile Web - Safari
https://github.com/Expensify/App/assets/104823336/62669ad2-c9a4-403f-9f93-c47064072641

Desktop
https://github.com/Expensify/App/assets/104823336/5e05f4ab-1706-49e3-a285-eac28e29066b

iOS
https://github.com/Expensify/App/assets/104823336/ff1123ec-5265-4bd7-9a43-4399886fdfe9

Android
https://github.com/Expensify/App/assets/104823336/45270a34-a557-4952-bc29-1a7a94e2162a

Someone will take over this C+ review asked help here

@parasharrajat is this ready for my review or are you still requesting changes?

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/marcaaron in version: 1.3.44-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.3.45-7 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


make reponsive Login/SignUp page

Related Issue
Fixes:  #1116
Description
created a responsive login/signup  page for enhance user experience, changes,fixed and resolved code bug

Type of PR

[X] Bug fix

Screenshots / videos (if applicable)

Checklist:

[x] I have made this change from my own.
[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generate no new warnings.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers and screenshots after making the changes.

there is some conflicts resolve that!!


fix: updated logger and model caching #release

Optimize Model List Fetching and Improve Provider Management
Overview
This PR optimizes the LLM provider management by implementing lazy loading and caching of dynamic models. Instead of fetching models from all providers on every LLM call, we now only fetch models from the selected provider. Additionally, we've added a caching mechanism for model lists and improved logging throughout the system.
Key Changes
1. Optimized Model List Fetching

Implemented lazy loading for dynamic models - only fetch from selected provider
Added caching mechanism for provider model lists
Moved model list management logic to LLMManager class

2. Universal Logging System

Enhanced logging with structured scopes using Chalk
Added cross-platform colored console output that works in terminals
Implemented consistent debug levels and scoped loggers
Unified logging format across different environments

Technical Details
Model Fetching Optimization
Key implementation changes (simplified):
// Before
const MODEL_LIST = await getModelList({ apiKeys, providerSettings, serverEnv });
const modelDetails = MODEL_LIST.find((m) => m.name === currentModel);

// After
const modelsList = [
  ...(provider.staticModels || []),
  ...(await LLMManager.getInstance().getModelListFromProvider(provider, {
    apiKeys,
    providerSettings,
    serverEnv
  }))
];

Caching Implementation
class BaseProvider {
  cachedDynamicModels?: {
    cacheId: string;
    models: ModelInfo[];
  };

  getModelsFromCache(options: ProviderOptions): ModelInfo[] | null {
    if (!this.cachedDynamicModels) return null;

    const cacheKey = this.getDynamicModelsCacheKey(options);
    if (cacheKey !== this.cachedDynamicModels.cacheId) {
      this.cachedDynamicModels = undefined;
      return null;
    }

    return this.cachedDynamicModels.models;
  }
}

Enhanced Cross-Platform Logging
// Universal logging with Chalk for consistent terminal output
const chalk = new Chalk({ level: 3 });

function formatText(text: string, color: string, bg: string) {
  return chalk.bgHex(bg)(chalk.hex(color)(text));
}

// Usage in logger
const labelText = formatText(` ${level.toUpperCase()} `, textColor, bgColor);
console.log(`${labelText}`, allMessages);

// Scoped logger usage example
const logger = createScopedLogger('stream-text');
logger.info(`Sending llm call to ${provider.name}`); // Outputs with consistent colors

Migration Impact

No breaking changes in the API
Cached models are automatically invalidated when provider settings change
Existing code paths continue to work with fallback mechanisms

Testing

Verified model caching behavior across multiple requests
Tested cache invalidation scenarios
Confirmed logging output in different environments
Validated fallback behavior for unknown models

Future Improvements

Add cache expiration mechanism
Implement background refresh for cached models
Add metrics for cache hit/miss rates
Consider alternative color schemes for different terminal themes
Add log rotation and persistence options
Consider implementing a shared cache for multi-instance deployments

the model selector is sometimes not updating the model correctly when selected for dropdown, can you check how can we replicate this issue ?

I just tested this with the following:

Qwen2.5 Coder 32B: Generate a todo app
Llama 3.3:70B: Same thing
Qwen2.5 Coder 14b: Generate Snake in python

This all worked fine, which would not be the case if it was loading all of these models at once based on my hardware. I ran into issues trying to use the starter templates but I believe that's unrelated. I'm happy with this update.

@HlebKrah I dont not think deepseek supports images


AT command for reading out internal tempsensor's value?

Is it planned in future please? We are having temperature issues with ESP and we would like to track it's temperature. This problem of course could be at our side due to wrong PCB design, but tracking the temperature with different RF power settings would be very useful.

Any news on this?

Any news on this please? We would like to track the temperature of ESP chips outside via AT commands and I think it would be useful for others too. I think it's not a really hard work.
Please answer, thanks!

The chip temperature?

Yes.

Sorry for that, the chip temperature can't be read.


social auth via github

I make this API call (GET)
http://localhost:8000/auth/o/github/?redirect_uri=http://localhost:8000
in the response I got:
{
    "authorization_url": "https://github.com/login/oauth/authorize?client_id=c34bdab4...&redirect_uri=http%3A%2F%2Flocalhost%3A8000%2Fauth%2Fcomplete%2Fgithub%2F%3Fredirect_state%3D4VrTV0VFCWi83SAsbvtQl7ia&state=4VrTV0VxB9jIFCWi83SAsbvtQl7ia&response_type=code"
}

When I open this URL I see Github login page and then if I log in and click "Allow" button, Github redirect me to the URL provided in github app settings - http://localhost:8000?redirect_state=4VrTV0VxfEWB9jIFCWi83...Ql7ia&code=3e88284f372eb7f28724&state=4VrTV0VxfEWB9..l7ia
but I don't see new user in admin panel.
What I'm doing wrong?

Hey @zefciu @dekoza
Instead of creating a new issue I thought I'll make a follow-up questions here. I'm trying to make a POST request with code and state but I'm using Google OAuth2 as a provider.
This is the request that I'm sending:
General:
    Request URL: http://localhost:8000/api/v1/auth/o/google-oauth2/
    Request Method: POST
    Status Code: 400 Bad Request
    Remote Address: [::1]:8000
    Referrer Policy: no-referrer-when-downgrade
Response Headers:
    Access-Control-Allow-Origin: *
    Allow: GET, POST, HEAD, OPTIONS
    Content-Length: 53
    Content-Type: application/json
    Date: Wed, 26 Jun 2019 14:12:31 GMT
    Server: WSGIServer/0.2 CPython/3.7.2
    Vary: Accept, Cookie
    X-Frame-Options: SAMEORIGIN
Request Headers:
    Provisional headers are shown
    Accept: application/json, text/plain, */*
    Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryiossmNpU2DwEMAkU
    DNT: 1
    Origin: http://localhost:3000
    Referer: http://localhost:3000/login?state=mSykVGXLFMMqlWLNaqaqaBfWTYUPziK8&code=4%2FdAEXH3ChEzZDRWTA2JXEPwLxxWwf7h1gboCCeH0Zd_K-xhWHBNg7WLdga2GDdlo_xh5sHNt9fbKhG_ZuxYGVs8o&scope=email+profile+openid+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile&authuser=0&session_state=e39034a8601e1ea9813f701bbaf583b1310f9193..21d4&prompt=consent
    User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Form Data:
    code: 4/dAEXH3ChEzZxxxxxxxxxxxxxx
    state: mSykVGXLFxxxxxxxxxxxx

but in response I get this error:
{non_field_errors: ["Session value state missing."]}
Not sure what's wrong here - I'm sending the POST request to the same url as the previous GET request, the content type is set as in documentation to application/x-www-form-urlencoded.
Any thoughts what might be wrong here?

It is still really very confusing, with DRF it is getting hard to achieve social login.

@Emnalyeriar do you have any update on this error?
I'm getting the same error around here!
Agree with @omerwaqaskhan, documentation is still confusing and the lack of usage examples are really anoying.

@vmesel have you found any solution for the issue?
I am also facing similar error.


report.report.content['items'] not available

Describe the bug
Trying to enforce pagination as per the posted tutorial: https://pandas-profiling.github.io/pandas-profiling/examples/master/tutorials/modify_report_structure.ipynb
It appears that the report structure had been changed. When I try to extract ['items'] from report.report.content, I get an error: KeyError: 'items'
To Reproduce
Data:
import numpy as np
import pandas as pd
df = pd.DataFrame({'a':np.random.randint(0,100,100),
                   'b':np.random.randint(0,100,100),
                   'c':np.random.randint(0,100,100)})

Code: Preferably, use this code format:
import pandas as pd
import pandas_profiling

rep = df.profile_report()

from copy import deepcopy
original_report_structure = deepcopy(rep.report)

# Loop over each section
for section in original_report_structure.content["items"]:
    # Only consider sections that contain items
    #     if len(section.content['items']) > 0:
    # Set the report structure
    rep.report = deepcopy(original_report_structure)
    # Overwrite the section lists with the section we would like to print
    rep.report.content["items"] = [section]
    # Output the report to HTML
    rep.to_file(f"report_{section.name.lower()}.html")

print(original_report_structure.content)
>>> {'body': Container(name=Root), 'footer': HTML, 'name': 'Root'} # there is no 'items' key...

Version information:
Version information is essential in reproducing and resolving bugs. Please report:

Python version: 3.8.8
Environment: Spyder
pip: If you are using pip, run pip freeze in your environment and report the results. The list of packages can be rather long, you can use the snippet below to collapse the output.

 Let's tackle the latter without needing custom user code. Any sensible default will do (splitting, filtering etc.)

Closing as the tutorial has been removed in the latest version


Create LICENSE

Added  MIT License
Fixes : #17
Please merge my pull request and label  me level 2
@adarsh-singh01

Please merge my pull request

Please merge my pull request and label me level 2
@adarsh-singh01

Please merge my pull request and label me level 2
@adarsh-singh01

extremely sorry for the delay @Dipanita45

Please merge it
On Sat, 9 Nov 2024, 11:08 am Adarsh Singh, @.***> wrote:

extremely sorry for the delay @Dipanita45 https://github.com/Dipanita45
—
Reply to this email directly, view it on GitHub
https://github.com/adarsh-singh01/VaultChain/pull/18#issuecomment-2466062872,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7SRZ6BXMYAC6EDYXPK2S3LZ7WNWRAVCNFSM6AAAAABQPU7TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWGA3DEOBXGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

Please merge it
On Sat, 9 Nov 2024, 11:08 am Adarsh Singh, @.***> wrote:

extremely sorry for the delay @Dipanita45 https://github.com/Dipanita45
—
Reply to this email directly, view it on GitHub
https://github.com/adarsh-singh01/VaultChain/pull/18#issuecomment-2466062872,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7SRZ6BXMYAC6EDYXPK2S3LZ7WNWRAVCNFSM6AAAAABQPU7TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWGA3DEOBXGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

Merged Successfully

Why my point is not showing in leaderboard
@adarsh-singh01

Why my point is not showing in leaderboard
@adarsh-singh01

Let me check @Dipanita45

Why my point is not showing in leaderboard
@adarsh-singh01

Check Now @Dipanita45

Okay
On Sun, 10 Nov 2024, 7:26 am Adarsh Singh, @.***> wrote:

Why my point is not showing in leaderboard
@adarsh-singh01 https://github.com/adarsh-singh01
Check Now @Dipanita45 https://github.com/Dipanita45
—
Reply to this email directly, view it on GitHub
https://github.com/adarsh-singh01/VaultChain/pull/18#issuecomment-2466544651,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7SRZ6ANBN5GN5G2ZMFEMV3Z724ORAVCNFSM6AAAAABQPU7TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWGU2DINRVGE
.
You are receiving this because you were mentioned.Message ID:
@.***>

No sir
@adarsh-singh01

No sir
@adarsh-singh01

This problem is only with my repo... ?
please check after sometime

Okay sir
On Sun, 10 Nov 2024, 11:15 am Adarsh Singh, @.***>
wrote:

No sir
@adarsh-singh01 https://github.com/adarsh-singh01
This problem is only with my repo... ?
please check after sometime
—
Reply to this email directly, view it on GitHub
https://github.com/adarsh-singh01/VaultChain/pull/18#issuecomment-2466597164,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7SRZ6BIBRI5T2UO6JA2VIDZ73XH5AVCNFSM6AAAAABQPU7TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWGU4TOMJWGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Yes sir   only with this repo
On Sun, 10 Nov 2024, 11:31 am Dipanita Mondal, @.***>
wrote:

Okay sir
On Sun, 10 Nov 2024, 11:15 am Adarsh Singh, @.***>
wrote:

No sir
@adarsh-singh01 https://github.com/adarsh-singh01
This problem is only with my repo... ?
please check after sometime
—
Reply to this email directly, view it on GitHub
https://github.com/adarsh-singh01/VaultChain/pull/18#issuecomment-2466597164,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7SRZ6BIBRI5T2UO6JA2VIDZ73XH5AVCNFSM6AAAAABQPU7TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWGU4TOMJWGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


Server workspace support

This is an umbrella issue for server workspace support in Azure DevOps plugin.
Points to consider:

[ ] #91: checking out a repository into a server workspace
[ ] #324: importing of existing server workspace
[ ] working around the read only FS flags in the server workspace
[ ] check whether both classic and reactive clients support main operations on a server workspace
[ ] other issues:

[ ] #272

For now, the main and first obstacle users encounter when they try to open a server workspace is this code: we never pass the authentication data over to the client (even if we know it's required), so nothing actually works.

Now that JetBrains has dropped support for their TFS plugin, their products do not support server workspaces. Are there any plans in the near future for this plugin to support server workspaces?

Can I follow this issue to know when server workspaces is done?


Organization navigation

Feature Request
Desired behaviour

Having a link to "Organizations" at the top is getting a bit cluttered.
I think in advance of potential pages like Browsing by Label, let's move this to a section lower on the page.
Let's create a new column next to "Using Dockstore", "Adding to Dockstore", and "About Dockstore" called "Browse By."
Then add Organization there in advance of browsing by labels

When browsing https://staging.dockstore.org/organizations/denis_yuen I see a message "The organization "denis_yuen" does not exist." prominently until the content is loaded. Make sure that this message is not seen unless the organization is actually empty

https://staging.dockstore.org/organizations/denis_yuen displays two entries for "dockstore-tool-imports". The reason is that one is actually " quay.io/denis_yuen/dockstore-tool-imports/test3" while the other is "quay.io/denis_yuen/dockstore-tool-imports/test4" Make sure to display the full name

This was seen on staging.dockstore.org for 1.2-alpha.3

Complete
Misleading message is now gone
Looks good, tools are properly distinguished from one another

Thanks @k-cao !


[BSO] Remove the chance of getting 3a Item contracts from last update

🚀 Feature Proposal
Title.
It is simply a slap in the face for players with higher streaks, as they now have a chance to get an expensive IC for absolutely no reason. It only punishes those with higher streaks and encourages skipping contracts+ruining streaks to avoid this happening.
Even if I got it wrong - and higher streaks is less chance of getting a 3rd age IC - there is still NO reason why the player should have a chance of an arbitrarily expensive contract for the same reward as anything else. In fact, it should be a very rare chance of getting any (one) 3rd age item from an IC reward at a higher streak to encourage players to maintain higher streaks.

I tend to agree. The rewards from item contracts are frankly not good enough to justify this.
I think the item contracts are a decent idea, but they don't really do well as an item sink because even the small rewards they give usually outweigh the items going in, but the rewards aren't good enough to justify sacrificing larger items with any sort of regularity unless you really care about that streak, which is a limited number of players.
This change could be the final nail in the coffin for those players that do occasionally sacrifice high value items.
Might be worth seeing how it pans out though, people are inherently hard to predict.

Exactly how I feel too, item contracts are meant to be a small fun side thing and not an item sink for valuable items.

This change could be the final nail in the coffin for those players that do occasionally sacrifice high value items.
Especially agree with this though. As someone who was maintaining a high streak, and was happy to sac the occasional 3a here or there, I cant be bothered anymore if it's going to be constant forced high value sacrifices for literally no extra reward.


DatePicker format shifts from short to medium unpredictably

Sometimes displayed:

Most other times:

causing unstable snapshot showing this difference:

https://github.com/paulz/ViewSnapshots/runs/7190030174?check_suite_focus=true#step:6:85

https://stackoverflow.com/a/68120390/7341239

still fails on CI: https://github.com/paulz/ViewSnapshots/actions/runs/2614160625


Merge builder branch of pyGSFLOW into develop

add builder branch into develop in preperation for version 1.1.0 code release

Codecov Report

Merging #30 (4c04719) into develop (2910858) will decrease coverage by 0.71%.
The diff coverage is n/a.

:exclamation: Current head 4c04719 differs from pull request most recent head 654385f. Consider uploading reports for the commit 654385f to get more accurate results

@@             Coverage Diff             @@
##           develop      #30      +/-   ##
===========================================
- Coverage    79.94%   79.22%   -0.72%
===========================================
  Files           39       42       +3
  Lines         4557     5906    +1349
===========================================
+ Hits          3643     4679    +1036
- Misses         914     1227     +313

Impacted Files
Coverage Δ

gsflow/__init__.py
100.00% <ø> (ø)

gsflow/builder/__init__.py
100.00% <ø> (ø)

gsflow/builder/builder_defaults.py
87.91% <ø> (ø)

gsflow/builder/builder_utils.py
18.59% <ø> (ø)

gsflow/builder/fishnet.py
80.39% <ø> (-1.84%)
:arrow_down:

gsflow/builder/flow_accumulation.py
85.18% <ø> (ø)

gsflow/builder/make_json_defaults.py
0.00% <ø> (ø)

gsflow/builder/prms_builder.py
88.88% <ø> (+83.17%)
:arrow_up:

gsflow/control.py
79.04% <ø> (+0.42%)
:arrow_up:

gsflow/gsflow.py
84.49% <ø> (+1.24%)
:arrow_up:

... and 33 more

Continue to review full report at Codecov.

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


How are subdomains handled for Allowed Domains?

Hi
How are subdomains handled by SharePoint Online for the list of Allowed Domains?
Does adding the primary domain also encapsulate all subdomains, or do they need to be explicitly added as separate entries?
The doco states that wildcards are not valid, so that option can't be used.
Basic example:
Will the entry
microsoft.com
also allow
sharepoint.microsoft.com
teams.microsoft.com
exchange.microsoft.com
Thanks
Sean
[Enter feedback here]

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

ID: f3e6adf5-c322-b7f1-9359-1f9e0723374b
Version Independent ID: 0071fb22-d32b-da3f-aec1-60772b341bd0
Content: Domain restrictions when sharing SharePoint & OneDrive content - SharePoint in Microsoft 365
Content Source: SharePoint/SharePointOnline/restricted-domains-sharing.md
Service: sharepoint-online
GitHub Login: @MikePlumleyMSFT
Microsoft Alias: mikeplum

Hello @SP-INV
AFAIK you also have to specify subdomains. https://learn.microsoft.com/en-us/powershell/module/sharepoint-online/set-sposite?view=sharepoint-ps#-sharingalloweddomainlist

Thank you for submitting feedback. We understand that this issue has been resolved.
Please feel free to re-open this issue if there is a specific area of the docs that we can improve or make better. Thank you.


Add TextInput's prop caretHidden implementation for Android and add the prop to docs

This PR will:

add missing documentation for caretHidden prop to the docs
add caretHidden prop implementation for Android.

I noticed this by accident when looking at RCTTextFieldManager.m and there is RCT_EXPORT_VIEW_PROPERTY(caretHidden, BOOL) which hides caret on iOS. Then I realised that the docs were missing for this prop and implementation on Android side :)
Test plan
Render TextInput with prop caretHidden. After this caret is not visible anymore.
<TextInput style={styles.input} caretHidden />
If you omit the prop then caret is visible again
<TextInput style={styles.input} />

Any comments on this PR? I have no idea why some test breaks because my PR is so small :D

Hey thanks for the PR, looks good!
@facebook-github-bot shipit

How this thing usually goes? The PR is now imported. What to do next? :D

Looks like the import failed for some reason, could you rebase on master and I'll try again.

@janicduplessis What about now?

@janicduplessis Hello? :D Any updates? I see that https://github.com/facebook/react-native/commit/ae57b25134c4db8be8539a0f0e6e52d46c850339 this is getting into next version so I think this should too?

Hey sorry, I missed the notification.
@facebook-github-bot shipit

Thanks! How this btw goes? How can I see when this is on https://github.com/facebook/react-native/compare/v0.42.0-rc.0...master

Your commit will appear on master once it passes facebook internal CI and the PR will get closed.

Sorry we had a lot of CI issues this week, trying again.
@facebook-github-bot shipit


Add NFT launchpad template (contract only)

A launchpad for contract deployer to create collections and anyone to mint NFTs.
frontend is a dummy repo, will create separate PR for frontend.
Only file needs review is the contract /templates/nft-template/move/sources/nft_launchpad.move
NOTE
Unlike ez-launch where nft is pre minted, NFTs in this contract are created on the fly when users call mint_nft function. The main reason is on the collection creation UI, we want to support creator only sign 1 tx (excludes the tx that pays arweave), ez-launch expects creator to call pre_mint_nft multiple times after creating the collection, that's something we want to avoid.
THIS IS A TEMPLATE, we should not treat it as a PRODUCT.

Will add more unit test later

@bowenyang007 this template is meant to be a boilerplate to learn move or modify for their own purpose instead of take it and launch it thing for developers.

I put everything (create collection, set mint stage, set allowlist) in 1 function because it's easy to build UI (user only needs to send 1 tx).

I expect features like modifying allowlist to be added by developers themselves.

The feedback holds but aligned that we don't need to worry about this for the hackathon. Accept to unblock.

Thanks, I started this contract from the idea of simplifying ez_launch_with_stages.move, if I want to have separate endpoints I would go with original ez_launch_with_stages.


generating and reshaping images

The full example is here: https://github.com/sachinruk/keras_simpsons. Basically Im trying to read in a picture of homer simpson, rescale it to size 224, 224 and create rotations, shifts etc. However, when I run the code segment below I get the error: ZeroDivisionError: integer division or modulo by zero
train_datagen = ImageDataGenerator(
        rescale=1./255,
        rotation_range=5,
        zoom_range=0.2,
        horizontal_flip=True)

img_height = img_width = 224
train_generator = train_datagen.flow_from_directory(
    './train/',
    color_mode = "rgb",
    target_size=(img_height, img_width),
    batch_size=1,
    class_mode=None)

i = 0
img_list = []
for batch in train_generator: #.flow(x, batch_size=1)
    img_list.append(batch)
    i += 1
    if i > 5:
        break

The single simpsons image is in the train folder.
Any thoughts on what I'm doing wrong here?

you just need to move the image into a subfolder named with the label you want

but suppose its a test set where I do not know the label, how can I reshape it then? I assumed that moving it into the train subfolder was enough?

If you use class_mode=None, the generator only returns the image without labels anyway, so you can put all your images in a single subfolder.

@kgrm but I did use class_mode=None, see above. And the images are in the single subfolder called train.

You don't understand. They need to be in a subdir of the train directory, because ImageDataGenerator.flow_from_directory expects images from different classes in different subdirectories of the path you initialise it with. If you don't know or don't care about class labels, just make a single subdirectory and put all the images there.

got it working by adding the subdirectory. Thanks! final ipynb is here: https://github.com/sachinruk/keras_simpsons/blob/master/keras_simpsons.ipynb
[please checkout awesome homer pics!]


Added support for pinentry

Using rofi the passwords are typed in clear text. I found it partially
annoying and decided to add an option to use pinentry.
:shipit:

Thanks for the pull request. Nice idea. I fixed up a few things (PEP-8, supporting empty or cancelled pinentry entries without errors, fix error when there's no 'pinentry' entry in the config file).
Scott

Yes, a tad rushed from my side.


Allow entities to ignore change listeners for certain properties

Due to the nature of interactive elements in a user interface, some properties of an entity must be overwritten dynamically. An example of this might be a scroll pane overwriting the top field of it's Style component to shift the content panel within up and down.
As the current change listener for bevy_ecss listens for all component changes, it will always trigger a change when this this field within the Style component and thus triggering the CSS to be reapplied. (See #53)
A possible solution to this would be to allow for a new component that can be added to an entity that would contain a list of properties to blacklist the change listener for. Any changes to these properties would be ignored.
This is just a performance enhancement, but is something worth considering with entities that needed to be updated extremely frequently.

Interesting point. You mean skip entirely a descendant component, like add SkipStyling (temp name), or partial skip, like SkipProperties(Vec<String>), which contains a list of properties to not react to changes?
There are three levels of skipping that I can think of:

Skip the entity as a whole and all its children;
Skip only the entity, but not its children;
Skip only some properties on the entity;

I would imagine the third option to be most useful in the case of directly editing properties, as one would know which properties they plan on overwriting. Although, I can see the practicality of all three.


Shuffling labels and coordinates

Implementation of shuffling labels (closes issue #80) and shuffling coordinates (closes issue #79).
Notes

I created a shuffle directory in the preprocessing directory as it seemed the most logical place for this.
both scripts are together in this directory. Is this OK or should I put each of them in a separate directory?
both scripts were tested with my own input data as well as with the dataset LIBD_DLPFC (sample Br5292_151507)

@naveedishaque what do you think regarding the structure?

@naveedishaque what do you think regarding the structure?

They should be separate

We need to figure out how to make use of it i.e. how tpo connect this to the metrics and trace back that it is a simulation. I think this probably requires a bit more thought on the workflow side.
Also wondering if we need a separate folder for simulations @naveedishaque


⌘+P does not toggle"Go to file" any more on OSX

VSCode Version: 1.8.1
OS Version: OSX 10.12.1

Steps to Reproduce:

Press ⌘+P
Test input does not show up

But triggering it using Go->Go to file... works.

I fail to reproduce this on OS X.
What key binding do you see in the Go menu assigned to Go to File... command?

Can't reproduce this error as well.
Open your keybindings.json (Open with ⌘+Shift+P -> Open Keyboard Shortcuts and check if you have the following line:
{ "key": "cmd+p",                 "command": "workbench.action.quickOpen" }

I do have { "key": "cmd+p", "command": "workbench.action.quickOpen" } in keybindings.json .
I can reproduce bug after reinstalling VSCode, and even after reinstalling Mac OS X and VS Code. Always the same issue.
By the way ⌘+Shift+P shorcut does not work also.

@ronangaillard ⌘+P is one of the most popular short cuts of VS Code and I haven't seen reports from other OS X users having issues with it. Could it be that there is an issue with the ⌘+P key? Does this short cut work in other applications?
One option is to define another keybinding in keybindings.json

@egamma you're right that it is weird that no one else has this issue.
Affecting the shortcut to ⌘+M works.
What is also weird is that the shortcut ⌘+P worked before update, and that the P key and command key are working well.

Assigning to @bpasero he might have other ideas what is going on.

@ronangaillard
I wonder if this issue is being caused by an installed extension. Can you try to run VS Code without extensions? From the command line (NOT the integrated terminal in Code), execute: code --disable-extensions and try your steps again to see if it reproduces. If you see it is an issue with the extension, please file it against the extension repository itself.

https://github.com/Microsoft/vscode/issues/17884#issuecomment-270101410

@life1347 can you explain how that comment relates to this problem?

Hi @bpasero
My problem is that the hotkey shift+cmd+left cannot work properly, and I could reproduce the problem this problem after reinstalling VSCode. In the end, I tried the method described here(#227) and problem solved. After some testing, I found that  /Users//Library/Preferences/com.apple.symbolichotkeys.plist may cause this problem. Once the plist is deleted everything goes well again.

@ronangaillard can you try what @life1347 suggests?

I do not have access to my mac yet, I'll try by the end of the week !

Assuming this works now, closing.


Fix bindAll for Android 8+

Requirements

Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
All new code requires tests to ensure against regressions

Description of the Change
BugFix - BindAll was not working on my Google Pixel 8.1 on a Wifi network with no internet, After adding this line everything started to work.
Added
connectivityManager.requestNetwork(request, networkCallback);
to the bindAll part, looks like it was just missing.

Thanks for submitting this PR, merged!


Android bar in a fixed state

Steps to reproduce
I know this bug has been fixed on the preview, but the same bug can be trigged in another way on the preview.
I don't know for other devices but here is how to trigger it.

watch and episode openidng the internal player
trigger the screen recording option of your android. for my phone you do it pressing together on-button+up-volume button

Expected behavior
the android bar should not be in a fixed state but disappear
Actual behavior
android bar in a fixed state.
Crash logs
No response
Aniyomi version
r4507
Android version
Android 8
Device
Huawei p8 lite 2017
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
[X] I have written a short but informative title.
[X] If this is an issue with an extension, I should be opening an issue in the extensions repository.
[X] I have tried the troubleshooting guide.
[X] I have updated the app to version <IP_ADDRESS>.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

See #199

See #199

well, the bug is the same and already solved partially on the preview (the screen come from the preview) but can still be triggered as i explained above. can you re-open it?

Feature has been added in the beta, wait for update to stable


cuda out of memory when testing Mask2Former model

Prerequisite

[x] I have searched Issues and Discussions but cannot get the expected help.
[X] I have read the FAQ documentation but cannot get the expected help.
[X] The bug has not been fixed in the latest version (master) or latest version (3.x).

💬 Describe the reimplementation questions
I have a problem when I tried to reimplement the Mask2Former model.
There was no problem when training, but in val or test period, the program took up more and more gpu memory, and finally report the error: CUDA out of memory.
In fact, there was no problems when I tested other models.
The whole error is as follows:
query_indices = top_indices // self.num_classes
[>>>>>>>>>>>>>>>>>                                 ] 720/2026, 3.7 task/s, elapsed: 196s, ETA:   356sTraceback (most recent call last):
File "tools/test.py", line 321, in
main()
File "tools/test.py", line 261, in main
outputs = single_gpu_test(model, data_loader, args.show)
File "/home/qwq212/mmdetection/mmdet/apis/test.py", line 29, in single_gpu_test
result = model(return_loss=False, rescale=True, **data)
File "/home/qwq212/anaconda3/envs/mmdet/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)
File "/home/qwq212/anaconda3/envs/mmdet/lib/python3.8/site-packages/mmcv/parallel/data_parallel.py", line 51, in forward
return super().forward(*inputs, **kwargs)
File "/home/qwq212/anaconda3/envs/mmdet/lib/python3.8/site-packages/torch/nn/parallel/data_parallel.py", line 166, in forward
return self.module(*inputs[0], **kwargs[0])
File "/home/qwq212/anaconda3/envs/mmdet/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)
File "/home/qwq212/anaconda3/envs/mmdet/lib/python3.8/site-packages/mmcv/runner/fp16_utils.py", line 119, in new_func
return old_func(*args, **kwargs)
File "/home/qwq212/mmdetection/mmdet/models/detectors/base.py", line 174, in forward
return self.forward_test(img, img_metas, **kwargs)
File "/home/qwq212/mmdetection/mmdet/models/detectors/base.py", line 147, in forward_test
return self.simple_test(imgs[0], img_metas[0], **kwargs)
File "/home/qwq212/mmdetection/mmdet/models/detectors/maskformer.py", line 155, in simple_test
results = self.panoptic_fusion_head.simple_test(
File "/home/qwq212/mmdetection/mmdet/models/seg_heads/panoptic_fusion_heads/maskformer_fusion_head.py", line 230, in simple_test
ins_results = self.instance_postprocess(
File "/home/qwq212/mmdetection/mmdet/models/seg_heads/panoptic_fusion_heads/maskformer_fusion_head.py", line 153, in instance_postprocess
mask_pred_binary = (mask_pred > 0).float()
RuntimeError: CUDA out of memory. Tried to allocate 4.40 GiB (GPU 0; 23.70 GiB total capacity; 10.50 GiB already allocated; 4.32 GiB free; 14.21 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Environment
sys.platform: linux
Python: 3.8.13 (default, Mar 28 2022, 11:38:47) [GCC 7.5.0]
CUDA available: True
GPU 0,1,2: NVIDIA GeForce RTX 3090
CUDA_HOME: /usr/local/cuda-11.1
NVCC: Cuda compilation tools, release 11.1, V11.1.74
GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
PyTorch: 1.10.0+cu111
PyTorch compiling details: PyTorch built with:

GCC 7.3
C++ Version: 201402
Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications
Intel(R) MKL-DNN v2.2.3 (Git Hash 7336ca9f055cf1bfa13efb658fe15dc9b41f0740)
OpenMP 201511 (a.k.a. OpenMP 4.5)
LAPACK is enabled (usually provided by MKL)
NNPACK is enabled
CPU capability usage: AVX512
CUDA Runtime 11.1
NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86
CuDNN 8.0.5
Magma 2.5.2
Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=11.1, CUDNN_VERSION=8.0.5, CXX_COMPILER=/opt/rh/devtoolset-7/root/usr/bin/c++, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_KINETO -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -DEDGE_PROFILER_USE_KINETO -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=1.10.0, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON,

TorchVision: 0.11.0+cu111
OpenCV: 4.6.0
MMCV: 1.7.0
MMCV Compiler: GCC 7.3
MMCV CUDA Compiler: 11.1
MMDetection: 2.25.2+
Expected results
No response
Additional information
I didn't do any modifications.
I trained on my own dataset, whose format is the same as coco, and I didn't modify anything else.

Here have some solution: https://github.com/open-mmlab/mmdetection/blob/master/docs/en/faq.md#training

Here have some solution: https://github.com/open-mmlab/mmdetection/blob/master/docs/en/faq.md#training

I met the problem when testing not training, will this work? I think the main problem is the memory was keeping getting larger when testing, which didn't happen on other models, and I don't know the reason for it.

A similar situation has also appeared in SOLO. It may be caused by some post-processing. You can try to use AvoidOOM

A similar situation has also appeared in SOLO. It may be caused by some post-processing. You can try to use AvoidOOM

thank you for your reply. I will try it now.

A similar situation has also appeared in SOLO. It may be caused by some post-processing. You can try to use AvoidOOM

thank you for your reply. I will try it now.

Related Issue: https://github.com/open-mmlab/mmdetection/issues/6908

A similar situation has also appeared in SOLO. It may be caused by some post-processing. You can try to use AvoidOOM

thank you for your reply. I will try it now.

Related Issue: #6908
I added AvoidOOM in test.py, is it right?
outputs = AvoidCUDAOOM.retry_if_cuda_oom(single_gpu_test)(model, data_loader, args.show)

Seems It cannot using under test time, should use in a specific function, such as iou_calculator

It may be the case that some of the images in the test set are fairly large.  Mask2Former resizes the predicted masks back to input image scale on GPU.  This case doesn't affect training as the images are never resized back to input image scale.

sorry, but the images in my dataset is usually smaller than 1024*1024, which is used when training

It may be the case that some of the images in the test set are fairly large. Mask2Former resizes the predicted masks back to input image scale on GPU. This case doesn't affect training as the images are never resized back to input image scale.

sorry, but the images in my dataset is usually smaller than 1024*1024, which is used when training

Most probably, CUDA Out of Memory error in test images is caused when the model detects large number of objects in the image. (Count > 500 per image). So, irrespective of test image size, it will keep on throwing the same error.
So, doing mask calculations on all those detected objects with CUDA causes the CUDA to be out of memory.

One possible solution to handle CUDA Out of Memory is to implement AvoidCUDAOOM

Another Solution is to convert the CUDA tensors to CPU in the code block where the error is happening, like this:

Old Code:
Do mask calculation on GPU

New Code:
try:
    Do mask calculation on GPU
except:
    Do mask calculation on CPU

Did you solve the issue? ..? Can you tell me how to solve it..?


README

README File
Completion Criteria
README file contains necessary information for the project:

Title
Description
Usage
Mock up
Credits
Links

Completion Criteria met


WARNING: DNS resolution not working from within the container.

Today we were installing docker on Windows on laptops that are part of our domain. Everything seemed to go fine. After that installed the navcontainerhelper module and ran the New-NavContainerHelper cmdlet.
While running we got the warning: DNS resolution not working from within the container.
Everything else looked fine, but could not connect the Dynamics NAV IDE to the database and could also not connect MSSSMS to the SQLEXPRESS instance. We checked that it was running (and it did). One very clever guy suggested to connected by means of IP address of the docker container. OK, good workaround for now, but how could we resolve that we could use the DNS?
IS there something the New_NavContainerHelper could fix ?

Hey Tobi, thanx for the fast tip. Had overlooked that parameter. Working now.

That warning is not caused by dns resolution on the host.
It is caused by the container not being able to do DNS lookup from within the container.
This means that if you enter the container and try to ping www.microsoft.com - it will fail.
This blog post describes how to fix this: http://www.robertbird.co.uk/development/docker-networking-tips-and-tricks.
Note that your network might not allow to use <IP_ADDRESS> as dns - then you maybe need to set the DNS from your host as a DNS on docker as well.


Explicitly define a main bin file

Currently, we only try to take the first bin listed in composer.json.
Aditionally, we should offer a way to define a main file either through a command line option or a config key extra.phar.main.

@clue ping

Thanks for your PR and the ping @shivas :+1:
This hasn't seen any traction because I'm currently undecided on the project direction and would love to hear some more thoughts on this.
The README currently says this is "zero configuration" project and we're starting to add the first configuration keys.
That being said, I think this feature makes perfect sense in certain cases.
Another thing to keep in mind is that we can also build arbitrary composer packages like this:
$ phar-composer build vendor/package

Once we start adding these configuration keys, one would likely also expect these are also accepted for external packages. I'm unsure how this could even work out.
What are your thoughts on this?

Well, i don't know about "zero configuration", i mean it's still 0 configuration if you are fine with defaults (and 95% is fine with defaults i guess). In my case i needed such parameter, so instead to just make myself a copy i decided to fill this PR.

Just would like to be known that I found this project and found it highly interesting, however no where in the README.md does it state this functionality, and landed here trying to find what  phar-composer's behavior was regarding the entry point.
Concurring with @shivas, I would understand "Zero Configuration" as in "Zero Configuration Necessary to get Up and Running", ... not "Zero Customization without Directly Modifying the Source".
Regardless, thank you for the excellent software package!

Thanks for commenting on this @shivas and @abcarroll, I agree with what you're saying, let's stick to the "zero configuration required" interpretation of things and let's move forward with this feature :+1: