Bug report: Choosing the min possible date highlights prev and new value

Describe the bug
DatePicker component receive props:

selected
minDate
inline

when choosing the min possible date, prev and new value highlighted
To Reproduce
Steps to reproduce the behavior:

Go to Example site
Click on Min date example
Add inline prop to DatePicker component
Choose min possible date in calendar.
See error

Expected behavior
At the moment when the minimum date is selected, the highlighting of the selected item is expected to switch.
Screenshots

Possible Solution
In setSelected method delete condition that check !this.props.inline. But this decision is head-on, and does not take into account the purpose of the existence of this check.

I believe the bug is here:
https://github.com/Hacker0x01/react-datepicker/blob/master/src/index.jsx#L566
The lib is using isAfter() from date-fns to check if date is valid for keyboard navigation. However, that doesn't seem to allow dates to be equal (eg. if both dates are truncated to day).
Temporary mitigation is to set maxDate as well (eg. far off into the future). That will cause the lib to use isDayInRange() path, which works correctly.


Support destination path in gcp-download-assets

Summary:
Add an optional dest_path input to gcp-download-assets which controls the destination where the assets are downloaded. It defaults to . to maintain backward compatibility with existing jobs that don’t pass it in.
A bit of cleanup is also performed:

The outputs block has been removed since it no longer actually outputs what was defined
The shell script is updated to use environment variables so GitHub’s preprocessing interpolation does not interfere with debugging capabilities.

This is no longer needed and, to use effectively, would require more significant changes to things like find-asset which is tightly coupled to finding assets specifically based on run ID rather than a general find.


ci: a new workflow step to perform e2e test of relay node with smart contract smoke test

Description
This pull request changes the following:

a new workflow to perform e2e test of relay node with smart contract smoke test

Related Issues

Closes #244

Did you mean to run this in the pipeline? the package.json changes are missing, and so are the workflow changes that invoke the new e2e test.

I should not say "new workflow", but just "a new work flow step", it call the test script when relay e2e test is enabled.
I did not add a command to package.json since 1) this is a supplement to relay e2e test
this can be simply launched by run
.github/workflows/script/relay_smoke_test.sh from solo directory
2) we should not expect to run this often in local terminal

Did you mean to run this in the pipeline? the package.json changes are missing, and so are the workflow changes that invoke the new e2e test.

I should not say "new workflow", but just "a new work flow step", it call the test script when relay e2e test is enabled.
I did not add a command to package.json since 1) this is a supplement to relay e2e test this can be simply launched by run .github/workflows/script/relay_smoke_test.sh from solo directory 2) we should not expect to run this often in local terminal

@JeffreyDallas ,
Okay, I get it now.  When I see your "E2E Tests / Relay" job, I can see it used to run for ~4m, but now it is ~13m.  Would you mind removing the needs.e2e-mirror-node-tests for the two workflows?  That way it will kick off immediately and not add to the total runtime.

https://github.com/hashgraph/solo/blob/b7aea1aab3060b0b29a25485bb9d50b2e771a62a/.github/workflows/flow-pull-request-checks.yaml#L136-L136
https://github.com/hashgraph/solo/blob/b7aea1aab3060b0b29a25485bb9d50b2e771a62a/.github/workflows/flow-build-application.yaml#L151-L151

:tada: This PR is included in version 0.28.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


how to install this in my steam deck?

What is the issue?
cant install this in steam os 3
i think this is the issue for fedora silverblue like os opensuse aeon also
OS
Linux
GPU
AMD
CPU
AMD
Ollama version
No response

Steam Desk support is tracked in issue #3243


Change namespace

Fix the conflicts from the merging of Master to NanoServer.
Also change the List into HashSet in Helper when storing the available cmdlets.

Looks good to me

Was the List -> Hashset change done for perf reasons? I know HashSet has better lookup order..

Yes that's correct.

sign-off

Thanks!


Announcements page file not found

Subject of the issue
A file not found error is show when I am trying to download page requirements for next 30 days

Your environment

Firefox 61
Linux

Steps to reproduce
https://keralarescue.in/announcements/
Go to https://keralarescue.in/announcements/
and download attachment for project requirements for next 7 days

Not duplicate. Reproduced the issue.

This seems to have been fixed

You are right @r-tock . I am closing this issue


Encode and decode entire channel environment from a single JSON object and an archive file

Since we want to start working on a client protocol soon (e.g. https://github.com/vkottler/runtimepy/issues/15) we should make it as easy as possible on a client.
They should be able to receive an entire JSON object/file or a directory archive and be able to initialize an equivalent channel environment

We have support for loading and writing single JSON files, next writing and reading an archive.

Time to start working on the UI / javascript https://github.com/vkottler/console

We don't have a use-case for creating an archive yet

Added single dictionary encode and decode on https://github.com/vkottler/runtimepy/pull/17


add operation dao test - [closed]

In GitLab by @luotian-github on Jun 27, 2018, 03:39
Merges operation -> operation
add operation dao test

In GitLab by @wknet123 on Nov 13, 2019, 11:08
The test coverage for backend is FAIL  ,The test coverage for frontend is 38.11   , check  consolse log

In GitLab by @wknet123 on Nov 13, 2019, 11:08
The test coverage for backend is FAIL  ,The test coverage for frontend is 38.11   , check  consolse log

In GitLab by @wknet123 on Nov 13, 2019, 11:08
The test coverage for backend is FAIL  ,The test coverage for frontend is 38.11   , check  consolse log

In GitLab by @wknet123 on Nov 13, 2019, 11:08
The test coverage for backend is FAIL  ,The test coverage for frontend is 38.11   , check  consolse log

In GitLab by @wknet123 on Nov 13, 2019, 11:08
The test coverage for backend is FAIL  ,The test coverage for frontend is 38.11   , check  consolse log

In GitLab by @wknet123 on Nov 13, 2019, 11:08
closed


Incorrect behaviour in DbManager

What steps will reproduce the problem?
Trying to create permission
$permission = $auth->createPermission('test');
$permission->ruleName = 'TestRule';
$auth->add($permission)

data of rule is O:24:"app\rules\TestRule":3:{s:4:"name";s:14:"TestOnly";s:9:"createdAt";i:1485582849;s:9:"updatedAt";i:1485582849;}
What do you get instead?
Error
PHP Warning 'yii\base\ErrorException' with message 'unserialize() expects parameter 1 to be string, resource given'

in /vagrant/vendor/yiisoft/yii2/rbac/DbManager.php:634

Here's screen. As it seen data variable isn't sting anymore but resource stream.

Additional info

Q
A

Yii version
2.0.11

PHP version
7.1.1

Operating system
CentOS 7

Database
PostgreSQL 9.6

There is no such bug in 2.0.10, so it's not db related problem.

Probably. Can you find out which commit breaks it using git bisect?

Yep. I check.

@samdark  found commit that causes this bug https://github.com/yiisoft/yii2/commit/23790272dc561aacf2070cbbda396f49e44cbb7d

To fix it a check should be added that will read all data from the stream. possibly via http://php.net/manual/en/function.stream-get-contents.php

Like this? https://github.com/StalkAlex/yii2/commit/5a76ef110e99d377b1f79a2b814656da45a7b610 Checked in own project, it worked.

Looks OK.

There is now a <IP_ADDRESS> release including this fix. https://github.com/yiisoft/yii2/blob/<IP_ADDRESS>/framework/CHANGELOG.md#20112-february-08-2017

Good news, thanks!

This problem remain also in the <IP_ADDRESS> version in the method loadFromCache() in DbManager class (line 990). Could you fix it? Thank you

@simonevallana it's fixed in 2.0.12 which isn't relased yet.

Perfect, thank you.

turns out RBAC tests do not cover pgsql and sqlite, even though they suggest they should.

fixed by fa4d762..67b9a57


a/b+2 throws when Simplify()ed

Seems to be a problem of not calling into MathS's static initializer.


brc20 support

Has anyone implemented support for brc20 functions using this library? i tried, but the functions are very different from the js version

after a couple of hellish days and reverse engineering of js code, the problem was solved)


Make key used in CacheBackend externally readable

On a point in our application part of the cache needs to be invalidated.
The algorithm then needs to know which key/value entry django-health-check has inserted into the cache for either ignoring the entry alltogether, or to handle it differently than the other ones.
Currently, the key is hidden within CacheBackend as a string which is not externally accessible.
The application would need to write something like this:
for key in cache.keys("*"):
  if key == "djangohealtcheck_test":
    continue
  # do some magic

Using a static class variable, one could write:
for key in cache.keys("*"):
  if key == CacheBackend.HEALTH_CHECK_KEY:
    continue
  # do some magic

It won't be faster, but it would not crash or have unknown side-effects if the key changes.
I've created PR #336.
I'd appreciate any comments about this change.

PR has been merged.


Consider adding Version in the schema

Hi,
First thanks for the hard work put in defining the specificatio. It's true that I usually mostly complain about OGC specs because I find them hard to follow. Anyway I wanted to propose we add a Version into the TMS specification (maybe it exists but I didn't find it), because right now it's pretty hard to see in which version a TMS is based on. IMO having a simple version: 1.0 or version: 2.0 will make it easier.
I understand this comes late to the party but if this is something that could be considered for later version it will be great IMO.
Thank you

Thank you very much for the feedback @vincentsarago , I agree this would have been an idea, and we should do this for later versions.
In truth, I don't think we really expected the TileMatrixSet standard to get much used used before we (OGC) put out a standard (e.g., OGC API - Tiles) that referenced it, but I realized that projects like TiTiler actually used it :).
For reading both version 1.0 and 2.0, I think the easiest approach would be to support both the old and new name for the properties.


Remove ECMA_LEXICAL_ENVIRONMENT_OBJECT_BOUND.

Only the global object bound to the root node of the lexical environment tree does not have a provideThis flag, and ecma_op_implicit_this_value() falls back to the global object. Hence we get the same effect regardless of provideThis.

Done. Thanks for the review.


SKRegion.SetPath(SKPath) may not be correct

See this post: https://forums.xamarin.com/discussion/97967/skregion-setpath-always-returns-false

Just pushed out a release that should resolve this: https://github.com/mono/SkiaSharp/releases/tag/v1.58.1


why the method of subrequest is setted NGX_HTTP_GET, instread of the method of  parent request ?

