[CPU] Stack allocation limit exceeded when compiling T5-Large with microkernels enabled

What happened?
Error when compiling some models with --iree-flow-enable-data-tiling --iree-llvmcpu-enable-microkernels:
2023-07-17T00:21:19.4435099Z [149/288] Generating /work/build-e2e-test-artifacts/e2e_test_artifacts/iree_module_T5_LARGE_FP32_JAX_512XI32_BATCH1_stablehlo___x86_64-cascadelake-linux_gnu-llvm_cpu__experimental-flags_microkernels_/module.vmfb from T5_LARGE_FP32_JAX_512XI32_BATCH1(stablehlo) [x86_64-cascadelake-linux_gnu-llvm_cpu][experimental-flags,microkernels]
2023-07-17T00:21:19.4438993Z FAILED: e2e_test_artifacts/iree_module_T5_LARGE_FP32_JAX_512XI32_BATCH1_stablehlo___x86_64-cascadelake-linux_gnu-llvm_cpu__experimental-flags_microkernels_/module.vmfb /work/build-e2e-test-artifacts/e2e_test_artifacts/iree_module_T5_LARGE_FP32_JAX_512XI32_BATCH1_stablehlo___x86_64-cascadelake-linux_gnu-llvm_cpu__experimental-flags_microkernels_/module.vmfb
2023-07-17T00:21:19.4443763Z cd /work/build-e2e-test-artifacts/tests/e2e/test_artifacts && /work/full-build-dir/install/bin/iree-compile --output-format=vm-bytecode --mlir-print-op-on-diagnostic=false --iree-hal-target-backends=llvm-cpu --iree-input-type=stablehlo --iree-llvmcpu-target-triple=x86_64-unknown-linux-gnu --iree-llvmcpu-target-cpu=cascadelake --iree-flow-enable-data-tiling --iree-llvmcpu-enable-microkernels /work/build-e2e-test-artifacts/e2e_test_artifacts/model_T5_LARGE_FP32_JAX_512XI32_BATCH1.mlirbc -o /work/build-e2e-test-artifacts/e2e_test_artifacts/iree_module_T5_LARGE_FP32_JAX_512XI32_BATCH1_stablehlo___x86_64-cascadelake-linux_gnu-llvm_cpu__experimental-flags_microkernels_/module.vmfb --iree-hal-executable-object-search-path=\"/work/build-e2e-test-artifacts\"
2023-07-17T00:21:19.4447899Z /tmp/jax_models_0.4.13_1688607404/T5_LARGE_FP32_JAX_512XI32_BATCH1/stablehlo.mlir:641:12: error: 'func.func' op exceeded stack allocation limit of 32768 bytes for function. Got 65536 bytes
2023-07-17T00:21:19.4448879Z /tmp/jax_models_0.4.13_1688607404/T5_LARGE_FP32_JAX_512XI32_BATCH1/stablehlo.mlir:2:3: note: called from
2023-07-17T00:21:19.4455188Z /tmp/jax_models_0.4.13_1688607404/T5_LARGE_FP32_JAX_512XI32_BATCH1/stablehlo.mlir:641:12: error: failed to run translation of source executable to target executable for backend #hal.executable.target<"llvm-cpu", "embedded-elf-x86_64", {cpu = "cascadelake", cpu_features = "+cmov,+mmx,+popcnt,+sse,+sse2,+sse3,+ssse3,+sse4.1,+sse4.2,+avx,+avx2,+fma,+avx512f,+bmi,+bmi2,+aes,+pclmul,+avx512vl,+avx512bw,+avx512dq,+avx512cd,+avx512vnni,+adx,+clflushopt,+clwb,+cx16,+cx8,+crc32,+f16c,+fsgsbase,+fxsr,+invpcid,+lzcnt,+movbe,+pku,+prfchw,+rdrnd,+rdseed,+sahf,+x87,+xsave,+xsavec,+xsaveopt,+xsaves", data_layout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", native_vector_size = 64 : index, target_triple = "x86_64-unknown-unknown-eabi-elf", ukernels = true}>
2023-07-17T00:21:19.4460195Z /tmp/jax_models_0.4.13_1688607404/T5_LARGE_FP32_JAX_512XI32_BATCH1/stablehlo.mlir:2:3: note: called from
2023-07-17T00:21:19.4461047Z /tmp/jax_models_0.4.13_1688607404/T5_LARGE_FP32_JAX_512XI32_BATCH1/stablehlo.mlir:641:12: error: failed to serialize executables
2023-07-17T00:21:19.4461936Z /tmp/jax_models_0.4.13_1688607404/T5_LARGE_FP32_JAX_512XI32_BATCH1/stablehlo.mlir:2:3: note: called fro

Steps to reproduce your issue
Download https://storage.googleapis.com/iree-model-artifacts/jax/jax_models_0.4.13_1688607404/T5_LARGE_FP32_JAX_512XI32_BATCH1/stablehlo.mlirbc
Run:
iree-compile --output-format=vm-bytecode \
    --mlir-print-op-on-diagnostic=false \
    --iree-hal-target-backends=llvm-cpu \
    --iree-input-type=stablehlo \
    --iree-llvmcpu-target-triple=x86_64-unknown-linux-gnu \
    --iree-llvmcpu-target-cpu=cascadelake \
    --iree-flow-enable-data-tiling \
    --iree-llvmcpu-enable-microkernels \
    stablehlo.mlirbc -o module.vmfb

What component(s) does this issue relate to?
Compiler
Version information
ffb5747c9c2f511a96693ee10eb4fcbaafb4d110
Additional context
No response

Cc @bjacob and @hanhanW
@mariecwhite we saw similar issues recently and Hanhan and Benoit fixed this. Are you on ToT?

Looks like I didn't have https://github.com/openxla/iree/commit/09685ee644d2d5676f9566e3275bca566efe547d. Re-running now.

Getting the same error after rebasing to ToT. Occurs on T5-Large for both TF and JAX.

Minimized testcase:
func.func public @main(%arg0 : tensor<1x512x1024xf32>) -> tensor<1x512x1024xf32> {
  %93 = stablehlo.constant dense<0.0> : tensor<1024x1024xf32>
  %1343 = stablehlo.constant dense<0.000000e+00> : tensor<f32>
  %1344 = stablehlo.reduce(%arg0 init: %1343) applies stablehlo.add across dimensions = [2] : (tensor<1x512x1024xf32>, tensor<f32>) -> tensor<1x512xf32>
  %1345 = stablehlo.broadcast_in_dim %1344, dims = [0, 1] : (tensor<1x512xf32>) -> tensor<1x512x1024xf32>
  %1360 = stablehlo.dot_general %1345, %93, contracting_dims = [2] x [0], precision = [DEFAULT, DEFAULT] : (tensor<1x512x1024xf32>, tensor<1024x1024xf32>) -> tensor<1x512x1024xf32>
  return %1360 : tensor<1x512x1024xf32>
}

Reproduction command line is still as in the original repro above:
iree-compile --output-format=vm-bytecode \
    --mlir-print-op-on-diagnostic=false \
    --iree-hal-target-backends=llvm-cpu \
    --iree-input-type=stablehlo \
    --iree-llvmcpu-target-triple=x86_64-unknown-linux-gnu \
    --iree-llvmcpu-target-cpu=cascadelake \
    --iree-flow-enable-data-tiling \
    --iree-llvmcpu-enable-microkernels \
    /tmp/a.mlir -o /tmp/a.vmfb

@mariecwhite to unblock for these benchmarks you can try adding --iree-llvmcpu-fail-on-out-of-bounds-stack-allocation=false  and make sure it passes. We can fix the issue asynchronously. The stack limit is a fail-safe that we add to avoid some portability issues. I have this on my list of things

I plan to switch all experimental-flags benchmarks to data tiling + microkernels after landing my multi-lowering work. At that point, we have to add --iree-llvmcpu-fail-on-out-of-bounds-stack-allocation=false flag; I will work on other fixes to remove the flag afterwards. So feel free to add the flag, and pass the issue to me.

Further minimized testcase, down to one dispatch, which has some producer linalg.generic folded into the packing into the matmul LHS. Still same repro command line and same error as above.
This needs to have https://github.com/openxla/iree/pull/14421 applied though, otherwise this was running into a separate issue.
func.func @dispatch(%5 : tensor<512x1024xf32>, %10 : index, %8 : index)
    -> tensor<?x?xf32, #iree_linalg_ext.encoding<user = MATMUL_F32F32F32, role = LHS, original_type = tensor<512x1024xf32>>> {
  %cst = arith.constant 0.000000e+00 : f32
  %6 = tensor.empty() : tensor<512x1024xf32>
  %7 = tensor.empty() : tensor<512xf32>
  %9 = linalg.fill ins(%cst : f32) outs(%7 : tensor<512xf32>) -> tensor<512xf32>
  %11 = linalg.generic {indexing_maps = [affine_map<(d0, d1) -> (d0, d1)>, affine_map<(d0, d1) -> (d0)>], iterator_types = ["parallel", "reduction"]}
    ins(%5 : tensor<512x1024xf32>) outs(%9 : tensor<512xf32>) {
  ^bb0(%in: f32, %out: f32):
    %14 = arith.addf %out, %in : f32
    linalg.yield %14 : f32
  } -> tensor<512xf32>
  %12 = linalg.generic {indexing_maps = [affine_map<(d0, d1) -> (d0)>, affine_map<(d0, d1) -> (d0, d1)>], iterator_types = ["parallel", "parallel"]}
    ins(%11 : tensor<512xf32>) outs(%6 : tensor<512x1024xf32>) {
  ^bb0(%in: f32, %out: f32):
    linalg.yield %in : f32
  } -> tensor<512x1024xf32>
  %padded = tensor.pad %12 low[0, 0] high[%10, %8] {
  ^bb0(%arg6: index, %arg7: index):
    tensor.yield %cst : f32
  } : tensor<512x1024xf32> to tensor<?x?xf32>
  %13 = iree_linalg_ext.set_encoding %padded : tensor<?x?xf32> -> tensor<?x?xf32, #iree_linalg_ext.encoding<user = MATMUL_F32F32F32, role = LHS, original_type = tensor<512x1024xf32>>>
  return %13 : tensor<?x?xf32, #iree_linalg_ext.encoding<user = MATMUL_F32F32F32, role = LHS, original_type = tensor<512x1024xf32>>>
}

Tentative fix: https://github.com/openxla/iree/pull/14427

This has been fixed by @hanhanW 's #14068. Thanks!

This has been fixed by @hanhanW 's #14068. Thanks!

cool, thanks for verifying!


Can't install the plugin under Craft 4

Craft CMS version : <IP_ADDRESS>
As per the doc, I tried to install the plugin using:
composer require studioespresso/craft-mailersend
composer require studioespresso/craft-mailersend
./composer.json has been updated
Running composer update studioespresso/craft-mailersend
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - studioespresso/craft-mailersend[1.0.0, ..., 1.0.1] require symfony/mailer-send-mailer ^v6.0.0 -> satisfiable by symfony/mailer-send-mailer[v6.3.0, ..., v6.4.3].
    - studioespresso/craft-mailersend 5.0.0 requires craftcms/cms ^5.0.0-alpha -> found craftcms/cms[5.0.0, 5.0.1, 5.0.2] but it conflicts with your root composer.json require (<IP_ADDRESS>).
    - symfony/mailer-send-mailer[v6.3.0, ..., v6.4.3] require php >=8.1 -> your php version (8.0.2; overridden via config.platform, actual: 8.2.11) does not satisfy that requirement.
    - Root composer.json requires studioespresso/craft-mailersend * -> satisfiable by studioespresso/craft-mailersend[1.0.0, 1.0.1, 5.0.0].

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.
You can also try re-running composer require with an explicit version constraint, e.g. "composer require studioespresso/craft-mailersend:*" to figure out if any version is installable, or "composer require studioespresso/craft-mailersend:^2.1" if you know which you need.

Installation failed, reverting ./composer.json and ./composer.lock to their original content.

It failed to install it, probably because the project has now been migrated for Craft 5. How to install it for Craft 4 ?
Will you still maintain the Craft 4 version ? If so, for how long? Thanks!

Could you try with the -W parameter? so composer require studioespresso/craft-mailersend -W. That Craft 4 version (1.0.1) should still work for Craft 4 and will be maintained along side with Craft 4.


Build the base elements to GUI applications

Motivation
All gui implementation can be broken down to 4 layouts

Header = a display of the status the GUI and the current errors

Anatomical Views = Views and controls the user manipulates to collect information.

Each anatomical view has a set of controllers to manipulate the view. (move, zoom, contrast, luminosity, ...)

Control buttons = Buttons that manipulate the state of the GUI

Footer = A miscellaneous set of controls and views for visualizing the current state.

Action
Create a base classes that implement the common functionally.

Started to work on specific branch viewerQt .

 Build the base elements to GUI applications


Dashrews/rox-8655 slow process baseline pivot

Description
Initial cut at changes to only create the process baseline AFTER the observation period is over.  As mentioned in this write-up:
https://docs.engineering.redhat.com/pages/viewpage.action?spaceKey=StackRox&title=Re-thinking+the+baseline+(network+and+process)+implementation
Approach was to keep track of what deployments are being "observed" and set a time for when that observation period is over.  once that observation period is over the baseline is cut and locked.  All subsequent indicators for that deployment go through the existing process to check for risks.
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on stackrox/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why
you did not do so. Valid reasons include, for example, "CI is sufficient",
"No testable changes". Feel free to attach JSON snippets, curl commands,
screenshots.
In addition to reviewing your code, reviewers must also review your testing
instructions and make sure they are sufficient.

@connorgorman I want to clarify something.  If a user requests a lock of a baseline then that baseline is in fact locked.  Meaning that even if it is within the observation period that we would want to check the processes against the user locked baseline. Is that correct?  What about a user baseline that is created, but not locked?
When the observation period ends, do we need to add the ROX lock or just leave that off as the user lock would have mostly overridden the ROX locking?


packets delayed by one

There's some odd behaviour - the pcap_seesion.on('packet', ...) seems to work as a FIFO with a capacity of one.  i.e. the nth event is emitted when the n+1th packet is captured.
Is there a way to remove this one packet "buffer" and have 'packet' events emitted immediately?

I can't reproduce this. Can you make a simple example program where this happens?
On my Mac, I just did:
sudo examples/simple_capture en0 icmp

And then in another window, I did:
ping -c 1 <IP_ADDRESS>

And I saw both the ICMP echo and ICMP reply come back.


Better error message if we mix up comparisons and comparison levels

It's pretty easy, especially for new users, to mix up comparisons and comparison levels (and accidentally with autocompletion). At the moment the error messages returned are not particularly clear on what causes the issue:
import pandas as pd

from splink.duckdb.duckdb_linker import DuckDBLinker
import splink.duckdb.duckdb_comparison_library as cl
import splink.duckdb.duckdb_comparison_level_library as cll

df = pd.DataFrame(
    [
        {"id": 1, "forename": "One", "surname": "Andahalf"},
        {"id": 2, "forename": "Two", "surname": "Lessahalf"},
    ]
)

settings_oopsy_1 = {
    "link_type": "dedupe_only",
    "comparisons": [
        cl.exact_match("forename"),
        {
            'output_column_name': 'surname',
            'comparison_description': 'Surname exact match vs else',
            'comparison_levels': [
                cll.null_level("surname"),
                # comparison instead of a comparison level:
                cl.exact_match("surname"),
                cll.else_level()
            ],
        },
    ],
}
settings_oopsy_2 = {
    "link_type": "dedupe_only",
    "comparisons": [
        # comparison level instead of a comparison:
        cl.exact_match("forename"),
        cll.levenshtein_level("surname", 1),
    ],
}

Then:
linker = DuckDBLinker(
    df,
    settings_oopsy_1
)

will give you an error TypeError: Object of type Comparison is not JSON serializable, and
linker = DuckDBLinker(
    df,
    settings_oopsy_2
)

will tell you TypeError: 'levenshtein_level' object is not subscriptable, both of which are a bit cryptic.
Might be nice if we can catch these and give a clear error message to the user.

Not sure if this may already end up being covered by @ThomasHepworth's forthcoming work on settings validation

(also @RossKen feel free to edit/change 'user experience' label - couldn't find an existing tag that captured the sort of thing, and 'error messages' felt a little bit niche)

@ADBond are you happy closing this now that imports for cls and clls have been adjusted?

Will be covered by open validator PRs


setOptimistic bug

I have the following code, but whenever I try to click any of the render buttons, I get a brief flash of the other button.
Do you have any suggestions as to why this might be happening? The React useOptimistic seems to be functioning as expected.
'use client'
import { favAction } from '@/app/item/[id]/action'
import { Button } from '@/components/ui/button'
import { RxHeart, RxHeartFilled } from 'react-icons/rx'
import { useServerAction } from 'zsa-react'

const FavButtonItem = ({ fav, itemId }: { fav: string; itemId: string }) => {
  const { setOptimistic, data, execute } = useServerAction(favAction, {
    initialData: { itemId: itemId, favId: fav },
  })
  const deleteFav = async () => {
    setOptimistic({ itemId: itemId, favId: '' })
    await execute({ itemId: itemId, favId: fav })
  }

  const addFav = async () => {
    setOptimistic({ itemId: itemId, favId: crypto.randomUUID().toString() })
    await execute({ itemId: itemId, favId: '' })
  }

  return data?.favId ? (
    <Button variant="ghost" size="icon" onClick={deleteFav}>
      <RxHeartFilled className="w-4 h-4" />
    </Button>
  ) : (
    <Button variant="ghost" size="icon" onClick={addFav}>
      <RxHeart className="w-4 h-4" />
    </Button>
  )
}

I appreciate the effort, everyone. If this package reaches a production-ready level, it’ll save us all a lot of headaches. However, for now, using it in your project is likely to cause more trouble than it solves.


Implement sbrk in MARSKernel

sbrk is a system call inside malloc. To run interesting programs, it should be supported inside MARSKernel class.
The idea is to keep pool of free heap memory in same manner as OS does.

@M-ximus Please provide scratch on interface for new class here.

Could you please share your expectation on completion?

I have some ideas about this:

Do we want manager that control all memory(something like real mmu) or control only high level operations(alloc, dealloc, access attributes)?
Two different model of memory works too different - implementation of plain memory can't allocate new memory, but hierarchic can via resize. How should I to resolve this conflict? May I change class HierarchiedMemory?

class MemoryManager
{
public:
MemoryManager(Addr ptr_to_mem_seg, uint64_t size);
void allocate_memory(int64_t num_bytes); //if it less than 0 it will decrease the segment
private:
// no need to define it now
};

Do we want manager that control all memory(something like real mmu) or control only high level operations(alloc, dealloc, access attributes)?

We definitely should start with high level operations. It would be nicer if the architecture you're making may be extended to add MMU features in future, but it is not necessary at the moment.

implementation of plain memory can't allocate new memory,

You're talking about host memory here, but we need to allocate guest memory, i.e. inside the FuncMemory class.
FuncMemory class models (on a functional level) a DRAM chip, and you cannot resize it dynamically. Instead, you need to provide pointers to free guest memory and do not provide pointers to allocated.
public:
MemoryManager(Addr ptr_to_mem_seg, uint64_t size);
void allocate_memory(int64_t num_bytes); //if it less than 0 it will decrease the segment

Please use our local types defined in <infra/types.h>. For size type, it's always better to use size_t.
How is pointer to allocated memory returned?
What is the interface for memory free and/or reallocation?

We can return pointer from Addr allocate_memory(size_t num_bytes);
I thought about functions like realloc() and free(). But I don't sure that we want C-style memory manager. Realloc() can be implemented via sbrk and searching in the table the most suitable space for this block.
Also void free(Addr mem_ptr) can be implemented via marking this space in the table(or linked list). But do we want to think about safety? Should we control attributes and/or attempts to access to not allocated memory(or memory of other application)?

But I don't sure that we want C-style memory manager

I cannot think about any other alternative.

But do we want to think about safety? Should we control attributes and/or attempts to access to not allocated memory(or memory of other application)?

Yes we should, but that is performed with TLB which is another issue (#625).

I thought that you wanted MMU(That translates virtual addresses to physical. We have plain and hierarchy model of memory that try to address memory and MMU tries to give them information from this address. It takes virtual address and via linkage table translate it to physical. But both of implementation of memory uses their own arrays for data). How should I work with this models? Can I change them?
If I should implement C-style memory manager, I will make hash table + linked list that will use existed memory classes. It will be simpler for using in applications but it's part of OS. But addresses that it will return will be an offset in array in memory class.(It controls only position of block in virtual memory and thinks about memory how unlimited(<= 2^64) storage that can return exception)
What type do you want?
Does my class be lower or higher of memory classes(hierarchy and plain)?

I thought that you wanted MMU(That translates virtual addresses to physical.

In MIPS/RISC-V translation is handled by TLB.

It will be simpler for using in applications but it's part of OS.

Surely. We are implementing MARS-OS kernel at the moment.

Does my class be lower or higher of memory classes(hierarchy and plain)?

I believe it should capture FuncMemory by pointer.

Should my class control more than one block of memory or only one(sbrk changes size of data segment(only one block))?

MARS does not operate with segmented memory, so there is no need right now.

However, we have stack, OS code and executable code loaded in memory. It worth to protect them from overwrite.

I used FuncMemoryReplicant as a basis:
class MemoryManager : public FuncMemory
{
public:
    MemoryManager( Addr ptr_to_start_mem = 0, size_t mem_size = 4096 /*FIXME(M-ximus): Do we need a header with mem constants?*/);
   Addr allocate( size_t num_bytes);// only checks (block_size <= max) and changes block_size. It returns pointer to start of new memory
    size_t memcpy_guest_to_host( Byte* dst, Addr src, size_t size) const final;// checks (block_size <= max)
    size_t memcpy_host_to_guest( Addr dst, const Byte* src, size_t size) final;// checks (block_size <= max)
   size_t strlen( Addr addr) const final;
    std::string dump() const final;
  void duplicate_to( std::shared_ptr<WriteableMemory> target) const final;
private:
   std::shared_ptr<FuncMemory> memory;
   size_t block_size;
}
And sbrk will call allocate()

Please use the following syntax in your replies, otherwise it becomes to complicated.
```c++
class Code { };
```

class MemoryManager : public FuncMemory

The basic idea of inheritance is to represent "is" relation.
Additionally, FuncMemory is a class which supports two things: read and write and some convinient wrappers
So please think about the question: is MemoryManager a FuncMemory, i.e. is MemoryManager a thing which can be read or written?

Firstly, MemoryManager a thing that control read(load) and write(store). And other operations(like memcpy) need to use them. But this class should use memory that uses memcpy(while(true)). But it can control only access to memory(wrapper of FuncMemory). It should have safe read and write that can control all operations with memory.
class MemoryManager
{
public:
    MemoryManager( Addr ptr_to_start_mem = 0, size_t mem_size = 4096 /*FIXME(M-ximus): Do we need a header with mem constants?*/);
    Addr allocate( size_t num_bytes);// only checks (block_size <= max) and changes block_size. It returns pointer to start of new memory
    template<typename T, Endian endian> T load( Addr addr) const noexcept;
    std::string read_string( Addr addr) const;
    // I don't sure that we should be able to use unsafe read
    template<typename T, Endian endian> void store( T value, Addr addr);
    void write_string( const std::string& value, Addr addr);
    // I don't sure that we should be able to use unsafe write
    std::string dump();
private:
    std::shared_ptr<FuncMemory> memory;
    size_t block_size;
    Addr start_ptr;
}

(other methods will be added if they will be needed)
And I want to use object of this class in BaseKernel instead of FuncMemoryReplicant

MemoryManager a thing that control read(load) and write(store)

Nope. You can control address/page permissions without accessing real memory, by checking addresses in TLB or MemoryManager
I believe you need that:
class MemoryManager
{
public:
    explicit MemoryManager( std::shared_ptr<FuncMemory>);
    Addr allocate( size_t num_bytes);
    void deallocate( Addr addr);

    // Optional
    bool is_readable( Addr addr) const;
    bool is_writeable( Addr addr) const;
private:
    std::shared_ptr<FuncMemory> memory;
    // ...
};

Since we are aligned on interfaces, let's proceed to the next step — unit tests for the interface.

Could you please share your expectation on completion?

The question is still actual, although unanswered.

Removing back to pool since there is no response from owner


Add github actions test runner

Does this work? Looks like there might be a version conflict with gdal

Yeah, it works. You can see the check results here: https://github.com/digitalearthpacific/dep-tools/pull/42/checks
They're also listed on this PR

Nice!


ARROW-2310: First commit for addressing javadoc warnings

First commit for addressing javadoc warnings

Javadoc warnings on the Flatbuffers-generated classes should be ignored. Can you open an issue upstream in google/flatbuffers about fixing this?

ok let's see if we can get some help from them :)

@siddharthteotia looks like we have some progress on warnings here

Closing this as @BryanCutler has been working on in patches the last few weeks, feel free to discuss w/ bryan and help with patches there


Calculate/write parameters for new AUV

The new AUV will have dynamics and configurations that need to be captured in a parameter list. The simulator needs these to accurately represent the real-world AUV.

Current list of what we need from hardware:
-CAD-model
-Dimensions
-Mass
-Density
-Volume of displacement
-Center of gravity
-Center of buoyancy
-Damping coefficients?(some code referenced damping coefficients, not sure if it's relevant)
This list is not final as there might be some parameters I have missed, feel free to add.

Current list of what we need from hardware:
-CAD-model
-Dimensions
-Mass
-Density
-Volume of displacement
-Center of gravity
-Center of buoyancy
-Damping coefficients?(some code referenced damping coefficients, not sure if it's relevant)
This list is not final as there might be some parameters I have missed, feel free to add.


simplifaction of the examples by the mapping of many function within …

…the system class
We aspire to deal with all pull requests in a timely manner. Please be patient.
Ideally pull requests will respect the underlying intrastructure of pylj and agree with PEP8, etc. However, please do not let this put novice programmers off contributing.

Pull Request Test Coverage Report for Build 49

1 of 19 (5.26%)  changed or added relevant lines in 1 file are covered.
136 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-4.1%) to 90.769%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pylj/util.py
1
19
5.26%

Files with Coverage Reduction
New Missed Lines
%

pylj/sample.py
2
100.0%

pylj/mc.py
30
100.0%

pylj/md.py
31
78.57%

pylj/util.py
73
92.31%

Totals

Change from base Build 47:
-4.1%

Covered Lines:
153

Relevant Lines:
171

💛  - Coveralls


connections

Awesome tool!  Is it possible to obtain their connections?  I'd like to build a graph...

Don’t see a way as the app only shows mutual connections so that’s possible but probably not too helpful


Remove VPN from DigitalOcean bootstraping

Currently, DO bootstrapping is very slow, mostly due to OpenVPN tasks.
As far as I know, OpenVPN is here to make Private Networking truly private. By implementation, DO Private Networking is possible to be reached from any other Droplet in the data center, including ones that we don't own.
I suggest totally removing VPN implementation and using Cloud Firewalls to protect Droplets. We would have following rules:

Enable SSH and Kubeconfig for everyone
Enable All TCP and All UDP traffic for Droplets tagged cluster-name-master and cluster-name-node.

That would make Private Networking actually private, as every other request would be blocked by the firewall.
That doesn't require any changes in bootstrapping process. We would have to change profile to use tags as Firewall Source.
With this, we wouldn't need /tmp/.ip file creating and downloading and bootstrapping would be way too faster.
If some additional layer of protection is still needed, we can add in WeaveNet, which would be very easy to implement.

Take a look at #417


Include git hash in package lock comment for unversioned packages

Sometimes it's nice to have things building the latest version of something, while still being able to record the state it was in at the time.
I think this can be solved by including a git hash in the cpm-package-lock.cmake file in the build directory, so when archiving versions of the output, you can include that with it to know exactly what state the packages were in at the time it was built.

Hey Astiolo, thanks for the issue! I agree that it makes a lot of sense to track the current commit hash in the package lock. This would also be a step towards a more modern package management approach (#99) and allow automatic updates etc in the future.

💯 should be doing this for the cpm-update-package-lock if it is viable. Currently un-versioned targets are added as 'commented out' un-versioned dependencies which serves no useful purpose .. other than to simplify manually set the GIT_TAG to a SHA!
Also 'unversioned'... maybe should be non-versioned?

I have just found CPM_INCLUDE_ALL_IN_PACKAGE_LOCK which disabled the (unversioned) commenting.
There may be a bug here in that CPM_ARGS_SOURCE_DIR is checked after this flag, will need to discern if this is worth of a new issue:
https://github.com/cpm-cmake/CPM.cmake/blob/63d0de71140496d89db315340cb1d16489e689bc/cmake/CPM.cmake#L756-L762

There may be a bug here in that CPM_ARGS_SOURCE_DIR is checked after this flag, will need to discern if this is worth of a new issue

I think the original reasoning was that SOURCE_DIR would likely not be system-independent, which a package-lock optimally would be, so it was omitted here. However especially in the context of CPM_INCLUDE_ALL_IN_PACKAGE_LOCK I see how it would be still expected here.


Move Parse{Public|Private}Key and MarshalToPEM functions to their respective crypto package

We have functions for parsing from []byte to key and marshaling key to PEM in the keygen package.
// ParsePrivateKey parses a PEM encoded private key.
func ParsePrivateKey(buf []byte) (key hotstuff.PrivateKey, err error)
// ParsePublicKey parses a PEM encoded public key
func ParsePublicKey(buf []byte) (key hotstuff.PublicKey, err error)

// PrivateKeyToPEM encodes the private key in PEM format.
func PrivateKeyToPEM(key hotstuff.PrivateKey) ([]byte, error)
// PublicKeyToPEM encodes the public key in PEM format.
func PublicKeyToPEM(key hotstuff.PublicKey) ([]byte, error)

However, these belong in their respective packages {ecdsa, eddsa, bls12}, since we must add code to these methods whenever we add a new crypto scheme and expose parsing details outside the package, which could be kept internal to the specific package.
That is, we should add these to the different crypto packages:

hotstuff.{Private|Public}Key should require key types to provide a MarshalToPEM() ([]byte, error) method.
ParsePublicKey(buf []byte) (key hotstuff.PublicKey, err error)
ParsePrivateKey(buf []byte) (key hotstuff.PrivateKey, err error)

Have I've overlooked something that makes this approach less desirable?

This rewrite should add tests to check that the marshaled keys and be unmarshaled with the corresponding Parse funcs.


[Addition]:

Hotspot b58 Addresses
112iYK9awTVySkHx1297gpCCTpk95u1RbPkHF9FYUtzdEvYRjJ7N
11qvW5Q3Dkt1cmVTCSMmpUFgU91W1umwg1gieC1Mdjnnf88bTfj
13vxn4c5nEDxf47WxucEQpAquRc1jjNrCbA2k33eJ7DrA6mpUSo wallet address has 61 hotspots right in the corner of the city.
Discord Handle
houstonderk#9161
Reason(s)
At least 2 hotspots found from same wallet that are in impossible spots reaching over mountains and also has a lot of invalid witnesses every day.

Both seem to be connected to the local network.


Identify and document 3D model sources (spreadsheet included)

3D Model Spreadsheet (editable by anyone)
We should identify and document any potential 3D model sources in this spreadsheet. Two that we already have/used to have provider scripts for, but need to document more richly, are:

Sketchfab
Thingiverse

Anyone in our community can share or identify new sources we haven't thought of our populate the data for
the sources we have already identified.

I started this spreadsheet if anyone wants to add.

Thanks Rebecca, I've updated the original message to use your spreadsheet 😄

A little late to the game, but added the Smithsonian repository to the spreadsheet. We have an api as well and would love to be part of the conversation.

A little late to the game

Sadly, so are we, but your addition is much appreciated @gjcope! Thanks.


Header updates

new header, new logo, changed header menu properties

Closing this PR since the student papers branch includes it.


Enabling createCompilerError message in production

Version
3.2.1
Reproduction link
sfc.vuejs.org/
Steps to reproduce
Is there any way to enable proper error messages in production when using  vue.esm-bundler.js?
vue.cjs.prod.js seems to include proper error messages for DOM compiler errors unlike vue.esm-bundler.js.
What is expected?
SyntaxError: Element is missing end tag.
What is actually happening?
SyntaxError: 24

That would bloat the production bundle by a LOT. I think what we should probably do is include an error code to message reference in the docs, which can be auto-generated.
For now you can refer to the non-minified code (search for "errorMessages")

It would also help me a lot if const errorMessages could just be an export.
I want to report compile errors from production build to server so management users can see error logs.


Problems understanding register queue api

I'm trying to use the register queue api in order to fetch messages realtime.
The documentation is not very clear to me in how to achieve this.
Basically, I've deployed Zulip in an aws instance and have been using postman to make queries.
I've tried the following:
Calling:

api/v1/register

Sending these parameters in the body:
{
 "event_types": "['message']",
 "fetch_event_types": "['message']"
}

This returns a JSON with over 2000 lines and no messages whatsoever.
Then, I try to use

api/v1/events

With the queue_id and last_event_id returned in the last query, as the documentation suggests, but this returns the following result:
{
    "result": "success",
    "msg": "",
    "events": [
        {
            "type": "heartbeat",
            "id": 0
        }
    ],
    "queue_id": "1590756467:10"
}

Which is not what I'm expecting. I was hoping to get a result like the one that is used as an example in the docs, with a list of messages.
Maybe I'm doing something wrong here, but I couldn't find anything useful in other GitHub issues or over the internet.
Can anyone help me?

This returns a JSON with over 2000 lines and no messages whatsoever.

This is expected, if you failed to encode your parameters correctly.  (The default response from register with no arguments is the full set of base data for a full-featured client like a mobile app).  My guess is you encoded your parameters in an invalid way.  What precise code are you using to post?

Which is not what I'm expecting. I was hoping to get a result like the one that is used as an example in the docs, with a list of messages.

The queue will also return message events, but with the default event_types of all events, you will also get these heartbeat events (and many other types, e.g. events for changes in user names).
So I think if you fix your initial API request to encode event_types correctly as a JSON-encoded HTTP post parameter, you'll be fine.


getUserByEmail should return undefined if a user does not exist.

[REQUIRED] Step 2: Describe your environment

Operating System version: Ubuntu 19.04
Firebase SDK version: 8.2.0
Library version: 8.2.0
Firebase Product: firestore

[REQUIRED] Step 3: Describe the problem
<EMAIL_ADDRESS>will throw an error if the user isn't present.
This isn't a failure but is a totally rational situation.  There's no way to lookup a user by email and determine if there was a legitimate failure or not.
All these getUserByX functions should also return a null/undefined instead of throwing an error on a missing value.

There's no way to lookup a user by email and determine if there was a legitimate failure or not.

You should check the error code for auth/user-not-found. That is how these APIs are meant to be used:
https://github.com/firebase/firebase-admin-node/blob/1086515e34cab653ec4b4fa29c19d96f4600de4b/test/integration/auth.spec.ts#L281-L284


ARROW-16069: [C++][FlightRPC] WIP: Refactor out gRPC error code handling

TODOs:

[ ] Factor out "sidecar" headers into the common layer as well
[ ] Ensure this design will work with #12442

CC @cyb70289, this addresses the error handling questions from the last PR by refactoring out the gRPC implementation for UCX to use.

@lidavidm It seems that this breaks CI on macOS:
https://github.com/ursacomputing/crossbow/runs/6038992284?check_suite_focus=true#step:6:5601
[ 64%] Building CXX object src/arrow/flight/CMakeFiles/arrow_flight_testing_objlib.dir/test_definitions.cc.o
/Users/runner/work/crossbow/crossbow/arrow/cpp/src/arrow/flight/test_definitions.cc:1370:45: error: constexpr variable cannot have non-literal type 'const std::initializer_list<StatusCode>'
constexpr std::initializer_list<StatusCode> kStatusCodes = {
                                            ^
/Applications/Xcode_12.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/initializer_list:58:28: note: 'initializer_list<arrow::StatusCode>' is not literal because it is not an aggregate and has no constexpr constructors other than copy or move constructors
class _LIBCPP_TEMPLATE_VIS initializer_list
                           ^
/Users/runner/work/crossbow/crossbow/arrow/cpp/src/arrow/flight/test_definitions.cc:1389:51: error: constexpr variable cannot have non-literal type 'const std::initializer_list<FlightStatusCode>'
constexpr std::initializer_list<FlightStatusCode> kFlightStatusCodes = {
                                                  ^
/Applications/Xcode_12.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/initializer_list:58:28: note: 'initializer_list<arrow::flight::FlightStatusCode>' is not literal because it is not an aggregate and has no constexpr constructors other than copy or move constructors
class _LIBCPP_TEMPLATE_VIS initializer_list
                           ^
2 errors generated.

Could you confirm this?

I can't reproduce it right away with Clang 12 locally (on Linux), but regardless we can fix that. Thanks for catching this Kou. See #12903.

@github-actions crossbow submit python-sdist


wofi: 1.2.3 -> 1.2.4

Motivation for this change
Version bump.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 112274 at f824cc12 run on x86_64-linux 1

1 package built:

wofi

1 warning produced:

warning: unclear-gpl
gpl3 is a deprecated license, check if project uses gpl3Plus or gpl3Only and change meta.license accordingly.
Near pkgs/applications/misc/wofi/default.nix:28:5:
   |
28 |     license = licenses.gpl3;
   |     ^

Result of nixpkgs-review pr 112274 at f824cc12 run on aarch64-linux 1

1 package built:

wofi

1 warning produced:

warning: unclear-gpl
gpl3 is a deprecated license, check if project uses gpl3Plus or gpl3Only and change meta.license accordingly.
Near pkgs/applications/misc/wofi/default.nix:28:5:
   |
28 |     license = licenses.gpl3;
   |     ^


Changed baseGas and safeTxGas types to String

Closes #543
The web team needs to be notified when this is deployed to staging (before we merge)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

6 of 6 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.004%) to 83.366%

Totals

Change from base Build<PHONE_NUMBER>:
0.004%

Covered Lines:
6751

Relevant Lines:
8098

💛  - Coveralls


When is the estimated time for the code release?

I'm impressed by your work on image composition. I'm eager to learn from it and would appreciate knowing when the code will be made available.

Thanks for your interest in our work. We will release the code and model after acceptance.

Thanks for the answer!


Could not find init script or upstart conf file for 'sensu-enterprise'

Description of problem

What did you do?
We upgraded the Sensu Puppet Forge module from version 2.1.0 to version 2.2.1, and the Sensu version from 0.25.7-1 to 0.26.5-2.
What happened?
Puppet is failing due to not finding the init script/ upstart conf file for the sensu-enterprise service.
What did you expect to happen?
We're using Sensu Core not Sensu Enterprise; we don't have any Enterprise packages installed, so that condition will never be met. There shouldn't be any overlap.
How can someone reproduce the problem?

Command used and debugging output

What does your puppet config look like (including any hiera config)

  class { '::sensu':
    version                  => '0.26.5-2',
    rabbitmq_ssl_private_key => '/etc/sensu/ssl/key.pem',
    rabbitmq_ssl_cert_chain  => '/etc/sensu/ssl/cert.pem',
    rabbitmq_password        => $rabbitmq_password,
    rabbitmq_port            => '5671',
    rabbitmq_host            => $rbmq_host,
    rabbitmq_vhost           => 'sensu',
    subscriptions            => 'sensu-prod',
    purge                    => true,
    safe_mode                => true,
    use_embedded_ruby        => true,
    sensu_plugin_version     => present,
    client_custom            => {
      'team'       => "${::app}-${::env}",
      'search_tag' => $search_tag
    },
    client_keepalive         => {
      'handlers'   => $keepalive_handlers,
      'refresh'    => 14400,
      'thresholds' => {
        'warning'  => 120,
        'critical' => 180,
      },
    },
    repo_source              => 'http://repositories.sensuapp.org/apt',
    repo_key_id              => 'EE15CFF6AB6E4E290FDAB681A20F259AEB9C94BB',
    repo_key_source          => 'http://repositories.sensuapp.org/apt/pubkey.gpg',
  }

Is this a masterless or master based puppet setup?
Master based.

Platform and version information

Your OS: Ubuntu 14.04.1 LTS
Your Ruby version: 1.9.3p484
Your version of Puppet: 3.7.2, open source
Your version of Sensu: 0.26.5-2
Your version of this module: 2.2.1

Anything else to add that you think will be helpful?
The default case in the sensu::enterprise::service class needs an init script or upstart config file to ensure the stopped state for the service.

Just saw this was fixed in #409 but then rolled back in #656. What was the reason for flipping the vars @dzeleski?

409 broke the ability to set manage_services to false and manage the services outside of the sensu module for enterprise users. Is puppet attempting to stop/disable the sensu-enterprise service?
Could you post a debug output of your puppet run?

Yup @dzeleski, Puppet is attempting to stop/disable the sensu-enterprise service. Below the relevant bits from a debug run:
Debug: Service[sensu-enterprise](provider=upstart): Could not find sensu-enterprise.conf in /etc/init
Debug: Service[sensu-enterprise](provider=upstart): Could not find sensu-enterprise.conf in /etc/init.d
Debug: Service[sensu-enterprise](provider=upstart): Could not find sensu-enterprise in /etc/init
Debug: Service[sensu-enterprise](provider=upstart): Could not find sensu-enterprise in /etc/init.d
Debug: Service[sensu-enterprise](provider=upstart): Could not find sensu-enterprise.sh in /etc/init
Debug: Service[sensu-enterprise](provider=upstart): Could not find sensu-enterprise.sh in /etc/init.d
Error: /Stage[main]/Sensu::Enterprise::Service/Service[sensu-enterprise]: Could not evaluate: Could not find init script or upstart conf file for 'sensu-enterprise'
Notice: /Stage[main]/Sensu::Enterprise::Dashboard/Anchor[sensu::enterprise::dashboard::begin]: Dependency Service[sensu-enterprise] has failures: true
Warning: /Stage[main]/Sensu::Enterprise::Dashboard/Anchor[sensu::enterprise::dashboard::begin]: Skipping because of failed dependencies
Notice: /Stage[main]/Sensu::Enterprise::Dashboard::Config/File[/etc/sensu/dashboard.json]: Dependency Service[sensu-enterprise] has failures: true
Warning: /Stage[main]/Sensu::Enterprise::Dashboard::Config/File[/etc/sensu/dashboard.json]: Skipping because of failed dependencies
Notice: /Stage[main]/Sensu::Enterprise::Dashboard::Config/Sensu_enterprise_dashboard_config[corp-tech-api-mdb0-stg.2u.com]: Dependency Service[sensu-enterprise] has failures: true
Warning: /Stage[main]/Sensu::Enterprise::Dashboard::Config/Sensu_enterprise_dashboard_config[corp-tech-api-mdb0-stg.2u.com]: Skipping because of failed dependencies
Notice: /Stage[main]/Sensu::Enterprise::Dashboard::Service/Service[sensu-enterprise-dashboard]: Dependency Service[sensu-enterprise] has failures: true
Warning: /Stage[main]/Sensu::Enterprise::Dashboard::Service/Service[sensu-enterprise-dashboard]: Skipping because of failed dependencies
Notice: /Stage[main]/Sensu::Enterprise::Dashboard/Anchor[sensu::enterprise::dashboard::end]: Dependency Service[sensu-enterprise] has failures: true
Warning: /Stage[main]/Sensu::Enterprise::Dashboard/Anchor[sensu::enterprise::dashboard::end]: Skipping because of failed dependencies
Notice: /Stage[main]/Sensu/Anchor[sensu::end]: Dependency Service[sensu-enterprise] has failures: true
Warning: /Stage[main]/Sensu/Anchor[sensu::end]: Skipping because of failed dependencies

Fixed by #660, closing.


Secure access, management and monitoring of the cluster with access roles

There is suggestion from user:

Support and document Epiphany setup for secure access, management and monitoring of the cluster with commonly known varying access roles, e.g.:

Super-admin role - able to manage all Epiphany installation aspects (including Azure resources, OS, services, deployed applications, etc.) allowing to scale the cluster, update it, monitor it, manage deployed applications, etc.
Application-admin role - able to manage applications deployed on the cluster, allowing to deploy, update, configure those applications and also monitor them and monitor the related resources and services (which includes monitoring whole cluster load, monitoring messaging bus, load balancer, etc. and allows access to application logs and logs of related services).
Application-support role - able to manage basic application configuration (e.g. scale K8s deployments, change selected application settings) and monitor it (access to logs and monitoring data of the application and related services).
Monitoring role - able to monitor the cluster and application performance, with no access to configuration and logs.

Including guide (with examples) on user setup and management.

After additional conversation it was elaborated more:

This is both about managing the Epiphany (it’s components, underlying infrastructure, etc.) and managing what it’s used for, so the applications deployed on it.
Epiphany delivered as is, so without actual guidelines on the security and management model, without tools to work with it on daily basis, does not fulfill its goals.
The goals of Epiphany, as I understand those, is to standardize (on technical solutions, but also on processes and patterns) and to abstract (isolate from having to know and understand the underlying platforms and infrastructures).
As there are no guidelines nor tools for common tasks, each project must produce own solutions/approaches to the processes, which invalidates the standardization part.
Without those tools, each project must be able to fully understand and support all underlying components of the platform and infrastructure, which defeats the purpose of the abstraction.
The only time theoretically saved is on learning how to deploy all the components on your own. The problem is, that you still must learn how to deploy Epiphany and you need to understand what it does underneath, to be able to support the deployment results. This requires as much time spent, as there is saved.
As you obviously can’t support all possible use-case scenarios, I’ve started with an expectation on Epiphany delivering full solution for managing access within the platform. I.e. when I’m to deploy an Epiphany cluster for a project, I expect to have tools and guidelines on how to set up credentials for all (or at least most) the people, who will be working with the cluster, how to ensure they have access to the infrastructure and can safely maintain their credentials, while keeping the platform secure, etc. The roles I’ve listed, are an example of how it could be set up: Epiphany would define some logical roles and provide full process and toolset support to manage users and assign those roles to them. The list of roles may not be complete (as I don’t know all the other projects), nor defined best – it’s just an example. The core idea is that it must be complete and consistent, so having a separate set of guidelines/tools on how to manage Kubernetes and separate one on Kibana and separate one on Kafka and separate one on Grafana, etc. does not cut it – this is something already provided by the documentation and tools from the individual components and is not enough for a platform. It has to have some extension points, to cover for individual aspects of complex projects and cover various deployment scenarios (so it does not require completely different approaches for e.g. Azure, than for AWS).

This should be discussed further.

Seems to be not a task, but an epic with undefined design, implementation, documentation parts. So my proposal to discuss it together as a team and not make a grooming by only one person.

For now we are not going to pursue this in the current Epiphany. Closing and moving to new internal Epiphany work.


Update CCG plugins registry key location

The path to the registry key for CCG plugin COMClasses is incorrect. It should be ...\CurrentControlSet\Control\CCG\... rather than ...CurrentControlSet\CCG\....

@briantist : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@GrantMeStrength mind taking a look at this?

@GrantMeStrength is there anyone else who might be better positioned to review this?

Thanks for the correction.


Add a CONTRIBUTING.md file

This file describes the life cycle of a new feature, and provides an
outline for feature proposals.

👍 are you planning to add https://blog.github.com/2018-05-02-issue-template-improvements/ too?


Relicense under MIT

Because 2 years ago I thought other people would contribute to it ... https://github.com/tvytlx/render-py/issues/5


add pbbamify to pbmm2

I want to open this ticket in pbmm2, but there is no issue tab for me to use.
The quay.io/biocontainers/pbmm2:0.12.0--ha87ae23_0 pbmm2 don't have md5 for contig, so I have to use pbbamify to add it and sort BAM as well. I think it would be good if you bake-in pbbamify inside pbmm2 using and exposing an option to use it, so we don't have to do bamify and sort later.

Please read and follow the documentation:
https://github.com/PacificBiosciences/pbmm2#availability

Please refer to our official pbbioconda page for information on Installation, Support, License, Copyright, and Disclaimer.
This links to https://github.com/PacificBiosciences/pbbioconda.

We can discuss there.


Potential improvements to tags

There's no way to add context information to bookmarks:

The data column shows ~2 characters and can't be re-sized. (Tags tab does this better.)
Comments don't show up in dasm preview.
If you bookmarked from HLIL, the dasm preview is essentially unrelated.

In projects where points of interest accumulate, there's no way to structure bookmarks. The tab can't be sorted by name or location, filtered, searched, etc. The tab is just a filtered subset of the Tags tab, but with less information shown.
Tags seem like a decent interface between automation and a human navigating points of interest. If bookmarks are tags but exclusively for human use, adding more structure and context would help. Maybe not to the extent of Ghidra's Program Trees, which allow program fragments to be re-arranged arbitrarily into a new BinaryView, but at least enough to support more bookmarks than you can count on your thumbs.

The current intended use case for bookmarks is solely for the quick actions to navigate/assign using hotkeys. That's why they are otherwise a subset of the features of tags.
For more complicated sets of tagging the tag system is intended to be used, not just for automated interfaces.
That said, it doesn't mean we can't improve one or both interfaces, just laying out the original design and intention.

We talked about this internally and we want to rename this issue instead to track some of the future plans for tags. As I said, we have no plans to change bookmarks, those are intended for a narrow use case.
That said, here's a list of features we would like to add to Tags:

[ ] Better filtering for tags
[ ] Preview to show annotations/comments

Showing IL instead of assembly is unfortunately not going to happen any time remotely soon. That requires a large refactor because we don't currently keep IL in memory at all times for all functions and instead have to regenerate them on-demand.  If you've got other suggestions though, be happy to add them.

Suggestion: show tag emoji in ILs as well as disassembly. Currently they don't always show up, e.g. the FUNctional Tags snippet's output isn't visible from HLIL.

I just ran into this on stream today. You're right, that's super annoying. Really need them to show up in IL views.
Another feature I now really want is the ability to toggle on/off a column in the symbol list for tags. Would make TagTeam (the new plugin I'm about to push that's based on functional tags) much more useful.


SCRAM-SHA-1(-PLUS) + SCRAM-SHA-256(-PLUS) + SCRAM-SHA-512(-PLUS) + SCRAM-SHA3-512(-PLUS) supports

Dear @duesee,
Can you add supports of :

SCRAM-SHA-1
SCRAM-SHA-1-PLUS
SCRAM-SHA-256
SCRAM-SHA-256-PLUS
SCRAM-SHA-512
SCRAM-SHA-512-PLUS
SCRAM-SHA3-512
SCRAM-SHA3-512-PLUS

You can add too:

SCRAM-SHA-224
SCRAM-SHA-224-PLUS
SCRAM-SHA-384
SCRAM-SHA-384-PLUS

"When using the SASL SCRAM mechanism, the SCRAM-SHA-256-PLUS variant SHOULD be preferred over the SCRAM-SHA-256 variant, and SHA-256 variants [RFC7677] SHOULD be preferred over SHA-1 variants [RFC5802]".

SCRAM-SHA-1(-PLUS):
-- https://tools.ietf.org/html/rfc5802
-- https://tools.ietf.org/html/rfc6120

SCRAM-SHA-256(-PLUS):
-- https://tools.ietf.org/html/rfc7677 since 2015-11-02
-- https://tools.ietf.org/html/rfc8600 since 2019-06-21: https://mailarchive.ietf.org/arch/msg/ietf-announce/suJMmeMhuAOmGn_PJYgX5Vm8lNA

SCRAM-SHA-512(-PLUS):
-- https://tools.ietf.org/html/draft-melnikov-scram-sha-512

SCRAM-SHA3-512(-PLUS):
-- https://tools.ietf.org/html/draft-melnikov-scram-sha3-512

SCRAM BIS: Salted Challenge Response Authentication Mechanism (SCRAM) SASL and GSS-API Mechanisms:
-- https://tools.ietf.org/html/draft-melnikov-scram-bis

https://xmpp.org/extensions/inbox/hash-recommendations.html
-PLUS variants:

RFC5056: On the Use of Channel Bindings to Secure Channels: https://tools.ietf.org/html/rfc5056
RFC5929: Channel Bindings for TLS: https://tools.ietf.org/html/rfc5929
Channel-Binding Types: https://www.iana.org/assignments/channel-binding-types/channel-binding-types.xhtml
RFC 9266: Channel Bindings for TLS 1.3: https://tools.ietf.org/html/rfc9266

IMAP:

RFC9051: Internet Message Access Protocol (IMAP) - Version 4rev2: https://tools.ietf.org/html/rfc9051

LDAP:

RFC5803: Lightweight Directory Access Protocol (LDAP) Schema for Storing Salted: Challenge Response Authentication Mechanism (SCRAM) Secrets: https://tools.ietf.org/html/rfc5803

HTTP:

RFC7804: Salted Challenge Response HTTP Authentication Mechanism: https://tools.ietf.org/html/rfc7804

2FA:

Extensions to Salted Challenge Response (SCRAM) for 2 factor authentication: https://datatracker.ietf.org/doc/html/draft-ietf-kitten-scram-2fa

IANA:

Simple Authentication and Security Layer (SASL) Mechanisms: https://www.iana.org/assignments/sasl-mechanisms/sasl-mechanisms.xhtml

Linked to:

https://github.com/scram-xmpp/info/issues/1
https://github.com/duesee/imap-flow/issues/97

https://news.ycombinator.com/item?id=39869333

@gowthamgts: Do you attack me because I have requested the XZ update?
I am not linked to the XZ project.

Thanks for the hint, @gowthamgts!
Some thoughts (and context):
This issue asks to implement support for some SCRAM variants. To the best of my knowledge, there is nothing wrong with SCRAM -- to the contrary. Thus, I believe @Neustradamus opened this issue in good faith.
Still, while you are here:
SASL is old and complex. It's also literally the key to our online identity. Yet, it feels under-researched. Reminds me a bit of STARTTLS :-)
Maybe we can use our energy to take a closer look?

@Neustradamus definitely no. At this point in time I just wanted to be sure that people knew about the backdoor. You can definitely be a genuine user or a developer or a contributor or even a penguin on the internet. 🙂
@duesee understood. No harm no foul. These PRs were flagged by people earlier and just wanted to make sure this reached the maintainers of the projects.

@duesee: Thanks for your answer, several people mix all.
@gowthamgts: Strange, your messages are not clear:

https://github.com/duesee/imap-flow/issues/96#issuecomment-2027899343
https://github.com/marlam/msmtp/issues/36#issuecomment-2027900141
https://news.ycombinator.com/item?id=39871685

You can follow my announcements here:

https://mastodon.social/@neustradamus
https://twitter.com/neustradamus
https://bsky.app/profile/neustradamus.bsky.social
https://news.ycombinator.com/user?id=neustradamus

The good point, people speak about SCRAM "Salted Challenge Response Authentication Mechanism" security ;)

https://github.com/scram-sasl/info/issues/1

Badly, some people or projects like only old unsecure mechanisms, some would like security improvements.
cc: @canselcik, @winkelcode, @timrobbins1, @sebpretzer, @LeoniePhiline, @sroussey, @masklinn, @asmor (not sure).

@Neustradamus had requesed me too for implementation of SCRAM (See this). What he has asked me to add is something which is genuine and supported by many RFCs. Implementation of those RFC's in my project was what he pursued. Apart from the followup on SCRAM implementation he has been helpful in few occassions to better organize by projects on github. At no point has he suggested me to include any code apart from suggesting which projects that have implemented SCRAM. IME he has always been sincere in interactions with me.

@Neustradamus Please stop CCing people who reacted to an issue comment.

@LeoniePhiline: Sorry, thanks for your message.
It is important to understand all and not a little part :)

I've already explained here dude. I don't understand why you keep spamming and ccing me everywhere. If you're not guilty just move on.

Why? Because people contact me about it.
It is important to have the detail on linked publications because a lot of people do not click on other links directly.

Thanks for all the comments, but this is not the best place to discuss this further :-) If you disagree, write me an email and I'll unlock the discussion again.


home page

https://user-images.githubusercontent.com/34966088/222638227-91247454-7a93-4d07-909e-9249e489d993.mp4

We can't see which page currently has the focus.

Thanks, Asam for the work so far.
Please remove the image at the bottom of the home page
I see that the design is a little bit ahead of this implementation. Please check the Figma file to update the changes


DSpace (Solr) Statistics - Sitewide Usage Reports (same as v6.x)

Estimate from release plan: 36 hours
Assigned to Atmire
From release plan:
Reports include: top 10 Items in total visits

Closing, addressed in https://github.com/DSpace/DSpace/pull/2782


Is this project open source?

Hi there, as there is currently no license on this repo, the project is not open source? Thus I wanted to ask if the project is open source, and if so if you could add a license to it?

Hi @snwagbata, the project is indeed open source, the license has been added in the latest commit ed2b581


Missing includes in call_destructors_where_necessary.hpp

Tried out using the latest commit of main branch. I got some errors and was able to track it down to  call_destructors_where_necessary.hpp  when only including rfl/json/read.hpp.
libs/include/rfl/json/../parsing/call_destructors_where_necessary.hpp:38:23: error: ‘get’ is not a member of ‘rfl’
Reproducible example:
`
#include
#include <rfl/json/read.hpp>
struct RandomProperties {
std::string name;
int age;
bool isStudent;
};
int main(void) {
std::string str;
rfl::json::read(str);
return 0;
}
`
Attached a full errr_out.txt. In the error log i use g++-14 but same happens with g++-12.
I assume there is a missing #include "../get.hpp"
I can do a pr if that is actually a missing include and not a miss understanding of me only including rfl/json/read.hpp.

Thanks for reporting. You are right, #include "../get.hpp" is missing in call_destructors_where_necessary.hpp. That should fix is.
A PR is welcome.


Java command line has one error

Issue #, if available: In Readme file, Java command has one error in Module 1
Fix the command in Readme file
aws s3api delete -bucket-policy --bucket REPLACE_ME_BUCKET_NAME
To
aws s3api delete-bucket-policy --bucket REPLACE_ME_BUCKET_NAME
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Looks like maybe a branch targetting mistake here on the PR. Sorry I didn't review it sooner!


AMD RX 570 HDMI Audio is cracking

Everything seems to be working but I can't hear anything good using HDMI audio. Pops and Cracks everywhere. Audio is good with my internal audio and USB audio card, btw.
My rig:
Asrock B450 Fatal1ity Gaming AC ITX
AMD Ryzen 5 3600
Corsair Vengeance 16 GB (8+8) 3200 MHz
MSI Radeon RX 570 Armor 4G OC 4GB
NVMe Western Digital SN750 500 Gb
What do you think could be?

https://github.com/AMD-OSX/AMD_Vanilla#information-on-the-fix-pat-patch

https://github.com/AMD-OSX/AMD_Vanilla#information-on-the-fix-pat-patch
Shanee' patch is enabled in my config. You can try switching to algrey's patch to see if it fixes your issue

It's done, buddy. Thank you very much. You're the best!.


Bump to node 8

AWS Lambda now supports node 8.10 runtime environments. Bump the package.json engine version to take advantage of the updated runtime.

Done 👍

Done 👍


Enhanced Windows compatibility + PixelBuffer get_rgb_pixels function

Contains Bug Fixes (wrong index in MediaFoundation_Capture.cpp) and Enhancements such as multiple capture formats for Windows + PixelBuffer get_rgb_pixels fucntion to get contents of PixelBuffer as RGB24 regardless of original capture format

Hey frankpapenmeier, thanks for you commits! Though not having CPU conversion of YUV > RGB is by design; conversion should be done by the GPU and otherwise the user can to it themself with a 3rd party library (swscale / libyuv) which are optimised. It would love to discuss your thoughts; maybe have a chat?

Hi roxlu, thanks for mentioning libyuv. I will try it out. It looks like you are right that it is better to use this specialized library for CPU conversion. Regarding GPU conversion between YUB and RGB: How would you achieve it? I want to build a new "Capture Driver" for sarxos Java Webcam framework, such that I can rely on Windows Media Foundation because the standard implementation used by sarxos framework (OpenIMAJ) cannot grab webcam images on some Windows 8 tablets. However, I have three webcams here, each with different capabilities and sarxos framework requires RGB data. So I will try to use libyuv to convert to RGB if RGB is not supported by the webcam. Do you see any alternative? It would also be great to chat.. what service do you prefer for this?

Hi roxlu, I had a look into libyuv. It works great. I also realized that I was not aware of endianess when introducing CA_BGR24... I will rework my fork and send a new pull request that only includes the critical bug fixes and enhancements and removes CPU conversion and introduction of CA_BGR24. This might take some days because I want to get some other things working first.


Add option to store needle index in leveldb

Currently 1 million files takes about 24MB memory.
The memory consumption could be high if storing too many files, e.g. 6000million small files.

+1
and please keep project independent from no-golang libs. so goleveldb can be helpful.

+1

why not boltdb? read performance much better !

Added leveldb and boltdb support.
boltdb is fairly slow to write, about 6 minutes for recreating index for 1553934 files. Boltdb loads 1,553,934 x 16 = 24,862,944bytes from disk, and generate the boltdb as large as 134,217,728 bytes in 6 minutes.
To compare, for leveldb, it recreates index in leveldb as large as 27,188,148 bytes in 8 seconds.
To test the memory consumption, the leveldb or boltdb index are created. There are 7 volumes in benchmark collection, each with about 1553K files. The server is restarted, hen I start the benchmark tool to read lots of files.
For leveldb, the memory starts at 142,884KB, and stays at 179,340KB.
For boltdb, the memory starts at 73,756KB, and stays at 144,564KB.
For in-memory, the memory starts at 368,152KB, and stays at 448,032KB.
To test the write speed, I use the benchmark tool with default parameters.
For boltdb, the write is about 4.1MB/s, 4.1K files/s
For leveldb, the writes is about 10.4MB/s, 10.4K files/s
For in-memory, it is a tiny bit faster, not statistically different.

any results for read speeds ? just wonder the read performance "boltdb vs leveldb".
btw, thanks for the research.

Read speeds are about the same.

-index string
Choose [memory|leveldb|leveldbMedium|leveldbLarge] mode for memory~performance balance. (default "memory")
i confuse about "leveldb|leveldbMedium|leveldbLarge",how different

more memory usage for better performance


Question about fetch data

I have an auth page which contains an dynamic captcha image(which is an svg format, i use v-html to render it), i want to send the  captcha image's request from browser so i can cache the page.
But when i check the Chrome's network tab, i can't see the request to captcha, i think the request is sent from server-side, so i add an on-click event to confirm my option, when i click it, it made an request from my browser.
So, how to confirm the data is retrived from client(browser)?
Here is my code.
...

...


Open file should open the selected version of the file

In "Show File History" feature, click a particular commit on the list, it shows "go back", "Compare with Previous Commit", "Compare with Working Tree", and "Open File" etc., when clicking "Open File", it doesn't open the version of previously selected commit, instead just open the file currently in the folder! That's less interesting. It should open the the version of the selected commit.

@cateyes99 Thanks for the feature request -- funny enough I was just talking about implementing this earlier today! Look for it in the next GitLen release.


AGPUSH-971 : Advanced Analytics, Server Side

New PR Based on the closed https://github.com/aerogear/aerogear-unifiedpush-server/pull/523

rebase afer JMS landed on master branch :white_check_mark:

request.getHeader("push-identifier"); header needs a different prefix (aerogear-push-id) :white_check_mark:

move the extractPushIdentifier() to the HttpRequestUtil util :white_check_mark:

first/last opened will stay as is, right ? :white_check_mark:

message.getMessage().getUserData().put("push-identifier",pushMessageInformation.getId()); needs to be done at outer/different/custom level - not on the envelope/payload (e.g. the user data)  :white_check_mark:  (has been removed from "our" user-data but for each push network I can only end up in their respective "custom" section)

leverage the MetricsCollector instead of new VariantMetricInformationDao on this PR : Will be handled  when Registration will use messaging

push identifier: docment it on the endpoint doc : REST Endpoint has been updated but update to the endpoint doc will be in a aerogear.org PR

JavaDoc on NotificationSenderCallback : not relevant anymore

pushMessageInformation.setAppOpenCounter needs atomicLong or AtomicRef : still open for discussion, we have now the "simple" version (incrementing a long)

@lfryc @edewit @lfryc can you take a look ?

leverage the MetricsCollector instead of new VariantMetricInformationDao on this PR : Will be handled when Registration will use messaging

please create a JIRA to track that

:+1: code-wise looks good
so far there is a way how to test this, but we will get there :-)

@lfryc I have a hacked "helloworld" Cordova that will read the aerogear-push-id from the payload and include it in the header when registration, this way you can test it https://github.com/sebastienblanc/unified-push-helloworld/tree/analytics . Also @edewit has a windows https://github.com/aerogear/aerogear-windows-push/pull/7 (that needs to be updated)

@sebastienblanc updated windows sdk

@sebastienblanc @edewit I've done https://github.com/aerogear/aerogear-ios-push/pull/55
I still miss the background to foreground case as discussed in mailing list thread:
http://aerogear-dev.1069024.n5.nabble.com/aerogear-dev-Advanced-Analtyics-new-PR-and-call-to-the-client-tech-leads-td11546.html

This PR exposes analytics to the new UI: https://github.com/sebastienblanc/aerogear-unified-push-server/pull/7

see https://github.com/aerogear/aerogear-unifiedpush-server/pull/543


How to use ElasticSearch as a data source on Appsmith

Please cover the following topics in this guide -

Integrating the data source into Appsmith.
Fetching data from the connected data source.
Binding the data to a widget.
For documentation guidelines, click here.

Can you assign this to me?
@Pranay105

Yes, @achintya-7 . Assigning it to you!

sorry for that, can you reassign the issue to me. I have already made the document and just have to make PR request


TopNavSidecar badges are in odd position (if names are displayed in breadcrumbs)

if names are heroText, the badges are fine. otherwise, they aren't displayed flush right. This is a regression from the heroText FeatureFlag PR #4922, which turned a div with no content into one that is not displayed at all.

i also observe poor color contrast for the red badge


[bug]: contractcourt: max budget used immediately for anchor sweeps

For outgoing HTLCs the commitment deadline is calculated incorrectly, causing the entire anchor budget to be spent immediately.
Problem
The commitment deadline is derived from the timelocks of the outgoing HTLCs, instead of the timelocks for the matching upstream (incoming) HTLCs.
https://github.com/lightningnetwork/lnd/blob/c68778d2f39f13617e05b362fb9bbec43e5c7a43/contractcourt/channel_arbitrator.go#L1452-L1480
Since ChannelArbitrator only broadcast commitments for outgoing HTLCs once the timelock has already expired, the resulting deadline for anchor sweeping is always 0 (which is bumped to 1).  This causes the sweeper to spend the entire budget immediately.
Solution
The upstream HTLC timelocks need to be used for the deadline instead.

Nice catch! We added FindOutgoingHTLCDeadline to pass into the HTLC timeout resolver so it could use compute the CLTV delta. We can use the same routine here to compute the deltas to determine what the overall commitment deadline should be.

Thank you for catching this! I forgot to mention I wanna more opinions here re how we decide the deadline in this case. I don't think we can use the CLTV delta directly, as it may cause no blocks left when sweeping the outgoing HTLCs.

This is also something we need to consider for incoming HTLCs, which have a much shorter default window (10 blocks) to confirm the commitment and HTLC-preimage transactions.
Splitting the window in half seems best to me, especially for this shorter 10 block window.  Splitting unevenly (e.g., 80-20) would result in too short of deadlines for either the commitment or HTLC-preimage.


UX: Expand category filters even when already filtered

Before

After

1 small nitpick is that I feel the currently selected category should show up as the first one always, regardless of sorting and filtering. What do you think?

@jordanvidrine I'm slightly leaning on not moving the position of the category when it is selected. No strong feelings either way, but it feels more "right" for no reordering to take place. (There is no reordering for tags either, AFAIK.)

Fair enough 😺


net: pkt: Cleanup validation of min fragment size based on max headers

Where we calculate max size, name variable (preprocessor define)
correspondingly.
Calling TCP/UDP an "app protocol" is original, use "next protocol"
terminology of IPv6.
As headers go as IP, then "next", order calculations that way too.
Add more comments.

Addresses: #8723
Signed-off-by: Paul Sokolovsky<EMAIL_ADDRESS>

Codecov Report

Merging #9571 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #9571   +/-   ##
=======================================
  Coverage   52.15%   52.15%
=======================================
  Files         212      212
  Lines       25916    25916
  Branches     5582     5582
=======================================
  Hits        13517    13517
  Misses      10149    10149
  Partials     2250     2250

Impacted Files
Coverage Δ

subsys/net/ip/net_pkt.c
62.69% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


exact-active-class and jit compiler

Version
@nuxtjs/tailwindcss: ^4.0.0
nuxt: ^2.15.3
Steps to reproduce
<template>
  <nuxt-link
    to="/"
    class="bg-white"
    exact-active-class="bg-red-500"
  ></nuxt-link>
</template>

What is Expected?
The bg-red-500 class should be generated.
What is actually happening?
The bg-red-500 class is not generated.

My bad


could we rename community/cdci label to something else?

Our activity has reshaped, into more international and larger project.
But "CDCI" does not apply anymore, and we decided (with @andriineronov and other colleagues) to discard the acronym to reduce confusion.
We could use "AstroODA" - this name was there since the beginning (https://www.astro.unige.ch/cdci/astrooda_/) or even just ODA - although perhaps too generic, it is also relatively unique, as far as I know.
Could you please change it?
Thanks!

Hi @volodymyrss, renamed everywhere.

Great, thanks!


Scaling not applying to Carbuncle?

Hello, thanks for the hardwork getting CustomizePlus compatible for 6.2!
Post update I'm having issues applying scaling to characters imported on Carbuncle. I'm able to apply and save scaling to myself and edit it. But typing 'Carbuncle' under the name like it was for the prev. patch does not seem to apply any scaling that I save to the character. It also does not let me edit it at all. I tried typing Carbuncle a few different ways, but I'm unsure if I'm doing something wrong or if it is a current issue.
Thanks for your time!

I removed root scaling on BattleNpcs (which Eos/Selene/Carbuncle are) and didn't include an exclusion for player-owned ones. Just figured out a good workaround for that after seeing this issue, it will be part of next update.

Awesome thanks so much for your time in responding, much appreciated. :)


[SPARK-33703][SQL] Migrate MSCK REPAIR TABLE to use UnresolvedTable to resolve the identifier

What changes were proposed in this pull request?

This PR proposes to migrate MSCK REPAIR TABLE to use UnresolvedTable to resolve the table identifier. This allows consistent resolution rules (temp view first, etc.) to be applied for both v1/v2 commands. More info about the consistent resolution rule proposal can be found in JIRA or proposal doc.
Note that MSCK REPAIR TABLE is not supported for v2 tables.
Why are the changes needed?

The PR makes the resolution consistent behavior consistent. For example,
sql("CREATE DATABASE test")
sql("CREATE TABLE spark_catalog.test.t (id bigint, val string) USING csv PARTITIONED BY (id)")
sql("CREATE TEMPORARY VIEW t AS SELECT 2")
sql("USE spark_catalog.test")
sql("MSCK REPAIR TABLE t") // works fine

, but after this PR:
sql("MSCK REPAIR TABLE t")
org.apache.spark.sql.AnalysisException: t is a temp view. 'MSCK REPAIR TABLE' expects a table; line 1 pos 0

, which is the consistent behavior with other commands.
Does this PR introduce any user-facing change?

After this PR, MSCK REPAIR TABLE t in the above example is resolved to a temp view t first instead of spark_catalog.test.t.
How was this patch tested?

Updated existing tests.

Test build #132411 has started for PR 30664 at commit 3e8aa99.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/37011/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/37011/

Test build #132411 has finished for PR 30664 at commit 3e8aa99.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class RepairTable(child: LogicalPlan) extends Command

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/37011/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/132411/

Test build #132442 has started for PR 30664 at commit f6b776e.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/37044/

cc @cloud-fan

Test build #132442 has finished for PR 30664 at commit f6b776e.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
trait CheckAnalysis extends PredicateHelper with LookupCatalog
case class UnresolvedView(
case class NoopCommand(
case class ShowTableExtended(
case class DropView(

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/132442/

thanks, merging to master!


Cargo add dioxus --web feature not working on WSL2 Ubuntu

Problem
I am following the instructions found on the web example, everything is working as expected, but when I get to the $ cargo add dioxus --features web command I get a cargo error: error: no such subcommand: add . I am not sure how to proceed with the tutorial. I am new to rust and using cargo, so not sure what the work around would be to help implement dioxus. I am using Ubuntu with WSL 2.
Steps To Reproduce
Steps to reproduce the behavior:

WSL 2 + ubuntu environment
follow previous steps found for web feature found here
run command $ cargo add dioxus --features web command to get cargo error: error: no such subcommand: add

Expected behavior
successfully run $ cargo add dioxus --features web command
Environment:

Dioxus version: dioxus v0.2.3
Rust version: rustc 1.56.1
OS info: <IP_ADDRESS>-microsoft-standard-WSL2 / Ubuntu 20.04 LTS
App platform: web

Questionnaire

[X] I'm interested in fixing this myself but don't know where to start
[ ] I would like to fix and I have a solution
[ ] I don't have time to fix this right now, but maybe later

Was able to fix this on my own, I must have skipped this section: https://dioxuslabs.com/guide/setup.html. Closing issue now.


[WelcomeUX] Layout glitch after opening from tabs

I think we need some layout call when opening the welcome page when the available height is not enough to show everything:

This was fixed with #18858, available in 1.9.


@Reference和@Service Naming change causes some questions

I have searched the [issues]https://github.com/apache/dubbo/issues/6007) of this repository and think that this is not full down。
[ ] I have searched the [commit]https://github.com/apache/dubbo/pull/6074/commits) of this repository.

Environment

since Dubbo.version  @since 2.7.7
Recently I began to read this framework、learn this framework 。There is a problem that bothers me。

Question
if @org.apache.dubbo.config.annotation.Service change<EMAIL_ADDRESS>,
so

org.apache.dubbo.config.spring.ServiceBean should be change to org.apache.dubbo.config.spring.DubboServiceBean
org.apache.dubbo.config.ServiceConfig should be change to org.apache.dubbo.config.DubboServiceConfig
org.apache.dubbo.config.ServiceConfigBase should be change to org.apache.dubbo.config.DubboServiceConfigBase
....

advantages

This change feels more meaningful for reading our source code
Do you think the change is worth it?

feature

first plan

delete org.apache.dubbo.config.ServiceConfig  and  add org.apache.dubbo.config.spring.DubboServiceBean

second plan

Add @Deprecated to org.apache.dubbo.config.ServiceConfig and add org.apache.dubbo.config.spring.DubboServiceBean

expect

Is there a plan for this change in the future?

Now I suddenly came up with a good idea。TO clean Clean up expired classes in the project

TODO

Added a new project name called dubbo-adapter

the dubbo-adapter Provides support for expired classes ，example:

@Service convert to @DubboService
@Reference convert to @DubboReference
ServiceClassPostProcessor support to @Service 、@Reference

These expired classes can be removed from the dubbo project

if users want to upgrade the new version and don't want to change your code。must be add the dubbo-adapter GAV。
Dubbo Engineering only provides the new class : DubboServiceClassPostProcessor

dubbo project  project.version ==  dubbo-adapter project project.version

Feature

the dubbo project add new Feature and it does not contain expired classes
the dubbo-adapter Provides adaptive functionality for dubbo users to upgrade the new version。

Now I suddenly came up with a good idea。TO clean Clean up expired classes in the project

TODO

Added a new project name called dubbo-adapter

the dubbo-adapter Provides support for expired classes ，example:

@Service convert to @DubboService
@Reference convert to @DubboReference
ServiceClassPostProcessor support to @Service 、@Reference

These expired classes can be removed from the dubbo project

if users want to upgrade the new version and don't want to change your code。must be add the dubbo-adapter GAV。
Dubbo Engineering only provides the new class : DubboServiceClassPostProcessor

dubbo project  project.version ==  dubbo-adapter project project.version

Feature

the dubbo project add new Feature and it does not contain expired classes
the dubbo-adapter Provides adaptive functionality for dubbo users to upgrade the new version。

Hi, @Darian1996
Thanks for your suggestion.
The reason why moving @Reference and @Service to @DubboReference and @DubboService is to make it more recognizable between Dubbo and Spring.
Service is a differenct concept both in Spring and Dubbo ( also in RPC ).
Maybe you can try to understand Service separately from Spring, and then Service is a clear concept for RPC. Also, ServiceConfig is reasonable for Dubbo.

Hi, @Darian1996
Thanks for your suggestion.
The reason why moving @Reference and @Service to @DubboReference and @DubboService is to make it more recognizable between Dubbo and Spring.
Service is a differenct concept both in Spring and Dubbo ( also in RPC ).
Maybe you can try to understand Service separately from Spring, and then Service is a clear concept for RPC. Also, ServiceConfig is reasonable for Dubbo.

我的理解，@DubboService拥有两个功能：Dubbo服务和Spring服务,但是对于小白来说,他可能会认为@DubboService只是定义了一个Dubbo服务,他很有可能会在用@DubboService的同时也用了Spring中的@Service,但实际上这不是必须的,大家可以讨论一下


press kit: add/link to quick facts 2024 johnr365

quick fix for the broken monerooutreach link.
we could add "(outdated)" to the title, however this is a translated string, and could complicate things.
#2228
replaces #2189 which adds the 2018 version

Also agree with the [OUTDATED] or (outdated) etc added to the title

we have a new quick-facts doc
https://resilience365.com/monero-quick-facts/
Johnr365 :sob: :heart:

The PDF file (https://resilience365.com/files/QuickFacts.pdf) is easier to read. Its better to link the PDF file instead the web page.
Why? Because its quick facts and needs to be easier to read.

The PDF file (https://resilience365.com/files/QuickFacts.pdf) is easier to read. Its better to link the PDF file instead the web page.
Why? Because its quick facts and needs to be easier to read.

After some more thought, i think we should leave it linking to the page html page (https://resilience365.com/monero-quick-facts)

To give proper credit
Access to both printer friendly and full color versions

The PDF file (https://resilience365.com/files/QuickFacts.pdf) is easier to read. Its better to link the PDF file instead the web page.
Why? Because its quick facts and needs to be easier to read.

i will offer some reasons as to why i disagree and favour the .html page:

the original linked to a .html page so its a like-for-like replacement
the ,html link contains the (PDF) and printer friendly version directly after landing on the page with the text based one below. this immediately presents the visitor with all available versions.
johnr365 voluntarily created all 3 versions of this document, and by linking to just 33% of this contribution we would also be reducing the credits that should be awarded to him for doing so
johnr365 is active and has a track record of 'keeping his site online / responding to issues with it promptly'

Also, when info is updated, we wont have to keep coming back to mirror it
(example: i plan to contact john in regards to updating the node count to match monero.fail's 12000 number)

then i think that page needs to be improved, it has to be easy to read for inpatient people and newcomers

aside from the header, you have
the opening credits:

Prior to the Monero Outreach site going offline, they had created a Quick Facts PDF that summarized key features of Monero.
It was last updated in May 2019. Rather than let it die (source), I’ve updated it here, with full credit to Monero Outreach for the original content:

links to pdf follow the credits, and the remainder of the page is a text copy of the pdf

there's still Monero_QuickFacts_June_2024.pdf in the repo, is that ok?

there's still Monero_QuickFacts_June_2024.pdf in the repo, is that ok?

https://github.com/monero-project/monero-site/pull/2226#discussion_r1666991694


Bump to version 1.27.0-dev

CC @guantaol

Unrelated Failures:

https://github.com/grpc/grpc/issues/21362
https://github.com/grpc/grpc/issues/21363
PHP Failure caused by gcr.io or network flake
https://github.com/grpc/grpc/issues/21364


How to get outerHTML of an element?

My code needs to analyze the markup in order to make a decision as to how to proceed.
Will this be possible?

I found this:
$Element.GetAttribute("outerHTML")

https://stackoverflow.com/a/32238342/722393


Popover down does not fit when using 13" screens

Currently the configuration of the bootstrap popover has the placement set to bottom. This means that smaller screens (for example a 13" MBP) would not be able to see the full content of the popover. By changing this to right, it would allow the content to be displayed correctly, without going outside the screen!
Discovered this problem today in an instance of avrodoc, and found it already reported at https://github.com/ga4gh/dwg-website/issues/4

Looks like there's a problem with the build process causing an error. Crashes out before it even runs any tests.


Caltech 101 data split?

Great work !
Could you please also provide the data split of the Caltech-101 dataset to reproduce the results in the paper?
Thanks a lot.

Good point! These can now be found in the caltech101-splits folder.
Best wishes,
Linus


rockspec: LIBUV: specify library='uv'

This is required for LuaRocks to find libuv on Windows.
Ref: https://github.com/neovim/neovim/pull/10292#issuecomment-506924822
/cc @erw7

I'll test this later with our PR that upgrades LuaRocks to confirm that it helps fixing it.

Works.


life time for the UUID generator?

Before using this library i just want to know will this uuid be generated everytime i open my app or else. it will generated for the first time when the app is installed and will be removed after uninstalling the app.

I'm not the maintainer but I will trying to answer your question..
I think this lib will generate the id everytime when the function is called.. so you must check before, if your device is not already have this uuid, then generate, else use the generated id before... (from asyncstorage or etc)..
CMIIW


Fix /redir to global room message

I still don't get it. What is this doing?

"User is already in room undefined!"

That message would never happen. It would be
"User Morfent is already in room undefined!"
Your commit just changes it to
"User Morfent is already in room morfent!"
Which is equally silly.

Also, what kind of command would produce that message?

Is it /redir morfent, global? If so, we probably want a custom message like "You can't redirect to the global room."

Added a separate message if targetRom.id === "global"


Improve the protocol between Postgres and page server.

Use different message formats for different kinds of response messages.

Add an Error message, for passing errors from page server to Postgres.
Previously, we would respond to 'exists' request with 'false', and
to 'nblocks' request with 0, if an error happened. Fix those to return
an error message to the client. GetPage requests had a mechanism to
return an error, but it was just a flag with no error message.

Add a flag to requests, to indicate that we actually want the latest
page version on the timeline, and the LSN is just a hint that we know
that there haven't been any modifications since that LSN. The flag isn't
used for anything yet, but I'm planning to use it to fix
https://github.com/zenithdb/zenith/issues/567

Initially I was going to ask to add protocol version field in messages as we don't have it now, but after some thinking it seems that if we want to change protocol via rolling update we can add new pagestream2/pagestream_new command with altered protocol and drop previous pagestream command on the next update.


Add automatic constraint logic when ContainerCreate fails because of an OSType mismatch

If the swarm contains hybrid nodes (ie: linux nodes and windows nodes), if the client does not specify an ostype constraint when creating a container, it fails randomly because there can be a mismatch between the image os and the engine os.
This PR automatically detect OS mismatch when creating a container, and retries the operation with an ostype constraint.

@simonferquel thanks for your contribution. I've added this PR to the 1.2.8 milestone. Once the upcoming release is done, I'll review and merge it (I've already gone over the code and it looks acceptable, but I need to look in more detail and wait for tests to pass).

@simonferquel could you please rebase this PR?

done


[Bug]:

All of the following criteria must be met

[X] Full Latest.log file included. If no file exists then leave this unchecked and state so.

All of the following are optional to answer

[X] Tried reinstalling the game.
[X] Tried reinstalling LemonLoader.
[X] Tried restarting device.

Describe the issue.
not working
Did you attach your log file?

[X] Yes, I attached my log file to the text box above.
[X] No, I could not find a log file at /storage/emulated/0/Android/data/<package name>/files/melonloader/etc/Latest.log

No information given.


added a separate alias script

Mipmap can be known to have some issues whilst trying to render textures (such as model shadows) so I added in a reload

I'm not personally familiar with this particular rendering issue, but I don't think it hurts to have a few more aliases in there considering I only had one before (I believe). Thanks!