crash when using IotNetworkInterface->setReceiveCallback with lwip porting

hi there,
I meet crash when using IotNetworkInterface->setReceiveCallback, you could recurring the issue with following code piece
#include "platform/iot_network.h"
#include "platform/iot_network_afr.h"
void Echo_ReceiveCallback(void *pNetworkConnection, void *pReceiveContext)
{
    char buffer[32];
    const IotNetworkInterface_t *pNetworkInterface = (const IotNetworkInterface_t *)pReceiveContext;
    size_t recvLength;

    recvLength = pNetworkInterface->receive(pNetworkConnection, (uint8_t *)buffer, sizeof(buffer));
    vLoggingPrintf("%s %d %.*s\n", __FUNCTION__, recvLength, recvLength, buffer);
}

void handle_echo_task(void *pvParameters)
{
    const IotNetworkInterface_t *pNetworkInterface = IOT_NETWORK_INTERFACE_AFR;
    IotNetworkServerInfo_t *pServerInfo = (IotNetworkServerInfo_t *)pvParameters;
    void *pNetworkConnection = NULL;
    size_t msgLength, sendLength;
    IotNetworkError_t networkStatus = IOT_NETWORK_SUCCESS;

    IotSdk_Init();

    networkStatus = pNetworkInterface->create(pServerInfo, NULL, &pNetworkConnection);
    if (networkStatus != IOT_NETWORK_SUCCESS)
    {
        vLoggingPrintf("%s:%d networkStatus=%d\n", __FUNCTION__, __LINE__, networkStatus);
        goto exit;
    }

    networkStatus = pNetworkInterface->setReceiveCallback(pNetworkConnection, Echo_ReceiveCallback, (void *)pNetworkInterface);
    if (networkStatus != IOT_NETWORK_SUCCESS)
    {
        vLoggingPrintf("%s:%d networkStatus=%d\n", __FUNCTION__, __LINE__, networkStatus);
        goto exit;
    }

    vTaskDelay(1);

    msgLength = strlen("IOT_NETWORK_INTERFACE_AFR");
    sendLength = pNetworkInterface->send(pNetworkConnection, "IOT_NETWORK_INTERFACE_AFR", msgLength);
    if (sendLength != msgLength)
    {
        vLoggingPrintf("%s:%d %d != %d\n", __FUNCTION__, __LINE__, sendLength, msgLength);
        goto exit;
    }

exit:
    if (NULL != pNetworkConnection)
    {
        networkStatus = pNetworkInterface->close(pNetworkConnection);
        vLoggingPrintf("%s:%d networkStatus=%d\n", __FUNCTION__, __LINE__, networkStatus);

        networkStatus = pNetworkInterface->destroy(pNetworkConnection);
        vLoggingPrintf("%s:%d networkStatus=%d\n", __FUNCTION__, __LINE__, networkStatus);
    }

    IotSdk_Cleanup();
    vTaskDelete(NULL);
}

step

add above code to project and register command like following

    if (0 == strcmp(argv[1], "echo"))
    {
        static IotNetworkServerInfo_t xServerInfo;

        if (argc < 4)
        {
            vLoggingPrintf("Usage: %s echo url port\n", argv[0]);
            return;
        }
        xServerInfo.pHostName = argv[2];
        xServerInfo.port = atoi(argv[3]);
        /* Create the task to run unit tests. */
        xTaskCreate( handle_echo_task,
                     "echo_task",
                     mainTEST_RUNNER_TASK_STACK_SIZE,
                     &xServerInfo,
                     tskIDLE_PRIORITY + 1,
                     NULL );
        return;
    }

compile project and burn firmware
run an echo server
start up board and connect with WIFI
connect to echo server with above command like "xxx echo echo_server echo_port"

Hello,
Thank you for reporting this , we are actively working on this and will get back soon.

@eddid
The issue seems related to the known issue we have in lwip port that, receiving, sending and closing sockets in different threads is not safe if LWIP_NETCONN_FULLDUPLEX  is not defined. For more details you can check #461.
Are you using the lwip port from Amazon FreeRTOS under https://github.com/aws/amazon-freertos/tree/master/libraries/3rdparty/lwip ?
If so, please watch here for more updates, as we are fixing some regressions in full duplex mode in our port for lwip.

@eddid
The issue seems related to the known issue we have in lwip port that, receiving, sending and closing sockets in different threads is not safe if LWIP_NETCONN_FULLDUPLEX  is not defined. For more details you can check #461.
Are you using the lwip port from Amazon FreeRTOS under https://github.com/aws/amazon-freertos/tree/master/libraries/3rdparty/lwip ?
If so, please watch here for more updates, as we are fixing some regressions in full duplex mode in our port for lwip.

hi @ravibhagavandas ,
I have test with LWIP_NETCONN_FULLDUPLEX enabled, and the issue still exists.
regards,
eddid

@eddid  Can you point to the LWIP version or commit ID you are using so that I can quickly reproduce the issue locally ?
Also there was a recent fix made for LWIP_NETCONN_FULLDUPLEX  in PR #1496. Did you include those changes as well in testing ?

@ravibhagavandas
I port baseline 201906.00_Major to our EVB, so the version of LWIP should be STABLE-2.0.3, you could refer to the code at:
https://github.com/bekencorp/bk7231u_freertos_aws
the issue still exists when test with latest code of amazon-freertos, and I could workaround this issue with two methods:
a) modify lwipopts.h like mediatek
https://github.com/aws/amazon-freertos/blob/master/vendors/mediatek/boards/mt7697hx-dev-kit/aws_tests/config_files/lwipopts.h
b) predefine IOT_NETWORK_RECEIVE_TASK_PRIORITY to lowest priority in config
#define IOT_NETWORK_RECEIVE_TASK_PRIORITY      ( tskIDLE_PRIORITY )

the different of lwipopts.h between mediatek and us is
#define MEM_USE_EXTERNAL_MGMT          (1)

we using system heap to malloc/free memory for lwip, other than lwip private heap,
so it might trigger task switch when malloc memory in lwip
void *pvPortMalloc( size_t xWantedSize )
{
	...
	vTaskSuspendAll();
	...
	( void ) xTaskResumeAll();
	...
}

so, above two workaround just avoid some task switch when "NetRecv" running, that will avoid "NetRecv" task in pending state when another task close the socket.
a better solution should be close the socket safely,
and the test solution should be enhance the robustness of lwip :-)

Hi @eddid ,
I am not able to reproduce the crash using above code with amazon freertos latest commit id c066b4998e263ff9e06487bfd21ebb50ee8450ec and lwip version 2.1.2  (part of third party folder in amazon freertos),  on Mediatek board.
Here are the logs:
loader init
fota partition base: 0x266000, length: 0x18a000, offset from end: 0x200
magic ver: -1
fota: TMP is empty, skip upgrade
jump to (0x10079000)
0 0 [wrap] Starting up
1 34 [wrap] Write certificate...
2 718 [wrap] WiFi module initialized. Connecting to AP...
3 718 [wpa_supplicant] ========= Supplicant Ready =======4 6865 [wrap] WiFi Connected to AP. Creating tasks which use network...
5 6867 [echo_task] [INFO ][INIT][6867] SDK successfully initialized.
6 6921 [echo_task] handle_echo_task:37 Network creation succeeded
7 6922 [echo_task] handle_echo_task:60 networkStatus=0
8 7223 [echo_task] handle_echo_task:63 networkStatus=0
9 7223 [echo_task] [INFO ][INIT][7223] SDK cleanup done.

However with older version, 201906.00_Major which uses LWIP STABLE-2.0.3 version, I am able to reproduce the crash using the same code on Mediatek board. Logs:
 545 [wrap] WiFi module initialized. Connecting to AP...
2 546 [wpa_supplicant] ========= Supplicant Ready =======3 6149 [wrap] WiFi Connected to AP. Creating tasks which use network...
4 6150 [echo_task] [INFO ][INIT][6150] SDK successfully initialized.
5 6199 [echo_task] handle_echo_task:38 Network creation succeeded
6 6200 [echo_task] handle_echo_task:61 networkStatus=0

In Bus Fault Handler
SCB->CFSR = 0x00008200
Bus fault: A precise data access error has occurred @x43ffffff
SCB->BFAR = 0x43ffffff
r0  = 0x2001754c
r1  = 0x44000000
r2  = 0x43fffffd
r3  = 0x00000000

Also from the issue #461 , its mentioned that the bug exists in lwip 2.0.3 version

We have confirmed the behavior that @caleb-garrett reported here. With LwIP 2.0.3 this will be a problem because this version of LwIP does not support closing a socket from a thread different from the one you are reading the same socket with.

So, could you bump up the LWIP version to 2.1.2 and retest with LWIP_NETCONN_FULLDUPLEX mode enabled ? Additionally to get all the latest bug fixes, you can pull the LWIP code from our third party folder here

hi @ravibhagavandas ,
test with lasted code with LWIP_NETCONN_FULLDUPLEX enable, the bug could not be reproduced.
thank you for your help.

Thanks for confirming. I have closed the related PR which has the workaround, which is no longer needed.


Implement refreshtoken flow in SwaggerUI

I would like to know whether swagger ui will implement the refresh token flow when a 401 error occurs by refreshing the access token with the refresh token
What version of the library are you using?
springfox-swagger2:2.9.2
What kind of issue is this?
Question

This question in not answered yet

@samuelj90 that as a bot as you can tell. It should be fixed with the latest 3.0.0-SNAPSHOT


[improve][client]pulsar-client-io thread has high CPU usage when client idle and batch message enable

Search before asking

[X] I searched in the issues and found nothing similar.

Motivation
Create a pulsar client and to initialize, send a little message to topic, then the pulsar-client-io thread(just 1 thread by default) cpu usage is 14%, but client is idle, no action for it.

the root cause is that batch message sending is enable, ProducerImpl would use pulsar-client-io thread to send message per 1ms by default

pulsar-client use EventLoopGroup as thread pool, the thread name is "pulsar-client-io"，EpollEventLoopGroup is preferred.
When switch to NioEventLoopGroup, the CPU usage just reduce little to 9.6%

Solution
Use ScheduledExecutorService to send batch message to replace the EventLoopGroup. It would reduce CPU usage less than 1%

Alternatives
No response
Anything else?
No response
Are you willing to submit a PR?

[X] I'm willing to submit a PR!