in line 2650 of ngx_http_core_module.c: (https://github.com/alibaba/tengine/blob/master/src/http/ngx_http_core_module.c#L137)
sr->method = NGX_HTTP_GET;

so, why the method of subrequest is setted NGX_HTTP_GET, instread of parent request method ? is there a bug?

There is no relationship between subrequest and its parent. Why do you think it should inherit the method?

In  the  ngx_http_subrequest function of ngx_http_core_module.c: (https://github.com/alibaba/tengine/blob/master/src/http/ngx_http_core_module.c#L2638),  sr->headers_in,  sr->request_body,  sr->request_line  and some other fields both shared with parents request, but why method don't inherit from its parent?
In out application , we use subrequests to get the response from upstream and make some encoding before return to client. And I think subrequest is “ internal redirects” of parents request.  If the method of parent request is POST, how can I redirect it to upstream by subrequest without change its method?
please give me some guidance  thinks a lot！

for your case, I think you should use output body filter, but not subrequest.
In my opinion, subrequest is too hacky and bad for both software arctitacture and programmer, so I wish nginx module developer and developer of nginx secondary developmentit to forget it.


Write a Java program to convert string to lowercase

Description
Write a Java program to convert string to lowercase
Input  : "Hello World"
Output : "hello world"

How to contribute

Save the solution in program/ConvertStringToLowercase.java file
Add ConvertStringToLowercase.java file in convert-string-to-lowercase folder

I would like to work on this issue!

!assign

!assign


Add base_uri as argument in the contructor

This is the follow up pull request after @timdorr's comment in #180. This is our use case as mentioned before:
We have a Ruby application which talks to the Tesla API, unfortunately not everyone in the team has a Tesla to test our app with.
That’s why we created an internal mocking server that mimics the Tesla api (to some extend).
Some users in our system connect to a mock backend and some users use the official Tesla end point, all in one codebase, at the same time. That’s why the base URI needs to be dynamic for us.
With this change you can initialize a Api connection with another base_uri in the following way:
mocked_client = TeslaApi::Client.new(base_uri: "http://localhost/mock")
mocked_client.vehicles # connections to mocked api

regular_client = TeslaApi::Client.new
regular_client.vehicles # connections to real api

Yeah, this is much better. Thanks for incorporating the feedback!

Thanks for merging! 👍


IOTDB Operator

5419

 Quality gate: Failed
8 Issues

 8 Code issues

Details

 Quality gate: Failed
8 Issues

 8 Code issues

Details


Fix : Wrong pagination for platform filter in member detail page

Changes proposed ✍
Fixes #990
What
When platform changes, offset value was not getting reset thus user was not able to see all activities
How
Set offset to 0 when platform value changes

🤖 Generated by Copilot at ec363a4

Reset offset value to zero on component creation to fetch most recent activities (link)

Checklist ✅

[x] Label appropriately with Feature, Improvement, or Bug.
[x] Add screehshots to the PR description for relevant FE changes
[x] New backend functionality has been unit-tested.
[x] API documentation has been updated (if necessary) (see docs on API documentation).
[x] Quality standards are met.

@joanagmaia Can you check now ?


Remove CAPI-provider-agent ClusterRole from hypershift Agent platform

What this PR does / why we need it:
Remove CAPI-provider-agent ClusterRole from hypershift Agent platform
Alow hypershift operator to grant RBAC permissions for clusterdeployments and agentClusterInstalls to the cpai-provider-agent
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes # https://issues.redhat.com/browse/MGMT-9591, https://issues.redhat.com/browse/MGMT-9674
Checklist

[x] Subject and description added to both, commit and PR.
[x] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/test capi-provider-agent-sanity

/approve

/lgtm


Finding location of Natural voices

I want to check if there are any more Natural Voices from Microsoft.  How do we check for more and update your list at:
https://github.com/gexgd0419/NaturalVoiceSAPIAdapter/wiki/Narrator-natural-voice-download-links

I just installed every Narrator voice in Settings > Narrator > Add natural voices, and got their Microsoft Store links by copying their links in Microsoft Store.

Thanks for the quick reply.
Very interesting. I lived in on a UK windows machine but can only see 3 USA English voices. I also can’t see the links to the Microsoft Store - choosing a voice just downloads it :(

FYI: the problem was that I was on Windows 11 22h2.  When I change to 23H2 all the voices become available.


[DNM] raftstore: add region merge

This PR adds region merge. Yet it's not ready to enter the master branch.
This PR is created just for review. Please help to review it when you have free time to do so.

We should panic for every rocksdb operation.


Link to analyse page from measure pages

Closing in favour of #2052 to remove force push noise.

Coverage increased (+49.7%) to 76.27% when pulling 9ce2fe9caf8aa53517c962599ad695d33f2a8593 on measures-analyse into 62ea22deb6fb4f826570d26f58554cfd88195666 on master.


Rename error_origin 'container' to 'worker

Task linked: QF-2659 Investigate deeper the failed jobs

What is rationale behind this PR?
While the proposed naming is probably better, patching the JSONs for existing data is not realistic and having the two values just for the sake of clarity will make quering the database historically harder to write and memorize.

Agree. Was only a naming initiative. But agree with your concerns


Automatic status updates are unreliable

So the automatic status updater disconnects and reconnects often. So often it's not connected when you really need it to be, and it's connected when you don't.
Some options:

display some sort of notification when the updater is not connected so the user knows that she has to reload to see changes
Keep the updater connected always. Figure out the ops stuff so this can happen.
Only connect the updater when the user takes action that will cause status changes, disconnect after those statuses resolve.

Leaving this open for verification.


AppSourceCop Cannot read property kind of null

Describe the bug
Hi,
Although I had some errors that the AppSourceCop had to report (in my case it was missing the prefix in 2 fields in 2 different pages), it was so quiet, too much.
So, due to an article that I read, I opened the settings.json and I removed all Code Analyzer except for the AppSourceCop. Then I restarted VSCode but with no success and with no returned errors
I've searched for some logs and I found this in the Developer Tools of VSCode.
  ERR Cannot read property 'kind' of null: TypeError: Cannot read property 'kind' of null
	at asHoverContent (C:\Users\sprimo\.vscode\extensions\microsoft.al-3.0.107312\node_modules\vscode-languageclient\lib\protocolConverter.js:101:27)
	at asHover (C:\Users\sprimo\.vscode\extensions\microsoft.al-3.0.107312\node_modules\vscode-languageclient\lib\protocolConverter.js:134:31)

Hope it can help
Versions:

AL Langauge: 3.0.107312

Business Central: RTM W1 Localization

Any updates?

Hi @stefanoPrimo are you still experiencing this issue with the latest versions of the AL compiler and the AppSourceCop?

Hi, no the issue seems fixed.
Thanks


Dan budimir

Updating to reflect the current state of the D365 Retail object model

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: danbudimir sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Geometry: polygon rotation

Implement polygon rotation [#160604593]

when all points of a polygon (and no other points) are selected a rotation handle appears
dragging the rotation handle drags the points
the rotation handle disappears when selection conditions change

Also, replace use of lodash's cloneDeep() function for copying JXG.Coords objects with a custom copyCoords() function which performs better because it doesn't try to copy as much. (JXG.Coords contain a back-pointer to the board, which is time-consuming (and unnecessary) to copy.)

I considered the visible bounding rectangle approach and probably would have gone that route if we were talking about a rotation-specific mode, but I expect selecting polygons to be a common operation in many situations in which rotation is not the goal and adding a bunch of rotation-specific widgetry seemed like it would just add a lot of extraneous visual noise. Also, given the appearance of such a bounding rectangle one might expect that dragging the edges would allow one to resize the object, which clearly doesn't work. Conversely, if that feature were ever requested, that would be an argument for implementing the bounding rectangle approach.

Indeed, I was assuming that resizing would be coming up soon, in which case that can be revisited then.


Expose motion sensor temperature

Add temp sensor for the motion sensor. This can re-use the heating API to query the device state, but has a different name to avoid creating an extra entity on the heating devices.
This can be used in HomeAssistant by adding a new sensor type to homeassistant/components/hive/sensor.py
 SensorEntityDescription(
    key="Current_Temperature",
    native_unit_of_measurement=UnitOfTemperature.CELSIUS,
    state_class=SensorStateClass.MEASUREMENT,
    device_class=SensorDeviceClass.TEMPERATURE,
    entity_category=EntityCategory.DIAGNOSTIC,
),

@drsgoodall  the GitHub actions should be working now. Please could you install the requirements from this project and run the pre-commit command


[Feature Request]: 'Memory' Game Design Enhancement

How would you like to enhance the existing project.
Changing the design of the game to improve its user experience.
Screenshots
Current Design

Expected Updated Design

Describe breifly how would you implement the same.
Changing/Adding few styling properties to improve its design
Are you contributing for a program?
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hi @panwar8279
Kindly assign me this issue.

Hi @iamRabia-N , I have assigned this task to you. Kindly complete your work within a week. Good luck!

Hi @panwar8279
The pull request related to this issue has been merged. Kindly close this issue.


refactor Cast class for extensibility, add makeErgoCast factory

Can you also add the @private annotation to the new CastImpl methods?
Not strictly necessary because it isn't available through the Cast interface, but it might help with making the intent clearer

Due to the large diff I have a hard time following why everything is now a method of CastImpl
Can you help me by explaining it in a comment?

explain in a comment

Sure, it's pretty straightforward.  By bringing the existing separate functions into the class, and then factoring out the facet that encoding/decoding enum data, we gain the ability to override the form in which that enum data is represented on the Javascript side.
The way the code is moved around is pretty simple, it's just that the indentation gets in the way unless you use "ignore whitespace".  I like Unified diff for viewing things in that way.
The Ergo subclass re-uses the base-class's enum-formatting function via super, extracting and inserting, respectively, single-field values.  Motivation wise, ergonomics can be either a consistent hassle ("death by a thousand cuts") or a source of convenience or even pleasure.  The case of an enum variant with single-field feels like it cuts (sic) across that boundary.

Regarding implementing by composition, I can conceptualize a way that might work to do this with a single class or function, maybe using a context-helper object having its own lookup table of hooks or callbacks.  The base callbacks would be the same as the current patch's methods, and the trick might be found in a) enabling the Ergonomic version to be able to reference the basic hook for enum-variant encode/decode, and b) enabling any of the functions in those hooks to call back into the rest of the encode/decode logic with the hook definitions, for use in nested data.  It's unclear to me whether that conceptual sketch can be feasible and inherently better.
Another angle I can think of might be to break down the main switch cases as their own separate objects (classes or otherwise) that can encode/decode those schema types.  Would that just be another way to do the details while being largely the same (with the same challenges) as the first concept?

Can you also add the @private/@protected annotations to the new CastImpl methods?
[...] making the intent clearer, especially when inheriting in the new Cast class

Sure, that makes sense.
I've been letting this be on the back burner for the moment, to see if a design solution aligned with your preference emerges as sensible here.
It seems to me that anything we'd do without using a subclass would be very similar to being a re-implementation of what javascript does "for free" with inheritance - while being heavier in code structure; though it's possible I'm thinking about it wrongly.  That said, I'm curious if your thinking may have developed along this same line, or whether you've identified a practical approach that's not significantly heavier than the current PR.
I'm hoping we can settle on a pragmatic resolution for this, since the makeXyz...() interface doesn't have reliance on the implementation details - so we can adjust the implementation if we discover any important pain point needing to be addressed.


RBAC for the APP configuration

I am looking for the way to provide read-only access for a user where a user can only see the key-value pair in configuration explorer.
I tried providing App configuration data reader role to the user but it is not working.
I logged Microsoft ticket and the following reply came
"azure app configuration does not support AAD authentication for App Configuration data access"
please suggest what we can do about it.

@Bhanu88 App Configuration definitely supports AAD authentication for data access.
I recently updated the document below and added a note for accessing data via Azure portal or CLI. Please let me know if that addresses your question.
https://docs.microsoft.com/en-us/azure/azure-app-configuration/concept-enable-rbac#built-in-rbac-roles-for-azure-app-configuration

@Bhanu88 I am closing this. Please let us know if you have further questions.


ModelCollectionProperty isDirty to check for dirty values

Enhanced isDirty() function on ModelCollectionProperty to by default also check for any dirty values inside the collection. This can be overridden by passing isDirty(false), and it will behave like the old way (only check for models added/removed from the collection).

LGTM 👍


init times out in 90 seconds, bumping up to 120 seconds does not help either

Hmm so I still see this same issue @kptkin - I have accelerate version 1.0.1 and wandb version 0.18.3. Even running wandb.init() leads to the same issue (wandb.errors.errors.CommError: Run initialization has timed out after 90.0 sec.)
Are there any other leads here?

Originally posted by @shashank2000 in #7671

reverting to version 0.17.8 works

@shashank2000 do you think you could provide a small reproduction of how you use accelerate with wandb so we could further investigate this issue?

@shashank2000 I'm in a kaggle environment and I had this error, tried reverting to version 0.17.8 and it didn't work for me. Do you have an idea why?
Thanks!

@overtheskyy could you please share about your setup, you could increase the timeout using this setting:
run = wandb.init(..., settings={"init_timeout": 120})


Add Sound effects for doomfist abilities

Created by: JJasonOW
this is a small change but it would be a cool QOL thing to see.
For punch, i'd like to see doom's loud grunt being brought back, as of now you can barely hear him charging and just get oneshot, the sound cue was helpful in OW1.
Also uppercut is completely silent and allows for some unfair advantages for doom when he is on the flank.

Created by: JJasonOW
Slam also has no voicelines anymore, forgot.

Created by: MaxwellJung

Is this even possible?

Adding exact OW1 uppercut sound is not possible in this particular gamemode with 12 players. If we have less than 12 players, we can directly use the uppercut sound vfx from workhop vfx extension, but you can only use that extension if your gamemode has less than 12 players.
What will likely happen is that the generic "explosion sound" will be added to doom uppercut (same sound you hear when you land uppercut on enemy).

mentioned in merge request ow1_emulator_backup!322

moved from ow1_emulator_backup#554

Created by: BringBackDoom
Is this even possible?


MyLocationNewOverlay#disableFollowLocation and MyLocationNewOverlay#disableMyLocation throw NullPointerException if called after MyLocationNewOverlay#onDetach

Issue Type
Bug
Description and/or steps/code to reproduce the problem
I found this due to having some code that class disableMyLocation/disableFollowLocation in the onPause of a Fragment. For normal Fragment classes this is fine, but interestingly when using a DialogFragment View#onDetachedFromWindow (which from the MapView will eventually call onDetach on its overlays) is called for views before onPause when DialogFragment#dismiss is called. This means that onPause that tries to clean up MyLocationNewOverlay explodes in a DialogFragment as disableMyLocation and disableFollowLocation both make unchecked calls to the mMapController that has been set to null by onDetach.
I wrote an Android instrumentation test that demonstrates this:
class OsmDroidOverlayProblemTest {

    @Test
    fun example() {
        FragmentScenario.launch(DialogFragmentContainer::class.java).onFragment {
            it.dismiss() // Throws NullPointerException
        }
    }
}

class DialogFragmentContainer : DialogFragment() {

    private lateinit var myLocationNewOverlay: MyLocationNewOverlay

    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View {
        return MapView(context)
    }

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        val mapView = view as MapView

        myLocationNewOverlay = MyLocationNewOverlay(mapView)
        mapView.overlays.add(myLocationNewOverlay)
    }

    override fun onPause() {
        super.onPause()
        myLocationNewOverlay.disableFollowLocation()
    }
}

For the moment, we're working around it by checking View#isAttachedToWindow() for the MapView before trying to clean up the overlay.
If it's a bug, version(s) of android this affects:
All as far I've seen (tried with various API levels, but the test was running in API 29).
Version of osmdroid the issue relates to:
6.1.11

Great to see this fixed, @spyhunter99! 🕷


Allow  nodes

Check if it can be handled.
Meantime workaround merged: https://github.com/krzyzanowskim/Natalie/pull/61

it is ignored by now


Disable useless parenthesis in prettier

Mmh did you read why this was the default on prettier https://prettier.io/docs/en/options.html#arrow-function-parentheses ?
I don't really care here, I just want to be sure that we acknowledge the reason of why it's the default for prettier

At first glance, avoiding parentheses may look like a better choice because of less visual noise. However, when Prettier removes parentheses, it becomes harder to add type annotations, extra arguments or default values as well as making other changes. Consistent use of parentheses provides a better developer experience when editing real codebases, which justifies the default value for the option.

Ok it actually make sense, yet seeing parenthesis there trigger in me some desire of pukingm and cleaning a keyboard is tedious


Enable microphone by default.

Credit goes to pfeerick for discovering right settings.

@anarsoul Please fix the diff so we could see what did change :)

How? This is autogenerated file and I have no idea what version of alsa-utils was used to generate original. Fixing auto-generated files manually is not a good idea.

I'll look at this and submit a PR with just the changes in a day or three ;) Someone please kick me (gently!) if I forget! ;)

@pfeerick kick :)


Emulationstation doesn't save gamelist.xml on R3+power

When shutting down with R3+power sometimes the favorites and last played games don't get saved by emulationstation.
Possible fix:
modify pause.sh,finish.sh to kill emulationstation before poweroff
example finish.sh
#!/bin/bash
if [ ! -e "/home/ark/.config/.SWAPPOWERANDSUSPEND" ]; then
  pkill emulationstatio && while pgrep -l emulationstatio; do sleep 1;done;
  sudo systemctl poweroff
else
  sudo systemctl suspend
fi

R36s
2.0 01272024-1

If you're shutting down while in game and not after you return to the ES menu, this will happen.  The shutdown process stops the ED systemd process so your suggested fix won't work or just cause other issues.  To properly update the ES menu, do the quick shutdown while you're in the ES menu.

Also note that I don't support the r36s units but I can answer basic questions like this.


Error message when doing huge operation doesn't give a good suggestion for making operation less huge

When doing cube.median(axis=0), I get the following error message:
ValueError: This function (<function BaseSpectralCube._apply_everywhere at 0x14f675092790>) requires loading the entire cube into memory, and the cube is large (503316480 pixels), so by default we disable this operation. To enable the operation, set `cube.allow_huge_operations=True` and try again.  Alternatively, you may want to consider using an approach that does not load the whole cube into memory by specifying how='slice' or how='ray'.  See https://spectral-cube.readthedocs.io/en/latest/big_data.html for details.

The suggestion to use how='ray' gives the same error message, as does using iterate_rays=True (which is not suggested by the error message). Adam said this is due to some missing logic cases.

Hey Alyssa!
What version of spectral-cube are you using? The most recent dev version?

The last version I pulled was this one, which was designed to fix this issue: https://github.com/radio-astro-tools/spectral-cube/pull/916/files. It looks like it probably does fix this issue, but I was using dask spectral cubes, which don't take these keywords anyway.


ImportError: No module named gpu_nms

I already run the make file but still face the following error:
"ImportError: No module named gpu_nms"

have you solved it?I meet the same problem now

you should make it


⚠ Bofrost.be has degraded performance

In ebc87e0, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1267 ms

Resolved: Bofrost.be performance has improved in 26be90d.


Ot post 2.5

updated pandas indexing and numpy stubs

indexing in pandas is just such a mess... maybe I should give up and allow all kinds of indexing for any of the indexing methods...

I rebased this branch. you will have to do:
git checkout ot-post-2.5
git fetch
git reset --hard origin/ot-post-2.5

Maybe trying to add types for pandas was a bad idea from the start.

Great! Sorry for being to nitpicky.


Fix ActionIds type

Ensure GetHashcode() returns same value for out of order lists.
Prefer empty lists over nulls for internal _actionIds collection.

@russcam - Looks good! ++ to the test.


ROX-25337: Adding violation time to the policy violations filter

Description
This PR adds a date picker for the Violation time filter in Policy Violations.
User-facing documentation

[x] CHANGELOG is updated OR update is not needed
[x] documentation PR is created and is linked above OR is not needed

Testing

[x] inspected CI results

Automated testing

[ ] added unit tests
[ ] added e2e tests
[ ] added regression tests
[ ] added compatibility tests
[ ] modified existing tests
[x] no changes

How I validated my change

I'll add the time picker part in a separate PR


Indexing mapped type with keyof type param

TypeScript Version:  2.2.2
Code
On playground
type Eg = { foo: string, bar: number }

type VariantRec<T> = {[K in keyof T]: { type: K, value: T[K] }}
type Alpha1 = VariantRec<Eg>[keyof Eg]

type VariantType<T> = VariantRec<T>[keyof T]
type Alpha2 = VariantType<Eg>

const assignable12: Alpha2 = null as Alpha1
const assignable21: Alpha1 = null as Alpha2

Expected behavior:
Types Alpha1 and Alpha2 should be the identical.
Actual behavior:
Alpha2 incorrectly becomes: { type: 'foo' | 'bar', value: string | number }
It should be: { type: 'foo', value: string } | { type: 'bar', value: number }

Interesting. I'd posted a similar issue at #16244.

Hey, we found a solution for mine by separating the steps using generic defaults; still kinda feels like a bug, but I think a workaround like that may solve your case too! 😃

@tycho01 Awesome, thanks!  That appears to work 😸  Here's an updated playground.

Coming over from #16244, I just ran into another one super similar to yours, though here it doesn't seem fixable by defaults:
type Inc = [1, 2, 3, 4, 5];
type ObjectHasKey<O extends {}, K extends string> = ({[K in keyof O]: '1' } & { [k: string]: '0' })[K];
type Length<R extends {}, I extends number = 0> = { 1: Length<R, Inc[I]>, 0: I }[ObjectHasKey<R, I>];
type TestLenA = Length<{ 0: 'a', 1: 'b' }>;
// ^ ok, 2
type Wrap<O> = Length<O>;
// type Wrap<O, Len extends Length<O> = Length<O>> = Len;
// ^ old work-around, same result here
type TestLenB = Wrap<{ 0: 'a', 1: 'b' }>;
// ^ 0 :(

With the wrap wording I'm a bit reminded of #10247, though that concerned wrapping generic functions, while this is wrapping a generic type. Unfortunately, while in that other case one could observe the degenerating generics in the transformed output function, over here the inner workings feel somewhat opaque...

seems like a duplicate of https://github.com/Microsoft/TypeScript/issues/15756

Fixed by #18042.

Automatically closing this issue for housekeeping purposes. The issue labels indicate that it is unactionable at the moment or has already been addressed.


Rewrite MinMaxByBase using simple aggregation function API

Summary
This PR is mainly to rewrite MinMaxByBase using simple aggregation function API. Previous implementation use original Vector Function interface, which heavily relies on template. The change in this PR also aims to reduce the complexity of the code so that it is easier to extend.
MinMaxByBase is used by both Spark SQL and Presto SQL.
There are a few noticeable changes in this PR:

In MinMaxByAggregationBase.h, rewrite the aggregation logic using Simple Function API
In MinMaxByAggregate.cpp (both under Presto SQL and Spark SQL), simplify how we register aggregation.
In prestosql/aggregates/MinMaxByAggregate.cpp, only part of the codes are refactored since the file also contains logic for 3-args MinMaxBy. 3-args MinMaxBy will be refactored in a different PR in future.
In ComplexViewTypes.h, GenericView exposed more functions for allowing direct read from the decoded vectors.
In ComplexWriterTypes.h, GenericWriter exposed more functions for allowing direct write to the base vector. This change is similar to copyValueListToArrayWriter in velox/functions/lib/aggregates/ValueList.h, where it directly writes to the elementVector. The rationale is that we directly serialize the whole vectors in GenericView, and similarly we also need to directly deserialize the whole vectors back to GenericWriter.
In ComplexWriterTypes.h and VectorWriter, fix the bugs where commit(true) and finish() is called even if the GenericWriter is not casted. Related to https://github.com/facebookincubator/velox/pull/6116, @kagamiori may I confirm that if this change is valid and can we safely remove the redundant writer.commitNull() from JsonType.cpp?
In SimpleAggregateAdapter.h, fix bugs where result vector cannot be casted to correct type since GenericWriter is using BaseVector.
Add more tests in MinMaxByAggregationTest.cpp to cover more types

@mbasmanova Could you help review for this PR? Thanks!
Part of https://github.com/facebookincubator/velox/issues/9353

@kgpai Hi, let me know if my explanation makes sense and if you need any additional clarifications. Thanks!

Hi @Real-Chen-Happy , Going through this, I think we ought to change SingleValueAccumulator or ideally create a new Accumulator that uses ArrayWriter/MapWriter/StringWriter/RowWriter internally instead of passing around decoded vector and index (Might be possible to get rid of containerrowserde due to this).

@kgpai I see what you mean. I agree that exposing underlying vectors in GenericWriter and GenericView does not align with its original purpose.
However, if we use ArrayView/MapView/StringView/RowView inside SingleValueAccumulator, it would be difficult to deal with nested types. Let's say the input is Row<Array<Map<int, int>>, Row<double, double>>. I have two approach in my mind:
First approach is to unwrap everything recursively and make comparison, but it might add complexity for the code.
The second approach is to expose underlying vectors for complex types (ArrayView/MapView/StringView/RowView). But that seems also defeats their original purposes.
May I know which approach you would recommend? Or do you have any other better recommended approach?
Thanks!

@Real-Chen-Happy

However, if we use ArrayWriter/MapWriter/StringWriter/RowWriter inside SingleValueAccumulator, I am not sure how to make comparisons with incoming GenericView input without exposing any underlying vector pointer. May I know if you have any recommended approach?

I believe GenericView allows you to compare to other GenericView - I think the key thing missing is how to serialize/deserialize a GenericView type. I need to research a bit on how we can do that - I will let you know soon on how we can approach that.


Update setup.py

cc @certik @isuruf

How does it look now?
@certik @isuruf

I think that's better. But the Windows tests fail. I think you forgot to install the version.py file. Which means that our Travis tests are not sufficient. We need to actually install the package, in fact that should be the only way we test it. We should always just install it, we do not need to run it in place.

Travis tests are sufficient.  In Windows, we are not using the setup.py file to install. That's why Windows tests fail.

Also, have a look at this https://github.com/sympy/sympy/pull/10010
Not only does it say dev, it also appends git_revision which is better for versioning.
What are your opinions?

@isuruf I tried the approach you suggested, using a config file version.py.in. This seems much cleaner.

We need to give the version to the setup function right?

Oh yes, missed that. How do you suggest we give that?

Done @isuruf . What else needs to be updated?

ping @isuruf

This still doesn't address my comment at https://github.com/symengine/symengine.py/pull/6#issuecomment-149996967


Barb renderer: weird default rendering

To reproduce:

Open VAPOR
Import NetCDF-CF data: /home/shaomeng/data/Source/POP/BryanASP/one_degree/monthly
Create a Barb renderer. Enable it.
The default rendering looks weird, as the screenshot shows.

Update on 6/11/2018
Now it doesn't show anything... I'm not sure if it's fixed...


staging vs production in Create React App?

On segmnet, you suggest creating two sources for different environments.
For this package, you have to put the tag in the public folder.
As far as I understand Create react app doesn't let you use environment variable in the public folder.
This means I have to manually copy and paste the script tag in every time I want to switch between environments.  Is there a better way to do this?
Why is this repo labelled react if we just use the same js tag as everyone else?

Nevermind.
The solution was super straight forward.
replace this line in the html script
 analytics.load(%REACT_APP_SEGMENT%);
and create a variable in a .env folder
 REACT_APP_SEGMENT='xxx'
To be fair, this was the first thing I tried, it didn't work. Today it worked like a charm. So it was just an unrelated build issue I was having that was the problem.

Nope.
This doesn't actually work
Uncaught ReferenceError: xxx (my segment id) is not defined

@joshpitzalis
This is working. In your CI/CD you need to make sure that the naming is the same.
Also when you start your app on localhost you should do it like this.
REACT_APP_SEGMENT=DEV_KEY react-scripts start
Put that line in your package.json and whenever you start the app it will have the dev stuff.
In your CI/CD just make sure you set the dev and prod env variables with the same name.

Thanks for the proactive jump on this @smithmr! :) Glad to hear you have it working on your end. @joshpitzalis let me know if you still have issues!

