TLSv1.3: Update the state machine to be closer to TLSv1.3

Checklist

[x] tests are added or updated
[x] CLA is signed

Description of change

This is a major overhaul of the TLSv1.3 state machine. Currently it still
looks like TLSv1.2. This commit changes things around so that it starts
to look a bit less like TLSv1.2 and bit more like TLSv1.3.
After this PR we will have:
ClientHello
+ key_share          ---->
                           ServerHello
                           +key_share
                           {CertificateRequest*}
                           {Certificate*}
                           {CertificateStatus*}
                     <---- {Finished}
{Certificate*}
{CertificateVerify*}
{Finished}           ---->
[ApplicationData]    <---> [Application Data]

Key differences between the intermediate position after this PR and the final TLSv1.3
position are:

No EncryptedExtensions message yet
No server side CertificateVerify message yet
CertificateStatus still exists as a separate message
A number of the messages are still in the TLSv1.2 format
Still running on the TLSv1.2 record layer (although it is using the new TLSv1.3 secret generation)

This depends on #1848, so please only look at the last 11 commits

#1848 has been reviewed and approved, so once you do that and rebase I will begin looking at this.

#1848 is now in, so I rebased. All commits in this PR are now for review.

New commits pushed addressing all feedback so far.

All required changed made, so I've taken your plus one and pushed. Thanks.


Add bootloader

This PR is to upstream the current brutal-boot code into the repo
To build and run the bootloader, use make run-loader; This will also build a simple kernel to test things out
Note: I'm not good with build systems so be free to point out stuff

Great work! :D

Doesn't work with llvm
❯ make run-loader CONFIG_TOOLCHAIN=llvm                                         08:30:05
clang -MD -std=gnu2x -O3 -Wall -Wextra -Werror -Wnewline-eof -Wignored-attributes -Wunknown-attributes -Isources/libs/ansi -Isources/libs/posix -Isources/libs/bsd -Isources/libs/gnu -Isources/libs/math -Isources/libs/ -Isources/ -Ithirdparty -ffreestanding -D__x86_64__ -I. -target x86_64-pc-win32-coff -fno-stack-protector -fshort-wchar -mno-red-zone -c -o build/loader/loader/src/config.c.o sources/loader/src/config.c
In file included from sources/loader/src/config.c:2:
In file included from sources/libs/brutal/host.h:5:
sources/libs/brutal/host/io.h:17:6: error: "Unsupported platform!"
#    error "Unsupported platform!"
     ^
sources/libs/brutal/host/io.h:20:23: error: unknown type name 'HostIoFileHandle'
typedef Result(Error, HostIoFileHandle) HostIoOpenFileResult;
                      ^
sources/libs/brutal/host/io.h:26:31: error: unknown type name 'HostIoFileHandle'
MaybeError host_io_file_close(HostIoFileHandle handle);
                              ^
sources/libs/brutal/host/io.h:28:32: error: unknown type name 'HostIoFileHandle'
IoReadResult host_io_read_file(HostIoFileHandle handle, char *data, size_t size);
                               ^
sources/libs/brutal/host/io.h:30:34: error: unknown type name 'HostIoFileHandle'
IoWriteResult host_io_write_file(HostIoFileHandle handle, char const *data, size_t size);
                                 ^
In file included from sources/loader/src/config.c:2:
In file included from sources/libs/brutal/host.h:6:
In file included from sources/libs/brutal/host/log.h:3:
In file included from sources/libs/brutal/io.h:15:
sources/libs/brutal/io/file.h:9:5: error: unknown type name 'HostIoFileHandle'
    HostIoFileHandle handle;
    ^
6 errors generated.
make: *** [sources/loader/.build.mk:43: build/loader/loader/src/config.c.o] Error 1


Create logic for recording receipt_chain_hash for multiple transactions

Right now, we are recording payments with Receipt_chain_database right after we schedule them. As a result, we do not accurately save the previous receipt_chain_hash. When we send multiple transactions at the same time, they would refer to the same previous receipt_chain_hash, but there may be a case where these transactions are applied on top of each other. Thus, they refer to different receipt_chain_hashs. We should accommodate for this.

This is addressed in the client storage RFC: https://github.com/CodaProtocol/coda/pull/2901

Closing this issue as it is stale for a long time.


Add support for granting/revoking karma to multiple users

What is this about
Addresses #161. Example:

Checklist

[x] I've reviewed my own code
[x] I've executed go build ./... and confirmed the build passes
[x] I've run go test ./... and confirmed the tests pass

Not sure how to address Method Karma.recordKarma has a Cognitive Complexity of 22 (exceeds 20 allowed). Consider refactoring.  from codeclimate.....

Not sure how to address Method Karma.recordKarma has a Cognitive Complexity of 22 (exceeds 20 allowed). Consider refactoring. from codeclimate.....

That's a hint I need to refactor and split some things in new functions. We can ignore it for now. I care more about those code climate things in the core of slackscot than I do in the demo plugins like this one.

Thanks, @saidmasoud ! I'm going to merge this in and push a new version.


Problem: out-of-bound check not working

This code taken from the Zhihu tutorial should trigger out-of-bound check but did not.
gcc/g++ 11.4.0
cuda 11.5
#include <Eigen/Eigen>
#include <iostream>
#include <muda/muda.h>

#define MUDA_CHECK_ON 1

namespace md = muda;

int main() {

    constexpr int N = 1024;
    md::HostVector<float> hA(N), hB(N), hC(N);
    md::DeviceVector<float> dA(N), dB(N), dC(N / 2);

    // initialize A and B using random numbers
    auto rand = [] { return std::rand() / (float)RAND_MAX; };
    std::generate(hA.begin(), hA.end(), rand);
    std::generate(hB.begin(), hB.end(), rand);

    // copy A and B to device
    dA = hA;
    dB = hB;

    // block size = 256
    md::ParallelFor(256)
        .apply(
            N,
            [dC = dC.viewer(),        // | this is a capture list              |
             dA = dA.cviewer(),       // | map from device_vector to a viewer  |
             dB = dB.cviewer()]       // | which is the most muda-style part!  |
            __device__(int i) mutable // place "mutable" to make dC modifiable
            {
                dC(i + 1) = dA(i) + dB(i);
                md::print("%f\n", dC(i));
            })
        .wait(); // wait the kernel to finish

    // copy C back to host
    hC = dC;
}

I wonder if my code has mistake or if something went wrong.
Thanks a lot in advance.

If you compile the code in Release mode, there is no runtime check in muda.
So try to use the RelWithDebugInfo mode or just Debug mode.

It's not a good idea to define MUDA_CHECK_ON manually in the source code, just define it in the Preprocessor.

How do i make sure I compile under Debug mode?
I deleted the build directory, made a new one and used this command
cmake -DCMAKE_BUILD_TYPE=Debug ..
make
./main

and the problem persists.

It turns out that it was 0.
muda/muda_config.h has this code:
#ifndef MUDA_CHECK_ON
#define MUDA_CHECK_ON 0
#endif

Do I have to modify this code to make it work? Or is there a proper way to do this?

You may try this, cmake . -DMUDA_FORCE_CHECK=ON.

No it does not work :sob:

Then, can you open a repository to contain your code, and I will try to fix that later?

The complete setting is:
main.cu
#include <Eigen/Eigen>
#include <iostream>
#include <muda/muda.h>

namespace md = muda;

int main() {

    std::cout << muda::RUNTIME_CHECK_ON << std::endl;

    constexpr int N = 1024;
    md::HostVector<float> hA(N), hB(N), hC(N);
    md::DeviceVector<float> dA(N), dB(N), dC(N / 2);

    // initialize A and B using random numbers
    auto rand = [] { return std::rand() / (float)RAND_MAX; };
    std::generate(hA.begin(), hA.end(), rand);
    std::generate(hB.begin(), hB.end(), rand);

    // copy A and B to device
    dA = hA;
    dB = hB;

    // block size = 256
    md::ParallelFor(256)
        .apply(
            N,
            [dC = dC.viewer(),        // | this is a capture list              |
             dA = dA.cviewer(),       // | map from device_vector to a viewer  |
             dB = dB.cviewer()]       // | which is the most muda-style part!  |
            __device__(int i) mutable // place "mutable" to make dC modifiable
            {
                dC(i + 1) = dA(i) + dB(i);
                md::print("%f\n", dC(i));
            })
        .wait(); // wait the kernel to finish

    // copy C back to host
    hC = dC;
}

CMakeLists.txt
cmake_minimum_required(VERSION 3.15...3.26)

set(CMAKE_C_COMPILER "/usr/bin/gcc")
set(CMAKE_CXX_COMPILER "/usr/bin/g++")

project(template LANGUAGES CXX CUDA)
set(CMAKE_CXX_STANDARD 17)

set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-relaxed-constexpr --extended-lambda")

set(EIGEN_INCLUDE_DIR "extern/eigen")
set(MUDA_INCLUDE_DIR "extern/muda/src")

add_executable(main main.cu)

target_include_directories(main PUBLIC ${MUDA_INCLUDE_DIR})
target_include_directories(main PUBLIC ${EIGEN_INCLUDE_DIR})

set_target_properties(main PROPERTIES CUDA_SEPARABLE_COMPILATION ON)

Eigen and Muda are cloned under extern/eigen and extern/muda directories.
I did not add them as submodule so opening a repo may not describe my file structure(?)
Simply follow the steps should reproduce the results.

I also wonder what a proper startup template, with a CMakeLists.txt and a main.cu, should be like (because simply copying headers results in many compilation errors). Grateful if one could be provided.

I provide a starting point for you, https://github.com/MuGdxy/muda-app/tree/cmake-mini. Build the project following the readme and then plug your code in it. I tested it on Linux, which works well.
It's not recommended to use an old-style CMake like the above.

The example works well, thanks.

Ok, if nothing goes wrong, please close the issue 😄


SCons: Fix compilation database generation with MSVC

Fixes #54434.
Co-authored-by: @dmoody256
Didn't get to test it myself, would be great if a few MSVC users could confirm it works (to enable compilation database generation, you should pass compiledb=yes to SCons).

The platform/windows/detect.py seems to break MSVC detection on CI it seems, it falls back partially to MinGW (but keeping MSVC parameters) and fails:
scons: Building targets ...
run(["core\object\gdvirtual.gen.inc"], ["core\object\make_virtuals.py"])
Executing builder function in subprocess: module_path='D:\\a\\godot\\godot\\core\\object\\make_virtuals.py', parameter_file='C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\7f6697c8b1d243b8b26da514830bd521.json', parameter_file_size=17774, target=['D:\\a\\godot\\godot\\core\\object\\gdvirtual.gen.inc'], source=['D:\\a\\godot\\godot\\core\\object\\make_virtuals.py']
build_rd_headers(["servers\rendering\renderer_rd\shaders\blit.glsl.gen.h"], ["servers\rendering\renderer_rd\shaders\blit.glsl"])
Executing builder function in subprocess: module_path='D:\\a\\godot\\godot\\glsl_builders.py', parameter_file='C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\302887ed57094ab2979a18b070002895.json', parameter_file_size=17834, target=['D:\\a\\godot\\godot\\servers\\rendering\\renderer_rd\\shaders\\blit.glsl.gen.h'], source=['D:\\a\\godot\\godot\\servers\\rendering\\renderer_rd\\shaders\\blit.glsl']
x86_64-w64-mingw32-g++ /Foplatform\windows\godot_windows.windows.opt.tools.x86_64.obj /c platform\windows\godot_windows.cpp -std=gnu++17 /TP -Wno-error=cpp /nologo -O2 -O2 -mwindows -Wall -Wshadow-local -Wno-misleading-indentation -Werror /DDEBUG_ENABLED /DNO_EDITOR_SPLASH /DWINDOWS_ENABLED /DWASAPI_ENABLED /DWINMIDI_ENABLED /DWINVER=0x0601 /D_WIN32_WINNT=0x0601 /DVULKAN_ENABLED /DGLES3_ENABLED /DMINGW_ENABLED /DMINGW_HAS_SECURE_API=1 /DTOOLS_ENABLED /DMINIZIP_ENABLED /DZSTD_STATIC_LINKING_ONLY /DUSE_VOLK /DVK_USE_PLATFORM_WIN32_KHR /DGLAD_ENABLED /DGLES_OVER_GL /Ithirdparty\freetype\include /Ithirdparty\libpng /Ithirdparty\glad /Ithirdparty\volk /Ithirdparty\vulkan /Ithirdparty\vulkan\include /Ithirdparty\zstd /Ithirdparty\zlib /Iplatform\windows /I.
x86_64-w64-mingw32-g++ /Foplatform\windows\crash_handler_windows.windows.opt.tools.x86_64.obj /c platform\windows\crash_handler_windows.cpp -std=gnu++17 /TP -Wno-error=cpp /nologo -O2 -O2 -mwindows -Wall -Wshadow-local -Wno-misleading-indentation -Werror /DDEBUG_ENABLED /DNO_EDITOR_SPLASH /DWINDOWS_ENABLED /DWASAPI_ENABLED /DWINMIDI_ENABLED /DWINVER=0x0601 /D_WIN32_WINNT=0x0601 /DVULKAN_ENABLED /DGLES3_ENABLED /DMINGW_ENABLED /DMINGW_HAS_SECURE_API=1 /DTOOLS_ENABLED /DMINIZIP_ENABLED /DZSTD_STATIC_LINKING_ONLY /DUSE_VOLK /DVK_USE_PLATFORM_WIN32_KHR /DGLAD_ENABLED /DGLES_OVER_GL /Ithirdparty\freetype\include /Ithirdparty\libpng /Ithirdparty\glad /Ithirdparty\volk /Ithirdparty\vulkan /Ithirdparty\vulkan\include /Ithirdparty\zstd /Ithirdparty\zlib /Iplatform\windows /I.
=====
platform\windows\godot_windows.cpp:31:10: fatal error: main/main.h: No such file or directory
   31 | #include "main/main.h"
      |          ^~~~~~~~~~~~~
scons: *** [platform\windows\godot_windows.windows.opt.tools.x86_64.obj] Error 1
compilation terminated.

=====
=====
platform\windows\crash_handler_windows.cpp:33:10: fatal error: core/config/project_settings.h: No such file or directory
   33 | #include "core/config/project_settings.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
scons: *** [platform\windows\crash_handler_windows.windows.opt.tools.x86_64.obj] Error 1

=====
scons: building terminated because of errors.

The platform/windows/detect.py change may have been specific to the issue I was having when my visual studio was installed incorrectly. At first I did not supply that argument, but still always mingw was selected. I started supplying the msvc_version=14.2 to force it, which it then still was selecting mingw. So when I made that change to detect.py then it forced msvc selection and I saw my msvc was install was corrupt and fix the msvc install.
That change in platform/windows/detect.py should be reverted. SCons will set the MSVC_VERSION internally if your MSVC install is valid (My case it wasn't so it wasn't setting MSVC_VERSION internally).

I used the patch of this PR against master, using SCons: v<IP_ADDRESS>9790274f66fa55251f5754de34820a29c7327a and it was successful in creating the compile_commands.json.
It is still not useful for my work, because I need the full build info (link commands etc.) but it does seem to fix the compile_commands.json :).   Blatant plug for please reconsidering https://github.com/godotengine/godot/pull/63724

Cherry-picked for 3.6.

Cherry-picked for 3.5.1.


Simplified interface

This PR simplifies the interface as described in #145 (closes #145).
Why now? Because tomorrow I give a talk (partially about Ginkgo) and want to at least be able to claim that the simpler interface I present is under review, and will be in the development branch soon.

I like it and did not notice any problems. However, I do leave the approval to @tcojean as he has more C++ knowledge than I do.
Maybe we can also merge #160 such that you can show good performance results?

I'm not showing any performance results (and the talk is in 30 min).
On Fri, Nov 9, 2018, 09:03 Hartwig Anzt<EMAIL_ADDRESS>wrote:

I like it and did not notice any problems. However, I do leave the
approval to @tcojean https://github.com/tcojean as he has more C++
knowledge than I do.
Maybe we can also merge #160
https://github.com/ginkgo-project/ginkgo/pull/160 such that you can
show good performance results?
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/ginkgo-project/ginkgo/pull/165#issuecomment-437368535,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABNAj4ynox5ghX9cgMzf0kKDrIC0hPe5ks5utYs_gaJpZM4YV_7O
.


TFRS - Make user auth fields editable for Admins

Description:
TFRS admins need to update user auth fields like username and email in order to fix login issues.
Purpose and benefit to user:
This will make it possible for TFRS Admins to fix any user login issues without having to ask the development team to make database changes.
Acceptance Criteria:

[ ] Given I am an Admin, When I am editing user information, then username and email fields are editable
[ ] Given I am an Admin, When I am editing user information, then when i click save, the username and email fields are saved to the database

Development Checklist:

[ ] Make user auth fields editable on the user details page, and test that any changes are saved to the database

Hey team! Please add your planning poker estimate with Zenhub @emi-hi @jig-patel @JulianForeman @tim738745 @vibhiquartech


Add synonym: kg/ha

Could you please add the abbreviation kg/ha as a synonym for http://purl.obolibrary.org/obo/UO_0000283

@krishnaTO to be added to the PR as well


Migrated generator code base to xo + prettier and async/await

Also fixed readme

Regarding the prompts changed from 'What\'s your...' to "What's your", I think we should avoid contractions altogether. A more formal 'What is your...' would be appropriate in this context. Console logs are fine though.


community[patch]: Improve import callbacks to make it IDE friendly

declares all as a list of strings (instead of dynamically computing it)
import type definitions when TYPE_CHECKING is true

@eyurtsev This solves my issue too in VSCode but a new one appeared. Pylint complains about the imports not being exported despite the __all__ variable.

My guess is that the linter doesn't compute the list from the dict. My fix to that is to put back the original list.
__all__ = [
    "AimCallbackHandler",
    "ArgillaCallbackHandler",
    "ArizeCallbackHandler",
    "PromptLayerCallbackHandler",
    "ArthurCallbackHandler",
    "ClearMLCallbackHandler",
    "CometCallbackHandler",
    "ContextCallbackHandler",
    "HumanApprovalCallbackHandler",
    "InfinoCallbackHandler",
    "MlflowCallbackHandler",
    "LLMonitorCallbackHandler",
    "OpenAICallbackHandler",
    "LLMThoughtLabeler",
    "StreamlitCallbackHandler",
    "WandbCallbackHandler",
    "WhyLabsCallbackHandler",
    "get_openai_callback",
    "wandb_tracing_enabled",
    "FlyteCallbackHandler",
    "SageMakerCallbackHandler",
    "LabelStudioCallbackHandler",
    "TrubricsCallbackHandler",
    "FiddlerCallbackHandler",
]

@pierreveron got it -- it sounds like we should not compute the all list dynamically and instead rely on unit tests to catch any drift

@pierreveron made required changes, we'll merge and please confirm that it all works as expected

@pierreveron made required changes, we'll merge and please confirm that it all works as expected

Super cool thanks @eyurtsev. I think you should do the same for all modules in langchain_community that were changed by the PR. There can be cascading errors, for example when importing from langchain.memory import ChatMessageHistory as ChatMessageHistory export is not caught by the linter in libs/community/langchain_community/chat_message_histories/__init__.py

@eyurtsev I'll refactor other langchain_community modules whenever applicable.


ResourceExhaustedError : OOM when allocating tensor with shape ...

Hey,
I've just bought ZED stereo camera for object detection with tensorFlow trained model.
And whenever I pass a frame from ZED camera to tensorflow, It crashes.
Meanwhile, the same code works perfectly when I pass a frame from simple 1080p camera.
Maybe It's due to the callback. Can we get sync frames from ZED camera?
Would you please help me resolve the issue?

Hey,
Have you tried using the Python wrappers provided by StereoLabs? I no longer have a ZED camera and cannot maintain this repository.
One possible reason you are getting the OOM error is because TensorFlow is allocating all the GPU memory avaiable. Try just giving it a fraction of the GPU memory and allow it to grow: https://www.tensorflow.org/tutorials/using_gpu
Cheers!


Add Create Member command in UG

Closes #57

Add Create Member command to features
Add Create Member command to command summary

LGTM, thanks for cleaning up the rest of the UG too


Fix compilation warnings for HDF5 tests

