Fix resolve notifications

This PR introduces a fundamental change to the protobufs gossiped, because the previously optimization we implemented for the 0.5 release did not turn out to work as expected. Instead we now gossip the entire list of previously firing and resolved alerts, so if the currently firing alerts are a subset of the alerts that were firing at the last notification, then we can deduplicate. It works the same way for resolved notifications, if the currently resolved alerts are a subset of those that have already been notified about then they are deduplcated. Consequently, if currently firing or resolved alerts are not a subset of the previous sets, then they need to be notified about (after the group_interval). This means the payload that is gossiped increases significantly, however, I decided against a premature optimization and rather benchmark this implementation if a load problem actually comes up.
I wanted to get this out for people to test, who have been struggling with this issue for a while. As this is quite a fundamental change and touches most of the critical parts of the notification pipeline I would like to test this a bit before having it ready to merge. /cc @ddewaele @tsboj17 @mattbostock
Fixes #611 and #598
@fabxc @stuartnelson3 @mxinden

Applied all your comments @fabxc. Care for a re-review? :slightly_smiling_face:

Currently pondering with releasing it now or waiting a bit more to try to get in a first version of the new UI. I suppose you prefer the fix sooner?
In general, nothing speaks against two releases in short proximity.

I vote for getting the fix out, and then we just make another release when the UI is ready. Last release was back in November, and there have been many additions since then.

@fabxc Sooner rather than later would be appreciated as this bug has the potential to create a lot of noise.
#717 (solving #609) is also an important fix, though I think the current implementation may preclude backporting it.

Looks like this is included in 0.6.0 though not mentioned in the release description or the CHANGELOG:
https://github.com/prometheus/alertmanager/releases/tag/v0.6.0
Thanks!

Is it actually included in the 0.6.0 release? I'm seeing an infinitely firing "resolved" alert on 0.6.1?

@damomurf can you describe the scenario more precisely? Those things are hard to debug without a detailed timeline of when alerts were flowing in and what the exact notification behavior was.
A reproducible scenario is ideal, of course.

Sure @fabxc, I appreciate it's difficult to solve without being able to reproduce.
So currently, I have an "alert resolved" message being fired to Slack every three hours. The actual alert was resolved days ago and if I visit current alerts in either AlertManager or Prometheus, they're both empty.
[RESOLVED] ElasticSearchClusterStatus account (/monitoring/es-exporter hostnane:port marathon-discovery-aws mesos-monitor)

I assume 3 hours is your configured repeat interval. Restarting the AMs should solve it (but is not a viable solution obviously), will try to reproduce it later but it sounds like some edge case that went wrong and it could be hard to hit it manually again.

That's correct, 3 hours is the timeout. This is a single instance of Alertmanager, if that helps?


The color scheme is overwritten after a restart

Hello my friend.
I am using this version (https://github.com/doki-theme/doki-theme-jetbrains/releases/tag/v12.5.0).
But I found a small problem, as I was using a custom color scheme, after restarting I found that the color scheme was reset back to the default color scheme of the current theme.
So I need to set it all over again, can you try to reproduce this issue?

Incidentally, it seems that the color scheme of the "IDE Error Occurred" dialog box is not normal compared to the previous version.

Incidentally, it seems that the color scheme of the "IDE Error Occurred" dialog box is not normal compared to the previous version.

:thinking: I'll assume that you are using the 2020.1 EAP build
This is what I am currently running now.
IntelliJ IDEA 2021.1 EAP (Ultimate Edition)
Build #IU-211.4961.33, built on January 27, 2021

I wonder what they did. I haven't changed anything related to the color scheme settings.
I'll try to reproduce the issue.

Incidentally, it seems that the color scheme of the "IDE Error Occurred" dialog box is not normal compared to the previous version.

Yeah I think I saw that too. It's new to the 2021 EAP build. It's on my list to see if I can fix.

:thinking: I'll assume that you are using the 2020.1 EAP build
This is what I am currently running now.
IntelliJ IDEA 2021.1 EAP (Ultimate Edition)
Build #IU-211.4961.33, built on January 27, 2021

I wonder what they did. I haven't changed anything related to the color scheme settings.
I'll try to reproduce the issue.

Incidentally, it seems that the color scheme of the "IDE Error Occurred" dialog box is not normal compared to the previous version.

Yeah I think I saw that too. It's new to the 2021 EAP build. It's on my list to see if I can fix.

I'll assume that you are using the 2020.1 EAP build

Yep
IntelliJ IDEA 2021.1 EAP (Community Edition)
Build #IC-211.4961.33, built on January 28, 2021

I'll assume that you are using the 2020.1 EAP build

Yep
IntelliJ IDEA 2021.1 EAP (Community Edition)
Build #IC-211.4961.33, built on January 28, 2021

At first I thought it might be that the restart didn't save the settings correctly, but I still got the color scheme reset when I restarted after exiting normally.

At first I thought it might be that the restart didn't save the settings correctly, but I still got the color scheme reset when I restarted after exiting normally.

Oh, and if you can't reproduce it then maybe it's an OpenJDK issue.
I am using OpenJDK 15.
https://bugs.openjdk.java.net/browse/JDK-8254975
This is a bug I submitted to OpenJDK some time ago that affected some behavior of IDEA.
I will try to update to OpenJDK 16, Java16 support was not available until 2021.1. (Previously JPS could not build Java16 projects because errors would occur when calling Javac.)

Oh, and if you can't reproduce it then maybe it's an OpenJDK issue.
I am using OpenJDK 15.
https://bugs.openjdk.java.net/browse/JDK-8254975
This is a bug I submitted to OpenJDK some time ago that affected some behavior of IDEA.
I will try to update to OpenJDK 16, Java16 support was not available until 2021.1. (Previously JPS could not build Java16 projects because errors would occur when calling Javac.)

Unfortunately, I upgraded to OpenJDK16 and the problem still exists.

It will be reset to Beatrice after restart.

Unfortunately, I upgraded to OpenJDK16 and the problem still exists.

It will be reset to Beatrice after restart.

It seems that this problem occurs on the original theme as well.
I will go to Youtrack and open an issue.

It seems that this problem occurs on the original theme as well.
I will go to Youtrack and open an issue.

I would hold off on that. I've uninstalled this plugin, and the issue goes away (I think)

I would hold off on that. I've uninstalled this plugin, and the issue goes away (I think)

Okay so here is what I found.
Without doki theme

Using a 3rd party theme (non-doki) and setting a custom editor scheme will revert back to  the default editor scheme after restart (unexpected behavior).
Using a built in scheme (such as darcula) and setting a custom editor scheme will retain custom editor scheme after restart (expected behavior).

This was with both bundled and the open jdk 15 runtimes.
With doki theme v12.5.0
With open jdk 15 runtime:

Using a doki theme and setting a custom editor scheme will revert back to  the default doki editor scheme (unexpected behavior).
Using a 3rd party theme (non-doki) and setting a custom editor scheme will revert back to  the default editor scheme (unexpected behavior).
Using a built in scheme (such as darcula) and setting a custom editor scheme will retain custom editor scheme (expected behavior).

With bundled runtime:

Using a doki theme and setting a custom editor scheme will retain custom editor scheme  after restart (expected behavior) :confused: .
Using a 3rd party theme (non-doki) and setting a custom editor scheme will retain custom editor scheme  after restart (expected behavior).
Using a built in scheme (such as darcula) and setting a custom editor scheme will retain custom editor scheme  after restart (expected behavior).

Results
Somehow I fixed the issue with the editor scheme switching problem with the bundled runtime with the doki-theme. Which is very confusing :confounded: But it is still an issue that needs to be fixed in the 2021 platform.
Suggested next steps
@NekoCaffeine Please submit a YouTrack issue as this is an issue with the platform (if you haven't already). Given that using the bundled runtime and a 3rd party theme, when you restart, it resets the editor color scheme to the theme default and not the custom one set. I'd be happy to provide supporting information if you want to link the issue here. However, since this isn't an issue with this plugin, imma close this issue. Thanks for your continued interest though!

Okay so here is what I found.
Without doki theme

Using a 3rd party theme (non-doki) and setting a custom editor scheme will revert back to  the default editor scheme after restart (unexpected behavior).
Using a built in scheme (such as darcula) and setting a custom editor scheme will retain custom editor scheme after restart (expected behavior).

This was with both bundled and the open jdk 15 runtimes.
With doki theme v12.5.0
With open jdk 15 runtime:

Using a doki theme and setting a custom editor scheme will revert back to  the default doki editor scheme (unexpected behavior).
Using a 3rd party theme (non-doki) and setting a custom editor scheme will revert back to  the default editor scheme (unexpected behavior).
Using a built in scheme (such as darcula) and setting a custom editor scheme will retain custom editor scheme (expected behavior).

With bundled runtime:

Using a doki theme and setting a custom editor scheme will retain custom editor scheme  after restart (expected behavior) :confused: .
Using a 3rd party theme (non-doki) and setting a custom editor scheme will retain custom editor scheme  after restart (expected behavior).
Using a built in scheme (such as darcula) and setting a custom editor scheme will retain custom editor scheme  after restart (expected behavior).

Results
Somehow I fixed the issue with the editor scheme switching problem with the bundled runtime with the doki-theme. Which is very confusing :confounded: But it is still an issue that needs to be fixed in the 2021 platform.
Suggested next steps
@NekoCaffeine Please submit a YouTrack issue as this is an issue with the platform (if you haven't already). Given that using the bundled runtime and a 3rd party theme, when you restart, it resets the editor color scheme to the theme default and not the custom one set. I'd be happy to provide supporting information if you want to link the issue here. However, since this isn't an issue with this plugin, imma close this issue. Thanks for your continued interest though!


[Python] Port Spanish DateTime Recognizer to Python

This PR includes:

DateTime Recognizer (duration, date, time, datetime, dateperiod, timeperiod, datetimeperiod, set, holiday and merged) for Spanish
Include Python in DateTime data-driven tests
Minor fixes for bases datetime extractors and parsers
Update init.py files

@amitstein, unfortunately due to an test infrastructure fix, there are now many specs conflicts in the PR.

Hi @tellarin, the specs conflicts were resolved.


Update global application example of AutoValidateAntiForgeryTokenAttribute

I replaced services.AddMvc with services.AddControllersWithViews as the way to apply filters globally was changed with the release of ASP.NET Core 3

@martinmladenov  thanks for this. Check my commit. We need to maintain the 2.1 version.

@Rick-Anderson Thank you. Keeping the 2.1 example is certainly a good idea.


FragmentCache doesn't clean view's cacheStack on empty content

When nested cache components has empty content parent component doesn't handle dynamic content.
Code from FragmentCache::run():
            if ($content === false || $content === '') {                 return;             }             array_pop($this->getView()->cacheStack);
so when content is empty array_pop is not called.
Then:
 if (empty($this->getView()->cacheStack) && !empty($this->dynamicPlaceholders)) {                 $content = $this->updateDynamicContent($content, $this->dynamicPlaceholders);             }
and empty($this->getView()->cacheStack) returns false.
So i get unhandled dynamic placeholders in parent component.

Q
A

Yii vesion
2.0.7

PHP version
5.6.17

Operating system

Any progress with this issue?

This bug was introduced by me, I will look at it soon.


Better knockback

📝 Description
Cancel Knockback deceleration, Better damage types, better kill messages

🚦 Testing
Shotguns will cause larger knockbacks

Knockback currently works as intended


Browse instead of Browser

In this page , i have come across small typo mistake.
In below line of documentation instead of browser , its just browse is there

Azure Cloud Shell is an interactive shell environment hosted in Azure and used through your browse.

It should be

Azure Cloud Shell is an interactive shell environment hosted in Azure and used through your browser.

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

ID: 4b0165d7-6462-842c-76ec-1a1f344fa51a
Version Independent ID: 3b2c77ed-d9eb-cf20-0ace-908b88927e54
Content: Create Node.js web app - Azure App Service
Content Source: articles/app-service/app-service-web-get-started-nodejs.md
Service: app-service-web
GitHub Login: @cephalin
Microsoft Alias: cephalin

@SantoshAvaji Thanks for your feedback! We will investigate and update as appropriate.

@SantoshAvaji  I have updated the doc.  Thanks again for bringing this to our attention.
We will now close this issue


Documentation missing

The link to gitbook is not working.

Project is still under construction, check back next week.


QueryResult API DIALOGFLOW

Hello,
I have  issues getting  unit-length values from the  (JSON RESPONSE)
Indeed i can get for example geo-city-fr value as follow
 $parameters = $response->getQueryResult()->getOutputContexts()->getIterator()->current()->getParameters()->getFields(); $city=$parameters->offsetGet('geo-city-fr')->getStringValue());
The problem is that unit-length is not a string and the only other functions that my help me from Value class (getStructValue(), getListValue()) are returning NULL.
How can i get the value of unit-length
(JSON RESPONSE)
    "outputContexts": [
      {
        "name": "string",
        "lifespanCount": 5,
        "parameters": {
          "geo-city-fr": "Nice",
          "unit-length.original": "3000 m",
          "geo-city-fr.original": "nice",
          "unit-length": {
            "amount": 3000,
            "unit": "m"
          }
        }
      }
    ],

@cassassi,
Thanks for the report. Would you be able to share a little bit of sample code which led to this response?

Yes sure,
This is the code that i have used to get the response above
<?php
require_once __DIR__.'/vendor/autoload.php';
use Google\Cloud\Dialogflow\V2\SessionsClient;
use Google\Cloud\Dialogflow\V2\QueryInput;
use Google\Cloud\Dialogflow\V2\TextInput;
use Facebook\ClientFacebook;

//API google
$sProjectName='test';
$sSession='123456';
$sLanguageCode='fr';
$messageToGoogle='courrir 3000m à Nice'
putenv('GOOGLE_APPLICATION_CREDENTIALS=test.json');

$sessionsClient = new SessionsClient();
$textInput=new TextInput();
$queryInput = new QueryInput();

try {
    //TextInput require text and languageCode
    $textInput->setText($messageToGoogle);
    $textInput->setLanguageCode($sLanguageCode);
    //QueryInput require $textInput
    $queryInput->setText($textInput);
    $formattedSession = $sessionsClient->sessionName($sProjectName, $sSession);
//response from API google
    $response = $sessionsClient->detectIntent($formattedSession, $queryInput);
    $messageReponse['text'] = $response->getQueryResult()->getFulfillmentText();
} finally {
    $sessionsClient->close();
}

Thanks, and sorry for the bit of a delay here! Dialogflow is new to me and wanted to take a moment to understand how to reproduce your code. The following snippet allowed me to access the nested value:
$context = $response->getQueryResult()
    ->getOutputContexts()
    ->getIterator()
    ->current();

$fields = $context->getParameters()
    ->getFields()
    ->offsetGet('unit-length')
    ->getStructValue()
    ->getFields();

$amount = $fields->offsetGet('amount')
    ->getNumberValue();
$unit = $fields->offsetGet('unit')
    ->getStringValue();

print "$amount $unit";

Does it work for you, or error out receiving the nested struct? If it doesn't work, could you try echoing out the unit-length value class' kind? I'd be curious to see what it is.
print $context->getParameters()
    ->getFields()
    ->offsetGet('unit-length')
    ->getKind();

Hello,
Thank you for your replay.
No, its my fault, i just notice that i forget to show you the rest of my code from "->getOutputContexts()".
Yes it worked very well, thanks :).
and for your getKind() is struct_value

You're very welcome!


The unofficial api always times out after setting the conversationId

Verify latest release

[X] I verified that the issue exists in the latest chatgpt release

Verify webapp is working

[X] I verify that the ChatGPT webapp is working properly for this account.

Environment details

version :4.7.2
nodejs: 18.14.1
api: unofficial api

Describe the Bug
code and shell list below

import { ChatGPTUnofficialProxyAPI } from 'chatgpt'

async function example() {

// let url = 'https://gpt.pawan.krd/backend-api/conversation'
let url = 'https://chat.duti.tech/api/conversation'

const api = new ChatGPTUnofficialProxyAPI({

    apiReverseProxyUrl: url,
    debug:true,
    accessToken:'token'
  })

  let cid = 'cid'
  // let cid=''
  try{
  const res = await api.sendMessage('why i cant set coversation id when i call api',{conversationId:cid})
  console.log(res)
  console.log(res.text)}
  catch(ex){
  	console.log(res)
  }
}
 example()

 npx tsx test.ts

The unofficial api always times out when i set the conversationId='xxxx', and it works good when i set conversationId='', i am wrong or it is a bug?
test this code on windows 11 and  almalinux 8 with nodejs 18.14.1

@Atomin-Lee if you're setting conversationId, you must also set parentMessageId. Otherwise, the behavior of ChatGPT's API is undefined and will likely lead to difficult to diagnose errors.

@transitive-bullshit Thanks for your help. I solved this problem by setting a reasonable id that already exists in the chatgpt as parentMessageId,
Currently I rely on conversion to organize data, so I need to get the conversation history and the data below according to the conversationId so that the subsequent sendMessage can be completed correctly.

@Atomin-Lee if you're setting conversationId, you must also set parentMessageId (and they both have to be valid having come from the ChatGPT account you're currently using). Otherwise, the behavior of ChatGPT's API is undefined and will likely lead to difficult to diagnose errors.

Cheers mate. I saw it is not tricky to identify invalid conversationId in the Python libary ChatGPT by @acheong08. But I am really not good at JS so I cannot find where to add such a feature to detect invalid conversationId after try 2 days.
When a invalid conversationId was sent, the server respond with '{"detail":"Conversation not found"}'.
I guess such a feature can be added to the Parser or fetchSSE but I am not sure. Anyway, looking forward someone who can contribute a pull request.

@liyucheng09 good idea. just added this in 539aa6d

I also added some additional error handling making sure that if you set conversationId, you have to also set parentMessageId and vice-versa.

https://github.com/transitive-bullshit/chatgpt-api/releases/tag/v4.8.1


Decide on examples directory structure

We should definitely organize the examples directory into subdirectories as this package becomes larger, but I am not sure if it makes sense to do so based on solver/mesh type the way Trixi.jl does. Since this package already provides several independent features relating to the physical aspects (i.e. the moist Euler equations) and geometrical aspects (i.e. solving PDEs on 2D manifolds in 3D) of atmospheric modelling, it is perhaps most natural to split the examples in such a way, for example, into examples/moist_euler/ and examples/spherical_advection/.
A separate question that we will need to address at some point is how to organize the subdirectories in src/ and whether a similar division makes sense there, or if we should continue to mimic the structure of Trixi.jl.

Absolutely agree! In general and also regarding the first level of our hierarchy:  equation for moisture and PDEs on manifold are our current main features.
For the moist equations I would further like to keep information about the concrete set of equations (e.e.g authors) and the mesh type. This could be another level in a directory hierarchy or part of the file name.
As always we can and should revise this as soon as some directories get cluttered up. I would suggest the same for /src.

Following Oswald's suggestion at our meeting, I propose that we provide a library of standard test cases and reference values that can be used with the different models. My latest PR #31 begins this effort with the file equations/reference_data.jl which includes a Gaussian bell case for spherical advection, and defines some constants for reference geophysical parameters.


AppVeyor builds failing due to expired certificate

Example log snippet:
OpenThread.vcxproj -> ..\..\build\bin\x64\Release\app\OpenThread.pdb (Full PDB)
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AppxPackage\Microsoft.AppXPackage.Targets(1930,5): warning APPX0108: The certificate specified has expired. For more information about renewing certificates, see http://go.microsoft.com/fwlink/?LinkID=241478. [C:\projects\openthread\etc\visual-studio\OpenThread.vcxproj]
  OpenThread -> C:\projects\openthread\build\bin\AppPackages\OpenThread_<IP_ADDRESS>_x64_Test\OpenThread_<IP_ADDRESS>_x64.appx
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AppxPackage\Microsoft.AppXPackage.Targets(2557,5): error APPX0108: The certificate specified has expired. For more information about renewing certificates, see http://go.microsoft.com/fwlink/?LinkID=241478. [C:\projects\openthread\etc\visual-studio\OpenThread.vcxproj]

Submitted #2329 as a temporary workaround.

Merged #2329 as a temporary workaround.  Lowering the priority of this issue.


ARROW-2735: [Java] Add  element to parent-pom to fix build failure

By default maven looks only one-level up for the parent-pom. Arrow JDBC
Adapter is nested by two levels causing maven to break the build. Parent POM
had to be referenced explicitly using <relativePath> element.

@yaravind why didn't this failure occur in our Travis CI scripts? Here is the relevant file https://github.com/apache/arrow/blob/master/ci/travis_script_java.sh

@yaravind I think this was fixed in https://github.com/apache/arrow/commit/07ddb57f6632a758fe7d470f8a5b4cd6ff9d5d74 so this issue is a duplicate. Can you confirm?
I'll open a JIRA about the Travis CI question

I think this was fixed in 07ddb57 so this issue is a duplicate. Can you confirm?

@wesm you are correct. It is fixed in https://github.com/apache/arrow/commit/07ddb57f6632a758fe7d470f8a5b4cd6ff9d5d74


Refactor/105 nginx keda

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Any update to docs/ required?

we are not changing the top level variables, so there's no change required for docs.
For example: for keda it will still require keda_helm_chart because of https://github.com/Zvikan/aws-eks-accelerator-for-terraform/blob/refactor/105-nginx-keda/kubernetes-addons.tf#L117


[release-1.20] Fix race in pod reading

This is an automated cherry-pick of #47977

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-multicluster_istio_release-1.20
8dbc2a0049d5796818776edda42edb0d66b3aa02
link
true
/test integ-pilot-multicluster

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-pilot-multicluster

/test integ-pilot-multicluster

First time seeing this falke in 1.20 branch.


fix: Add truncating back to cloudprovider, considering minValues

Fixes #N/A
Description
This change adds an instanceTypes.Truncate() call back to the CloudProvider on 60 instance types. This will make no difference in the standard codepath since we already truncate in the scheduler but matters for cases when users launch standalone NodeClaims.
How was this change tested?
make presubmit
/karpenter snapshot
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

2 of 4 (50.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.004%) to 82.26%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/providers/instance/instance.go
2
4
50.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.004%

Covered Lines:
5416

Relevant Lines:
6584

💛  - Coveralls


Update MD file on new branch 2017-12-17_07-42-05

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestCon1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Feature/alternate links

Support alternative links

Thanks. Give me a sec, though.

I would like this as well.  If there is anything I can do to help get this through faster, I would love to help.


[Android] 'Allow once' permission option always returns granted as permission status even after killing the app and relaunch it again

Before submitting a new issue

[X] I tested using the latest version of the library, as the bug might be already fixed.
[X] I tested using a supported version of react native.
[X] I checked for possible duplicate issues, with possible answers.

Bug summary
I'm requesting location permission in my app ACCESS_FINE_LOCATION and faced unexpected behavior
When requesting the location permission the OS alert appears and then I select to allow Only this time option
Expected:

When I kill the app and re-open it again then request the location permission again the OS alert should appear again to ask for permission
When using check() function to get permission status it should return denied in this case

Actual:

When I kill the app and re-open it again then request the location permission again the OS alert does not appear again to ask for the permission
When using check() function to get permission status it always returns granted no matter how many times I kill the app and re-open it again to check the permission's status

Library version
4.1.5
Environment info
System:
    OS: macOS 14.4
    CPU: (12) x64 Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
    Memory: 17.24 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.0.0 - ~/.nvm/versions/node/v18.0.0/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 8.6.0 - ~/.nvm/versions/node/v18.0.0/bin/npm
    Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
  Managers:
    CocoaPods: 1.11.3 - /Users/my-user/.rbenv/shims/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 23.4, iOS 17.4, macOS 14.4, tvOS 17.4, visionOS 1.1, watchOS 10.4
    Android SDK: Not Found
  IDEs:
    Android Studio: 2023.1 AI-231.9392.1.2311.11076708
    Xcode: 15.3/15E204a - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.15 - /Library/Java/JavaVirtualMachines/jdk-11.0.15.jdk/Contents/Home/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.2.0 => 18.2.0
    react-native: 0.71.14 => 0.71.14
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Steps to reproduce

Use the code below in an empty screen
You'll see a button and a text showing the status of the permission with denied
Click on the button to request location, an OS alert will appear then choose Only this time option
Kill the app and re-open it again then navigate to the screen that contains this code
You'll find the status shown with granted

Reproducible sample code
import React, { useEffect, useState } from 'react'

import { Pressable, Text, View } from 'react-native'
import { request, check } from 'react-native-permissions'

const DeviceSettings = () => {
  const [status, setStatus] = useState('')

  useEffect(() => {
    getLocationPermissionStatus()
  }, [])

  const getLocationPermissionStatus = async () => {
    const result = await check('android.permission.ACCESS_FINE_LOCATION')
    setStatus(result)
  }

  const requestLocationPermission = async () => {
    const result = await request('android.permission.ACCESS_FINE_LOCATION')
    console.log('location permission request result', result)
  }

  return (
    <View
      style={{
        flex: 1,
        backgroundColor: 'white',
        alignItems: 'center',
        justifyContent: 'center'
      }}
    >
      <View style={{ flexDirection: 'row', margin: 20 }}>
        <Text style={{ fontSize: 16 }}>Location permission status: </Text>
        <Text style={{ fontWeight: 'bold', fontSize: 16, color: 'red' }}>
          {status}
        </Text>
      </View>
      <Pressable
        style={{
          borderRadius: 6,
          borderWidth: 1,
          padding: 20,
          backgroundColor: 'black'
        }}
        onPress={requestLocationPermission}
      >
        <Text style={{ color: 'white', fontWeight: 'bold', fontSize: 16 }}>
          Request location permission
        </Text>
      </Pressable>
    </View>
  )
}

export default DeviceSettings

That's normal and even in the documentation: https://github.com/zoontek/react-native-permissions?tab=readme-ov-file#about-ios-location_always-permission


adding Application metrics

Before this change, we only have web and executor metrics registers, which are only able to collect metrics in exec or web packages. In order to collect more application metrics, I propose a CommonMetrics class in common repo, which is able to access code in azkaban-common more conveniently, then able to gather metrics there.

Closing this PR, and  creating #904


Update status of support IO in Safari 12

I believe it's only in Safari Tech Preview, not in Safari 12. source: https://webkit.org/blog/8517/release-notes-for-safari-technology-preview-71/

Agreed, does not appear to be working in regular Safari 12.


Added type number to proptypes

Overview
Fixes #1625
Instead of making changes in the SelectMenu.js file, we can directly change the SelectedPropType.js file and add PropTypes.number to PropTypes.oneOfType() function
Screenshots (if applicable)
Documentation

[ ] Updated Typescript types and/or component PropTypes
[ ] Added / modified component docs
[ ] Added / modified Storybook stories

Thanks. Fixes #1625

It's not linking it for auto-closure in the sidebar. I think you'll have to edit the top description and add the Fixes phrase there yourself.
Thanks for the work. Appreciate it.

Shouldn't we also support an array of numbers? I'm not sure why it allows an array of strings though, is that for multi-select?

In case of single or multi select, I think this code block will cover both the scenarios
PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))

In case of single or multi select, I think this code block will cover both the scenarios
PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))

That won't work probably for single select, as it's not an array. This would:
PropTypes.oneOfType([
  PropTypes.string,
  PropTypes.number,
  PropTypes.arrayOf(PropTypes.oneOfType([
    PropTypes.string,
    PropTypes.number
  ]))
])

But that may not be proper, since it allows mixed arrays (both strings and numbers in the same array).
This won't allow mixed arrays. The arrays have to be pure:
PropTypes.oneOfType([
  PropTypes.string,
  PropTypes.number,
  PropTypes.arrayOf(PropTypes.string),
  PropTypes.arrayOf(PropTypes.number)
])

I would go with this instead.

Hey folks - I think we'll need to update the TS definitions with whatever we use for PropTypes, as well. If you're using TS, you currently can't pass a number to selected either: https://codesandbox.io/s/pr-1627-selectmenu-number-typing-27seme?file=/src/App.tsx


[OpenAI] Move the generated layer once the generator moves on top of System.ClientModel

Related: https://github.com/Azure/azure-sdk-for-net/issues/42736

Related: https://github.com/Azure/azure-sdk-for-net/issues/43166


Requirements are too restricted

It's a pain to install Hyde with other software. We should stop doing that.

+1
I saw the argument that hyde is not a library so it should have fixed requirements in another issue and that has some merit, but when you add other software into the build pipeline for a site these restrictions cause conflicts. It shouldn't be too hard to support a range of versions for the dependencies to remedy this.

@jd / @moorepants  -  I chose to restirict the versions after hyde was broken once because of a Jinja issue and once because of smartypants.   I agree that its too restricitive right now.  Since we have more activity and more maintainers, I think its okay for us to relax the requirements a little bit.  Since you both seem to be using hyde as a part of a larger deployment, can you tell me how much the requirements need to be relaxed (a PR maybe?)
Is there a way to test against the entire version range or the latest subset of it using travis?
Thank you.

It is fairly straightforward to setup a matrix on Travis to test against the all the oldest dep versions and the newest dep versions. I often setup three entries: oldest supported dep releases, newest supported dep releases, and head of master on the deps.

@moorepants - Thank you.  Would it work for you if the build version part is wildcarded (x.x.*) in the deps?

I'm interested in hearing how this is being used in these scenarios. I'm a a big proponent of "it's an application, not a library", but perhaps it's both. i.e. it's possible that we can view much of the code in Hyde as a library that can be used by several applications, one of which is Hyde's CLI. Library code should support all sensible versions of dependencies, but my argument for application version locking (the application here being the Hyde CLI) is that the behavior of the installed application should never change even when dependencies are updated. That said, two (technically three) questions:

How are you using Hyde within your build pipeline? Is this something that makes sense as a Python import, or is it more suited to an implementation-ignorant executable?

Would exposing parts of Hyde as a less restrictive library and keeping the CLI's dependencies locked be an option here? This would theoretically allow users to use libhyde (for lack of a better term) within their applications while keeping the versions locked for the more common use case of "I just want something I can run to generate a blog".

I don't use hyde as a library. I setup a conda environment for building a website. A particular website may use hyde and variety of other tools (some python based) to generate all of the content in the website. For example, I may use Sphinx to process some things or I may use IPython. If any of the packages that I need to use in my environment conflict with hyde's exact required versions, then their are issues. I suspect that I could try to isolate hyde and it's deps from my other packages, but that sounds like a pain. I'd really just like to conda create -n my-website-env sphinx hyde ipython docutils etc etc and a combination of working dependencies will be found with conda's SAT solver. But very specific hyde dep versions makes this impossible sometimes.

@moorepants I'm not a fan of relaxing the project's requirements for this use case, though I'm open to hearing others' rationale in favor of this approach.
Personally, I create separate virtual environments in cases like this one. Hyde and some of these  are unrelated except for having some common dependencies. Separating them allows each application to specify its own requirements and avoids this conflict. As an added bonus, your hyde environment can be locked to a specific version of Hyde and make sure that all of the places you use it have the same behavior. The fact that multiple CLI tools shown here are written in Python is coincidental; they shouldn't need to share any more dependencies than one tool written in Python and another written in Ruby.

What you do personally is great, but that's not how everybody else works. Especially with for example Linux distributions who are going to ship that. They're not going to be able to satisfy all the dependency is they are too strict. Same problem is for people using pip in their system without venv. Most people don't know and don't want to know how to use venv anyway.
If hyde supports multiple version of a dependency, then it should be able to tell so. That's what this is about. If some versions of its dependencies does not work, then you specify it too. No more, no less. And everybody is happy! :-)

Fixed.


Plotly specific meta delegate

Create or adjust meta delegate for plotly types.
List of plotly types:

data_array --- An {array} of data. The value MUST be an {array}, or we ignore it. Note that typed arrays (e.g. Float32Array) are supported.
enumerated --- Enumerated value type. The available values are listed in values.
boolean --- A boolean (true/false) value.
number --- A number or a numeric value (e.g. a number inside a string). When applicable, values greater (less) than max (min) are coerced to the dflt.
integer --- An integer or an integer inside a string. When applicable, values greater (less) than max (min) are coerced to the dflt.
string --- A string value. Numbers are converted to strings except for attributes with strict set to true.
color --- A string describing color. Supported formats: - hex (e.g. '#d3d3d3') - rgb (e.g. 'rgb(255, 0, 0)') - rgba (e.g. 'rgb(255, 0, 0, 0.5)') - hsl (e.g. 'hsl(0, 100%, 50%)') - hsv (e.g. 'hsv(0, 100%, 100%)') - named colors (full list: http://www.w3.org/TR/css3-color/#svg-color)
colorlist --- A list of colors. Must be an {array} containing valid colors.
colorscale --- A Plotly colorscale either picked by a name: (any of Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis ) customized as an {array} of 2-element {arrays} where the first element is the normalized color level value (starting at 0 and ending at 1), and the second item is a valid color string.
angle --- A number (in degree) between -180 and 180.
subplotid --- An id string of a subplot type (given by dflt), optionally followed by an integer >1. e.g. if dflt='geo', we can have 'geo', 'geo2', 'geo3', ...
flaglist --- A string representing a combination of flags (order does not matter here). Combine any of the available flags with +. (e.g. ('lines+markers')). Values in extras cannot be combined.
any --- Any type.
info_array --- An {array} of plot information.

Some delegates are here: https://github.com/mipt-npm/plotly.kt/blob/dev/plotlykt-core/src/commonMain/kotlin/scientifik/plotly/dfExt.kt


Update recovery-using-backups.md

Learn Build status updates of commit aadab37:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azure-sql/database/recovery-using-backups.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Rejecting changes. Support ticket route doesnt guarantee restore of Logical Server. This is not officially guaranteed mechanism.

@SudhirRaparla
Thanks for the review. We'll close this PR.


[Proposal] router.Route shortcut

In ExpressJS 4.x there's the route shortcut that lets you to add HTTP method handlers for a specific route.
I've just added this capability to Martini's router, for each HTTP method.
With this feature it will possible to define routes like in the following example:
app := martini.Classic()
app.Route("/hello").Get(func() string {
  return "GET World"
}).Post(func() string {
  return "POST World"
})

GET and POST handlers are now attached to the "/hello" route.
For more info: http://expressjs.com/4x/api.html#router.route

Looks good to me! Let's see what @codegangsta thinks about that feature being added to the core.
Happy new year to you too @wilk!

Looks good to me! Let's see what @codegangsta thinks about that feature being added to the core.
Happy new year to you too @wilk!


November 2018 release notes

Adds the new release notes at the top of the page, beneath the general blurb.
Notes:

I've left off the fact that there are more results, as there actually aren't. It's about even. Some queries are returning more, some less, I am trying to chat to the content team to see what's going on with those.
I've left off anything coming up, as it feel like, if we do tis regularly, that would be better. We might need to remember when we've used user feedback so we can let people know! Maybe we do this every Demo?

[x] WIP: There's a couple of sentences to finish

Good read on this: https://slackhq.com/a-little-thing-about-release-notes#

Out of Wip

averaging sub-second returning of 100 results

@jennpb That doesn't even make sense to me, how does:

Performance of search has been improved. When requesting 100 results,
they are, on average, rendered in less than a second.

👂 ?


deploying cockpit kubernetes dashboard error

hi i am trying to deploy cockpit kubernetes dashboard on kubo.
Deployment is successful, but login is error. I am new to kubernetes, any suggestions to overcome this error.
More over on gke kubernetes it is successfull.
https://itnext.io/up-and-running-cockpit-for-google-kubernetes-engine-gke-4aca68f182bf
Screenshort.

Pod Logs
logs-from-kubernetes-cockpit-in-kubernetes-cockpit-glqpr.txt

This was fixed in kubernetes last year already.

Please do not ignore the templates when filing issues. Without knowing what versions you're running, it's hard to tell if this is the result of an outdated Kubernetes version or if it's the result of yours/CFCR's configuration. As mentioned in the comment above, this may well be fixed with a more modern version of CFCR.


[SMALLFIX] Fix use of generics in HeartbeatContext

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/Tachyon-Pull-Request-Builder/6229/
Test PASSed.

+1 LGTM


Compilation fails on macOS

I tried compiling jackline on macOS by installing OCaml and following the instructions:
opam install jackline

The following actions will be performed:
  ∗ install erm_xml  0.3.1 [required by erm_xmpp]
  ∗ install erm_xmpp 0.3   [required by jackline]
  ∗ install jackline 0.1.0
===== ∗ 3 =====
Do you want to continue? [Y/n] y

<><> Gathering sources ><><><><><><><><><><><><><><><><><><><><><><><><><><>  🐫
[jackline.0.1.0] synchronised from git+https://github.com/hannesm/jackline.git
[erm_xml.0.3.1] synchronised from git+https://github.com/hannesm/xml.git
[erm_xmpp.0.3] synchronised from git+https://github.com/hannesm/xmpp.git#otr

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><>  🐫
[ERROR] The compilation of erm_xml failed at "/Users/bastian/.opam/opam-init/hooks/sandbox.sh build ocaml setup.ml -install".

#=== ERROR while compiling erm_xml.0.3.1 ======================================#
# context     2.0.0 | macos/x86_64 | ocaml-system.4.07.0 | git+https://github.com/hannesm/xmpp-opam.git
# path        ~/.opam/default/.opam-switch/build/erm_xml.0.3.1
# command     ~/.opam/opam-init/hooks/sandbox.sh build ocaml setup.ml -install
# exit-code   1
# env-file    ~/.opam/log/erm_xml-27315-487c34.env
# output-file ~/.opam/log/erm_xml-27315-487c34.out
### output ###
# ocamlfind: /Users/bastian/.opam/default/lib/erm_xml/xml.mli: Operation not permitted
# E: Failure("Command ''/Users/bastian/.opam/default/bin/ocamlfind' install erm_xml src/META _build/src/xml.cmx _build/src/xmllexer_generic.cmx _build/src/xmllexer.cmx _build/src/xmllexerI.cmx _build/src/xmllexerI2.cmx _build/src/xmllexerE.cmx _build/src/light_xml.cmx _build/src/xml_encode.cmx _build/src/xml_decode.cmx _build/src/xml.annot _build/src/xml.cmt _build/src/xml.cmti _build/src/xml.c[...]

<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><>  🐫
┌─ The following actions failed
│ λ build erm_xml 0.3.1
└─
╶─ No changes have been performed

I encountered the same problem just now.  I "solved" it by deleting ~/.opam and reinitializing it. After that it went smoothly.


Treasury Report - Add helper function to get valid uploads

Blocks

[ ] https://github.com/usdigitalresponse/cpf-reporter/issues/296
[ ] https://github.com/usdigitalresponse/cpf-reporter/issues/295

Blocked By

[ ]

Current State
N/A
Expected State
A function that returns the valid set of upload files needed for treasury report generation. This function must get all the valid uploads for the user's organization's current-reporting-period and ensure that these are grouped by expenditure-category and agency. This means that there cannot be two uploads that have the same EC-Code and agencyId, we must only pick the most recently created one.
Definition of Done

The function is added and accessible via import { getUploadsByExpenditureCategory } from 'src/services/uploads/uploads'
The function has unit tests and type definitions that have appropriate scenarios that ensure the value returned by the function is accurate.

Implementation Details

Add helper function to get S3 object keys for uploads in aws.ts

export async function getS3UploadFileKey(organizationId, upload) {
  return `uploads/${organizationId}/${upload.agencyId}/${upload.reportingPeriodId}/${upload.id}/${upload.filename}`
}

The below implementation should be correct. However, it does not include typescript and unit tests. Please add those prior to submitting a pull request.

src/services/uploads/uploads.ts

/*
This function should return the most recent upload for each expenditure category and agency for the `currentUser`'s organization.
The uploads must be grouped by expenditure category and agency. If there are multiple uploads for the grouping, the most recent upload must be chosen.
The S3 Object key must be set on each upload object.
The return value structure should look like the following:
{
  EC-Code: {
    AgencyId: {
      UploadObject
    }
  }
}
Example:
{
  '1A': {
    '1': {
      id: 1,
      filename: 'file1.csv',
      objectKey: 'uploads/1/1/1/1/file1.csv',
      ...
    },
    '2': {
      id: 2,
      filename: 'file2.csv',
      objectKey: 'uploads/1/2/1/2/file2.csv',
      ...
    },
    ...
  },
  '1B': {
    '1': {
      id: 3,
      filename: 'file3.csv',
      objectKey: 'uploads/1/1/1/3/file3.csv',
      ...
    },
    ...
  },
  ...
}
*/
export const getUploadsByExpenditureCategory = async () => {
  const organization = await db.organization.findFirst({
    where: { id: context.currentUser.agency.organizationId },
  })

  const reportingPeriod = await db.reportingPeriod.findFirst({
    where: { id: organization.preferences.current_reporting_period_id },
  })

  // valid upload validations
  const validUploadIds = await db.uploadValidation.findMany({
    where: {
      passed: true,
      upload: { agency: { organizationId: organization.id } },
    },
    select: {
      uploadId: true,
    },
    distinct: ['uploadId'],
  })

  const uploadsForPeriod = await db.upload.findMany({
    where: {
      reportingPeriodId: reportingPeriod.id,
      agency: { organizationId: organization.id },
      id: { in: validUploadIds.map((v) => v.uploadId) },
    },
    include: { expenditureCategory: true },
  })

  const uploadsByExpenditureCategory = {}

  // Get the most recent upload for each expenditure category and agency and set the S3 Object key
  for (const upload of uploadsForPeriod) {
    // Set the S3 Object key
    const objectKey = await getS3UploadFileKey(organization.id, upload)
    upload.objectKey = objectKey

    // Filter the uploads by expenditure category of the current upload.
    const uploadsByAgency =
      uploadsByExpenditureCategory[upload.expenditureCategory.code]

    if (!uploadsByAgency) {
      // The EC code was never added. This is the time to initialize it.
      uploadsByExpenditureCategory[upload.expenditureCategory.code] = {}

      // Set the upload for this agency
      uploadsByExpenditureCategory[upload.expenditureCategory.code][
        upload.agencyId
      ] = upload
    } else {
      if (!uploadsByAgency[upload.agencyId]) {
        // The agency was never added. This is the time to initialize it.
        uploadsByExpenditureCategory[upload.expenditureCategory.code][
          upload.agencyId
        ] = upload
      } else {
        // If the current upload is newer than the one stored, replace it
        if (upload.createdAt > uploadsByAgency[upload.agencyId].createdAt) {
          uploadsByExpenditureCategory[upload.expenditureCategory.code][
            upload.agencyId
          ] = upload
        }
      }
    }
  }

  return uploadsByExpenditureCategory
}

Based on this PR being closed, I believe this issue is addressed. https://github.com/usdigitalresponse/cpf-reporter/pull/340
@tzinckgraf is that correct?
cc @as1729


Allow automated site subscription so that can be done without console.

Sites need to be gathered before you can subscribe all computers to them. I added a gist with the code from the SAAS project to check a site is gathered & to then enable the sites here: https://gist.github.com/divo-ie/7e2a7aefc482f665c472


Missing extents conversion causes "extents not declared in the current scope" error on coverted scripts

Godot version
4.2.dev [51cc34a99fea7fbccf8387c51c03fb39a9b7b290]
System information
Ubuntu 22.04.3 LTS
Issue description
This issue is a side effect of #82754, that fixes #77931.
As explained in this comment, Godot 4.x doesn't recognize the extents property after the conversion of a Godot 3.x script, rising the error Identifier 'extents' not declared in the current scope.
This is expected since the property doesn't exist anymore in Godot 4.x, however this behaviour does not satisfy backward compatibility nor convert the atributte.
Disclaimer: The atribbute works fine when used as self.extents (maybe because it forces the use of getters/setters? idk)
A solution would be related to this comment.
Steps to reproduce

Create a Godot 3.x project with a simple scene and add ReflectionProbe node (works with other nodes that use extents).

Add a script to it, trying to access the extents property directly such as extents = Vector3(2,2,2)

Convert the projet to Godot 4.x

Try running the project

Minimal reproduction project
N/A

Should probably be added as a case to this


Comments: Render the Note Form

Link to chapter - http://serverless-stack.com/chapters/render-the-note-form.html

When I click a note to examine, the page redirects to prod/notes/undefined - and I get an error.
I'm getting an error saying

I've taken a look at the Notes.js file, the getNotes() is invokeApig at /notes/${this.props.match.params.id} If I'm not mistaken, it should be redirecting to the ID number for the note item, correct?

When I click one of my note, a status code 500 returned.

@RaphaelMui The 500 error should be something we are generating. Make sure the link for the note looks right. You can also check your CloudWatch logs for the error.

@jayair The Request URL is https://uy6essyal3.execute-api.us-east-1.amazonaws.com/prod/notes/9704e3b0-7d82-11e7-9f52-abe788a40b9a
From the CloudWatch logs,
2017-08-10T08:13:34.778Z	cd8bc624-7da3-11e7-a4d5-bf4a01ad26b2	ReferenceError: error is not defined
at _callee$ (/var/task/get.js:199:27)
at tryCatch (/var/task/node_modules/regenerator-runtime/runtime.js:65:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (/var/task/node_modules/regenerator-runtime/runtime.js:303:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as next] (/var/task/node_modules/regenerator-runtime/runtime.js:117:21)
at step (/var/task/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /var/task/node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13
at process._tickDomainCallback (internal/process/next_tick.js:135:7)

@RaphaelMui Hmm that seems a bit cryptic. Can you try adding some debug message? For example, you can add a console.log before this line - https://github.com/AnomalyInnovations/serverless-stack-demo-api/blob/master/get.js#L27

I'm getting this error...
./src/containers/Notes
Module build failed: Error: ENOENT: no such file or directory, open

@inventanew Seems like that file might not be in the right location?

With the demo app I am getting the following error "This XML file does not appear to have any style information associated with it. The document tree is shown below."  Why is this happening?  I am also seeing this with my local app.  It seems like the URL may be miss formed.

@mdhendri Which page of the demo app are you seeing this on - https://demo.serverless-stack.com?

Yes, the issue was on  https://demo.serverless-stack.com and also my own
app.  It seems that if there was an image in the S3 bucket prior to the
switch to AWS Amplify somehow the URL got messed up and hence the error.
If I uploaded another image then it seemed to resolve itself.  The
interesting thing is I tried it again this morning and I don't get that XML
error.
On Thu, Mar 22, 2018 at 10:08 AM, Jay V<EMAIL_ADDRESS>wrote:

@mdhendri https://github.com/mdhendri Which page of the demo app are
you seeing this on - https://demo.serverless-stack.com?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/AnomalyInnovations/serverless-stack-com/issues/54#issuecomment-375383851,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AASDy0AIURhvFRknobnL-m7dcw-_dEqXks5tg9p-gaJpZM4M4OMo
.

How does wrapping JSX html code inside curly braces work? This line:
{this.state.note &&
        <form onSubmit={this.handleSubmit}>

Doesn't the && symbol make this a conditional statement? Wouldn't it just return a boolean? The instructions say "We render our form only when this.state.note is available." Is this the line that does that? How does && work here?

@iggirex Yeah JSX is a bit confusing. One way to think about it is that React converts JSX into a set of standard JS calls to create components. In this case, if this.state.note is not null (or false), it'll return the React component called form. If it's null then it won't render anything.
Here is some info on how false is rendered in JSX - https://reactjs.org/docs/conditional-rendering.html#inline-if-with-logical--operator.

This issue was moved to https://discourse.serverless-stack.com/t/comments-render-the-note-form/40

This issue was moved to https://discourse.serverless-stack.com/t/comments-render-the-note-form/140


Cache jobs and results

Closes #89

Performance Graphs

Figure 1

Figure 2

Figure 3

Figure 4
Testing Methodology
Testing was performed by running this script:
import httpx
import asyncio
import traceback
import psycopg2

async def do_job(client: httpx.AsyncClient):
    res = await client.post("/jobs")
    try:
        json = res.json()
        if len(json) == 0:
            print("got 0 jobs, skipping")
            return
        j = json[0]
        name, version = j["name"], j["version"]
        print(f"Got {name} v{version}")
    except:
        traceback.print_exc()
        print(res.text)
        print("-"*20)
        return

    payload = {"name": name, "version": version, "reason": "Package too large"}
    res = await client.put("/package", json=payload)
    print(f"Finished {name} v{version}")
    res.raise_for_status()

async def get_package_info(client: httpx.AsyncClient):
    res = await client.get("/package?name=discord.py")
    res.raise_for_status()

async def main():
    connection = psycopg2.connect(user="postgres", password="postgres", host="localhost", port="5432")
    cursor = connection.cursor()
    cursor.execute("UPDATE scans SET status = 'QUEUED' WHERE scan_id in (SELECT scan_id FROM scans ORDER BY queued_at DESC LIMIT 200)")
    connection.commit()
    cursor.close()
    connection.close()

    client = httpx.AsyncClient(base_url="http://localhost:8000")

    async with asyncio.TaskGroup() as tg:
        for _ in range(200):
            tg.create_task(do_job(client))

asyncio.run(main())

The durations were parsed from the log files.
Insights
All 4 graphs appear to have a linear relation for at least some part of the graph. This is most evident in Figure 1. The most probably reason for this is the following code:
    def get_job(self) -> Optional[Scan]:
        """Get one job. Refills the cache if necessary."""

        with self._refill_lock:
            if self.scan_queue.empty():
                self.refill()

            # If it's still empty after a refill, there aren't any more jobs in the DB.
            if self.scan_queue.empty():
                return None
            else:
                scan = self.scan_queue.get()

        scan.status = Status.PENDING
        scan.pending_at = datetime.now(timezone.utc)
        self.pending.append(scan)

        return scan

The lock causes all requests to the get job endpoint to be executed sequentially. Say, for instance, we have 5 incoming requests at the same time. The first request will immediately obtain a lock, and do it's processing. The second requests must wait this whole time, and once the first request is done, then the second request obtains the lock, does it's own processing. At this point, the 3rd request has been waiting for both the first and the second request. This pattern continues on for each request, each one taking slightly longer than the previous one - which gives it the effect of a linear operation. There is unfortunately nothing we can do about this.
Figure 3 is of particular interest, because it does show that at extreme edge cases (such as the one where 100 requests are incoming at the same time), the cache does have a non-negligible performance increase. However, this is not feasible because if there aren't that many requests per time period, then we end up starving flushes (but perhaps this could be alleviated with timed flushes).
Because of the negligible performance increase this gives us in most cases, and the increased code complexity it adds, I will be closing this as not necessary.


Books

@Juststartings please feel free to raise a PR if you have any good resource that you want to add to the repo. We accept only the resources which are truly free to use by anyone. Read docs/CONTRIBUTING.md for more details

I have a book on the latest version on Django development

Can I make a pull request to this one

@manny-uncharted please feel free to raise a PR


dep

Use the new dep package management tool to manage dependencies and the vendor/ directory.

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

Sorry, plugins haven't been intended to be pushed here. Just the dep'd dependencies.

Thanks for the PR. We would need some more justification to take a PR this large. Perhaps you could provide a bit more explanation

It seems like Go is not necessarily settling on dep either. https://research.swtch.com/vgo-intro
Right now we don't have a compelling reason to switch from using the vendor folder with gvt. Thanks for your PR though! Feel free to continue discussion, but I'm going to close this.

Understood.
Matt Holt<EMAIL_ADDRESS>ezt írta (időpont: 2018. febr. 21.,
Sze, 20:40):

Closed #2032 https://github.com/mholt/caddy/pull/2032.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mholt/caddy/pull/2032#event-1485466694, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AAPoSly6OknGsmhY_B9YGOYAtNvzxjdHks5tXHFCgaJpZM4SKWo3
.


Implement support for the X-RateLimit-Reset header

ping @peter-murach

@k0nserv I will release tomorrow - promise! I need to triage all the issues and PRs and will then will release. Can you wait?

Oh I wasn't pinging you to release. I merely want to know if it's okay to merge. Release whenever you get the time

The code is spot on, will definitely merge!


it seems to be wrong to judge whether the transaction exists

https://github.com/palaidn/palaidn_subnet/blob/bb953f72ef4699265909e41b936e26b3c6c3ee2b/palaidn/utils/fraud_data.py#L68
if transactions did not exist, the 'exists' equal to (0, ), and bool((0, )) equal to True

closed


Change function(filter-merged) as exportable function rather than in vignette

Change function(filter-merged) as exportable function rather than in vignette.

implemented on https://github.com/TKMarkCheng/NormaliseForIC50/commit/36f4e42fcae910e5043f932139891b9e46cc3e74


Correct deleteHookBySiteId operationId since it doesn't require site_id

As part of work to validate the site_id is passed for hook creation in bitballoon (https://github.com/netlify/bitballoon/issues/5143), I reviewed the open-api and noticed that the delete name was incorrect based on the required parameters.

Looks good! Thanks!
Can you make sure to update the go client before we merge? Instructions are in https://github.com/netlify/open-api/blob/master/CONTRIBUTING.md#spec-validation

Pushed regenerated golang.  For future reference, I got an error:

2020/04/23 13:13:10 creating generated file "access_token.go" in "go/models" as definition
failed rendering template data for definition: template execution failed for template definition: template: schematype:2:18: executing "schemaType" at <(len .AllOf) gt 0>: can't give argument to non-function len .AllOf
generate.go:6: running "gobin": exit status 1

which I discovered is because of stricter type checking in golang 1.14.  I was able to fix it by brew installing<EMAIL_ADDRESS>and doing a PATH export.

I'm actually not super familiar with swagger but seems like no-longer-used func/type like DeleteHookBySiteIDParams or DeleteHookBySiteIDNoContent are not removed. maybe we can remove them?

Great catch, the make generate can introduce code, but doesn't remove it.  I rm'd the go/plumbling directory and generated again and removed them.


[Feature]: Need a minimize/collapse icon for the debugger on the query editor

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
Currently, there's a close/collapse icon present on the debugger for the canvas and JS editor but there's no such icon present on the query editor. This needs to be added and the experience needs to be made consistent across the platform
Why should this be worked on?
On the cavnas

On the JS editor

@ayushpahwa was this due to the recent change? I can see this is different across canvas, query, & js object. Also the tab text styles and much larger than anywhere else.

Collapse option on the editor was added a few months ago but the text has change since console log changes went in @Nikhil-Nandagopal

@ramsaptami but there are options and this USD to be consistent so something has broken. X, Chevron and no option. This is bad.

Hey @Nikhil-Nandagopal , this doesn't seem to be due to my changes. I haven't touched the logic for this particular place. (For reference, this is the first POC I built for console in June, it has the same issue as highlighted above.)

DP: https://appsmith-qy8ms7n64-get-appsmith.vercel.app/

Added the collapse icons for query and api bottom bars.
X makes more sense to me as far as debugger is concerned.
But I have changed to arrow down so we can review it.

cc: @RoopKrrish9696 / @aakashDesign

There are many inconsistencies wrt how the debugger or the response pane should behave. In many cases some interactions relate to the debugger and response pane, also some don't. Here in this notion doc, I've specified how different the interactions of debugger and response panes today in the appsmith.
The reasoning for the temporary solution:

The debugger can be accessed from the bottom bar so that it can be closed or collapsed. It is an app-level action
Response panes can only be collapsed since there are no other entry points for them ( maybe can be opened while you click run - not a good solution IMO ). This is a page-level action that still contains the app-level items.

The temporary solution:
Chevron to collapse all the panes and debugger makes sense as of now. This means

The debugger close icon changes to chevron and will be collapsed to the icon.
All the response panes will have chevron and will be collapsed to the bottom.

cc @eco-monk @kocharrahul7 @Nikhil-Nandagopal

Adding to this:
https://www.loom.com/share/a133a4142041414d946dbcb4c9492257
Headers are clickable when the bottom bar is docked.
Need to handle this interaction.

@eco-monk Can we show up the panel on click of the minified tabs? We can close this ticket along with that fix. Other enhancements we can take as part of a separate ticket @RoopKrrish9696

@RoopKrrish9696, @ginilpg
Create a new issue (#17338) with some details from the conversation here.

Update:
PR is on hold because the tabs component is being moved into the design-system

@eco-monk @ginilpg

[ ] Even after deleting the Api2 while trying to add another api it is throwing these errors "Api2 already exists, please use different name" & "There was an unexpected error". Please refer to the attached video:- https://www.loom.com/share/fc6f0fef60a64414adc1053a07f28cef

@Richarex, Tested after merging with latest release.
https://www.loom.com/share/4bfe5fa2d77140a990d8a508f8ba462d
I don't think this has anything to do with actual change in PR.
This can be caused because the same app was open in two tabs.

@eco-monk Verify the changes on DP, LGTM. Please merge in the changes

Thanks @ramsaptami.
Waiting on CI now, will merge once it's done.


Metals requires older Java Runtime Version

When opening my Scala Project with Zed, I get the following error from the lsp:
Language server error: metals
oneshot canceled
-- stderr--
Exception in thread "main" java.lang.UnsupportedClassVersionError: scala/meta/metals/Main has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
	at java.base/java.lang.ClassLoader.defineClass1(Native Method)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1022)
	at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
	at java.base/java.net.URLClassLoader.defineClass(URLClassLoader.java:555)
	at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:458)
	at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:452)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:451)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:594)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
	at coursier.bootstrap.launcher.a.a(Unknown Source)
	at coursier.bootstrap.launcher.Launcher.main(Unknown Source)

I was running version 17 of openjdk on my MacBook M1 however when googling and encountering the following stack overflow post, lowered to openjdk however the error still persists.
My settings.json for metals:
 "lsp": {
    "vtsls": {
      "settings": {
        "typescript": { "tsserver": { "maxTsServerMemory": 16184 } }
      }
    },
    "metals": {
      "format_on_save": "on",
      "settings": {
        "inlayHints": {
          "inferredTypes": {
            "enable": true
          }
        }
      }
    }
  },

Is there a possible way to fix this?

Thanks for reporting! You need to use JDK 17 for starting metals, anything lower will not work.

I've added this line to my .zshrc file but and ran source .zshrc: but that didn't fix the issue:
export PATH="/opt/homebrew/opt/openjdk@17/bin:$PATH"
Is there any alternative?
Just a side note, the main reason why I'm trying to use metals on Zed is due to the slowness of completions in VS Code. I've tried to bisect a couple of extensions but ultimately it takes such a long time to load the completions. Would you be able to help with that? I'm running metals 1.4.1 in VS Code.


Add mlm extension (https://github.com/crim-ca/mlm-extension)

The MLM extension is now hosted on https://crim-ca.github.io/mlm-extension/v1.0.0/schema.json
The previous DLM extension has been set to "deprecated" maturity and is archived: https://github.com/crim-ca/dlm-extension
The previous ML-Model extension is pending approval for deprecation as well: https://github.com/stac-extensions/ml-model/pull/16

Thanks!


HAWKULAR-235 Make Pinger listen to URLs removed

@pilhuhn could you please review, once the CI passes?


No audio

hello, I installed the mod, followed all instructions and when i launch the game, patch seems to work, i have 144hz in menu but i then have no audio in game at all. Checked my windows 11 audio settings and updated all my audio drivers but still nothing. In fairness i suspect it could be some issue on my end as ive been have some weird audio issues on my razer headset here and there sometimes. I suspect it could just be that have some razer audio driver issues. But wanted to know if anyone else is experiencing same no audio issue and if there is a fix.

Hi,
that sounds like something on your end. The utility isn't patching anything that should affect audio. Please let me know if it issue persists or if you solved it in the meantime.

+1. My spec is Windows 11+ RTX 3080 + HDMI Audio + 2160p 120hz HDR. Using this utility causes no audio. I haven't found a fix yet

I think I figured out this is an issue of the elden ring game itself. And using this utility makes the game have no sound at startup "consistently". A fix I found is to keep alt tab between the game and the desktop until the audio work properly.

I have the same problem (with Elden Ring) -- since using this patch, alt tabbing out of full screens seems to break the audio. And then I just go to sound settings and toggle to a different device and back again to get it to work.

Yep, I have HDMI audio as well (LG C1 screen) -- for some reason it loses the audio. But I don't have the problem after the first time. But once everything was setup, using the applet to launch the game, no problems.


Fix breaking change in builtin casts functions

While healing with Eowyn I noticed that two exercises are broken on latest build to date (0.11.0-dev.3747).
I looked up the doc and it seems that builtin casts functions changed name in a very recent build.
So instead of the old @enumToInt and @intToFloat we need to use @intFromEnum and @floatFromInt
This affects 036_enums2.zig and 096_memory_allocation.zig
Before breaking change:
ubuntu@temp:~/ziglings$ zig version
0.11.0-dev.3395+7b5bd3a93
ubuntu@temp:~/ziglings$ zig build -Dhealed -Dn=36
         _       _ _
     ___(_) __ _| (_)_ __   __ _ ___
    |_  | |/ _' | | | '_ \ / _' / __|
     / /| | (_| | | | | | | (_| \__ \
    /___|_|\__, |_|_|_| |_|\__, |___/
           |___/           |___/

    "Look out! Broken programs below!"

Compiling 036_enums2.zig...
Checking 036_enums2.zig...
 Broken programs below!"

Compiling 036_enums2.zig...
error: the following command failed with 1 compilation errors:
/usr/bin/zig/zig build-exe /home/ubuntu/ziglings/exercises/036_enums2.zig --cache-dir /home/ubuntu/ziglings/zig-cache --listen=-
exercises/036_enums2.zig:60:9: error: invalid builtin function: '@enumToInt'
        @enumToInt(Color.red),
        ^~~~~~~~~~~~~~~~~~~~~

Ziglings hint: I'm feeling blue about this.
Edit exercises/036_enums2.zig and run 'zig build -Dn=36' again.

 Broken programs below!"

Compiling 036_enums2.zig...
Checking 036_enums2.zig...
PASSED:

  Red
  Green
  Blue

I hope I did everything right, I'm new to the repo and zig, so feel free to point out anything wrong

Thank you!

I forgot to check for comments!
There's some comments especially in 065_builtins2.zig that are now outdated:
https://github.com/ratfactor/ziglings/blob/08e8a0f1e48954c4b4657c0078bb5b3ef0c8d13d/exercises/065_builtins2.zig#L7-L10
I updated my branch, but you were quicker that I expected 😅 Do I need to make another PR ?
We need to update 036_enums2, 064_builtins and 065_builtins2

Do I need to make another PR ?

Everything works fine! :smile:


[Solution] Reset to specific tab screen in a nested navigator

Hey all,
Currently, I have using the both the Tab and stack navigator.
I have using the Tab as the main navigator, and few stack as the sub screen.
There are 4 tabs in main Navigator, the 1st tab is the initialised screen.
My current structure:
tabNavigation
  |
  tab1
  |
  tab2

StackNavigation
  |
  tabNavigation
  |
  stack 1
  |
  stack 2

How can I reset to the 2nd tab in its child stack screen? The reset to main navigator alway direct to the initialised screen.
    //navigate is working but it works like append a new stack page
    const navigateAction = NavigationActions.navigate({
      routeName: 'TabNavigator',
      action: NavigationActions.navigate({routeName: 'TabSecondScreen'})
    })
    //reset is not working, it always goes to 1st screen in the tab bar navigator
    const resetAction = NavigationActions.reset({
      index: 0,
      actions: [navigateAction]
    })
    this.props.navigation.dispatch(resetAction)

Also, I tried navigate to this specific tab screen, it works probably, but I can't rest the stack from this screen. If there are any method to drop all the previous stack also can solve my problem.
Solution
Stupid solution, but it working if you have same structure as mine. I have using AsyncStorage, thus it works without redux/flux.
//stack.js
//when you do redirection
//redirect to tab1 in tabNavigation
  ...
  toTab1() {
    var nextJump = 'tab2'; //next jump router name
    if (nextJump != null) {
      AsyncStorage.setItem('@nextJump', nextJump); //store router name to storage
    }
    const resetAction = NavigationActions.reset({
      index: 0,
      actions: [NavigationActions.navigate({routeName: 'tabNavigation'})]
    })
     this.props.navigation.dispatch(resetAction);  //do reset here
  }
  ...

//tab1.js
//get the router name in storage and jump to other tab
  ...
  componentWillMount() {
    ...
     AsyncStorage.getItem('@nextJump').then((routeName) => {
          AsyncStorage.removeItem('@nextJump').then(() => {
             const navigateAction = NavigationActions.navigate(
                  {
                      routeName,
                      params:{'some params'}
                   });
              this.props.navigation.dispatch(navigateAction);
          });
    });
    ...
  }
  ...

Your Environment

software
version

react-navigation
1.0.0-beta.11

react-native
0.44

interested , looking for someone to answer

Save navigation main to storage or redux and use reset action.
Work any screen.

@pvsong do you mean put the state of tab 2nd screen into storage or redux? But how can I reset to this screen?

+1

It would be fantastic if someone knew

@opp100 when app init on 1st screen, save "this.props.navigation" like root_navigation
and try to reset :)

@pvsong Hey bro, I cannot figure out the solution, can you demonstrate some code for the navigate part? Thanks a lot.

I've been pulling my hair out for months on how to get reset to work in this exact situation, some examples from those who made it work would be great. I'm trying to get this to work on a basic app, no redux or anything.

Imagine you have the following set up:
// OuterNavigator.js
import { StackNavigator } from 'react-navigation';

import { headerMode, navigationOptions } from '../config';
import SubNavigator from './SubNavigator';
import ParentView from '../../views/OuterView';

const OuterNavigator = StackNavigator(
  {
    Outer: { screen: OuterView },
    Inner: { screen: SubNavigator },
  },
  {
    headerMode,
    navigationOptions,
    initialRouteName: 'Outer',
  }
);

export default OuterNavigator;

// SubNavigator.js
import { StackNavigator } from 'react-navigation';
import { headerMode, navigationOptions } from '../../routes/config';
import InnerViewA from '../../views/InnerViewA';
import InnerViewB from '../../views/InnerViewB';

const SubNavigator = StackNavigator(
  {
    ViewA: { screen: InnerViewA },
    ViewB: { screen: InnerViewB },
  },
  {
    headerMode,
    navigationOptions,
    initialRouteName: 'ViewA',
  }
);

export default SubNavigator;

Let's say that you want to navigate to Outer from within Inner, specifically from ViewB.
Simply using a this.props.navigate('Outer', params) will work but that doesn't allow for manipulation of the navigator stack.
To use NavigationActions.reset you must perform the dispatch using a navigation prop passed to a component in the OuterNavigator. This can be achieved by passing it as a navigation parameter.
// OuterView.js
export default class OuterView extends React.Component {
  render() {
    const navigation = this.props.navigation;
    return (
       <View
        <Button onPress={() => navigation.navigate('Inner', { parentNavigation: navigation })}>
          Go to Inner
        </Button>
      </View>
    );
  }
}

// InnerViewB.js
export default class InnerViewB extends React.Component {
  render() {
    const parentNavigation = this.props.navigation.state.params.parentNavigation;
    return (
       <View
        <Button onPress={() => parentNavigation.dispatch(
          NavigationActions.reset({
            key: null,
            index: 0,
            actions: [
              NavigationActions.navigate({
                routeName: 'Outer',
              }),
            ],
          })
        )}>
          Go to Inner
        </Button>
      </View>
    );
  }
}

@lukem512 Hey bro, reset to outerView is working probably. But the current issue is how to reset to the subview of outerView.

By a subview do you mean OuterB (where the initial transition to the Inner navigator was done via OuterA?
const OuterNavigator = StackNavigator(
  {
    OuterA: { screen: OuterView },
    OuterB: { screen: AnotherOuterView },
    Inner: { screen: SubNavigator },
  },
  {
    headerMode,
    navigationOptions,
    initialRouteName: 'Outer',
  }
);

@lukem512 Hey bro, the view structure is
const OuterNavigator = TabNavigator(
  {
    OuterViewA: { screen: OuterViewA },
    OuterViewB: { screen: OuterViewB },
  },
  {
    headerMode,
    navigationOptions,
    initialRouteName: 'OuterA',
  }
);

const InnerNavigator = StackNavigator(
  {
    Home: { screen: OuterNavigator },
    InnerViewA: { screen: InnerViewA },
    InnerViewB: { screen: InnerViewB },
  },
  {
    headerMode,
    navigationOptions,
    initialRouteName: 'OuterA',
  }
);

Can it reset from innerViewA / innerViewB reset to OuterViewB.

If you pass the navigation object from OuterViewX when navigating to one of the InnerView screens, then you can use that to navigate to any of the routes in OuterNavigator.

I'm facing the same issue.
@opp100 I am wondering why you passed via AsyncStorage ? Wouldn't it be best to implement this via navigation params? You navigate to tab1 with nextJump being passed as a param and then based on nextJump's value you navigate in a tab or another.

After facing similar issue but from deep links, I started investigating and came up with a solution.
I needed to go from an open (or closed) app to a specific tab via deep link. But as reported by some here, I was always redirected to the first tab (it seems it's due to the Stack > Tab navigators nesting).
So I customised the Stack router to use the Tab router in case of a specific received path.
I hope this helps :)
const MyTabNavigator = TabNavigator(
  {
    tabOne: { screen: TabOne, path: 'one' },
    tabTwo: { screen: TabTwo, path: 'two' },
  }
);

const MyStackNavigator = StackNavigator(
  {
    TabNavigation: { screen: MyTabNavigator, path: 'tabs' },
    Init: { screen: Init },
    Tutorial: { screen: Tutorial },
  },
  {
    initialRouteName: 'Init'
  }
);

const previousGetActionForPathAndParams =
  MyStackNavigator.router.getActionForPathAndParams;

Object.assign(MyStackNavigator.router, {
  getActionForPathAndParams(path, params) {
    const TABS_PATH = 'tabs/';
    if (path.includes(TABS_PATH)) {
      return MyTabNavigator.router.getActionForPathAndParams(
        path.split(TABS_PATH).pop(),
        params
      );
    }
    return previousGetActionForPathAndParams(path, params);
  },
});

@fdnhkj  i do not think this solution works for the reset() nav action.  I tried it.  The only reasonable work around I have without a code change to react-navigation is saving something to async storage or passing an event handler function that gets called to switch tabs.

@opp100 there is an opened PR which is suppose to fix this problem #2292
You only have to pass a key to your reset command

@rpopovici I'm not sure that resolves the issue.  The issue isn't with resetting the correct navigator (in the above example we are resetting the outermost navigator).  The issue is after the reset, the outer navigator fails to resolve the inner navigator (the tab view tab) and throws an error:
const navigateAction = NavigationActions.navigate({
  routeName: 'TabNavigator',
  action: NavigationActions.navigate({routeName: 'TabSecondScreen'})
})

This will fail with an error message listing the available screens in the outer navigator as the only valid options.

I found a temporary trick until they provide us the feature to dynamically change the initialRouteName of the TabNavigator.

const tabScreens = {
    Home: { screen: Home },
    Tab2: { screen: Tab2 },
    Tab3: { screen: Tab3 }
};

const tabConfig = {
    swipeEnabled: true,
    tabBarPosition: 'bottom',
}
const MainScreen: NavigationContainer = TabNavigator(tabScreens, tabConfig);
const MainTab2Screen: NavigationContainer =
        TabNavigator(tabScreens, { ...tabConfig, initialRouteName: 'Tab2' });

const RouterBase: NavigationContainer =  StackNavigator({
    Root: { screen: MainScreen },
    RootTab2: { screen: MainTab2Screen },
    SomeOtherStack: { screen: SomeOtherStack },
}, {});

So your default navigator is RouteBase that open by default Root (MainScreen). So now let's imagine you are in SomeOtherStack and want to reset to Tab2:
this.props.navigation.dispatch(
            NavigationActions.reset({
                index: 0,
                key: null,
                actions: [
                    NavigationActions.navigate({
                        routeName: 'RootTab2',
                    }),
                ],
            })
        );

This make the trick. I hope there will be better solution coming soon...

HI
I have following structure
Login
Register
InnerHome  -- TabNavigator
-- Home
-- Chat
After login, I want my user to navigate from Login screen to InnerHome. Below is my code...
const MainTabNavigator = TabNavigator({
Blink: {
    screen: Blink,
    path: '/blink',
    navigationOptions: {
        tabBarLabel: 'Home',
        tabBarIcon: ({ tintColor, focused }) => (
            <Ionicons
                name={focused ? 'ios-home' : 'ios-home-outline'}
                size={26}
                style={{ color: tintColor }}
            />
        ),
    },

},

Changepassword: {
    screen: Changepassword,
    path: '/changepassword',
    navigationOptions: {
        title: 'Change Password',
        tabBarLabel: 'Password',
        tabBarIcon: ({ tintColor, focused }) => (
            <Ionicons
                name={focused ? 'ios-key' : 'ios-key-outline'}
                size={26}
                style={{ color: tintColor }}
            />
        ),
    },
},
Chat: {
    screen: Chat,
    path: '/chat',
    navigationOptions: {
        title: 'Chat',
        tabBarLabel: 'Chat',
        tabBarIcon: ({ tintColor, focused }) => (
            <Ionicons
                name={focused ? 'ios-chatboxes' : 'ios-chatboxes-outline'}
                size={26}
                style={{ color: tintColor }}
            />
        ),
    },
},
Billing: {
    screen: Billing,
    path: '/billing',
    navigationOptions: {
        title: 'Billing',
        tabBarLabel: 'Billing',
        tabBarIcon: ({ tintColor, focused }) => (
            <Ionicons
                name={focused ? 'ios-card' : 'ios-card-outline'}
                size={26}
                style={{ color: tintColor }}
            />
        ),
    },
},

});
const MainStack = StackNavigator({
Home: {
screen: HomeView,
path: '/',
navigationOptions: {
title: 'Home'
},
},
Login: {
screen: Login,
path: '/login',
},
Register: {
    screen: Register,
    path: '/register',
    navigationOptions: ({ navigation }) => ({
        title: `Register`,
    }),
},
Addpost: {
    screen: Addpost,
    path: '/addpost',
},

InnerHome: {
    screen: MainTabNavigator,
    path: '/InnerHome',

  },

},{
initialRouteName: 'Home',

});
Now if user is already logged in , I want user to directly redirect from Home screen to InnerHome
I have done something like this...
const redirectWelcome = NavigationActions.reset({
index: 0,
actions: [
NavigationActions.navigate({ routeName: 'InnerHome' })
]
})
componentDidMount() {
		//this.props.navigation.navigate('InnerHome');

	alert("test");

if(user_loggedin)
{
	this.props.navigation.dispatch(redirectWelcome);
}

}
.....
but this is not working... (I have observed componentDidMount is calling infinite time of this screen only)
Please help me in this.

Any fix for this issue ?

This is a very hacky way but it worked for me:
onPress={() =>
Promise.all([
  navigation.dispatch(
    NavigationActions.reset({
      index: 0,
      // TabNav is a TabNavigator nested in a StackNavigator
      actions: [NavigationActions.navigate({ routeName: 'MenuNav' })]
    })
  )
]).then(() => navigation.navigate('Report'))
}

But it might lead to a better temporary solution. Hope it helps

@JorgeCeja Thanks a ton, this hacky thing worked for me. :)

@appwudo Thanks for bringing me back to sanity. I spent a couple hours trying to do this without having to have multiple screen tabScreens object but... just couldn't make it happen.

@JorgeCeja thanks! Saved my the whole of my life

I can confirm dispatching 2 actions synchronously work fine.
export const navigateToRootTab = (navigation,tabName) => {
  const actions = [
    NavigationActions.reset({
      index: 0,
      actions: [
        NavigationActions.navigate({
          routeName: "Root",
        }),
      ]
    }),
    NavigationActions.navigate({
      routeName: tabName,
    })
  ];
  actions.forEach(navigation.dispatch);
};

Yet I would also have expected the reset navigation sub-action to work and being able to set the navigation in expected state with a single action.

this seems popular, can someone submit a guide to the website explaining how to do it? http://github.com/react-navigation/website

@brentvatne I'd add this to documentation but it would be great to know first if this is the indented behavior.
For me, the following not working looks like a bug:
NavigationActions.reset({
  index: 0,
  actions: [
    NavigationActions.navigate({
      routeName: "Root", // StackNav root, whose screen is a TabNav
      action: NavigationActions.navigate({
        routeName: tabName, // This does not work, the TabNab is always reset to its initialRouteName
      })
    }),
  ]
});

if this is confirmed to be a bug, I think we should work on resolution, instead of documenting a temporary workaround.
So, can someone confirm it's a bug?

Agreed. Unless nested actions are being done away with, I think this is a hack/workaround.

It's definitely a hack/workaround, but not really that convoluted.
Here's how I'm handling it w/ success (aside from currently-mounted screens quickly animating as the resetAction is dispatched... an issue independent of this):
const createTabConfig = initialRouteName =>
  Platform.OS === "ios"
    ? {
        animationEnabled: false,
        initialRouteName,
        lazy: true,
        tabBarOptions: {
          activeTintColor: Colors.black,
          style: {
            backgroundColor: Colors.white
          },
          showLabel: false
        },
        navigationOptions: {
          headerLeft: null,
          gesturesEnabled: false
        }
      }
    : {
        animationEnabled: false,
        initialRouteName,
        lazy: true,
        tabBarOptions: {
          activeTintColor: Colors.black,
          style: {
            backgroundColor: Colors.white
          },
          showLabel: false
        },
        tabBarComponent: TabBarBottom,
        tabBarPosition: "bottom",
        swipeEnabled: false,
        enimationEnabled: false,
        backBehavior: "none",
        navigationOptions: {
          headerLeft: null,
          gesturesEnabled: false,
          headerTitleStyle: { alignSelf: "center" }
        }
      };

const tabScreens = {
    ...your tab screens
}

const HomeNavigation = TabNavigator(tabScreens, createTabConfig(screenYouWantToBeFirst));
const HomeNavWithThirdTabActive = TabNavigator(tabScreens, createTabConfig("thirdTabName"));

export { HomeNavigation, HomeNavWithThirdTabActive }

@wkoutre doesn't that create a copy of the whole stack, doubling your rendered elements?

@JulianKingman No -- at least not to my knowledge, anyway. I've set lazy to true so screens in the TabNavigator are loaded as they're mounted, not when the TabNavigator is navigated to. So, on my RootNav, I have screens with HomeNavigation and HomeNavThirdTab, navigating to one or the other -- in context with what the User is doing -- after performing a reset action.

this is a pretty long issue but if I understand it correctly then this rfc should solve it when implemented: https://github.com/react-navigation/rfcs/pull/25

@brentvatne I've read the RFC but not sure to understand how it is related.
Will this work after the RFC is implemented?
NavigationActions.reset({
  index: 0,
  actions: [
    NavigationActions.navigate({
      routeName: "Root",
      action: NavigationActions.navigate({
        routeName: tabName,
      })
    }),
  ]
});

this.props.navigation.navigate('nameOfFirstRouteInThatTab')

Thanks @brentvatne . So, if this is possible, what's the purpose of passing an extra navigate action like in my code above? In which case would you use this navigateAction sub-action?

@slorber, @brentvatne I am using the following code:
const HomeStack = StackNavigator(
  {
    Home: { screen: HomeScreen },
    Category: { screen: CategoryScreen },
    Details: { screen: DetailsScreen }
  },
  {
    initialRouteName: "Home"
  }
);

const FavouriteStack = StackNavigator({
  Favourite: { screen: FavouriteScreen }
});

const SettingsStack = StackNavigator({
  Settings: { screen: SettingsScreen }
});

export default TabNavigator(
  {
    HomeTab: { screen: HomeStack },
    FavouriteTab: { screen: FavouriteStack },
    SettingsTab: { screen: SettingsStack }
  },
  {
    tabBarPosition: "bottom",
    tabBarComponent: props => {
      return (

          <FooterTab>
            <Button
              vertical
              active={props.navigationState.index === 0}
              onPress={() => props.navigation.navigate("HomeTab")}
            >
              <Icon name="home" />
              <Text>Home</Text>
            </Button>
            <Button
              vertical
              active={props.navigationState.index === 1}
              onPress={() => props.navigation.navigate("FavouriteTab")}
            >
              <Icon name="star" />
              <Text>Favourite</Text>
            </Button>
            <Button
              vertical
              active={props.navigationState.index === 2}
              onPress={() => props.navigation.navigate("SettingsTab")}
            >
              <Icon name="settings" />
              <Text>Settings</Text>
            </Button>
          </FooterTab>

      );
    },
  }
);

Where do I put the reset navigation stack code?

It depends if you use stateful navigator or not (ie using Redux).
You can dispatch a navigation action if you use Redux, or you can wrap your navigator in a class comp, get a ref on it, and call dispatch on the navigator component instance

you can wrap your navigator in a class comp, get a ref on it, and call dispatch on the navigator component instance

I am not using Redux. I am new to react and react native. Please guide me.


Fixed make run command

I tried to start the project and got an error.
I corrected the makefile to fix it.

No, I prefer that you update the README to explain that a contributor must run make install prior to make run. The reason I don't want to automate that is that sometimes the dependencies are linked instead of installed (e.g. when I work on admin-on-rest-demo, the reactjs dependency of my admin-on-rest repo is a link to the one under admin-on-rest-demo).


is it possible to pass several parameters ?

hello
is it possible to pass several parameters ?

what do you mean?

you said:
"Trigger a task with custom variable name and values:
QvEDXTrigger.exe --task="Reload and distribute this fantastic task" --variable=Numbers --values=1;2;3;4;5"
so
is it possible to pass like
QvEDXTrigger.exe --task="someTask" --variable=param1 --values=1;2;3;4;5 --variable=param2 --values=100500
?

Ah, ok... That's not supported unfortunately, it should probably have been, but I didn't think about it 5 years ago and unfortunately have no possibility to update or maintain this project myself anymore. Sorry....

Not a problem. Thanks for replies.


fix: bundle generation

Fix ClusterServiceVersion permissions
Add ConfigMap permissions
Remove 'strimzi-cluster-operator-topic-operator-delegation' yaml

@lburgazzoli we moved the sha256 generation (for Strimzi and Camel k) from the bundle.sh script in the cos-manifests repository. This is now being done in the GitHub actions script.


BE dev: Meta tags for What to expect guide

Dependencies

[ ] Yes
add or link to any dependencies
[x] No

Tasks that effect specific pages - only on digital records where the what to expect gude appears and not the image viewer.
<meta name="Dcsext.wteg " content="What to expect guide" />

[ ] Done

Acceptance/test criteria
On pages where the What to expect guide appears (offsite users, digitised WO 95 records)
<meta name="Dcsext.wteg " content="What to expect guide" />

[ ] Done

Implementation has been done on "what_to_expect_guide_new" branch.


Changed CCTexture2D.Name property

Changed CCTexture2D.Name property to return XNATexture.Name instead of XNATexture object.

This commit does not match the description.


Spanish news item can only be displayed as English

Hi all,
This Spanish news items appears on the English interface: https://landportal.info/news/2016/05/cinco-razones-por-las-que-la-juventud-debería-optar-por-la-agricultura. I unpublished it for now.
I tried to change the language to Spanish on the bottom of the page, but it does not appear in the dropdown menu for some reason.
If I try to add a new news item, that drop down menu does seem to work.
Any ideas?

It happened because this content was created as an English one (and you cannot change this afterwards, maybe that's the thing to be changed here)
https://landportal.info/node/30342/translate
How to fix it?
re-create the news, this time using Spanish, then remove this one.
OR (maybe?)
create a translation for this news in Spanish (link above) and remove/leave the English one un-publish.
The issue here seems more to be the human/keyboard interface.

Ok good, I'll take care of that then.
Thanks Jules!
On Tuesday, 3 May 2016, Jules CR<EMAIL_ADDRESS>wrote:

It happened because this content was created as an English one (and you
cannot change this afterwards, maybe that's the thing to be changed here)
https://landportal.info/node/30342/translate
How to fix it?
re-create the news, this time using Spanish, then remove this one.
OR (maybe?)
create a translation for this news in Spanish (link above) and
remove/leave the English one un-publish.
The issue here seems more to be the human/keyboard interface.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/landportal/drupal/issues/63#issuecomment-216478113


MOO Benchmark - JAHS-Bench

@thchang is currently working on it in https://github.com/thchang/benchmark/tree/main/lib/JAHSBench
!!! NOT COMPATIBLE WITH MACOS !!!

Hey @thchang, I can't remember if this was merged in main and the issue should be closed?

No, the code is working on my fork, but has not been merged into main because i haven't had time to document the usage and update the README files, etc.


[Auth] Supports personal access token generation

Adds basic auth to the request data.
Closes #11.

:+1:


SCL content change

Context
https://trello.com/c/c6dTvX1v
Changes proposed in this pull request
Guidance to review

 Changes to the 'How to order' guidance page for SCL users.


add charts for databend

Signed-off-by: Ye Sijun<EMAIL_ADDRESS>

We can consider introduce another chart -- databend, which can contain two components at the same time, users can create databend-meta and databend-query with one yaml file.

I would prefer this one


Add flush interval configuration

This PR is about adding possibility to flush batch messages every X seconds.
This configuration will be in addition to the other flush rules (batch_size, and batch_byte_size).

There test are not passing on Travis, but pass locally...

LGTM, I'll try and get the CI fixed asap.