Add min, max, constrain function for Matrix

This PR adds the functionality to compute a constrained Matrix with a scalar or another Matrix of the same size. It provides the functionality of min, max and constrain.
@jkflying

Coverage remained the same at 100.0% when pulling a84b545ca510a2807cf6680213a91ebad26aeec6 on kamilritz:pr_min_max_constrain into 9f464839510a2779b9418ffbc2303a31f155e851 on PX4:master.

Something I just realised, the semantics of min and max need to match the standard library definition when one of the values is a NaN. This should be tested, so that eg. min(NAN, 1) == min(Vector2f(NaN,5),1.f)(0), and vice versa with argument ordering.

Something I just realised, the semantics of min and max need to match the standard library definition when one of the values is a NaN. This should be tested, so that eg. min(NAN, 1) == min(Vector2f(NaN,5),1.f)(0), and vice versa with argument ordering.

@jkflying which implementation would you suggest for the reference min(NAN,1) call?

Preferably fmin and fmax, but std::min/max should have the same semantics.


Add support for EXTERNAL auth

Adds an optional mechanism parameter and implements EXTERNAL auth following the Java reference implementation.
Also fixes a broken test.

Hello, thanks for opening this PR! We will give you a feedback in the next few days

Just about to head on vacation, so I will be able to make these updates in a few weeks.

Is there a way I can run these github actions on my own account? I have not used github actions before, so not familiar with them. Plus I seem to be in a different timezone making it challenging to work on it while you are available.

Thanks for the pointers, the workflow should now be working as expected.

We'll give you a feedback as soon as possible.
Thanks!

@gpad thanks, updates applied

@icappello just curious, do you have an eta on the next release? Happy using my fork for now, but wanted to follow up before I forget. Thanks!


x axis ticks disappear for log scales with certain data at certain widths

It seems like axis ticks for a log x scale sometimes disappear. The text elements are there, but they’re empty. It only seems to happen under 632px wide, and not all at once; the larger ticks disappear first. And it happens when x is culmen_length_mm, but not when it's culmen_depth_mm. Happens for both top and bottom x axes, but I haven't seen it for y axes. Reproduction: https://observablehq.com/d/6c95906b7cae61d1.

Plot.dot(penguins, { x: "culmen_length_mm", y: "culmen_depth_mm" }).plot({width: 400, x: { type: "log" }})

Plot.dot(penguins, { x: "culmen_length_mm", y: "culmen_depth_mm" }).plot({width: 550, x: { type: "log" }})

Pretty sure this is just how the D3 log scale axis ticks work… but we could make it smarter.

Oh hah. I see, like it just happens to be awkwardly truncating to a section where the logic says the tick doesn't get a label. It especially feels like a bug when there are none at all but yeah, I see where it's coming from. Could call it an enhancement, your call!


Add citation.cff

Add citation.cff for version 0.1
PR Checklist

[ ] Give a detailed description of the PR above.
[ ] Document changes in the CHANGES.rst file. See existing changelog for examples.
[ ] Add tests, if applicable, to ensure code coverage never decreases.
[ ] Make sure the docs are up to date, if applicable, particularly the docstrings and RST files in docs folder.
[ ] Ensure linear history by rebasing, when requested by the maintainer.

Looks good, except we are actually using BSD-3-Clause not BSD-3-Clause-Clear, as far as I can tell?
(Meta: Does the failing check actually make sense to have?)


[WIP] All-Resolution Inference

Introduction of a cluster-level inference procedure based on the all-resolution inference procedure.

would it be possible to add a reference?

Tests and a whats_new entry.

IS this ready to merge once CI is green, or does any more work remain @bthirion ?

I accidentally overwrote the entire PR.
I'm so sorry, I'll fix this.


Extremely slow to restart by clicking Restart in the interface

The problem

Now when I select Restart under config the server goes offline and never comes back ... when I restart the container it all works without issue...
There are no errors in the log as such ... I have placed the docker console output in the Traceback
Environment

Home Assistant release with the issue: 0.105.2
(I skipped the previous 105 versions ... but I am guessing it started with the safe mode)
Last working Home Assistant release (if known): 0.104.3
Operating environment (Hass.io/Docker/Windows/etc.): Docker
Integration causing this issue: Core?
Link to integration documentation on our website: N/A

Problem-relevant configuration.yaml

N/A

Traceback/Error logs

Docker console output is below after the restart button is clicked:
2020-02-07 18:58:57 WARNING (MainThread) [homeassistant.components.device_tracker] The 'hide_if_away' option (with value 'False') is deprecated, please remove it from your configuration. This option will become invalid in version 0.107.0
2020-02-07 18:58:57 WARNING (MainThread) [homeassistant.components.device_tracker] The 'hide_if_away' option (with value 'False') is deprecated, please remove it from your configuration. This option will become invalid in version 0.107.0
2020-02-07 18:58:57 INFO (SyncWorker_24) [homeassistant.loader] Loaded homekit from homeassistant.components.homekit
2020-02-07 18:58:57 INFO (MainThread) [homeassistant.components.stream] Stopped stream workers.
2020-02-07 18:58:57 INFO (SyncWorker_13) [homeassistant.components.xiaomi_aqara] Shutting down Xiaomi Hub
2020-02-07 18:58:57 INFO (SyncWorker_13) [xiaomi_gateway] Closing multisocket
2020-02-07 18:58:57 INFO (MainThread) [homeassistant.components.websocket_api.http.connection.140011379229200] Connection closed by client
2020-02-07 18:58:57 INFO (MainThread) [homeassistant.components.websocket_api.http.connection.140011379567120] Connection closed by client
2020-02-07 18:58:57 INFO (Thread-7) [pychromecast.socket_client] [Kitchen display:8009] Stopped while reading message, disconnecting.

Additional information
Config validates ... and like I said, if I reboot the docker container all works well again.

Ok ... I started with a clean docker image and started merging things until it started not restarting ... something in the config folder ... will post more as I know more...