/opt/cray/pe/hdf5/<IP_ADDRESS>/PGI/15.3/lib/libhdf5.a(H5PL.o): In function `H5PL__open':
/b/hdf5-support/rpm/BUILD/cray-hdf5-<IP_ADDRESS>-201706141544.1f5842d97267c-pgi-serial/hdf5-1.10.0-patch1/src/./H5PL.c:609: warning: Using 'dlopen' in statically
linked applications requires at runtime the shared libraries from the glibc version used for linking

Madra issue: https://madra.cscs.ch/scs/reframe/issues/455

only a warning, can be ignored

@jgphpc I think this warning implies that we should not compile this statically. I think we should adapt the test. Can you open an internal issue for this?

moving to https://jira.cscs.ch/browse/UES-1296


Minor fix to launching annotator using custom checkpoints

This led to errors (deserializing issues from default Segment Anything's way of initializing checkpoints) while using custom checkpoints out-of-the-box.

Now the code won't work for SAM checkpoints anymore. So for now I don't want to support using the torch_em trainer checkpoints. Instead convert it to just the model weights via https://github.com/computational-cell-analytics/micro-sam/blob/master/micro_sam/util.py#L355.


Restoring minimap

First off - is there any reason behind removing/restoring minimap when Zen is toggled (unless minimap option is checked) that I'm overseeing? I think it would make perfect sense to do it with plain CSS in combination with data-attribute (something like data-zen-minimap="true||false").
The reason for proposed change is that currently I sometimes get multiple minimaps restored, instead of the only one that was removed in the first place. I don't really know exactly when it occurs, but from what I encountered, it seems that quickly toggling Zen on and off causes the issue (which does make sense). Whenever it happens I need to restart Atom completely, as just refreshing it doesn't help.
If you're up for a change, I can submit PR fixing the issue as proposed above.

If there is a bug with minimap toggling I'll accept a PR (the code does look a bit wonky, not sure if that's still compatible), but I'm not experiencing any issues and I don't really have the time to try and find out if there is anything wrong. It's been a while of course (sorry about that) but if anyone wants to review this and submit a fix I'll pull it.


[V2 Feature Request] Adding Choppiness Index

Chop index description:
https://www.tradingview.com/wiki/Choppiness_Index_(CHOP)
Python implementation:
https://qiita.com/hoshitter1/items/d241cd2d13b72df9a204

Will do!
In the meantime, you can use this in your code:
import qtpylib.indicators as ti

def chopiness(bars, lookback=14):
    atrsum = ti.true_range(bars).rolling(lookback).sum()
    highs = bars['high'].rolling(lookback).max()
    lows = bars['low'].rolling(lookback).min()
    return 100 * np.log10(atrsum / (highs - lows)) / np.log10(n)

# use:
bars['chopiness'] = chopiness(bars, 14)

Thank you so much.

@ranaroussi shouldnt it be choppiness rather than chopiness?

Whoops :)
On 2 Jun 2019, at 16:00, Dante<EMAIL_ADDRESS>wrote:
@ranaroussi https://github.com/ranaroussi shouldnt it be choppiness
rather than chopiness?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ranaroussi/qtpylib/issues/119?email_source=notifications&email_token=AAJBNMVHXR5KPBP43QVU7JLPYO76TA5CNFSM4HRRNGKKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWXVDEA#issuecomment-498028944,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAJBNMWMTJOJQ55BDQVNV4TPYO76TANCNFSM4HRRNGKA
.


Update README, build scripts, example and indentation

So I wasn't able to get all four changes in separate pull requests in a clean way - sorry about that.
About the updated README: I changed the example on CodePen so that the input element now has a black border so it's easier to see it (me and a colleague both thought that the component was broken when we opened the CodePen as we didn't see the white input field at first).

@arqex @chollier ping

@simeg Thanks so mucho for your contribution, and sorry for the delay.


feat(objects): RevitWall by Face now stores BREP instead of Surface

Fixes #2132
Changes the surface storage property in a RevitWall by Face to instead store a BREP.
This aligns with how Revit works, as it expects a "solid with a single face" as   opposed to a "Nurbs surface".
This means you an now have weird trims and holes in your Face by Wall instances.

I'll open an issue for the TT file failing on local to check it out. Jedd told me the same a couple days ago.


Update server.go

Fixed a bug that caused a panic when sending multiple signals: signals are no longer sent on the server.signals channel after it has closed.

Thanks @Jsewill :)
Do you mind closing this one and create another PR on the v1.0 branch? We could then bring this bug fix in the v1.0.1 release.

Not at all. I'll set one up on the v1.0 branch.

See pull request #531 .


Realm Collection notifications sometimes reference indices that do not exist

I am having an array of items that is synchronized via initial fetching of Realm objects and then individual collection updates. Attaching the code below. Sometimes one of the deletions references the item index that is out of range in the array and thus causes a crash. I am using Realm v3.0.2 and the change notifications are processed inside Main queue which is serial
Code Sample
private var entitiesToken: NotificationToken?

func doStuff(){
   guard let realm = try? ... get realm ... else { fatalError() } // simplifying this part here since it's pretty straight forward

   var cachedEntities = [Entity]()

   self.entitiesToken = realm.objects(RealmEntity.self).observe { [weak self] changes in
       switch changes {
          case .initial(let managedEntities):
                cachedEntities = managedEntities.map { Entity(managedEntity:  $0) }

          case .update(let managedEntities, let deletions, let insertions, let modifications):
               // process deletions first
               for deletion in deletions {
                     cachedArray.remove(at: deletion) // sometimes I get index out of range here
               }

               for insertion in insertions {
                    let newEntity = Entity(managedEntity: managedEntities[insertion])
                    cachedArray.insert(newEntity, at: insertion) // sometimes I get index out of range here as well
               }

               for modification in modifications {
                   let modifiedEntity = Entity(managedEntity: managedEntities[modification])
                   cachedArray[modification] = modifiedEntity
               }

          case .error: break // do nothing
       }
   }
}

Version of Realm and Tooling
Realm framework version: 3.0.2
Realm Object Server version: ?
Xcode version: 9.4.1
iOS/OSX version: 11 and 12
Dependency manager + version: ?

You need to loop over deletions in reverse order, as they're sorted in ascending order and each object that you remove shifts the objects after it in the array.

Closing this issue with no recent activity. We are using Github issues for bugs or new feature ideas.
For community support please use one of the following options:

Stack Overflow for a specific programming question about how to use Realm.
Realm Forums for general Realm discussion that might be considered too broad for for Stack Overflow.


gen(router): consider returning 405 Method Not Allowed for defined paths

Currently, router tries to match request method, then path. It returns 404 Not Found if there is no operation with such method and path.
Probably we should add a yet another handler for cases when path is known, but there is no corresponding operation.

405 is better than 404 in this case, agree


[WIP] Adding Workflow for agenda generator

This will generate the next community call agenda right after the current community call is finished

I realized that this github action works but it is not maintained. I see warnings  and checking issues, there are some trivial issues about deprecated NoteJS and Github set-outputs. Switching to calling Github API directly.


Make rboot.h self contained

rboot.h uses the nonstandard uint8 / uint32 types without defining them,
causing breakage if rboot.h (or other headers including it like rboot-api.h)
are included without locally defining these types.
The espressif SDK includes a nonstandard c_types.h header containing
definitions for uint8/uint32/TRUE/FALSE, so include that in rboot.h and drop
all the local definitions.
Signed-off-by: Peter Korsgaard<EMAIL_ADDRESS>

Again, I'm sure there was a reason for not doing this before, because this would be the most obvious thing to do. Really can't remember what it was though! Might have been to do with compatibility with different (earlier) versions of the SDK, which wouldn't really matter now. Mind you, does this change compile with the RTOS SDK as well as the standard?

I've never used the RTOS SDK, but looking at https://github.com/espressif/ESP8266_RTOS_SDK/blob/master/include/espressif/c_types.h the content looks very similar and has the needed typedefs, so I would say yes.

I've rebased the commit now.

thanks


[Salsa] Handel both cases for primitive types in JSDOC

JSDoc users commonly use both cases for native types. e.g.:
/**
 * @param {Number} a
 * @param {string} b
 */

Currently Number refers to interface Number instead of the primitive type number.
See relevant discussion in https://github.com/jsdoc3/jsdoc/issues/1046

Here is the list we should support:

String
Number
Boolean
Undefined
Null
Object
Array
Function
Any
Promise


Vercel deployment: Unexpected token < in JSON at position 0

Describe the bug
Previous build was totally alright. It's a SvelteKit + DatoCMS app.
So from this main branch I opened a new branch, changed three lines of text (note not programmatically, just plain text), then I deployed it to vercel like usual but getting
Unexpected token < in JSON at position 0
So far local dev, build, preview all worked fine. Vercel build logs shows it's successful and no errors.
I have since tried:

ran npm update to update to SvelteKit v1.0.0-next.271
put headers: { Accept: 'application/json' } as second arg in the fetch() in load
tried to switch to adapter-auto
redeploy without build cache
but none of the above worked.

Reproduction
Unfortunately it's private so I can't share it.
Logs
No response
System Info
System:
    OS: macOS 12.1
    CPU: (8) arm64 Apple M1
    Memory: 142.58 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 14.18.2 - ~/.nvm/versions/node/v14.18.2/bin/node
    Yarn: 1.22.17 - ~/.nvm/versions/node/v14.18.2/bin/yarn
    npm: 8.5.0 - ~/.nvm/versions/node/v14.18.2/bin/npm
  Browsers:
    Chrome: 98.0.4758.80
    Firefox: 97.0
    Safari: 15.2
  npmPackages:
    @sveltejs/adapter-auto: next => 1.0.0-next.17
    @sveltejs/adapter-vercel: next => 1.0.0-next.43
    @sveltejs/kit: next => 1.0.0-next.271
    svelte: ^3.46.0 => 3.46.4
    vite v2.8.3 (from Vercel log)

Severity
blocking all usage of SvelteKit
Additional Information
No response

If you can't share the project this is happening in, you will need to create another reproduction of the issue that you can share.

Hi, I found the issue finally! It was due to that I forgot to enable all the env variables on Vercel for "preview". Since Main branch has "production" env so it always builds without problem. The new branch has preview link and it lacks the env there, which resulted in the error. 😊
Another trick to debug this is to use check functions-> Realtime logs. By refreshing your preview link you shall see some errors pop up here.


Update build.sh for Issue 330

Pinning requests to 2.29.0 to avoid importing urllib3 2.0 and resolve the conflict with lack of support for that library in botocore to resolve Issue #330.
Issue #, if available: 330
Description of changes:
Running as a library referenced in Glue 4 results in the exception:
from neptune_python_utils.glue_neptune_connection_info import GlueNeptuneConnectionInfo
File "/tmp/neptune_python_utils.zip/neptune_python_utils/glue_neptune_connection_info.py",
...
line 34, in  import botocore.httpsession File "/home/spark/.local/lib/python3.10/site-packages/botocore/httpsession.py", line 21, in  from urllib3.util.ssl_ import ( ImportError: cannot import name 'DEFAULT_CIPHERS' from 'urllib3.util.ssl_' (/tmp/neptune_python_utils.zip/urllib3/util/ssl_.py)
This is due to a conflict between botocore not supporting urllib3 2.0 and newer versions of releases using urllib3 2.0.  By pinning releases to 2.29.0, it resolves this conflict. This was tested by running the old library in Glue 4 and failing then running the revised library in Glue 4 and completing successfully.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

I have the same issue. The fix works.


Support for Angular 16?

Bug Report or Feature Request (mark with an x)
- [ ] bug report -> please search issues before submitting
- [x] feature request

Desired functionality
Will this be upgraded to support Angular 16 ? Thanks a lot !

As I believe the module works well on Angular 16 without any change, @AnthonyNahas should publish a new version announcing compatibility with Angular 16.
Meanwhile, if you want to use it with Angular 16 you can just copy the module and directive from https://github.com/AnthonyNahas/ngx-long-press2/tree/master/projects/ngx-long-press2/src/lib to your project and just yolo it.

I will update this lib to v16. Just give me few minutes

https://www.npmjs.com/package/ngx-long-press2 v5 is now live
thank you


Scav case always shows default recipes

SPT Version
3.10-BE
Project Type
Modules
Expected Result
Scav case shows recipes as they exist in the server database.
Actual Result
Scav case only shows the default 5 recipes and attempting to start one that doesn't exist results in an unexpected error and kicks you back to the main menu.
Steps To Reproduce
Open SPT_Data/Server/database/hideout/scavcase.json and remove lines 29-136 and the , on line 28.
Start the server, login with developer profile (or otherwise unlock the scav case), and look at available recipes.
Server Log
Click and attach file. ↓
BepinEx Log
Click and attach file. ↓
Client Log
Click and attach file. ↓
Error log is from attempting to start the 15k run, which was removed.
Player Profile
No response
Screenshots
Note: Changing production.json appears to correctly be reflected in other crafting stations, issue may be unique to scav case.

Attachments

EscapeFromTarkov_UR6wpUV63n.png (1477 KiB)
EscapeFromTarkov_6BHXFRlKEK.jpg (306 KiB)
server-2024-11-18.log (14 KiB)
2024.11.19_6-32-44_<IP_ADDRESS>.33420 traces.log (54 KiB)
2024.11.19_6-32-44_<IP_ADDRESS>.33420 errors.log (3 KiB)
LogOutput.log (8 KiB)
scavcase.json (0 KiB)

Originally written by sgtlaggy.

I have a suspicion its hard coded into the client what options exist for scav case, will need investigation. to confirm

Originally written by chomp.

Scav case "recipes" have been moved from /client/hideout/production/scavcase/recipes (scavcase.json) to being a part of the response for /client/hideout/production/recipes (production.json)
The SPT server still currently uses the existing scavcase.json file for starting production, but the client will be using the values from production.json
This will require a refactoring of the server to utilize the data from the new location for consistency

Originally written by DrakiaXYZ.

Fixed with: https://dev.sp-tarkov.com/SPT/Server/commit/0c5ecefc410ebdff11a47e1ce7cf2102d51b85cb

Originally written by chomp.


Add the base for thriftmux scala docker images (layers) used for end to end bpf testing

This PR pulls out the thriftmux container changes necessary for #351. It also switches the build process to use bazel entirely rather than using docker directly.
Testing

[x] Used this change in #367 to verify that it works properly

Committed in ce4ee41afd74e3d46418d3a85c05f92fca98746b


The priority of the same thread suddenly changes in a trace.

Hello, I am trying to do tracing analysis using perfetto.
I caught this phenomenon: in a trace for a period of time, a certain process will correspond to multiple priorities.
For example, the kernel priority of ksoftirqd/0 is 120, but after preempted and resumed running, it becomes 49. The priority is restored to 120 after the next switch.

Another case, one of my threads (log_collect) changed from 120 to 39 and then reverted to 120.

How should this be explained? Is this caused by some behavior of the linux kernel? Or is it perfetto's problem?

Thanks a lot, could you give me some references to this behavior of the kernel? Or how do I retrieve this mechanism?

You might want to start at https://man7.org/linux/man-pages/man7/sched.7.html but this is not really in scope for Perfetto at this point. You have to look into which scheduler you are using and how that works to figure out why this priority change happened.

Also you might want to cross-check the raw trace if that's really what' happening under the hoods or we have some bug when parsing IRQ events.
I can see that behaviour could be due to the usage of priority inheritance mutexes

You might want to start at https://man7.org/linux/man-pages/man7/sched.7.html but this is not really in scope for Perfetto at this point. You have to look into which scheduler you are using and how that works to figure out why this priority change happened.

Thanks for the tip.

Also you might want to cross-check the raw trace if that's really what' happening under the hoods or we have some bug when parsing IRQ events.
I can see that behaviour could be due to the usage of priority inheritance mutexes or other forms of priority inheritance

Also you might want to cross-check the raw trace if that's really what' happening under the hoods or we have some bug when parsing IRQ events.
I can see that behaviour could be due to the usage of priority inheritance mutexes or other forms of priority inheritance

Thank you. I'll do some research in this area

Also you might want to cross-check the raw trace if that's really what' happening under the hoods or we have some bug when parsing IRQ events.
I can see that behaviour could be due to the usage of priority inheritance mutexes or other forms of priority inheritance

I checked trace and it did match the characteristics of priority inheritance. Thanks again.


Add GoPower Token (GPT) icon via upload

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

[x] Filename in the lowercase format
[x] Image format: png
[x] Image size: 256 by 256 px

Please, lowercase file name for next upload, for now, added lowercased image file name here: https://github.com/TrustWallet/tokens/commit/6cbbd4958cf287d687c0e4768fc731ace6a353a4


SpongeAPI automated build not working

This has happened in the past before, when the API build does not reflect the current state of the GitHub repo. I noted this with the change of the Scheduler API. If you open the jar in an archiver, you will notice that all of the old classes are still there (AsynchronousScheduler, SynchronousScheduler, etc.) rather than the new classes that have replaced them. This has happened on more than one occasion in the past, at which times @progwml6 has fixed the issue. However, I am bringing this up again because it seems to be a recurring issue, and there should be something done to make the API build more stable. If you download the full Sponge coremod build and open it in an archiver, you can see that the new classes are correctly compiled. It seems to be that the coremod builds are fine, but that the standalone API builds are not.

The API should be cleaning before every build -- I will check the settings in the morning

On Jun 28, 2015, at 11:12 PM, Robert Herhold<EMAIL_ADDRESS>wrote:
This has happened in the past before, when the API build does not reflect the current state of the GitHub repo. I noted this with the change of the Scheduler API. If you open the jar in an archiver, you will notice that all of the old classes are still there (AsynchronousScheduler, SynchronousScheduler, etc.) rather than the new classes that have replaced them. This has happened on more than one occasion in the past, at which times @progwml6 has fixed the issue. However, I am bringing this up again because it seems to be a recurring issue, and there should be something done to make the API build more stable. If you download the full Sponge coremod build and open it in an archiver, you can see that the new classes are correctly compiled. It seems to be that the coremod builds are fine, but that the standalone API builds are not.
—
Reply to this email directly or view it on GitHub.

@progwml6
Need a status update on this.

Team city looks to be working properly

On Jun 28, 2015, at 11:12 PM, Robert Herhold<EMAIL_ADDRESS>wrote:
This has happened in the past before, when the API build does not reflect the current state of the GitHub repo. I noted this with the change of the Scheduler API. If you open the jar in an archiver, you will notice that all of the old classes are still there (AsynchronousScheduler, SynchronousScheduler, etc.) rather than the new classes that have replaced them. This has happened on more than one occasion in the past, at which times @progwml6 has fixed the issue. However, I am bringing this up again because it seems to be a recurring issue, and there should be something done to make the API build more stable. If you download the full Sponge coremod build and open it in an archiver, you can see that the new classes are correctly compiled. It seems to be that the coremod builds are fine, but that the standalone API builds are not.
—
Reply to this email directly or view it on GitHub.

Looking at the files in an archiver, the last time that 2.1-20150528.033129-93 was updated, was the 28th of may which matches the filename.

Ignore the index page for the api use gradle/maven
I'm in the middle of rewriting part of how the indexer works with snapshots. It's tough as the libraries that are capable of gathering the needed metadata of info can be very tough to work with.

On Jul 6, 2015, at 12:54 AM, Ryan Leach<EMAIL_ADDRESS>wrote:
Looking at the files in an archiver, the last time that 2.1-20150528.033129-93 was updated, was the 28th of may which matches the filename.
—
Reply to this email directly or view it on GitHub.


Spring Cloud Function

Whilst I appreciate the documentation, honestly, I cannot get this to build in a short amount of time.  Others are complaining too: https://learn.microsoft.com/en-us/answers/questions/1166331/spring-autowiring-not-working-for-spring-azure-fun
My @Autowired is not working (injected items are null).
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.966 s - in com.microsoft.azure.functions.worker.functional.tests.SimpleParamReturnTest
[INFO]
[INFO] Results:
[INFO]
[ERROR] Errors:
[ERROR]   FunctionEnvironmentReloadRequestHandlerTest.SetEnv_Succeeds:27 » InaccessibleObject
[INFO]
[ERROR] Tests run: 61, Failures: 0, Errors: 1, Skipped: 0
[INFO]

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

ID: 59f2ae26-8728-c449-ba2d-6f870080f07e
Version Independent ID: 9d7345f9-d9be-1056-b293-18c16e524d3e
Content: Spring Cloud Function in Azure
Content Source: articles/java/spring-framework/getting-started-with-spring-cloud-function-in-azure.md
Service: azure-functions
GitHub Login: @KarlErickson
Microsoft Alias: judubois

@jdubois do you have a solution?

It does work using the sample https://github.com/Azure-Samples/hello-spring-function-azure
Let me check if we can update the Learn module that is mentioned here, as it may be out of date (there was several updates both in Azure Functions and Spring Functions, so something could have been broken here).
For the record: this is in the process of being simplified a lot by the Spring team, so this will need to be rewritten soon anyway.

Thanks for the update @snodnipper ! Can you point to where the documentation or the sample was wrong or misleading?
On our side, @mkheck volunteered to update the doc, so any help is always good!

Hello,
I've just tested:

https://github.com/Azure-Samples/hello-spring-function-azure with the current version ( https://github.com/Azure-Samples/hello-spring-function-azure/tree/3137be8cc91ce2a54ac957f957081e54ec820870 to be exact )
With the current version of Azure Functions Core Tools ( 4.0.5348 )
And the current version of Java ( java version "20.0.2" 2023-07-18 )

Running mvn clean test works:
2023-09-13T12:24:32.159+02:00  INFO 2821 --- [           main] o.a.maven.surefire.booter.ForkedBooter   : Starting ForkedBooter v2.22.2 using Java 20.0.2 with PID 2821 (started by julien in /Users/julien/workspace/hello-spring-function-azure)
2023-09-13T12:24:32.160+02:00  INFO 2821 --- [           main] o.a.maven.surefire.booter.ForkedBooter   : No active profile set, falling back to 1 default profile: "default"
2023-09-13T12:24:32.322+02:00  INFO 2821 --- [           main] o.a.maven.surefire.booter.ForkedBooter   : Started ForkedBooter in 0.291 seconds (process running for 0.864)
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.462 s - in com.example.HelloTest
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  12.386 s
[INFO] Finished at: 2023-09-13T12:24:32+02:00
[INFO] ------------------------------------------------------------------------

Thanks, @jdubois ! I'll go ahead and close. @snodnipper if you're still encountering problems, please open a new issue and provide details about where the documentation or the sample is wrong or misleading. Thanks!


EV data injection thorough MQTT

Describe the bug
I have a problem with injecting data through MQTT. Mains seems to work, but EV keeps getting into NO_COMM error.

(V) (CalcBalancedCurrent)(C1) Checkpoint 2 Isetbalanced=44.0 A, Idifference=32.9, mod=0.
(V) (CalcBalancedCurrent)(C1) Checkpoint 3 Isetbalanced=44.5 A, IsumImport=-8.9, Isum=-2.9, ImportCurrent=6.
(D) (CalcBalancedCurrent)(C1) Checkpoint b: Resetting SolarStopTimer, IsetBalanced=44.5A, ActiveEVSE=0.
(V) (CalcBalancedCurrent)(C1) Checkpoint 4 Isetbalanced=44.5 A.
(V) (CalcBalancedCurrent)(C1) Checkpoint 5 Isetbalanced=44.5 A.

(V) (CalcBalancedCurrent)(C1) Checkpoint 2 Isetbalanced=44.5 A, Idifference=32.8, mod=0.
(V) (CalcBalancedCurrent)(C1) Checkpoint 3 Isetbalanced=45.0 A, IsumImport=-8.5, Isum=-2.5, ImportCurrent=6.
(D) (CalcBalancedCurrent)(C1) Checkpoint b: Resetting SolarStopTimer, IsetBalanced=45.0A, ActiveEVSE=0.
(V) (CalcBalancedCurrent)(C1) Checkpoint 4 Isetbalanced=45.0 A.
(V) (CalcBalancedCurrent)(C1) Checkpoint 5 Isetbalanced=45.0 A.

(V) (CalcBalancedCurrent)(C0) Checkpoint 2 Isetbalanced=45.0 A, Idifference=32.8, mod=0.
(V) (CalcBalancedCurrent)(C0) Checkpoint 3 Isetbalanced=45.5 A, IsumImport=-8.5, Isum=-2.5, ImportCurrent=6.
(D) (CalcBalancedCurrent)(C0) Checkpoint b: Resetting SolarStopTimer, IsetBalanced=45.5A, ActiveEVSE=0.
(V) (CalcBalancedCurrent)(C0) Checkpoint 4 Isetbalanced=45.5 A.
(V) (CalcBalancedCurrent)(C0) Checkpoint 5 Isetbalanced=45.5 A.

(V) (CalcBalancedCurrent)(C1) Checkpoint 2 Isetbalanced=45.5 A, Idifference=32.8, mod=0.
(V) (CalcBalancedCurrent)(C1) Checkpoint 3 Isetbalanced=46.0 A, IsumImport=-8.5, Isum=-2.5, ImportCurrent=6.
(D) (CalcBalancedCurrent)(C1) Checkpoint b: Resetting SolarStopTimer, IsetBalanced=46.0A, ActiveEVSE=0.
(V) (CalcBalancedCurrent)(C1) Checkpoint 4 Isetbalanced=46.0 A.
(V) (CalcBalancedCurrent)(C1) Checkpoint 5 Isetbalanced=46.0 A.

*** mqtt_receive_callback, is debug added by me just before the UpdateCurrentData call when [topic == "/Set/EVMeter"] (Line: 2566).
To Reproduce
Expected behavior
No EV_NOCOMM error.
Screenshots
P.S.
The documentation should be updated that injecting EV data requires 5 parameters (L1:L2:L3:W:Wh) instead of 3 (with the mains meter).
I can do this afterwards.
Data in MQTT:
SmartEVSE-39644/Set/MainsMeter: -72:-55:-39
SmartEVSE-39644/Set/EVMeter: 0:0:0:0:1565180

This is retained data and updated every 5 to 10 seconds (depending how long the modbus query took).

You mean with the Wh value in EV? Yes, I also tried with -1.
This parameter is this value in the webinterface:

I read this as the total kWh handled by the meter as per this piece of code:
            if (WH > -1) {
                // Energy measurement
                EnergyEV = WH;
                if (ResetKwh == 2)
                    EnergyMeterStart = EnergyEV;             // At powerup, set EnergyEV to kwh meter value
                EnergyCharged = EnergyEV - EnergyMeterStart; // Calculate Energy
                RecomputeSoC();                              // Recalculate SoC
            }

This should solve it:
6eec7943.zip

Fixed in b058a71


Website name

Website should probably be a .io as are all the new domains.

Working on getting etherslurp.io domain name. Need to get it setup on Voxel.

Moved to website project.


elf: error out if sbpf_version.enable_elf_vaddr() and config.optimize_rodata=false

Enabling virtual addresses requires optimize_rodata=true. Otherwise with optimize_rodata=false we allocate a vec where we join all the readonly sections, and if we allowed virtual addresses then we'd potentially have to allocate huge amounts of memory.

Codecov Report

Merging #478 (d6e4a2e) into main (d91f880) will increase coverage by 0.09%.
The diff coverage is 87.50%.

@@            Coverage Diff             @@
##             main     #478      +/-   ##
==========================================
+ Coverage   89.84%   89.93%   +0.09%
==========================================
  Files          23       23
  Lines       10192    10204      +12
==========================================
+ Hits         9157     9177      +20
+ Misses       1035     1027       -8

Impacted Files
Coverage Δ

src/elf.rs
89.82% <87.50%> (+0.56%)
:arrow_up:


Improved home screen, changed onboarding text, NCI Trial API recursion

Improved home screen, changed onboarding text, NCI Trial API recursion
Code of Conduct & Contributing Guidelines
By submitting creating this pull request, you agree to follow our Code of Conduct and Contributing Guidelines:

[x] I agree to follow the Code of Conduct and Contributing Guidelines.

Closing this stale PR for irrelevance


Adding ContentFragment for Slack

This is for https://github.com/orgs/dust-tt/projects/3?pane=issue&itemId=40635488
Sending context as ContentFragment from the Slack bot.
A few points:

We start computing the ContentFragment as early as possible when we get the slack webhook because there is a lot of I/O needed to be done before answering.
We skip all mentions / answers from/to the bot when building the content fragment.

Also before we can merge that we need an UI to display content fragment in Conversations :)

Also before we can merge that we need an UI to display content fragment in Conversations :)

Sounds good. I will take care of it.

@spolu you can start reviewing, there are a few things missing but should prevent from reviewing.
The main missing thing is adding a "provider" concept to ContentFragmentType because right now the Slack icon is hard coded.
We also need to do some basic testing on the anticipated features (summarize a thread and translate it to another language) and see if the prompt is correctly built. GPT keep answering me that it does not see the thread I am talking about when I ask it to make a summary. Looks like we need to be more explicit in the fact that this is a (Slack) thread.

And it looks like that. The green background color on the Slack avatar is because I need to publish a new version of sparkle to support ReactNode and backgroundColor on the avatar component (today it's either a react node or an http URL).

I believe this is very confusing to have something that looks like a message. You want something that is distinctively different from a message. Something close to a Chip should do the work pretty well.

Do you strongly feel like the version you propose here is the best we can use?

Do you strongly feel like the version you propose here is the best we can use?

Not necessarily, this idea was coming from @philipperolet and I personally love it, I think it makes a lot of sense, it's a message "coming from slack".
But we can definitely try something else.

@fontanierh also found it confusing so happy to try something else.

But that is not a message right?

So mimicking a message is very likely to confuse the user no?

Also how would that work for document insertion?

Jumping in; the point not to confuse it with agent / user message is valid. An option we had discussed was to give the CF a different background color that assistant / user messages -- also something representing clearly the fact that it's a CF in the left column in lieu of an Avatar (e.g. Content specific picto, + words content fragment)
However, a consistent look and feel is also important so having the CF's "content" ( in the sense "info that we wish to show the user about this CF" so not necessarily the content of the fragement) aligned with the rest of the content, with the same style, felt right and is what led to suggest the use of a conversationmessage

At this point I would call @Duncid to the rescue with the :tophat:  :smile:

@Duncid suggested to “throw a box” which really is a simple chip component ImHO

A simple chip might not be very noticeable by the user (already a few chips in the agent messages), the CF might deserve a bit more. And there's the question of how it would be positioned to keep everything good-looking
@lasryaric had experimented with a box like the citations -- as ed suggested, but it didn't look sparkly
=> I can jump in with @lasryaric and make 2 propositions this morning (I have something in mind) and if they are voted down we can switch to anything else you/ed see fit?

A content fragment is a fragment of content. It can be a document injected in the conversation by the user, it can be the text of an opened tab added by the user, it can be some context from slack, it could be an automated summary of the conversation generated for very long conversations when necessary it could be notion page injected in context by some magic action on notion (eg @dust conversation:converstaionId as a comment) it could be a reply to an email that was sent from the conversation in the future.
Let's start from something simple that tells what it is and that is future proof to document injection from the input bar. It's a bunch of content that was added to the conversation. A message is a piece of text added to the conversation by a specific user or assistant. Slack is not a user. And we do not want to show the slack content in conversation that would be distasteful wouldn't it?

Also I strongly feel it has to be visually distinctive from a citation as they don't play at all the same role. A citation is a link to external content. A content fragment is external content injected in conversation.

Ok so the direction I was experimenting on below -- distinct from user & agent messages while a clear part of the conversation context
From the look of the above messages I gather this will not excite :sweat_smile:

of course would require some tuning on the bg color & perfecting the left column but this is the idea

My questions about the chip were 1. noticeable enough? and 2. how exactly should it be placed to integrate seamlessly in the conversation and look good?
=> That being said, happy to commit to the chip or any other solution and assist @lasryaric to ship if he so wishes

ideally (We have a user associated), I would do:

In the meantime:

Since the use case is Slack only for now and we are not even going to display the content of the content fragment, I think it does not matter too much what UI solution we are going with for now.
I will try it with a chip for now just because we need to make a decision (and I already tried citation and conversation), and we can revisit later when we have more concrete use case coming up.

@philipperolet @Duncid @spolu what do you think about this one?

(not the best example since the LLM did not get which thread I was talking about but I

And here it is when it's not Slack:

@Duncid You don't want to have the @dust message in the content fragment since it will be exactly the user message right after.
Good idea to have the channel in there.
@lasryaric let's use the design otherwise? I'm somewhat happy with a Chip as well. But def not in green. What do you want to do?

I personally think the chip looks better than the citation.

And I think the day we add support for uploading documents directly on the webapp this is going to change anyway, so might not worth spending too much time on it right now. Except if you think it's confusing or look bad.

@Duncid Also it will generally be a UserMessage after the content fragment which might impact your design as the background of the next message won't be white but the same light grey

The green won't fly with product I think. I think we're all aligned on the content and general shape of it, now we need to converge on a final design.

Happy to go with the citation design if that makes us save some time. I will do that.

FYI
https://github.com/dust-tt/dust/pull/2056

Can you share a final screenshot as well? :pray: :pray:

thanks @spolu . Working on merging it tonight.

Here is what it looks like now:

ok I am ready on my side, need to deploy sparkle tomorrow and then front. Won't do that tonight, too risky.


Will Download Completely Random Files

I've been using the grabber tool for a bit and just recently I notice that whenever I try to download something it will go and download a bunch of random pictures as well. Like I'll go and download something that only has 95 images and it will give me 400 extra photos and I did it a couple times and they look like they're the same photos each time. It worked like once and I thought it was because I had to download stuff to the same directory as it was installed but after I installed it to like 4 different places it still didn't work. Just found this out now by trying to show a video of it happening, I chose a download folder and it just started automatically downloading to the folder, I have no active downloads and it is still downloading.
https://user-images.githubusercontent.com/61641265/104309677-25bf7a80-5498-11eb-88f5-f44517c13a1e.mp4
I go and look up some random tags and then even before downloading it starts and is at like 200 before I start the 14 image download and when I'm done I have 300 files. (Edit, had to record again but showed the fact that it would start downloading before I even searched anything up. Already turned automatic download off and tried again but still had the same problem)

i have the same problem as well

i have the same problem as well

Sounds like monitors runnings, the log could be very usefull to help you.

Sounds like monitors runnings, the log could be very usefull to help you.

for me it doesnt happen very often so im okey

for me it doesnt happen very often so im okey

Can we have the logs ? Did you solve it by any ways ?

I have the same problem. It downloads random images regardless of what settings I change, only skips blacklisted ones. I tried it on both on the latest nightly and on release with the same result. I'm not sure what could cause it.
Here are my logs:
https://ghostbin.com/paste/LHmI4

@theXerun that's because you have set a monitor (by accident I assume) :
"[14:05:00.154][Info] Monitoring tick
[14:05:00.154][Info] Monitoring new images for '1girl' on 'Gelbooru'"
Go to the monitors tagbs, you should find an entry for 1girl, just right click then "remove" and you should be fine.

I've had this issue too but not as extreme. I can search for something and I'll find random images saved in my ing folder

I've had this issue too but not as extreme. I can search for something and I'll find random images saved in my ing folder

Have you tried to look if there was a monitor running ? If not, in the option there an atomatic download under option -> save, it's a checkbox. You can uncheck it too.

It did and I deleted it. Been watching to see if it happens again


[GSSoC 23'] Creating JSON file structure for Storing User Data & Modifying Register For that

Is your feature request related to a problem? Please describe.
Difficult in accessing user data such as usernames, dates of birth, email addresses, and biographical information stored in text files which is problematic.
Describe the solution you'd like
Utilizing the .json file structure simplifies the process of accessing user data, enabling its utilization in the user dashboard. Implementing this structure necessitates modifying the registration mechanism to accommodate the specified data format and store it in a .json file.
Describe alternatives you've considered
No response
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

hey @Pranjal360Agarwal please assign this issue to me!

hey @Pranjal360Agarwal Please assign this to me!!


Add docstrings to user-facing parts of merlin.io and make the rest protected

Closing this since we've ignored the io module in docstring coverage checks


jsredis works in tonicdev

If you try now in tonicdev.com/npm/jsredis you will find it requires correctly.

Ah nice, thanks for this, will update package.json


Create the notion of subTypes for card-types

E.g. content.full-bleed, content.quote, citation.work, citation.author.
Noted while working on #202.  But we can't have delimeter be - because working-notes uses the dash


standardize language

Inclusive language. Updates references to allowlist/denylist functionality

@maxlemieux Thanks for your improvements!


Bug: other_action.rb doesn't respect ".fastlane" folder

see this line https://github.com/fastlane/fastlane/blob/8370c81544a9b30239c9b686732fc23237d707d8/fastlane/lib/fastlane/other_action.rb#L24
also check this line if anyone want more detail
https://github.com/fastlane/fastlane/blob/8370c81544a9b30239c9b686732fc23237d707d8/fastlane/lib/fastlane/runner.rb#L199
update:
use latest commit for long term issue persistence

hey dear @fastlane-bot,
you can check current code.
It seems that it's not resolved.

And for anyone curious about how I solve the problem.
I wrote a custom action in our project that run at the very beginning of fastlane. That action saves the SRC_ROOT and fastlane folder absolute path. So all my other custom action can rely on them.
It would be nice that fastlane can record fastlane folder and source folder in fastlane context so that anyone can benefit from this.

It seems that problem has been fixed. I will close this issue.

Glad to hear, and sorry for not responding back earlier 👍


No longer maintained ?

Will like to know if this project is no longer maintained as pull requests to update tailwindcss version have been ignored for a while. Close to a year.

It would really be great to have an update with latest tailwind. <3

Upgraded to version 3 by macCesar


Email needs review link inserting plus additional text

The email sent when a review is submitted needs to be included in the emails.
Behaviour on accessing the review should be dictated by:

Reviews should always be visible to the paper user and any reviewer.
Reviews should never be visible to non-logged in users.
Reviews may be visible to other users if:

paper author has set reviews to public
review author has set reviews to public
paper has not been archived

![](images/logos/)
![reprohack-landscape-lowres](https://user-images.githubusercontent.com/5583057/134496154-fcd24e4c-c941-4859-a98c-1933617db168.png)

Dear {{user.name}},

#### Your paper has been reviewed! You can see the content of the review here: LINK HERE.

{% if review is associated with an event and the review is coming from that review %}
Thank you so much for sharing your paper ***{{ paper.title }}***  to be reproduced at **{{ event.title }}**.
{% endif %}

{% if event field associated with review not null %}
We had a productive time at {{ event.title }} participant feedback on your paper has just been submitted!
{% endif %}

As you know, reviewers are encouraged to fill in a “Review Form”, recording their experiences of attempting to reproduce authors' work. You are receiving this email because you agreed to be notified of any new reviews

We can wholeheartedly say that reviewers where very engaged with the process and greatly benefited from working with the submitted materials, regardless of how successful they were at reproducing the work. We hope you will also find the feedback useful, regardless of any difficulties reviewers may have had.

With warm regards,

The ReproHack Core Team {% if event.host in event associated with review field not null %} & event host(s) {{ event.host }} {% endif %}

**[reprohack.org](https:\\reprohack.org)**
---

@twinkarma would you be ok to so this? I can do most of it but not sure if there's anything extra because of the permissions or whether they are already being handled through the review view logic?


Allow passing parameters for pkcs11_eventmgr through the main pam_pkcs11 class

The pam_pkcs11 class supports enabling pkcs11_eventmgr through the manage_pkcs11_eventmgr parameter. However, it is not possible to parametrize pkcs11_eventmgr further except by instantiating it directly.
We could simply disallow directly instantiating pkcs11_eventmgr and instead add all the class parameters from pkcs11_eventmgr to the main pam_pkcs11 class and inherit it from there.

Hmm.. I assumed that those parameters a passed as hiera values... I thought that this is how it is done in pupper...

I agree that this would probably be the best way to use this module. For now, we simply instantiate the classes separately, which isn't a huge problem.
Closing this.


Allow multi-dimensional inputs to velocity_from_position

This PR adds the capability for velocity_from_position to accept inputs of arbitrary rank (but they still must be of the same shape). I added tests for 2-d and 3-d inputs.
Closes #69.

For this and future functions that are dimension-aware, could we make it more flexible for the user by passing arguments as needed time_axis = n_1, zonal_axis = n_2, meridional_axis=n_3, etc? I think that would be useful.


[Bug]: Use ppt file, raise File is not a zip file error

Is there an existing issue for the same bug?

[X] I have checked the existing issues.

Branch name
main
Commit ID
?
Other environment information
rag 0.5.0版本
docker compose运行

Actual behavior

Expected behavior
成功解析
Steps to reproduce
上传一个.ppt文件

Additional information
test ppt.zip

Maybe not support .ppt but .pptx?

Yes.

I've mentioned this at https://github.com/scanny/python-pptx/issues/818


Added license file

Hi!
This adds a LICENSE file to this project. We're trying to include the correct licenses for all our dependencies and having this would help people who use your project.
I used the MIT license you had stated you wanted to use in package.json

The license is already described in the package.json – I try not to clutter up my projects with redundant information.


AsyncKit.ConnectionPoolTimeoutError alerts

This is not an actionable issue and I'll close it straight away but I wanted to record the observation.
Occasionally, we see a spike of AsyncKit.ConnectionPoolTimeoutError errors reported via Rollbar:

These seem to be related to database activity:

I'm not sure but I doubt this is related to anything we are doing in particular – there's been no operational change during the night. My best guess is that it's some operational issue with the hosted PG instance that degrades service. Maybe it's a month end thing?
I'll have a look if there's enough history to see if the same happened on the morning of March 1.

Not really:


Heterogeneous Multiedge Inference for High Mobility Scenarios

What would you like to be added/modified:
Based on the current multiedge inference benchmark on ianvs, we would like to extend the multiedge inference on multiple heterogeneous edges (e.g., mobile phones, smart watches, laptops) for reducing the inference latency of a large DNN model on high mobility scenarios, where the connection between cloud and edge is unreliable. To achieve this goal, it includes:

bulid a benchmark for multiple edge inference in ianvs;
implement some basic algorithm for DNN partitioning on multiple ends;
(Optional) develop a baseline algorithm for this benchmark;

Why is this needed:
In recent years, artificial intelligence models represented by LLM have put forward extremely high requirements for computing power. However, in high mobility scenarios, the connection between edges and clouds is unstable, making it difficult to ensure the quality of service. This results in extremely poor user experience for applications such as large models in high mobility scenarios.
However, in fact, computing power on the edge is not weak either. At present, more and more mobile phones, tablets, laptops, etc. are equipped with AI chips, allowing them to run neural networks locally with a high latency. We therefore propose whether it is possible to utilize the computing power of multiple edge devices in one person's hands to reduce model inference latency and ensure service quality.
KubeEdge provides excellent collaborative foundational capabilities and provides examples of multilateral collaboration. Therefore, we plan to extend the multilateral collaboration to multiple heterogeneous edges based on this example.
Recommended Skills:
Python, KubeEdge-Ianvs
Useful link:
https://github.com/kubeedge/ianvs/tree/main/examples/MOT17/multiedge_inference_bench/pedestrian_tracking

Hi @yunzhe99 , according to your description and reference link, ianvs has currently implemented a simulation benchmark for multiedge inference, but it requires users to manually perform computational graph partitioning. This task is to implement multiedge inference between heterogeneous devices on this basis. The process involves addressing how to automatically partition the computational graph and schedule appropriate subgraphs or operators to suitable heterogeneous devices. This is a very interesting challenge, and I am willing to undertake it.

If anyone has questions regarding this issue, please feel free to leave a message here. We would also appreciate it if new members could introduce themselves to the community.


Fix CADDY_OPTS

Fixes #1063
Fixes #1061
Fixes #1051

Pull Request Test Coverage Report for Build 32c1e6ca8571ba997de3a665eb9b26b97d593164-PR-1065

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

Totals

Change from base Build d1f5ab34311388120c2057c036ce4c53a756a3ad:
0.0%

Covered Lines:
1148

Relevant Lines:
1740

💛  - Coveralls


Run repair process for the failed clusters more often than the normal sync

At the moment, the sync is called every resync_period and it simply goes to every clusters and check whether the actual state of the cluster matches the declared state in the manifest. That process is rather expensive, as it goes to all clusters and queries Kubernetes for cluster-related objects, therefore we try to bump up the resync_period to reduce the load on the API and free the workers to handle new clusters/changes to existing ones in a timely manner. However, a large resync_period also delays repair actions for the clusters that are known to be in a failed state (as some external actions, i.e. node failure, may have prevented the operator to create a healthy cluster initially.)
What we can do is to run sync on those clusters that we know are in the failed state more often by introducing a repair_period that will trigger sync only on the clusters that are in the failed state. This will cover both creation of Kubernetes objects and in-cluster databases and roles.  It will increase the availability of the clusters that fail due to some transient actions (i.e. Kubernetes decided to recreate the master pod at the time when we tried to update the cluster's manifest).

For the record, this arose from discussions around #213

That has been implemented and merged at https://github.com/zalando-incubator/postgres-operator/pull/304


Investigate /dut/ip endpoint

The GET endpoint, as written on the leviathan-worker, doesn't seem to work unless a body is sent to it, as documented here by the Leviathan client sending it one. I want to understand why is this working and if the solution is to convert the method for this endpoint to POST instead and maybe it was an error in the code.
The investigation is into why it has been working over the years.
cc: @rcooke-warwick if he knows. Also, @alexgg
Reported on
https://balena.zendesk.com/agent/tickets/3524
https://balena.zulipchat.com/#narrow/stream/345889-balena-io.2Fos/topic/.5BLeviathan.5D.20OS.20development.20using.20autokit

@vipulgupta2048

"why this is working" - it works because there is no violation happening here, GET requests are allowed to have a body. In this case a body is required, as the hostname/uuid of the DUT is required to find the matching IP. It doesn't work without a body intentionally, as the hsotname of the DUT isn't known
should this be a GET - probably not - while GET is allowed to have a body, it looks like it should be : https://www.rfc-editor.org/rfc/rfc2616#section-4.3 - this seems to say that bodies of GET requests should be ignored. So changing to a POST is probably for the best.

Overall I don't actually think there's an issue here, other than we've got a GET endpoint that is never used manually that parses the body when it probably shouldn't.

I agree with @rcooke-warwick it might be better passing the hostname as an argument (dut/ip?<hostname=nnnnn>) or to server more REST-like APIs GET dut/ip/<hostname> but I don't think it's something we need to address.

We've got a GET endpoint that is never used manually that parses the body when it probably shouldn't.

This GET endpoint is the easiest way to ascertain the IP address of the DUT and I use it manually a number of times. I am all ears, if there is an easier way to find the IP address of the DUT. We should probably have it show up in the logs along with the hostname and that would be an improvement.
The /dut/ip GET request without a body doesn't work. Our server parses the body, which should actually should be ignored. Creating confusion, and breaking semantics defined. I don't see how this is not an issue semantically and something we should fix.
The simplest solution would be for this request to POST on the client + server.

The simplest solution would be for this request to POST on the client + server. Will create a PR for that.

@vipulgupta2048 POST is not a solution - this is a request for an IP address, a GET conceptually and it just needs an argument which is totally OK for GETs.
If the problem you see is passing the argument in the body, which I think it's just inconvenient but curl can handle, the PR should be to pass the argument instead.

Yeah I would accept that as a compromise and with some comments which at the very least brings more clarity even though I still am not satisfied that we are not following the "no functional body" should be present in GET to be processed by the server.


Yaml2nxdl

Not sure this this is the right place for this comment.
I understood that if no name is given for a Nexus object, then either the name should be given as the class name in upper case, without the "NX", or simply be omitted. Right now, the name is just set to the class name:
            if kName != '':  # use the custom name for the group
                grp.set('name', kName)
            else:
                if kType != '':
                    grp.set('name', kType)

An example in the official nexus doc can e.g. be found in NXbeam:
https://manual.nexusformat.org/classes/base_classes/NXbeam.html#nxbeam
Here, DATA is an unnamed element. The corresponding nxdl file
https://github.com/nexusformat/definitions/blob/main/base_classes/NXbeam.nxdl.xml
does not specify a "name" tag for this field.

This part also seems to be obsolete, no?
            else:
                if keyword == 'type':
                    print(keyword + ' facing a type where we would not expect it!')

The types are given now by the bracket format. This generates an error, if you want to generate a field called "type" (which we do in one of our definition).

please fix the compliance with PEP8
please add an (empty) init.py file to each directory needed to be installed by pip

I see pycodestye goes through - great! Please correct the code according to pylint suggestions, as well.
Note that in vscode, you can use F2 to rename symbols, so you do not have to manually search for all their appearance and do the name modification everywhere.
On the other hand, be careful and run the test-cases regularly inside vscode.

@aalbino2 could you please try to fix the pylint issues in

[ ] nexusparser/parser.py,
[ ] nexusparser/tools/nexus.py,
[ ] nexusparser/tools/yaml2nxdl/nxdl2yaml.py,
[ ] nexusparser/tools/yaml2nxdl/yaml2nxdl_recursive_build.py,
[ ] nexusparser/metainfo/init.py
[ ] nexusparser/metainfo/nexus.py
[ ] tests/test_nexus.py
[ ] tests/test_parser.py
The following files can actually be removed because we do not use the templates anymore:
[ ] nexusparser/metainfo/test_nexus.py
[ ] nexusparser/metainfo/generate_nexus.py
[ ] nexusparser/metainfo/generate.py
[ ] nexusparser/metainfo/templates

LGTM


Move stash explorer to Source Control pane

Since it's now possible to put explorers in panes other than the Explorer pane (or even add new panes) I'd like to see the Git Stash explorer on the Source Control pane, which seems to be a more logical place for it.

I just created a branch yesterday with that (tree in the SCM view container) and some other small changes as part of the new version that's coming out soon.

Awesome! Can't wait to see it.


[Wave Collect] New Resources to Publish: Invoicing

Publish Date - May 1st
Related External Resource GH: https://github.com/Expensify/Expensify/issues/383907
Draft of HelpSite article - https://docs.google.com/document/d/1s2X1h-1QkLDtXPcIHr6MOH1nKN4ZJTr9jeqcgeG7-r0/edit

Following this SO - https://stackoverflowteams.com/c/expensify/questions/17951
Posted for Ren in expensifyhelp - https://expensify.slack.com/archives/C02QSAC6BJ8/p1713245636574859

ooo sick - I'll be back on Monday (APAC) to check on this

working through the draft - https://docs.google.com/document/d/1s2X1h-1QkLDtXPcIHr6MOH1nKN4ZJTr9jeqcgeG7-r0/edit

Hi Ren! Thank you!! Sorry I'm not quite sure what to do next, can you guide me?

Article is complete and has been pushed

Amazing! thank you so much Ren! 🎉

It looks like the article is live - https://help.expensify.com/articles/new-expensify/expenses/Send-an-invoice
Thank you Ren! I think this can be closed but let me know if it needs to remain open.


Semantic Snapshot

This is an immutable tree of the same structure as the AST, but with type information that can power Quick Info (doc tips), Completion, Symbol Search, etc.
Before making more progress on the parse tree, I’d like to get the basic architecture into place.
WIP is here: https://github.com/gundermanc/vs-go/tree/topic/semanticSnapshot.
The plan is:

Convert existing code that walks the AST over to the visitor pattern.
There should be common base classes for visitors that do common operations such as depth-first traversal, binary search, etc.
Implement extension methods or services in Go.CodeAnalysis that implements abstract IDE features, like GetFunctions(), GetCollapsibles(), GetQuickInfo(), etc. as operations on the AST and/or Semantic snapshot.
Update the WorkspaceDocument to compute the semantic snapshot as part of the reparse and expose it as a property.
Update existing editor features to all get the current snapshot and do their operations upon it using the features from step 3.

@Agunderman10 @benhxy FYI.


reproducer.. wt=phps incompatibility with /admin/luke still in doubts. ..

Expected :a:1:{s:3:"map";a:1:{s:10:"lucene doc";a:3:{s:2:"id";s:1:"2";s:4:"cost";s:1:"5";s:4:"name";a:1:{s:7:"foo bar";}}}}
Actual   :a:1:{s:3:"map";a:1:{s:10:"lucene doc";i:0;a:3:{s:2:"id";s:1:"2";s:4:"cost";s:1:"5";s:4:"name";a:1:{i:0;s:7:"foo bar";}}}}

A side: I recall some doubt as to whether Solr ought to even have a "php" writer in the first place.  Maybe it should be deprecated.  Surely JSON is the standard?  WDYT
CC @epugh

As someone on the PHP side of things, there's a good reason to look into PHPS with the /luke handler in particular.
curl 'http://localhost:8983/solr/techproducts/admin/luke?id=VDBDB1A16&json.nl=flat'

Snippet of the output:
      "cat":{
        "type":"string",
        "schema":"I-S-UM----OF-----l",
        "flags":"ITS-------OF------",
        "value":"electronics",
        "internal":"electronics",
        "docFreq":15},
      "cat":{
        "type":"string",
        "schema":"I-S-UM----OF-----l",
        "flags":"ITS-------OF------",
        "value":"memory",
        "internal":"memory",
        "docFreq":3},

The output for a SimpleOrderedMap can contain duplicate keys and this can't be controlled with json.nl. Which means PHP's json_decode() loses data. PHPS solves this by mangling the keys to cat, cat 1, cat 2 …
This is a (admittedly very rare) case where dealing with JSON output in PHP is cumbersome.

A side: I recall some doubt as to whether Solr ought to even have a "php" writer in the first place. Maybe it should be deprecated. Surely JSON is the standard? WDYT CC @epugh

I think it's a valid question..   That applies to all the language specific writer types...   Especially if we start supporting code generated API libraries that some of these wrappers for Solr could think about adopting?  @thomascorthals, maybe a conversation for mailing list, but I'd love you thoughts on if we generated a PHP library, would that make your life easier?

So...  I think we are faced here with a different issue than how PHP is handling the output....   When I run the curl command that was shared, I also see the cat key come back mulitple times...  And that is a problem with the JSON output..  indeed, running
curl 'http://localhost:8983/solr/techproducts/admin/luke?id=VDBDB1A16&json.nl=flat'  | jq .

and we drop the extra cat clauses from the original.   It seems like we actually have a bug???

Okay, so I see that cat is duplicated because it's a multivalued field, so we get:
      "cat":{
        "type":"string",
        "schema":"I-S-UM----OF-----l",
        "flags":"ITS-------OF------",
        "value":"electronics",
        "internal":"electronics",
        "docFreq":12
      },
      "cat":{
        "type":"string",
        "schema":"I-S-UM----OF-----l",
        "flags":"ITS-------OF------",
        "value":"memory",
        "internal":"memory",
        "docFreq":3
      },

Shouldn't this instead be instead an array of values for the cat key?   I know this changes things...:
"cat":[{
"type":"string",
"schema":"I-S-UM----OF-----l",
"flags":"ITS-------OF------",
"value":"electronics",
"internal":"electronics",
"docFreq":12
},
{
"type":"string",
"schema":"I-S-UM----OF-----l",
"flags":"ITS-------OF------",
"value":"memory",
"internal":"memory",
"docFreq":3
}],

I hardly get common hesitation over duplicated JSON keys. Why it is a problem? Github come up with 480 json PHP parsers. Isn't there a library, which don't feel so unique about keys?

Remember json.nl parameter options, which exist to balance convenience of the response with rigor over retrieving duplicated keys.  But that only applies to JSON.   https://solr.apache.org/guide/solr/latest/query-guide/response-writers.html#json-nl

I guess my point is that the actual API response, in JSON, is outputting invalid JSON.  That the fix is to change the way we handle multivalued fields to nest them as an array under the top level key....

I guess my point is that the actual API response, in JSON, is outputting invalid JSON. That the fix is to change the way we handle multivalued fields to nest them as an array under the top level key....

It's invalid but the user is in control of supplying a different value to json.nl which avoids the invalidity.  Use json.nl=arrmap for example.  No change in Solr is necessary.
But this work item is about php.

@thomascorthals, maybe a conversation for mailing list, but I'd love you thoughts on if we generated a PHP library, would that make your life easier?

I had the same thought when I saw the generated Python client. Solarium aims at accurately modelling Solr by providing a fluent interface to build queries and parsing the results to PHP objects. The implementation for API requests is currently generic and just gets you the output from Solr as an array.

Isn't there a library, which don't feel so unique about keys?

There is, and I'm already using it to parse that particular piece of JSON. There are two things at play for me:

Solarium supports JSON and PHPS output since before I was using it. I'm trying not to break that. (If Solr deprecates PHPS, that's a different story of course.)
I was curious how parsing it would compare performance wise.

Remember json.nl parameter options

That is for NamedLists, the "offending" data structure is a SimpleOrderedMap and those aren't affected by json.nl.

the actual API response, in JSON, is outputting invalid JSON.

Technically, it isn't. ECMA-404 doesn't say anything about it. RFC 8259 says names SHOULD be unique, not MUST. But you can see how this becomes a nuisance when decoding to a language that has no internal data structure that allows duplicate keys.

Sorry; I wasn't paying enough attention.  We shouldn't be using a SimpleOrderedMap in any scenario where keys can be duplicated.


core: use six.reraise for py2/py3 compatibility

Signed-off-by: Kyr Shatskyy<EMAIL_ADDRESS>

@susebot run deploy


missing org.jetbrains.kotlin.core....jar\bin'

We've run successfully:

git clone https://github.com/gradle/gradle.git
./gradlew installAll -Pgradle_installPath=/usr/local/gradle-source-build > ConradLog.txt 2> ConradErrors.txt
Which has created all our jar files beautifully.

However this fails:

gradle run

Error messages:

Project 'build.gradle.kts' is missing required library: 'C:\Users\conra.p2\pool\plugins\org.jetbrains.kotlin.core_0.8.19.v20191112-1134.jar\bin'
additional error messages in this attachment:
ConradRunErrors-20200103.txt

Related:

https://github.com/Kotlin/kotlin-frontend-plugin/issues/25
https://github.com/Kotlin/kotlin-frontend-plugin/issues/143

Please advise.   (We're having challenges with some of our gradle builds and need to step thru them with a debugger and need HELP !!!!)
Conrad J Krinock  --<PHONE_NUMBER>
Cyber Security Architect
Wells Fargo Bank - Vendor Financial Services
Southfield, MI, USA

RESOLVED - by upgrading to gradle version 6+


Async Completion samples

This sample demonstrates usage of IAsyncCompletionItemManager, IAsyncCompletionItemManagerProvider, IAsyncCompletionSource and IAsyncCompletionSourceProvider, specifically, providing a completion with chemical elements in the text content type.
Some of the interesting features:

Completion items come from MEF-imported list of elements
After typing a colon, completion offers values dependent on text before the colon, including the suggestion mode (aka builder)
DefaultCompletionItemManager is the same implementation as we use in the editor
Some items have multiple filters

Elements are categorized as metals, non metals, uncategorized or metalloids, which means they are both metals and non-metals. I used this to demonstrate items with two filters: you’ll see that there is no metalloid filter, but these items (e.g. Boron, Silicon) will react to both Metals and Non Metals filters

Thanks!!! The build failed due to NuGet package version references that couldn't be resolved. Please downgrade your NuGet references to ones that are publicly available. Also, use the lowest version of the packages that has the APIs you use (so probably 15.6.x).

@AmadeusW the nuget versions are still wrong

What's the C# version on the build machine? Can this be updated?
Neither <LangVersion>latest</LangVersion> nor <LangVersion>7.1</LangVersion> seems to work - there are many errors related to 7.1 language features

Got a green build thanks to @dgriffen's keen eye!
I'm going to add a readme that explains which parts are relevant:

IAsyncCompletionItemManager is optional, and we're providing the Editor's manager as an example
A lot of code in the IAsyncCompletionSource is related to parsing the code, and not purely providing completion

@AmadeusW I wonder if the new API should go in a separate sample since there may be users that want to use the API in 2017 and they won't be able to figure out how if the sample only shows the 2019 API

It is its own sample, a lives in the AsyncCompletion folder.

@madskristensen a good build, at last! ✔


move javax.annotation.* to jakarta.annotation.*

Is your feature request related to RFC7807? Please describe.
The current version of this project is using:
<dependency>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>jsr305</artifactId>
            <version>${jsr305.version}</version>
        </dependency>

Unfortunately this is providing javax.annotation package.
The quarkus 3.15.1 is using jakarta.annotation from:
 <dependency>
            <groupId>jakarta.annotation</groupId>
            <artifactId>jakarta.annotation-api</artifactId>
        </dependency>

Describe the solution you'd like
Use the same package being used by Quarkus

@cvgaviao thanks for reporting this, well spotted! I've just merged this change into main, it will be included in the next release


V2 Picker Failing when working with Cordova

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Framework7 Version: V2 Beta 17.

Platform and Target: Cordova

What you did
When running in Atom or browsers etc. the picker works absolutley fine however once I moved the code into Cordova (Visual Studio) and run the app the picker will not display
It is so strange that outside of this it does not have an error so wondering if the Cordova process is causing a failure in the script??
###The Error is:
framework7.js:17654 Uncaught TypeError: Cannot read property 'router' of undefined
    at Picker.open (framework7.js:17654)
    at HTMLInputElement.onInputClick (framework7.js:17280)
    at HTMLInputElement.handleEvent (framework7.js:966)

I am defining the picker as a global after the framework dec
// Init App
var priceApp = new Framework7({
  root: '#app',
  theme: theme,
  routes: routes,
  data: function() {
    // Return root data object
    return {
      results: {
        promo: '',
        retail: '',
        save: '',
        imageLink: '',
      },
    };
  },
});

// Brand Device picker
priceApp.pickerBrand = priceApp.picker.create({
  inputEl: '#brand-picker',
  renderToolbar: function () {
  return '
' +
    '
' +
      '
' +
      '
' +
      '
' +
        'Select Brand' +
      '
' +
    '
' +
  '
';
},
  cols: [{
    textAlign: 'center',
    values: ['Brand1', 'Brand2', 'Brand3', 'Brand4', 'Brand5']
  }]
});

The HTML picker is defined as

Brand

                                            <input class="whitetext" type="text" placeholder="Select a Brand" readonly="readonly" id="brand-picker" />

Select a Brand

and my scripts are set as

Just thought I would run without the cordova.js file and it works so definitely something to do with working with Cordova. let me know if I can provide or do anything to assist with this.

Try the latest beta 19 it must be fixed there

Will give that a red hot go, just to check from reading the release we now place the all the folders from dist in the project i.e. components etc. and have the framework7.esm.js etc in the root of the project?

If you use esm file then you just import it from node modules. Otherwise you just need js and css folders

@nolimits4web, Ok still had the issue however I after an after thought I set the framework7 to be loaded before the cordova.js it now works, not sure why but its a work around 👍

I'll close this issue since it may have nothing to do with V2 and if you have the time to look further or need anymore information let me know
Ta
Mitch

@nolimits4web ok have run into a hurdle now, building out it iOS with cordova and frameworkv2  works but the app fails to read any code after the device ready process, set my project back to V1.6.5 and adjusted the code of framework7 v2 back to v1 requirements and all works. not sure what the GO is but I am thinking that a class or something relating to the picker is interfering with with it.


Move to Github Actions

@neiljhowell See the jira ticket comment on the test state, we will need to look at that in the future.


PHOENIX-6052 Include syscat time in mutation time

The build in progress: https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/view/change-requests/job/PR-1557/2/


Clear Undefined Behavior sanitizer findings (GH #8426)

Clear Undefined Behavior sanitizer findings

On Wed, Apr 24, 2019 at 1:16 PM Kurt Roeckx<EMAIL_ADDRESS>wrote:

@kroeckx commented on this pull request.
In ssl/t1_lib.c
https://github.com/openssl/openssl/pull/8819#discussion_r278231600:

@@ -133,7 +133,8 @@ int ssl_check_serverhello_tlsext(SSL *s);
#endif

#define CHECKLEN(curr, val, limit) \

(((curr) >= (limit)) || (size_t)((limit) - (curr)) < (size_t)(val))

(((size_t)(curr) >= (size_t)(limit)) || \

((size_t)(limit) - (size_t)(curr)) < (size_t)(val))

Casting pointers to a size_t is wrong, but happens to work on most
platforms. If you need to cast it, it needs to be an uintptr_t. But I
currently don't see what is wrong with the old macro.

Yeah, I was not sure how OpenSSL handled uintptr_t in C89.
size_t will be safe except for segmented memory, like i286/i386. If you are
still supporting DOS then it should probably change.
Here is the finding on Aarch64 Tinkerboard (
https://www.asus.com/us/Single-Board-Computer/Tinker-Board/). Debian 9.8
Stretch, GCC 6.3.
test sslv2/sslv3 with server authentication
server authentication
t1_lib.c:1372:13: runtime error: signed integer overflow: -2147468736 -
2147482398 cannot be represented in type 'int [28]'
t1_lib.c:1400:13: runtime error: signed integer overflow: -2147468736 -
2147482406 cannot be represented in type 'int [28]'
t1_lib.c:1455:13: runtime error: signed integer overflow: -2147468736 -
2147482438 cannot be represented in type 'int [28]'
t1_lib.c:1543:9: runtime error: signed integer overflow: -2147468736 -
2147482474 cannot be represented in type 'int [28]'
The source code lines refer to CHECKLEN.
Jeff

So you do (char *)0x80003a40 - (char *)0x7ffffb1e = 0x3f22. As long as those are valid pointers pointing to the same object (or 1 past it), this is be defined behaviour. Subtracting 2 pointers gives you a ptrdiff_t, which is a signed type, but as long as the size is smaller than 2^31 there is no undefined behaviour. I think this is a compiler bug.
I assume that you're running the 32 bit armhf (or armel) port, and not the arm64 port. But I wonder why we can have valid pointers > 0x80000000 there. Or is this a 64 bit kernel and 32 bit userland?

On Wed, Apr 24, 2019 at 5:16 PM Kurt Roeckx<EMAIL_ADDRESS>wrote:

So you do (char *)0x80003a40 - (char *)0x7ffffb1e = 0x3f22. As long as those are valid pointers pointing to the same object (or 1 past it), this is be defined behaviour. Subtracting 2 pointers gives you a ptrdiff_t, which is a signed type, but as long as the size is smaller than 2^31 there is no undefined behaviour. I think this is a compiler bug.
I assume that you're running the 32 bit armhf (or armel) port, and not the arm64 port. But I wonder why we can have valid pointers > 0x80000000 there. Or is this a 64 bit kernel and 32 bit userland?

Oh, you're right, my bad. It is armv7l, not Aarch64. (I've been
testing on 6 machines concurrently, and I crossed my wires).
Jeff

Hi @noloader,
this pull request was marked as 'resolved: wont fix', because OpenSSL 1.0.2 has reached end-of-life. Please let us know whether this change might be still relevant for the next OpenSSL 3.0 release (and OpenSSL 1.1.1 LTS if it's a bugfix) and consider raising a new new pull request against the master branch if you think that's the case.