Not sure why this was closed.
I managed to find a solution for anyone else struggling with the same.
<script>
    !function () {
      var analytics = window.analytics = window.analytics || []; if (!analytics.initialize) if (analytics.invoked) window.console && console.error && console.error("Segment snippet included twice."); else {
        analytics.invoked = !0; analytics.methods = ["trackSubmit", "trackClick", "trackLink", "trackForm", "pageview", "identify", "reset", "group", "track", "ready", "alias", "debug", "page", "once", "off", "on"]; analytics.factory = function (t) { return function () { var e = Array.prototype.slice.call(arguments); e.unshift(t); analytics.push(e); return analytics } }; for (var t = 0; t < analytics.methods.length; t++) { var e = analytics.methods[t]; analytics[e] = analytics.factory(e) } analytics.load = function (t, e) { var n = document.createElement("script"); n.type = "text/javascript"; n.async = !0; n.src = "https://cdn.segment.com/analytics.js/v1/" + t + "/analytics.min.js"; var a = document.getElementsByTagName("script")[0]; a.parentNode.insertBefore(n, a); analytics._loadOptions = e }; analytics.SNIPPET_VERSION = "4.1.0";
        analytics.load(`%REACT_APP_SEGMENT_ID%`);
        analytics.page();
      }
    }();
  </script>