Ok ... it does restart ... just takes 11 mins 52 seconds :(...

I have noticed my instance takes way longer to test config and restart. I can click restart and want the the pop-up of it being offline till over a minute after on 104. It was instantaneous.

Same issue , is there for some longer time already. Pressing restart seems to do nothing and after a couple of minutes there is eventuality a reboot.

Same here. Before, the check config took 5-8 minutes as where to before it was done within 1 minute. And also when rebooting. The device only reboots after a few minutes of waiting. The actual boot time is equal between 0.104x and 0.105.x
This happened after installing 105.x. Running 0.105.2 atm.
How can i measure what it causing this delay? As there’s no error.. but for some reason needs so much more time to proces certain stuff. I went back to 104.x just to test and it was fast again. Upon upgrading again, same slow experience as before

Yes, as reported in the community, I’m forced to using ssh again for restarts... been a long time for the need for that, but using the configuration option doesn’t seem to work ?

On my configuration the restart is not consistent too. Sometimes it seems the system ignore the command.
The duration is longer than with 104.x but seems related to a custom component which use a different versions of spotipy

Might be that it is the config check which is taking extremely long.
When clicking that in the Ha interface it never seems to finish.
Hence causing restart to take forever, since that first does a config check
When using ssh Hassio Ha check it is as swift as before.
Never sure if it is as safe but it works at least

@Mariusthvdb
Nope ... config check is fine when I click the button ... only takes a few seconds

updating to supervisor 200 made it behave again on this side

Running RPI 3 Model B+ with Home Assistant (formerly Hass.IO).
Have had very stable Home Assistant experiences up to 0.104.3
When upgrading to 0.105.x I started getting roll-backs, with the upgrade failing to upgrade from 0.104.3 to 0.105.x
At first I thought it may had to do with my config, so I removed the netatmo integration from the config file because others were reporting success with that.
No luck.
Then I decided to start a fresh installation with a new SD card and clean hassos 3.10 install.
Added only the deconz add-on and restored from backup, then did a reboot to get all the lights from DeConz into Home Assistant.
This took much longer than I was used with prior to 0.105.x. The logs reported about 940 seconds of boot time for HA Core.
When doing the HA (Hass.IO) upgrade from 0.104.3 to 0.105.x I noticed that the logs were indicating a timeout and that it did not want to wait longer and was therefor falling back to the 0.104.3 install.
Other in the forum were reporting the same thing, these are logs I just copied from the forum:
20-02-06 14:11:25 INFO (MainThread) [hassio.homeassistant] Home Assistant pip installation in progress
20-02-06 14:14:35 INFO (MainThread) [hassio.homeassistant] Home Assistant pip installation done
20-02-06 14:24:39 WARNING (MainThread) [hassio.homeassistant] Don't wait anymore of Home Assistant startup!
20-02-06 14:24:39 CRITICAL (MainThread) [hassio.homeassistant] HomeAssistant update fails -> rollback!
Notice that the timeout occurs after about 10 minutes.
Then look at the logs from my reboot of the clean 0.105.4 installation with only DeConz, SSH and Configuratorenator running:
[...]
2020-02-18 20:09:02 INFO (MainThread) [homeassistant.setup] Setup of domain default_config took 0.6 seconds.
2020-02-18 20:09:02 INFO (MainThread) [homeassistant.setup] Setup of domain hassio took 2.1 seconds.
2020-02-18 20:09:02 INFO (SyncWorker_15) [homeassistant.loader] Loaded google_translate from homeassistant.components.google_translate
2020-02-18 20:09:03 INFO (MainThread) [homeassistant.setup] Setting up tts
2020-02-18 20:09:03 INFO (MainThread) [homeassistant.setup] Setup of domain tts took 0.1 seconds.
2020-02-18 20:24:26 INFO (MainThread) [homeassistant.components.cloud.account_link] Timeout fetching tokens for flow a8097fb3fb2647a19456b570d8258b31
2020-02-18 20:24:26 INFO (MainThread) [homeassistant.components.cloud.account_link] Timeout fetching tokens for flow 2ebd84ef805841b48e848907ba8f2c97
2020-02-18 20:24:26 INFO (MainThread) [homeassistant.bootstrap] Home Assistant initialized in 945.19s
2020-02-18 20:24:26 INFO (MainThread) [homeassistant.core] Starting Home Assistant
2020-02-18 20:24:26 INFO (SyncWorker_17) [homeassistant.components.zeroconf] Starting Zeroconf broadcast
2020-02-18 20:24:26 INFO (MainThread) [homeassistant.core] Timer:starting
2020-02-18 20:24:26 INFO (SyncWorker_3) [homeassistant.loader] Loaded deconz from homeassistant.components.deconz
2020-02-18 20:24:29 INFO (SyncWorker_0) [homeassistant.loader] Loaded plaato from homeassistant.components.plaato
2020-02-18 20:24:29 INFO (SyncWorker_14) [homeassistant.loader] Loaded mqtt from homeassistant.components.mqtt
I am suspecting that there is a 15 minute timeout occuring against the cloud component (which hasn't been configured yet in my near clean installation) while the HA upgrade stops after 10 minutes.
Is there a possibility that these are interconnected and the one issue is causing the next?
Should I wait for a resolution of this slow restart or start from a clean install?
Looking forward to your thoughts.
Kind regards,
Mats

This is the code that generates the error message (from homeassistant.components.cloud.account_link).
        except asyncio.TimeoutError:
            _LOGGER.info("Timeout fetching tokens for flow %s", flow_id)
        except account_link.AccountLinkException as err:
            _LOGGER.info(
                "Failed to fetch tokens for flow %s: %s", flow_id, err.code
            )
        else:
            await self.hass.config_entries.flow.async_configure(
                flow_id=flow_id, user_input=tokens
            )

I'm not a programmer, but is this a timeout relating to home assistant trying to get a token from nabu casa related to it's unique URL?
I haven't touched much of the configuration in this relatively clear setup, the cloud component hasn't been setup yet.

I'm using HA core and have been having restart issues since 104 I believe.  I restarted via the web UI and left it for two hours before I was forced to perform a docker restart as the lights were not coming on.  The final output from the logs seem to be during shutdown.
2020-02-19 13:42:32 INFO (MainThread) [snitun.utils.aiohttp_client] AioHTTP snitun client disconnected from: eu-central-1.ui.nabu.casa:443
2020-02-19 13:42:32 INFO (MainThread) [snitun.utils.aiohttp_client] AioHTTP snitun client closed

This no longer seems to be a problem in 106.

Seems somewhat better ... but still takes a lot longer to check the configs and restart compared to 104

Finally something I can add to.
From time to time my HA suddenly takes 15 minutes to boot, and everytime, it has something to do with Netatmo and Nabu Casa.
Sometimes the +15minutes is permanent, and the only solution is removing netatmo and signing in and out of cloud 2 times.
Whenever 15 minutes are added, i get 3 of these these in my logs, which coincides with the 3 times the netatmo integration is discovered when I set it up anew.
2020-04-15 20:16:11 INFO (MainThread) [homeassistant.components.cloud.account_link] Timeout fetching tokens for flow [GUIDsomethinghere]

Yep fixed in latest versions @PorreKaj ... if you still have issues you should open issues for those integrations that are slow.


Fetching error in infinite stream example

Hello, thanks for the nice work 🙏
I get the error Error: Custom { kind: InvalidInput, error: "error fetching https://us2.internet-radio.com/proxy/mattjohnsonradio?mp=/stream: error sending request for url (https://us2.internet-radio.com/proxy/mattjohnsonradio?mp=/stream)" } when trying to run the example https://github.com/aschey/stream-download-rs/blob/main/examples/infinite_stream.rs .
I also got the same error in one of my applications that is using the repo or if I try different URLs.
I'm running with

rodio = "0.19.0"
stream-download = "0.7.0"
tokio = { version = "1.39.2", features = ["full"] }

Does this URL resolve in your browser? https://us2.internet-radio.com/proxy/mattjohnsonradio?mp=/stream It works fine for me.

Make sure you include a TLS provider as well --features=reqwest-rustls or --features=reqwest-native-tls

The URL resolves fine, the problem was with enabling the extra features, thanks!


implement rest of single letter C escape seqences

as detailed by https://en.wikipedia.org/wiki/Escape_sequences_in_C
implemented a, b & f

Actually, should i just refactor it into a better system?

New system uses case overflow, IMO much better

Looks good, thanks!


[Enhancement] (nereids)implement showREplicaDistributionCommand in nereids

showREplicaDistribution command is supported in legacy planner but not in nereids(new doris fe planner). you need implement the following showREplicaDistribution command in nereids:
unsupportedshowREplicaDistributionStatement
SHOW REPLICA DISTRIBUTION FROM baseTableRef

Its similar to https://github.com/apache/doris/issues/42837  i will pick it


[BUG] Postfix macros in the playground are marked with errors by the type checker

Describe the bug
When using postfix macros (in playground at least), they do not pass the type checker and get underlined with an error "Property does not exist on type".
Code to reproduce
function $try(resultObj: Save<{ value?: number, is_err: () => boolean}>) {
    $$escape!(() => {
        if (resultObj.is_err()) {
            return resultObj;
        }
    });
    return resultObj.value;
}

const val1 = $try!({ value: 123, is_err: () => false });
const val2 = ({ value: 123, is_err: () => false }).$try!();
//                                                 ~~~~
// Property '$try' does not exist on type '{ value: number; is_err: () => boolean; }'.(2339)
//
// typeof val2 === any.

Expected behavior
Expected val2 to have the same type as val1, and no errors to be displayed.

Hi, currently postfix macros only work on built-in types like string, number, boolean and arrays. You'll have to create a type for the object and add the macro as a property in order to use it with custom types.


Error: AADSTS65001: The user or administrator has not consented to use the application

What type of issue is this?
Question
What SharePoint development model, framework, SDK or API is this about?
💥 SharePoint Framework
Target SharePoint environment
SharePoint Online
What browser(s) / client(s) have you tested

[ ] 💥 Internet Explorer
[ ] 💥 Microsoft Edge
[X] 💥 Google Chrome
[ ] 💥 FireFox
[ ] 💥 Safari
[ ] mobile (iOS/iPadOS)
[ ] mobile (Android)
[ ] not applicable
[ ] other (enter in the "Additional environment details" area below)

Additional environment details

browser version
Chrome: Version 102.0.5005.115 (Official Build) (64-bit)
SPFx version:
"@microsoft/sp-core-library": "1.15.0-rc.0"
Node.js version
14.19.3

Issue description
I created an SPFX app and then an Azure function app that I have deployed. I need to connect my SPFX to the Azure function app to consume the endpoints i have created. what i did was:

Registered my function app in the AAD App registrations , added these permissions:

Also added this to my SPFX

 "webApiPermissionRequests": [
      { "resource": "<appname>", "scope": "user_impersonation" },
      { "resource": "Microsoft Graph", "scope": "User.ReadBasic.All" }
    ]

Im not a global admin, so i asked for the admin to approve all the necessary permissions. app was trusted in https://tenant-admin.sharepoint.com/_layouts/15/online/AdminHome.aspx#/webApiPermissionManagement already.
but when i was testing i get this error:

InteractionRequiredAuthError: AADSTS65001: The user or administrator has not consented to use the application with ID 'fb65feee-6b0f-4ec9-b37e-a65e25a117f0' named 'SharePoint Online Client Extensibility Web Application Principal'. Send an interactive authorization request for this user and resource.
Trace ID: 210f593e-d2cb-4769-966c-ebf128307c00
Correlation ID: a55fe745-4f79-48bc-aceb-322228040150
Timestamp: 2022-06-30 07:30:47Z

Would like to note that when i opened 'SharePoint Online Client Extensibility Web Application Principal' I dont see the app I registered in the API / Permissio name.  shouldn't it be automatically added there when the admin trusted the app in the webApiPermissionManagement ?

Hi There, could you go to portal.azure.com, click on View under Manage Azure Active Directory, click on Enterprise Applications in the left nav, search for SharePoint Online Client Extensibility Web Application Principal and click on the link for it then click on the Permissions item on the left nav.
Under Admin Consent you should see Microsoft Graph with a claim value of user.impersonation after you have approved the permissions from the web api permission page.  If you do not see this something has gone wrong.  Please let me know if it is there.
If it is not there either the permission was not requested from the package, or an error occurred when approving it.  In order to get unblocked the easiest thing to do would probably be to delete the package and re-add it so your permission request gets created again.  If that happens can you send a trace for the Web Api Permission page being loaded and approving the permission from your global aad admin?


Respected moderator I would venture to ask, this Advanced EAST did not see the training entrance, it is estimated that many people like me are looking for. Thank you.

Respected moderator I would venture to ask, this Advanced EAST did not see the training entrance, it is estimated that many people like me are looking for. Thank you.


[Bug] Auto accept doesn't work properly.

when the match is already find the cheat cant accept it and it stack on 20 second.

first: learn how to write in english. second: title should be: [Bug] Auto accept doesn't work properly.

when the is already find the cheat cant accept it and it stack on 20 second.

Same problem.

when the is already find the cheat cant accept it and it stack on 20 second.

It is not a problem
The counter will stay in 20 seconds until player # 9 accepts.
When that happens, the system will automatically accept and load the game

try this
    else if (config->misc.autoAccept && !strcmp(data.soundEntry, "UIPanorama.popup_accept_match_beep"))
    {
#ifdef _WIN32
        auto window = FindWindowW(L"Valve001", NULL);
        FLASHWINFO flash{ sizeof(FLASHWINFO), window, FLASHW_TRAY | FLASHW_TIMERNOFG, 0, 0 };
        FlashWindowEx(&flash);
        ShowWindow(window, SW_RESTORE);

        if (GetForegroundWindow() == window)
        {
            RECT lprect;
            GetClientRect(window, &lprect); // Gets the resolution of the window
            SendMessage(window, WM_MOUSEMOVE, 0, MAKELPARAM(lprect.right / 2, lprect.bottom / 2)); // Moves the mouse into the middle of the window
            mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); // click
        }
        memory->acceptMatch("");
#endif
    }

Now "Auto accept" also updates the UI.


[Docs] Document the deployment process

We might switch cloud providers or have a new sponsor in future. Documenting the process will help in re-deploying.

@tushar5526 Can I work on this issue? Thanks!

Hey @SD-13, we are planning to take this up, as there is some context that needs to be there before you can write this doc. I would really love if you can help out with other issues 😄

@tushar5526 Sure, I will look for other issues. Thanks!


add line cap

@misterwell in my project we need have a round cap spinner, so I add this.
and the huge 3,926 additions... is due to my xcode version is 8.0, maybe lot of things has changed

Thanks @monzy613! I'm going to merge this as-is and work on updating the project files for the latest Xcode separately. Thanks for the contribution, and sorry it took so long to get merged!


statefulset scale slider

Deployment has this fancy scale slider, but StatefulSet doesn't have it.

I think I will try this out after I do #834, so the stateful set also gets the buttons to increase or decrease.

Hi guys, I'm a newcomer, if you don't mind I'd like to try to implement this feature

@vshakirova Feel free to implement this!


Add open source licensing information

We should explicitly add the GPLv3 or another suitable open source license for the code.

Do you mean per file?
There's already Apache v2 in the root: https://github.com/kpdyer/marionette/blob/master/LICENSE

Oops. Somehow I thought we never set one. I'll remove my issue.

On Oct 1, 2015, at 8:34 PM, Kevin P. Dyer<EMAIL_ADDRESS>wrote:
Do you mean per file?
There's already Apache v2 in the root: https://github.com/kpdyer/marionette/blob/master/LICENSE
—
Reply to this email directly or view it on GitHub.


Adjust dialog alert call

Change the dialog alert action call to pass an arguments array instead of simply passing the properties object.
/cc @daltonmatos

Works as expected. Thanks for the fix! Ready to merge.

This looks good to me @orlandohohmeier thanks for the effort, your work is appreciated a lot.


solve data loaders and docker build

:tada: This PR is included in version 1.0.0-next.32 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add InfernalRobotics-LegacyParts

Including parts is helpful.
Closes https://github.com/KSP-CKAN/CKAN-meta/issues/1103

Not sure why this doesn't have a merge conflict now due to #3803. I'll merge and then fix

Seems it merged just fine.

GitHub magic!


Agricraft doesn't seem working properly with Grow Lights

Plants on Argicraft Crops must have an empty block on top of them to grow. But Grow Lights don't apply their bonuses if placed higher.

Not sure if this will fix it, but if you check the configuration for Emerging Technology there should be an option to change light range (hydroponics module > grow lights > Grow Light - Range).
Would you mind changing that to something like 4-5 and letting me know if that resolves the issue?

It works! In some unobvious and unsatisfying way but it works!

Hahaha, phew! I think if you look in the GUI of the lights/grow bed it should tell you what the growth boost is from the lights too.

It does! For some reason I've had max range of lamps set to 1. Thanks for help. But it still quite unsatisfying to have visibly unnecessary space between lamp and crops :\


Visibility configuration files

Prerequisites:

Is the functionality available in the GitHub UI? If so, please provide a link to information about the feature.

Yes here

Is the functionality available through the GitHub API? If the functionality is available, please provide links to the
API documentation (https://developer.github.com/v3/) as well as the Octokit documentation (https://octokit.github.io/).

API "visibility" here
Octokit "Get a repository"  here
Code Example to get visibility for all repos and match to the visibility config
        const repos = await octokit.rest.repos.listForOrg({
          org: org
        })

        for (var i = 0; i < repos.data.length; i++)
        {
          const repoName = repos.data[i].name

          const  results  = await octokit.rest.repos.get({
            owner: org,
            repo: repoName
            });

          switch (results.data.visibility) {
            case 'private':
              console.log(`Applying private.yml to ` + repoName);
              break;
            case 'public' :
              console.log(`Applying public.yml to ` + repoName);
              break;
            case 'internal' :
              console.log(`Applying internal.yml to ` + repoName);
              break;
            default:
              console.log(`Error accessing visibility for ` + repoName);
            }
          }

New Feature
Our organization requires different configurations for the different visibility options (public repos, private repos, internal repos).
For example:
We require a license file for all public repos, however this is not required for private or internal repos.
I did not see any documentation or code that alluded to this being a configuration option in the current state of Safe-Settings. Therefore, I am working on an enhancement in our forked version of Safe-Settings that would evaluate the various settings files in the following order:
settings.yml (org wide) -> (suborgs) -> visibility configurations (private.yml, public.yml, internal.yml) -> repos/(repo-name).yml
Would anyone else be interested in this feature? If so, please provide feedback, suggestions, etc.

I would also be interesting in having the visibility accessible from the safe settings plugins, or any custom plugin we create


[Bug]: flattening_enabled turns arrays in record to strings without changing the schema type

Singer SDK Version
0.14.0
Python Version
3.10
Bug scope
Taps (catalog, state, stream maps, etc.)
Operating System
Linux
Description
When setting "flattening_enabled" : true, record property values of array ([]), are turned to strings ("[]"), but the schema still lists the property as "type" : ["null", "array"], causing an error when this hits a meltano sdk target of:
jsonschema.exceptions.ValidationError: '[]' is not of type 'null', 'array'

Failed validating 'type' in schema['properties']['<property name>']:
{'items': {}, 'type': ['null', 'array']}
On instance['<property  name>']:
'[]'

Code
No response

@edgarrmondragon can you confirm this is still a bug?

I hit this today whilst working on making target tests pass and didn't have time to investigate further. Couldn't find in the docs what the expected behaviour is, but we do have a separate config bool called flatten_arrays that I think defaults to True that might have something to do with it. In any case, the mismatch to the schema points to a bug 🐛

@edgarrmondragon can you confirm this is still a bug?

@tayloramurphy Yes, and it most likely has the same underlying cause as https://github.com/meltano/sdk/issues/1400

This was fixed in #1939. See the "some_numbers" test case in the PR for the expected output.


Show message if there are no providers

Return empty string if there are no providers rather than checking if the non-existent one. Then update the UI to show a message about no providers.
Resolves #104, reported by @antomor

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 0.0%

Totals

Change from base Build 979952212:
0.0%

Covered Lines:
0

Relevant Lines:
39

💛  - Coveralls


Issue 6: Misuse of textContent Instead of innerText

textContent is used in the addItemToDOM function, which could cause issues if the item text contains HTML elements. This might break the visual rendering of the list.

I want to work on this

@cn10xdev  - Fixed. PR has been raised. Please review and update.

@cn10xdev The PR has been raised, please do review it.


Github UI bug when hovered on show more activity

In the profile page, Show more activity's colour is bad when hovered.

Not Refined GitHub


chore: workflow refactoring

Reason for This PR

WorkflowDefinition refactoring

Description of Changes

Move LocalActivityFn to the separate structure
Protect MessageQueue with mutex
Add more logs

License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the MIT license.
PR Checklist
[Author TODO: Meet these criteria.]
[Reviewer TODO: Verify that these criteria are met. Request changes if not]

[x] All commits in this PR are signed (git commit -s).
[x] The reason for this PR is clearly provided (issue no. or explanation).
[x] The description of changes is clear and encompassing.
[x] Any required documentation changes (code and docs) are included in this PR.
[x] Any user-facing changes are mentioned in CHANGELOG.md.
[x] All added/changed functionality is tested.

Codecov Report

Merging #307 (4d62c94) into master (b06b5cc) will increase coverage by 0.52%.
The diff coverage is 7.63%.

 Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Allow loading the sidebar when mdx errors occur

when we visit an internal page, e.g. a url like
https://developers.onflow.org/cadence/tutorial/05-non-fungible-tokens-1
and the mdx fails, the sidebar should still load
this might require using multiple routes, e.g.
app/routes/$repo.tsx   // loads sidebar data, renders outlet
app/routes/$repo/$.tsx // loads mdx document

// after #487  is done, more routes too
app/routes/learn/$path.tsx   // loads sidebar data, renders outlet
app/routes/learn/$path/$.tsx // loads mdx document

Added this in: https://github.com/onflow/next-docs-v1/pull/531


Improve UX for EDL password rotation

EDL is implementing mandatory 60 day password rotation beginning January 2024. Is there a way we could 1) identify that a user’s EDL password is expired programmatically, and then 2) pass a new password on through earthaccess?
For 1), @MattF-NSIDC received guidance from the EDL team:

Yes, the error message will indicate whether the password is correct but expired or if the credentials were invalid. A password reset email will also be sent automatically if a user with an expired password tries to authenticate.

If you want, I can force-expire an account for you to test with in advance.

That said, we recommend use of user tokens over user credentials wherever possible.

This may be a fairly simple change to surface this message and guide users towards urs to update their password. If we could get ahead of the password rotation mandate, this would really help out our users so they don't feel stuck using earthaccess.

Does the recommendation to use tokens over credentials mean earthaccess should have a way of persisting tokens?

Is this still a necessary issue given NASA's postponement of pwd rotation

Good catch @andypbarrett. I'd agree with closing this as OBE.


Include TableTableRowGroupElement support in all row based methods

Hi
Actually the only method supporting the presence of the TableTableRowGroupElement is the getNextRow and getPreviousRow of the OdfTableRow class.
Others classes like OdfTable don't manage to get the real number of rows with getRowCount or iterate among them using getRowByIndex or getCellByPosition, they all fail to considerates TableTableRowElement nodes contained by a TableTableRowGroupElement.
Best regards

Unless someone is providing a patch, I will take this into consideration for 1.0.0.


Remove duplication in code

and close StringReader.

Ok, I see that you fixed it in cac96391169d5d0c47e8e0bd8e0586b0d7b29c75.
Only closing StringReader can be added.


chore(travis): cache pip in travis runs

https://docs.travis-ci.com/user/caching/#Caches-and-build-matrices

Current coverage is 85.63% (diff: 100%)

No coverage report found for master at 5e647b2.

Powered by Codecov. Last update 5e647b2...0b6e719


Rejection of a Promise that depends on another promise is extremely slow in V8/Chrome.

The Story
First, I created a Promise, called x.
var x = new Promise(function(resolve) {
  setTimeout(resolve, 1000)
})

Then I created a function that processes a task, but it depends on x, but they all fail:
function y(task) {
  return x.then(function() { throw new Error('it failed') })
}

I have 1000 tasks, and I process them all.
Promise.all(tasks.map(y)).then(...).catch(...)

The Problem
At the moment x is resolved, on Google Chrome with a minified build, the browser freezes for ~10 seconds.
The Test Case
https://rawgit.com/dtinth/39520b129f143c66bd40/raw/index.html
The Weirdness

From my testing, this only happens in Google Chrome, including Chrome Canary.

It runs smoothly on Firefox and Safari.

When using native promises, this problem doesn't happen.
It only happens in minified builds.

When I use bluebird.js instead of bluebird.min.js, the problem disappears.
Nevertheless, when I use bluebird in webpack environment, the problem still appears.

The Profile
On my MacBook, it takes 9 seconds to settle the Promise.

Upon zooming, most time is spent on _rejectCallback.

The Variations
If y returns a promise that's eventually fulfilled (instead of rejected), this problem doesn't happen.
If each y depends on different x, this problem doesn't happen. What I mean is that x and y looks like this instead:
function x() {
  return new Promise(function(resolve) {
    setTimeout(resolve, 1000)
  })
}

function y(task) {
  return x().then(function() { throw new Error('it failed') })
}

Can you reproduce this in node?

Yes, this is reproducable in Node.js using the following test code:
var Promise = require('bluebird')

var x = new Promise(function(resolve) {
  setTimeout(function() {
    console.log('will now resolve!')
    resolve()
  }, 1000)
})

function y(task) {
  return x.then(function() { throw new Error('it failed') })
}

var tasks = []
for (var i = 0; i < 1000; i ++) tasks.push('Task ' + i)

Promise.all(tasks.map(y))
.then(function() { console.log('done') })
.catch(function() { console.log('caught') })

@dtinth that particular test case did not reproduce the bug for me on iojs / node 0.11.x / node 0.10.x

@phpnode
It also happens on iojs 1.0.3. I reproduced this on Mac OS X 10.10.1 with Bluebird 2.9.9.
This is also reproducible on Ubuntu 13.10 running Node v0.10.28 and Bluebird 2.9.9.

@dtinth ah, sorry, you're right, I was testing on 2.4.x, was able to reproduce with 2.9.9

By trying to install various versions, this problem started appearing since 2.8.2.
▹ npm install<EMAIL_ADDRESS><EMAIL_ADDRESS>node_modules/bluebird

▹ time node test.js
will now resolve!
caught
node test.js  0.12s user 0.03s system 12% cpu 1.143 total

▹ npm install<EMAIL_ADDRESS><EMAIL_ADDRESS>node_modules/bluebird

▹ time node test.js
will now resolve!
caught
node test.js  8.98s user 0.15s system 89% cpu 10.224 total

@dtinth I will push a 2.9.10 release as soon as the browser tests come back out, no need to revert to 2.8.1 :)

@dtinth Fixed in 2.9.10

Thank you for fixing this very quickly. :)


link is no longer available

What needs to be documented?
https://github.com/ShadowMario/FNF-PsychEngine/wiki/Dialogues#playing-your-dialogue-on-luadownloaded-build
This paragraph..

Contains an expired discord link file
https://cdn.discordapp.com/attachments/866856727621795850/890335034786062336/script.lua

https://drive.google.com/file/d/15SMMmz5xpNompGne6S7GgEjfqEOu48xx/edit
This got moved to Lua Script API


PartialOrder plan's replace_action_instances() method not working correctly

I've found that PartialOrder plan's replace_action_instances() method doesn't work as expected, linking existing ActionInstances as successors to the current action graph node. Instead a new ActionInstance is created as the successor which means the structure of the graph is lost when translated to ActionInstances.
At the end is a function that works for my purposes. I hope this helps!
To Reproduce
Try to use replace_action_instances() on a plan to un-ground the action instances:
//'plan' is a PartialOrderPlan object
resplan = plan.replace_action_instances(
plan, grounding_result.map_back_action_instance
)
//Then print the resplan, and compare to the original plan
Expected behavior
The method iterates over all nodes in the graph, replacing them with corresponding ActionInstance objects. The method also iterates over all successor nodes, per graph node and replaces with the corresponding existing ActionInstance object.
Desktop (please complete the following information):

OS: AlmaLinux 9.1 (Lime Lynx)

Still an issue as of 02/12/2022 (I checked the github source code https://github.com/aiplan4eu/unified-planning/blob/master/unified_planning/plans/partial_order_plan.py)
Additional context
I've implemented a fix that works for my purposes. n.b. this is a function outside of the PartialOrderPlan class for my own convenience.
def fixed_replace_action_instances(
    plan,
    replace_function: Callable[
        ["plans.plan.ActionInstance"], Optional["plans.plan.ActionInstance"]
    ],
) -> "plans.plan.Plan":
    """
    Custom function for replacing action instances of a partial_order_plan
    The original function has two errors. First for plans of length 1 with no successors the plan is discarded.
    Second the successors are duplicated.
    Returns a new `PartialOrderPlan` where every `ActionInstance` of the current plan is replaced using the given `replace_function`.

    :param replace_function: The function that applied to an `ActionInstance A` returns the `ActionInstance B`; `B`
        replaces `A` in the resulting `Plan`.
    :return: The `PartialOrderPlan` where every `ActionInstance` is replaced using the given `replace_function`.
    """
    new_adj_list: Dict[
        "plans.plan.ActionInstance", List["plans.plan.ActionInstance"]
    ] = {}
    # The approach used is to generate equivalent keys for all nodes first, then add successors later.
    # This is done because successors need to map exactly to the corresponding node object, and so
    # the replace_function can only be called once per unique object.

    new_key_dict = {}
    # First add all replaced nodes as keys, but leave successors for later
    for node in plan._graph.nodes:
        key = replace_function(node)
        if key is not None:
            new_key_dict[node] = key
    # Populate the new adjacency dictionary with the replaced action instances
    # It is easier to match instances using the adjacency dict
    for node in plan._graph.nodes:
        if node in new_key_dict:
            key = new_key_dict[node]
            replaced_neighbors = []
            for successor in plan._graph.neighbors(node):
                if successor in new_key_dict:
                    replaced_neighbors.append(new_key_dict[successor])
            if len(replaced_neighbors) > 0:
                new_adj_list[key] = replaced_neighbors
            # This is the only functional change to this part of the code. Without this
            # else plans of length 1 are lost
            else:
                new_adj_list[key] = []
    new_env = plan._environment
    for ai in new_adj_list.keys():
        new_env = ai.action.env
        break
    return up.plans.PartialOrderPlan(new_adj_list, new_env)

@Framba-Luca can you please have a look?

My understanding of how PartialOrderPlans works may be wrong, so just to clarify:
My understanding of PartialOrderPlans is:
Start with a network of nodes. Each node corresponds to an action. The position of the node on the network denotes the position in the partial order plan.
ActionInstances are representations of a specific action executed at a specific point in the plan. If two ActionInstances have the same action, but are not the same object then they represent that action at different points in the plan.
By creating a whole new ActionInstance for a node's successor nodes this separates the true successor action from the current node.
So:
Let the set of actions {a, b, c}
all have a successor action {d}
and {d} has successor actions {e, f, g}
As is the replace_action_instances() method will turn this into:
{a1, b1, c1} have successor {d1}
{d1} has no successors
{d2} has successors {e1, f1, g1}

@bPat429 I think you are totally right!
When I coded this, I didn't think about the fact that 2 calls to the replace function with the same ActionInstance would create 2 different ActionInstances.
Could you share with me the code you used to find this error?

Happy to help!
My code is at:
https://gitlab.com/BPat123/up-smt-engine/
And the function is called on line 105 in:
https://gitlab.com/BPat123/up-smt-engine/-/blob/main/up_SMT_engine/SMTPlanner.py
I'm misusing PartialOrderPlans because I wanted a way to preserve sets of parallel actions in a plan so my code is probably quite confusing, sorry!


[Bug]: panic when port is in use

zot version
9cc990d7ca7f5e703fdd54083ca458c77ee8e47d
Describe the bug
zot panics when the port is already in use. This should be a normal failure, not a panic.
To reproduce
First run some other server on port 5000 (e.g. docker run -p5000:5000 registry).
Then, in the examples directory:
% zot serve config-minimal.json
{"level":"info","time":"2023-04-27T16:36:18+01:00","message":"HTTP port 5000\n"}
{"level":"info","params":{"distSpecVersion":"1.1.0-dev","GoVersion":"devel","Commit":"v2.0.0-rc3-64-g9cc990d-dirty","ReleaseTag":"v2.0.0-rc3","BinaryType":"-sync-search-scrub-metrics-lint-ui-mgmt-userprefs","Storage":{"RootDirectory":"/tmp/zot","Dedupe":true,"RemoteCache":false,"GC":true,"Commit":false,"GCDelay":3600000000000,"GCInterval":0,"StorageDriver":null,"CacheDriver":null,"SubPaths":null},"HTTP":{"Address":"<IP_ADDRESS>","Port":"5000","AllowOrigin":"","TLS":null,"Auth":{"FailDelay":0,"HTPasswd":{"Path":""},"LDAP":null,"Bearer":null},"AccessControl":null,"Realm":"","Ratelimit":null},"Log":{"Level":"debug","Output":"","Audit":""},"Extensions":null},"goroutine":1,"caller":"zotregistry.io/zot/pkg/api/controller.go:236","time":"2023-04-27T16:36:18.109559577+01:00","message":"configuration settings"}
{"level":"info","cpus":8,"max. open files":1048576,"listen backlog":"4096","max. inotify watches":"65536","goroutine":1,"caller":"zotregistry.io/zot/pkg/api/controller.go:111","time":"2023-04-27T16:36:18.109620887+01:00","message":"runtime params"}
{"level":"debug","component":"scheduler","goroutine":51,"caller":"zotregistry.io/zot/pkg/scheduler/scheduler.go:134","time":"2023-04-27T16:36:18.111773859+01:00","message":"scheduler: pushing task into worker pool"}
{"level":"debug","component":"scheduler","goroutine":51,"caller":"zotregistry.io/zot/pkg/scheduler/scheduler.go:134","time":"2023-04-27T16:36:18.112155637+01:00","message":"scheduler: pushing task into worker pool"}
{"level":"warn","goroutine":1,"caller":"zotregistry.io/zot/pkg/debug/swagger/swagger_disabled.go:23","time":"2023-04-27T16:36:18.112307837+01:00","message":"skipping enabling swagger because given zot binary doesn't include this feature, please build a binary that does so"}
{"level":"debug","component":"scheduler","goroutine":51,"caller":"zotregistry.io/zot/pkg/scheduler/scheduler.go:134","time":"2023-04-27T16:36:18.112473162+01:00","message":"scheduler: pushing task into worker pool"}
{"level":"debug","component":"scheduler","worker":1,"goroutine":38,"caller":"zotregistry.io/zot/pkg/scheduler/scheduler.go:99","time":"2023-04-27T16:36:18.112502338+01:00","message":"scheduler: starting task"}
{"level":"info","digest":"sha256:66d65d5468847c7ba56500a93aaf616e2151f33ec799917288c1d804d96b0c74","goroutine":38,"caller":"zotregistry.io/zot/pkg/storage/local/local.go:1831","time":"2023-04-27T16:36:18.112567617+01:00","caller":"zotregistry.io/zot/pkg/storage/local/local.go:1831","message":"rebuild dedupe: deduping blobs for digest"}
panic: listen tcp <IP_ADDRESS>:5000: bind: address already in use

goroutine 1 [running]:
zotregistry.io/zot/pkg/cli.newServeCmd.func1(0xc00139e300?, {0xc000ee66d0, 0x1, 0x1?})
	zotregistry.io/zot/pkg/cli/root.go:71 +0xdb
github.com/spf13/cobra.(*Command).execute(0xc00139e300, {0xc000ee6690, 0x1, 0x1})
	github.com/spf13/cobra@v1.7.0/command.go:944 +0x7e7
github.com/spf13/cobra.(*Command).ExecuteC(0xc00139e000)
	github.com/spf13/cobra@v1.7.0/command.go:1068 +0x3ac
github.com/spf13/cobra.(*Command).Execute(0xc0000061a0?)
	github.com/spf13/cobra@v1.7.0/command.go:992 +0x13
main.main()
	zotregistry.io/zot/cmd/zot/main.go:10 +0x18

Expected behavior
Exit code 1. No panic.
Screenshots
No response
Additional context
No response

There are others under pkg/cli which we should clean as well and replace with a non-zero os.Exit()


Parser.ParseFile should support specifying a session context

Steps to reproduce
Currently, when parsing PowerShell files, there is not way to pass a session context. Instead, PowerShell uses a global context. This means that we do no have a way to only specify modules which are only available to a function app. As a workaround, we can  install the modules locally in one of the global paths of $Env:PSModulePath. However, this will not work when working on Azure and it is a blocker for the PowerShell Functions v2 programming model which uses PowerShell 7.4.
This is the PowerShell API that we use the parse the files: https://learn.microsoft.com/en-us/dotnet/api/system.management.automation.language.parser.parsefile?view=powershellsdk-7.3.0
ScriptBlockAst? fileAst = Parser.ParseFile(powerShellFile.FullName, out _, out ParseError[] errors);

Would it be possible to get this fixed for PowerShell 7.4?
Expected behavior
For PowerShell hosted application, the function app dependencies might not be available in the global `$Env:PSModulePath`. As a result, parsing a file using the `Parser.ParseFile` will fail.

Actual behavior
Parser.ParseFile should take a session context with the modules available to the function app.

Error details
The exception is usually command not found.

Environment data
Name                           Value
----                           -----
PSVersion                      7.4.0-preview.3
PSEdition                      Core
GitCommitId                    7.4.0-preview.3
OS                             Microsoft Windows 6.2.9200
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

/cc @SteveL-MSFT @daxian-dbw @anatolib @shreyabatra4 @michaelpeng36

Could you double check the error message you're getting? The parser won't validate whether a command exists, that's done at execution time

@daxian-dbw / @SeeminglyScience -- I have added a repro as well as the exception information coming from Parser.ParseFile.

@Francisco-Gamino I cannot reproduce the issue within pwsh by following the repro steps.
Theoretically, the parsing of the psm1 file doesn't require a custom type to be resolved unless the type is used in a PowerShell class definition. Feel free to ping me to take a look at the issue together.


OPAL Console issue on fsp platforms.

Below test steps causes the console messages are not coming on fsp ipmi console.

Connect ipmi sol console
Power OFF/ON the system
IPL messages will be coming to ipmi console
Trigger system dump from FSP
Wait for system dump to finish & immediately IPL starts automatically.
System IPL happening & boots to host OS, but all this IPL messages are not coming into active ipmi
console which was activated at the start of test.
Issue is coming with latest skiboot code.

Do you see any output over IPMI (eg, Petitboot, host OS login prompt), or nothing at all?
Please post kernel and skiboot logs, either from Petitboot or the host OS depending on if you have Petitboot output or not.

Are you sure that the FSP's ipmi sol is intended for this use?  Does the content come over the normal virtual TTY protocol just fine and just not over ipmi sol?  If it is only a problem with SOL it is likely a problem with the FSP and not with skiboot (or any other open-source firmware).

@sammj yes, nothing over ipmi console, But system boots fine, In order to access the system, we need to deactivate existing console and connect again.
Okay, will attach the required logs
Thanks

opal_msg_log_55.txt

kernel_log_55.txt

@williamspatrick
i know skiboot output won,t come on FSP's ipmi sol console, But even petitboot kernel and host kernel boot messages are also not coming into ipmi sol console

I'm surprised that anything comes over the ipmi console.
Just to be clear, are you suggesting you see the kernel messages sometimes but not always on the ipmi console?
@tomjoseph83 - Is this something you are aware of the behavior from an FSP perspective?

@williamspatrick
To be clear i am not seeing any IPL or kernel messages all the times in-case of a system dump followed by immediate IPL. In all remaining situations Host firmware able to use FSP ipmi sol console except in the above case.

@pridhiviraj
I think i first step we can do to isolate the problem, is to see whether the console data is available on the vtty session.
Secondly was the IPMI SOL session was active throughout and did it disconnect.

@tomjoseph83
yes, ipmi sol session is active throughout.
How can i check whether the data is available on the vtty session?
Thanks

I'm surprised that anything comes over the ipmi console.

Unless we're talking about different things here, we should definitely be seeing output from the Petitboot kernel over IPMI. On FSP systems this is the primary interface to Petitboot.

I assumed, perhaps incorrectly, that the Vtty is the primary path like it is for PowerVM.

This issue is not reproducible if i try manually. the testcase automated here https://github.com/open-power/op-test-framework/pull/99/commits/f0d56376410c01d8c6d1915b3f6da5a9ac0af436 which is able to reproduce. To reproduce this issue we need to run this automated system dump testcase & connect ipmi sol console in parallel in a different terminal when test starts. And i am going to raise an internal bugzilla to track this issue as i am able reproduce with official firmware release build also. So closing the issue here.

Raised an internal BugZilla ID 150765

On Tue, 2017-01-17 at 07:26 -0800, Paidipeddi Pridhiviraj wrote:

@tomjoseph83
yes, ipmi sol session is active throughout.
How can i check whether the data is available on the vtty session?
Thanks

Also check in the OPAL log if you see VTY disconnection messages from
the FSP...
Cheers,
Ben.


Apply isort to pl_bolts/callbacks/variational.py

What does this PR do?
Fixes import formatting
Before submitting

[x] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together? Otherwise, we ask you to create a separate PR for every change.
[x] Did you make sure to update the documentation with your changes?
[x] Did you write any new necessary tests?
[x] Did you verify new and existing tests pass locally with your changes?
[x] If you made a notable change (that affects users), did you update the CHANGELOG?

PR review

[x] Is this pull request ready for review? (if not, please submit in draft mode)

Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

does it mean that we can drop pl_bolts.callbacks from the ignore list?

@Borda We actually have no ignore list for isort in Bolts.

does it mean that we can drop pl_bolts.callbacks from the ignore list?

@Borda We actually have no ignore list for isort in Bolts.

I see it is because we have a different check here, just checking diff on the PR, not full codebase...

does it mean that we can drop pl_bolts.callbacks from the ignore list?

@Borda We actually have no ignore list for isort in Bolts.

I see it is because we have a different check here, just checking diff on the PR, not full codebase...

Do we? I remember pre-commit only checks modified files, but I thought we have an import formatting check on the whole codebase as configured in:
https://github.com/PyTorchLightning/pytorch-lightning-bolts/blob/13863ccf1f96cb912406c029c50f4253f4599aee/.github/workflows/code-format.yml#L27

It looks that #448 has the same change as this PR


Updates from event

What this PR does / why we need it
Updates the website with event statistics; removes apply buttons, etc.
Some questions

[x] I have read the contributing guidelines
[x] I abide by this repository Code of Conduct

Special notes for your reviewer
@casassg can I get some statistics from the backend that I can here - like gender ratio, hacker map, etc.?

I added some stats that I could get from the admin dashboard. Is there more that I missed?
Also, can we embed the map you created - the map?

Yes, go for it 😄


Pulse  - no data for shift more or equal 10

Description
For shift more or equal 10 hours (this value depends on current time) no data is returned. If data can be stored only for such value then shift should be validated for maximum value and Day option can't be used.
Response : {"measurement":"ram","uuid":"86a797f8-5be3-42ba-90a7-526c7aad0468","range":"1w","aggregation":"4h","shift":"10h","result":[]}
Steps to reproduce

Login by user
Press Pulse in action box for any VM
Input all filters (1 day, 1 hour for example) and set 10 value for shift

Actual result
No data appears in chart, Shift buttons are inside the chart, Only 5 space numbers are visible in shift value input.
Expected result

Shift buttons are outside the chart if no data appears in chart
If there is any restriction for stored data period, the dropdown measure should be according restriction.
For example, if stored only last 10 hours then Day value in dropdown is incorrect.
Space numbers are according the maximun shift value according the restriction.

Screenshots

Connected requirements:

REQ_PLS_005
REQ_PLS_006
REQ_PLS_009
REQ_PLS_013
REQ_PLS_014
REQ_PLS_017
REQ_PLS_021
REQ_PLS_022
REQ_PLS_025

Not a bug. Lack of stats.

Not a bug. Lack of stats.

Ok, just needed to fix the layout of the shift button in charts.

@Nadya913 I don't get what to fix. It's normal if no stats. The system shouldn't care about that.

@bwsw @bwsw-Andrey-Andreev
The shift value input has the restriction in UI as maximum 100, the value more than 100 can't be set by increase button.
But you can input the value more than 100 by the keyboard.
Also, the visible size is for 5 digits.

Question: what the restriction we have for shift value?

@bwsw  Please see the comment above. What is preferable?

@Nadya913 @bwsw-Andrey-Andreev @evgeniiamokhova @nikonov1996 discussed with PO:
remove the constraint of 100 for the shift, a user should be able to enter any non negative integer value

TO TEST:
REQ_PLS_005,
REQ_PLS_010,
REQ_PLS_015

Actual result: When enter numbers and point in input, system clear field
Expected result: When enter numbers and point in input, system ignore point  and leave only numbers according to exception in REQ_PLS_005, REQ_PLS_010, REQ_PLS_015
Actual result: When enter plus and numbers in input, system don't change value on 0
Expected result: When enter plus in input, system change value on 0 according to REQ_PLS_005, REQ_PLS_010, REQ_PLS_015
Actual result: When enter negative number in input system change value on 0, but negative value is saved on other tabs
Expected result: When enter negative number in input system change value on 0, values on all tabs should be the same according to REQ_PLS_005, REQ_PLS_010, REQ_PLS_015

Fixed. It should work like Session timeout input in the Settings. But if this behavior isn't correct, create a separate ticket, please.


strip empty labels

I use some alerts with labels dynamically set and sometimes, some of them are empty.
There are configuration options to hide/strip labels by name, bot not by their value.
Is it possible to display them only if there value isn't empty ?

No it's not possible.

No it's not possible.

But can you plan it in future versions, or is there a good reason to not implement it ?

But can you plan it in future versions, or is there a good reason to not implement it ?

I think that the obvious solution is to fix whatever generates those labels, rather then trying to workaround downstream.

I think that the obvious solution is to fix whatever generates those labels, rather then trying to workaround downstream.

For example, consider a modified version of this kubernetes standard alert :
    - alert: KubePodCrashLooping
      expr: |-
        rate(kube_pod_container_status_restarts_total{job="kube-state-metrics"}[15m])
        * on(namespace, pod) group_left(label_my_useful_tag)
        kube_pod_labels
        * 60 * 5 > 0
      my_tag: '{{ if $labels.label_my_useful_tag}}{{ $labels.label_my_useful_tag}}{{ end }}'

With or without the embedded if, if the alert is thrown by a pod which don't have my_useful_tag, I obtain a empty value, and i don't see how to filter out this label without defining the alert twice (or factorial(number_of_optionnals_labels) ...)
It's just a "cosmetic" problem, but I don't see how to solve it :

For example, consider a modified version of this kubernetes standard alert :
    - alert: KubePodCrashLooping
      expr: |-
        rate(kube_pod_container_status_restarts_total{job="kube-state-metrics"}[15m])
        * on(namespace, pod) group_left(label_my_useful_tag)
        kube_pod_labels
        * 60 * 5 > 0
      my_tag: '{{ if $labels.label_my_useful_tag}}{{ $labels.label_my_useful_tag}}{{ end }}'

With or without the embedded if, if the alert is thrown by a pod which don't have my_useful_tag, I obtain a empty value, and i don't see how to filter out this label without defining the alert twice (or factorial(number_of_optionnals_labels) ...)
It's just a "cosmetic" problem, but I don't see how to solve it :

As a workaround which could be useful for other usages, you may consider a "style" or "class" directive, in addition to "color" one to add css styles or classes to items.
Then users may affect them to "display:none" or any other css directives

As a workaround which could be useful for other usages, you may consider a "style" or "class" directive, in addition to "color" one to add css styles or classes to items.
Then users may affect them to "display:none" or any other css directives

I still unconvinced that this sort of feature is unnecessary.
Looking at your alert it seems obvious to me that the only problem is that the rule trying to inject dynamic tags in a config file that's not really suitable for it.
There are 2 workarounds I could think of:

stop adding my_tag manually, if it's done just to rename some label (from label_my_useful_tag to my_tag) then why not use label_my_useful_tag? Especially that label_my_useful_tag will be there anyway.
create 2 alerts, after all you can have as many alert rules with the same name as you want, create one that matches metrics with label_my_useful_tag and one that matches metrics without it, and then inject my_tag where you know label_my_useful_tag is present:

    - alert: KubePodCrashLooping
      expr: rate(kube_pod_container_status_restarts_total{job="kube-state-metrics", label_my_useful_tag=""}[15m]) * 60 * 5 > 0

    - alert: KubePodCrashLooping
      expr: |-
        rate(kube_pod_container_status_restarts_total{job="kube-state-metrics", label_my_useful_tag=~".+"}[15m])
        * on(namespace, pod) group_left(label_my_useful_tag)
        kube_pod_labels
        * 60 * 5 > 0
      my_tag: '{{ $labels.label_my_useful_tag}}'

I still unconvinced that this sort of feature is unnecessary.
Looking at your alert it seems obvious to me that the only problem is that the rule trying to inject dynamic tags in a config file that's not really suitable for it.
There are 2 workarounds I could think of:

stop adding my_tag manually, if it's done just to rename some label (from label_my_useful_tag to my_tag) then why not use label_my_useful_tag? Especially that label_my_useful_tag will be there anyway.
create 2 alerts, after all you can have as many alert rules with the same name as you want, create one that matches metrics with label_my_useful_tag and one that matches metrics without it, and then inject my_tag where you know label_my_useful_tag is present:

    - alert: KubePodCrashLooping
      expr: rate(kube_pod_container_status_restarts_total{job="kube-state-metrics", label_my_useful_tag=""}[15m]) * 60 * 5 > 0

    - alert: KubePodCrashLooping
      expr: |-
        rate(kube_pod_container_status_restarts_total{job="kube-state-metrics", label_my_useful_tag=~".+"}[15m])
        * on(namespace, pod) group_left(label_my_useful_tag)
        kube_pod_labels
        * 60 * 5 > 0
      my_tag: '{{ $labels.label_my_useful_tag}}'


fix(personne-morale): fix filter for status

:tada: This PR is included in version 1.6.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


keras.layers.Concatenate could support list inputs with length 1

System information

TensorFlow version (you are using):

$ pip freeze | grep tensorflow
tensorflow==1.12.0rc1
tensorflow-estimator==1.10.12

Are you willing to contribute it (Yes/No): Yes

Describe the feature and the current behavior/state.
Currently, the tf.keras.layers.Concatenate only supports list inputs with length >= 2.
Considering that the vanilla tf.concat works with inputs of length 1, it would be nice if the keras layers implemented the same behavior.
import numpy as np
import tensorflow as tf

def test_tensorflow_concatenate(inputs):
    tf.concat(inputs, axis=-1)

    print("tf.concat works with {} inputs".format(len(inputs)))

def test_concatenate_layer_with_inputs(inputs):
    model = tf.keras.Sequential((
        tf.keras.layers.Concatenate(axis=-1),
        tf.keras.layers.Dense(32)))

    feed_dict = {
        input_: np.random.uniform(
            0, 1, (3, *input_.shape[1:].as_list()))
        for input_ in inputs
    }
    output = model(inputs)
    output_eval = tf.keras.backend.get_session().run(
        output, feed_dict=feed_dict)
    output_np = model.predict([feed_dict[key] for key in inputs])

    assert np.allclose(output_eval, output_np)

    print("tf.keras.layers.Concatenate with {} inputs".format(len(inputs)))

def main():
    input1 = tf.keras.layers.Input((1, ))
    input2 = tf.keras.layers.Input((2, ))

    test_tensorflow_concatenate([input1, input2])
    test_tensorflow_concatenate([input1])

    test_concatenate_layer_with_inputs([input1, input2])
    test_concatenate_layer_with_inputs([input1])

if __name__ == '__main__':
    main()

Will this change the current api? How?
No ValueErrors would be raised when calling the tf.keras.layers.Concatenate with input list of length 1.
Who will benefit with this feature?
Anyone who dynamically creates multi-input/-output keras models.
Any Other info.
n/a

Nagging Assignee @fchollet: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @fchollet: It has been 29 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.


Update dependencies

This is more or less a proof-of-concept to bump the dependencies of this repository. There have been several breaking changes, mainly from cardano-ledger and cardano-node so this is non-trivial with several undecided fixmes here and there. I've also been able to clean many Nix files by removing unused Plutus subdirs. I suspect we can still trim a lot more across the board.
Context: cardano-wallet is now a dependency of plutus-apps, making these bumps useful for dApp developers who aggressively bump plutus-apps themselves (for new PAB commits, node fixes, etc). While this is not critical and we have no preferences on how to handle it, both #3023 and this would be very useful to dApp developers. We are willing to contribute in any way we can as well.
Jira Issue
ADP-1266

Thanks @kk-hainq - we were going to wait until cardano-node 1.32.0 before updating. But please let us know if it's ready to review.

@rvl Thank you for the confirmation. This is just a draft from our fork to proceed for now. I think the actual update would need to be several more modular PRs. I guess something like #3023 would be a better start.

Closed in favour of #3050 (thank you!!).


graphs with no edges bring problems

Since the graphs are read from the edges files, if the graph has no edges it will have an empty set of edges, resulting in an empty file. This needs to be corrected.

This needs to be addressed obviously for a general usage. The graph generation also needs to be corrected to account for empty graphs with no edges and remove them?

initial perturbation file can be used to obtain the node names, but this is not a good option since the initial perturbation file could not have some of the node names inside it. I will probably use an additional folder where the graphs names are saved

the nodeDescriptionFile parameter can be used to pass all the nodes in place of the initial perturbation file, but this file needs to be defined if the edges file doesn't contain all the edges

Added parameter nodeDescriptionFolder to get the nodes for every graph, nodeDescriptionFile should only be used for the description of the nodes, nothing else.


No widget removed event

MPF has no event to signal when a widget has been removed.
An event should sent when a widget is removed following similar to logic when the slide_(name)_removed event occurs (but for a widget).

Along with mpf_mc PR 372, adds optional custom events for widget added and widget removed events using new widget properties events_when_added and events_when_removed.

Implemented in dev (0.53).  Docs have been updated as well (dev).


Hide Group By Control when no groups are given

Test Notes
Confirm that the "group by" control is hidden when no grouping variables are available. This can be tested on any data set by going to the settings tab and unchecking all group variables.

Works as expected


[Bug]: Automatic copyright

Give a brief about the bug ✍
The code contains manual copyright which needs to be changed every year manually.
What is the expected behavior? 🤔
I can add a automatic copyright code which reduces manual effort to update every year.
Provide step by step information reproduce the bug 📄
The code contains this manual copyright.
Assign this issue to me under GSSoC.


Added an option to configure a code actions folder

Use case: I'd like to load my own or 3rd party code actions into Omnisharp.
In this PR I added a possibility to add the following CodeActions node to the omnisharp.json.
{
    "FormattingOptions": {
        "IndentationSize": 2
    },
    "CodeActions": {
        "LocationPaths": [
            "C:/codeactions"
        ]
    }
}

This will be picked up by RoslynFeaturesHostServicesProvider as a source location for loading assemblies containing refactorings and code fixes.
Because omnisharp.json is hierarchical (global/local) we can specify code actions on a global and local level if needed.
No I could download something like https://marketplace.visualstudio.com/items?itemName=josefpihrt.Roslynator2017 and extract its DLLs into C:/codeactions and profit. Relative and absolute paths are supported.

The reason why I thought it might be a good idea is it could give a chance for user to opt-in into features not yet available as part of Roslyn, but already built in the community or self-built. (i.e. https://github.com/dotnet/roslyn/issues/8925 which has been requested already in Omnisharp repos and so on).
See: http://recordit.co/dEAKIBAvbl

Is this change all that interesting if we add a proper diagnostics engine that loads analyzers referenced by a project?

Is this change all that interesting if we add a proper diagnostics engine that loads analyzers referenced by a project?

however stand alone refactorings without analyzer (i.e. initalize a field from constructor, LINQ into foreach and so on) are installed as VSIX - they are not referenced by projects. So this PR attempts to cover only that use case.
Setting a code actions folder in a global omnisharp.json would be to me roughly equivalent to installing a VSIX into my Visual Studio.

The refactorings you mentioned will very likely be added to Roslyn itself.

yeah absolutely, then when they ship in the box, there is no need to opt into anything anymore 😃
But it's exactly the same case as with installing these types of add ons into Visual Studio.
but until then, if you wish, you could tap into anything from here https://github.com/JosefPihrt/Roslynator/tree/master/source/Refactorings/Refactorings or here https://github.com/code-cracker/code-cracker/tree/master/src/CSharp/CodeCracker/Refactoring or few other places that people have been building.
This also has the reverse effect - if I'm an author of a refactoring, I'm loving the fact that I can build it, and it works in VS and I there is a way that I can also load it through OmniSharp into VS Code and other places. In fact, for example, at work, I have some domain specific refactorings for internal purposes only, that developers in our organization install into their VS - I think it would be great to be able to load them into OmniSharp.
I think ultimately the discussion should be what are the potential extensibility point in OmniSharp, and I think this is an excellent candidate one, especially as, in a way, it aligns with Visual Studio so experience-wise should be intuitive.

Note: I'm not against this change. I'm just pushing on whether it's the right change, so we don't have to support it later if we decide that we should have done something else.

Would anyone complain if we called this a beta / alpha feature?  Perhaps annotate the code (and docs when we get there) to indicate that.
Ideally I'd love some sort of nuget based process going forward, but this is a nice segway into that.

An alternative solution to the same problem could be something like this:

someone creates a hypothetical ThirdPartyCodeActionProvider implementation of OmniSharp's ICodeActionProvider which subclasses our RoslynCodeActionProvider and introduces the type of functionality contained in this current PR (ability to load code actions from some external paths)
package is published into Nuget
user installs this Nuget package into, say,`%USERPROFILE%.omnisharp\plugins
at startup we scan that plugins folder and pick up the plugin and swap the default RoslynCodeActionProvider with ThirdPartyCodeActionProvider and everything else remains unchanged.

The difference would be omnisharp.json cannot participate anymore, so the plugin would need to have its own config file, but I think that's fine.
This could also have a different format, and the plugin could just bundle the code actions straight up and offer them as direct dependency - the downside here is that you'd need such dedicated loader for everything, rather than a having a more generic solution.

I'm wondering if the folder should have a more general name. Maybe "RoslynExtensions" instead of "CodeActions".  It would also load, say, CompletionProviders.

I'm wondering if the folder should have a more general name. Maybe "RoslynExtensions" instead of "CodeActions".  It would also load, say, CompletionProviders.

yes makes sense to me. We still need relevant exports to be there (i.e. ICodeActionProvider) to understand which types should be discovered, but as far as loading assemblies, indeed, it can bring in all kinds of extensions/add-ons.

@filipw: CI passed. I'm good with this change (only found a couple of tiny nits). Are there more changes you wanted to make?

Thanks guys, should be good to go.

I won the "merge first contest". :smile: Kicking this again.


Make sync_period configurable and add Dockerfiles

Add Dockerfile - Dockerfile.cloud-deployment that used by current cloud deployment
Rename two Dockerfiles to distinguish them - one for cloud deployment, and the other one for docker compose showcase
Make sync_period configurable by updating startup_kube.sh for Dockerfile.cloud-deployment to use
Update dependencies to make sure Dockerfile.cloud-deployment could be built successfully

@c1728p9 this is the same PR as #14. The reason why I created a new one is because the CI might not happy with my branch name but it doesn't seem to be like this. You could simply approve this if it still looks good to you.


LIB -> link to DB

connect to DB with READ/UPDATE/DELETE function. (per canvas)

Library is personal and exclusive to user.


[Bug]: snowflake_database from share throws Go exception

Terraform CLI Version
OpenTofu 1.7.0
Terraform Provider Version
0.88.0 or 0.92.0
Terraform Configuration
resource "snowflake_database" "target_database" {
    name = "ENV_SOME_DATABASE_NAME"
    comment = "Some database comment"

    from_share = {
        share_name = "SOURCE_SHARE_NAME"
        provider = "ACCOUNT_LOCATOR"  # (I have tried this in the ORG.ACCOUNT format and just the Account Locator format and it throws the same error)
    }

    provider = snowflake.some_account_provider
}

Category
category:resource
Object type(s)
resource:database
Expected Behavior
New database created from the share specified.
Actual Behavior
After a successful plan an error is thrown on apply:
╷
│ Error: Plugin did not respond
│
│ The plugin encountered an error, and failed to respond to the
│ plugin6.(*GRPCProvider).ApplyResourceChange call. The plugin logs may
│ contain more details.
╵

Stack trace from the terraform-provider-snowflake_v0.88.0 plugin:

panic: interface conversion: interface {} is nil, not string

goroutine 90 [running]:
github.com/Snowflake-Labs/terraform-provider-snowflake/pkg/resources.CreateDatabase(0x0, {0x1cd4500, 0xc000b14078})
	github.com/Snowflake-Labs/terraform-provider-snowflake/pkg/resources/database.go:114 +0x1046
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).create(0x2452b48, {0x2452b48, 0xc000d11a70}, 0xd, {0x1cd4500, 0xc000b14078})
	github.com/hashicorp/terraform-plugin-sdk/v2@v2.31.0/helper/schema/resource.go:766 +0x163
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).Apply(0xc000667ce0, {0x2452b48, 0xc000d11a70}, 0xc0009f7a00, 0xc00082f180, {0x1cd4500, 0xc000b14078})
	github.com/hashicorp/terraform-plugin-sdk/v2@v2.31.0/helper/schema/resource.go:909 +0xa89
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).ApplyResourceChange(0xc000a29410, {0x2452b48, 0xc000d118c0}, 0xc000c07ef0)
	github.com/hashicorp/terraform-plugin-sdk/v2@v2.31.0/helper/schema/grpc_provider.go:1074 +0xdbc
github.com/hashicorp/terraform-plugin-mux/tf5to6server.v5tov6Server.ApplyResourceChange({{0x24689e0, 0xc000a29410}}, {0x2452b48, 0xc000d118c0}, 0x0)
	github.com/hashicorp/terraform-plugin-mux@v0.13.0/tf5to6server/tf5to6server.go:37 +0x54
github.com/hashicorp/terraform-plugin-mux/tf6muxserver.(*muxServer).ApplyResourceChange(0x2452b80, {0x2452b48, 0xc000d115c0}, 0xc000c07ea0)
	github.com/hashicorp/terraform-plugin-mux@v0.13.0/tf6muxserver/mux_server_ApplyResourceChange.go:36 +0x193
github.com/hashicorp/terraform-plugin-go/tfprotov6/tf6server.(*server).ApplyResourceChange(0xc000a38b40, {0x2452b48, 0xc000d10bd0}, 0xc000b03260)
	github.com/hashicorp/terraform-plugin-go@v0.20.0/tfprotov6/tf6server/server.go:857 +0x56b
github.com/hashicorp/terraform-plugin-go/tfprotov6/internal/tfplugin6._Provider_ApplyResourceChange_Handler({0x2026fc0, 0xc000a38b40}, {0x2452b48, 0xc000d10bd0}, 0xc00082e600, 0x0)
	github.com/hashicorp/terraform-plugin-go@v0.20.0/tfprotov6/internal/tfplugin6/tfplugin6_grpc.pb.go:503 +0x169
google.golang.org/grpc.(*Server).processUnaryRPC(0xc000142d20, {0x2452b48, 0xc000d10b40}, {0x2463c60, 0xc000afa000}, 0xc000d0e7e0, 0xc000ad4f00, 0x345ae58, 0x0)
	google.golang.org/grpc@v1.60.0/server.go:1372 +0xe03
google.golang.org/grpc.(*Server).handleStream(0xc000142d20, {0x2463c60, 0xc000afa000}, 0xc000d0e7e0)
	google.golang.org/grpc@v1.60.0/server.go:1783 +0xfec
google.golang.org/grpc.(*Server).serveStreams.func2.1()
	google.golang.org/grpc@v1.60.0/server.go:1016 +0x59
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 14
	google.golang.org/grpc@v1.60.0/server.go:1027 +0x115

Error: The terraform-provider-snowflake_v0.88.0 plugin crashed!

This is always indicative of a bug within the plugin. It would be immensely
helpful if you could report the crash with the plugin's maintainers so that it
can be fixed. The output above should help diagnose the issue.

Steps to Reproduce

Create share in source account
Grant usage on database to share using snowflake_grant_privileges_to_share resource
Grant usage on schema(s) to share using snowflake_grant_privileges_to_share resource
Grant select on tables(s) to share using snowflake_grant_privileges_to_share resource
Grant select on views(s) to share using snowflake_grant_privileges_to_share resource
Create database in target account from share created in step 1 using snowflake_database resource

How much impact is this issue causing?
High
Logs
No response
Additional Information
In the target account, when I look at the query history, I can tell that the provider has not attempted to create the database. This tells me the there is a failure in the Go code before it get's to the point of executing SQL statements against the account.
Would you like to implement a fix?

[ ] Yeah, I'll take it 😎

Hey @Bryan-Meier. Thanks for reaching out to us.
The database resource was redesigned deeply and will be released as part of v0.93.0. Please try the new resource out after the release (expected at the end of the next week).

Also, I believe it should be share instead of share_name inside the from_share block (according to example from https://registry.terraform.io/providers/Snowflake-Labs/snowflake/0.92.0/docs/resources/database#example-usage). Could you try if that helps?

I'm a bit embarrassed to say that I leaned a little to heavy on GitHub Copilot to generate my initial stub of code and didn't catch that the snowflake_database resource didn't match the documentation. I should have caught that. 😦
I apologize for the false alarm.


Turn cursor to pointer when hovered upon navbar links

New Mockup
Please check assets/css/global.css, design-assets folder images, and figma files for updated style guides. Any new pull request should use the updated color, spacing, and sizing variables.
No Bootstrap or jQuery
Please refrain from adding Bootstrap or jQuery to the site. These pr's will be closed. They overwrite global styles. Vanilla CSS and JS is way better now anyways 😊
New Task:
What is the task
When hovered upon the links in the navbar, the cursor should turn to a pointer.
Who is the task for?

[x] I created this task for me to complete, I will create a PR soon.
[ ] I created this task for someone else to claim.
[ ] I think this is a task that multiple people can do

Confirm all of the following:

[x] I have looked at all the issues currently available and this does not exist or overlap with another ticket

⚠ PLEASE ONLY SUBMIT A PR FOR THIS TASK IF THIS TASK WAS AVAILABLE FOR YOU TO CLAIM

Can make a PR for this issue?


feat(search-client): Add support for Custom Search Clients

This PR adds supports for the searchClient parameter. This allows any InstantSearch user to plug his own search client (including a custom Algolia backend).
Summary
The goal is to add support for this new feature but to still make InstantSearch work as it works right now. This is meant to be released in the next minor version. Checks have been made to make sure both APIs (current and new) don't collide.
// With the Algolia JS client
instantsearch({
  indexName: 'concert_events_instantsearchjs',
  searchClient: algoliasearch('latency', '059c79ddd276568e990286944276464a'),
});

// With a custom search client
instantsearch({
  indexName: 'concert_events_instantsearchjs',
  searchClient: {
    search(requests) {
      // perform requests...
      return response;
    },
  },
});

Features

Add searchClient option to plug a custom search client (other than algoliasearch)
Deprecate createAlgoliaClient in favor of searchClient
Add tests to make sure the current and new API don't collide

Releasing strategy

the next minor version will embed algoliasearch, although we ship this new searchClient parameter
the next major version will get rid of algoliasearch that will need to be imported beforehand and plugged to searchClient

Demo
You can check the Calendar Widget demo using InstantSearch with searchClient: https://instantsearch-search-client.now.sh

Let me know if I've forgotten any parameter collision 🙌

Waiting for #2903 to get merged to remove these lines: https://github.com/algolia/instantsearch.js/blob/de182ab7386bb442851bc2540fa125b52b68efae/src/lib/InstantSearch.js#L115-L116

@francoischalifour, in that case, is the object.create even still necessary?


Support for MySQL 8

Seems like Falcon does not support new MySQL 8.0 authentication format:

ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

This is because the MySQL client library doesn't seem to support MySQL 8.0 yet.
$ grep mysql package.json
    "mysql": "^2.15.0",

They have an open issue for this: https://github.com/mysqljs/mysql/issues/2002

Looks like falcon uses sequelize, which uses mysql instead of the official MySQL Connector/node.js
So looks like there are two possible solutions:

Fix MySQL 8.0 support in mysqljs/mysql
1.1. Allow connections to accounts that use the old mysql_native_password (easy)
1.2. Add support for caching_sha2 authentication
Add mysqlx dialect to sequelize (using @mysqlx/xdevapi ), re-using some/most of the mysql dialect.


Same answer for two completely different questions

Hi,
here is how I trained my chatbot.
question: Genesis 1:1
answer: In the beginning, God created heavens and the earth
question: Exodus 1:1
answer: These are the names of the sons of the Israel who came to Egypt with Jacob, each with his household
Issue -->
if I ask the question exodus 1:1 or Genesis 1:1 , it is giving me the same answer which is for Genesis 1:1
Could you please help ?
Here is my logic:
from chatterbot import ChatBot
from chatterbot.response_selection import get_first_response
from chatterbot.comparisons import levenshtein_distance
{
"import_path": "chatterbot.logic.BestMatch",
"statement_comparison_function": levenshtein_distance,
"response_selection_method": get_first_response
},
    {
                'import_path': 'chatterbot.logic.BestMatch',
                'threshold': 0.99,
                'default_response': 'I am sorry, but I do not understand.'
    },

I think you need to consider, what do you expect as an answer?
That is a very vague question for a chatbot. Are you looking for preference, length of verse, how many words are you comparing, etc.?
What would you be expecting if someone asks genesis 1:1 or genesis 100:5 or anything that’s not encoded in your database?

Thank you for your response.
sorry, I am just using the default logic found in documentation.  so, not sure how many words it will match before giving me the answer. I am expecting it to return " I am sorry, but I do not understand' when it does not find anything in my database.
I am looking for the exact match as my training data specifically fed it Genesis 1:1  , Exodus 1:1
so, looks like it is just going by 1:1 and giving me the answer. how can I alter my code to match the entire string as oppose to just 1:1 ?

You should look into "SpecificResponseAdapter"
Try running the code with the log enabled, with this code at the beginning of your file:
import logging
logging.basicConfig(level=logging.INFO)
So you can see why its selecting that answer

thank you. I tried it and here is the log info I got when I searched for Exodus 1:1
confidence is more for Exodus still confused on why it is choosing Genesis with a confidence of 0.57 :-(
INFO:chatterbot.chatterbot:Beginning search for close text match
INFO:chatterbot.chatterbot:Processing search results
INFO:chatterbot.chatterbot:Similar text found: Genesis 1:1 0.57
INFO:chatterbot.chatterbot:Similar text found: Exodus 1:1 1.0
INFO:chatterbot.chatterbot:Using "Exodus 1:1" as a close match to "Exodus 1:1" with a confidence of 1.0
INFO:chatterbot.chatterbot:Selecting response from 12 optimal responses.
INFO:chatterbot.response_selection:Selecting first response from list of 12 options.
INFO:chatterbot.chatterbot:Response selected. Using "In the beginning God created the heavens and the earth."
INFO:chatterbot.chatterbot:BestMatch selected "In the beginning God created the heavens and the earth." as a response with a confidence of 1.0
INFO:chatterbot.chatterbot:Beginning search for close text match
INFO:chatterbot.chatterbot:Processing search results
INFO:chatterbot.chatterbot:Similar text found: Genesis 1:1 0.57
INFO:chatterbot.chatterbot:Similar text found: Exodus 1:1 1.0
INFO:chatterbot.chatterbot:Using "Exodus 1:1" as a close match to "Exodus 1:1" with a confidence of 1.0
INFO:chatterbot.chatterbot:Selecting response from 12 optimal responses.
INFO:chatterbot.response_selection:Selecting first response from list of 12 options.
INFO:chatterbot.chatterbot:Response selected. Using "In the beginning God created the heavens and the earth."
INFO:chatterbot.chatterbot:BestMatch selected "In the beginning God created the heavens and the earth." as a response with a confidence of 1.0

The answer is here:
"INFO:chatterbot.response_selection:Selecting first response from list of 12 options."
Your code is selecting the first of 12 possible answers:
"response_selection_method": get_first_response

could you please let me know how can I tweak it to select the appropriate response?

As I was telling you before, the issue is "personal".
What do you need your bot to answer?
Based on that you need to prepare your corpus and the logic accordingly.


WASM build

Hi! Thanks for the amazing work you're doing!
I've tried to integrate rust-bitcoin lib into some project that has WASM as a target and run into issues compiling it, at least on mac. The issues were mostly related to the libsecp256k1. I've checked the lib issues, and there was indeed some PR merged a couple of days ago that was fixing the WASM build. I've tried using it, but if I use rust-bitcoin as a dependency, the project won't compile anyway. I probably could tweak the build script and figure out how to make it work. I also was wondering if you are considering switching to pure rust libsecp265k1. There's a pure Rust implementation by Polkadot: https://github.com/paritytech/libsecp256k1. Is that something you're considering? If that is so, I probably could do the migration for you.
Thank you!

We are not switching off of rust-secp256k1. I am very disappointed to see that a pure Rust implementation of these crypto primitives is being marketed as production ready, given extremely sketchy sidechannel story for the Rust language.
The next version of rust-bitcoin, which will be released this weekend, will depend on the latest version of rust-secp, which should fix your compilation issue.

Thank you for the answer, @apoelstra! What exact sidechannel story are you talking about? I would love to read about it to learn more. Thank you!

I believe the only "reliable" way to resolve sidechannel attacks is using assembly which should be supported in newer versions of Rust (but calling it "pure Rust" is kinda weird then). C itself can't guarantee constant time or other properties either. It literally uses the same optimizer underneath.
I put "reliable" in quotes because CPUs don't guarantee shit either. :man_shrugging:
Another issue with pure Rust implementation is choosing exact same name as the C implementation that could confuse people.

Wow, kudos for such great work!

@apoelstra That's is amazing work! And also thank you very much for the explanation,I appreciate it! Thank you!

I'd also like to note that parity's secp implementation at least originally (Idk what's the current status) was mainly just copying the C code from libsecp256k1 without fully grasping what's happening there, you can see this as an example: https://github.com/paritytech/libsecp256k1/commit/3126fd213c1c02d44c3c8779e3bed3f8763cc02d
(You can see the original code here: https://github.com/bitcoin-core/secp256k1/blob/8746600eec5e7fcd35dabd480839a3a4bdfee87b/src/scalar_4x64_impl.h#L158:L167, and that it uses a binary OR(|) and not a logical OR (||) like the parity's one used)

Users should be able to compile rust-bitcoin+rust-secp256k1 to WASM, and use LTO to remove unused parts (say if they don't use signing at all)

@dpc there was a discussion about making the C library optional, without which it wouldn't support cryptographic operations, just parsing with Rust-reimplemented check of the point being on curve etc.

@dpc agreed. It is tempting to allow swapping out to a pure-Rust implementation of the verification logic. My fear then changes from constant-timeness to consensus compatibility though. (I know there aren't a lot of wasm implementations that really care about consensus compatibility, but this is a subtle thing where mistakes are very hard to notice, so it's a road that I don't want to go down..)
@Kixunil we'd discussed making the C library optional and then implementing a few simple things (e.g. key/signature parsing/validation) in pure Rust. But implementing actual crypto, even crypto that doesn't touch secret keys, makes me nervous.

There are many applications that don't require crypto so having a bitcoin library without it should be already valuable.

This seems to be an issue still:
> cargo init
> echo 'bitcoin = "*"' >> Cargo.toml
> cargo build --release --target wasm32-unknown-unknown
   Compiling bitcoin_hashes v0.11.0
   Compiling bech32 v0.9.1
   Compiling secp256k1-sys v0.6.0
The following warnings were emitted during compilation:

warning: error: unable to create target: 'No available targets are compatible with triple "wasm32-unknown-unknown"'
warning: 1 error generated.

error: failed to run custom build command for `secp256k1-sys v0.6.0`

I also tried adding secp256k1 = {version = "0.24.0", features = ["global-context-less-secure"]} suggested in another thread but it still fails

@mcdallas If you're building on a mac, you need to install clang through the homebrew, as XCode's bundled clang doesn't provide the wasm target support. You can do it with homebrew: brew install llvm. For some reason, XCode highjacks the linker even if you export PATH and set all the env variables in the .zshrc, so to build something afterward you'll need to set those variables directly: AR=/usr/local/opt/llvm/bin/llvm-ar CC=/usr/local/opt/llvm/bin/clang wasm-pack build. I hope this helps!

Thanks I am indeed on MacOS, both targets work now after replacing the stock clang as @antouhou suggested

Actually I has forgotten that I've opened this issue a while ago. Everything has been working for quite a while now, thank you!

@mcdallas If you're building on a mac, you need to install clang through the homebrew, as XCode's bundled clang doesn't provide the wasm target support. You can do it with homebrew: brew install llvm. For some reason, XCode highjacks the linker even if you export PATH and set all the env variables in the .zshrc, so to build something afterward you'll need to set those variables directly: AR=/usr/local/opt/llvm/bin/llvm-ar CC=/usr/local/opt/llvm/bin/clang wasm-pack build. I hope this helps!

For anybody running into this issue in 2024, homebrew changed the path where it installs llvm, so set your variables to these instead in your .zshrc:
AR=/opt/homebrew/opt/llvm/bin/llvm-ar
CC=/opt/homebrew/opt/llvm/bin/clang

Then wasm-pack build will work as expected after sourcing your .zshrc!


Offline bundle documentation out of date

See https://github.com/facebook/react-native/blob/master/docs/RunningOnDeviceIOS.md#using-the-offline-bundle
In particular 'Uncomment the line, jsCodeLocation = [[NSBundle mainBundle] ..'
The app delegate file no longer contains that line (since 0.29). So it is not clear how to build a production version of the app. I am not sure if incorrect documentation counts as a bug but this seems like a pretty important thing to sort out . . .

@facebook-github-bot label Documentation

I was just going to add this.
It seems when selecting Release in the Build Configuration of the Scheme there is no more need to edit that line.

How do you load js from a url since 0.29??  I'm trying (and failing) to test on a  physical device.

It looks like it is supposed to be detecting the i.p address automatically
You might want to try logging what the host string gets in RCTBundleURLProvider.m

It looks like it is supposed to be detecting the i.p address automatically

Yes, that was my experience as well with 0.29.0.
@npomfret what problem are you having?

If I run on a physical device now it loads the offline bundle only (and by default).  So I can't shake to reload the javascript files any more.
The upgrade process react-native upgrade is a nightmare in terms of merging.  Maybe I missed something.  Any idea what I should look for?

I am seeing a slightly different problem where it keeps loading the server bundle instead of the static bundle. I am trying to release to AppStore as well. Is the documentation missing something for releasing to AppStore.

If I run on a physical device now it loads the offline bundle only (and by default). So I can't shake to reload the javascript files any more.

@npomfret are you compiling for release or debug on your build configuration?
If you are compiling for release then the debug menu and loading JS from the dev server are automatically disabled.

Thanks for the reply - how do I check please? I see a debug menu if I shake the phone so I believe I'm running a debug configuration when I press run in xcode.  If I look at the scheme under Run it says Debug executable.
I've not changed anything, other than upgrading from RN 0.28 to RN 0.29.
I just don't see a way to tell the app to load JS from my laptop instead of the pre packed bundle any more.

If you can see the menu you are indeed in debug mode.
Loading the files from your dev server on your laptop should happen automatically since 0.29.0.

I have the same problem with @npomfret
On simulator it's fine, but on physical device, it loads pre-bundled only. :(
I changed schema as @PierBover 's comment but no luck.

@JosephDev - checkout my solution here: https://github.com/facebook/react-native/issues/8358

Hi there! This issue is being closed because it has been inactive for a while.
But don't worry, it will live on with ProductPains! Check out its new home: https://productpains.com/post/react-native/offline-bundle-documentation-out-of-date
Product Pains has been very useful in highlighting the top bugs and feature requests:
https://productpains.com/product/react-native?tab=top
Also, if this issue is a bug, please consider sending a pull request with a fix.

I've been stuck in this problem, my app is working fine in debug mode but when I test it using release mode it stuck with unknown error on main.jsbundle. I am using RN v0.43.


Add keepalive option to upstreams configuration

Reference: http://nginx.org/en/docs/http/ngx_http_upstream_module.html#keepalive

lgtm

PR on source repo:
https://github.com/geerlingguy/ansible-role-nginx/pull/65


Add Unit testing

Current project have no unit test (we can implement them using undici MockAgent etc).

I take

FYI I have added first tests in #13 (I didn't see this issue)
The Github API fixtures should help, it's also possible to make something cleaner i guess.

@fabnguess Yeah it is, don't hesitate ;)

I take it :)


Error after upgrade to alpha 6: TypeScript cannot find HammerManager

Been using alpha 5-2 along with Angular 2 rc.3 with no issues.  Today I updated to ng2 rc4 as well as material2 alpha 6 and now typescript throws the following error during compilation:

/@angular2-material/core/gestures/MdGestureConfig.d.ts(4,40): error TS2304: Cannot find name 'HammerManager'.

After reading the discussion at #535, I added HammerJS to my typings.json
{
  "globalDependencies": {
    "core-js": "registry:dt/core-js#0.0.0+20160602141332",
    "hammerjs": "registry:dt/hammerjs#2.0.4+20160417130828",
    "jasmine": "registry:dt/jasmine#2.2.0+20160621224255",
    "node": "registry:dt/node#6.0.0+20160621231320"
  }
}

That didn't fix the error (even if I set tsconfig's exclude to []. It's a bit disconcerting that a 3rd party library is throwing errors during compilation. Shouldn't you include all the d.ts files you rely on?
To quiet the error down, I added the following to my bootstrap main.ts
///<reference path="path/to/typings/globals/hammerjs/index.d.ts"/>

After you and HammerJS,have you try typings i?That fix my error

I first noticed and reported this error after the upgrade from alpha 5 to alpha 6.  Now, after upgrading to alpha 7, it still occurs during Typescript compilation
@angular2-material/core/gestures/MdGestureConfig.d.ts (4,40):
error TS2304: Cannot find name 'HammerManager'

As a workaround:

Install hammerjs typing.  Add the following to typings.json

"hammerjs": "registry:dt/hammerjs#2.0.4+20160417130828"

Run npm run typings install

If the error persists, add a reference to the typings file in your main.ts file (adjust the path to get to hammerjs/index.d.ts)

///<reference path="../typings/globals/hammerjs/index.d.ts"/>

Same here none of the mentioned solutions worked for me.
alpha.7 versions and, angular-cli@webpack and RC5 versions

I fixed following these steps: https://github.com/justindujardin/ng2-material/issues/244#issuecomment-241600752

Same error is thrown if you only use MdMenuModule.


[release-0.3] Fix verify-previous-version Makefile target

manual cherry-pick #131

/retest

Timeout error :shrug:
   [FAILED] Timed out after 300.009s.
  Expected
      <bool>: false
  to be true

/retest

/retest

/lgtm

oh sure, this is a manual cherry-pick :facepalm:

/lgtm