@stillerrr When the client is idle, batchFlushTasks aren't scheduled in the Pulsar client code.
The current problem description where it says "when client idle" doesn't make sense to my.

It could be useful to use a real profiler sync as https://github.com/async-profiler/async-profiler to pinpoint the problem.

EventLoopGroup is always running

@stillerrr When the client is idle, batchFlushTasks aren't scheduled in the Pulsar client code. The current problem description where it says "when client idle" doesn't make sense to my.

EventLoopGroup do scheduled task would use more CPU than ScheduledExecutorService
"when client idle" means few requests, maybe 1000 request per second, and it would cause batchFlushTasks scheduled

"when client idle" means few requests, maybe 1000 request per second, and it would cause batchFlushTasks scheduled

well, it's not really idling if there's 1000 requests per second. I think that the title of this issue is very misleading.


HDDS-1422. Exception during DataNode shutdown. Contributed by Arpit A…

…garwal.
Change-Id: I981fbd087baca80cc6b4ff58e91e63dcd9726c13

Hi @arp7
Thanks for the fix.
To understand the fix, we have removed the setting of usage to null, so that even when DN is shut down, and if someone calls volume usage we return old value, instead of throwing an exception.
Is my understanding correct or am I missing something here?

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
25
Docker mode activated.

_ Prechecks _

+1
@author
0
The patch does not contain any @author tags.

+1
test4tests
0
The patch appears to include 2 new or modified test files.

_ trunk Compile Tests _

+1
mvninstall
1058
trunk passed

+1
compile
38
trunk passed

+1
checkstyle
20
trunk passed

+1
mvnsite
33
trunk passed

+1
shadedclient
711
branch has no errors when building and testing our client artifacts.

+1
findbugs
51
trunk passed

+1
javadoc
28
trunk passed

_ Patch Compile Tests _

+1
mvninstall
36
the patch passed

+1
compile
26
the patch passed

+1
javac
26
the patch passed

-0
checkstyle
13
hadoop-hdds/container-service: The patch generated 3 new + 0 unchanged - 0 fixed = 3 total (was 0)

+1
mvnsite
30
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
729
patch has no errors when building and testing our client artifacts.

-1
findbugs
57
hadoop-hdds/container-service generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)

+1
javadoc
25
the patch passed

_ Other Tests _

-1
unit
77
container-service in the patch failed.

+1
asflicense
28
The patch does not generate ASF License warnings.

3072

Reason
Tests

FindBugs
module:hadoop-hdds/container-service

Inconsistent synchronization of org.apache.hadoop.ozone.container.common.volume.VolumeUsage.scmUsage; locked 60% of time  Unsynchronized access at VolumeUsage.java:60% of time  Unsynchronized access at VolumeUsage.java:[line 183]

Failed junit tests
hadoop.ozone.container.common.TestDatanodeStateMachine

hadoop.ozone.container.common.volume.TestVolumeSet

Subsystem
Report/Notes

Docker
Client=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-725/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/725

Optional Tests
dupname  asflicense  compile  javac  javadoc  mvninstall  mvnsite  unit  shadedclient  findbugs  checkstyle

uname
Linux 21d98372751e 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 586826f

maven
version: Apache Maven 3.3.9

Default Java
1.8.0_191

findbugs
v3.1.0-RC1

checkstyle
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/1/artifact/out/diff-checkstyle-hadoop-hdds_container-service.txt

findbugs
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/1/artifact/out/new-findbugs-hadoop-hdds_container-service.html

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/1/artifact/out/patch-unit-hadoop-hdds_container-service.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/1/testReport/

Max. process+thread count
432 (vs. ulimit of 5500)

modules
C: hadoop-hdds/container-service U: hadoop-hdds/container-service

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/1/console

Powered by
Apache Yetus 0.9.0 http://yetus.apache.org

This message was automatically generated.

Hi @arp7
Thanks for the fix.
To understand the fix, we have removed the setting of usage to null, so that even when DN is shut down, and if someone calls volume usage we return old value, instead of throwing an exception.
Is my understanding correct or am I missing something here?

That is correct @bharatviswa504 .

Thank You @arp7 for the reply.
Now I want to understand what benefit, this fix will give. If I understand correctly, if during shutdown even if some one is using volume API to get usage they will get some value, instead of exception. Are is there any other thing?

This is to avoid spurious exception messages during DataNode shutdown. They were creating noise in the logs, especially when running MiniOzoneChaosCluster which frequently restarts nodes.

/retest

Addressed issues flagged by CI, and rebased to current trunk.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
51
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

+1
test4tests
0
The patch appears to include 2 new or modified test files.

_ trunk Compile Tests _

+1
mvninstall
435
trunk passed

+1
compile
212
trunk passed

+1
checkstyle
52
trunk passed

+1
mvnsite
0
trunk passed

+1
shadedclient
841
branch has no errors when building and testing our client artifacts.

+1
javadoc
131
trunk passed

0
spotbugs
325
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
567
trunk passed

_ Patch Compile Tests _

+1
mvninstall
464
the patch passed

+1
compile
251
the patch passed

+1
javac
251
the patch passed

+1
checkstyle
65
the patch passed

+1
mvnsite
0
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
769
patch has no errors when building and testing our client artifacts.

+1
javadoc
155
the patch passed

+1
findbugs
558
the patch passed

_ Other Tests _

-1
unit
155
hadoop-hdds in the patch failed.

-1
unit
1344
hadoop-ozone in the patch failed.

+1
asflicense
39
The patch does not generate ASF License warnings.

6961

Reason
Tests

Failed junit tests
hadoop.ozone.TestHddsDatanodeService

hadoop.ozone.container.common.volume.TestVolumeSet

hadoop.ozone.container.common.volume.TestVolumeSetDiskChecks

hadoop.ozone.container.keyvalue.TestKeyValueContainer

hadoop.ozone.container.common.TestDatanodeStateMachine

hadoop.ozone.container.common.statemachine.commandhandler.TestCloseContainerCommandHandler

hadoop.ozone.container.keyvalue.TestBlockManagerImpl

hadoop.ozone.container.keyvalue.TestKeyValueBlockIterator

hadoop.ozone.container.ozoneimpl.TestOzoneContainer

hadoop.ozone.container.common.volume.TestHddsVolume

hadoop.ozone.container.keyvalue.TestKeyValueContainerMarkUnhealthy

hadoop.ozone.container.common.volume.TestRoundRobinVolumeChoosingPolicy

hadoop.ozone.container.common.impl.TestHddsDispatcher

hadoop.ozone.container.keyvalue.TestKeyValueContainerCheck

hadoop.ozone.container.keyvalue.TestKeyValueHandler

hadoop.ozone.container.keyvalue.TestChunkManagerImpl

hadoop.ozone.client.rpc.TestBlockOutputStream

hadoop.ozone.scm.pipeline.TestPipelineManagerMXBean

hadoop.ozone.web.TestOzoneWebAccess

hadoop.ozone.client.rpc.TestBCSID

hadoop.ozone.client.rpc.TestOzoneRpcClient

hadoop.ozone.scm.node.TestQueryNode

hadoop.ozone.web.client.TestOzoneClient

hadoop.ozone.om.TestOmInit

hadoop.ozone.TestStorageContainerManager

hadoop.hdds.scm.pipeline.TestSCMPipelineManager

hadoop.ozone.client.rpc.TestHybridPipelineOnDatanode

hadoop.ozone.container.common.TestBlockDeletingService

hadoop.ozone.container.TestContainerReplication

hadoop.ozone.TestContainerStateMachineIdempotency

hadoop.ozone.client.rpc.TestSecureOzoneRpcClient

hadoop.ozone.container.common.statemachine.commandhandler.TestBlockDeletion

hadoop.ozone.container.metrics.TestContainerMetrics

hadoop.ozone.client.rpc.TestContainerStateMachine

hadoop.ozone.scm.node.TestSCMNodeMetrics

hadoop.ozone.om.TestOzoneManager

hadoop.ozone.TestMiniChaosOzoneCluster

hadoop.ozone.om.TestContainerReportWithKeys

hadoop.ozone.om.TestMultipleContainerReadWrite

hadoop.ozone.container.common.impl.TestContainerPersistence

hadoop.hdds.scm.container.TestContainerStateManagerIntegration

hadoop.hdds.scm.pipeline.TestNode2PipelineMap

hadoop.ozone.TestContainerOperations

hadoop.ozone.container.ozoneimpl.TestOzoneContainer

hadoop.ozone.scm.TestXceiverClientMetrics

hadoop.ozone.scm.TestAllocateContainer

hadoop.ozone.container.ozoneimpl.TestSecureOzoneContainer

hadoop.ozone.client.rpc.TestOzoneRpcClientWithRatis

hadoop.ozone.web.client.TestKeys

hadoop.ozone.container.common.statemachine.commandhandler.TestCloseContainerHandler

hadoop.ozone.client.rpc.TestOzoneAtRestEncryption

hadoop.ozone.container.common.statemachine.commandhandler.TestDeleteContainerHandler

hadoop.ozone.scm.pipeline.TestSCMPipelineMetrics

hadoop.ozone.ozShell.TestOzoneDatanodeShell

hadoop.ozone.scm.TestGetCommittedBlockLengthAndPutKey

hadoop.ozone.om.TestOmBlockVersioning

hadoop.hdds.scm.pipeline.TestRatisPipelineUtils

hadoop.ozone.om.TestOmAcls

hadoop.ozone.TestMiniOzoneCluster

hadoop.ozone.container.common.statemachine.commandhandler.TestCloseContainerByPipeline

hadoop.ozone.om.TestOmMetrics

hadoop.ozone.client.rpc.TestCloseContainerHandlingByClient

hadoop.ozone.client.rpc.TestContainerStateMachineFailures

hadoop.ozone.client.rpc.TestBlockOutputStreamWithFailures

hadoop.ozone.om.TestOMDbCheckpointServlet

hadoop.ozone.ozShell.TestS3Shell

hadoop.ozone.scm.TestContainerSmallFile

hadoop.ozone.scm.TestXceiverClientManager

hadoop.hdds.scm.pipeline.TestPipelineClose

hadoop.ozone.client.rpc.TestWatchForCommit

hadoop.ozone.client.rpc.TestReadRetries

hadoop.ozone.scm.TestSCMNodeManagerMXBean

hadoop.ozone.web.TestOzoneRestWithMiniCluster

hadoop.ozone.scm.TestSCMMXBean