so you format the env variable like so analytics.load(%REACT_APP_SEGMENT_ID%);
Then in your .env file you have
REACT_APP_SEGMENT_ID="YdjXXXXPb4"

Now you can swap out staging trackers and productions trackers along with all you other staging/production variables.

Great to hear! Also, instead of manually swapping write keys based off environment, I recommend using process.env.NODE_ENV to determine which key to use.
The above is worth mentioning in the doc. 👍


Add cycles rmx by ...

Song Name
cycles rmx
Artist Name
...
Source
Youtube
Youtube Link
https://youtu.be/AQXJSVWmTSo?si=Of-3ON-OICyNzNKS
Direct File Link
No response
Song ID
8
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 161116

reject
try only using the youtube id for link


BUG: malloc(0) in NI_InitFilterOffsets

Describe your issue.
In NI_InitFilterOffsets, it's possible to end up with a calculation where malloc(0) would be called, due to one of the multiplication parameters being 0 (e.g., footprint).
Passing 0 to malloc is implementation-defined and may return some pointer (not necessary NULL), but any attempts to dereference that pointer would be invalid.
Here's an example patch that detects this issue and a test that fails (from my WIP dev branch):
https://github.com/nkaretnikov/scipy/commit/c44143f16b527d21dc865ea026ccddddd2698fd7
https://github.com/nkaretnikov/scipy/commit/a99cbbdd62570bc61d52da6e4f2dce2943e0b31f
Reproducing Code Example
see above, note that the code is slightly different than in main. but here's an inlined version:
diff --git a/scipy/ndimage/src/ni_support.c b/scipy/ndimage/src/ni_support.c
index de7bace3a..481a7ffbb 100644
--- a/scipy/ndimage/src/ni_support.c
+++ b/scipy/ndimage/src/ni_support.c
@@ -583,14 +583,24 @@ int NI_InitFilterOffsets(PyArrayObject *array, npy_bool *footprint,
         offsets_size *= (ashape[ii] < fshape[ii] ? ashape[ii] : fshape[ii]);
     /* allocate offsets data: */
     *offsets_bytes = offsets_size * footprint_size * sizeof(npy_intp);
+    if (*offsets_bytes == 0) {
+        PyErr_SetString(PyExc_RuntimeError, "*offsets_bytes is 0");
+        goto exit;
+    }
     *offsets = malloc(*offsets_bytes);
     if (!*offsets) {
         PyErr_NoMemory();
         goto exit;
     }
+
     if (coordinate_offsets) {
         *coordinate_offsets_bytes = offsets_size * rank
                                     * footprint_size * sizeof(npy_intp);
+        if (*coordinate_offsets_bytes == 0) {
+            PyErr_SetString(
+                PyExc_RuntimeError, "*coordinate_offsets_bytes is 0");
+            goto exit;
+        }
         *coordinate_offsets = malloc(*coordinate_offsets_bytes);
         if (!*coordinate_offsets) {
             PyErr_NoMemory();

# XXX: This ends up calling NI_BinaryErosion, which calls NI_InitFilterOffsets.
# In the latter, footprint_size is computed and set to 0, so malloc(0) is called
# for offsets.  Then in NI_BinaryErosion, the offsets pointer is passed to
# NI_FilterNext2 where it would be adjusted, but this is prevented by the size
# check at the start of NI_FilterNext2, so the whole thing errors out.
@pytest.mark.skip(reason="footprint_size equals 0")
def test_binary_hit_or_miss_input_as_output():
    rstate = numpy.random.RandomState(123)
    data = rstate.randint(low=0, high=2, size=100).astype(bool)

    # input data is not modified
    data_orig = data.copy()
    expected = ndimage.binary_hit_or_miss(data)
    assert_array_equal(data, data_orig)

    # data should now contain the expected result
    ndimage.binary_hit_or_miss(data, output=data)
    assert_array_equal(expected, data)

commit 4277f939b1d63b2212a3903eb500b3ab16bc33a8 (upstream-https/main, upstream-https/HEAD)
Merge: 7d9301f7c 33ea45b44
Author: Ralf Gommers<EMAIL_ADDRESS>Date:   Sat Jul 2 13:16:40 2022 +0200

    Merge pull request #16444 from sabonerune/fix/messagestream_tempfile

    BUG: fix fail to open tempfile in messagestream.pyx (#8850)

Thanks @nkaretnikov. This reproducer doesn't fail for me without your patch. Is it supposed to?
Also, is the shown commit for messagestream.pyx relevant?

@rgommers i've created a pr here: https://github.com/scipy/scipy/pull/16697. it's based on top of the current main, so should be easy to repro. i've also adjusted the comment there to better match the behavior in main.
about the bug: passing 0 to malloc is valid as long as you pass the resulting pointer to free iiuc. that's the only guarantee you have. dereferencing this malloc pointer is not valid (since it would be either NULL or would be pointing to some address backed by 0 bytes, this is implementation-defined). the test doesn't seem to crash with asan if i try without these checks. however, it might be just because asan fails to catch this. i discovered this on my branch which implements extensive size checking. without this patch on that branch, you should get an error later due to accessing out of bounds memory. iirc, the pointer is adjusted (incremented or decremented) and then dereferenced. but it doesn't make sense to do with a pointer pointing to 0 bytes.
now, as i mention above, using malloc like this seems problematic, so better to just fail early instead of relying on other code to notice. it's all due to one of the arguments used in multiplication being 0 (the footprint).

here's a SO discussion on this: https://stackoverflow.com/questions/2022335/whats-the-point-of-malloc0


Extracting Windows build ZIP produces files names with backslashes on MacOS

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
Extracting Windows build ZIP produces files names with backslashes on MacOS. This occurs with the built in Archive Utility.app as well as msbuild Unzip task. This does not occur with the the command line utility unzip.
A little research points to the ZIP file not being backwards compatible.
I understand handling of the backslash character should be handled in the archive utility. However given the of how this affects the MacOS built in utility and how pervasive it is perhaps it can be looked at in the spirit of being a good citizen of the ZIP standard.
I understand if this may be an issue with the underlying compression utility/framework. I was unable to follow the build process used to create the ZIP.
Expected behavior
Extracting Windows build ZIP file created proper folder structure.

Actual behavior
Extraction creates file names with backslashes instead for sub folders.

Error details
No error occurs.

Environment data
Not applicable.

Visuals
No response

If Compress-Archive was used this issue was fixed with PowerShell/Microsoft.PowerShell.Archive#62.

/cc @TravisEz13 for information.

Code is here:
https://github.com/PowerShell/PowerShell/blob/57f4ccd1fcbf15a2c143007102fb81a79decf3ea/tools/packaging/packaging.psm1#L1627

It's called in the release build from here:
https://github.com/PowerShell/PowerShell/blob/57f4ccd1fcbf15a2c143007102fb81a79decf3ea/tools/releaseBuild/azureDevOps/templates/windows-packaging.yml#L273


Update README.md

What type of PR is this? (check all applicable)

[x] 🚀 Added Name
[ ] ✨ Feature
[ ] ✅ Joined Community
[ ] 🌟 ed the repo
[ ] 🐛 Grammatical Error
[ ] 📝 Documentation Update
[ ] 🚩 Other

Description
Cool Profile
Add Link of GitHub Profile
https://github.com/neon4on/neon4on

Thx for approved andrzejsydor


CI should test against major downstream consumers

Nokogiri is a major part of the Ruby and Rails ecosystem, and we want to make sure we're doing our best to avoid introducing surprising breaking changes in downstream consumers by testing the latest (and maybe HEAD) of some downstream libraries against Nokogiri's origin/main.
I wrote a script to find transitive reverse dependencies with lots of downloads, but there are other consumers like ActiveSupport::XmlMini that we should also consider.
As a first pass, I think the downstream consumers that we test should include gems likely to depend on edge case behavior (like semi-public APIs, broken markup cleanup, or sanitization):

[x] nokogumbo (we already do this as part of testing gem installation, see scripts/test-nokogumbo-compatibility)
[x] loofah https://github.com/sparklemotion/nokogiri/pull/2535
[x] sanitize https://github.com/sparklemotion/nokogiri/pull/2535
[x] rails-html-sanitizer https://github.com/sparklemotion/nokogiri/pull/2535
[x] ActiveSupport::XmlMini
[x] signer (https://github.com/ebeigarts/signer/issues/30)
[x] Viewpoint (https://github.com/sparklemotion/nokogiri/issues/2317)
~webrat? (https://github.com/sparklemotion/nokogiri/issues/2469)~

Here's the output from the script linked to above, all transitive reverse dependencies with more than 50 million downloads:

mime-types: 427192129
actionpack: 301924540
rails: 291427727
actionmailer: 286621408
railties: 285189135
sprockets: 262728161
mime-types-data: 246581469
actionview: 245752445
loofah: 229877006
sprockets-rails: 220115681
rails-html-sanitizer: 214929483
rails-dom-testing: 214021258
rest-client: 197506600
jquery-rails: 164304611
coffee-rails: 149628440
httparty: 140741625
actioncable: 136061936
awesome_print: 126815236
rspec-rails: 125020709
mimemagic: 118289077
capybara: 115351581
responders: 108551246
xpath: 105908875
devise: 102297652
kaminari: 85638960
activestorage: 85143954
haml: 83777188
fog-core: 80990363
fog-json: 76526485
marcel: 76479842
fog-aws: 73467593
fog-xml: 70598608
autoprefixer-rails: 66030405
rspec_junit_formatter: 63620797
factory_bot_rails: 60680591
oauth: 59455942
paperclip: 53141734
kaminari-actionview: 52880566
web-console: 51907828
fastlane: 51243313
lograge: 50700055

I've labeled this "help wanted" because I think it's something that doesn't require deep knowledge of Nokogiri's internals to do.

Another example that would have been helpful to have is webrat, see https://github.com/sparklemotion/nokogiri/issues/2469

Done! See https://github.com/sparklemotion/nokogiri/actions/runs/2294173903


Overmatch issue

rules should only match whole tokens, unless the * character is specified.

This is also a case of overmatch
  ;; para evitar que 1000_NUM seja matched com a regra abaixo,
  ;; temos que dizer que _N e' seguido de um ou mais espacos.
  (define-regex-rule "([\\d\\,\\.\\º\\-\\/]+)_N(\\s+)" "\\1_NUM\\2")

  ;; a regra acima nao funciona se _N for a ultima coisa na linha.
  ;; Esta regra abaixo serve pra isso:
  (define-regex-rule "([\\d\\,\\.\\º\\-\\/]+)_N$" "\\1_NUM")

So if a rule had something like *_N, it would match 1000_NUM. But it would be better to have in the rule _N to force this matching.

sorry, overmatch, as defined, only applicable to non-regex rules, since the problem is actually with the compilation from the normal rule to a regex.
regex rules, given that they are given "as is" to the regex engine, are not applicable to this problem.
I'm closing this, but if you can find a non-regex rule that has this problem, feel free to reopen it with a especific example.

I believe regex rules should also be restrict to the tokens and tags.

There are only 4 regex rules, none of them use regexs that should match more than a word form or a tag.


Installation issues.  estimate-ngram: command not found

1. I decompressed the mitlm-0.4.1.tar.gz file on OSX Yosemite

From Terminal:
2.  ./compile.
3.  make -j

Error:
Input is: estimate-ngram -text mysent.txt -write-lm  mysent.lm
But then I get: estimate-ngram: command not found

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 19 Jun 2015 at 9:31

I see several potential explanations about the issues:

make install is missing;
libmitlm.so is not in the library path (see LD_LIBRARY_PATH or DYLD_LIBRARY_PATH environment variables): this is typical if you do not install mitlm or if you install it in not standard locations (e.g.: your home instead of /usr);
estimate-ngram is not in your commands path (see PATH environment variable): this is typical if you do not install mitlm or if you install it in not standard locations (e.g.: your home instead of /usr).

As far as I can see this is not a mitlm issue (there is nothing we can do about it, as it depends only on user configuration), so I am closing it.


After migration, phantom page which is/isn't accessible

Found when testing site pre-cache/offline access.
This URL
https://global.iogt.site/ar/sections/arabic-emergency-information/arabic-translation-of-about-coronavirus-1/arabic-translation-of-about-coronavirus/arabic-translation-of-what-else-do-you-want-to-know-about-coronavirus/
breaks pre-cache because it isn't accessible.

But, it does appear in /sitemap/

It isn't accessible in Admin Panel https://global.iogt.site/admin/pages/175/ (should be accessible as a child page of this Page)

When unpublishing the parent page, there is a prompt to unpublish the child page

Once the parent Page is unpublished the Child Page disappears from the /sitemap/

It appears that the page does exist: https://global.iogt.site/admin/pages/1199/edit/
It can be reached by going to the English version, then changing the language to Arabic. It's also possible to preview it, and it looks sensible.
It seems that the parent page is unaware of its child page.
For the English version, everything seems fine.
Not sure at this point what could cause it.

@geoo89  invalid paths for pages could be the reason for this and wagtail management command fixtree seems to fix the issue


improved workflow for retries when SQL is problematic

fixed an error with mismatch of "Another Question" string
Improved workflow when the SQL query generated by LLM is problematic. Using dry runs I check if the query is valid and try to fix if not. There are 3 attempts to fix the issue before exiting with an error message on screen

@anifort Thank you for submitting the PR.
We will review as soon as possible.


Add a very simple lexer generator.

The lexemes must be completely disjoint, such that by observing a single character we can immediately decide which terminal (if any) it belongs to.
Whitespace is hardcoded.
This obviously needs significantly more work, but it's actually enough to parse Lisp expressions such as
(define (fib n) (if (= n 0) 1 (mul n (fib (dec 1)))))

which with the sexp.cg grammar gives
[1, 3, 0, 3, 1, 3, 0, 3, 0, 2, 3, 1, 3, 0, 3, 1, 3, 0, 2, 3, 1, 3, 0, 3, 0, 3, 1, 3, 0, 3, 1, 3, 0, 2, 2, 2, 2, 2]

Nice! I was looking into parallel lexical analysis [1] today and it did not seem that difficult if I understand it correctly. Would it not be more ideal to use this method?
[1] Hill, J.M.D., Parallel lexical analysis and parsing on the AMT distributed array processor, Parallel Computing
18 (1992) 699-714.

Yes, but I wanted to put together a quick demo first.

I can not get the example you send to work because of "=" and it does not seem like I can extend the regex like so "atom = [=a-z0-9]+;" is this intended?

Right, the = should be eq or something.  Error detection is not really happening.


Include M2Crypto in OS-specific installers where possible

We do a lot of crypto operations in KA Lite (and some, especially initial key generation, can be slow). KA Lite uses a bundled pure-Python library, python-rsa, but will also take advantage of M2Crypto (which wraps openssl) if available, as it is much faster.
We haven't been bundling M2Crypto because it includes C extensions, and hence need to be compiled in a platform-specific way. However, now that we're building platform-specific installers, it should be possible to bundle M2Crypto and have it installed somewhere to the path.
For Windows, it might be easiest to bundle the EXE installer as we do for Python, and install it during the installation process: http://chandlerproject.org/Projects/MeTooCrypto#Downloads

ka-lite-raspberry-pi already includes a dependency on python-m2crypto
I would be cautious about bundling compiled binary code, even in the installers.
AFAIK most use cases for the deb are about specific deployments that can handle dependencies in our .deb, but let's discuss this further.
The debian format includes the option of recommending packages, so I could start adding Recommends: python-m2crypto to the packages?

Because of the "maintenance mode" of KA Lite, it should be safe to assume that this "nice to have" improvement will not be done. It would affect the build process as it would require for compiled code to enter the installers. Should be safe to assume that won't be possible to prioritize, and probably won't be an acceptable change.
However, as stated, the main target for performance issues, Raspberry Pi, already has this dependency. And any other platform is free to install m2crypto from other sources as a performance boost.


feat(consensus): spawn pipeline

Currently, the consensus engine cannot process incoming CL messages while the pipeline is running offline stages.
Spawn pipeline as a non-blocking critical task to resolve this.

Codecov Report

Merging #1965 (e6bcfde) into main (c5f197d) will decrease coverage by 13.34%.
The diff coverage is 53.65%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff             @@
##             main    #1965       +/-   ##
===========================================
- Coverage   73.04%   59.70%   -13.34%
===========================================
  Files         424      424
  Lines       51931    51983       +52
===========================================
- Hits        37931    31037     -6894
- Misses      14000    20946     +6946

Flag
Coverage Δ

integration-tests
17.39% <0.00%> (-2.09%)
:arrow_down:

unit-tests
54.47% <53.65%> (-12.83%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

bin/reth/src/node/mod.rs
3.63% <0.00%> (-2.46%)
:arrow_down:

crates/consensus/beacon/src/engine/error.rs
100.00% <ø> (ø)

...ates/consensus/beacon/src/engine/pipeline_state.rs
100.00% <ø> (ø)

crates/consensus/beacon/src/engine/mod.rs
70.63% <91.66%> (-26.24%)
:arrow_down:

... and 150 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


toLeopard: Store # of times to repeat statically when it's a block

Resolves #119. See the issue for some related (philosophical) discussion.
For control_repeat blocks whose number of times to repeat is a reporter, this stores that expression in a times variable to be evaluated only once, alongside i = 0; like in Scratch, that value remains static over the course of the for loop's evaluation. This improves compatibility with a relatively minimal impact on (output) code legibility.
// Before

for (let i = 0; i < 10; i++) {
  this.x += 10;
  yield;
}
for (let i = 0; i < this.y + 10; i++) {
  this.y += 10;
  yield;
}
this.vars.index = 1;
for (let i = 0; i < this.vars.list.length; i++) {
  yield* this.doSomething(this.itemOf(this.vars.list, this.vars.index - 1));
  this.vars.index++;
  yield;
}

// After

for (let i = 0; i < 10; i++) {  /* Non-block inputs are treated same as before */
  this.x += 10;
  yield;
}
for (let i = 0, times = this.y + 10; i < times; i++) {
  this.y += 10;
  yield;
}
this.vars.index = 1;
for (let i = 0, times = this.vars.list.length; i < times; i++) {
  yield* this.doSomething(this.itemOf(this.vars.list, this.vars.index - 1));
  this.vars.index++;
  yield;
}

Tested manually. I'd have liked to update the snapshot test, but couldn't figure out how to open and edit it in Scratch without inadvertently causing a number of unrelated changes to the sb3.
Requesting a review from either or both - this is a change to Leopard project generation that will affect quite a number of projects, though it's always an improvement for compatibility with Scratch. IMO it lays bare how both the repeat block and for loops work - but declaring two variables in the beginning of a for loop is admittedly not very common.
At the moment, it's impossible to move the times declaration out of the for loop because we don't have trck which JavaScript variables in-scope - you'd have to ensure let times1, let times2, etc get declared, not just reusing the one name. That said, this is only an issue for loops on the same level, not loops nested in each other:
/* i & times don't exist */
for (        /* loop A                    */
  let i = 0, times = 5 * 4;
  i < times; /* i & times are from loop A */
  i++        /* i is from loop A          */
) {
  /* i & times are from loop A */
  for (        /* loop B                    */
    let i = 0, times = 100 + 25;
    i < times; /* i & times are from loop B */
    i++        /* i is from loop B          */
  ) {
    /* i & times are from loop B */
    ...
  }
  /* i & times are from loop A */
}
/* i & times don't exist */

If we wanted to go with a separate times declaration from the loop, I think that would be doable - but I don't feel the code would be much nicer.
// After, hypothetically

for (let i = 0; i < 10; i++) {
  this.x += 10;
  yield;
}
let times1 = this.y + 10;
for (let i = 0; i < times1; i++) {
  this.y += 10;
  yield;
}
this.vars.index = 1;
let times2 = this.vars.list.length;
for (let i = 0; i < times2; i++) {
  yield* this.doSomething(this.itemOf(this.vars.list, this.vars.index - 1));
  this.vars.index++;
  yield;
}

So my preference is to leave it as this PR has it (and not just because that's less work for me! LOL). But interested to hear what others think.

Nice! I kinda forgot that you can declare whatever you want within the for loop. Just to make sure: we should never run into a case where the code within the loop is expecting to access a times variable from outside the loop, right? All user-defined Scratch variables are under this.vars so I think we're in the clear?

Yep, absolutely. There are no expressions which aren't prefixed by some constant identifier (usually this, but also Sprite, Color, Math, Date) — and no arbitrary property accesses that aren't prefixed on this.vars, this.watchers, this.stage.vars etc.
It might be interesting to explore "transforming" variables that are only accessed within the scope of a single script/custom block (or whose value can be proven to be exactly known within that script and never accessed outside that script) into actual local JavaScript variables, but that's definitely something to look at later!

no arbitrary property accesses that aren't prefixed on this.vars, this.watchers, this.stage.vars etc.

I just realized that custom blocks are converted to methods with inputs as parameters, which have no prefix. Could we end up with a situation like this?
*myCustomBlock(times) { // Suppose times = 5 and this.vars.count = 10
  for (let i = 0, times = this.vars.count; i < times; i++) {
    this.say(times); // Should say "5" but instead says "10"
  }
}

I just realized that custom blocks are converted to methods with inputs as parameters, which have no prefix. Could we end up with a situation like this?

That is terrifying :)
Excellent catch. I'm going to investigate this but I think you're right.
On an interim solution, I'm probably just going to iterate over times, times2, times3, etc, until a name is found which doesn't clash with procedure input names. Fortunately blockToJS is (in general) scoped in blockToJSWithContext, which gives access to the script, so this is doable at all.
I don't think it would make sense to roll a more complex system of getting available local variable names into this PR, but I'd be happy to do a follow-up (as a PR or issue) exploring that. It would be a useful capability to have for performing more complex block-to-JS operations in general!

That is terrifying :)

I felt that and agree. 😅 But I think your proposed solution makes sense.

Just did a force push to rebase after merging #124. Compare before (45be08ac2c44cfb212c28b532d02c4f1d62a8ad3) and after (1e17b659bedbd49673701a3aca23086616ad9edc) - this one benefitted a lot from that cleanup, and that would be pretty typical of similar pull requests! ^^

I just made a test project to confirm each of the things that should be working: https://scratch.mit.edu/projects/941395074/

Hoo-ray! We fixed the problems with overshadowing a custom block input named "times" - as well as sequentially higher names - and did the same thing for "i", since that's also a name we use, and might accidentally overshadow.
Plus, we added a totally new snapshot test, to actually make sure this is working. Highly recommend looking at the 4 latest commits ("add test ... don't overshadow i, either") in order, to understand our process:

Add the snapshot test that captures the current behavior (note that we only take a snapshot of the sprite we're interested in, for convenience)
Manually update the snapshot test with the expected behavior - at this point the snapshot test fails
Do one part of the fix - gets closer to the snapshot test but stil lfails
Do the next part of the fix - matches the snapshot test, succeeds

We went back and edited commits 1 and 2 as we realized they needed additions or changes.
We also tested manually by using the test project we made in December: https://scratch.mit.edu/projects/941395074/
Note that in one case we expect this code:
*avoidAbscuring(times, i) {
  for (let i2 = 0; i2 < 1; i2++) {
    for (
      let i2 = 0, times2 = this.x + 6 * this.toNumber(i);
      i2 < times2;
      i2++
    ) {
      this.x += this.toNumber(times);
      yield;
    }
    yield;
  }
}

This is OK JS, but it's yucky (we define i2 twice, ew). We think there's a kind of dumb approach to make this nicer, will give that a shot....

Yes, that worked! It was pretty much as simple as associating the unique-local-var-name function with the script, so it could be reused in blockToJS calls. The resulting code is hopefully quite a bit neater too, and we can use uniqueLocalVarName in other block definitions if ever need be. Have a look at the commit updating the snapshot test if you're curious!
We're pretty sure this is basically the perfect solution to https://github.com/leopard-js/sb-edit/pull/122#issuecomment-1868420245 LOL. If it keeps working as it appears to~

One more addendum: Currently, uniqueLocalVarName is not suitable for arbitrary use, i.e. to convert user-defined names. To support that, it must never return a name in JS_RESERVED_WORDS, and it should never overwrite some arbitrary common global names - including lowercase-prefix letters. That's a bit related to #138. It's out of scope for this PR since we only call it with hard-coded "preferred" names ("i", "times") and those won't cause problems.

In the future, I would consider using i, j, k, etc. as opposed to i, i2, i3, etc. but this PR is perfect for now.


fix: mongodb addon errors

Codecov Report
Attention: Patch coverage is 0% with 1 line in your changes missing coverage. Please review.

Project coverage is 0.00%. Comparing base (6ca8d49) to head (0dc18d1).

Files with missing lines
Patch %
Lines

...s/mongodb/scripts-ut-spec/replicaset_setup_spec.sh
0.00%
1 Missing :warning:

Additional details and impacted files
@@          Coverage Diff          @@
##            main   #1345   +/-   ##
=====================================
  Coverage   0.00%   0.00%
=====================================
  Files         69      69
  Lines       6685    6685
=====================================
  Misses      6685    6685

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

/cherry-pick release-1.0-beta


Fatal error : Another chronyd may already be running (pid=1), check /var/run/chrony/chronyd.pid

Discussed here as well https://github.com/direktiv/vinitd/issues/12
This  happens when running in docker. And causes chrony to crash hard.
Only way to fix is
docker compose up -d --force-recreate --remove-oprhans

It seems the docker compose file is inconsistent with the run.sh example, where we:
https://github.com/simonrupf/docker-chronyd/blob/5dee8060748d7bd0084a70ac8e886df472894bab/run.sh#L34-L37
If the /run/chrony volume, where the PID is located (/var/run being a symlink to /run on Alpine Linux), is a tmpfs, it will get recreated (empty) on service stop or restart.

Let me know if the updated compose-file resolves your issue, otherwise feel free to re-open this.

I was a custom Dockerfile but I took all the clues from your image.
Anyways I switched to yours and everything works lke a charm!
Thanks and sorry :-)


Update login page UI

Update login page UI
Related ticket :
[Mobile] Update UI Login Based on Figma
Evidence :

all good


connector/ldap: fix case where groups are listed on the user entity

Support schemas that determine membership by having fields on the
user entity, instead of listing users on a groups entity. E.g. the
following schema is now supported when it wasn't previously:
cn=eric,cn=user,dn=example,dn=com
objectClass=myPerson
cn: eric
uid: eric
email<EMAIL_ADDRESS>memberOf: foo
memberOf: bar

cn=foo,cn=group,dn=example,dn=com
objectClass=myGroup
cn: foo

cn=bar,cn=group,dn=example,dn=com
objectClass=myGroup
cn: bar

Were you able to test this with OneLogin?

No. No account.


Move from Travis CI to GitHub Actions

GH Actions will display any errors inline in the changeset, which is a lot nicer than having to go to different sites 👍

Excellent!


Add aliases or rename functions related to foreground/background

IsWindowFloating and SetWindowFloating have been introduced (#880). When the window is floating and unfocused, the application doesn't run when IsRunningInBackground is false (default). This is confusing since the window is not background but just unfocused. I propose to add aliases or rename the functions like:

Add IsRunableOnUnfocused as an alias to IsRunableInBackground
Add SetRunablegOnUnfocused as a alias to SetRunableInBackground
Rename IsForeground to IsFocused (This was introduced at 1.11.0-alpha, then renaming is not too late)

CC @zacharyburkett , @peterhellberg

Add IsRunableOnUnfocused as an alias to IsRunableInBackground

I realized that *InBackground is an alias to OnUnfocused, so the commit comment was opposite :P


Best practices on 500k+ cells

Hello,
Thanks for the great package. I find Tangram very fast when using GPUs, but very memory hungry for a large number of cells (which is expected, since the cell pairwise matrix becomes huge).
I have about 500k cells per image, and what I am currently doing is the following: I randomly split all the cells into 10 bags of ~50k cells, then I run Tangram on each bag of cells.
This process is very fast and not memory hungry, but I was wondering if you believe this is a good practice? If not, do you have any advice?
Indeed, the annotations may be inconsistent from one bag to another, even though in practice it seems quite stable. To smoothen the predictions after concatenating the bags annotations, I was considering running leiden clustering (with high resolution) and assigning all cells of a given cluster to the most frequent cell type. But maybe there is a better and cleaner solution.
Thanks!

Ciao Quentin,
What you are doing is good Tangram practice - at least this is what we do too when we used the method on large sections. Indeed, checking stability of annotations is important and sometimes we bootstrap cells and repeat mapping to estimate uncertainty.
Hope it helps.

Hello @lewlin, thanks for the answer, It's good to know that you are doing something similar.
And good idea to bootstrap cells and repeat the process to improve the stability, I will try that out!


Add padding to the source range if it doesn't end on a char boundary.

I'm not sure if this is the best, but this avoids a panic when given a bad location range ending in the middle of a unicode character.
This fixes all the panics I see in #224 when running json-pop through the invalid cases at JSONTestSuite

Well, it isn't very pretty, but this does make it through $ for i in ../../JSONTestSuite/test_parsing/n_*; do echo $i && cargo run --example json-pop --features pretty_errors -- --color never <$i; done 2>&1 | grep panic without errors... Too terrible?

Sorry for the late reply! This looks mighty useful! It would be really cool to have an integration test for this!

No worries, :hourglass_flowing_sand: , I will have a look at adding tests and see if I can't clean it up some.

Sorry for the late reply! This looks mighty useful! It would be really cool to have an integration test for this!

So, I added some tests, they even caused a panic which my parser didn't exercise (related to start).
However, the output doesn't seem quite right, so I hadn't added the .snap file.
I didn't because i'm not quite sure what the correct output will look like in regards to the ordering of lines eventually.


Message tree (navigator)

Description
Adding a message navigator represented in the form of a tree can allow better navigation between messages to get the data without having to go from one page to another.

Are you planning to do it yourself in a pull request?
Yes.

Fixed in https://github.com/iotaledger/explorer/pull/107


Is there Way to enter a Complex query

For example, I've a IEnumerable Object and would like to give this string to dynamic linq:
 "GroupBy(x=>x.Id).OrderBy(x=>x.Key).Select(x=>x.Key).Where(x=>x!=null)"

for Example smth like this
  aaa.Complex("GroupBy(x=>x.Id).OrderBy(x=>x.Key).Select(x=>x.Key).Where(x=>x!=null)")

and it returns a object, so the result could be everything

Maybe this one can help you?
https://github.com/StefH/System.Linq.Dynamic.Core/blob/10fc9a2ec8677f638210804c0ca636de021e6c9a/test/System.Linq.Dynamic.Core.Tests/ComplexTests.cs

No. I want everything in one string.

You see here: https://dynamiclinq.codeplex.com/SourceControl/latest#DynamicLinq/DynamicLinq/Program.cs
look at the second query

Ah ok. I am not sure on this, if my fork does even support this notation. Did you try this?

I'll try... If not, I'll look to patch that this will also work!

Thanks a lot.

Does not work ... :-( Now we need to look what to do...

One problem: In my commit I removed the
 Type type = _resultType;

Problem here is, we should only do this on the last "new" in the string. How can we decide if this is the case?

I've now added it back, but it is a Problem if have have two select new statements, where the first one should be an anonymous type!

I dont have access to my pc this week. Please investigate some more, I will try to look and merge at sunday. (which branch did you take?)

fixed

@jogibear9988
Can you create a unit-test which tests all this code?
Expression ParseLambdaOperator()
        {
            Expression expr = ParseOrOperator();
            if (_textParser.CurrentToken.Id == TokenId.Lambda && _it.Type == expr.Type)
            {
                _textParser.NextToken();
                if (_textParser.CurrentToken.Id == TokenId.Identifier ||
                    _textParser.CurrentToken.Id == TokenId.OpenParen)
                {
                    var right = ParseConditionalOperator();
                    return Expression.Lambda(right, new[] { (ParameterExpression)expr });
                }
                _textParser.ValidateToken(TokenId.OpenParen, Res.OpenParenExpected);
            }
            return expr;
        }

I dont understand which test I should write here to cover this code.

i'll look

I don't know when this part of the code will be hit...

We should also check, to support Join Operator: https://dynamiclinq.codeplex.com/discussions/471215

Code is never hit I think, I just keep it for now.
Create a new issue for this, and then we can see if this can be implemented.


Add "All" tab & Add SelectedIcon.IconPackType.Name TextBlock

Add "All" tab, containing all Icons (for searching)
Add simple TextBlock to display SelectedIcon.IconPackType.Name (so we can know from which package the icon is from when in "All" tab)

@schdck 👍
Minor cosmetic style changes...


fix handling of spurious accesses during retag

The dereferenceable attribute we emit for LLVM is checked during retag in Stacked Borrows.
However, we currently don't properly do that for retagging of &mut !Unpin, which this PR fixes.
Also this adjusts retagging to inform the data race model of the accesses as well.
Fixes https://github.com/rust-lang/miri/issues/2648.
Also fixes https://github.com/rust-lang/miri/issues/2693 since the same issue arose for retagging as well.
r? @saethlin

While I was touching retagging anyway, I also added a fix for https://github.com/rust-lang/miri/issues/2648.

I skimmed over this but I'm a bit fried right now, I'll look over it for real tomorrow.

I think I understand this decently well now. r=me whenever you want to merge (we have a number of outstanding PRs which may be disruptive so I'm not going to just send this)

We'll have to land them in some order... :shrug:
@bors r=saethlin

:pushpin: Commit 776460fc8dd343c1bcc772529b84f37a684cbb52 has been approved by saethlin
It is now in the queue for this repository.

:hourglass: Testing commit 776460fc8dd343c1bcc772529b84f37a684cbb52 with merge 9f30f00ce14c3a9ce1ed4b943bc83a384408431c...

:sunny: Test successful - checks-actions
Approved by: saethlin
Pushing 9f30f00ce14c3a9ce1ed4b943bc83a384408431c to master...


ChartWidthMixin for es6/es7 class?

Any workaround for using the ChartWidthMixin in es6/es7 classes? Do you recommend say, https://www.npmjs.com/package/react-mixin-decorator ?

Disclaimer: I have not tried this, but it should work, this is similar to wrap.jsx and pure.jsx
the logic in the ChartWidthMixin is quite simple, I think you can create a function something like
export default function makeResponsive(Component) {
	return class ResponsiveComponent extends React.Component {
		componentDidMount() {
			window.addEventListener("resize", this.handleWindowResize);
			var el = React.findDOMNode(this);
			var w = el.parentNode.clientWidth;
			this.setState({
				width: w
			});
		}
		componentWillUnmount() {
			window.removeEventListener("resize", this.handleWindowResize);
		}
		handleWindowResize() {
			var el = React.findDOMNode(this);
			var w = el.parentNode.clientWidth;
			this.setState({
				width: w
			});
		}
		render() {
			if (this.state && this.state.width)
				return <Component width={this.state.width} {...this.props} />
			else
				return

		}
	}
}

and in your CandleStickChart.jsx
class CandleStickChart extends React.Component {
	...
	...
}

export default makeResponsive(CandleStickChart);

thanks for the prompt response! I edited it slightly. there was a small error on the window resize event (it wasn't getting the 'this' that we want).
   function withResponsive(ComposedComponent) {
              return class withResponsive extends Component {

                  componentDidMount() {
                        this.resizeListener = () => this.handleWindowResize();
                        window.addEventListener("resize", this.resizeListener );
                        var el = React.findDOMNode(this);
                        var w = el.parentNode.clientWidth;
                        this.setState({
                            width: w
                        });
                    }
                    componentWillUnmount() {
                        window.removeEventListener("resize", this.resizeListener );
                    }
                    handleWindowResize() {
                        var el = React.findDOMNode(this);
                        var w = el.parentNode.clientWidth;
                        this.setState({
                            width: w
                        });
                    }
                    render() {
                        if (this.state && this.state.width)
                            return <ComposedComponent width={this.state.width} {...this.props} />
                        else
                            return

                    }

              };
            }

            export default withResponsive;

then to use it inside Histogram or CandleStickChart, you need only add:
@withResponsive
and under PropTypes,
width: React.PropTypes.number.isRequired,

ah, I forgot to bind this. It was close though :)
I suggest not using
this.resizeListener = () => this.handleWindowResize();

but instead add
constructor(props) {
   super(props);
   this.handleWindowResize = this.handleWindowResize.bind(this);
}

thanks for asking, updated all the examples to use es6 classes,
http://plnkr.co/edit/gist:a8465abe0061df1b7976?p=preview
look for fitWidth
Have not published this to npm yet, hopefully next week.

nice, that's much cleaner.
thanks!!

published v0.2.11


bug: Safari/iOS block animation after navigating between pages

Bug Report
[x] 4.7
Current behavior:
On Safari or iOS

I've got a spinner on page 1
I navigate to page 2 with the routerLink attribute or using the NavController
On page 2, I go back to page 1, the spinner isn't animated anymore

Expected behavior:
The spinner should still rotate
Steps to reproduce:

Related code:
https://stackblitz.com/edit/ionic-v4-angular-tabs-ytvf9w
Other information:
I've tried to debug this and it seems that changing the visibility of the spinner allow him to rotate again.
When the spinner is stopped, you can add display: none !important to its style, it disappears, then remove the display: none, the spinner starts rotating again.
Ionic info:
This is from my local project which has the bug, but the bug is still here in newer versions (see the stackblitz)

Ionic:

   Ionic CLI                     : 5.2.3 (/usr/local/lib/node_modules/ionic)
   Ionic Framework               : @ionic/angular 4.1.2
   @angular-devkit/build-angular : 0.13.7
   @angular-devkit/schematics    : 7.2.4
   @angular/cli                  : 7.3.7
   @ionic/angular-toolkit        : 1.4.1

Cordova:

   Cordova CLI       : 9.0.0<EMAIL_ADDRESS>   Cordova Platforms : android 8.0.0, ios 5.0.0
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 3.1.2, (and 8 other plugins)

Utility:

   cordova-res : 0.2.0 (update available: 0.6.0)
   native-run  : not installed

System:

   Android SDK Tools : 26.1.1
   ios-sim           : 7.0.0
   NodeJS            : v10.15.3 (/usr/local/bin/node)
   npm               : 6.9.0
   OS                : macOS Mojave
   Xcode             : Xcode 10.3 Build version 10G8

Thanks for the issue. I am going to close this as a duplicate of https://github.com/ionic-team/ionic/issues/17202.


Dashboard breadcrumbs padding issue

Breadcrumbs on some page zoom values renders with wrong padding.
It occurs with zoom 80%, 110%
What I'm trying to achieve
Breadcrumbs should have same padding on every zoom.
Steps to reproduce the problem

Set page zoom on 110% or 80%
Go to dashboard

What I expected to happen
Breadcrumbs should have same padding on every zoom.
What happened instead/how it failed
Breadcrumbs have big left padding.

Can anyone reproduce this bug? It does not show up on MacOS High Sierra / Chrome 63.

I think this is resolved by now Cannot reproduce either


remove rule 1:12 (produce same elements to all Subscribers)

This rule is in conflict with 1:11 which allows a Publisher to treat
multiple Subscribers as either as unicast or multicast recipients. The
verification of proper multicast behavior (which 1:12 specified) has
been retained, the test methods renamed accordingly.
Fixes #224.

There was agreement on the ticket, no comments here, so merging after 23 days.


chore: Added AppsmithError for invalid license key entered

Description
Added a new AppsmithError to handle invalid license key.
Type of change

Chore (housekeeping or task changes that don't impact user perception)

How Has This Been Tested?

Manual

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=b0365b14d84aa62a18a4c9eecd7f939f578679d7


Add rich-click

Close #6 by using rich-click to improve formatting of command help strings.
An issue with command short help strings in rich-click was fixed by ewels/rich-click@5e0b8c5b6c6458c0bf036e6cde371abd18b6f596 but has not been released yet, so this will not be merged until that fix is released.

Short help bug in rich-click is fixed and released, so this is ready to merge.


include all the wasmtime runtime libs in the package more ergonomically

Package layout after this change:

Thanks but, I will have to look into it more. I reverted it because it causes that the users of MSBuildWasm also need to include the Wasmtime package, which is undesirable.


Expo url setup for nhost-cli local development and production use cases

For anyone coming after me, even on MacOS Docker actually exposes the ports correctly and if Mac Firewall is off the services are accessible from the local network (i.e. so that Expo Go can point to the local dev environment from a physical device).
For Expo, you can set the URLs as below, this makes the production builds point to the nhost cloud (you need to insert your URL here), the physical devices using Expo Go point to the IP of the machine running the Metro Bundler and the simulators run on the machine point to localhost.
TLDR: In Expo, to make development use the dev environment and production use production, see code below:
export const auth_url =
  Constants.manifest.packagerOpts.dev && !Constants.isDevice
    ? "http://localhost:9001"
    : typeof manifest.packagerOpts === `object` && manifest.packagerOpts.dev
    ? `http://${manifest.debuggerHost.split(`:`).shift().concat(`:9001`)}`
    : "nhost.io cloud url";

I created a proposed PR nhost/docs#35 to include this in the docs under the nhost dev section.

PR has been merged, will close the issue for now.
Thanks for the contribution!


image activity indicator

currently turned off because saw one instance of it running in a non-UI thread

back on


Filter on Org Devices Statuses List or Uplinks Statuses limited

Problem
When using networkIds to filter the list of Organization Devices Statuses or Uplink Statuses, if the network ids list provided is too long, it's not working, the result is :
WARNING > appliance, getOrganizationApplianceUplinkStatuses - 502 Bad Gateway, retrying in 1 second
I tried with different lists :
43 elements, 991 chars : OK
44 elements, 1014 chars : KO
Also tried to provide the list directly or as full json, same result.
I guess the issue may be the same on other functions.
If I do classic calls with requests, it works correctly.
Versions
Python : 3.8.3
Library : 1.18.2
Code sample
    dev_list = []
    uplinkStatus_list = []
    netIdList = []

    net_list = dashboard.organizations.getOrganizationNetworks(org_id, tags="TagToFilter", tagsFilterType="withAllTags", total_pages='all')

    for network in net_list:
        netIdList.append(network['id'])

    netIdListFilter = {"networkIds":netIdList}

    dev_list = dashboard.organizations.getOrganizationDevicesStatuses(organizationId=org_id,networkIds=netIdList,total_pages='all')
    uplinkStatus_list = dashboard.appliance.getOrganizationApplianceUplinkStatuses(organizationId=org_id,**netIdListFilter,total_pages='all')

    print(dev_list)
    print(uplinkStatus_list)

Yes, this is with 43 different network IDs.
I just tried to do the same with serials, and here is the limit for the list:
58 serials / 988 chars : KO
57 serials / 971 chars : OK
Sure, here is a code sample
dev_list = []
netIdList = []

net_list = dashboard.organizations.getOrganizationNetworks(org_id, tags="TagToFilter", tagsFilterType="withAllTags", total_pages='all')

for network in net_list:
    netIdList.append(network['id'])

netIdListFilter = {"networkIds":netIdList}

url = 'https://api.meraki.com/api/v1/organizations/%s/devices/statuses' % (org_id)
r = requests.get(url, data=json.dumps(netIdListFilter), headers={'X-Cisco-Meraki-API-Key': api_key, 'Content-Type': 'application/json'})
dev_list = r.json()

print(dev_list)

This sounds very similar to this question, however, I'm not able to reproduce this on my end.
Here's a script example, inspired by yours but using this repo's library. If you have an org with enough networks, and it's the only one with that name, then you should be able to run this just by changing the TEST_ORG_NAME constant.
import meraki

TEST_ORG_NAME = 'TestOrg'
TEST_ORG_ID = None

dashboard = meraki.DashboardAPI(suppress_logging=True)

orgs = dashboard.organizations.getOrganizations()
org_found = False

while not org_found:
    for org in orgs:
        print('checking for test org')
        if org['name'] == TEST_ORG_NAME:
            print(f'Checking {org["id"]}')
            TEST_ORG_ID = org['id']
            org_found = True
            break

net_id_list = []

net_list = dashboard.organizations.getOrganizationNetworks(TEST_ORG_ID)

for network in net_list:
    net_id_list.append(network['id'])

devices_statuses = dashboard.organizations.getOrganizationDevicesStatuses(TEST_ORG_ID, networkIds=net_id_list)

print(devices_statuses)

I found that this operation completes successfully with 101 network IDs, which seems long (20 per ID x 101 = 2020 characters). Let me know if you find the same.

I hope my last message was helpful. While we're not aware of any limits on the API end, this could be a limitation of Python or web proxies in between your client and api.meraki.com. In any case, I'm closing this considering no response. If you are able to reproduce this issue, you should be able to work around this by either filtering based on a tag (where supported) or by splitting the request into multiple API calls.


tqsl: init at 2.3.1

Motivation for this change
Adding a package I want to use
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

Corrections in #30146

Also, in case you don't know, you don't need to make a new PR to update it, you can just push to your branch.

I pushed the corrections and didn't see this one update. Must've been cached somewhere, or GitHub didn't propagate the updates quickly enough. I'll be more patient in the future.

Fair enough, no problem, it was just in case you didn't know. :+1: