Add troubleshooting note on Linux

On Linux, the kernel will deny access to read/write another process' memory by default. The easiest way to get around this (without enabling it for all processes) is to run setcap cap_sys_ptrace=eip path/to/Dolphin-memory-engine.
Just thought you might want to mention that on the README.md and/or perhaps within the application, else the program appears to immediately unhook after hooking.

This is odd, can I have a link or something that explain this in details?
The reason I ask this is because on my arch linuc, I haven't edited the kernel that the repository provides and this syscall worked perfectly on the first try, when I was doing a prototype.
Perhaps this is true with a particular version of the kenerl?

Huh - heck I use Arch Linux also, with the stock kernel.
$ uname -r
4.15.6-1-ARCH

Just checked again (This time using DME both from the releases and building it myself, in case something recent happened (unlikely, but eh)) - yup still needed to setcap.
As for a link, I just used their Wiki section on Dwarf Therapist :P https://wiki.archlinux.org/index.php/Dwarf_Fortress#Dwarf_Therapist

Some more searching later, I found this: http://man7.org/linux/man-pages/man5/proc.5.html (As it appears, from a quick scan through your source code, that you just use /proc/pid/maps to access Dolphin's memory)

/proc/[pid]/maps
A file containing the currently mapped memory regions and
their access permissions.  See mmap(2) for some further infor‐
mation about memory mappings.
Permission to access this file is governed by a ptrace access
mode PTRACE_MODE_READ_FSCREDS check; see ptrace(2).

That man page then links to the ptrace(2) page: http://man7.org/linux/man-pages/man2/ptrace.2.html

The algorithm employed for ptrace access mode checking determines
whether the calling process is allowed to perform the corresponding
action on the target process.  (In the case of opening /proc/[pid]
files, the "calling process" is the one opening the file, and the
process with the corresponding PID is the "target process".)  The
algorithm is as follows:
[...]

Deny access if neither of the following is true:

· The real, effective, and saved-set user IDs of the target match
the caller's user ID, and the real, effective, and saved-set
group IDs of the target match the caller's group ID.
· The caller has the CAP_SYS_PTRACE capability in the user
namespace of the target.

In this case, the caller DME does not have the CAP_SYS_PTRACE capability

ok then, I will amend the readme when I get some time for it, thanks for reporting :)

Addresses in https://github.com/aldelaro5/Dolphin-memory-engine/commit/9d25226e086ef9796297430957d6db106a7e1917


Hrqb 12 setup qb api and load tasks

Purpose and background context
This PR adds a QBClient class (commit) that is designed to interact with the Quickbase (QB) API.
This client handles logistical things like API credentials, making requests, etc., but also includes some helper methods to query and upsert data to QB.
Example: when upserting data into QB, you must provide a QB Field ID instead of the Field name.  These Field IDs are not obvious, and would be cumbersome to code against in the ETL work.  This client allows for upserting data via the method upsert_records() that accepts a {Field name:value} structure, where it retrieves information about the table and converts the upload payload to {Field id:value} structure on-the-fly.
Currently there are a couple of additional methods to get information about the QB app, and otherwise describing QB Tables and Fields.  It is anticipated as this hrqb-client develops, additional convenience methods will be added (e.g. querying records or displaying statistics) that may be directly accessble via CLI commands.
In summary, this QBClient will be the primary tool used by Load Tasks to upsert data into Quickbase.
These changes also introduce two new important env vars:

QUICKBASE_API_TOKEN: API token used by this app to connect to QB
QUICKBASE_APP_ID: identifier of the QB app

How can a reviewer manually see the effects of these changes?
Without any CLI commands yet, the best way to get a quick understanding of this client is an ipython shell.
Set env vars:
QUICKBASE_API_TOKEN=M<TOKEN HERE>
QUICKBASE_APP_ID=bt5hg8uz7

Start shell:
pipenv run ipython

Explore the client a bit:
from hrqb.utils.quickbase import QBClient

# instantiate client
qbclient = QBClient()

# get Quickbase app information
qbclient.get_app_info()

# get a pandas Dataframe of all Tables
 qbclient.get_tables()

# get Table ID from a name
qbclient.get_table_id("HRQBClient Messages")

# the QBClient caches requests when the path + parameters are identical
# this is helpful for methods that have to re-run queries to get Table and Field identifiers
# the following shows the keys in the cache dictionary, hinting at how it's stored and checked
# when new requests are made
qbclient._cache.keys()

# get all Fields for a Table
qbclient.get_table_fields(qbclient.get_table_id('HRQBClient Messages'))

# get a Field Name-to-ID map that is used by upserting methods
qbclient.get_table_fields_name_to_id(qbclient.get_table_id('HRQBClient Messages'))

# demonstrate how upserts are performed
# 1. create an upsert payload, using human-friendly Field names like 'Message'
upsert_payload = qbclient.prepare_upsert_payload(
    qbclient.get_table_id('HRQBClient Messages'),
    [
        {
            "Message":"Hello World!"
        }
    ],
    merge_field=None
)

# look at payload
display(upsert_payload)

#2. upsert into Table 'HRQBClient Messages'
# note the output, which is effectively the output artifact of a Load Task
# when they are built in future PRs
qbclient.upsert_records(upsert_payload)

Includes new or updated dependencies?
YES
Changes expectations for external applications?
NO
What are the relevant tickets?

https://mitlibraries.atlassian.net/browse/HRQB-12

Developer

[X] All new ENV is documented in README
[X] All new ENV has been added to staging and production environments
[X] All related Jira tickets are linked in commit message(s)
[X] Stakeholder approval has been confirmed (or is not needed)

Code Reviewer(s)

[ ] The commit message is clear and follows our guidelines (not just this PR message)
[ ] There are appropriate tests covering any new functionality
[ ] The provided documentation is sufficient for understanding any new functionality introduced
[ ] Any manual tests have been performed or provided examples verified
[ ] New dependencies are appropriate or there were no changes

@jonavellecuerdo - you had asked in the last PR where and when Task.table_name would be used.
While only used for QuickbaseUpsertTask at this time, here is an example of it becoming helpful as the Tasks start to take more shape: https://github.com/MITLibraries/hrqb-client/pull/8/files#diff-d86e429c2a92dbd803698c92d15054d84cd0886541acd33a95f26ec5e48d39e6R87.


fix(space-wizard): create space ux improvements fixes

closes #589
fixes some styling issues on create space and fixes close button

There were the following issues with your Pull Request

Commit: e57814a92b65907d3e937332338c7853f041158f
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

Can one of the admins verify this patch?

@mitchharpur snapshot fabric8-ui is deployed and available for testing at https://fabric8-ui-fabric8-ui-pr-812-fabric8-ui.int.rdu2c.fabric8.io

There were the following issues with your Pull Request

Commit: 0fdaa38e3f78b918561ac3e0810dba66fb7e0cd5

Your subject line is longer than 50 characters

Commit: deca440345caae391260601c162585cafb1ba085

Commits must be in the following format: %{type}(%{scope}): %{description}

Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

There were the following issues with your Pull Request

Commit: 32db4d1a6a86dc422620ef02736b1b44cbb6aca8

Your subject line is longer than 50 characters

Commit: 5b96c8de9b3d39b59b40626604c77feffd4e5143

Commits must be in the following format: %{type}(%{scope}): %{description}

Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

There were the following issues with your Pull Request

Commit: 32db4d1a6a86dc422620ef02736b1b44cbb6aca8

Your subject line is longer than 50 characters

Commit: 5b96c8de9b3d39b59b40626604c77feffd4e5143

Commits must be in the following format: %{type}(%{scope}): %{description}

Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

[test]

@mitchharpur snapshot fabric8-ui is deployed and available for testing at https://fabric8-ui-fabric8-ui-pr-812-fabric8-ui.int.rdu2c.fabric8.io


RegisterMany Question

Hello,
I am trying to use the RegisterMany function restricting to the following two interfaces (MediatR):
INotificationHandler<>
IRequestHandler<,>

container.RegisterMany(new[]
{
    typeof(VehicleDenormalizer).GetAssembly(),
}, Registrator.Interfaces);

How could I use the RegisterMany to only register the two interfaces?
Thanks!

I think the questions are better to be asked on StackOverflow.
But nevertheless you may try:
container.RegisterMany(new[]
{
    typeof(VehicleDenormalizer).GetAssembly(),
}, type => {
   if (!type.IsInterface() || !type.IsGeneric())
       return false;
   var openGenericInterfaceType = type.GetGenericTypeDefinition();
   if (openGenericInterfaceType == typeof(INotificationHandler<>) ||
       openGenericInterfaceType == typeof(IRequestHandler<,>))
       return true;
    return false;
});

ok thank you I will ask all further questions on stack!


Abhinav

r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
r.status_code
200
r.headers['content-type']
'application/json; charset=utf8'
r.encoding
'utf-8'
r.text
'{"type":"User"...'
r.json()
{'private_gists': 419, 'total_private_repos': 77, ...}

Description

Motivation and Context

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Enhancement (changes that improvement of current feature or performance)
[ ] Refactoring (changes that neither fixes a bug nor adds a feature)
[ ] Test Case (changes that add missing tests or correct existing tests)
[ ] Code style optimization (changes that do not affect the meaning of the code)
[ ] Docs (changes that only update documentation)
[ ] Chore (changes that don't modify src or test files)

Self Check before Merge

[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

@lingareddy003  后面那段代码代表什么意思？


ARROW-15877: [C++] Add a C++ query testing tool

12586

 Quality gate: Failed
40 Issues

 2 Vulnerabilities
 37 Code issues
 1 Anti-patterns

Details

 Quality gate: Failed
149 Issues

 13 Vulnerabilities
 136 Code issues

Details


Same task query

There are problems in fetching database data if two task queries are same.

It seems the problems no longer exist.


run length

https://atcoder.jp/contests/abc283/tasks/abc283_c

#123

https://atcoder.jp/contests/abc283/submissions/38592086


Patch 3

Added pull request to accountCreate.php, courseCreate.php, assignmentCreate.php
still in progress the date time picker on assignmentCreate.php

Awesome! Thanks!


GSW as a service

A script which creates a .service file, enabling GSW to be run as a service

?

Nvm. Figured out why. Maybe add to the README for setting this up. Need to test further too btw. I see it has the correct perms now, but when running mem_view, it still complains about failing to open file, and I cant run sims atm

when running mem_view, it still complains about failing to open file
I believe I fixed this

Awesome! That seems better. Only comments are to update the README with instructions for setting it up as a service and  I'll approve it for merging

MURGE


Experimental: Train on adherence task

(Sorry about that! Fat fingered this; meant for this to still be on my fork)


For symbols with built-in affiliation, maybe set affiliation Identity/attribute

Some symbols (Maneuver area  Axis of Advance, Main Attack, Friend)
draw with the Unknown (yellow) symbol color if you pick them from the list and start drawing.
Maybe we could automatically set the attribute to Friend for these features?

@BobBooth - forgot to let you know this was ready to verify using the daily build location.
One note the preview for some of these won't change color (there is only 1 version for control measures), but the affiliation attribute and symbol on the map should now reflect the symbol name if it has "Friend" etc. for line/area (I believe it only did points before)

Verified.  I saw that, thought it was an error at first, but I see obstacles can be tagged "Friend" but should be drawn in green anyway.


Allow styling keyword

Is your feature request related to a problem? Please describe.
I would like to be able to style the command keyword differently thant the rest of the query (bold + border)

Implemented with .plugin-hint


[Improve] Auto close File Resource.

Purpose of this pull request
Improve Code style about Auto close file resouce.

hi my friend, I'm very glad to see your pr, but some checks have failed,  You can improve it 👍

good job ! da lao.😂👍👍 I looking forward to your next contribution

coming soon🌝🌝
---Original---
From: @.>
Date: Thu, Apr 21, 2022 09:58 AM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [streamxhub/streamx] [Improve] Auto close File Resource. (PR #961)
good job ! da lao.😂👍👍 I looking forward to your next contribution
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Added wrapper documentation

Added documentation about wrappers:

Generic / Custom
MOOSE
Openfoam

To be clear, I suggest to reword as it implies that it is automatically generated, but this wrapper for each simulation would need to be developed once.


Please detail breaking changes

The release notes for v1.0 say "This release contains breaking changes".
But what are the breaking changes? Are all six features/fixes going to cause breakages to any pre 1.0 installation? Or only one of them, in certain situations? What do I need to do to prevent things breaking?

Hey @philgyford
Thanks for bringing that to my attention!
The breaking changes:

The experimental flag auto_session_tracking has been moved to a proper option that is set to True by default
The experimental flag session_mode has been removed in favor of auto detecting the mode from within the sdk

Let me know if you have another questions


Parse LinkByIds

Adds support for parsing LinkById tags in object description and x_mitre_detection fields. These are displayed as hyperlinks which link to the linked object's page on the Workbench. Also adds validation for LinkByIds- checks for missing or broken links & notifies the user if any are found before saving an object.
Resolves #279

If it is possible would be ideal if the API is only called if the ID is valid

My concern with only calling the REST API on valid ATT&CK IDs is that it would add an extra REST API call to grab all objects for each ID, which we’d use to verify if the ID is valid. If it is valid, we would do another REST API call to grab the object. This would cause two REST API calls per ID, including a pretty expensive call to retrieve all objects.


Translate French

Checklist

[X] I have filled out the template to the best of my ability.
[X] This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
[X] This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.
Hello,
in french the "midi solaire" is "Zenith".
You can change this world translate to "Zenith" for more short and must good french :)
Thx
Describe the solution you'd like
Change in translate french this word "midi solaire" to "Zenith"
Describe alternatives you've considered
Change in translate french this word "midi solaire" to "Zenith"
Additional context
Is most french for all population french 👍

Hello,
it's ok in 0.72.5 version. Thanks for help.


Update master to build with Xcode 8 beta 4, OS X 10.12, iOS 10, tvOS …

What's in this pull request?
Updating master branch to build with Xcode 8 beta 4
Resolved bug number: (SR-)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

A smoke test on macOS does the following:

Builds the compiler incrementally.
Builds the standard library only for macOS. Simulator standard libraries and
device standard libraries are not built.
lldb is not built.
The test and validation-test targets are run only for macOS. The optimized
version of these tests are not run.

A smoke test on Linux does the following:

Builds the compiler incrementally.
Builds the standard library incrementally.
lldb is built incrementally.
The swift test and validation-test targets are run. The optimized version of these
tests are not run.
lldb is tested.

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

…10, and watchOS 3 SDKs.

@swift-ci Please test


Generic bench arguments cause compilation failure

When the benchmark function is defined with generic type parameters, and instantiated with more than 1 unique type, it causes a compilation error with the text:
   Compiling generic-callgrind-issue v0.1.0 (/private/tmp/generic-callgrind-issue)
error: symbol `iai_callgrind::bench::bench_format` is already defined
  --> src/main.rs:24:1
   |
24 | fn bench_format<I: std::fmt::Debug>(input: I) -> usize {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: could not compile `generic-callgrind-issue` (bin "generic-callgrind-issue") due to 1 previous error

I've attached a ZIP file containing a minimal crate reproduction for the error repo.zip. I had to look into the macro-expanded output to see why this was happening. Here is the expanded output for the attached crate:

Click to expand
#![feature(prelude_import)]
#[prelude_import]
use std::prelude::rust_2021::*;
#[macro_use]
extern crate std;
use iai_callgrind::{black_box, library_benchmark, library_benchmark_group, main};
struct A;
#[automatically_derived]
impl ::core::fmt::Debug for A {
    #[inline]
    fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
        ::core::fmt::Formatter::write_str(f, "A")
    }
}
fn input_a() -> A {
    A
}
struct B;
#[automatically_derived]
impl ::core::fmt::Debug for B {
    #[inline]
    fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
        ::core::fmt::Formatter::write_str(f, "B")
    }
}
fn input_b() -> B {
    B
}
fn run_format(input: impl std::fmt::Debug) -> usize {
    {
        let res = ::alloc::fmt::format(format_args!("{0:?}", input));
        res
    }
        .len()
}
mod bench_format {
    use super::*;
    #[inline(never)]
    #[export_name = "iai_callgrind::bench::bench_format"]
    fn bench_format<I: std::fmt::Debug>(input: I) -> usize {
        black_box(run_format(input))
    }
    pub const BENCHES: &[iai_callgrind::internal::InternalMacroLibBench] = &[
        iai_callgrind::internal::InternalMacroLibBench {
            id_display: Some("a"),
            args_display: Some("input_a()"),
            func: a,
            config: None,
        },
        iai_callgrind::internal::InternalMacroLibBench {
            id_display: Some("b"),
            args_display: Some("input_b()"),
            func: b,
            config: None,
        },
    ];
    #[inline(never)]
    pub fn get_config() -> Option<
        iai_callgrind::internal::InternalLibraryBenchmarkConfig,
    > {
        None
    }
    #[inline(never)]
    pub fn a() {
        let _ = std::hint::black_box(bench_format(std::hint::black_box(input_a())));
    }
    #[inline(never)]
    pub fn b() {
        let _ = std::hint::black_box(bench_format(std::hint::black_box(input_b())));
    }
}
mod bench_format_group {
    use super::*;
    pub const BENCHES: &[&(
        &'static str,
        fn() -> Option<::iai_callgrind::internal::InternalLibraryBenchmarkConfig>,
        &[::iai_callgrind::internal::InternalMacroLibBench],
    )] = &[
        &("bench_format", super::bench_format::get_config, super::bench_format::BENCHES),
    ];
    #[inline(never)]
    pub fn get_config() -> Option<
        ::iai_callgrind::internal::InternalLibraryBenchmarkConfig,
    > {
        let mut config: Option<
            ::iai_callgrind::internal::InternalLibraryBenchmarkConfig,
        > = None;
        config
    }
    #[inline(never)]
    pub fn compare() -> bool {
        let mut comp: bool = false;
        comp
    }
    #[inline(never)]
    pub fn run(group_index: usize, bench_index: usize) {
        (BENCHES[group_index].2[bench_index].func)();
    }
}
#[inline(never)]
fn run() {
    let mut this_args = std::env::args();
    let exe = ::core::option::Option::None::<&'static str>
        .unwrap_or_else(|| {
            ::core::option::Option::None::<&'static str>
                .unwrap_or("iai-callgrind-runner")
        });
    let library_version = "0.11.1";
    let mut cmd = std::process::Command::new(exe);
    cmd.arg(library_version);
    cmd.arg("--lib-bench");
    cmd.arg("/private/tmp/generic-callgrind-issue");
    cmd.arg("generic-callgrind-issue");
    cmd.arg("src/main.rs");
    cmd.arg("generic_callgrind_issue");
    cmd.arg(this_args.next().unwrap());
    let mut config: Option<::iai_callgrind::internal::InternalLibraryBenchmarkConfig> = None;
    let mut benchmark = ::iai_callgrind::internal::InternalLibraryBenchmark {
        config: config.unwrap_or_default(),
        command_line_args: this_args.collect(),
        ..Default::default()
    };
    let mut group = ::iai_callgrind::internal::InternalLibraryBenchmarkGroup {
        id: Some("bench_format_group".to_owned()),
        config: bench_format_group::get_config(),
        compare: bench_format_group::compare(),
        benches: ::alloc::vec::Vec::new(),
    };
    for (bench_name, get_config, macro_lib_benches) in bench_format_group::BENCHES {
        let mut benches = ::iai_callgrind::internal::InternalLibraryBenchmarkBenches {
            benches: ::alloc::vec::Vec::new(),
            config: get_config(),
        };
        for macro_lib_bench in macro_lib_benches.iter() {
            let bench = ::iai_callgrind::internal::InternalLibraryBenchmarkBench {
                id: macro_lib_bench.id_display.map(|i| i.to_string()),
                args: macro_lib_bench.args_display.map(|i| i.to_string()),
                bench: bench_name.to_string(),
                config: macro_lib_bench.config.map(|f| f()),
            };
            benches.benches.push(bench);
        }
        group.benches.push(benches);
    }
    benchmark.groups.push(group);
    let encoded = ::iai_callgrind::bincode::serialize(&benchmark)
        .expect("Encoded benchmark");
    let mut child = cmd
        .arg(encoded.len().to_string())
        .stdin(std::process::Stdio::piped())
        .spawn()
        .expect(
            "Failed to run benchmarks. \
                    Is iai-callgrind-runner installed and iai-callgrind-runner in your $PATH?. \
                    You can also set the environment variable IAI_CALLGRIND_RUNNER to the \
                    absolute path of the iai-callgrind-runner executable.",
        );
    let mut stdin = child
        .stdin
        .take()
        .expect("Opening stdin to submit encoded benchmark");
    std::thread::spawn(move || {
        use std::io::Write;
        stdin.write_all(&encoded).expect("Writing encoded benchmark to stdin");
    });
    let status = child.wait().expect("Wait for child process to exit");
    if !status.success() {
        std::process::exit(1);
    }
}
fn main() {
    let mut args_iter = std::hint::black_box(std::env::args()).skip(1);
    if args_iter.next().as_ref().map_or(false, |value| value == "--iai-run") {
        match std::hint::black_box(args_iter.next().expect("Expecting a function type"))
            .as_str()
        {
            "bench_format_group" => {
                let group_index = std::hint::black_box(
                    args_iter
                        .next()
                        .expect("Expecting a group index")
                        .parse::<usize>()
                        .expect("Expecting a valid group index"),
                );
                let bench_index = std::hint::black_box(
                    args_iter
                        .next()
                        .expect("Expecting a bench index")
                        .parse::<usize>()
                        .expect("Expecting a valid bench index"),
                );
                bench_format_group::run(group_index, bench_index);
            }
            name => {
                ::core::panicking::panic_fmt(
                    format_args!("function \'{0}\' not found in this scope", name),
                );
            }
        }
    } else {
        std::hint::black_box(run());
    };
}

The problematic bit is:
    #[export_name = "iai_callgrind::bench::bench_format"]
    fn bench_format<I: std::fmt::Debug>(input: I) -> usize {
        black_box(run_format(input))
    }

When more than one generic type is substituted for I, I think there is a clash in since multiple symbols have the same export name, leading to the error.

I'm not quite sure how to fix this, or if it even needs to be fixed. Maybe better documentation warning against this practice of generic benchmark function? I think rustc could definitely do a better job with this error message, it took me so long to figure this out.
Thank you so much for working on iai-callgrind, I think its a really neat tool!

Hi. Thanks for investigating. This surely wasn't easy to figure out. You're right, there should be a comment in the documentation. I guess the error message can be improved, too.

Would you accept a change to the iai-callgrind proc-macro that would throw an error if the benchmark function had generic arguments? I was considering if it would be possible to just scan through the ItemFn.signature to look for generics and throw an error, but I haven't worked much with proc-macros.
This would also be a breaking change, would that be an issue?

The idea is good but please wait. I have to try first, but I may have a solution which would allow generic benchmark functions.


Update request: glab 1.40.0 → 1.48.0

Package name: glab
Latest released version: 1.48.0

see: https://gitlab.com/gitlab-org/cli/-/releases

Current version on the unstable channel: 1.47.0

see:  https://search.nixos.org/packages?channel=unstable&show=glab&from=0&size=50&sort=relevance&type=packages&query=glab

Current version on the stable/release channel: 1.40.0

see: https://search.nixos.org/packages?channel=24.05&show=glab&from=0&size=50&sort=relevance&type=packages&query=glab

[X] Checked the nixpkgs pull requests

Notify maintainers

@freezeboy
Note for maintainers: Please tag this issue in your PR.

Add a :+1: reaction to issues you find important.

@khaneliman @freezeboy thank you for updating this.
I Tried to update my home-manager (still using the unstable channel) but it's still reporting as the 1.47.
Even removed and installed again to make sure:
$ glab --version
Current glab version: 1.47.0
A new version of glab has been released: 1.47.0 -> v1.48.0
https://gitlab.com/gitlab-org/cli/-/releases/v1.48.0

I see it in unstable:
https://nixpk.gs/pr-tracker.html?pr=349813
I see it locally as the correct version:
, glab --version
Current glab version: 1.48.0

Thank you @khaneliman. It was actually an issue with my configs and the channels.
It's working now.
I'll open a new request since gitlab updated the version to 1.49.


rewrite db update interface

Rewrite addRecord, bulkAddRecord Interface. Now it can specified whether to use INSERT, UPDATE, or REPLACE to update the db.
I've update to calling site of the above methods, and ran only a few tests, but more tests would be needed to make sure it works fine.
Note: in setBindings, the order should be the same as column order in the dbAdapter constructor, and UID always comes last.
Note2: When not sure whether INSERT or UPDATE is appropriate, maybe REPLACE should be used.
P.S. In AccountActivity.init(), PreferenceManager.setDefaultValues(this, R.xml.fragment_transaction_preferences, false); fails. The App can work with this line commented out.
P.S.2 In GnuCashApplication.getDefaultCurrencyCode(),         SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); fails when the db is empty, e.g. it fails for a newly installed App.

@fefe982 thanks for the pull request. I will test and merge shortly now that holidays are over.
@rivaldi8 inserts are for when you are creating a new record, updates for changing an existing one. Depending on what you are doing it is usually very clear what you want to accomplish.
I personally would also prefer simple addRecord() and updateRecord() methods which inserted or updated respectively, rather than having to specify an update method as extra parameter. But we can always add these to the base adapter class later and refactor.

If you don't know which one to use, use replace.


Evaluate: Trending Paper

http://www.cl.cam.ac.uk/~rja14/Papers/making-bitcoin-legal.pdf

Based on the abstract and its criticism, I don't think it's a good use of time to go through it.


redux [nfc]: Give an activeAccountDispatch to global thunk actions

As foreshadowed in some comments, and requested by @chrisbobbe in chat.
This is also one of the pieces we'll need for #5006.

Thanks, LGTM! Merging.


pickerStyle seem to have no effect!

Thanks for the great library. It's really easy to use. However, I am having trouble styling the actual dropdown component. I want to change it's background colour and add a top border. The prop that came to mind that could achieve this is pickerStyle. However, it doesn't seem to have any effect on the styling. Any help on this would be greatly appreciated. Cheers!
<Dropdown       textColor='#efe1db'               baseColor="#efe1db"               itemColor='#efe1db'               selectedItemColor='#000'               value={data[0].value}               data={data}               dropdownPosition={0}               label=""               labelHeight={10}               // inputContainerStyle={               //   {backgroundColor: "red"}               // }               pickerStyle={{                 width: 300,                 borderTopWidth: 2,                 borderTopColor: '#78818a',                 backgroundColor: '#3c3d3e',               }}             />

Thanks for question, please verify component version as pickerStyle is available since 0.5.0.

This worked for 0.5.0. Cheers.


HL-476: Calculate maximum amount of pay subsidy based on pay subsidy percent

Description :sparkles:
Issues :bug:HL-476
If pay subsidy % is 100 then maximum monthly pay subsidy is 1800eur
otherwise the maximum is 1400eur
Testing :alembic:
backend/benefit/calculator/tests/test_models.py: test_pay_subsidy_maximum
Screenshots :camera_flash:
Additional notes :spiral_notepad:

Codecov Report

Merging #829 (63ba599) into develop (9ebf371) will increase coverage by 33.05%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##           develop     #829       +/-   ##
============================================
+ Coverage    62.53%   95.59%   +33.05%
============================================
  Files          822      175      -647
  Lines        21299     7538    -13761
  Branches      2131        0     -2131
============================================
- Hits         13320     7206     -6114
+ Misses        7613      332     -7281
+ Partials       366        0      -366

Impacted Files
Coverage Δ

backend/benefit/calculator/rules.py
93.75% <100.00%> (ø)

backend/benefit/calculator/tests/test_models.py
100.00% <100.00%> (ø)

backend/shared/shared/azure_adfs/views.py
41.17% <0.00%> (-41.18%)
:arrow_down:

backend/shared/shared/common/tests/conftest.py
80.48% <0.00%> (-19.52%)
:arrow_down:

backend/shared/shared/audit_log/audit_logging.py
87.23% <0.00%> (-12.77%)
:arrow_down:

backend/shared/shared/oidc/auth.py
81.48% <0.00%> (-1.86%)
:arrow_down:

...nd/shared/src/components/pages/ServerErrorPage.tsx

backend/shared/shared/common/tests/test_utils.py

...dler/src/hooks/backend/useYouthApplicationQuery.ts

...applicationReview/employmentView/EmpoymentView.tsx

... and 643 more

Continue to review full report at Codecov.

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


Test Serialization Traits

Some basic tests for serialization traits. Could grow this out later.
Fixes #11694.

[trickle] No significant performance differences

[microbenchmarks] No significant performance differences

[trickle] No significant performance differences

[microbenchmarks] No significant performance differences

So, revisiting this PR after ignoring it for two months: in the meanwhile, #12573 has landed and we have a new and (IMO) highly-preferable SerializationTraits API available since it directly uses the gRPC C++ API rather than dipping down into core. Would it be possible for you to base the tests in this PR on the new API?

Rebased the old stuff to master (it passes woo!). I will add tests for the new API as bus work (or plane work) sometime this week

[trickle] No significant performance differences

[microbenchmarks] Performance differences noted:
Benchmark                                                                                cpu_time    http2_pings_sent_per_iteration    locks_per_iteration    real_time
---------------------------------------------------------------------------------------------------  ----------  --------------------------------  ---------------------  -----------
BM_ClosureSched3OnCombiner                                                                           +5%                                                                  +5%
BM_HpackEncoderEncodeHeader<EmptyBatch>/0/16k                                                        +5%                                                                  +5%
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<1, true>>/0/16k                                 +5%                                                                  +5%
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<1, false>>/0/16k                             +5%                                                                  +5%
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<10, false>>/0/16k                            +4%                                                                  +4%
BM_HpackParserInitDestroy                                                                            +4%                                                                  +4%
BM_PumpStreamClientToServer<SockPair>/32k                                                                                +4%
BM_PumpStreamServerToClient<UDS>/256k                                                                                +7%
BM_StreamingPingPong<InProcessCHTTP2, NoOpMutator, NoOpMutator>/4k/1                                 +4%                                                                  +4%
BM_StreamingPingPong<InProcessCHTTP2, NoOpMutator, NoOpMutator>/512/2                                +5%                                                                  +5%
BM_StreamingPingPong<MinInProcessCHTTP2, NoOpMutator, NoOpMutator>/0/2                               +5%                                                                  +5%
BM_StreamingPingPong<MinTCP, NoOpMutator, NoOpMutator>/1/1                                           +4%                                                                  +5%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/0/2/1                     +6%                                                                  +6%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/4k/2/0                    +7%                                                                  +7%
BM_StreamingPingPongWithCoalescingApi<InProcessCHTTP2, NoOpMutator, NoOpMutator>/512/1/0             +4%                                                                  +4%
BM_StreamingPingPongWithCoalescingApi<MinInProcessCHTTP2, NoOpMutator, NoOpMutator>/128M/1/1                     -6%
BM_StreamingPingPongWithCoalescingApi<MinInProcessCHTTP2, NoOpMutator, NoOpMutator>/64/1/1           +18%                                                                 +19%
BM_UnaryPingPong<InProcess, Client_AddMetadata<RandomAsciiMetadata<10>, 1>, NoOpMutator>/0/0         +9%                                                                  +8%
BM_UnaryPingPong<InProcess, NoOpMutator, NoOpMutator>/1/0                                            +7%                                                                  +7%
BM_UnaryPingPong<InProcess, NoOpMutator, NoOpMutator>/8/0                                            +8%                                                                  +8%
BM_UnaryPingPong<InProcess, NoOpMutator, Server_AddInitialMetadata<RandomAsciiMetadata<31>, 1>>/0/0  +4%                                                                  +4%
BM_UnaryPingPong<InProcessCHTTP2, Client_AddMetadata<RandomAsciiMetadata<10>, 1>, NoOpMutator>/0/0   +11%                                                                 +12%
BM_UnaryPingPong<InProcessCHTTP2, NoOpMutator, NoOpMutator>/512/0                                    +4%                                                                  +4%
BM_UnaryPingPong<MinInProcess, NoOpMutator, NoOpMutator>/0/0                                         +5%                                                                  +5%
BM_UnaryPingPong<MinInProcess, NoOpMutator, NoOpMutator>/0/128M                                                                                +6%
BM_UnaryPingPong<MinInProcess, NoOpMutator, NoOpMutator>/8/0                                         +5%                                                                  +5%
BM_UnaryPingPong<MinInProcess, NoOpMutator, NoOpMutator>/8/8                                         +6%                                                                  +6%
BM_Zalloc/3k                                                                                +7%                                                                  +7%

Superceded by #13315


Permission Request to add to conan-center-index

Hello!
I was wondering if I could get your permission to take parts of your recipe to create a recipe in the conan-center-index ( https://github.com/GavinNL/conan-center-index )
I am not the owner of conan-center-index, but would like to make a pull request to include your recipe.

Sure thing, go ahead! 🙂


Feature/154/implement loading and validation of the file on add photo step

Implements validation.

The picture is now sent to firebase using a custom hook.
The component uses context. Also, in addition to the url of the picture, the ste context stores the file name, but it is not sent to the server.
Fixed the styles of the component.

!!! Stepper finish doesn't work because of problems with user update on backend !!!!
https://github.com/orgs/Space2Study-UA-1125/projects/1/views/1?pane=issue&itemId=56362403

How do you think, maybe it will be better to change size of photo for screen between 900px and 400px
It looks very huge

Changed the picture styles on sm screen size.


Problems using new restricted capability Microsoft.eSIMManagement_8wekyb3d8bbwe

When trying to use the ESimManager API the documentation says to use the restricted capability Microsoft.eSIMManagement_8wekyb3d8bbwe but when I use that Visual Studio reports a build error:
APPX0501: Validation error. error C00CE169: App manifest validation error: The app manifest must be valid as per schema: Line 41, Column 24, Reason: 'Microsoft.eSIMManagement_8wekyb3d8bbwe' violates pattern constraint of '[a-z][-_.A-Za-z0-9]+'. The attribute 'Name' with value 'Microsoft.eSIMManagement_8wekyb3d8bbwe' failed to parse.
It appears that the package manifest xml validation doesn't like the capital "M" as the first character. If I remove "Microsoft" or change the "M" to lower case the project builds but doesn't work because when I try to create a watcher I get a null pointer back even though the HRESULT is OK. I am assuming that this is caused by lack of capability priviledges.
I have tried to use the ESimManager API in both a C++ UWP console app as well as a C# UWP console app with similar results.

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

ID: f6367792-c630-e5ee-5c7f-ed3676e42a8a
Version Independent ID: 5440a962-b3bb-745e-4bb8-2ab5bc9f2ebf
Content: ESimManager Class (Windows.Networking.NetworkOperators) - UWP app developer
Content Source: https://cpubwin.visualstudio.com/DefaultCollection/windows-uwp/_git/winrt-api-build?path=%2fwinrt-api-build%2fwindows.networking.networkoperators.esimmanager.yml&version=GBlive&_a=contents
Product: windows
Git Login: wdg-dev-content
Microsoft Alias: wdg-dev-content

Hi, @mseilstad, thank you for raising this issue. I can reproduce the problem, so I'm currently making enquiries to find out more. I'll report back when I have more to share. Thanks! ~Steve

Hi, @mseilstad, the issue is that the docs incorrectly call this a restricted capability. It's actually a custom capability. To declare a custom capability, modify your app package manifest source file (Package.appxmanifest). Add the xmlns:uap4 XML namespace declaration, and use the uap4 prefix when you declare your custom capability. Here's an example.
<?xml version="1.0" encoding="utf-8"?>
<Package
    ...
    xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4">
...
<Capabilities>
    <uap4:CustomCapability Name="CompanyName.customCapabilityName_PublisherID"/>
</Capabilities>
</Package>

You can use the same capability approval process as described in restricted capabilities.
I've merged a fix to the docs, and that should be live within 24 hours. I'll leave this issue open until then. Apologies for the incorrect docs.
~Steve

Hi Steven,
Thanks for looking into this and resolving it. I have made your suggested updates to my application and my build error has gone away. Now I am moving onto a runtime error that I am getting which is caused (I think) by the fact I don’t have an SCCD for my app so I am trying to create a developer SCCD that will allow me to install and run my UWP console app and utilize the ESim APIs.
Best Regards,
-Mark Seilstad
From: Steven White<EMAIL_ADDRESS>Sent: Thursday, September 20, 2018 9:01 PM
To: MicrosoftDocs/winrt-api<EMAIL_ADDRESS>Cc: mseilstad<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/winrt-api] Problems using new restricted capability Microsoft.eSIMManagement_8wekyb3d8bbwe (#611)
Hi, @mseilstad https://github.com/mseilstad , the issue is that the docs incorrectly call this a restricted capability. It's actually a custom capability. To declare a custom capability, modify your app package manifest https://msdn.microsoft.com/library/windows/apps/BR211474  source file (Package.appxmanifest). Add the xmlns:uap4 XML namespace declaration, and use the uap4 prefix when you declare your custom capability. Here's an example.

<Package
...
xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4">
...

<uap4:CustomCapability Name="CompanyName.customCapabilityName_PublisherID"/>

You can use the same capability approval process as described in restricted capabilities https://docs.microsoft.com/windows/uwp/packaging/app-capability-declarations#restricted-capabilities .
I've merged a fix to the docs, and that should be live within 24 hours. I'll leave this issue open until then. Apologies for the incorrect docs.
~Steve
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/MicrosoftDocs/winrt-api/issues/611#issuecomment-423406444 , or mute the thread https://github.com/notifications/unsubscribe-auth/AQ9uN_4_pWNHSm-WlgCzH6jG1Zsw-7XKks5udGRegaJpZM4Wl7gv .  https://github.com/notifications/beacon/AQ9uN6h48RP-UegErc8AEKRJvxLpro1gks5udGRegaJpZM4Wl7gv.gif

Thanks, @mseilstad. If you identify any further errors/omissions in the documentation, then please raise an issue for that. I'll close this particular issue now.
~Steve

Hi Steven, Thanks for looking into this and resolving it. I have made your suggested updates to my application and my build error has gone away. Now I am moving onto a runtime error that I am getting which is caused (I think) by the fact I don’t have an SCCD for my app so I am trying to create a developer SCCD that will allow me to install and run my UWP console app and utilize the ESim APIs. Best Regards,
…
-Mark Seilstad From: Steven White<EMAIL_ADDRESS>Sent: Thursday, September 20, 2018 9:01 PM To: MicrosoftDocs/winrt-api<EMAIL_ADDRESS>Cc: mseilstad<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/winrt-api] Problems using new restricted capability Microsoft.eSIMManagement_8wekyb3d8bbwe (#611) Hi, @mseilstad https://github.com/mseilstad , the issue is that the docs incorrectly call this a restricted capability. It's actually a custom capability. To declare a custom capability, modify your app package manifest https://msdn.microsoft.com/library/windows/apps/BR211474 source file (Package.appxmanifest). Add the xmlns:uap4 XML namespace declaration, and use the uap4 prefix when you declare your custom capability. Here's an example.  <Package ... xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4"> ...  <uap4:CustomCapability Name="CompanyName.customCapabilityName_PublisherID"/>   You can use the same capability approval process as described in restricted capabilities https://docs.microsoft.com/windows/uwp/packaging/app-capability-declarations#restricted-capabilities . I've merged a fix to the docs, and that should be live within 24 hours. I'll leave this issue open until then. Apologies for the incorrect docs. ~Steve — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#611 (comment)> , or mute the thread https://github.com/notifications/unsubscribe-auth/AQ9uN_4_pWNHSm-WlgCzH6jG1Zsw-7XKks5udGRegaJpZM4Wl7gv . https://github.com/notifications/beacon/AQ9uN6h48RP-UegErc8AEKRJvxLpro1gks5udGRegaJpZM4Wl7gv.gif

@mseilstad  May I ask what runtime error do you get? and did you fix it by apply a SCCD ? Thank you.


Fix crash with consecutive commas in Dictionary

Fixes #52038

According to the report this syntax is invalid. So in addition to not crashing we should probably also display an error message for the user. Something like: "Cannot add empty element to dict."

There's already an error message if the key is empty.

This looks good to me, if you could add a test case for this it would be great.

@vnen Test added.

Thanks!


Set RAILS_ENV=test early in rake execution

This hack mirrors a hack in Rails for test::unit.
(See https://github.com/rails/rails/blob/99873ca1ea98d73c73f8be60dfce0a54224f4ea8/railties/lib/rails/test_unit/railtie.rb)
In my particular situation (general issue for XING), this change
prevents a problem with the use of the dotenv gem where environment
variable values for development leak into the test environment.
(See https://github.com/bkeepers/dotenv/issues/219 and https://github.com/bkeepers/dotenv/pull/241)

In general we recommend people do this in their spec_helper.rb and then load that as soon as possible, giving you more control. Can I ask why this doesn't work for you?

I'd have to investigate it putting code in the spec_helper.rb would avoid the problem with the dotenv gem.
We have 20+ rails projects using rspec and we are converting them all to use the dotenv gem. We are adding a patch to all the projects to deal with this problem, but it would be better (for us) if there was a centralized way of dealing this issue so we can pull the per-project code out.

We have 20+ rails projects using rspec and we are converting them all to use the dotenv gem. We are adding a patch to all the projects to deal with this problem, but it would be better (for us) if there was a centralized way of dealing this issue so we can pull the per-project code out.

The thing is the default RSpec Rails install doesn't need this patch, we do:
# This file is copied to spec/ when you run 'rails generate rspec:install'
ENV['RAILS_ENV'] ||= 'test'
require File.expand_path('../../config/environment', __FILE__)
# Prevent database truncation if the environment is production
abort("The Rails environment is running in production mode!") if Rails.env.production?
require 'spec_helper'
require 'rspec/rails'
# ... more defaults

Which means this RAILS_ENV is already test before this is ever reached, so given this code's added complexity I'm declined to close this.


Fix installing extension from GitHub

Currently, it's impossible to install an extension from GitHub without explicitly specifying the version:
$ phpbrew ext install github:nikic/php-ast.git

Downloading https://github.com/nikic/php-ast/archive/stable.tar.gz via curl extension
Redirecting to https://codeload.github.com/nikic/php-ast/tar.gz/stable
PHP Fatal error:  Uncaught CurlKit\CurlException: The requested URL returned error: 404 Not Found at [https://codeload.github.com/nikic/php-ast/tar.gz/stable:The requested URL returned error: 404 Not Found] in vendor/corneltek/curlkit/src/CurlKit/CurlDownloader.php:153

The generated URL (https://codeload.github.com/nikic/php-ast/tar.gz/stable) is incorrect, it should be https://codeload.github.com/nikic/php-ast/tar.gz/master.
The default extension configuration should not contain provider-specific details.

Coverage increased (+0.5%) to 51.49% when pulling bcfc0572e37a2c48ee038fde9b8f7e6c43184bb5 on morozov:ext-install-github-master into 29e0a11d82951fbd620e81af7bc8fbfe1a9c665e on phpbrew:master.

Thanks! I like this


How to activate documentation in IntunCD Frontend

Hallo,
I have a problem with activate Documentation. I made a md file.

_

Hi,
See this message from the IntuneCD Front end release notes:
"Regarding the documentation section, a new page has been added that allows users to configure an Azure Storage account Container and Blob to pull documentation from in HTML format and display it in IntuneCD Monitor. To enable this feature, users must set the DOCUMENTATION_ACTIVE environment variable to true and provide the AZURE_CONNECTION_STRING, AZURE_CONTAINER_NAME, and DOCUMENTATION_FILE_NAME variables."
You have to house the documentation as an HTML file on a blob storage for it to be visible in the front end.

Thanks! ;)


Create 1849-Splitting-a-String-Into-Descending-Consecutive-Values.py

File(s) Modified: 1849-Splitting-a-String-Into-Descending-Consecutive-Values.py
Language(s) Used: python
Submission URL: _https://leetcode.com/submissions/detail/812914643/_

Thanks for contributing!


Customize+ not working in gpose

my scaler works until I get into gpose then it stops working. The most recent version is 0.3.6. My friend also can’t see my scaler in gpose but can outside of it.

#84


Reverse proxy setting Host header leads to 413 errors

Hi, not sure if this fits here but…
A while ago I was trying to run a reverse proxy for some application, both of which run on cloud run, with an nginx configuration like this:
location / {
	proxy_pass …;
	proxy_set_header Host $http_host;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header X-Forwarded-Proto $scheme;
	proxy_set_header X-Forwarded-Host $http_host;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

All requests processes like this ended up generating (google-themed) 413 error responses, and the proxy had logged hundreds of requests for each request sent by the browser.
Funnily proxying to google.com instead of the application had the same result.
At some point I figured out that the Host header caused the problem, my guess would be that google's load balancers use it to choose where to route requests, but I hadn't seen this behavior documented.
(Aside: I had added the Host header directive since the other application I was proxying to, keycloak, seems to use that to determine which host the user agent had requested)

Can you please ask this on Stackoverflow.com?

So I should ask this and answer this myself so I can point out a limitation that I think belongs in the actual documentation?

If you're behind a multi-tenant load balancer, it's very likely the  Host header is used to route the request. This doesn't need to be documented.

But how do you know that you are behind a multi-tenant load balancer when you are using Cloud Run? Is it already documented somewhere?


Update cpp-binary_search-O(log_n).cpp

Adding comments and making the code more understanding.
First ever PR...

same implementation of an algorithm is submitted by someone else and it gets accepted
thanks for contributing.


igluctl: Add support for creating elasticsearch mappings

Migrated from https://github.com/snowplow/schema-guru/issues/151

Migrated to https://github.com/snowplow-incubator/igluctl/issues/39


Fix Magepack commands

I could swear I sent this PR previously already, but obviously, I did not.
In the latest images, Magepack is available under a different path:
$ which magepack
/usr/local/bin/magepack

Hence, this PR fixes the Magepack commands.

@sprankhub I swear you did too.  Maybe it was to Den?  Or it got lost somehow.  Either way, I'm sorry you had to do it again.

I could not find it anywhere :see_no_evil:
Thanks for merging!


Catch illegal kwds arguments

Catch and report all illegal kwds arguments in all relevant functions

How is illegal being defined?
We would nee dsome sort of schema to check that.

Any function that accepts **kwds should filter them depending on where they are passed to. This only becomes relevant, if you pass **kwds to a function that does not accept **kwds. Then you must ensure that only legal keyword arguments are being passed.

So there are two cases?

**kwds are passed but shouldn't be
**kwds are legal but some illegal ones are also passed

So I am guessing legal ones are the ones that pass the check inside the function/method?
Not sure how to approach this issue. One way would be to add decorator to each method but that doesn't seem ideal.
The other is to just perform this check at testing phase.

Closed by #466


Update suggestion message on bad project name error

closes #9876
Error message suggest adding [bin] to Cargo.toml which should be [[bin]] instead.

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.
Please see the contribution instructions for more information.

:pushpin: Commit cb2932e47b1c9768fd115499e77bb8a66a0a23cd has been approved by ehuss

:hourglass: Testing commit cb2932e47b1c9768fd115499e77bb8a66a0a23cd with merge 38b4c6ed955c89d5738a63e38834e4f1c5f46464...

@bors r+

:bulb: This pull request was already approved, no need to approve it again.

This pull request is currently being tested. If there's no response from the continuous integration service, you may use retry to trigger a build again.

:pushpin: Commit cb2932e47b1c9768fd115499e77bb8a66a0a23cd has been approved by ehuss

:hourglass: Testing commit cb2932e47b1c9768fd115499e77bb8a66a0a23cd with merge 941b12368962056731c7b033fd786f5415aa7d7b...

:sunny: Test successful - checks-actions
Approved by: ehuss
Pushing 941b12368962056731c7b033fd786f5415aa7d7b to master...


Add two version badges

This adds two version badges that show the latest GitHub and NPM versions.

I don't think the "GitHub version" works. It should indicate 1.1.7-dev, but shows 1.1.6.

That is the "last release version on GitHub" - but I see how this might be confusing in our case. Hmm...

Oh, I see. Would there be any reason why that would be different from the npm version though?

Forgotten to publish on npm. Happens. The badge makes sure people will ask about the mismatch.


Correct typing errors in example_r_file.R

errors in line 3

Typing error eg filter

typo in line 3

This has been resolved


RDBMS connections

is there any tutorial or explanation how to connect existing systems, e.g. relation databases to egeria to share technical metadata? or it's not really an egeria goal to provide this type of functionality?

Short answer is that is this a valid use case for Egeria, but the implementation is not quite there yet which is why you are not finding the tutorials.
This is a bit more explanation on how this will work...
The Egeria open connector framework (OCF) will support connectors to RDBMS.  This will allow a consumer of data to issue queries on the data and also request comprehensive metadata (technical, business, governance, ...) about the database.  Today we have one OCF JDBC connector that is linking the Apache Derby database driver.  This needs to be made more general so we can support JDBC to many databases.
The Asset Owner OMAS will provide APIs to manually add a basic catalog entry for a database to the metadata repository. (The Asset Owner OMAS is under development.)
Adding the catalog entry can trigger a discovery engine to connect to the RDBMS and extract the schema and profile the content.  The profiling can be re-run periodically.  (Discovery is under development at the moment.)
The data platform bridge (a governance server) is able to periodically validate that the schemas in an active RDBMS match those in the metadata repository. (This is a future work item)
The outlook for the Asset Owner OMAS and Discovery Server is about 3 weeks.

Still needed


[CI] Fixing build version across modules to core version

Description of changes:
Builds happening near midnight have a chance of a date flip in build minor version as a result earlier built dependencies could not be found on a date change and the build fails. This change fixes the minor version across all namespace packages.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-772-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-772/1/index.html


Add filetype support for SuperHTML and Ziggy

This is a PR to address https://github.com/vim/vim/issues/15355 to add SuperHTML and Ziggy filetype support into vim.
Some things to note which may require further discussion.

SuperHTML is an overload of the .shtml file extension. As such I updated the FThtml() function as mentioned in https://github.com/vim/vim/issues/15355. I also added tests for both of the tags that indicate something is a SuperHTML file.
ziggy-schema's filetype is currently set to ziggy_schema to match with the language id that the lsp and tree-sitter setups rely on.

Thanks. I have have a question however. Looking at https://github.com/kristoff-it/superhtml it seems superhtml is a Language server. How does that come into play with a new filetype superhtml? And isn't superhtml a bit long filetype?

Thanks. I have have a question however. Looking at https://github.com/kristoff-it/superhtml it seems superhtml is a Language server. How does that come into play with a new filetype superhtml? And isn't superhtml a bit long filetype?

superhtml is both an lsp for html as well as a new templating language along with an lsp for that template language

Also a question I have about the updates, the CONTRIBUTE.md file mentions adding yourself to the MAINTAINERS file. Do I just add a line like: runtime/ftplugin/<ft>.vim?

I see thank you!

We don't need yet a maintainer line, since you only added code for detecting the new file types, but did not include an additional runtime file. So that should be fine.


Add specifications for notation CLI commands

Currently we have commands such as cert, key, config, verify and sign implemented in the CLI (PR #79), define spec for the desired user experience and organization of these commands.

https://github.com/notaryproject/notation/pull/171


Support for Debian?

Debian is also supported on WSL through the Windows Store.

Debian and Kali should be fine with this script (at least the older WSL.sh from the Wiki was) since they are using apt as well. If you plan to use them in parallel make sure to change the SSH port so they don't conflict.


Create Index in abstract Link crashes Migration

EdgeDB Version: 2.1
OS Version: macOS 12.5 (M1 Pro, Also Checked in Docker Image with amd64 architecture)

Steps to Reproduce:

Create Previous Schema (Works well!)
Add Index in Abstract Link
Create Migration and Apply, It Crashes.

edgedb error: InternalServerError: relation "edgedbpub.f6cc2eae-17e5-11ed-8e92-83df59ae4c33" does not exist
  Hint: This is most likely a bug in EdgeDB. Please consider opening an issue ticket at https://github.com/edgedb/edgedb/issues/new?template=bug_report.md
  Server traceback:
      edb.errors.InternalServerError: relation "edgedbpub.f6cc2eae-17e5-11ed-8e92-83df59ae4c33" does not exist

p.s. I'm new with EdgeDB, so It can be schema error. If my schema is wrong, Just Tell me please. :) I think this error message can be contain more information.

Schema:
module default {
  # Base Model for Define Essential Values
  abstract type BaseModel {
    overloaded required property id -> uuid {
      constraint exclusive;
      readonly := true;
      default := uuid_generate_v1mc();
    };

    required property created_at -> datetime;
    required property updated_at -> datetime;
    property deleted_at -> datetime;
    required property deleted -> bool {
      default := false;
    };

    index on (.created_at) {
      annotation title := "CreatedAt Index";
    };
  }

  # Define User Model
  type User extending BaseModel {
    # Email is unique.
    required property email -> str {
      constraint exclusive;
    };

    required property password -> str;

    required property name -> str {
      constraint min_len_value(3);
    };

    index on (.email) {
      annotation title := "Email Index";
    };
  }

  abstract link IdIndex {
    property id -> uuid;
    # ----------------------------------
    # here is the problem!!
    index on (__subject__@id);
    # ----------------------------------
  }

  # Define Memo and Comment Model
  type Memo extending BaseModel {
    required link created_by extending IdIndex -> User;
    multi link accessable_users extending IdIndex -> User;

    required property title -> str;
    required property content -> str;
    required property tags -> array<str> {
      default := <array<str>>[];
    };
  }

  type Comment extending BaseModel {
    required link created_by extending IdIndex -> User;
    required link memo extending IdIndex -> Memo;
    required property content -> str;
  }
}

This one is actually darkly hilarious. The crux of the issue seems to be the use of the name id for the link property.
create abstract link foo { create property id -> uuid; create index on (__subject__@id); };
create type T;
create type S { create link x extending foo -> T; }

fails but
create abstract link foo { create property xid -> uuid; create index on (__subject__@xid); };
create type T;
create type S { create link x extending foo -> T; }

works


Double check NAs on trans SSR

There are some cases where time historical has a value, but time_early and/or time_mid are NA

This is related to the original methodology on Palacios-Abrantes et al 2020. In the original experiment, stocks shifts were only considered in cases where all ensemble members showed data. Given the regional approach of the current analysis, we are not using a modified version where the proportion is estimated, regardless of the number of ensemble members.

Note that the cases where NA's are still showing are because there is a change in SSR, but his change is not significant (e.g., is not >2*sd)


Updated ChildObjects doc

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


Some keywords highlighting incorrectly

Look into why some keywords don't highlight correctly. For example: if will show up as the keyword colour just fine, until you place parentheses.
Most likely has something to do with the regex string for functions.

Fixed in #18


fix: custom directives in Nuxt (#131)

Closes #131
The directives should be defined in runtimeConfig.public for client-side to register directives.

Thanks a lot @cjboy76 :)

@Tahul please push a release with it

Hi, are there any news on whether this fix will be included on a release?


Include python37 in CI tests.

Codecov Report

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

@@           Coverage Diff           @@
##           master      #54   +/-   ##
=======================================
  Coverage   86.65%   86.65%
=======================================
  Files           8        8
  Lines        2196     2196
=======================================
  Hits         1903     1903
  Misses        293      293

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 ed1243e...0ffd9c3. Read the comment docs.


Go to selected page

Motivation
Pull #3898 looks very helpful (sidebar category linking to doc) but it seems like it got stalled, so I'm trying to get it over the finish line by addressing issues mentioned in the pull request code review.
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
Please see #3898.  I tested the category functionality by setting a link field for a few categories. Works as expected.
Related PRs
A few additional commits to #3898 to address code review comments.

Cleaner pull request with #4323


Add Replicate demo and API

Hi @jiaxiangc,
Very cool project on res-adapter!
This pull request makes it possible to run res-adapter on Replicate (https://replicate.com/cjwbw/res-adapter) and via API (https://replicate.com/cjwbw/res-adapter/api). Currently, there is an option to output both with and without the adapter for comparison.  Also we'd like to transfer the demo page to bytedance so you can make modifications easily, but happy to help maintain/integrate the upcoming changes,  :)

Thanks for your contribution. We will merge your pr, and make some change to your codes.

@chenxwh Can we contribute this demo together? I actually do not know how to building demo in replicate, and there is no person to accept me to join bytedance in replicate.

@jiaxiangc I just sent you an email :)


MVC unit tests fail

We seem to be getting two exceptions from the ASP.Net pipeline with following stack:
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
at System.Activator.CreateInstance(Type type, Object[] args)
at Microsoft.Framework.Runtime.Common.DependencyInjection.ActivatorUtilities.<>c__DisplayClass4_0.b__0(IServiceProvider services)
at Microsoft.Framework.Runtime.Common.DependencyInjection.ActivatorUtilities.CreateInstance(IServiceProvider services, Type type)
at Microsoft.Framework.Runtime.CompilerServices.CreateService[T](IServiceProvider sp, IAssemblyLoadContext loadContext, TypeInformation typeInfo)
at Microsoft.Framework.Runtime.ProjectLibraryExportProvider.b__5_1(TypeInformation typeInfo)
at System.Collections.Generic.DictionaryExtensions.GetOrAdd[TKey,TValue](IDictionary2 dictionary, TKey key, Func2 factory)
at Microsoft.Framework.Runtime.ProjectLibraryExportProvider.<>c__DisplayClass5_0.b__0(CacheContext ctx)
at Microsoft.Framework.Runtime.Caching.CacheExtensions.<>c__DisplayClass0_01.<Get>b__0(CacheContext ctx)    at Microsoft.Framework.Runtime.Caching.Cache.CreateEntry(Object k, Func2 acquire)
at Microsoft.Framework.Runtime.Caching.Cache.<>c__DisplayClass5_0.b__0()
at System.Lazy1.CreateValue()    at System.Lazy1.LazyInitValue()
at System.Lazy1.get_Value()    at Microsoft.Framework.Runtime.Caching.Cache.Get(Object key, Func2 factory)
at Microsoft.Framework.Runtime.Caching.CacheExtensions.Get[T](ICache cache, Object key, Func2 factory)    at Microsoft.Framework.Runtime.ProjectLibraryExportProvider.GetLibraryExport(ILibraryKey target)    at Microsoft.Framework.Runtime.CompositeLibraryExportProvider.<>c__DisplayClass2_0.<GetLibraryExport>b__0(ILibraryExportProvider r)    at System.Linq.Enumerable.WhereSelectArrayIterator2.MoveNext()
at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable1 source, Func2 predicate)
at Microsoft.Framework.Runtime.CompositeLibraryExportProvider.GetLibraryExport(ILibraryKey target)
at Microsoft.Framework.Runtime.LibraryManager.GetLibraryExport(String name, String aspect)
at Microsoft.Framework.Runtime.LibraryManager.GetLibraryExport(String name)
at Microsoft.AspNet.Mvc.Razor.Compilation.RoslynCompilationService.GetApplicationReferences()
at System.Lazy1.CreateValue()    at System.Lazy1.LazyInitValue()
at System.Lazy1.get_Value()    at Microsoft.AspNet.Mvc.Razor.Compilation.RoslynCompilationService.Compile(RelativeFileInfo fileInfo, String compilationContent)    at Microsoft.AspNet.Mvc.Razor.Compilation.RazorCompilationService.Compile(RelativeFileInfo file)    at Microsoft.AspNet.Mvc.Razor.Compilation.CompilerCache.OnCacheMiss(RelativeFileInfo file, String normalizedPath, Func2 compile)
at Microsoft.AspNet.Mvc.Razor.Compilation.CompilerCache.GetOrAddCore(String relativePath, Func2 compile)    at Microsoft.AspNet.Mvc.Razor.Compilation.CompilerCache.GetOrAdd(String relativePath, Func2 compile)
at Microsoft.AspNet.Mvc.Razor.VirtualPathRazorPageFactory.CreateInstance(String relativePath)
at Microsoft.AspNet.Mvc.Razor.RazorViewEngine.LocatePageFromViewLocations(ActionContext context, String pageName, Boolean isPartial)
at Microsoft.AspNet.Mvc.Razor.RazorViewEngine.GetRazorPageResult(ActionContext context, String pageName, Boolean isPartial)
at Microsoft.AspNet.Mvc.Razor.RazorViewEngine.FindView(ActionContext context, String viewName)
at Microsoft.AspNet.Mvc.Rendering.CompositeViewEngine.FindView(ActionContext context, String viewName, Boolean partial)
at Microsoft.AspNet.Mvc.Rendering.CompositeViewEngine.FindView(ActionContext context, String viewName)
at Microsoft.AspNet.Mvc.ViewResult.d__24.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Mvc.Core.FilterActionInvoker.d__52.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
at Microsoft.AspNet.Mvc.Core.FilterActionInvoker.d__51.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNet.Mvc.Core.FilterActionInvoker.d__50.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
at Microsoft.AspNet.Mvc.Core.FilterActionInvoker.d__45.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNet.Mvc.Core.FilterActionInvoker.d__40.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Mvc.MvcRouteHandler.d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Mvc.MvcRouteHandler.d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Routing.Template.TemplateRoute.d__25.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Routing.RouteCollection.d__9.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Builder.RouterMiddleware.d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.<Invoke>d__18.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.<Invoke>d__18.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.<Invoke>d__18.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.<Invoke>d__18.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at Microsoft.AspNet.Authentication.AuthenticationMiddleware1.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at Microsoft.ApplicationInsights.AspNet.ExceptionTrackingMiddleware.d__4.MoveNext() in C:\GitHub-microsoft\ApplicationInsights-aspnet5\src\Microsoft.ApplicationInsights.AspNet\ExceptionTrackingMiddleware.cs:line 30

Was tracked by https://github.com/aspnet/Hosting/issues/287 , now moved to https://github.com/aspnet/Testing/issues/117

This has been fixed.


is_rel_block_key: exclude the relsize key

Before this PR, is_rel_block_key returns true for the blknum 0xffffffff,
which is a blknum that's actually never written by Postgres, but used by
Neon Pageserver to store the relsize.
Quoting @MMeent:

PostgreSQL can't extend the relation beyond size of 0xFFFFFFFF blocks,
so block number 0xFFFFFFFE is the last valid block number.

This PR changes the definition of the function to exclude blknum 0xffffffff.
My motivation for doing this change is to fix the pagebench getpage
benchmark, which uses is_rel_block_key to filter the keyspace for
valid pages to request from page_service.
fixes https://github.com/neondatabase/neon/issues/6210
I checked other users of the function.
The first one is key_is_shard0, which already had added an exemption
for 0xffffffff. So, there's no functional change with this PR.
The second one is DatadirModification::flush[^1]. With this PR,
.flush() will skip the relsize key, whereas it didn't
before. This means we will pile up all the relsize key-value pairs (Key,u32)
in DatadirModification::pending_updates until .commit() is called.
The only place I can think of where that would be a problem is if we
import from a full basebackup, and don't .commit() regularly,
like we currently don't do in import_basebackup_from_tar.
It exposes us to input-controlled allocations.
However, that was already the case for the other keys that are skipped,
so, one can argue that this change is not making the situation much
worse.
[^1]: That type's flush() and commit() methods are terribly named, but,
that's for another time

This means we will pile up all the relsize key-value pairs (Key,u32)
in DatadirModification::pending_updates until .commit() is called.

This seems okay to me: we already have O(N_relations) memory structures e.g. in the relsize cache on Timeline.

Just an interesting fact: is_rel_block_key is used not only for sharding (shard.rs) but also in DatadirModification::flush.
And here the intention was to flush data before metadata (there is a huge comment explaining why it is needed):
    ///
    /// Flush changes accumulated so far to the underlying repository.
    ///
    /// Usually, changes made in DatadirModification are atomic, but this allows
    /// you to flush them to the underlying repository before the final `commit`.
    /// That allows to free up the memory used to hold the pending changes.
    ///
    /// Currently only used during bulk import of a data directory. In that
    /// context, breaking the atomicity is OK. If the import is interrupted, the
    /// whole import fails and the timeline will be deleted anyway.
    /// (Or to be precise, it will be left behind for debugging purposes and
    /// ignored, see <https://github.com/neondatabase/neon/pull/1809>)
    ///
    /// Note: A consequence of flushing the pending operations is that they
    /// won't be visible to subsequent operations until `commit`. The function
    /// retains all the metadata, but data pages are flushed. That's again OK
    /// for bulk import, where you are just loading data pages and won't try to
    /// modify the same pages twice.
    pub async fn flush(&mut self, ctx: &RequestContext) -> anyhow::Result<()> {
          ...
        // Flush relation and  SLRU data blocks, keep metadata.
        let mut retained_pending_updates = HashMap::<_, Vec<_>>::new();
        for (key, values) in self.pending_updates.drain() {
            for (lsn, value) in values {
                if is_rel_block_key(&key) || is_slru_block_key(key) {
                    // This bails out on first error without modifying pending_updates.
                    // That's Ok, cf this function's doc comment.
                    writer.put(key, lsn, &value, ctx).await?;
                } else {
                    retained_pending_updates
                        .entry(key)
                        .or_default()
                        .push((lsn, value));
                }
            }
        }

But with original is_rel_block_key definition it returns true also for metadata (relation size).
So the assumption that we update relation size only on commit was not correct.

Just an interesting fact: is_rel_block_key is used not only for sharding (shard.rs) but also in DatadirModification::flush. And here the intention was to flush data before metadata (there is a huge comment explaining why it is needed):
    ///
    /// Flush changes accumulated so far to the underlying repository.
    ///
    /// Usually, changes made in DatadirModification are atomic, but this allows
    /// you to flush them to the underlying repository before the final `commit`.
    /// That allows to free up the memory used to hold the pending changes.
    ///
    /// Currently only used during bulk import of a data directory. In that
    /// context, breaking the atomicity is OK. If the import is interrupted, the
    /// whole import fails and the timeline will be deleted anyway.
    /// (Or to be precise, it will be left behind for debugging purposes and
    /// ignored, see <https://github.com/neondatabase/neon/pull/1809>)
    ///
    /// Note: A consequence of flushing the pending operations is that they
    /// won't be visible to subsequent operations until `commit`. The function
    /// retains all the metadata, but data pages are flushed. That's again OK
    /// for bulk import, where you are just loading data pages and won't try to
    /// modify the same pages twice.
    pub async fn flush(&mut self, ctx: &RequestContext) -> anyhow::Result<()> {
          ...
        // Flush relation and  SLRU data blocks, keep metadata.
        let mut retained_pending_updates = HashMap::<_, Vec<_>>::new();
        for (key, values) in self.pending_updates.drain() {
            for (lsn, value) in values {
                if is_rel_block_key(&key) || is_slru_block_key(key) {
                    // This bails out on first error without modifying pending_updates.
                    // That's Ok, cf this function's doc comment.
                    writer.put(key, lsn, &value, ctx).await?;
                } else {
                    retained_pending_updates
                        .entry(key)
                        .or_default()
                        .push((lsn, value));
                }
            }
        }

But with original is_rel_block_key definition it returns true also for metadata (relation size). So the assumption that we update relation size only on commit was not correct.

I covered that in the PR description

The second one is DatadirModification::flush1. With this PR, .flush() will skip the relsize key, whereas it didn't before. This means we will pile up all the relsize key-value pairs (Key,u32) in DatadirModification::pending_updates until .commit() is called.
The only place I can think of where that would be a problem is if we import from a full basebackup, and don't .commit() regularly, like we currently don't do in import_basebackup_from_tar. It exposes us to input-controlled allocations. However, that was already the case for the other keys that are skipped, so, one can argue that this change is not making the situation much worse.

Breaking the block comment down:

/// Usually, changes made in DatadirModification are atomic, but this allows
/// you to flush them to the underlying repository before the final `commit`.
/// That allows to free up the memory used to hold the pending changes.
///
/// Currently only used during bulk import of a data directory. In that
/// context, breaking the atomicity is OK. If the import is interrupted, the
/// whole import fails and the timeline will be deleted anyway.
/// (Or to be precise, it will be left behind for debugging purposes and
/// ignored, see <https://github.com/neondatabase/neon/pull/1809>)

Skipping the relsize key seems acceptable here, see arguments in the PR description.

/// Note: A consequence of flushing the pending operations is that they
/// won't be visible to subsequent operations until `commit`. The function
/// retains all the metadata, but data pages are flushed. That's again OK
/// for bulk import, where you are just loading data pages and won't try to
/// modify the same pages twice.

Regarding this Note, I think this PR is a correction, as my understanding is that relsize is metadata.

Given you posted a comment after you approved the PR, I'd ask you to re-affirm that you still think this PR is correct.

Given you posted a comment after you approved the PR, I'd ask you to re-affirm that you still think this PR is correct.

Yes, it is correct


Bluetooth: Mesh: Configurable RPL module

Introduce configuration options for chosen RPL implementations.
This will allow introducing alternate persistent storage schemes
for the replay protection list.
Signed-off-by: Anders Storrø<EMAIL_ADDRESS>

Seems no clear boundary between rpl and rpl storage functionality. Part of rpl logic and API is in storage implementation.

Seems no clear boundary between rpl and rpl storage functionality. Part of rpl logic and API is in storage implementation.

I'm starting to lean that way myself. Maybe it would be better to just skip the storage abbstraction level, use separate RPL modules and a common header in rpl.h

The way I see the current proposal is that it's not even trying to create a clean boundary for RPL functionality. The storage-specific module is the primary implementation of the RPL and what remains in rpl.c is simply an attempt to avoid duplicating code in multiple storage-specific modules.
That said, I already suggested earlier removing this additional layer and having just a high level choice of selecting the RPL implementation (including storage). Looking at the latest version of this PR there's only some 100 lines remaining in rpl.c, so I think there's a pretty good case for eliminating the extra abstraction layer.

I've added a significantly less complex solution where it is possible to introduce an alternate version of rpl.c. What do you think @jhedberg?


Fix build of new ${year}-gradle versions

Because of #9, all images with tag ${year}-gradle can not be built without the tag ${year} being pushed to the registry beforehand.
Example: https://github.com/maxkratz/docker_texlive/actions/runs/5425592766/jobs/9866634191

Fixed via https://github.com/maxkratz/docker_texlive/commit/f7211494170bae4a69540aa8555da981c253466f.


Added yarn icon for yarn.lock files

Added icon and file type matching for yarn.lock files.
Yarn is a new dependency management client developed by Facebook.

That was fast! We have now icons for yarn. I will release it probably tomorrow as today we have already published 3.0.4. Thanks @wagerfield!


Added documentation for SBPS goss tests

Summary and Scope
Added documentation on how to run goss tests for SBPS feature and it has the details on what tests it will run. This basically runs some of the sanity tests for SBPS on worker node(s).
Issues and Related PRs

Resolves [issue id](issue link): CASMPET-7214
Documentation changes required in [issue id](issue link) : CASMPET-7214

Testing
N/A
Tested on:
N/A
Test description:
N/A
Risks and Mitigations
None.
Pull Request Checklist

[ ] Version number(s) incremented, if applicable
[x] Copyrights updated
[x] License file intact
[x] Target branch correct
[x] CHANGELOG.md updated

Thanks David and Lindsay for your review and comments. Pls take a look at the latest doc changes and let me know if any more comments.


NumberInput default max value is Number.MAX_SAFE_INTEGER, not Inifinity as stated in the docs.

Description
When creating a NumberInput, clampValueOnBlur will clamp to Number.MAX_SAFE_INTEGER even when no max prop is set. Component and docs differ, unsure which is meant to be correct. Number.MAX_SAFE_INTEGER is too small for many applications which use bigint or other bignumber libraries and prefer to use the string representation of input value. For example Number.MAX_SAFE_INTEGER is only equal to 0.009 ETH in Wei, problematic for Web3 applications.
Can be worked around with max={Number.POSITIVE_INFINITY}.

Can be worked around with max={Number.POSITIVE_INFINITY}.

Correction here that disabling clampValueOnBlur is the correct fix. Setting the max prop should work but has a possible bug that should be an issue in the main chakra-ui repo? On blur, if the number is too large, a rounded scientific form integer is emitted to the onChange handler and this doesn't happen with the clampValueOnBlur solution. This is outside of the scope of this issue relating to the docs however.


[Site/App] Hindi Not Showing in Dropdown

This was supposed to be resolved by #707 , but it wasn't. The preview link looked good but the option is not showing in the production dropdown menus.

My bad. I should have made a local production build. #728 should fix this.


HF/InstantModelLoading

Implemented own model and animation format in order to stop using FBX.
This removes the 50MB FBX related memory spike and gives instant model loading time.
FBX cleanup will come in a future pullrequest.

#572


Comment on PR code line changes

Haven't tried github actions before. If I were to set this up, will it add comments on PR code changes detected by the linter?

Hi. It won't add comments out of the box. It'll just show in your job details failure details like shown in the screenshot.


Setup info

Hi! Thank you for your great work!
I'm trying to reproduce your results and create stable baseline with docker to simplify this process. But I can't clearly understand the total pipeline. Could you please provide me with some basic instructions or tips?
Thank you in advance!

In specific, could you tell me what ros, cuda, torch, ... versions did you used?


[Automation] Generate Fluent Lite from Swagger databox#package-2022-12

[Automation] Generate Fluent Lite from Swagger databox#package-2022-12

API change check
APIView has identified API level changes in this PR and created following API reviews.
com.azure.resourcemanager:azure-resourcemanager-databox


Better developer story

For those of us who would like to build harbor from source and deploy it manually (perhaps not using docker), it is a bit tricky.
I've been reverse engineering how the source release is different from the binary releases and think it really should be documented better.

From reverse engineering the steps from travis.yml, I came up with this:
export GO15VENDOREXPERIMENT=1
export DB_HOST=<IP_ADDRESS>
export DB_PORT=3306
export DB_USR=root
export DB_PWD=

go get -d github.com/docker/distribution
go get -d github.com/docker/libtrust
go get -d github.com/go-sql-driver/mysql
go get github.com/golang/lint/golint
go get github.com/GeertJohan/fgt

mysql < ./Deploy/db/registry.sql -uroot --verbose

# Download all of the deps such as beego
go get -d .

go list ./... | grep -v /vendor/ | xargs -L1 fgt golint
go list ./... | grep -v 'vendor' | xargs -L1 go vet
go list ./... | grep -v 'vendor' | xargs -L1 go test -v
go build .

My point is that not everyone might want to run this under docker. I'd like to run it on a RHEL7 server under systemd. Ideally, there would be documentation in the the README or a DEVELOPING.md so another new developer won't have to reverse engineer this.
I'll be sending a small PR this evening to fix a few small things which allow harbor to work in my environment.

@SEJeff
Thanks for raising this, currently we'd like to use docker-compose as the only deployment approach to avoid other env issues.
But travis.yml is for CI and for reverse engineering I'd suggest looking at Deploy/docker-compose.yml

Thanks for getting back to me @reasonerjt. Docker compose is great for testing things out, but isn't great for production. We have existing beefcake mysql and galera clusters and a large mesos cluster that this would likely run ontop of. If I wrote a developer doc and sent a PR would you accept it? Some people simply don't consider single host docker to be production worthy. To sell using harbor to my management I have to deploy it to be resilient.

@SEJeff Got your point on the production use. We are considering the installation through other approaches, such as Swarm, Mesos and K8s. Meanwhile, you are welcome to submit a PR. If it is helpful to other developers, we will consider to merge it. One thing to note is that the form  Contributor License Agreement should be signed by you before we can merge your PR. You can find it from README. Thanks.

We will provide more production friendly approach for installation and deployment. Closing this for now.