hadoop.ozone.om.TestScmSafeMode

hadoop.ozone.client.rpc.TestOzoneClientRetriesOnException

hadoop.hdds.scm.safemode.TestSCMSafeModeWithPipelineRules

hadoop.ozone.ozShell.TestOzoneShell

hadoop.ozone.om.TestOzoneManagerRestInterface

hadoop.hdds.scm.pipeline.TestNodeFailure

hadoop.ozone.web.TestOzoneVolumes

hadoop.ozone.web.client.TestBuckets

hadoop.ozone.web.client.TestVolume

hadoop.ozone.client.rpc.TestCommitWatcher

hadoop.hdds.scm.pipeline.TestSCMRestart

hadoop.ozone.web.client.TestKeysRatis

Subsystem
Report/Notes

Docker
Client=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-725/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/725

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 4937e4c93966 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 3418bbb

Default Java
1.8.0_191

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/2/artifact/out/patch-unit-hadoop-hdds.txt

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/2/artifact/out/patch-unit-hadoop-ozone.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/2/testReport/

Max. process+thread count
5010 (vs. ulimit of 5500)

modules
C: hadoop-hdds/container-service U: hadoop-hdds/container-service

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-725/2/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

Fix UT failures caused by previous commit.

/retest

+1, LGTM. Thanks for the patch, and thanks for the review. @bharatviswa504


Add citations endpoints

Is your feature request related to a problem? Please describe.
Issue https://github.com/ag-gipp/NLP-Land-frontend/issues/21 requires some things to be implemented in the backend.
Describe the solution you'd like
Implement the following endpoints:

[x] Ingoing citations aggregated and counted by year
[x] Outgoing citations aggregated and counted by year
[x] All endpoints should support filters

Describe alternatives you've considered
All endpoints might be dropped depending on the choices made in the frontend.

Added in #58


Feature: Push revision (without deployment)

As Ops I would like to push a revision (without deploying) after a successful build so I can trigger a deployment through the CLI or Console at a later date.

I would like to be able to push a revision as well. This would allow our organization the ability for one team to create the revision, and then handoff deployment of that revision to another team.

Agreed. It would be better if this plugin was structurally divided into two: one to create a revision, one to push it to a deployment group while specifying a revision. That would also satisfy the item on your TODO file list: * Add ability to deploy to multiple deployment groups. We could add n deployment groups pointing to same revision location


CI(neon-image): add ARM-specific RUSTFLAGS

Problem
It's recommended that a couple of additional RUSTFLAGS be set up to improve the performance of Rust applications on AWS Graviton.
See https://github.com/aws/aws-graviton-getting-started/blob/57dc813626d0266f1cc12ef83474745bb1f31fb4/rust.md
Note: Apple Silicon is compatible with neoverse-n1:
$ clang --version
Apple clang version 15.0.0 (clang-15<IP_ADDRESS>)
Target: arm64-apple-darwin23.6.0
Thread model: posix
InstalledDir: /Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
$
$ clang --print-supported-cpus 2>&1 | grep neoverse-
	neoverse-512tvb
	neoverse-e1
	neoverse-n1
	neoverse-n2
	neoverse-v1
	neoverse-v2

Summary of changes

Add -Ctarget-feature=+lse -Ctarget-cpu=neoverse-n1 to RUSTFLAGS for ARM images

Checklist before requesting a review

[x] I have performed a self-review of my code.
[ ] If it is a core feature, I have added thorough tests.
[ ] Do we need to implement analytics? if so did you add the relevant metrics to the dashboard?
[ ] If this PR requires public announcement, mark it with /release-notes label and add several sentences in this section.

Checklist before merging

[ ] Do not forget to reformat commit message to not include the above checklist

As much as I hate cargo as a build system, I wonder if it wouldn't be better to add a build.rs that detected a graviton processor and added the flags.

As much as I hate cargo as a build system, I wonder if it wouldn't be better to add a build.rs that detected a graviton processor and added the flags.

Our CI runners aren't based on Graviton, so we can't detect it at runtime

I have a graviton node running that I can quickly try cargo bench -p pageserver on... will report back.

Benchmarks look fine.  It appears to be a few percent faster for the bench_ingest benchmarks.


question about lost dogecoin REVISITED

Discussed in https://github.com/dogecoin/dogecoin/discussions/3061

Originally posted by ckoretsky July 21, 2022
hi, im sorry to bother anyone,  i dont know where else to ask help finding my dogecoin.  I have this from coinbase.  and I was running dogecoin core on both my computers at the time,  silly since i know nothing about how it all works.  thanks if anyone can help
email<EMAIL_ADDRESS>

Did you copy the data directory from your old SSD to the new SSD? If not, you'll want to try to recover the file wallet.dat from your C:\Users\<youruser>\Application Data\Dogecoin folder on the old SSD - this contains your keys.

I sent the ssd in and got a replacement from the warranty. I'm sure it must have been backed up somewhere but before I go through every hard drive I have, can you tell from looking on the block chain if I have any dogecoin and how much. Is that possible to know?

I'm closing this, as a (partial) resolution seems to have been found in #3061 - let's keep it all in one place.


loggingPrefs not respected - always INFO logging

I'm starting protractor with the following config. Specifically, these capabilities:
  capabilities: {
    'browserName': 'firefox',

    'loggingPrefs': {
      'driver': 'WARNING',
      'server': 'WARNING',
      'browser': 'WARNING'
    }
  },

Yet, when I run my tests, I'm still getting a ton of INFO logs (log dump). Specifically, the most verbose logs are from an executeScript call.
When I start using ./node_modules/.bin/protractor --troubleshoot, I see the following in the output:
DEBUG - WebDriver session successfully started with capabilities { caps_:
   { applicationCacheEnabled: true,
     rotatable: false,
     handlesAlerts: true,
     databaseEnabled: true,
     version: '40.0',
     platform: 'LINUX',
     nativeEvents: false,
     acceptSslCerts: true,
     'webdriver.remote.sessionid': '49993575-e0ba-4e87-b93b-e5ae8371d3b3',
     webStorageEnabled: true,
     locationContextEnabled: true,
     browserName: 'firefox',
     takesScreenshot: true,
     javascriptEnabled: true,
     cssSelectorsEnabled: true } }

Note, there's no loggingPrefs object.
Someone opened a similar issue in https://github.com/angular/protractor/issues/2315, and from what I can tell, they were also using some variant of executeScript.
This is currently making it very difficult to debug Travis failures as my logs are exceeding 4MB (the limit).

@sjelin would you mind chiming in?

If on this line you add console.log(this.config_.capabilities);, what do you see?

Got curious, looks like an external bug.  Filed one myself: https://github.com/SeleniumHQ/selenium/issues/983
Will keep working on a work-around.

Tried to solve the problem with a firefox profile but it didn't work.  I might be misusing the feature though - I'm not sure.

Per https://github.com/SeleniumHQ/selenium/issues/983 it sounds like the issue is in protractor. Is that correct? If so, any ETA on a fix?

If you're using webdriver-manager to spawn your selenium server than it is indeed a Protractor issue.  For a work-around, I'd suggest adding
args.push(-Djava.util.logging.config.file="logging.properties");

right above this line, where logging.properties is a file that contains:
.level = WARNING

@sjelin I think you should provide a convenient way to pass 'logging.properties' file, e.g. via configuration file instead of hard-coding in 'webdriver-manager' code.

Yeah, I mean, currently webdriver-manager doesn't allow for config files.  And the config file you pass to protractor can't communicate to webdriver-manager.  So it's unclear exactly how this feature should look.  But there should definitely be something.

Just to make sure I understand this correctly... After this is fixed, will the [launcher] logging go away?

right above this line, where logging.properties is a file that contains:

@sjelin Did you mean this line? When I followed your link, I got this line (from the master branch at time of writing).
If so, can you edit your comment please? For more info, see y here: https://help.github.com/articles/using-keyboard-shortcuts/#source-code-browsing

@sjelin Your link in https://github.com/angular/protractor/issues/2436#issuecomment-135688608 is also broken for the same reason: it's referencing master, not a commit hash of the time

Moved to https://github.com/angular/webdriver-manager/issues/61

is this fixed? I can't change logging level for my protractor tests. It is always INFO. I use jasmine, chrome as a browser and webdriver-manager.

Could someone provide an example of how to implement this?

This worked for me...
webdriver-manager start --logging /absolute/path/to/logging.properties
logging.properties looked like...
handlers=java.util.logging.ConsoleHandler
org.level=WARNING

I couldn't figure out what class names all the logging was coming from so I just applied it to all org.* classes.

@darrinholst
I tried your solution with org.level=ALL and got the below output when restarting webdriver-manager, so I'm assuming it was correctly started with the configured log level?
when I run my test suite (protractor protractor.conf.modular.js --suite=e2e), the console output and spec/results.xml log output still look the same as before, so doesn't look like the log level changed.
how do I know if the configured log level really took affect, where do I need to look/check?
thanks in advance!
sudo webdriver-manager start --logging ~/projects/web_static/automation.log-level
[09:35:29] I/start - java -Djava.util.logging.config.file=/Users/user/projects/web_static/automation.log-level -Dwebdriver.gecko.driver=/Users/user/.nvm/versions/node/v6.9.4/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver-v0.20.1 -Dwebdriver.chrome.driver=/Users/user/.nvm/versions/node/v6.9.4/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.38 -jar /Users/user/.nvm/versions/node/v6.9.4/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.11.0.jar -port 4444
[09:35:29] I/start - seleniumProcess.pid: 24416
09:35:30.300 INFO [GridLauncherV3.launch] - Selenium build info: version: '3.11.0', revision: 'e59cfb3'
09:35:30.303 INFO [GridLauncherV3$1.launch] - Launching a standalone Selenium Server on port 4444
2018-05-01 09:35:30.471:INFO::main: Logging initialized @521ms to org.seleniumhq.jetty9.util.log.StdErrLog
09:35:30.664 INFO [SeleniumServer.boot] - Welcome to Selenium for Workgroups....
09:35:30.665 INFO [SeleniumServer.boot] - Selenium Server is up and running on port 444

Any update on the fix?


Learn AWS tutorial - Build a Serverless Web Application

https://aws.amazon.com/getting-started/hands-on/build-serverless-web-app-lambda-apigateway-s3-dynamodb-cognito/

[x] Eldad
[ ] David
[ ] Andrey
[ ] Sasha

The Lambda function body in this tutorial is missing - you need to switch to https://webapp.serverlessworkshops.io/setup/
But my unicorn request is not working... I get an "undefined" error.... I don't know why (yet).


Cordova/Ionic Unable to Install

Fails with error:
Failed to install 'io.branch.sdk':Error: ENOENT, no such file or directory '/io.branch.sdk/dist/cordova/build.js'
Looks like plugin.xml is pointing to dist/cordova/build.js - but the file is dist/build.js

Hi @hookano - we've migrated the Cordova/Ionic SDK to a separate repository: https://github.com/BranchMetrics/Cordova-Ionic-PhoneGap-Deferred-Deep-Linking-SDK and: https://www.npmjs.com/package/branch-cordova-sdk This should be resolved.


Add C interface tutorial

Should be viewable on ReadTheDocs: https://umpire.readthedocs.io/en/feature-um-257-c-tutorial/

@mcfadden8 this should be ready for review. It includes tutorial examples for allocators, resources, and pools in C, as well as the recent updates and additions to the C/Fortran API.
I propose we then start a new branch to figure out the extra Fortran stuff on the roadmap.


Unable to internalize application installers from Chocolatey CDN when doing choco download

Checklist

[X] I confirm there are no unresolved issues reported on the Chocolatey Status page.
[X] I have verified this is the correct repository for opening this issue.
[X] I have verified no other issues exist related to my problem.
[X] I have verified this is not an issue for a specific package.
[X] I have verified this issue is not security related.
[X] I confirm I am using official, and not unofficial, or modified, Chocolatey products.

What You Are Seeing?
When attempting to download (also known an internalize) a package from the Chocolatey Community Repository, the following error is returned:

System.Exception: The remote file either doesn't exist, is unauthorized, or is forbidden for url .
The remote server returned an error: (403) Forbidden.

What is Expected?
The internalization process should succeed without error.
How Did You Get This To Happen?
Execute the following command:
choco download GoogleChrome --internalize --source https://community.chocolatey.org/api/v2/

Since this package uses an installer which is cached in the Chocolatey CDN, it will attempt to download the application installer from there, and it will fail to find it, even those it is there.
That is why the 403 error is generated.
System Details

Operating System: Windows 10
Windows PowerShell version: Latest Windows PowerShell
Chocolatey CLI Version: N/A happens on all CLE versions
Chocolatey Licensed Extension version: N/A happens on all CLE versions
Chocolatey License type: Business
Terminal/Emulator: PowerShell

Installed Packages
N/A

Output Log
Chocolatey v1.4.0 Business
Downloading existing package(s) to c:\choco-setup\packages\download
googlechrome v123.0.6312.58 (forced) [Approved]
Found internalizable Chocolatey functions. Inspecting values for remote resources.
Found 'https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise.msi' for replacement.
Will use download CDN cache instead of original url.
Found 'https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise64.msi' for replacement.
Will use download CDN cache instead of original url.
Encountered error downloading package googlechrome v:
System.Exception: The remote file either doesn't exist, is unauthorized, or is forbidden for url <REDACTED>.
  The remote server returned an error: (403) Forbidden.
   at chocolatey.licensed.infrastructure.app.commandresources.RemoteDownloader.download_file(String url, String filePath, String userAgent, Boolean showProgress)
   at chocolatey.licensed.infrastructure.app.commands.ProChocolateyDownloadCommand.process_downloaded_package(IPackage package, String downloadLocation, ChocolateyConfiguration configuration)
   at chocolatey.infrastructure.app.nuget.NugetCommon.<>c__DisplayClass9_0.<GetPackageManager>b__0(Object s, PackageOperationEventArgs e)
   at NuGet.PackageManager.OnInstalled(PackageOperationEventArgs e)
   at NuGet.PackageManager.Execute(IPackage package, IPackageOperationResolver resolver)
   at NuGet.PackageManager.InstallPackage(IPackage package, Boolean ignoreDependencies, Boolean allowPrereleaseVersions)
   at chocolatey.licensed.infrastructure.app.commands.ProChocolateyDownloadCommand.download_packages(String packageName, String packageVersion, String downloadLocation, ChocolateyConfiguration configuration)_

Additional Context
The underlying problem here is a change to the Chocolatey Community Repository which was detailed in our blog post.
One of the changes that was made here was to change how we address Package IDs, and this has had an unintended consequence of breaking how the download URL for application installers is done against the Chocolatey CDN.
┆Issue is synchronized with this Gitlab issue by Unito

Workaround
A suggested workaround while this problem is worked on would be to use the --skip-download-cache option, to bypass the usage of the Chocolatey CDN.
i.e.
choco download GoogleChrome --internalize --source https://community.chocolatey.org/api/v2/ --skip-download-cache

The issue related to this has been resolved and deployed.
Some existing packages may still exhibit this behavior for some time. Please reach out to us in discord, or comment here on this issue with the package ID and Version, and we can resolve it immediately.

Thank you for getting this issue resolved.  I was able to successfully internalize the GoogleChrome package.
Really appreciate the help!


FBopenSSL is not build on openssl 1.1.1d

FBopenSSL 0.0.4 was successfully build using 1.0.2s version of OpenSSL but it is no longer is building using newer 1.1.1d OpenSSL
On inspection, It was found as the struct asn1_object_st definition was moved from public header asn1.h to internal asn1_int.h and FBopenssl accesses the data member of the Object ASN1_OBJECT and uses the header file asn1.h only hence in newer version of OpenSSL this starts failing
Below is the function where the error is reported
int ASN1_OBJECT_cmp (const ASN1_OBJECT * object1,
                     const ASN1_OBJECT * object2)
{
    if (object1->length != object2->length)
        return 1;

    return memcmp (object1->data, object2->data, object1->length);
}

the error reported is: dereferencing pointer to incomplete type
Any pointers on how this can be fixed would be helpful
Thanks
Pinaki Nayak

From NEWS:
https://github.com/openssl/openssl/blob/a3b54f0f5de1ad17889fd23aee7c230eefc300cd/NEWS#L81-L127
Most of all, there's this section:

  o *Most* libcrypto and libssl public structures were made opaque,
    including:
    BIGNUM and associated types, EC_KEY and EC_KEY_METHOD,
    DH and DH_METHOD, DSA and DSA_METHOD, RSA and RSA_METHOD,
    BIO and BIO_METHOD, EVP_MD_CTX, EVP_MD, EVP_CIPHER_CTX,
    EVP_CIPHER, EVP_PKEY and associated types, HMAC_CTX,
    X509, X509_CRL, X509_OBJECT, X509_STORE_CTX, X509_STORE,
    X509_LOOKUP, X509_LOOKUP_METHOD
  o libssl internal structures made opaque

This means that old code needs some work to build with OpenSSL 1.1.0 and newer

Re-opening this because I don't think this really answers the question. Normally the answer to such issues is "use the accessor functions to get/set the fields". In this case however there don't seem to be any accessor functions, so its not clear what @Pinakinayak should do to fix the code.

@Pinakinayak  I think this is the function you are looking for:
https://github.com/openssl/openssl/blob/894da2fb7ed5d314ee5c2fc9fd2d9b8b74111596/include/openssl/objects.h#L68

Note that its implementation is minimally different to your ASN1_OBJECT_cmp() in the case where the lengths differ (line 61). But I guess this should not be a problem for you.
https://github.com/openssl/openssl/blob/894da2fb7ed5d314ee5c2fc9fd2d9b8b74111596/crypto/objects/obj_lib.c#L57-L65

@mspncp  Thanks that helps, but I found fresh issue after this was fixed
There is another file which initializes this structure ASN1_OBJECT called krb5help.c
`#include "../../include/krb5help.h"
/* Object identifier definitions. */
static unsigned char _krb5GssApi []         = {0x2a, 0x86, 0x48, 0x86, 0xf7, 0x12, 0x01, 0x02, 0x02};
static unsigned char _msKrb5GssApiLegacy [] = {0x2a, 0x86, 0x48, 0x82, 0xf7, 0x12, 0x01, 0x02, 0x02};
const ASN1_OBJECT krb5GssApi         = {0, 0, 0, sizeof _krb5GssApi,         _krb5GssApi,         0};
const ASN1_OBJECT msKrb5GssApiLegacy = {0, 0, 0, sizeof _msKrb5GssApiLegacy, _msKrb5GssApiLegacy, 0};`
The below line
const ASN1_OBJECT krb5GssApi         = {0, 0, 0, sizeof _krb5GssApi,         _krb5GssApi,         0};
const ASN1_OBJECT msKrb5GssApiLegacy = {0, 0, 0, sizeof _msKrb5GssApiLegacy, _msKrb5GssApiLegacy, 0};
are trying to initialize the object but as the structure defination is not public now it is failing
this wasn't hitting first because the earlier issue was occuring before this code is compiled
any pointers would help
Thanks

Probably you want to use this function (openssl/asn1.h):
ASN1_OBJECT *ASN1_OBJECT_create(int nid, unsigned char *data, int len,
                                const char *sn, const char *ln);

@mattcaswell This won't work for a static global declaration
it will throw an error "function call is not allowed in constant expression"

@mattcaswell This won't work for a static global declaration
it will throw an error "function call is not allowed in constant expression"

No. It is no longer possible to statically allocate these objects. You can only do so dynamically. You will need to initialise these values in some "init" function (and be sure the clean then up again at the end of your application).

Marking as inactive, will be closed at the end of 3.4 dev barring further input


Error (HTTP 404) When Assigning Teams to Repos

Description
Since Gitea 1.17.0, normal users cannot assign organization teams to organization repositories. This task can currently only be done by administrators.
Instead of search results, the search box shows the error message "There was an issue querying the server" (see attached screenshot). The web developer console shows that the query to /org/<organization>/teams/-/search?q=test returns HTTP 404.
I would expect to at least see all groups that I'm assigned to.
Gitea Version
1.17.0
Can you reproduce the bug on the Gitea demo site?
Yes
Log Gist
No response
Screenshots

Git Version
No response
Operating System
No response
How are you running Gitea?
Self-hosted.
Database
No response

The cause appears to a change introduced in #19318. More specifically, authorization checks for /{org}/teams/-/search (defined here) are tighter than they used to be with the /api/v1/... endpoint.
In this line Context.OrgAssignment(...) is called with the parameters requireMember and requireOwner. I'm not sure whether the original intention was "require membership OR ownership" or "require membership AND ownership", but normal members are sorted out in this line.

What did you mean normal user? This interface should be visited only by orgniazation owner team members or repository's admin collobrators.

Sorry, I should have specified: With normal user I meant repository admin collaborators who are not organization owners.

Looks like it's a regression from #19318

The problem is should the admin permission collaborator of organization repositories can visit organization's users list. If this collaborator is not a member of this organization. I think it's difficult to say it could. But he can visit public users list.

I have found the same issue with the version 1.21.10 of gitea.
I have checked this checkbox at the organisation settings.

user1 is not a member of the team owner.
user1 cannot use autocomplete to assign a team

user1 is able to assign any teams to the repository, which exists inside the organisation. user1 needs only to write the whole name of the team.
Is that a bug or a feature?


💰  Transfer all ETH

full balance handling in STL 🙏🏼

Lemme think if it’s really worth the extra code for the gas savings.


Printing format of markdown elements

Ticks don't appear.
Sliders don't appear.
Worth using other markdown package.

Given this in-house requirement this is being bumped up priority.
As such this, and the following issues are getting priority next:

https://github.com/SimonBiggs/scriptedforms/issues/157
https://github.com/SimonBiggs/scriptedforms/issues/106
https://github.com/SimonBiggs/scriptedforms/issues/164

Instead I potentially need to look into weasyprint...

Ahhh it was a simple fix :)
The key bits were:
https://github.com/SimonBiggs/scriptedforms/commit/5c8ad96167498e02f784a3fa0063326a3bebb612#diff-74cfa0164e7c15d009b9e18ef985284aR39
https://github.com/SimonBiggs/scriptedforms/commit/5c8ad96167498e02f784a3fa0063326a3bebb612#diff-74cfa0164e7c15d009b9e18ef985284aR40

Left a message on angular material issue so that others can solve this also:
https://github.com/angular/material/issues/1747#issuecomment-373971878


Add Bao Tran to Contributors list

@cyborg103, would you like to re-open this pull request so that I can accept it?

Okay I have re-opend pull request

@cyborg103, I'm quite elated about your PR. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a PR and learned that I merged it?
We’ve added a tweet feature to our web app recently. Can you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.


Update ghcr.io/linuxserver/calibre Docker tag to v7.12.0

This PR contains the following updates:

Package
Update
Change

ghcr.io/linuxserver/calibre (source)
minor
7.8.0 -> 7.12.0

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Renovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update (7.12.0). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


[IR] Platform-independent SHash

This PR introduces the necessary change to make structural-hash platform-independent. The change includes:

Explicitly require the hash type to be uint64_t rather than platform-dependent size_t.
Implement structural hash for POD types including double, int by unioning them with uint64_t explicitly.
Implement a platform-independent fast hashing algorithm for std::string

@tqchen please take another look!


Parse error: Unexpected token: Identifier

Godot version:
Version 3.2.1 official build
OS/device including version:
Windows 10
Issue description:

If we add multiple generic type constraints the parser will throw an error. It does not occur with only one constraint. The project builds correctly even if this happens.
Steps to reproduce:
Simply create a generic type or method with two or more constraints and try to build the project.

I can confirm the same issue on Godot 3.3.0 RC6, .NET 5, & macOS Big Sur 11.2.2 with generic classes (Unexpected token: <).

I got the same error for this syntax:
(results in error)
internal static void Set<TFrom, TTo>(ref TFrom from, ref TTo to)
            where TFrom : struct
            where TTo : struct, ISettable<TFrom>

        {
			to.Set(ref from);
		}

Weirdly enough, simply swapping the order of the constraints seems to solve the problem and gets rid of the error
(no error)
	internal static void Set<TFrom, TTo>(ref TFrom from, ref TTo to)
            where TTo : struct, ISettable<TFrom>
            where TFrom : struct

        {
			to.Set(ref from);
		}


SyntaxError: Unexpected token '?'

Running natively on a rpi (zero 2), after installing all npm deps, running the build and creating a .env file with the appropriate vars, I get this error:
$ npm start

><EMAIL_ADDRESS>start
> node --experimental-specifier-resolution=node build/index.js

file:///home/pi/revcord/node_modules/@discordjs/rest/dist/index.mjs:1
var ne=Object.defineProperty;var ae=(n,e,t)=>e in n?ne(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var oe=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var l=(n,e,t)=>(ae(n,typeof e!="symbol"?e+"":e,t),t),Q=(n,e,t)=>{if(!e.has(n))throw TypeError("Cannot "+t)};var u=(n,e,t)=>(Q(n,e,"read from private field"),t?t.call(n):e.get(n)),L=(n,e,t)=>{if(e.has(n))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(n):e.set(n,t)},g=(n,e,t,s)=>(Q(n,e,"write to private field"),s?s.call(n,t):e.set(n,t),t);var Z=oe((we,le)=>{le.exports={name:"@discordjs/rest",version:"0.3.0",description:"The REST API for discord.js",scripts:{build:"tsup && tsc --emitDeclarationOnly --incremental",test:"jest --pass-with-no-tests --collect-coverage",lint:"prettier --check . && eslint src __tests__ --ext mjs,js,ts",format:"prettier --write . && eslint src __tests__ --ext mjs,js,ts --fix",docs:"typedoc --json docs/typedoc-out.json src/index.ts && node scripts/docs.mjs",prepublishOnly:"yarn build && yarn lint && yarn test",changelog:"git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/rest/*'"},main:"./dist/index.js",module:"./dist/index.mjs",typings:"./dist/index.d.ts",exports:{import:"./dist/index.mjs",require:"./dist/index.js"},directories:{lib:"src",test:"__tests__"},files:["dist"],contributors:["Crawl <icrawltogo@gmail.com>","Amish Shah <amishshah.2k@gmail.com>","SpaceEEC <spaceeec@yahoo.com>","Vlad Frangu <kingdgrizzle@gmail.com>","Antonio Roman <kyradiscord@gmail.com>"],license:"Apache-2.0",keywords:["discord","api","rest","discordapp","discordjs"],repository:{type:"git",url:"git+https://github.com/discordjs/discord.js.git"},bugs:{url:"https://github.com/discordjs/discord.js/issues"},homepage:"https://discord.js.org",dependencies:{"@discordjs/collection":"^0.4.0","@sapphire/async-queue":"^1.1.9","@sapphire/snowflake":"^3.0.1","discord-api-types":"^0.26.1","form-data":"^4.0.0","node-fetch":"^2.6.5",tslib:"^2.3.1"},devDependencies:{"@babel/core":"^7.16.12","@babel/plugin-proposal-decorators":"^7.16.7","@babel/preset-env":"^7.16.11","@babel/preset-typescript":"^7.16.7","@discordjs/ts-docgen":"^0.3.4","@types/jest":"^27.4.0","@types/node-fetch":"^2.5.10","@typescript-eslint/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^5.10.0","babel-plugin-const-enum":"^1.2.0","babel-plugin-transform-typescript-metadata":"^0.3.2",eslint:"^8.7.0","eslint-config-marine":"^9.3.2","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0",jest:"^27.4.7",nock:"^13.2.2",prettier:"^2.5.1",tsup:"^5.11.11",typedoc:"^0.22.11",typescript:"^4.5.5"},engines:{node:">=16.9.0"},publishConfig:{access:"public"}}});import{APIVersion as ue}from"discord-api-types/v9";var V=Z(),Y=`DiscordBot (${V.homepage}, ${V.version})`,x={agent:{},api:"https://discord.com/api",cdn:"https://cdn.discordapp.com",headers:{},invalidRequestWarningInterval:0,globalRequestsPerSecond:50,offset:50,rejectOnRateLimit:null,retries:3,timeout:15e3,userAgentAppendix:`Node.js ${process.version}`,version:ue,hashSweepInterval:144e5,hashLifetime:864e5,handlerSweepInterval:36e5},j=(m=>(m.Debug="restDebug",m.InvalidRequestWarning="invalidRequestWarning",m.RateLimited="rateLimited",m.Request="request",m.Response="response",m.HashSweep="hashSweep",m.HandlerSweep="handlerSweep",m))(j||{}),ee=["webp","png","jpg","jpeg","gif"],te=["png","json"],_=[16,32,64,128,256,512,1024,2048,4096];var N=class{constructor(e=x.cdn){this.base=e}appAsset(e,t,s){return this.makeURL(`/app-assets/${e}/${t}`,s)}appIcon(e,t,s){return this.makeURL(`/app-icons/${e}/${t}`,s)}avatar(e,t,s){return this.dynamicMakeURL(`/avatars/${e}/${t}`,t,s)}banner(e,t,s){return this.dynamicMakeURL(`/banners/${e}/${t}`,t,s)}channelIcon(e,t,s){return this.makeURL(`/channel-icons/${e}/${t}`,s)}defaultAvatar(e){return this.makeURL(`/embed/avatars/${e}`)}discoverySplash(e,t,s){return this.makeURL(`/discovery-splashes/${e}/${t}`,s)}emoji(e,t){return this.makeURL(`/emojis/${e}`,{extension:t})}guildMemberAvatar(e,t,s,i){return this.dynamicMakeURL(`/guilds/${e}/users/${t}/avatars/${s}`,s,i)}icon(e,t,s){return this.dynamicMakeURL(`/icons/${e}/${t}`,t,s)}roleIcon(e,t,s){return this.makeURL(`/role-icons/${e}/${t}`,s)}splash(e,t,s){return this.makeURL(`/splashes/${e}/${t}`,s)}sticker(e,t){return this.makeURL(`/stickers/${e}`,{allowedExtensions:te,extension:t??"png"})}stickerPackBanner(e,t){return this.makeURL(`/app-assets/710982414301790216/store/${e}`,t)}teamIcon(e,t,s){return this.makeURL(`/team-icons/${e}/${t}`,s)}dynamicMakeURL(e,t,{forceStatic:s=!1,...i}={}){return this.makeURL(e,!s&&t.startsWith("a_")?{...i,extension:"gif"}:i)}makeURL(e,{allowedExtensions:t=ee,extension:s="webp",size:i}={}){if(s=String(s).toLowerCase(),!t.includes(s))throw new RangeError(`Invalid extension provided: ${s}

SyntaxError: Unexpected token '?'
    at Loader.moduleStrategy (internal/modules/esm/translators.js:133:18)
npm ERR! code 1
npm ERR! path /home/pi/revcord
npm ERR! command failed
npm ERR! command sh -c node --experimental-specifier-resolution=node build/index.js

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pi/.npm/_logs/2023-02-06T15_47_43_229Z-debug.log

$ cat /home/pi/.npm/_logs/2023-02-06T15_47_43_229Z-debug.log
0 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'start' ]
1 info using<EMAIL_ADDRESS>2 info using<EMAIL_ADDRESS>3 timing config:load:defaults Completed in 11ms
4 timing config:load:file:/usr/share/nodejs/npm/npmrc Completed in 12ms
5 timing config:load:builtin Completed in 12ms
6 timing config:load:cli Completed in 13ms
7 timing config:load:env Completed in 2ms
8 timing config:load:file:/home/pi/revcord/.npmrc Completed in 2ms
9 timing config:load:project Completed in 5ms
10 timing config:load:file:/home/pi/.npmrc Completed in 1ms
11 timing config:load:user Completed in 1ms
12 timing config:load:file:/etc/npmrc Completed in 0ms
13 timing config:load:global Completed in 1ms
14 timing config:load:cafile Completed in 2ms
15 timing config:load:validate Completed in 1ms
16 timing config:load:setUserAgent Completed in 3ms
17 timing config:load:setEnvs Completed in 7ms
18 timing config:load Completed in 61ms
19 verbose npm-session 6fa7f2462201e4b0
20 timing npm:load Completed in 125ms
21 timing command:run-script Completed in 1193ms
22 timing command:start Completed in 1209ms
23 verbose stack Error: command failed
23 verbose stack     at ChildProcess.<anonymous> (/usr/share/nodejs/@npmcli/promise-spawn/index.js:64:27)
23 verbose stack     at ChildProcess.emit (events.js:314:20)
23 verbose stack     at maybeClose (internal/child_process.js:1022:16)
23 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5)
24 verbose pkgid<EMAIL_ADDRESS>25 verbose cwd /home/pi/revcord
26 verbose Linux 5.15.61-v8+
27 verbose argv "/usr/bin/node" "/usr/bin/npm" "start"
28 verbose node v12.22.12
29 verbose npm  v7.5.2
30 error code 1
31 error path /home/pi/revcord
32 error command failed
33 error command sh -c node --experimental-specifier-resolution=node build/index.js
34 verbose exit 1

Your node.js version is too old (v12.22.12). If you're using raspberry pi os, install node from another repo since the official one is too old

Oh, I see there was mention of it in the readme.
Perhaps you could add a check somehow?

I updated to a newer npm & nodejs package on my rpi. Now when I run npm install inside the revcord dir, npm is just stuck at:
(##################) ⠸ reify:typescript: timing reifyNode:node_modules/discord-api-types Completed in 34094ms
Stuck for way too long (over an hour), but it does quit if I ctrl+c it.
Anyways, I decided to try this in an arch vm on my main computer (x86_64 based if it matters). Fully updated, clean arch vm, with the latest nodejs and npm packages. Throws a very long error at the end:
error.log

It seems the version of sqlite3 used by revcord was outdated, so I updated it in https://github.com/mayudev/revcord/commit/23f4c426d999f56c848d2667a4af2391784b4c6e and now it should use prebuilt binaries.
It should work on x86_64 now, but I'm still not sure about Raspberry Pi due to that. If it's stuck for a longer while again, try doing npm install sqlite3 --target_arch=arm64

Alright, thank you. This seems to work now.
I have noticed quite a few bugs. The bugs were rather easy to notice and the last commit was back in August 2022, so I am wondering if you are planning to further develop this project?

Alright, thank you. This seems to work now.
I have noticed quite a few bugs. The bugs were rather easy to notice and the last commit was back in August 2022, so I am wondering if you are planning to further develop this project?

Yup, I haven't had time to work on it recently and I don't use Revolt as much as I used to, but if you want to submit a pull request or report the bug, feel free to and I'll take care of it sooner or later.


multilib ABIs don't work

Please use the following bug reporting template to help produce actionable and reproducible issues:
A brief description
The two non-primary ABIs supported by Ubuntu are not functional under the Linux subsystem:

i386/x86/ia32 The traditional 32-bit ABI. Built with gcc -m32.
x32 An ABI that supports the full 64-bit instruction set and registers, but with a 32-bit address space. Built with gcc -mx32. More info about the ABI here and here.

Expected results
Applications built against the two ABIs should run.
Actual results (with terminal output if applicable)
+ cat test.c
#include <stdio.h>

int main(int argc, char **argv)
{
#if defined(__x86_64__) && defined(__ILP32__)
        printf("x32 ABI\n");
#elif defined(__x86_64__)
        printf("x86_64 ABI\n");
#elif defined(__i386__)
        printf("i386 ABI\n");
#else
#error "Unknown ABI"
#endif
        return 0;
}

+ for ABI in 32 64 x32
+ gcc -m32 -o test-32 test.c
+ ./test-32
bash: ./test-32: cannot execute binary file: Exec format error

+ gcc -m64 -o test-64 test.c
+ ./test-64
x86_64 ABI

+ gcc -mx32 -o test-x32 test.c
+ ./test-x32
bash: ./test-x32: cannot execute binary file: Exec format error

Your Windows build number
14393.10
Required packages and commands to install
The gcc-multilib package is sufficient to get started building i386 and x32 test applications.

Pretty sure this is because they are not supporting the 32-bit ABIs at all.  They're only aiming for 64-bit compatibility, not legacy stuff.

x32 is not legacy.

@tycho -- curious -- did you encounter this because you were just playing around, or do you have examples of programs that depend on it?

@aseering I develop programs against those ABIs and use it for servers. In the server context, I basically build any application that shouldn't reasonably consume more than 4GB of memory using the x32 ABI. This effectively caps its memory utilization. If an application leaks memory or is manipulated in some way to cause its memory usage to balloon too much, only the responsible process is killed by exhausting its own 4GB address space, instead of exhausting all of system memory and invoking the OOM killer which haphazardly kills arbitrary processes. There are other benefits of the ABI, but that's a pretty important one.
One nice thing for Microsoft on this issue is that a big chunk of the hard work (compiler, linking, packaging) are already done. They just need to implement the kernel side of it. Obviously not an easy piece of work, but easier than owning the userspace side in addition to that...

@tycho -- interesting; good to know about.  I've had to deal with similar things, but have usually needed more control over the memory cap (more than 4gb or much less than 4gb) so have used ulimit.

I thought that most (desktop) Linux distros announced x86-32 support as legacy before 2015.

@fpqc -- you're correct.  But x32 != x86_32.
I have seen x32 is kind of a specialty/niche tool in the past (though it sounds like there are more use cases for it):  It has the benefits of most of the new 64-bit instruction set without the overhead of larger pointers.

Does this issue will be fixed in future or not?
I get this problem when cross-compile luajit with mingw for 32bit
https://github.com/LuaJIT/LuaJIT

I also see this issue. This is a show stopper for me.
I am using cross toolchain to build Linux for another architecture. The issue is that cross toolchain is built as 32-bit application and I cannot run it on WSL. I have installed all required multilib packages and libraries, but had no luck.
Whatever I try to do I get the same error:
cannot execute binary file: Exec format error
The file command returns:
file arm-none-eabi-gcc
arm-none-eabi-gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld
-linux.so.2, for GNU/Linux 2.6.8, stripped
The issue is not only with this toolchain - I cannot run ANY 32-bit application which runs OK under Ubuntu on virtual machine
After trying to fix this issue for 2 days I finally gave up, installed Virtual Box and compile my project under Ubuntu on Virtual Machine.
Hope this will be fixed.

@yuri-vashchenko -- thanks for posting your experience.  Just for your and others' information, the current expected behavior is that no 32-bit binaries will execute at all.  That functionality is entirely absent in the current release, as far as I know.
That's obviously a major limitation for applications that need it.  If it's something that you'd like, feel free to vote for it in the UserVoice forum:
https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo/suggestions/13377507-please-add-32-bit-elf-support-to-the-kernel

Thank you @aseering . voted

It is almost possible to get this working in a cheaty way via qemu-user on a Debian WSL install, but there are some problems with that (#2620).
Obviously slow-as-balls userspace emulation would be far less desirable than native execution, though.

iirc, once qemu caches the JIT code, execution is full-speed because x64 emulation of x86 doesn't change the code that much.

"full speed" is kind of a misnomer, given that the JIT isn't very smart about the code it emits.

One final possibility, would be a compile or link (or multilib) option, that did the same job as -mx32 but also put in a 32<->64 bit translation layer (shim ?) for system calls, thus ensuring the binary as seen from the OS was wholly 64-bit. This would finally allow mx32-style programs to run under WSL.

This issue seems to be fixed by WSL2, since the Microsoft-vended WSL2 kernel supports the other ABIs:
#
# Binary Emulations
#
CONFIG_IA32_EMULATION=y
CONFIG_IA32_AOUT=y
CONFIG_X86_X32=y
CONFIG_COMPAT_32=y
CONFIG_COMPAT=y
CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_X86_DEV_DMA_OPS=y
CONFIG_HAVE_GENERIC_GUP=y

And output from the test case shows it executes fine:
$ uname -r
4.19.104-microsoft-standard
$ gcc -mx32 -o test-x32 test.c
$ ./test-x32
x32 ABI


Disable deprecated/problematic ruff rules

UP027: deprecated
UP038: https://github.com/astral-sh/ruff/issues/7871

if we don't fix/revert the changes those might have done, its less maintenance to just wait for ruff to fix the stuff with own rules later
as far as i can tell we are not affected by the performance impact, and this pr doesn't change anything
instead of manually searching for fixes, i'd prefer to just eventually have a ruff update fix it automatically in future

It's just that I fell bad for importing these bad rules here :smile:

i understand the sentiment, luckily in the grand scheme of things the impact doesn't matter as much as it feels and we can just wait it out ;)


Don't turn off restart when sending some signals

Addressing #11065
Be gentle? :)

:santa:

Can you add a test in integration-cli?

@cpuguy83
I was thinking maybe this should be a table-based test with 4+ cases:
1 each for SIGKILL, SIGINT, and SIGTERM
at least 1 for some other signals
but I really don't know what process I'd use for testing against.
The simplest case would be to just test signals that don't disable restarts:

start container
send non-terminating signal
somehow cause container's process to exit through another method
test that the container is still running after step 3.

hmmm.  How about the old "echo foo | nc -l $SOMEPORTNUMBER" and I forward that port...

SIGTERM and SIGINT can be ignored by the application and may not necessarily mean the container will be stopping.

So should this be handled with an additional flag to docker kill?

Pushing this back to design review as I don't think we're quite ready for code review.
Thanks for the patch @ble, but I would agree with @tonistiigi here. If the application handles the signal as to trigger some kind of action (let's say: reload config) and then later on fails for some reason, it will not be restarted for a wrong reason.
I'll leave the discussion as per the proper fix to happen on #11065.


Services Section

Hi, how are you?
Could you kindly add a services section.
Or could you show me how i can do that.
I am a freelancer and this them is great.
Only missing a services section where people can know what i do.

Currently we cannot provide services section

Hello, is this something you could consider now ? It’s a great theme but for my personal use I feel it is missing a service section.
Thanks again for the theme!

Hello, is this something you could consider now ? It’s a great theme but for my personal use I feel it is missing a service section.
Thanks again for the theme!

For those who are interested to implement a service section, here is an example that may help: https://datanalyze.be/#services
Code can be found in the repo: https://github.com/AntoineSoetewey/datanalyze


Repo cleaning

Removed tracking for node_modules folder, which helps in keeping remote repo clean, as you won't have to upload the whole node_modules folder; which becomes so big in size over time, To the github repo.

Added .gitignore file, which ignores  any unnecessary files to be tracked by git.

Removed ArabictextFixer.git folder, because why not? :D

I think this is out-dated now. 😅


Modular offset calculation

added sticky navigation feature
added more tests
BRIEF:
Completely overhauled the offset implementation. Now, a "shyView" calculates it's position based on its parent maxY property. For the navigation bar, that would be the status bar. For the extension view, it would be the navigation bar.

fixes #87


get_period() fails with Nterms=1

Simple example to demonstrate the issue:
import PIPS
import numpy as np
Npoints = 100
noise = 0.1
time = np.sort(np.random.random(Npoints) * 10) + 58000
mag = np.sin(time*np.pi) + 15 + np.random.normal(0, noise, size=Npoints)
mag_err = np.ones(Npoints) * noise
data = [time, mag, mag_err]
star = PIPS.photdata(data)
periods, power = star.periodogram(multiprocessing=False, Nterms=1) #This works
period, period_err, Z = star.get_period(multiprocessing=False, Nterms=1, return_Z=True, debug=True) #This fails

It was a bug due to accidentally performing alias testing in get_period() when Nterms is set to 1. Now this issue is corrected and I can run get_period(Nterms=1) without reproducing the error.


Dev to Master

Fix workflows (#1133)
New PR Template & Update stalebot configs (#1118)
Installation guide. (#1137)

(No release required)

Merge the ffmpeg fix too. The dynaudnorm filter currently in use messes up the audio big-time.
And make a new (minor) release alongside it.

Sounds good.

Awaiting Linux testing before merging $1148
It'd be a patch, not a minor imo (hence v3.3.2)

Merge the ffmpeg fix too. The dynaudnorm filter currently in use messes up the audio big-time.
And make a new (minor) release alongside it.

Sounds good.

Awaiting Linux testing before merging $1148
It'd be a patch, not a minor imo (hence v3.3.2)

I meant patch (﹏;)

I meant patch (﹏;)

Merging this now, since #1113 is being held back by the lack of tests.

Merging this now, since #1113 is being held back by the lack of tests.


Question: How can stacktrace filtering be disabled?

I am attempting to disable stacktrace filtering using the following code:
!pip install -q git+https://github.com/keras-team/keras-core.git

import keras_core
keras_core.config.disable_traceback_filtering()

as per this docstring. However, I'm encountering the following error:
AttributeError: module 'keras_core' has no attribute 'config'

You should not install the package via pip install -q git+https://github.com/keras-team/keras-core.git. Rather, you should do:
git clone https://github.com/keras-team/keras-core.git
cd keras-core
python3 pip_build.py --install

Then you will get access to the public API, including the config module. If you install the package from the source directly, you don't get the public API, you get the default directory structure based namespace.


Added missing fields, there were many missing, and tidied up function…

… names according to LinkedIn API documentation https://developer.linkedin.com/docs/fields/basic-profile

Thank you very much for this! I think you addressed some of the problems nicely. Unfortunately, I decided not to accept this in whole.
Take a look at the code changes and review the notes I've added for this problem space https://github.com/thephpleague/oauth2-linkedin#retrieving-linkedin-member-information

The default fields list is not meant to be exhaustive and is certainly not a one-size fits all. Therefore adding more (all?) of the available fields to the default behavior of the package did not feel like a good idea to me. I want to provide tools that help developers solve their individual use cases with speed and ease.

Adding explicit getter methods all possible payload attributes feels a bit heavy handed to me. Instead, I chose to implement a single method that offers the same flexibility and puts the developer in control of "querying" the payload.

I love the changes that you made to the descriptions of methods and helping to explain what is happening in the code. Please feel free to review and amend the, now, current code comments and documentation to be more clear; it seems you have a sense for the LinkedIn API.

@stevenmaguire you are right, I was in hurry and I didn't want to add a different way of working so I just added missing api fields.  Then copy/pasted descriptions from API page. I actually started trying oauth and linkedin api just yesterday so I don't know anything about anything. I also will have to learn writing tests :)
Your changes work fine for my purposes so thanks for your time :)


update puppet helper to allow changing usernames

This PR allows the helper to check wether a user with the provided id already exists and makes it possible to update the name.
There's a test missing for this, though I'm not sure how to exactly test this. So I'd appreciate any help there.

@rndmh3ro It is difficult to "unit test" the groovy code because it doesn't function without a full up jenkins instance.  Test coverage is achieved by by the beaker acceptance tests under https://github.com/jenkinsci/puppet-jenkins/tree/master/spec/acceptance.  However, I don't believe there are existing acceptance tests that cover this method.

I removed the w/s and correctee the indentation. However as you can see, I fail writing that test. I'm pretty new to this, so can you point me in the correct direction?
I tried adding another test here but it does not seem to get tested at all.

Closing this because I noticed that its supported here

This one https://github.com/jenkinsci/puppet-jenkins/pull/598 fixes the same issue


audio only?

Hi,
Is it possible to use theoraplayer as an audio player only?
Not such a big deal if it isn't but it would save a me a day or 2 of coding!
Bye,
Mark

eh, I guess you can simply discard frames and get only the audio, but the CPU would still process frames and spend resources doing it.
We could add a flag to the video clip to have it not decode the video stream, but that might not work on MP4 or WebM, not sure.
also, why would you need this anyway?
In your use case, you can just keep the audio file separate and use it to do a/v sync for video playback, and when you need audio only, just pipe it through your audio api?

Nah never mind, I don't want video being decoded while I stream music!
I was just thinking that since I'm already using theoraplayer for in game videos, it'd be nice if I could also use it for background music etc, instead of writing my own threaded vorbis decoder etc from scratch.
But that's just crazy talk I guess!

Perhaps use the vorbis decoder like theora player does?  It's not a hard interface.
Brian A Lloyd

On Sep 14, 2017, at 7:27 PM, Mark Sibly<EMAIL_ADDRESS>wrote:
Closed #28.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

We actually have an audio solution that we internally rather than theoraplayer's implementation. You might find it useful since it's also multiplatform.
https://github.com/AprilAndFriends/xal


Error compiling nested namespaces partially sharing same name

TypeScript Version:  1.8.10
I've asked this question on SO, but nobody replied, so I assume I've finally found a bug in typescript. Or maybe it's just unexpected situation, that was not covered by design document.
This is about nested namespaces that have same name. For example, standard Microsoft definitions for MS CRM are in the Xrm namespace. My company's definitions, when we was using JS used to be in Company.Xrm namespace. Which makes perfect sense, at least from general OOP point of view. Object Xrm not equal to Company.Xrm object. They both should resolve to their correct definitions. They resolve correctly even in case of javascript. But not when it comes to typescript, unfortunately.
Typescript thinks that Xrm and Company.Xrm refers to same object and fails to compile file. Here is
Code
/// <reference path="typings/globals/xrm/index.d.ts" />
/// <reference path="typings/SDK.d.ts" />

namespace Company.Product {
    export class Module {
        static Method() {
            var id =  Xrm.Page.context.getUserId();
            var obj = Company.Xrm.Endpoint.Retrieve("test", "test", "test");
        }
    }
}

// xrm.d.ts located here: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/xrm/xrm.d.ts
// SDK.d.ts:
declare namespace Company.Xrm.REST {
    function Retrieve(entityName: string, id: string, queryString: string): any;
}

Expected behavior:
Successful compilation. No merging or hiding should happen, both namespaces should refer to two different and separate objects.
Actual behavior:
Compilation error: Property 'Page' does not exist on type 'Xrm', while 'Page' is defined in xrm.d.ts, but was hidden by definition of SDK.d.ts.

Can you please reduce this to a minimal repro? We don't really have resources to dig into several different third-party declaration files

Without enough information this is unactionable. please provide a sample we can use to diagnose the issue, and why you believe this is a compiler bug.


Cannot use scrapy-splash with scrapy<1.1

$ pip install "scrapy<1.1" scrapy-splash
Collecting scrapy<1.1
  Downloading Scrapy-1.0.6-py2-none-any.whl (291kB)
    100% |████████████████████████████████| 296kB 396kB/s
Collecting scrapy-splash
  Downloading scrapy_splash-0.7-py2.py3-none-any.whl (45kB)
    100% |████████████████████████████████| 51kB 1.7MB/s
Collecting queuelib (from scrapy<1.1)
  Downloading queuelib-1.4.2-py2.py3-none-any.whl
Collecting cssselect>=0.9 (from scrapy<1.1)
  Downloading cssselect-0.9.1.tar.gz
Requirement already satisfied (use --upgrade to upgrade): lxml in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages (from scrapy<1.1)
Requirement already satisfied (use --upgrade to upgrade): pyOpenSSL in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages (from scrapy<1.1)
Requirement already satisfied (use --upgrade to upgrade): six>=1.5.2 in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages (from scrapy<1.1)
Collecting w3lib>=1.8.0 (from scrapy<1.1)
  Downloading w3lib-1.14.2-py2.py3-none-any.whl
Collecting Twisted>=10.0.0 (from scrapy<1.1)
  Downloading Twisted-16.2.0.tar.bz2 (2.9MB)
    100% |████████████████████████████████| 2.9MB 187kB/s
Requirement already satisfied (use --upgrade to upgrade): service-identity in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages (from scrapy<1.1)
Collecting zope.interface>=3.6.0 (from Twisted>=10.0.0->scrapy<1.1)
  Downloading zope.interface-4.1.3.tar.gz (141kB)
    100% |████████████████████████████████| 143kB 47kB/s
Requirement already satisfied (use --upgrade to upgrade): attrs in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages (from service-identity->scrapy<1.1)
Requirement already satisfied (use --upgrade to upgrade): pyasn1 in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages (from service-identity->scrapy<1.1)
Requirement already satisfied (use --upgrade to upgrade): pyasn1-modules in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages (from service-identity->scrapy<1.1)
Requirement already satisfied (use --upgrade to upgrade): setuptools in /Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages/setuptools-22.0.5-py2.7.egg (from zope.interface>=3.6.0->Twisted>=10.0.0->scrapy<1.1)
Building wheels for collected packages: cssselect, Twisted, zope.interface
  Running setup.py bdist_wheel for cssselect ... done
  Stored in directory: /Users/rolando/Library/Caches/pip/wheels/1b/41/70/480fa9516ccc4853a474faf7a9fb3638338fc99a9255456dd0
  Running setup.py bdist_wheel for Twisted ... done
  Stored in directory: /Users/rolando/Library/Caches/pip/wheels/fe/9d/3f/9f7b1c768889796c01929abb7cdfa2a9cdd32bae64eb7aa239
  Running setup.py bdist_wheel for zope.interface ... done
  Stored in directory: /Users/rolando/Library/Caches/pip/wheels/52/04/ad/12c971c57ca6ee5e6d77019c7a1b93105b1460d8c2db6e4ef1
Successfully built cssselect Twisted zope.interface
Installing collected packages: queuelib, cssselect, w3lib, zope.interface, Twisted, scrapy, scrapy-splash
Successfully installed Twisted-16.2.0 cssselect-0.9.1 queuelib-1.4.2 scrapy-1.0.6 scrapy-splash-0.7 w3lib-1.14.2 zope.interface-4.1.3

$ ipython

In [1]: import scrapy_splash
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-64c0fb72e7d6> in <module>()
----> 1 import scrapy_splash

/Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages/scrapy_splash/__init__.py in <module>()
      2 from __future__ import absolute_import
      3
----> 4 from .middleware import (
      5     SplashMiddleware,
      6     SplashCookiesMiddleware,

/Users/rolando/miniconda3/envs/tmp-splash2/lib/python2.7/site-packages/scrapy_splash/middleware.py in <module>()
     15 from scrapy.http.headers import Headers
     16 from scrapy import signals
---> 17 from scrapy.utils.python import to_native_str
     18
     19 from scrapy_splash.responsetypes import responsetypes

ImportError: cannot import name to_native_str

pip install --upgrade scrapy
Had the same problem, upgrading scrapy to 1.1.0 solved it for me. Time to update all my spiders, yay

Try to reinstall scrapy. I in ubuntu worked.  pip install scrapy --upgrade

@yoyfong thanks, that worked for me.  I must mention that I encountered another error along the way,
UninstallationError: Cannot remove entries from nonexistent file /home/.../easy-install.pth
and found a solution online to use
pip install scrapy --upgrade --ignore-installed
which complained about
error: command 'gcc' failed with exit status 1
but still apparently worked because now everything works again.

Yes, I got the same problem.
Note: If you are using Scrapy Cloud 2.0 and you are having problem with the Scrapy version. You can use scrapy cloud stacks to use scrapy 1.1.0 https://support.scrapinghub.com/topics/1962-scrapy-cloud-stacks/

Scrapy < 1.1 support looks easy to fix, pull requests are welcome if anyone wants this feature.
This is not a priority though because scrapy 1.2 is already released, scrapy 1.0 is getting old :)

Apparently the only place preventing it from working in Scrapy 1.0.5 is this import, and apparently the import is actually not used.
Fixed it in #96

Fixed by #96. Thanks @juraseg!


Make relative sdk paths work from anywhere

Fixes https://github.com/vfdigitalincubator/noa-frontend/pull/1272/files#r1003189566 (fyi @nohli)


Dart port

In case anyone is interested, I have ported this library to Dart and am actively maintaining it.
https://github.com/RobluScouting/EvalEx

@uklimaschewski Would you be against adding this to the README?

@RobertZenz @wdavies973 no problem with it

I've added a "Similar Projects" section to the bottom, and also added exp4j (because I remember sending people over there).


ftr:support ONLY_CARE_UPDATE_COLUMNS

…truct shallow copy

What this PR does:
1.support ONLY_CARE_UPDATE_COLUMNS
2.fix beforeImage error due to the struct shallow copy
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Codecov Report

Merging #355 (12b4b13) into master (362b868) will decrease coverage by 0.20%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #355      +/-   ##
==========================================
- Coverage   48.00%   47.79%   -0.21%
==========================================
  Files         102      102
  Lines        5552     5576      +24
==========================================
  Hits         2665     2665
- Misses       2720     2744      +24
  Partials      167      167

Impacted Files
Coverage Δ

pkg/datasource/sql/async_worker.go
35.65% <0.00%> (ø)

pkg/datasource/sql/exec/executor.go
1.59% <0.00%> (-0.07%)
:arrow_down:

pkg/datasource/sql/tx.go
43.75% <0.00%> (-1.21%)
:arrow_down:

.../sql/undo/builder/mysql_update_undo_log_builder.go
1.32% <0.00%> (-0.14%)
:arrow_down:

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


[Logs] Adds Taegis link

Summary
Adds Taegis link.
Documentation checklist

[ ] The documentation style guide has been adhered to.

Solves https://github.com/cloudflare/cloudflare-docs/issues/17307


Fixed #24938 -- add PostgreSQL trigram support.

Discussed briefly with @mjtamlyn at DjangoCon Europe. Not sure if it's useful or important enough to be in core, but thought I'd try coding it anyway :)

Thanks! After updating the docs as suggested, and after some more reading of the Postgres docs/source, I thought that I should actually implement the <-> operator by preference, as that allows the user to specify their own threshold, can use an index like %, and can be used in the SELECT to return the distance also. I have implemented it as both a lookup and a function; I have left the existing code for % lookup and Similarity function, but have only documented the TrigramDistance function and trigram_distance lookup at present, as if it's agreed I think they might be all that is necessary – they can do everything %/similarity() can do, if I've understood it correctly.

As noted in #4825, I guess we'll close this for now until Marc's work on full-text search is further along.

As FTS support is now merged this should be re-visited.

@dracos, do you want to update sometime soon? If not, we'll close the PR and let somebody else take over.

Rebased and tests all pass (just fixed the isort hopefully, whoops). I've kept things in the same locations they were before, happy for things to be moved if they'd be preferably under 'search' or somewhere else, whatever :)

__trigram_similar needs documenting (and if we remove __trigram_distance that needs undocumenting). Trigrams are also now mentioned in the search topic doc so we can update that example and refer to the code here.
I'd also suggest moving the functions (but not the lookups) to /search.py.

Have moved the functions, thanks. Will await closure of distance discussion before updating search topic doc.

Okay, I've removed the TrigramDistance lookup and documented the TrigramSimilarity function and __trigram_similar lookup.

I'm happy with the structure and design of the code. @timgraham Can you work your magic with any docs tweaks and then I think this is good to go.

Just as a side note about filter() syntax - the best syntax I have seen so far is something along the lines of .filter(F('foo').trigram_distance('bar').gt(0.7)) (or better yet, filter(F('foo').trigram_distance('bar') > 0.7)).

merged in 1962a96a30e02de78a674a2e02979c00cc55655b, thanks!


Does not return Transaction ID

const onSuccess = (payment) => {       console.log("Transaction ID!", payment.transactions[0]       ['related_resources'][0]['sale']['id']);   }

how you access the response ?


New Signature

Cro22 Email Signature Template~

@Cro22 Thank you for the PR! You can find a few more issues here!


[✨] Deno DX Support

Is your feature request related to a problem?
Deno is production and developer ready. From the beginning qwik targeted deno as a runtime environment. Now with deno being able to run vite, deno-targeting teams could also develop their qwik apps using deno.
Things that do work:

Setup a deno-vite project and develop the qwik app locally

Things that are missing (list is probably incomplete):

 qwik build  (#2288)
 vite preview  - currently complains that   "server/entry.preview"  module is not built/cannot be found
Deno specific project template (e. g. creatable via  deno run -A -r<EMAIL_ADDRESS><my-project>) with  deno.json
Adaptors that work with deno (don't make script changes in  package.json in deno, look for  deno.json  instead)
Make the qwik cli - specifically the  qwik build command - detect scripts in  deno.json instead only in  package.json (see run-build-command.ts)

Describe the solution you'd like
I would like deno developers to be able to develop qwik apps from inside deno
Describe alternatives you've considered
The current workaround is to use Node to develop the app and then run the build from deno
Additional context
No response

this would be a dream come true. I am waiting for qwik to work with deno, to start the front-end of my project

Conversation at https://github.com/BuilderIO/qwik/discussions/1567 seemed promising, but the linked-to example no longer works: https://github.com/wtho/deno-qwik/issues/3

@tv42 that was just a proof of concept.
I started with a deno-vite-vue project and replaced vue with qwik. Should be straight-forward to setup again, you should give it a try.

It seems to be about importing node:http2, which Deno might not support at this time: https://github.com/denoland/deno/blob/main/ext/node/polyfills/README.md
The only use seems pretty trivial and optional: https://github.com/BuilderIO/qwik/blob/5eb7e33759188e725b212213de134e296756322a/packages/qwik-city/middleware/node/http.ts#L15
but I don't do NodeJS enough to know how to make that import optional.
Or maybe there's a better test than req instanceof Http2ServerRequest. For example, req.httpVersionMajor? Or just testing for the field :authority first, knowing that it's an illegal field name for HTTP/1.

Thanks for the issue!
If this issue is not solved by the deno integration, please feel free to re-open it


dep ensure fail

$ dep ensure
error while parsing /home/teawater/gopath/src/github.com/kata-containers/runtime/Gopkg.lock: Unable to parse the lock as TOML: (697, 6): missing comma

better first check which version of dep you are using - do you have details?