CAGRA - runtime dispatch of distance functions

Move the TEAM_SIZE and DATASET_BLOCK_DIM template parameters of CAGRA search kernels (single_cta and multi_cta versions) to runtime by introducing a switch-case statement inside the compute distance components (hence the name: runtime dispatch of the distance implementation). As a result:

4x less search kernel instances against branch-24.10, but each instance is slightly larger
There's a small performance penalty due to larger kernel code (and the register usage is bounded by the most register-expensive branch)
[implementation limitation] only one DATASET_BLOCK_DIM per TEAM_SIZE is possible, i.e. the team size defines both (though this is how it currently is anyway).

This is an alternative to #296 for reducing the binary size with minimal changes to the code. Here's how they compare:
enh-cagra-runtime-distance-dispatch (#324)
performance: up to 12% QPS slowdown on deep-100M and 5% QPS slowdown on wiki-all
libcuvs.so size: 791 -> 657 MB
parallel build time in CI (NB: caching is not disabled):
- total: 709 seconds
- neighbors/cagra_search_xxx: 9 min
- neighbors/detail/cagra_xxx (kernels): 2-3 mins
enh-cagra-separable-compilation (#296)
performance: up to 13% QPS slowdown on deep-100M and up to 8% QPS slowdown on wiki-all (low-itopk CAGRA-Q cases being the worst, with others seemingly slightly better than (#326)
libcuvs.so size: 791 -> 624 MB
parallel build time in CI (NB: caching is not disabled):
- total: 478 seconds
- neighbors/cagra_search_xxx: 4 min
- neighbors/detail/cagra_xxx (kernels): 1-3 mins
- neighbors/detail/compute_distance_xxx: 50 sec (many of them)

To sum it up:

the QPS of this PR is actually slightly better due to some VPQ cases being particularly bad in #296
this PR reduces the compile size almost as good as #296, but kernels are still large; this means adding #215 on top of this PR will have larger impact on binary size, because it duplicates the single-cta kernel (perhaps 20-30MB?.. I don't know)
In contrast to #296, this PR does not reduce the compile time
This PR introduces minimal changes, which is much easier for review
#296 adds extra functionality (multi-kernel CAGRA-Q) and (:in my opinion:) makes it easier to do further changes (e.g. flexible code generation for instances and more team_size, dataset_block_dim combinations can be supported).

Performance update:
After a few optimizations for the worst cases #296, its performance is generally better than this PR on deep-100M dataset (dim = 96) and slightly worse on wiki-all dataset (dim = 768, only VPQ distance tested due to the index size). In the worst case, #296 leads to QPS drop of 6-7%, with plenty of cases actually getting a decent speedup (against both this PR and base-24.10). The caveat here is that some optimizations in #296 are potentially transferable to the base branch, so this benchmark is not entirely apples-to-apples anymore.
Latest benchmarks (includes k = 10 and k = 100 for both datasets):
https://docs.google.com/spreadsheets/d/191f1sYsAUwPidncV4xDzgNtOhKx9sp6jJFvOfpB-nxs


move all articles of how to buy tft

https://library.threefold.me/info/manual/#/manual__tft_howtos

Looks great. I will have a careful look by the end of the week then we can merge.
Either we accept this PR and then re-organize the TFT section (since there would now be 2) or we adjust directly in this PR to have asap one section on TFT.
Either way is good. Thanks @sasha-astiadi

@sasha-astiadi
I see that 1541 files have been changed. This is a big number. There are also a lot of .html files changed. Usually, it is not needed to change those .html files, just the .md files.
Is it possible that you ran mdbook serve or mdbook build locally on this branch?
When doing those commands, it adds a lot of .html files, as well as the "book" folder. This step is not needed as it is done by github actions when we push changes.
As a general tip on working with mdbook, I never do mdbook serve/build on the branches that I want to have merged on /info_grid. I usually work with 2 different versions of the same branch, to only have mdbook serve/build on one branch.

There are many ways out of this situation. You could make a new branch (e.g. migration4v2), and only add in the new branch the .md files that you changed/added, then you could make a new, different, PR.
Another method, i.e. deleting the unnecessary files in this branch, might be too laborsome for the git's history of the repo.

I updated the branch in order to remove the unnecessary .html files.
Also, I adjusted some files to have a coherent presentation.
I also put everything into the existing ThreeFold Token section.
Links should work but we can be on the lookout after this PR.
Thanks @sasha-astiadi


[SR-15872] [() -> Void] allocates when appending a closure

Previous ID
SR-15872

Radar
None

Original Reporter
@fabianfett

Type
Bug

Environment
I could see this repro in 5.5, 5.6 and main on macOS as well as on ubuntu focal.

Additional Detail from JIRA

Votes
1

Component/s
swift

Labels
Bug

Assignee
None

Priority
Medium

md5: 2d38e44ce0ef10abd98ea6c6ba19718a

Issue Description:
I discovered a very interesting case today: Given the following code, I see an allocation for every call to append.
var array = [() -> Void>]()
array.reserveCapacity(1000)

var counter = 0
var closure = {
    counter += 1
}

for _ in 0..<1000 {
    array.append(closure)
}

Whereas if I wrap my closure in a struct, I don't see an allocation for every append in:
struct Foo {
    var closure: () -> Void
}

var array = Array<Foo>()
array.reserveCapacity(1000)

var counter = 0
var closure = {
    counter += 1
}

for _ in 0..<1000 {
    array.append(Foo(closure: closure))
}

I expect array not to allocate when I append a closure.

still unfixed in latest snapshots
$ pbpaste | swiftc -enforce-exclusivity=unchecked -O  -; sudo dtrace -n 'pid$target::malloc_zone_malloc:entry { @ = count(); }' -c ./main
dtrace: system integrity protection is on, some features will not be available
dtrace: description 'pid$target::malloc_zone_malloc:entry ' matched 1 probe
dtrace: pid 41958 has exited

           100009

Array being a fully generic type uses a different representation for () -> Void than a variable of concrete type like let closure: () -> Void. Because closure is a global variable we cannot optimize its representation to avoid the thunk when copying a value from the variable into the array. Changing closure into a standalone function as in https://github.com/apple/swift/issues/58137#issuecomment-1108472617 is one way to avoid this. Using a struct to contain the closures as noted in the OP is another.


optional autoclosing

Hi,
I have added a feature that allows auto-closing the dopdown when the mouse leaves its element. I find it quite useful as one does not have to click outside the component to force it to close the dropdown or am I missing something?
The changes are really minor. I wanted to publish a new branch, and push my changes into it, this way my whole team would eventually use the new release directly from GitHub.
However I can create a branch, and create a Pull Request.
Can you please advise how proceed? I can send or place those 3 files on a secure servers for whoever would like to review and have them publish into a new release.
Thank you

Best is to create a branch and do a pull request.
It should be an optional setting defaulting to the current behaviour.

Hi Softsimon, thank you for your prompt follow-up. I thought about doing that but it appears I am not allow to create a branch, and I tried to publish the one I created in my local repository using GitHub Desktop but receive this error: "Authentication failed. You may not have permission to access the repository. Open options and verify that you're signed in with an account that has permission to access this repository." I am signed in. So I am not sure how to get it there to be reviewed.
My changes are very limited and indeed allow the feature to be used optionally (defaulted to false):
dropdown.component.html:

Then implemented a new boolean setting (autoClose) entry in IMultiSelectSettings and used it in the newly defined method in dropdown.component.ts:
onMouseLeave() {
if (this.settings.autoClose) {
this.toggleDropdown();
}
I have attached the 3 modified files. I do not mind if someone else publish them in my place, I just would like my team to then pull a new version of the code with this feature included.
Thank you.
dropdown.zip

Hi @ChrisDXC.  You create the branch under your own account and use the "create pull request" button on the website.  It will register the pull request in this project where it can be reviewed and potentially accepted into the source.
The same process will work for any other open source project on github.

@ChrisDXC As an aside, if you want to customise packages for local development you can always use something like sinopia to create your own local packages or override existing packages for your team.
Even if your changes for this project are accepted, you'll have to await the next release.

Would you share the bits you changed please?  I need this exact same functionality


Only have one group image

Describe the bug, optionally with screenshots
Currently we have both group image and group icon. This feels wrong. The group image should be downscaled and used as the group icon. I don't think we need these to be distinct or to overlap.

I strongly disagree: the hero image for the group is rendered much larger than the iconic form. The relative sizes of these two contexts places different demands on graphical design which are not easily reconciled in a single graphic, and therefore it makes sense to have two separate images.
To give an example (and this does betray a conflict of interest, because I did put a decent amount of effort into these graphics), see the following:

Here, the big logo looks pretty nice IMO, but would not look very good or legible if shrunk down to the size of the iconic representation. Contrariwise, the iconic representation would look pretty boring enlarged to the size of the big logo, and would also break graphical continuity with the pre-Landscape 1 era. The large logos for the other groups indicated here are variations on the same basic concept.
To give a non-Urbit example, the aforementioned consideration informs how raster icons were implemented in Windows (and no doubt other operating systems as well). Icon files can store different graphical representations of the same object or concept, optimised for different resolutions/display sizes. As an example, an icon representing 'My Computer' may appear in a highly detailed isometric form optimised for maximum size on a high-DPI device. But, as it is scaled down it turns into an abstract, rectilinear representation of a computer monitor which still retains legibility in the context of a tree view in Explorer.

I don't think this considers what it's like for users (especially on mobile) and isn't a great default experience.
My Computer is an OS icon, designed and shipped as part of the system. Here we're asking users to both add an image for their group and then craft a second appropriate icon for use in things like the group list. It'd be like slack having users make icons for UI elements.
I think this is confusing and the default behavior (especially with the current problems with the image setting UX) is that users will set a group image but still not see that image in the groups list.
Then they have to set a second image in the groups list (which if different now doesn't obviously connect that image to the group).
This is particularly noticeable on mobile (our most important UI) where the group relies on the image to differentiate itself in the list.
I'd argue we should at least set it by default to the group image if the icon has not been set.

@zalberico The group cover is a deliberate product decision designed to echo personal profiles. I agree that the group customizing UX could be better since at the moment it's purely functional. Let's save this for a refurb later in 2023.


feat: add sendgrid mailer support

Codecov Report

Merging #41 (294d38a) into master (c3945d3) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #41   +/-   ##
=======================================
  Coverage   97.11%   97.11%
=======================================
  Files          44       44
  Lines         416      416
=======================================
  Hits          404      404
  Misses         12       12

Continue to review full report at Codecov.

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

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


FIFO Algorithm added

I have added the code as well as ReadMe file for FIFO (First In First Out) Page replacement algorithm along with a solved example.
Issue #1349

not assigned


Add documentation from XML documentation file to header

I was thinking about implementing the C# documentation comments towards the C-Header.
I exported the XML documentation file
<?xml version="1.0"?>
<doc>
    <assembly>
        <name>MyCompany.Wrapper2</name>
    </assembly>
    <members>
        <member name="M:MyCompany.Wrapper2.Test.TestSystem(System.Int32,System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Test System Command
            </summary>
            <param name="handle">The handle</param>
            <param name="command">The command</param>
            <returns></returns>
        </member>
    </members>
</doc>

and would like read the xml file and would need the MethodInfo, to get the correct method name:
string path = "M:" + mi.DeclaringType.FullName + "." + mi.Name;

XmlNode xmlDocuOfMethod = _docuDoc.SelectSingleNode(
    "//member[starts-with(@name, '" + path + "')]");

Any idea, how to get to the correct method name from MethodDefinition?

Ok, forget question, I found already the names.

@climblinne This is an interesting idea. I look forward to a PR.

@climblinne same here, I'd be really happy to have some doc in the header file :-)

Hello, after some time I came again across this theme and added a first version to the XML documentation in the C header.
Please try it and review the code: #116


打补丁包时报错，求助~

@hedex
您好，我打补丁包是出现如下错误，没有具体异常信息，不知从何入手，麻烦帮忙看下，多谢~
异常类型：打补丁包时异常
Robust版本：如:0.4.91
Gradle版本：5.11
Gradle插件版本：3.4.1
系统：Linux
堆栈/日志：
================autoPatch start================
autopatch read all class file cost 0.639 second
check all class cost 10.285 second, class count: 57895
new add methods  list is
key is   com.ziroom.ziroomcustomer.home.home0329.HomePageFragment.loginTip()
new add classes list is
patchMethodSignatureSet is printed below
key is   com.ziroom.ziroomcustomer.home.home0329.HomePageFragment.onMessageClick()
key is   com.ziroom.ziroomcustomer.MainActivity.updateTabStatus(int)
Warning  class name  setImageResource(int)   can not find in mapping !!
Warning  class name  setTextColor(int)   can not find in mapping !!
Warning  class name  setImageResource(int)   can not find in mapping !!
Warning  class name  setTextColor(int)   can not find in mapping !!
Warning  class name  setImageResource(int)   can not find in mapping !!
Warning  class name  setTextColor(int)   can not find in mapping !!
Warning  class name  setImageResource(int)   can not find in mapping !!
Warning  class name  setTextColor(int)   can not find in mapping !!
Warning  class name  setImageResource(int)   can not find in mapping !!
Warning  class name  setTextColor(int)   can not find in mapping !!
Warning  class name  put(java.lang.String,java.lang.Object)   can not find in mapping !!
Warning  class name  put(java.lang.String,java.lang.Object)   can not find in mapping !!
Warning  class name  printStackTrace()   can not find in mapping !!
java -jar /var/lib/jenkins/jobs/Release/workspace/ziroom-main/robust/dx.jar --dex --output=classes.dex  meituan.jar errorStream output   Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Duser.country=CN -Duser.language=zh -Duser.timezone=Asia/Shanghai

Task :ziroom-main:transformClassesWithAutoPatchTransformForRelease FAILED

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':ziroom-main:transformClassesWithAutoPatchTransformForRelease'.

execute command    java -jar /var/lib/jenkins/jobs/Release/workspace/ziroom-main/robust/dx.jar --dex --output=classes.dex  meituan.jar error

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 4m 25s
48 actionable tasks: 45 executed, 3 up-to-date

兄弟问题解决了吗

同样


setting camera='orthographic' on mr-app doesn't work

sample code: https://codepen.io/lobau/pen/eYaOydm
to get the orthographic camera, you have to remove the flag, and it works.

this should be resolved as part of https://github.com/Volumetrics-io/mrjs/pull/622


Nice work bro

Good luck for exam

Do u know how can I add download and upload in my repo ? With progress bar ?

Do u know how can I add download and upload in my repo ? With progress bar ?

Just fork and deploy it, been using this myself for quite some time works perfectly with progressbar, try explaining your issue better

Do u know how can I add download and upload in my repo ? With progress bar ?

Just fork and deploy it, been using this myself for quite some time works perfectly with progressbar, try explaining your issue better

Hey ! You are anime gallery admeme . NICE DUDE!  I am Dark [ • Savage • ] , I even messaged you many weeks ago on telegram ....
Remembered??

Yup great, keep the issues tab for issues only tho, msg on tele if anything else

Yup great, keep the issues tab for issues only tho, msg on tele if anything else

Will remember it next time


Fixes background rectangle when highlighting

Fixes #20

See: https://rawgit.com/cancan101/cornerstoneTools/3c2db475da7c83a19f4ccbf8be4c8de4525ffd22/examples/highlight/index.html

@swederik Erik can you review this change this you contribute the rectangle tool?

Sorry for the slow reply, I didn't notice this
The fix works fine, but the PR also includes a regression of the included cornerstone library. The branch needs to be rebased from the master branch. To save @cancan101 some time, I just made a new PR #33 with the same fix but no regression problem.

This can be closed since #33 was merged.


Typechecking for arrays vs string

Issue
A string can be serialized into vec('u8') without any thrown errors

Expected behaviour
An error is thrown during serialization

in wit-bindgen for rust they have 2 options, one is generate String and UTF check, other is Vec, and not UTF check.
So it is fine not to check UTF vec('u8').


"docker build" runs into an error

To try out a minor change to the code (I would like to define the user as well as the password), I thought I would build a new Docker image. (Hint: Im running on Arch linux and build the binary if I'd follow the instruction in "Option 2 - Steps to build the solution manually")
However, when I run a "docker build", I get the following error message:
[8/8] Completed 'jwt_cpp_project'
-- Found Boost: /lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake (found version "1.74.0") found components: program_options
-- Configuring done
-- Generating done
-- Build files have been written to: /opt/flight_sql/build
CMake Error: The source directory "/opt/flight_sql/build/install" does not exist.
Specify --help for usage, or press the help button on the CMake GUI.
The command '/bin/sh -c mkdir build &&     cd build &&     cmake .. -GNinja -DCMAKE_PREFIX_PATH=${ARROW_HOME}/lib/cmake -DCMAKE_INSTALL_PREFIX=/usr/local &&     cmake install' returned a non-zero code: 1

Am I doing something wrong or do I need to set special environment variables?

Hi @thinkORo - I'll look at the Docker build issue.  In the meantime, I just recently updated the codebase to let you specify the user and password - have you tried the latest release?

Hi @prmoore77
unfortunately the latest Docker Image doesn't work for me any longer.
I use "INIT_SQL_COMMANDS" to set my S3 properties and get this "error":
Running Init SQL command:
 SET s3_endpoint='myS3Server:9199';
Error: Invalid: Catalog Error: Setting with name "s3_endpoint" is not in the catalog, but it exists in the httpfs extension.

With Version 0.1.4 this wasn't or isn't an issue.


Implement custom checkout

This PR adds basic functionality to cover custom checkout. The work on this PR can be divided as:

Custom checkout core implementation: Mostly work done on /framework/commerce
UI changes: Done in the components folder
Provider related changes: Mostly added files on checkout folders to be correctly imported by the core

To try this out, ensure to have "customCheckout": true set in your commerce.config.json, this will enable a "Proceed to checkout" button in the cart overview sidebar instead of a redirection.
No provider is using this functionality yet but ordercloud provider is no the works so this PR blocks its development. You can checkout to ordercloud-provider branch to  see this implementation working.
Key points:
Related to UI, CheckoutSidebarView.tsx now uses a new hook called useCheckout that gets the checkout information from an API route, that response will contain hasPayment and hasShipping and a check will show instead of the chevron for true properties. The "Proceed to checkout" button will only be enabled when both properties are true. Validations should happen on the provider but modifying components and handle validations is not yet implemented in this iteration.
Here you can see how the checkout is being shown in different states:

No steps completed

Payment method set

Payment and shipping set

Data schemas are not fully decided yet and most of the code is boilerplate oriented.

Thanks for this. But useCheckout and useAddCard have no logic in their implementations.. at least for BigCommerce.


Add Continuous Build Support to iOS

Build iOS on each commit to master.

Fixed in this commit: https://github.com/phonegap/phonegap-app-developer/commits/dev


add logstash logback plugin

Please answer these questions before submitting pull request

Why submit this pull request?

[ ] Bug fix

[ ] New feature provided

[ ] Improve performance

Related issues

Bug fix

Bug description.

How to fix?

New feature or improvement

Describe the details and related test reports.

the console:

the elasticsearch data from logstash:

Let me know if it doesn't meet the standard, i never commit code to such a great project, thank you!

the skywalking ui

the logback-spring.xml file
<appender name="stash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
    <destination>${destination}</destination>
    <connectionStrategy>
        <roundRobin>
            <connectionTTL>5 seconds</connectionTTL>
        </roundRobin>
    </connectionStrategy>
    <reconnectionDelay>1 second</reconnectionDelay>
    <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
        <provider class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.logstash.TraceIdJsonProvider">
        </provider>
        <customFields>{"app_id":"${app_id}"}</customFields>
    </encoder>
</appender>

the maven dependency
            <dependency>
                <groupId>org.apache.skywalking</groupId>
                <artifactId>apm-toolkit-logback-1.x</artifactId>
                <version>${skywalking.version}</version>
            </dependency>

@wuxingye if possible, I think you can upload your test project to a GitHub repository instead of posting code snippets here, which should be more friendly to reviewers and we can verify your changes more easily

I'll do the rest of the work tomorrow, thank you

Add logstash logback plugin
1.user guide

Dependency the toolkit, such as using maven or gradle

<dependency>
    <groupId>org.apache.skywalking</groupId>
    <artifactId>apm-toolkit-logback-1.x</artifactId>
    <version>${skywalking.version}</version>
</dependency>

set LogstashEncoder of logback.xml

<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
    <provider class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.logstash.TraceIdJsonProvider">
    </provider>
    <customFields>{"app_id":"${app_id}"}</customFields>
</encoder>

2.why it works

extension of logstash-logback-encoder provider, official guide
Custom LogstashEncoder JSON Provider like this:

<encoder class="net.logstash.logback.encoder.LogstashEncoder">
    ...
    <provider class="your.provider.YourJsonProvider">
        <!-- Any properties exposed by your provider can be set here -->
    </provider>
    ...
</encoder>

TraceIdJsonProvider analyze

public class TraceIdJsonProvider extends AbstractFieldJsonProvider<ILoggingEvent> implements FieldNamesAware<LogstashFieldNames> {

    public static final String TRACING_ID = "TID";

    @Override
    public void writeTo(JsonGenerator generator, ILoggingEvent event) throws IOException {
        Map<String, String> map = event.getLoggerContextVO().getPropertyMap();
        JsonWritingUtils.writeStringField(generator, getFieldName(), map.get(TRACING_ID));
    }

    @Override
    public void setFieldNames(LogstashFieldNames fieldNames) {
        setFieldName(TRACING_ID);
    }
}

the setFieldNames method will add a json field named TID
the writeTo method will set the TID value, for propertyMap is always not null, it at least contains destination of logstash, so the code will not throw NPE

TcpSocketAppenderActivation analyze

public class TcpSocketAppenderActivation extends ClassInstanceMethodsEnhancePluginDefine {

    public static final String INTERCEPT_CLASS = "org.apache.skywalking.apm.toolkit.activation.log.logback.v1.x.logstash.TcpSocketAppenderInterceptor";
    public static final String ENHANCE_CLASS = "net.logstash.logback.appender.LogstashTcpSocketAppender";
    public static final String ENHANCE_METHOD = "prepareForDeferredProcessing";

    /**
     * @return the target class, which needs active.
     */
    @Override
    protected ClassMatch enhanceClass() {
        return byName(ENHANCE_CLASS);
    }

    /**
     * @return null, no need to intercept constructor of enhance class.
     */
    @Override
    public ConstructorInterceptPoint[] getConstructorsInterceptPoints() {
        return null;
    }

    /**
     * @return the collection of {@link StaticMethodsInterceptPoint}, represent the intercepted methods and their
     * interceptors.
     */
    @Override
    public InstanceMethodsInterceptPoint[] getInstanceMethodsInterceptPoints() {
        return new InstanceMethodsInterceptPoint[] {
            new InstanceMethodsInterceptPoint() {
                @Override
                public ElementMatcher<MethodDescription> getMethodsMatcher() {
                    return named(ENHANCE_METHOD).and(takesArgumentWithType(0, "ch.qos.logback.classic.spi.ILoggingEvent"));
                }

                @Override
                public String getMethodsInterceptor() {
                    return INTERCEPT_CLASS;
                }

                @Override public boolean isOverrideArgs() {
                    return false;
                }
            }
        };
    }
}

net.logstash.logback.appender.LogstashTcpSocketAppender is logstash appender, contains a method:

    @Override
    protected void prepareForDeferredProcessing(final ILoggingEvent event) {
        super.prepareForDeferredProcessing(event);
        if (includeCallerData) {
            event.getCallerData();
        }
    }

so we enhance it by the beforeMethod of TcpSocketAppenderInterceptor :

    @Override public void beforeMethod(EnhancedInstance objInst, Method method, Object[] allArguments,
        Class<?>[] argumentsTypes, MethodInterceptResult result) throws Throwable {
        ILoggingEvent event = (ILoggingEvent)allArguments[0];
        if (event != null && event.getLoggerContextVO() != null && event.getLoggerContextVO().getPropertyMap() != null) {
            event.getLoggerContextVO().getPropertyMap().put("TID", ContextManager.getGlobalTraceId());
        }
    }

it put a key value of (TID, ContextManager.getGlobalTraceId()) to the ILoggingEvent, so we can get it in the writeTo method of TraceIdJsonProvider
the method prepareForDeferredProcessing of LogstashTcpSocketAppender works on the worker thread, but others works on the logstash thread, because logstash-logback-encoder if a async plugin, so we enhance it by this way

3.related pictures

ConsoleAppender plugin

logstash logback plugin

skywalking ui

before add TID

after add TID

@wu-sheng @kezhenxu94

@wuxingye You need to move the part of posted document, which related to the end user, to the official SkyWalking. I think it should be placed in the document of loglack application toolkit.

Resolves #3348 3352

@wuxingye You need to move the part of posted document, which related to the end user, to the official SkyWalking. I think it should be placed in the document of loglack application toolkit.

I had refine the doc, pls check, thx

/run ci

@wuxingye  All core team members have no experience with this. So we decided to accept this due to no obvious harm. If someone uses this in the future, we will ping you at GitHub, hope you could help.

@wuxingye All core team members have no experience with this. So we decided to accept this due to no obvious harm. If someone uses this in the future, we will ping you at GitHub, hope you could help.

@wu-sheng Ok, it's my pleasure

@wuxingye Look like your comment break javadoc generation, could you recheck?

@wuxingye Look like your comment break javadoc generation, could you recheck?

@wu-sheng  I find an error and a warning, if you fell there are still mistakes, pls help me, thx

I just find out from the CI, nothing more.

Click Details following CI. You will have Jenkins logs, it shows the commands and logs. In the Apache, we are required to have javadoc.

It's my first PR at GitHub, i gained a lot, and i will pay attention to CI in the later work

Take your time. SkyWalking is a large ecosystem, even PMC member is not familiar all parts of the project. So, don't worry. With your further contributions, you will learn more.
And welcome to be 151th contributor of this repo.

Thank you.

@wuxingye 大佬

Hello , @wuxingye  @wu-sheng   can you help me ? thank you .  https://github.com/apache/skywalking/issues/5746


How to add mailto while opening mail app?

Are you trying to compose and email? With To, Subject, Body, etc?
If that is the case you should be using https://pub.dev/packages/url_launcher as mentioned in the readme.
This package is specially for just opening the mail app and getting a list of the installed main apps. No other function.

okey


remove scan for devices

The scan for devices and check if the BMS to test is present doesn't add value. If the device is not within range (or the MAC is wrong), then the subsequent start_scraping call will either fail or fail to produce usable data. Hence, we can save the scanning and save a lot of time on startup, since the case that the BMS is available and responding is the expected case.

Thanks for helping to improve the driver! Maybe you could also take a look at https://github.com/Louisvdw/dbus-serialbattery/issues/693. I do not understand why this is happening.


packing expressjs project seems excluded static files by default, e.g. css style files

I used express-generator to setup an simple express project and tried to pack it. Build process passed and binary files generated as expected, but when running it and verified by browser. The issue is the style css file could not be found from browser and web page style is not correct.
Platform: Ubunto Mate 16.04 on Rasperberry Pi 3B with node.js version 8.6.0
testing express project was generated by this method:
http://expressjs.com/en/starter/generator.html
Thank you

That smells like it's an express issue. Not a node-packer issue.
Try to route your stylesheet requests, like that
app.use('/styles', express.static(path.join(__dirname, 'styles_folder')));
Every request will be linked to the correct folder in the compiled app, even in the "non-compiled" app.

@Ni-vek thank you for commenting. But original express is correct:
app.use(express.static(path.join(__dirname, 'public')));
And I've verified via browser with original express code.
However, browser could not find corresponding css file when packed binary is running,
Any idea?

OK. What's the URL requested and your app structure?

URL requested is the root url, aka "/"
app structure could be fould from bottom of the page:
http://expressjs.com/en/starter/generator.html

I just tried with a fresh generated express skeleton, and it works perfectly for me.
Which options did you provide for compiling?

I cloned this src code and use bin/nodec for compilation:
bin/nodec ~/express/myapp/bin/www
How about yours @Ni-vek ?

I've tried
./node-packer/bin/nodec myapp/bin/www
./node-packer/bin/nodec -o a.out myapp/bin/www
./node-packer/bin/nodec -o a.out -r myapp/ myapp/bin/www
Each ones work.

Tu this
https://drive.google.com/file/d/0B0QHZGlyZZuramNQbHRfMHpwM1U/view?usp=drivesdk

Thanks, @Ni-vek , I downloaded and found it is a MacOS binary, though I verified your binary and it did contain css file, it is different platform from mine (ARM Linux).
The commands you listed are the same as mine, so my issue is still there...

is it possible to extract built binary to see if css file is packed in?

@cnddu have you find any solution?, I have same problem on my platform (ARM).

@Ni-vek How do I explicitly define folders or files that need to be bundled which are not a part of the dependency tree but are used by the node script?


Remove the rcore.h include from drm, web, template

While reviewing the current changes, noticed rcore_desktop.c no longer includes rcore.h.

Since the library and examples on PLATFORM_DESKTOP are compiling and running fine, I think that include is no longer needed on the modules after the previous updates.

So also removed it from rcore_drm.c (L50), rcore_web.c (L48) and rcore_template.c (L49). Compiled and tested here and everything appears to be working fine without it.

Note: The include is still present on rcore_android.c (L49), but I didn't want to change anything there while @Bigfoot71 is working on it.

Edit: added line marks.

@ubkp thanks, actually I had my doubts about that include. Using the expected pre-processor logic, the rcore_*.c platform modules effectively belong to rcore.c that already includes rcore.h... but I thought some build systems could be more strict and consider the rcore_*.c modules as separate modules...
In any case, I like this change, if some problem arise we can just add the include again.

This is somewhat silly, but wouldn't it be better to add the void OpenURL(const char *url) from rcore_desktop.c to rcore_template.c? The template has code that seems to be for Android.


CASSANDRA-13652: Deadlock in AbstractCompactionManager

PR with same result as #127.
Instead of small fix in #127 this PR contains refactoring to make AbstractCommitLogSegmentManager code more clear.

eb717f1 has been merged and CASSANDRA-13652 is closed.


Adding .r(...) function as syntactic sugar to .OnFailure(RemainingSteps.Run)

Not sure if it makes sense but I've added it to my own project and it looks good. :)

hi @eyalsk, thanks very much for the raising this.
I'm not sure that it makes sense to add this to the library. Ultimately, we could add one character shorthand synonyms for many parts of the API, but they would be rather cryptic to anyone not familiar with them, and if all libraries did this, we'd end up with code full of one character method calls. :wink:
I realise that xbehave is already somewhat guilty of this with x(). (And, unfortunately, its synonyms f() and _() which may well be deprecated at some point and eventually removed.) However, x() is not really shorthand for anything. It is a necessary evil for not being able to twist the language in a way that I'd really like for step definition. I.e. I don't really want a method to exist between the step text and the step expression, but it's the only way to achieve this linkage in a nice, non-symbolic way in C#. In F#, for instance, we can do away with it altogether by defining a custom operator. I guess x() could be interpreted as shorthand for a Step() or Define() method, but such longhand methods have never existed because of the verbosity they would introduce to a typical scenario.
I think the value of such shorthand synonyms is very much dependent on the user of the library. For instance, the running of subsequent steps on failure is something I've very rarely seen done so I've always considered it a rather edge case feature. If it's something you do very often, then the synonym will have a lot of value for you, but for most people it probably won't.
So, as much as I don't like turning down proposals, I'm leaning towards not doing this. As you say, you can provide it as an extension method in your own project, since it's something you use often and you find the shorthand convenient. I think that would be my general recommendation to anyone wanting some kind of shorthand synonym for this or any other part of the API.
I hope that sounds reasonable.

Yeah, I completely agree with you! thank you for elaborating! I was skeptical myself so it's fine haha.. :)
Keep up the good work! :)

Thanks @eyalsk, I'll do my best! :smiley:


Postgresql shared timer thread being stopped

I am using classloader-leak-prevention-1.15.4.jar with Postgresql JDBC (postgresql-9.4-1201-jdbc41.jar) in the tomcat ${catalilna.base}/lib folder (and not in the webapp) but the listener is stopping a thread that probably shouldn't be tied to the webapp classloader (but apparently it is).
Stopping Timer thread 'PostgreSQL-JDBC-SharedTimer-1' running in classloader.

When the new version of the app tries to deploy and use Postgresql jdbc driver it gets an error like this:
java.lang.IllegalStateException: Timer already cancelled.
        at java.util.Timer.sched(Timer.java:397) ~[na:1.8.0_102]
        at java.util.Timer.schedule(Timer.java:193) ~[na:1.8.0_102]
        at org.postgresql.jdbc2.AbstractJdbc2Connection.addTimerTask(AbstractJdbc2Connection.java:1319) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.startTimer(AbstractJdbc2Statement.java:3494) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:569) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:420) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:305) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:688) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:629) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:712) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:722) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:777) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]

I haven't looked into this but I guessing that whichever app uses Postgresql first will get that thread tied to its webapp classloader and postgresql will stop working if that app is ever undeployed.

They said they fixed a classloader memory leak in 9.4.1200 but I am still seeing it in 1201.
Fix Timer thread classloader leak - 197
I tried using the latest jdbc driver a couple weeks ago and ran into an issue so I backed off, not sure why I ended up on 1201.
This is really a driver bug but its a case where leaving the leak in place is probably better since it kills the driver.

Thanks for another report @hdeadman. I belive I have created a workaround for this. Would you mind giving it a try before I release a new version? I have no intent of backporting this to 1.x however, so this assumes you'd either upgrade to 2.0 or backport my solution yourself.

Trying to make sense of the change they made in the Postegresql driver and why it's still a problem. @hdeadman , are you reusing the same connection pool between redeploys, or in multiple applications within the server?

I will look into upgrading to 2.0 tomorrow to try it out. There are some apps that run in same Tomcat that are sharing data sources defined in Tomcat. I do have some apps that don't share connection pools across applications but I can't recall which servers I have seen this problem on, I will have to check when I am in the office tomorrow. I assume the connection pool would be re-used across re-deploys of the same application because it is looked up via JNDI, not defined within the application.

I saw this error on undeploy with the latest 2.0 snapshot but it looks like I can redeploy multiple times without the postgresql timer being shut down.
java.lang.NullPointerException: null
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_102]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_102]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_102]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_102]
        at se.jiderhamn.classloader.leak.prevention.cleanup.X509TrustManagerImplUnparseableExtensionCleanUp.cleanUp(X509TrustManagerImplUnparseableExtensionCleanUp.java:38) ~[classloader-leak-prevention-core-2.0.3-20161011.213922-1.jar:na]
        at se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor.runCleanUps(ClassLoaderLeakPreventor.java:226) [classloader-leak-prevention-core-2.0.3-20161011.213922-1.jar:na]
        at se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventorListener.contextDestroyed(ClassLoaderLeakPreventorListener.java:242) [classloader-leak-prevention-servlet-2.0.3-20161011.213923-1.jar:na]

Thanks. The NPE was related to #58, and should be fixed now also on master.

In the 1.x version of this listener I could extend the listener and override the logging methods. I am currently using SLF4J/Logback and I was going to provide an implementation of Logger that used that but I didn't see an easy way to extend the listener and pass in my instance of the Logger so it could be set on ClassLoaderLeakPreventorFactory. Should "void contextInitialized(final ServletContext servletContext)" be overloaded with a version that takes a Logger?
It's not a big deal for me because I am using the org.slf4/jul-to-slf4j bridge so the default JULLogger happens to work for me but it isn't clear to me how one is supposed to specify their own logger (or use StdLogger).
Another option would be to have more implementations of Logger and have a context parameter for choosing between them. If the context parameter specified the Logger impl class name then you wouldn't have to bundle all the impl classes.

I might have spoke too soon regarding the postgresql issue being resolved. I am still seeing the timer get cancelled. I will add some debug to make sure the PostgresqlJdbcThreadInitiator is running.

Initial Deploy on startup (with some debug added):
2016-10-12 14:34:52 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Initializing by loading some known offenders with leak safe classloader
2016-10-12 14:34:52 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] About to look for postgresql shared timer
2016-10-12 14:34:52 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] About invoke postgresql getSharedTimer()

Undeploy as part of re-deploy, still stopping Timer thread.
2016-10-12 14:39:04 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] private java.util.Map javax.faces.component.UIComponentBase.descriptors is not static
2016-10-12 14:39:04 ERROR [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Internal registry of java.beans.PropertyEditorManager not found
2016-10-12 14:39:04 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Looping 4 RMI Targets to find leaks
2016-10-12 14:39:04 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Looping 4 RMI Targets to find leaks
2016-10-12 14:39:04 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-0' running in classloader.
2016-10-12 14:39:04 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-1' running in classloader.
2016-10-12 14:39:04 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-2' running in classloader.
2016-10-12 14:39:04 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-3' running in classloader.
2016-10-12 14:39:04 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'PostgreSQL-JDBC-SharedTimer-1' running in classloader.
2016-10-12 14:39:04 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Custom ThreadLocal of type javax.faces.context.FacesContext$1: javax.faces.context.FacesContext$1@44eae0f with value null will be remove()d from Thread[ContainerBackgroundProcessor[StandardEngine[Catalina]],5,main]
2016-10-12 14:39:05 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Since Java 1.6+ is used, we can call public static final void java.util.ResourceBundle.clearCache(java.lang.ClassLoader)
2016-10-12 14:39:05 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Releasing web app classloader from Apache Commons Logging

Still getting Timer cancelled error.
java.lang.IllegalStateException: Timer already cancelled.
        at java.util.Timer.sched(Timer.java:397) ~[na:1.8.0_102]
        at java.util.Timer.schedule(Timer.java:193) ~[na:1.8.0_102]
        at org.postgresql.jdbc2.AbstractJdbc2Connection.addTimerTask(AbstractJdbc2Connection.java:1319) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.startTimer(AbstractJdbc2Statement.java:3494) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:569) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:420) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:305) ~[postgresql-9.4-1201-jdbc41.jar:9.4]
        at org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:688) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:629) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:712) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:722) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]
        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:777) ~[spring-jdbc-4.2.4.RELEASE.jar:4.2.4.RELEASE]

Turned out the JUnit tests passed due to interference from the MySQL JDBC driver used in other tests...
Thinking about this some more I have decided to switch approach. Even if the timer thread is force started in the correct ClassLoader, it may be stopped and restarted during the lifespan of the application. To avoid that we'd need to circumvent the mechanisms created by the driver authors, and I don't dare do that without understanding their motives.
I have some ideas how to fix the driver itself too, so hopefully that will result in a pull request.

@hdeadman , would you mind trying out the new approach?

That seems to work better. I can't say there are no leaks but at least the driver still works after a re-deploy. If your pull request to the postgresql driver people makes it into a release I will try it out, but last time I tried the latest driver it was blowing up when Spring would start a transaction and it would try to process a result set from the "set transaction isolation ... ". I captured some debug from a working driver and was going to compare to debug from the latest driver but the debug jdbc parameter was not working in the new driver.
Here is debug from test with latest jar:
2016-10-12 22:00:32 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Looping 4 RMI Targets to find leaks
2016-10-12 22:00:32 INFO  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Looping 4 RMI Targets to find leaks
2016-10-12 22:00:32 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-0' running in classloader.
2016-10-12 22:00:32 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-1' running in classloader.
2016-10-12 22:00:32 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-2' running in classloader.
2016-10-12 22:00:32 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Timer thread 'Timer-3' running in classloader.
2016-10-12 22:00:32 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Stopping Thread 'Thread[Quartz Scheduler [quartzScheduler],5,main]' of type org.springframework.scheduling.quartz.SchedulerFactoryBean$1 running in web app after 5000 ms
2016-10-12 22:00:32 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] Changing contextClassLoader of Thread[PostgreSQL-JDBC-SharedTimer-1,5,main] to java.net.URLClassLoader@736e9adb
2016-10-12 22:00:32 WARN  [] [] [] [] [se.jiderhamn.classloader.leak.prevention.ClassLoaderLeakPreventor] AccessControlContext of thread Thread[PostgreSQL-JDBC-SharedTimer-1,5,main] used custom combiner - unsetting

Here is my Pull Request on the Postgresql JDBC driver.

Just released version 2.1.0 which includes the changes made to resolve this.


Localhost Remoting doesn't work if you use Microsoft Accounts

When logged on to your machine using a Microsoft Account (something that Microsoft is pushing on very hard), WinRM generates an error when you try to use loopback remoting (i.e.: for experimentation): “Connecting to remote server localhost failed with the following error message : WinRM cannot process the request. The following error with errorcode 0x8009030e occurred while using Negotiate authentication: A specified logon session does not exist. It may already have been terminated.”
You can work around this by “-EnableNetworkAccess” (which you shouldn't have to do), or using a local account. This also happens with Windows PowerShell, but is for sure a regression from some point in the past.

Are you running as administrator beforehand? I know 2 or so years ago Microsoft stopped this from working with normal accounts due to a CVE that allows a limited access token to elevate to the admin token. I don’t fully agree with the CVE as UAC is not meant to be a security boundary but I doubt this will go back to the way it was before. More details are in https://devblogs.microsoft.com/powershell/windows-security-change-affecting-powershell/.

Yep - different error messages. This is a difference between Microsoft Accounts and local accounts.

Ah my apologies, I wonder if it also affects a
non-loop back scenario, I.e from another windows host with the Microsoft account credentials. I know that NTLM has special behaviour when it comes to authenticating the implicit credentials over localhost so knowing whether it’s just the loop back scenario would help track that down.
Ultimately I don’t think the issue is with PowerShell itself as the logon process is all handled by the WinRM service and that’s where the error message is coming from. PowerShell could try and bypass it by automatically adding the -EnableNetworkAccess in this situation.

The authentication and logon is handled by WinRM and not directly by PowerShell.  This would have to be taken up by the owners of WinRM.


Feat/more jsx event

fixes #2140
Event types
In hono, handlers are registered directly with addEventListener, so we defined the raw Event as it is.
The list of events is referenced below.
https://developer.mozilla.org/en-US/docs/Web/API/Element
https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement#events
https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement#events
https://developer.mozilla.org/en-US/docs/Web/API/Element/input_event
Some events may be missing, in which case you can add your own events.
declare global {
  namespace Hono {
    interface EventAttributes {
      onMyCustomEvent?: (event: Event) => void
    }
  }
}

Support event capture phase
As with React, if the event name ends with Capture, it is considered a capture phase handler.
Names are now strictly handled
React requires the on to be followed by an uppercase letter, as in onClick. This PR will add a type, and I don't think any user will write it like onclick, so I think it would be less confusing to adapt hono to React as well.
Author should do the followings, if applicable

[x] Add tests
[x] Run tests
[x] yarn denoify to generate files for Deno

I found a bug, but it has been fixed in b536fa2.
The work is complete.

@usualoma
Super cool! Now we have all the features to v4. Thanks!


ERROR: Failed to execute operation in non-transactional context. Please restore backups and roll back database and code!

Hi,
Currently i am using Flyway (flyway-6.5.3) on local window machine . Using flyway it is successfully created table , db etc in Sybase ASE 16.0...
But  it gives below error during backup and restore..
ERROR: Migration of schema dbo to version <IP_ADDRESS> - Crete Dump failed! Please restore backups and roll back database and code!
ERROR: Failed to execute operation in non-transactional context. Please restore backups and roll back database and code!
I have already make mixed=true in conf file.
please give solution.
thanks in advanced.

@Axel Fontaine can u check this error..?

Can you share the script which is causing the problem?

hi  @MikielAgutu
dump database DBname to '/home/ec2-user/DBname.dump'
go

Can you send us the full output of migrate in debug mode? (run with -X)

Flyway_output.txt
hi @DoodleBobBuffPants
Please find attachment.  Currently i am using Sybase 16.0 version for backup
please let me know if anything else.
thanks..

Out of curiosity is the dump file actually created even when it fails?

Hi @DoodleBobBuffPants
It failed during backup but successfully created the dump file ..
during backup , flyway throws error . I don't know what is problem.
Another curiosity is that this dump file was not corrupted because this load manually to other Sybase db it's recovers all databases tables, store-processes etc.
give below error during backup.
ERROR: Failed to execute operation in non-transactional context. Please restore backups and roll back database and code!
ERROR: Migration of schema dbo to version <IP_ADDRESS> - Crete Dump failed! Please restore backups and roll back database and code!
ERROR: Failed to execute operation in non-transactional context. Please restore backups and roll back database and code!
I attached some snip , please find.

This is due to Sybase throwing an exception. You could try looking into error handling your SQL.


[1449] Fix cart availability validation [master]

Resolves #1449 on master

replace reserved_in_date_range with overlaps_with_date_range that doesn't take status into account and add active where necessary
add specs for cart availability validation
fix specs for reservation availability validation

As something to consider, should we also disable the add to cart button on the equipment model pages similar to how we disable the add to cart button on the catalog if the item isn't reservable between the dates in the cart?

We could, it would improve our UX, but I'd add that as a separate issue. I'll open one up.

Also, did you review this? If not, could you :stuck_out_tongue:?

Should we also add tests for different start/end date overlaps in the cart spec?

I added tests for overlapping reservations in the cart specs, ready for re-review!

Turns out our availability calculations are still broken (see here), so I'm blocking this on the fix for v5.5 with that fix being added to this branch along with tests.

Nvm, I included tests for #1479 in #1482, so this is good to go as well.

Looks good

Addressed the one in-line comment, merging following a green build.


[Bug] Restart-DbaService fails when Polybase feature or Launchpad is installed

Environmental information

#### PowerShell version:

Name                           Value
----                           -----
PSVersion                      5.1.18362.628
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.18362.628
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

#### dbatools Module version:

Name    : dbatools
Path    : C:\Program Files\WindowsPowerShell\Modules\dbatools\1.0.104\dbatools.psd1
Version : 1.0.104

Name    : dbatools
Path    : C:\Program Files\WindowsPowerShell\Modules\dbatools\1.0.103\dbatools.psd1
Version : 1.0.103

Name    : dbatools
Path    : C:\Program Files\WindowsPowerShell\Modules\dbatools\1.0.91\dbatools.psd1
Version : 1.0.91

PS C:\WINDOWS\system32> Get-Culture
LCID             Name             DisplayName

1031             de-DE            German (Germany)
SQL Server:
Microsoft SQL Server 2017 (RTM-CU19) (KB4535007) - 14.0.3281.6 (X64)   Jan 23 2020 21:00:04   Copyright (C) 2017 Microsoft Corporation  Enterprise Edition (64-bit) on Windows Server 2016 Standard 10.0  (Build 14393: ) (Hypervisor)
and
Microsoft SQL Server 2019 (RTM-CU3) (KB4538853) - 15.0.4023.6 (X64)   Mar  4 2020 00:59:26   Copyright (C) 2019 Microsoft Corporation  Enterprise Edition: Core-based Licensing (64-bit) on Windows Server 2019 Standard 10.0  (Build 17763: ) (Hypervisor)

/* REPLACE WITH output of @@LANGUAGE */

Report

Host used

[x ] powershell.exe
[x ] ISE
[x ] VS Code
[ ] Other (please specify)

If anything other than powershell.exe was used, please confirm that you can duplicate the issue with powershell.exe

[x ] Still buggy in powershell.exe

Errors Received
WARNING: [10:08:59][Update-ServiceStatus] (MSSQLSERVER on MYSERVER) The attempt to stop the service returned the
following error: The service cannot be stopped because other services that are running are dependent on it.
WARNING: [10:08:59][Update-ServiceStatus] (MSSQLSERVER on MYSERVER) Run the command with '-Force' switch to
force the restart of a dependent SQL Agent
Steps to Reproduce
SQL Server 2017 with R intergration installed, e.g. Launchpad service is available
SQL Server 2019 with Polybase integration, e.g. SQLPBENGINE and SQLPBDMS
Import-Module dbatools
$target = "MyTarget"
Restart-DbaService -ComputerName $target -Type Engine   -force
Expected Behavior
That the DB Egnine would restart with all dependant services
Actual Behavior
Engine does not restart, only the Agent.
Warning that there are dependencies:
The attempt to stop the service returned the following error: The service cannot be stopped because other services that are running are dependent on it.

Yes, those dependencies were never tracked. Could you please provide all the service names in case I won't be able to repro your exact configuration in my lab?

Hi @nvarscar, I have submitted PR#6458 to fix this. I see here that you may have been looking at this previously.  Feel free to give a code review / comment there if you would have fixed differently.

Yes, those dependencies were never tracked. Could you please provide all the service names in case I won't be able to repro your exact configuration in my lab?

Sorry @nvarscar
I did not recognize your comment (shame on me).
So, on the one hand you have MSSQLLaunchpad
On the other SQLPBDMS and SQLPBENGINE
What I did not test right now is if you will also have different Polybase service names in combination with a named instance.

You won't get Polybase for each instance, it has a standalone setup or a scale-out group....but I'm not sure what a scale-out group looks like.


How to solve this problem

my Xcode version is 9.3

Thanks for response. I am using your library through Cocoapods, I just try to clean the project, but no effect. But I delete the textView in storyboard and add it again. the error disappeared. howerver this error reappeared sometimes.

Thanks for the info! Looks like an Xcode problem. It's good to hear that you found a solution to this problem. I'll close the issue for now. If you have any other information, feel free to reopen it.


Go Routine Leak

There is currently a  go-routine leak when spawning a refresher goroutine go lock.refresher(l.refreshInterval, cancelFunc) due to the use of an unbuffered channel unlocker:        make(chan struct{}) , as in l.Release() called after connection ping fails due to cancellation of connection context, as there is no consumer listening to the channel l.unlocker <- struct{}{} while calling release goes to an infinite deadlock wait.
Using unlocker:        make(chan struct{}, 1) should fix this deadlock.

Thanks @ankur-a for digging this out. Can you raise a PR, possibly with a test covering this scenario?

Sure, will raise a PR to fix this, using https://github.com/uber-go/goleak this in the unit test TestMysqlLocker_LockContext_Success or any other method will throw errors regarding this.
eg :
func TestMysqlLocker_LockContext_Success(t *testing.T) {
	defer goleak.VerifyNone(t)
	ctx := context.Background()
	db := setupDB(t)
	key := "foo"
	lock := getLockContext(ctx, t, key, db)
	lockContext := lock.GetContext()
	releaseLock(t, lock)

	// making sure lock's context is done after lock is released
	select {
	case <-lockContext.Done():
	default:
		assert.Fail(t, "lock's context is not cancelled after lock is released")
	}
}

Output:
` /Users/ankur/workspaces/go-mysql-lock/leaks.go:78: found unexpected goroutines:
[Goroutine 20 in state select, with database/sql.(*DB).connectionOpener on top of the stack:
goroutine 20 [select]:
database/sql.(*DB).connectionOpener(0xc00011c000, 0x13eb440, 0xc0000e49c0)
/usr/local/go/src/database/sql/sql.go:1071 +0xe8
created by database/sql.OpenDB
/usr/local/go/src/database/sql/sql.go:742 +0x12a
     Goroutine 5 in state select, with github.com/go-sql-driver/mysql.(*mysqlConn).startWatcher.func1 on top of the stack:
    goroutine 5 [select]:
    github.com/go-sql-driver/mysql.(*mysqlConn).startWatcher.func1(0xc0000261e0, 0xc0000d0a20, 0xc000022180)
    	/Users/ankur/go/pkg/mod/github.com/go-sql-driver/mysql@v1.5.0/connection.go:621 +0xbf
    created by github.com/go-sql-driver/mysql.(*mysqlConn).startWatcher
    	/Users/ankur/go/pkg/mod/github.com/go-sql-driver/mysql@v1.5.0/connection.go:618 +0xbe

     Goroutine 34 in state select, with github.com/sanketplus/go-mysql-lock.Lock.refresher on top of the stack:
    goroutine 34 [select]:
    github.com/sanketplus/go-mysql-lock.Lock.refresher(0x1372541, 0x3, 0xc000204060, 0xc000216000, 0x13eb440, 0xc0000e4a00, 0xc000099250, 0x3b9aca00, 0xc000099250)
    	/Users/ankur/workspaces/go-mysql-lock/lock.go:33 +0xb7
    created by github.com/sanketplus/go-mysql-lock.MysqlLocker.ObtainTimeoutContext
    	/Users/ankur/workspaces/go-mysql-lock/locker_client.go:100 +0x468
    ]

FAIL
FAIL	github.com/sanketplus/go-mysql-lock	0.915s
FAIL`

merged in #7


Pose-only optimizations

Whenever I try to only optimize the Poses (PoseVertex) by fixing all of the landmarks and not fixing the poses, I get the following Eigen error:
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:312: void Eigen::PlainObjectBase<Derived>::resize(Eigen::Index) [with Derived = Eigen::Matrix<int, -1, 1>; Eigen::Index = long int]: Assertion `((SizeAtCompileTime == Dynamic && (MaxSizeAtCompileTime==Dynamic || size<=MaxSizeAtCompileTime)) || SizeAtCompileTime == size) && size>=0' failed

I've tested that with the provided  ba_kitti_07.json sample and get the error when I fix the landmarks and not the poses.
Is the library not suited for such cases?
Thanks in advance,
S.

Hi, @cvmufc1
Thank you for notifying.
I could reproduce the same error.
I found this library can't handle pose-only optimization, special treatment is required in such case.
I want to support in the future.
Regards,

We added support pose-only optimizations in the latest release.
Regards,


Update Tutorial README.md as App unusable on Ubuntu with plugin version used in wizard tutorial

Following the Getting Started wizard tutorial on some Ubuntu 64bit configurations resulted in the app produced being basically non functional.
The compose plugin version created from the IDE wizard resulted in extremely slow behaviour of the app. Clicking the button would take multiple seconds for the button to update whereas it is expected to be instantaneous.
Updating the plugin version made the example apps functional.
This adds a suggestion to the tutorial that after using the wizard you should update the plugin version.

I saw that shortly after and changed the link to the Kotlin site... you might have just missed it... but will add a note about being a compatible version in the next few minutes...


add some format for bridge incentive program faq

Description
as title
Test plan
How did you test the new or updated feature?

Release notes
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:

LGTM


Define how to use IHE codes for Endpoint.connectionType

We need to describe, with examples, how various systems implementing IHE profiles would be represented in an mCSD directory using the IHE codes we are defining in https://github.com/IHE/ITI.mCSD/issues/13.

Need to support these cases:

XCA responding gateway with one endpoint
XCA responding gateway with two endpoints: one for query, one for retrieve.

ITI has tentatively decided this:

Short term (because Endpoint.connectionType is 1..1): use two Endpoints for both cases. In first case both will have the same URL.
Long term: try to get Endpoint.connectionType to support >1. Then first case can be represented by one Endpoint with two codes.

Another tentative decision: even if Endpoint.connectionType eventually supports >1, don't use the HL7 codes as well.

Anyone who needs to interoperate needs the IHE codes
Anyone who doesn't will not see a code they recognize (for example, to display to a user)

Included as part of MHD federation updates to mCSD.


When zooming an InteractiveViewer using the trackpad on Windows, it doesn't zoom from the cursor's center

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce

run the flutter sample: ~/flutter_sdk/examples/api/lib/widgets/interactive_viewer/interactive_viewer.transformation_controller.0.dart
use trackpad to zoom

Expected results
should zoom from the cursor's center
Actual results
not zoom from the cursor's center
Code sample
Code sample
~/flutter_sdk/examples/api/lib/widgets/interactive_viewer/interactive_viewer.transformation_controller.0.dart

Screenshots or Video

Screenshots / Video demonstration
https://github.com/flutter/flutter/assets/84117077/8d71d870-b95a-497b-a7fc-3f3ec9135e4d

Logs
Logs
no logs

Flutter Doctor output
Doctor output
flutter sdk: 3.13.3

Thanks for the report @jiagengArctuition
Although I don't have windows, but verified it on mac and was able to replicate the reported behavior on stable, but works as expected on latest master as below:
https://github.com/flutter/flutter/assets/67046386/091849bf-d68c-4255-b212-d257a0d86204
I used https://api.flutter.dev/flutter/widgets/InteractiveViewer/transformationController.html#widgets.InteractiveViewer.transformationController.1
Based on it, I'll close as working as expected on master. If you disagree or think this isn't correct interpretation, write in comments and I'll reopen it.

@darshankawar I have tested it on the latest master channel, and the issue still exists on Windows.

Thanks for the feedback. Reopening.

We tried on Windows + mouse with which the reported behavior doesn't occur. It seems it only occurs using trackpad, which we don't machine for, ie, Windows + trackpad, so we are unable to replicate it. Based on the report, keeping it open for team's attention.

I believe that this problem is caused by #136029


docs: add design accessibility guidelines

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes: #155
Summary:
Added design accessibility notes.
Type of change:
Please delete options that are not relevant.

[ ] New capability
[ ] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[x] add docsumentation

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update DisplayCAL (formerly dispcalGUI) to version <IP_ADDRESS>

Update homepage and distribution point
Convert to versioned cask
Add dependency on argyll-cms from homebrew
Install complete suite of tools instead of app symlink

(resolves #19745)

Could you please squash your commits?

Ok, I've made the changes you've suggested and squashed the commits - I hope I've done this correctly.

Looks good. Thank you.


Query params not always correctly decoded

Hey, I noticed when I am doing oAuth2 with google that sometimes google sends me query parameters such as:
{"state":"841c886d-14b7-4d82-9e03-dc5629cb473b","code":"4%2F0AVHEtk63juCeqrbpiPBBKuGcnk_QnmUzVLhZ5WFxkLsSeOy5IFGJAZwXb1345hYk4Kc4iw","scope":"email+profile+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile+openid","authuser":"1","prompt":"consent"}

or
{"state":"348c51b6-7cbc-40da-a48c-16c3b100659a","code":"4%2F0AVHEtk5mxLXlW660ngx3MWf4N1_tYox0lt2IC1mRNx398CJ3z4ab7gLP5kfWViyDNxv-hQ","scope":"email+profile+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile+openid","authuser":"1","prompt":"consent"}

in code when I do:
const { state, code } = c.req.query()

code looks like this: 4%2F0AVHEtk5mxLXlW660ngx3MWf4N1_tYox0lt2IC1mRNx398CJ3z4ab7gLP5kfWViyDNxv-hQ
which is not correctly decoded. When I do:
decodeURIComponent(code)

I get the correct value: 4/0AVHEtk5mxLXlW660ngx3MWf4N1_tYox0lt2IC1mRNx398CJ3z4ab7gLP5kfWViyDNxv-hQ

Thanks @yusukebe  it works with v3.1.4 but I am waiting for this before rolling it out to production.

@donchev7
Released v3.1.5, including the fix.

Great! Both cases work now, thank you.


Move Error classes in individual files

Error classes are currently stored as attributes in GDRx.exc. It would be better for code completion to include them in individual files.
(Currently, I do not know how often I misspelled them in the source code and I cannot check it due to GDScript's dynamic nature...)

Error classes were refactored but needs more testing!


Implement support for OCCURS without TIMES

05 DATA OCCURS 10.

Fixed in 84e5294b8e8f8e6614644435cd783c378de95bde and released as v1.0.2


fix configure_panorama spawn timeout

On "West Europe" it takes minimally 13 minutes for panorama to boot.

Makes sense, I wonder which is the fastest region to provision in...
I noticed the time is super variable in AU as well, sometimes it's started in <7 mins and other times it's around 10 or more.

Accidentally clicked close instead of just comment - merged.


Expose _setFocusIndex for menus

Can you consider exposing this method? Or other methods to externally handle which item is selected. I'm trying to implement a search feature that functions similarly to Google search. Having this method available would be extremely helpful.

I don't think this is what I'm after I need something that scrolls to a focused component but does not steal focus.


Improve BackgroundMusic from Template Unity Project into a robust, Visual Scripting-supporting tool in Omiya Games - Audio package

While visual scripting support hasn't been added yet, it is now possible.  The new ScriptableObject, BackgroundAudio and its nested class, BackgroundAudio.Player can be overridden to add this feature.  I'm closing this specific task for now.


calls to std error() don't trigger ErrorHandling usage in eclipse plugin

See std Image.wurst:

It works for me. I assume this is the Image.wurst file from the StdLib.


Error updating from console and webUI no matter sudo or -g

Hi...
I've tried to update from 4.0.6 -> 4.4.0 from the console and got an error message. After that, I tried to update from console with sudo permission and -g option and still got this error:
pi@HomeBridge:/var/homebridge $ sudo su
root@HomeBridge:/var/homebridge# npm install -g --unsafe-perm homebridge-config-ui-x
/usr/lib
└── (empty)
npm ERR! Linux 4.14.98-v7+
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "-g" "--unsafe-perm" "homebridge-config-ui-x"
npm ERR! node v8.16.0
npm ERR! npm  v3.10.10
npm ERR! path /usr/lib/node_modules/.staging/@nuxtjs/opencollective-f95f2d9a
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename '/usr/lib/node_modules/.staging/@nuxtjs/opencollective-f95f2d9a' -> '/usr/lib/node_modules/homebridge-config-ui-x/node_modules/@nuxtjs/opencollective'
npm ERR! enoent ENOENT: no such file or directory, rename '/usr/lib/node_modules/.staging/@nuxtjs/opencollective-f95f2d9a' -> '/usr/lib/node_modules/homebridge-config-ui-x/node_modules/@nuxtjs/opencollective'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! Please include the following file with any support request:
npm ERR!     /var/homebridge/npm-debug.log
npm ERR! code 1
So no, don't have the plugin running and when trying to start homebridge, it stops because it doesn't have the platform "config"... To make it run I completely removed this plugin config from the config.json file.
Any ideas?
Thanks in advance!

I've tried to completely uninstall (sudo npm uninstall -g homebridge-config-ui-x) and no errors...
After that tried to install again (sudo npm install -g --unsafe-perm homebridge-config-ui-x) with the same error...

Any clue on this?

Hi @Xusqui,
You're npm version is to old.
npm v3.10.10

Please try with Node.js 10 and npm 6.
https://github.com/oznu/homebridge-config-ui-x/wiki/Homebridge-&-Systemd-(Raspbian,-Ubuntu,-Debian)#step-2-install-nodejs-and-homebridge

OK... Will try now!
Thank you!

It worked!!!
Thanks a lot!!


valid-package-file-require: Deal with backslashes in Windows paths

Fixes #45.

This is a speculative fix, I can't test this because I don't have access to a Windows machine. Perhaps @MatmaRex can help test

We could also use https://www.npmjs.com/package/upath in this file to avoid future problems.

I've verified this fix on my VM


Crashing when launching with custom launcher

Hello.
I'm trying to install Flywheel with Create on Minecraft 1.18.1 on macOS M1
The reason I use custom launcher is because it supports custom java and this java is optimised for ARM (M1)
But every time I launch with Forge 39.0.0 and Flywheel 0.4.2-rc it crashes, but on mojang's launcher it doesn't. I want to use custom launcher cuz it doesn't have such performance and energy impact as original.
Here's log
https://paste.ee/p/ZCiOL
Launcher: MultiMC, java zulu-17, installed via this tutorial https://www.youtube.com/watch?v=bb-laqqlHWg

I have the same issue. It's just Flywheel, and create alone doesn't cause any issues. (other than needing flywheel; it still launches)

Sorry to hear, but this is the wrong place. I can't help you, but it looks to me like the launcher isn't correctly loading lwjgl. Can you even run an unmodded instance through it?


chore: update renaming kms-crypto-go -> kms-go

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (8688866) 85.24% compared to head (e2ff52e) 85.24%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main       #5   +/-   ##
=======================================
  Coverage   85.24%   85.24%
=======================================
  Files          86       86
  Lines       10394    10394
=======================================
  Hits         8860     8860
  Misses       1215     1215
  Partials      319      319

Files Changed
Coverage Δ

dataintegrity/suite/ecdsa2019/ecdsa2019.go
91.95% <ø> (ø)

did/doc.go
86.76% <ø> (ø)

jwt/jwt.go
100.00% <ø> (ø)

jwt/jwt_support.go
62.85% <ø> (ø)

jwt/verifier.go
76.78% <ø> (ø)

ld/documentloader/document_loader.go
100.00% <ø> (ø)

ld/store/context_store.go
87.50% <ø> (ø)

ld/store/remote_provider_store.go
95.00% <ø> (ø)

legacy/mem/mem.go
100.00% <ø> (ø)

presexch/definition.go
87.30% <ø> (ø)

... and 19 more

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


Rollbar should still log even when disabled

Honestly I cannot for the life of me understand why #425 was merged.
There were 2 issues in the past asking for opposite default behavior (#63 & #66 respectively).
A discussion should have ensued to figure out what offers the most flexibility and what is the desired default behavior. (Instead, the first group of people were told "don't worry, this is already how it works" and the second group of people were told "don't worry, we'll change how it works.")
When the default behavior was to log even when disabled, it's trivial for a developer to both set config.enabled = false; config.default_logger = Logger.new(IO::NULL).
However, now that the default behavior is to suppress logging when Rollbar is disabled, it's actually impossible to get out of this behavior.
If people agree that disabling Rollbar should also set the logger to a null logger to suppress logs from rollbar, I think it's reasonable to implement that, but in a way that would allow those of us do want logging still to bring it back. Maybe add config.disable! that also sets the default logger to IO::NULL.
But as it stands, this is essentially broken. I want Rollbar reporting off in development, but obviously I'm sending important debugging info to Rollbar and obviously I need important debugging info in development. IMO the correct default behavior is to log even when disabled. If people want to disable logging, there's a reasonable way to do it (set the logger to IO::NULL).
If maintainers agree, I'd be happy to submit a PR that unwinds #425.

@sdhull, after reviewing this, I have a few comments and a proposed solution.
It is by design that the gem doesn't try to log the payload of the notifier event. This is consistent with the other Rollbar SDK adapters, and the intended design. Instead, hooks are provided at various stages of processing of the event. The transform hook (at config.transform) is probably best for your needs. You would provide a handler there, and on each event the handler can decide whether and where to log. The app can determine its own format to log the data, as well as any filtering concerns.
However when config.enabled == false, these handlers will not be called. We don't want to change the behavior of the enabled flag, as other users expect the current behavior. Instead I am proposing a new config flag config.disable_send (or similar name) that allows the event to be processed but not sent. By leaving the gem enabled and setting this flag, all processing and hooks will remain enabled, but the event will not be sent to Rollbar.
Would this meet your needs?

@waltjones please review my comment above.
The argument I'm making is that the current defaults in the Rollbar gem are detrimental to the developer experience. The suggestion (essentially "implement a transform hook that logs locally & set enabled to true and set disable_send to true") does not rectify this situation of bad defaults.
If you want to introduce a new configuration option, one that seems more reasonable to me would be config.also_log_locally which I could set with config.also_log_locally = Rails.env.development?. The implementation could be essentially
  class Rollbar::Notifier
    def log(level, *args)
      Rollbar.configuration.logger.send(level, *args) if Rollbar.configuration.also_log_locally
      # existing log method...
    end
  end

And I'd argue that you should default also_log_locally to true in development & test environments.
Line of reasoning is essentially:

it's common for developers to disable rollbar in dev & test envs
developers send useful information to Rollbar (eg, information they would want to see during local development)

If you disagree with 1 or 2 then maybe makes sense to default to also_log_locally to false.

The crux of the issue is this:

developers send useful information to Rollbar (eg, information they would want to see during local development)

rollbar-gem doesn't log the notifier payload to the application log, even when fully enabled. And the design philosophy for the Rollbar SDKs is that the format of how to log that data is application specific and should be decided by the application.
Currently a also_log_locally flag wouldn't mean anything because the gem never writes any part of the payload to the application log.

rollbar-gem doesn't log the notifier payload to the application log, even when fully enabled.

Right. Because people enable Rollbar in production and presumably are essentially replacing logs with Rollbar. Because who wants to dig through production logs for errors?
However, if people are sending logs to Kibana (or similar) then writing to the application log even in production might be useful. Maybe the option name I suggested is bad. Maybe it should be also_write_to_application_log?

format of how to log that data is application specific and should be decided by the application

Presumably this is why you offer a default_logger configuration option?

Currently a also_log_locally flag wouldn't mean anything because the gem never writes any part of the payload to the application log

Right. That's why I also suggested an implementation in that comment to make that flag mean something (eg, to make it work). Did you miss the code snippet?

@sdhull I'm turning this back over to @jessewgibbs. He'll decide on what to do.

This would be new behavior that we would want to add to other SDKs for the sake of consistency.  For now I'm going to flag it as an enhancement and stick it into the backlog for future consideration.  PRs welcome if anyone wants to build and document this!

@jessewgibbs gotcha. I'm already overcommitted so unfortunately I can't offer a PR at this time. However I'll keep it on my radar and if I do get a breather I'll see what I can do. FWIW I think the docs will be more work than the implementation 😉

@sdhull -- Thanks for opening this issue and including your monkeypatch.
This was surprising behavior for me and my team and we've used the python, nodejs, and .NET integrations -- It's possibly we weren't using them for logging non-fatal warnings and things of that nature at the time.


Refactor auth routes with s

Fixes #6333

@eladlachmi I tried to get to this PR but I'm unable to do it in the near future - removing myself as to not block


VIPER download link broken in XO-Chip documentation.

Mattmik moved downloads from downloads/viper to files/viper, making a PR shortly.

Duplicate of #124 , sorry about that.


Add oauth 2 Angular

fix https://github.com/jhipster/jhipster-lite/issues/1529

Can you update this PR, using the new https://github.com/jhipster/jhipster-lite/blob/main/src/main/java/tech/jhipster/lite/generator/project/domain/ProjectFile.java plz?

move the bounty to the ticket, not to this PR :D

thanks a lot for your work @Bolo89
it's awesome!

Bounty claimed at https://opencollective.com/generator-jhipster/expenses/84925

@Bolo89 : approved, thanks for your work


Chris brandon 06

Submission Checklist:

[x] Create a new reposity called tcp-chat-server, and add your partner as a collaborator
[x] Create a new branch, appropriately named, for today’s work
[x] Configure the root of your repository with the following files and directories.
[ ] README.md has Containing good documentation for how to setup, install, and run your application
[x] .editorconfig - Contains a standard Editor Configuration (use class standard)
[x] .gitignore - Contains a robust Git Ignore file for all relevant Python related materials
[x] test/ - Contains unit tests for your application
[x] Thoughfully name and organize any aditional configuration or module files.
[x] Create a TCP Server using the Python standard socket module
[x] The server should be running on an individual thread using the threading module in Python
[x] Create a Client class that models an individual connection, and exists as a module in your application
[x] Each client instance should contain at least an id, nickname, and socket conn and addr
[x] Each client instance should be started on an individual thread using the threading module in Python
[x] Clients should be able to send messages to all other clients by sending it to the server without a special command
[x] Clients should be able to run special commands by sending messages that start with a command name, for example:
[x] The client should send @quit to disconnect (this should not stop the server… only the client that invoked @quit)
[x] The client should send @list to list all connectued users
[ ] The client should send @nickname  to change their nickname
[ ] The client should send @dm   to send a message directly to another user by nickname
[x] Connected clients should be maintained as an in memory collection on the server instance called the client_pool
[ ] When a socket emits the close event, the socket should be removed from the client_pool
[ ] When a socket emits the data event, the data should be logged on the server and the commands below should be implemented [nothing listed after this]
[x] Testing: No testing requirements for this lab.
[x] Create a pull request from your feature branch to your master branch.
[x] Update the README.md
[x] create and update checklist in the pull request comments

@ChrisSeattle @brandonhaynes100 Don't type @word unless you wish to notify users which username correspods to word (e.g. @dm, and others you've used in your PR).
You should also bring that up in your class, in case you're not being tought general Github/interweb etiquete...
Cheers


Queues - show competitions using the queue

@ mention of reviewers
@Didayolo
A brief description of the purpose of the changes contained in this PR.
When viewing queue details, now you can see which competitions are using this queue with the following conditions:

Super admin can see all competitions using this queue
Admins/Organizers can see public competitions and competitions which they are organzining (cannot see private competitions where use is not admin)
Normal user can see public competitions using this queue (canont see private competitions)

Screenshot:

Issues this PR resolves

#1227

Checklist

[x] Code review by me
[x] Hand tested by me
[x] I'm proud of my work
[x] Code review by reviewer
[x] Hand tested by reviewer
[x] CircleCi tests are passing
[x] Ready to merge

Perfect.

@ihsaan-ullah There is a problem with this change:
In src/apps/api/serializers/queues.py:
   def get_competitions(self, obj):
        # get user from the context request
        user = self.context['request'].user

        # for super user return all competiitons using this queue
        # for admin return competitions where this user is organizer using this queue
        # for non-admin return public competitions using this queue
        if user.is_superuser:
            # Fetch all competitions
            competitions = obj.competitions.all().values('id', 'title')
        else:
            # Fetch all competitions where user is organizer or competition is published
            competitions = obj.competitions.filter(
                Q(published=True) |
                Q(created_by=user) |
                Q(collaborators=user)
            ).values('id', 'title')
        return competitions

get_competitions is used in codabench/src/static/riot/competitions/competition_list.tag.
When a user is not logged in and try to access the competition list, it raises the following error:
TypeError: Cannot cast AnonymousUser to int. Are you trying to use it in place of User?

Not sure if it's incidental (same naming for two different functions) or if the function should be edited.

Not sure if it's incidental (same naming for two different functions) or if the function should be edited.

Solved in #1320

@ihsaan-ullah There is a problem with this change:
In src/apps/api/serializers/queues.py:
   def get_competitions(self, obj):
        # get user from the context request
        user = self.context['request'].user

        # for super user return all competiitons using this queue
        # for admin return competitions where this user is organizer using this queue
        # for non-admin return public competitions using this queue
        if user.is_superuser:
            # Fetch all competitions
            competitions = obj.competitions.all().values('id', 'title')
        else:
            # Fetch all competitions where user is organizer or competition is published
            competitions = obj.competitions.filter(
                Q(published=True) |
                Q(created_by=user) |
                Q(collaborators=user)
            ).values('id', 'title')
        return competitions

get_competitions is used in codabench/src/static/riot/competitions/competition_list.tag.

Actually the problem is something else and not the function name.
The backend code really need rewriting but I am delaying it till we separate the frontend and backend, that could be a good opportunity to rewrite most of the code and simplify things.


[PINOT-4887] Fixed min/max values for realtime no-dictionary columns

Codecov Report

Merging #1468 into master will increase coverage by 0.11%.
The diff coverage is 89.13%.

@@            Coverage Diff             @@
##           master    #1468      +/-   ##
==========================================
+ Coverage    67.9%   68.01%   +0.11%
==========================================
  Files         787      788       +1
  Lines       38490    38548      +58
  Branches     5015     5026      +11
==========================================
+ Hits        26135    26218      +83
+ Misses      10653    10626      -27
- Partials     1702     1704       +2

Impacted Files
Coverage Δ

.../pinot/core/realtime/impl/RealtimeSegmentImpl.java
74.5% <ø> (+4.36%)
:arrow_up:

.../FixedByteSingleColumnSingleValueReaderWriter.java
95.04% <ø> (+5.89%)
:arrow_up:

...time/converter/stats/RealtimeColumnStatistics.java
70.31% <ø> (+0.19%)
:arrow_up:

...converter/stats/RealtimeSegmentStatsContainer.java
93.33% <75%> (+1.66%)
:arrow_up:

...erter/stats/RealtimeNoDictionaryColStatistics.java
89.77% <89.77%> (ø)

...dex/loader/invertedindex/InvertedIndexHandler.java
68.57% <0%> (-11.43%)
:arrow_down:

...com/linkedin/pinot/transport/common/SegmentId.java
34.78% <0%> (-8.7%)
:arrow_down:

.../linkedin/pinot/transport/common/SegmentIdSet.java
53.84% <0%> (-5.13%)
:arrow_down:

...e/operator/dociditerators/BitmapDocIdIterator.java
60.71% <0%> (-3.58%)
:arrow_down:

...ealtime/converter/RealtimeSegmentRecordReader.java
82.35% <0%> (-2.95%)
:arrow_down:

... and 18 more

Continue to review full report at Codecov.

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


CI: fix html rendering CI job

For some reason circleCI picks up a rather old sphinx-book-theme and pydata-sphinx-theme versions. This PR should fix that and the build failure (caused by a deprecation)

I'm merging this without waiting for a review, as it does the fix needed for the CI.


chore(deps): After renaming and npm publishing update all dependencies

Prerequisite:

#52

duplicated #104


Use pytorch-labs/tokenizers and remove tokenizer/

Summary: Use our shiny new repo
https://github.com/pytorch-labs/tokenizers.
Test Plan: Rely on CI jobs
Reviewers:
Subscribers:
Tasks:
Tags:

Outside of the linter, looks like the main change is UNWRAP to deref the tokenizer results. Does that sound right?

Yes exactly

All green merging


Patch 0.7.0 - access storage bucket deploying on GCP

0.7.0 patch related to this fix #1313

The PR has been merged, but not yet released.
When @bbenligiray or @aquarat make the release, please ping @kolenic-martin to test this.

Per discussion with @amarthadan and given that @vponline and @Ashar2shahid have tested this extensively (and I have run several successful deployments in all relevant branches for various regions while testing their feature availability), I'm moving this to Done. If anyone wanted some extra particular tests, please ping me; I'll be happy to do them.

I've successfully tested v0.6.6 and v0.7.3 and both returned sensible output when making requests via the example script and CURL. I tried breaking the config as well in several places (deleted the stage, changed Airnode version, malformed JSON) and all of that was caught by the validator.


Add pod blog

It would be awesome to add a blog feature to this repository where fellows can share their insights and people can tune in!

This sounds like a pretty cool feature. Would like to try this out. Any other fellows interested, please let me know, and we can pair program our way through it.

I am interested

Hi @kishdubey lets start working on this


Batch Content Validation Issue for learn.microsoft website

Section links:

https://learn.microsoft.com/en-us/python/api/azure-batch/azure.batch.custom.custom_errors.createtaskserrorexception?view=azure-python#parameters
https://learn.microsoft.com/en-us/python/api/azure-batch/azure.batch.models.accountlistpoolnodecountsoptions?view=azure-python#azure-batch-models-accountlistpoolnodecountsoptions-as-dict

Notes: Most subpages of the models all have this issue.
Reason:
Format validation Issue: Format messy.

Section links:

https://learn.microsoft.com/en-us/python/api/azure-batch/azure.batch.models.accountlistpoolnodecountsoptions?view=azure-python#keyword-only-parameters
https://learn.microsoft.com/en-us/python/api/azure-batch/azure.batch.batch_auth.sharedkeyauth?view=azure-python#parameters
https://learn.microsoft.com/en-us/python/api/azure-batch/azure.batch.batch_auth.sharedkeycredentials?view=azure-python#parameters

Notes: Most subpages of the models and batch_auth all have this issue.
Reason:
Format validation Issue: Miss Description.

Section links:

https://learn.microsoft.com/en-us/python/api/azure-mgmt-batch/azure.mgmt.batch.models.automaticosupgradepolicy?view=azure-python#keyword-only-parameters
https://learn.microsoft.com/en-us/python/api/azure-mgmt-batch/azure.mgmt.batch.models.upgrademode?view=azure-python
https://learn.microsoft.com/en-us/python/api/azure-mgmt-batch/azure.mgmt.batch.models.upgradepolicy?view=azure-python#keyword-only-parameters

Reason:
Format validation Issue: Extra symbols <br />.

Section link1, link2, link3, link4, link5, link6, link7, link8, link9, link10:

Reason:
Typing annotation Issue: Please unify the format, update to *args:Any, **kwargs:Any or *args, **kwargs.

Section link:

https://learn.microsoft.com/en-us/python/api/azure-mgmt-batch/azure.mgmt.batch.models.pool?view=azure-python#keyword-only-parameters

Reason:
Link validation issue: Broken link, open the link displays 404.
@rohit-ganguly , @lmazuel , @ronniegeraghty , @cRui861 , @dpwatrous for notification.

Close this issue as we'll put it into a summarzied one.


Fix a fairly serious bug whereby Vec's could incorrectly compare as equal

This bug breaks Bundles with two empty Vectors... if you connect them. This was a latent bug affecting Rocket (utl and ptw in RoCCInterface) as well as any attempts to use multiple optional interfaces in TopIO.

Can one of the admins verify this patch?


Event if properties have been set

I'm trying to get information about AudioTrackCount immediately after start playing a media like this:
Media.LoadMedia(somefile);
Media.Play();
 for (int i = 0; i < Media.AudioTrackCount; i++)
                {
                   //something
                }

but at this time the AudioTrackCount is always 0. Once the video has actually started the AudioTrackCount is 2 as expected so there is a short delay.
Is there any existing event that occurs once after all properties have been set? Something like Media.VlcMediaPlayer.Opened ?

Maybe VlcPlayer.StateChanged event