How to appropriately include license for CSS files

Hello,
I use highlight.js with node to highlight source code blocks in my blog on the backend. The only file I need to serve users is the css theme. What is the license of the theme?
For example, if I use atom-one-light.css, I see the following notice (not available in the min file):
Atom One Light by Daniel Gamage
Original One Light Syntax theme from https://github.com/atom/one-light-syntax

So, what is the license? Is it BSD-3 because that's what highlight.js comes with? Is it whatever Daniel Gamage had? If you can help me understand this issue I would appreciate it.

I'm no license expert but my thinking would be that when anything is merged/committed to the project that it would come under our licensing.  I'd be happy to make that explicit also if needed - all our themes should be open for any use, personal, professional, etc...
Now the Base64 themes could be different since we just pulled those from an entirely different project.  Though to be fair the original Base16 project was MIT: https://github.com/chriskempson/base16
I probably wouldn't worry unless your a big huge corporation and wanted to reach out to the original author just to get their blessing.

Does that help?

@joshgoebel Thanks for the response. For example here's what Base16 license has (MIT):

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

You could include the entire license text in the CSS file in a comment (together with the attribution line "Copyright (C) 2012 Chris Kempson") but obviously that bloats the serving of the file. Other options are either only including it in the non-min CSS file or having it entirely detached in a LICENSES/ directory that explains which license corresponds to which files.
What I think is the case is that including only your license is not appropriate. In fact in my case, because I'm serving the CSS file, I do not need to include your license at all, AFAIK the output of highlight.js is not licensed under your license, so I do not need to include your license in my served HTML files. I would however need to include the license of the CSS file.
I could be wrong about this. My blog is on a repo on GitHub, so I know that I need to include the appropriate licenses for everything. If I only served files over an HTTP server, then I'd have to include licenses embedded in the served files. If you look at what Google does in its index page, it has small copyright notices for every served JS code, things like:
/*
 Copyright The Closure Library Authors.
 SPDX-License-Identifier: Apache-2.0
*/

I think that's what needs to be done here even for the minified files: an indication of the copyright owner and the license type.

Base16 themes already include a notice:
License: ~ MIT (or more permissive) [via base16-schemes-source]
I'll think we'll go ahead and add our standard header to all the CSS files, just like we already do the main built JS file. Modified slightly to include a license URL, which does make sense:
/*!
  Highlight.js v11.11.1 (git: 08cb242e7d)
  (c) 2006-2024 Josh Goebel<EMAIL_ADDRESS>and other contributors
  License: https://github.com/highlightjs/highlight.js/blob/main/LICENSE (BSD-3-Clause)
 */

Great, thank you. That is a good idea.

Oh, but in my opinion you should not include version information in the license comment.

What is the harm?

There is no harm if you don't plan to update it, but there is a misconception that you have to update copyright/license statements, such as (c) 2020-2024 (which in 2025 you'd update to 2020-2025), which is unnecessary and would only cause confusion.
You can see this answer https://stackoverflow.com/questions/2390230/do-copyright-dates-need-to-be-updated/2391555#2391555. See also the [Berne convention](https://en.wikipedia.org/wiki/Berne_Convention and Common law copyright.
A claim like (c) 2006-2024 means that you don't make a claim for 2005, and it complicates slightly what happens when 2025 comes. The easier approach is to just have (c) 2006, relying on the Berne convention to cover you for the later years, and hopefully 2006 is the year where the file appeared in the repository.
So for example, if you include the version information, does it mean only that version is copyrighted/licensed? Less is more when it comes to copyright and licensing claims.


Segmentation fault in mrb_vm_exec when nesting calls to mruby

I have a program, called QSoas that sometimes can nest calls to mruby, i.e. a mruby eval that runs a C++ code that runs a mruby eval. In version 1.4.1, this worked perfectly fine. In 2.0.0 and in the current HEAD, that segfaults with the following error:
Program received signal SIGSEGV, Segmentation fault.
0x00005555557d0132 in mrb_vm_exec (mrb=0x555555ef6a60, proc=0x55555602a380, pc=0x0)
    at /home/vincent/Prog/mruby-recent/src/vm.c:1471
1471            JUMP;
(gdb) bt 4
#0  0x00005555557d0132 in mrb_vm_exec (mrb=0x555555ef6a60, proc=0x55555602a380, pc=0x0)
    at /home/vincent/Prog/mruby-recent/src/vm.c:1471
#1  0x00005555557cc57b in mrb_vm_run (mrb=0x555555ef6a60, proc=0x55555602a380, self=..., stack_keep=2)
    at /home/vincent/Prog/mruby-recent/src/vm.c:949
#2  0x00005555557de631 in mrb_run (mrb=0x555555ef6a60, proc=0x55555602a380, self=...)
    at /home/vincent/Prog/mruby-recent/src/vm.c:2823
#3  0x0000555555789076 in MRuby::<lambda()>::operator() (__closure=0x7fffffffbe10) at src/mruby.cc:198
(More stack frames follow...)
(gdb)

Is that a known issue ?
Great thanks

Any idea ? This is important for me, since it means I'm stuck with old versions of mruby in my project.

Without source code, it's hard to help you.
All I can say is mrb_vm_exec is called with pc=0, that means irep->iseq is NULL.
So maybe there's something wrong in Proc generation.

Thank you. The code is rather complex, I'll try to come up with a minimal non-working example.

OK, sorry for the inconvenience.
if you can show me the code that generates the Proc (of which irep->iseq is NULL), that would help me to identify the problem.

Sorry for being so long to answer. While this is not strictly speaking what I'm doing, the following code used to work (at least in commit 55431b4cef95541dc07f30f52b7fad9e9638b0be), but segfaults now... Or at least, segfaulted with the current state of master when I opened that bug report... Now it seems OK, but I'm posting that for reference.
#include <mruby.h>
#include <mruby/compile.h>
#include <mruby/variable.h>
#include <mruby/string.h>

mrb_state * mrb;

const char code[] =
  "a = Test.new\n"
  "b = a.test_method('2*3')\n"
  "p b\n";
  ;

static mrb_value test_method(mrb_state * mrb, mrb_value self)
{
  mrb_sym sym;
  mrb_int nb;
  mrb_value v;
  mrb_get_args(mrb, "S", &v);

  const char * code = mrb_string_value_cstr(mrb, &v);
  fprintf(stderr, "Code: '%s'\n", code);

  mrb_load_string(mrb, code);

  return v;
}

int main()
{
  mrb = mrb_open();
  struct RClass * t = mrb_define_class(mrb, "Test",
                                       mrb->object_class);

  mrb_define_method(mrb, t, "test_method",
                    &test_method, MRB_ARGS_REQ(1));

  mrb_load_string(mrb, code);

  mrb_close(mrb);
}

... but my complex code still segfaults unfortunately...

I have the same problem. Running the code below will cause segfault.
#include <mruby.h>
#include <mruby/compile.h>

mrb_value hello(mrb_state *mrb, mrb_value self);

int main() {
    struct mrb_state *mrb = mrb_open();

    mrb_define_method(mrb, mrb->object_class, "hello", hello, MRB_ARGS_NONE());

    mrb_load_string(mrb, "hello");

    mrb_close(mrb);
    return 0;
}

mrb_value hello(mrb_state *mrb, mrb_value self) {
    return mrb_load_string(mrb, "puts 'hello'");
}

At some point, mrb->c->stack is set to NULL. Then segfault is raised in processing OP_SENDB.

I couldn't reproduce the segv. Can you show us more info?

Version Info
$ uname -mprsv                                                                                Darwin 18.6.0 Darwin Kernel Version 18.6.0: Thu Apr 25 23:16:27 PDT 2019; root:xnu-4903.261.4~2/RELEASE_X86_64 x86_64 i386
$ clang --version
Apple LLVM version 10.0.1 (clang-1<IP_ADDRESS>)
Target: x86_64-apple-darwin18.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
$ ld -v
@(#)PROGRAM:ld  PROJECT:ld64-450.3
BUILD 18:16:53 Apr  5 2019
configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
LTO support using: LLVM version 10.0.1, (clang-1<IP_ADDRESS>) (static support for 22, runtime is 22)
TAPI support using: Apple TAPI version 10.0.1 (tapi-1<IP_ADDRESS>)
$ cmake --version
cmake version 3.15.0

CMake suite maintained and supported by Kitware (kitware.com/cmake).

CMake
cmake_minimum_required(VERSION 3.14)
project(segvtest C)

include(ExternalProject)

set(CMAKE_C_STANDARD 11)

ExternalProject_Add(
        mruby
        GIT_REPOSITORY https://github.com/mruby/mruby.git
        GIT_TAG 2.0.1
        CONFIGURE_COMMAND ""
        SOURCE_DIR mruby
        BUILD_IN_SOURCE true
        BUILD_COMMAND make
        INSTALL_COMMAND "")

ExternalProject_Get_Property(mruby source_dir)

add_executable(segvtest main.c)

include_directories(${source_dir}/include)
target_link_libraries(segvtest
        debug ${source_dir}/build/host-debug/lib/libmruby.a
        optimized ${source_dir}/build/host/lib/libmruby.a)

add_dependencies(segvtest mruby)

main.c
#include <mruby.h>
#include <mruby/compile.h>

mrb_value hello(mrb_state *mrb, mrb_value self);

int main() {
    struct mrb_state *mrb = mrb_open();

    mrb_define_method(mrb, mrb->object_class, "hello", hello, MRB_ARGS_NONE());

    mrb_load_string(mrb, "hello");

    mrb_close(mrb);
    return 0;
}

mrb_value hello(mrb_state *mrb, mrb_value self) {
    mrb_value result = mrb_load_string(mrb, "puts 'hello'");
    return result;
}

Do you need any additional information?

I could not reproduce it on master, but I could reproduce it on 2.0.1.
Is @astral1 trying a master?

@dearblue I tried with the master. And it works. My issue also seems to be related to #4384. Thanks very much!

Can I close this issue?

Sorry to dig this report again. I've identified the commit which makes my code segfault, it is this one:
commit 55431b4cef95541dc07f30f52b7fad9e9638b0be
Author: Yukihiro "Matz" Matsumoto<EMAIL_ADDRESS>Date:   Tue Jan 30 22:55:58 2018 +0900

    Need not to pop `callinfo` on `OP_STOP`.

Does that tell something about what I may be doing wrong in my code ? My code still segfaults in master.

Thank you. This is valuable input. If you can show us the backtrace of the crash, along with a commit hash, I think I can fix it.

Thanks. I've reproduced the bug against the HEAD of stable (commit 3d46f1b62092, unsure whether that's what you wanted).
The backtrace I've collected is the following:
(gdb) bt 8
#0  0x00005555557d5d4b in mrb_vm_exec (mrb=0x555555e01f70, proc=0x555555f1aea0, pc=0x0)
    at /home/vincent/Prog/mruby-github/src/vm.c:1477
#1  0x00005555557d20cd in mrb_vm_run (mrb=0x555555e01f70, proc=0x555555f1aea0, self=..., stack_keep=2)
    at /home/vincent/Prog/mruby-github/src/vm.c:948
#2  0x00005555557e4356 in mrb_run (mrb=0x555555e01f70, proc=0x555555f1aea0, self=...)
    at /home/vincent/Prog/mruby-github/src/vm.c:2836
#3  0x00005555557876f6 in MRuby::<lambda()>::operator() (__closure=0x7fffffffcab0) at src/mruby.cc:209
#4  std::_Function_handler<mrb_value(), MRuby::eval(const QByteArray&, const QString&, int)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/6/functional:1726
#5  0x00005555557876c1 in std::function<mrb_value ()>::operator()() const (this=<optimized out>)
    at /usr/include/c++/6/functional:2136
#6  protect_helper (helper=...) at src/mruby.cc:111
#7  0x000055555582acc7 in mrb_protect (mrb=0x555555e01f70,
    body=0x5555557876b0 <protect_helper(mrb_state*, mrb_value)>, data=..., state=0x7fffffffca2f "")
    at /home/vincent/Prog/mruby-github/mrbgems/mruby-error/src/exception.c:17

The problem occurs when the following happens: I'm calling a Proc that goes back to C++ code and creates another code and executes it (many times). The inner calls to mrb_vm_exec succeed (many calls to mrb_vm_exec with the same arguments). The segfault occurs upon returning to the outer mrb_vm_exec. I guess somehow the return stack is messed up by the inner calls ?
I can try to make a minimal crashing example, I haven't succeeded so far, though.

More information: I've added a small fprintf at the beginning of mrb_vm_exec to show the arguments.  I think the calls are nested this way:
mrb_vm_exec: 0x555555e029c0 0x555555f1b800 0x555555faa2e0
  mrb_vm_exec: 0x555555e029c0 0x555555f1b530 0x55555604adb0
  mrb_vm_exec: 0x555555e029c0 0x555555f1b470 0x5555560f58a0
  mrb_vm_exec: 0x555555e029c0 0x555555f23540 0x5555558a13ac
  [...]

It is clear ? Does it help ?

Thank you for the info. Could you please show us two more info:

the line where SEGV occurs (line 1477 in 3d46f1b was mere else).
check how it works (or not) when you revert 55431b4cef95541dc07f30f52b7fad9e9638b0be
Especially the latter. As far as I remember, I change just for optimization. If it doesn't work, I think it should be reverted.

Ah, sorry, it is line 1475 (so JUMP;), I've got two lines more because I've introduced a couple of fprintf at the beginning of mrb_vm_exec.
Unfortunately reverting 55431b4 does not seem to be enough... I'll try to come up with a minimal crashing example.
Thanks

Here is a simple example that crashes with the current stable:
#include <mruby.h>
#include <mruby/compile.h>
#include <mruby/variable.h>
#include <mruby/string.h>
#include <mruby/error.h>
#include <mruby/compile.h>
#include <mruby/proc.h>

mrb_state * mrb;

struct RProc * generate_proc(mrb_state * mrb, const char * code)
{
  struct mrbc_context * c = mrbc_context_new(mrb);
  struct mrb_parser_state * p = mrb_parse_string(mrb, code, c);
  struct RProc * proc = mrb_generate_code(mrb, p);
  mrbc_context_free(mrb, c);
  mrb_parser_free(p);
  return proc;
}

mrb_value run_proc(mrb_state * mrb, mrb_value h)
{
  /* Assumption: h is just a converted RProc */
  struct RProc * proc = (struct RProc *)mrb_cptr(h);
  return mrb_run(mrb, proc, mrb_top_self(mrb));
}

mrb_value run_code(mrb_state * mrb, const char * code)
{
  mrb_value p_wrap;
  mrb_bool failed;
  struct RProc * proc = generate_proc(mrb, code);
  SET_CPTR_VALUE(mrb, p_wrap, proc);
  return mrb_protect(mrb, &run_proc, p_wrap, &failed);
}

static mrb_value test_method(mrb_state * mrb, mrb_value self)
{
  mrb_value v;
  mrb_get_args(mrb, "S", &v);

  const char * cd = mrb_string_value_cstr(mrb, &v);
  return run_code(mrb, cd);
}

const char test_code[] =
  "t = Test.new\n"
  "p t\n"
  "b = t.test_method('2**8')\n"
  "p b\n"
  ;

int main()
{
  mrb = mrb_open();
  struct RClass * t = mrb_define_class(mrb, "Test",
                                       mrb->object_class);

  mrb_define_method(mrb, t, "test_method",
                    &test_method, MRB_ARGS_REQ(1));

  run_code(mrb, "p 2+2\n");
  run_code(mrb, test_code);
  mrb_close(mrb);
}

The trick here is that it crashes upon the nested calls to mrb_run. Is that because of the nested mrb_protect ? Am I doing something wrong ?

Leaving out the mrb_protect completely also crashes (always at the same place):
mrb_value run_code(mrb_state * mrb, const char * code)
{
  mrb_value p_wrap;
  mrb_bool failed;
  struct RProc * proc = generate_proc(mrb, code);
  SET_CPTR_VALUE(mrb, p_wrap, proc);
  return run_proc(mrb, p_wrap);
}

Additional naive question: is mruby freeing itself the generated RProc*, or should I dispose of it myself ?

The generated proc will be garbage collected.
I will investigate your code sample. Thank you!

The good news is that I can reproduce the problem with the sample code (yey!)
I found out that mrb_run function is not supposed to be called recursively.
I think I can fix it soon.

Use mrb_top_run instead of mrb_run. I mean replace the code:
  return mrb_run(mrb, proc, mrb_top_self(mrb));

to
  return mrb_top_run(mrb, proc, mrb_top_self(mrb), 0);

Actually, you have to manually push callinfo stack before calling mrb_run. We will make mrb_run out from API functions.

Thanks a lot ! That indeed fixes the segmentation fault with stable. That is not enough to prevent it on older mruby releases though (for instance 2.0.0 still segfaults), but I guess it doesn't matter so much.


Cannot restart nuxt:  Cannot read properties of undefined (reading 'Index')

When I install the package using Nuxt3 and Vue3. Nuxt fails to load when 'vue-social-sharing/nuxt' is added to modules in nuxt.config.ts

Cannot start nuxt:  Cannot read properties of undefined (reading 'Index')                                                                                09:18:44
at nuxtVueWaitModule (node_modules/vue-social-sharing/nuxt/index.js:21:50)
at installModule (node_modules/@nuxt/kit/dist/index.mjs:416:9)
at async initNuxt (node_modules/nuxt/dist/index.mjs:1825:7)
at async load (node_modules/nuxi/dist/chunks/dev.mjs:6779:9)
at async Object.invoke (node_modules/nuxi/dist/chunks/dev.mjs:6840:5)
at async _main (node_modules/nuxi/dist/cli.mjs:50:20)

I'm facing this issue as well on Nuxt 3. I'm using the module as a Vue plugin as a workaround.
~/plugins/socialSharing.ts:
import VueSocialSharing from "vue-social-sharing"

export default defineNuxtPlugin((nuxtApp) => {
	nuxtApp.vueApp.use(VueSocialSharing)
})

same question:
ERROR  Cannot start nuxt:  Cannot read properties of undefined (reading 'Index')                                                                                09:31:17
at nuxtVueWaitModule (node_modules/vue-social-sharing/nuxt/index.js:21:50)
how to solve this?

I'm facing this issue as well on Nuxt 3. I'm using the module as a Vue plugin as a workaround.
~/plugins/socialSharing.ts:
import VueSocialSharing from "vue-social-sharing"

export default defineNuxtPlugin((nuxtApp) => {
	nuxtApp.vueApp.use(VueSocialSharing)
})

This one worked and the nuxt v3 app rendered with no serious exceptions. But when i click in the social media links, it does not open the window to share.

ok,this solved my problem.
i defined a plugin in plugins/vue-social-sharing.ts
import { defineNuxtPlugin } from '#app'
import VueSocialSharing from "vue-social-sharing";
export default defineNuxtPlugin((nuxtApp) => {
nuxtApp.vueApp.use(VueSocialSharing);
}
and in vue template:

      Share on Facebook

it worked very well.

Any updates on this, I'm still getting this error !


Fix tox

This PR updates tox configuration to properly install the pytest dependency
The default install_command is python -I -m pip install {opts} {packages} and there's a bash script that will pass packages defined in deps.
Also changed how we invoke pytest (via python -Im) so there's no need for allowlist_externals

Excellent thanks @zerolab!


Add support for "number of zones" config entry

Creating a cluster on us-east-1 populates bootstrap.properties with 5 zones (and subnets). Bootstrap only supports 1 or 3.
I would like to specify the desired number of zones in config.yaml and not edit bootstrap.properties manually.

This is a deficiency in how bootstrap handles AZs. Having more availability zones than it can use should not be a failure condition. Cloudstrap could try to be clever about this, only a subset of availability zones to bootstrap, but that would be masking the underlying issue.

This is resolved in 7baa244c9570c4b4304e193504c3527507684be7 (0.47.2). You can set maximum_availability_zones in your configuration. It defaults to 3 so is unlikely to require modification.
As a companion feature, 0.47.5 introduced a minimum_availability_zones setting (defaulting to 1). If there are insufficient AZs to meet the minimum requested, it will reuse one or more of them. This should allow HA deployments in us-west-1 and other regions with fewer than 3 AZs.


No download URL.

All the apps no longer specify a download url for the apps, only the specific versions, this causes for some software, like Scarlet not to be able to let you download any of the apps because it can't find a download URL.

I will be supporting legacy versions of the AltSource API to an extent, but eventually, expect them to no longer include all legacy tags. Each extra bit of legacy data slows down the speed of source update calls.


GH-2836 fix shapes export bug

GitHub issue resolved: #2836
Briefly describe the changes proposed in this PR:

fix tests so they supply a dedupe hashset
fix some of the shapes where checking the deduplication was done too late

PR Author Checklist (see the contributor guidelines for more details):

[ ] my pull request is self-contained
[ ] I've added tests for the changes I made
[ ] I've applied code formatting (you can use mvn process-resources to format from the command line)
[ ] I've squashed my commits down to one or a few meaningful commits
[ ] every commit message starts with the issue number (GH-xxxx) followed by a meaningful description of the change
[ ] every commit has been signed off

This is going to take some more work it seems.

@jeenbroekstra this is a minor fix that essentially only affects our tests at the moment since the SHACL AST -> Model code is marked as internal only. This could eventually be used to support a Java based SHACL builder, but at the moment we are just using it to make sure our parser is working correctly by comparing the input with the output.

So when the build passes I intend to merge this.


CorsService does not inject CORS headers to error responses

I've created an error handler, and they won't affected by CorsDecorator I've attached...
Server.builder().apply {
        errorHandler(ServiceExceptionHandler())
        errorHandler(UniversalFailureHandler())
        errorHandler(UniversalIgnoreHandler())
        errorHandler(UniversalExceptionHandler())
        http(14000)

        decorator(corsDecorator)
}

In this situation, cors won't do their Jobs when error Handler catches the error.
I've digged some code and figured that decorators and errorHandlers are managed differently... Is there any way to decorate errorHandlers to follow the CORS rules?

btw, sorry for empty issue at Initial! I've mistyped enter and github submitted the issue with empty.

Hey, thanks a lot for reporting the problem. If I understood correctly, you want the CorsService to inject the CORS response headers even to the error responses generated by ServerErrorHandler, which is not possible obviously.
I think this is not something CorsService can solve unfortunately at the moment, because CorsService is only capable of handling a successful HttpResponse.
Perhaps we should provide CorsServerErrorHandler so that a user specify it with errorHandler()..?

Here's the idea:

Improve CorsConfig API so that a user can build it with a builder API, e.g.var myCorsCfg = CorsConfig.builder()....build();

Allow a user to create a CorsService with a CorsConfig.CorsService.newDecorator(myCorsCfg);
// and
myCorsCfg.newDecorator();
myCorsCfg.newService();

Implement a CorsServerErrorHandler and allow a user to create it with a CorsConfig.CorsServerErrorHandler.of(myCorsCfg);
// and
myCorsCfg.newErrorHandler();

(Stretch goal) Add a shortcut method to ServerBuilder and VirtualHostBuilder so that a user can add CorsService and CorsErrorHandler with a single call.Server.builder()
      .cors(myCorsCfg) // Adds CorsService and CorsErrorHandler on build() automatically.
      ..

Thank you for the fast response!
Is it possible to create CorsServerErrorHandler to wrap and provide CORS header for another ServerErrorHandler's response which will actually return a value?
As I checked, multiple ServerErrorHandler are associated by ServerErrorHandler.orElse() method, in below:
    default ServerErrorHandler orElse(ServerErrorHandler other) {
        requireNonNull(other, "other");
        return new ServerErrorHandler() {
            @Nullable
            @Override
            public HttpResponse onServiceException(ServiceRequestContext ctx, Throwable cause) {
                final HttpResponse response = ServerErrorHandler.this.onServiceException(ctx, cause);
                if (response != null) {
                    return response;
                }
                return other.onServiceException(ctx, cause);
            }
            /* skip others because of same approaches when association */
        };
    }

I don't know much about how ServiceExceptionHandler associated/interacts with others, but as I assume
this won't make other handler can modify response, which is necessary on current case.
If it can, then it could be nice to document about how to decorate ServiceExceptionHandler's behavior,
If not, maybe we should create new way to decorate ServiceExceptionHandler.
ps:
For who need fast solution for this, I solved the issue by decorating handlers manually, like this:
// Create decorator which will decorate the value to
fun corsExceptionHandlerDecorator(handler: ServerErrorHandler) = object : ServerErrorHandler {
    override fun onServiceException(ctx: ServiceRequestContext, cause: Throwable): HttpResponse? =
        handler.onServiceException(ctx, cause)?.mapHeaders { headers ->
            // Can be improved when CorsConfig API is injectable
            headers.withMutations { builder ->
                ctx.request().headers()["origin"]?.let { builder.add("access-control-allow-origin", it) }
                builder.add("access-control-allow-credentials", "true")
                builder.add("vary", "origin")
            }
        }
}

    // Create server
    private val server = Server.builder().apply {
        annotatedService("/metrics", MetricsController())

        listOf(
            ServiceExceptionHandler(),
            UniversalFailureHandler(),
            UniversalIgnoreHandler(),
            UniversalExceptionHandler(),
        ).forEach { errorHandler(corsExceptionHandlerDecorator(it)) }
        http(14000)

        decorator(corsDecorator)
    }.build()

A straightforward workaround is to set CORS headers using ServiceRequestContext.addAdditionalResponseHeader() in the CORS exception hander

like this?
fun corsExceptionHandlerDecorator(handler: ServerErrorHandler) = object : ServerErrorHandler {
    override fun onServiceException(ctx: ServiceRequestContext, cause: Throwable): HttpResponse? {
        ctx.additionalResponseHeaders().withMutations { builder ->
            ctx.request().headers()["origin"]?.let { builder.add("access-control-allow-origin", it) }
            builder.add("access-control-allow-credentials", "true")
            builder.add("vary", "origin")
        }

        return handler.onServiceException(ctx, cause)
    }
}

As i tried, this won't add CORS headers to error handler's response..

ctx.additionalResponseHeaders().withMutations { builder ->

HttpHeaders is immutable so  additionalResponseHeaders().withMutations() will create a new headers and the mutation won't affect the additional headers in ServiceRequestContext.
You may want to use one of them below.
https://github.com/line/armeria/blob/7f302505a05d24e7704bcffc43fab6337344cb2c/core/src/main/java/com/linecorp/armeria/server/ServiceRequestContext.java#L553-L567
fun corsExceptionHandlerDecorator() = object : ServerErrorHandler {
    override fun onServiceException(ctx: ServiceRequestContext, cause: Throwable): HttpResponse? {
        ctx. mutateAdditionalResponseHeaders { builder ->
            ctx.request().headers()["origin"]?.let { builder.add("access-control-allow-origin", it) }
            builder.add("access-control-allow-credentials", "true")
            builder.add("vary", "origin")
        }
        // fallback to the next error handler
        return null
    }
}

@Mina-1316 It seems like there is no need to apply CORS headers when preflight requests fail because they don't reach the business logic. Do you want to set CORS headers even when preflight requests fail?


[Das_Schwarze_Auge_4-1] Fix ui typo "Sinnesschärfe"

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

Changes / Description

UI typo: "Sinnenschärfe" -> "Sinnesschärfe"

Character Sheet Info Roll20 Internal Use only.

Sorry, but I have to veto this for several reasons. :cry:

"Sinnenschärfe" is the term used throughout the rules (e. g. Wege des Schwerts, p. 21).
This would not change the term everywhere.
Version not updated, info on new version missing.

On a sidenote: While it appears, "Sinnenschärfe" is the wrong word (with an almost ancient meaning), it is what the publisher chose. Around that message I also go into detail a bit more regarding the intentional deviations from the publisher's original terms.
If you would like to discuss this, please open a ticket over at my fork.

Moved the discussion https://github.com/kreuvf/roll20-character-sheets/issues/156


Simple and idiomatic crystal build?

Feature Request
The build command today takes a file name which to build. It would be great to have a default behavior for this that just works, like crystal build (without needing a file name). I see the shards.yml already has information on what to build.
On the same lines...
The Rust ecosystem has cargo build to build, and cargo run to run. It's very simple and idiomatic to use, especially for the new user.
Even the crystal compiler has some defaults that just work without needing to specify any parameters, like crystal init, crystal play and most notably crystal spec.
In a similar fashion would it make sense to have a crystal build?
Will it break backwards compatibility? Thankfully, no.

That's shards build

That's shards build

Thank you!


Escaping characters to have them "verbatim"?

Hi there! Awesome project. I wanted to ask if it is possible to somehow tell renderer that "this character is just text"? I am trying to render Ruby's object diagram from the official book:
                             +---------+             +-...
                             |         |             |
             BasicObject-----|-->(BasicObject)-------|-...
                 ^           |         ^             |
                 |           |         |             |
              Object---------|----->(Object)---------|-...
                 ^           |         ^             |
                 |           |         |             |
                 +-------+   |         +--------+    |
                 |       |   |         |        |    |
                 |    Module-|---------|--->(Module)-|-...
                 |       ^   |         |        ^    |
                 |       |   |         |        |    |
                 |     Class-|---------|---->(Class)-|-...
                 |       ^   |         |        ^    |
                 |       +---+         |        +----+
                 |                     |
    obj--->OtherClass---------->(OtherClass)-----------...

...and the SvgBobRus understands it pretty well, but replaces most of the "O"s with special symbols (note  also it can't guess two arrows under the "Class" at the bottom):

Hi, you can use quotes " to tell svgbob that it is just text.
So, you can do like:
-->"BasicObject"---

:(

This is a bug.

if O is laterally beside [A-Za-z1-9] treat as a word.

I published a new release, changing the behavior on how characters should behave. The Demo shown in the README of this project has improved treating characters such as "OoxX" to behave as text when next to a text and treated as drawing element when next to another drawing element that can strongly connect to it.


Add Cookbook section on README

I'm seeing a lot of requests for new HOCs that are for more specific needs. Since this library is really a tool to help with creating custom HOCs, perhaps there is a place we can share common recipes, like a cookbook. Perhaps gists or jsbins? It could be community driven mostly (though I'd love to see some recipes from the library authors out of curiosity).

It's a good idea. A PR will be welcome. Add a cookbook section to the current README and add some links under it would be a good start.

So has there been a PR?

I have a PR in for the recipes wiki I added. Recipes and Cookbook are the same thing so yeah it's in progress. Head over to the wiki to contribute.


Update Composer dependencies (2022-03-02-00-11)

Visual regression test passed!
View the visual regression test report


Fixnum is deprecated in Ruby 2.4.0

lib/fog/utilities.rb:4: warning: constant ::Fixnum is deprecated

I've added a pull request that fixes this: https://github.com/fog/fog-xenserver/pull/63

As the fix is already merged, shouldn't this issue be closed? @thechrisoshow  @espen

You are right! Thanks for noting!


Meshes to Import Started

Re issue #1074 I have made a start on such a page. Further comments in the issue.

The 'a few more' commit will all I will be able to do for a day or so.

Can see the idea behind using the default environment and cameras, the code is neat, clear and simple and deals with 'scaling' issues. Will make the changes and will add a section on dealing with scaling issues for users who want to use a one of the other cameras. It took me a while to work out why for example the BoomBox was not appearing and so think it is important to cover this point. Unless I am missing something.

Yes I was missing something can get the user to use the scene 'inspector' to check out the camera radius. So will add a section on this instead.

Thanks you so much!

Unless further changes are needed after review I am not intending to make any immediate changes or additions to this page.


[DO NOT MERGE YET] Enable searching of text "snippets"

The purpose of this change is to enable searching through individual lines of content.
It is proposed that this be enabled by:

Updating the schema for search.page to replace the string "text" field with an array of records, containing the same content separated into one or more string "lines" (accompanied by the associated integer line number)
Updating the SQL populating the search.page table to populate the "text" field with content lines from the content.lines table.

The change assumes that it is required to populate the line_number alongside the line (content) on the grounds that:

It will only make a small difference in how the front-end will need to be modified to facilitate the change; and
It could be useful later on

Note that one side-effect of this change is to increase the volume of data processed in the query which populates search.page by somewhere nearing 1GB (was previously ~5.8GB, is now 6.8GB).
Important: implementing this change will necessitate a change in the GovSearch (front-end) repository.
It's likely that at least the line 14 in buildSqlQuery.ts will need to be amended to specify that the search should take place against field text.line (as opposed to just text).

The current version of GovSearch displays the number of occurrences, rather than snippets.  https://github.com/alphagov/govuk-knowledge-graph-search/blob/6eb26fcf0ed12bb7052f873b9f4413933881af81/src/backend/bigquery/buildSqlQuery.ts#L36-L67

Since https://github.com/alphagov/govuk-knowledge-graph-search/pull/137/commits/d0ff1e1e30a658189cd9c20eccd16f1b212e20b0, GovSearch displays a count of occurrences instead.  This PR would improve on that, but it is unlikely to happen.


Please invite me to the GitHub Community Organization

Please I would really love to contribute to this community, I would be happy and glad to invited in as a contributor to this great Github Community Organisation.

Name: Olanrewaju Alaba

Discord Username(if exists): chryz_codez#2321

Additional Context:

How did you meet Eddie?
I met him virtually indirectly from his YouTube channel based on open source videos and the likes and I also needed to send him a direct message which he replied to, linking me to this great community.

What is the aim of joining this community?
I have been learning a lot about open source and I love to help, contribute and raise ideas for the progress of everyone, the society especially.
I joined this community also to implement what I've learnt along the way and also meet with great talents to move things forward.

@chryzcodez , please use Invitation to the GitHub Community Organization issue template for automatic organization invitation. This method takes time, to send invitation

Invitation to the GitHub Community Organization

Thanks @vj-abishek

Then close this issue


replace bare tries with suppress

Instead of
try:
    ...
except:
    pass

better do
with suppress(Error):
    ...

Codecov Report

Merging #901 (0bde014) into master (b31af67) will increase coverage by 0.49%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##           master     #901      +/-   ##
==========================================
+ Coverage   99.39%   99.88%   +0.49%
==========================================
  Files          21       21
  Lines        1816     1806      -10
==========================================
- Hits         1805     1804       -1
+ Misses         11        2       -9

Impacted Files
Coverage Δ

dynaconf/utils/files.py
100.00% <ø> (+4.08%)
:arrow_up:

dynaconf/cli.py
99.23% <100.00%> (+0.75%)
:arrow_up:

dynaconf/loaders/env_loader.py
100.00% <100.00%> (+10.00%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


setcvar bug

when i use setcvar to set something like sv_maxupdaterate 1000 it's actually set to sv_maxupdaterate sv_maxupdaterate 1000, like in the screenshot provided. (ignore the sv_maxupdaterate after the setcvar command)

LNX when I said take a look at it I didn't mean break it idiot

it new anti cheat bpyass tuest us!


Add information to troubleshooting section of README for workaround r…

…elated to https://www.pivotaltracker.com/n/projects/2136865/stories/160975609
Description
Addition to the README to provide information on how to workaround an issue related to dev machine timezones.
Code Review Verification Steps

[ ] Code follows the guidelines for Logging
[ ] The requirements listed in
Querying the Database Safely
have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #dp3-engineering

[ ] There are no aXe warnings for UI.
[ ] This works in IE.
Any new client dependencies (Google Analytics, hosted libraries, CDNs, etc) have been:

[ ] Communicated to @willowbl00
[ ] Added to the list of network dependencies

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Request review from a member of a different team.
[ ] Have the Pivotal acceptance criteria been met for this change?

References

Pivotal story for this change

@Ryan-Koch Is there any reason to not add this to the default .envrc to hopefully prevent future issues for everyone instead of (or perhaps in addition to) documenting the fix?


sheet.PrintSettings.Margins

sheet.PrintSettings.Margins = new PageMargins(1);In the document, I set the border to 1 inch, but the border of article printed out  is 29mm

How to get the effective range of the printer?


Devtools can't detect the app with GetMaterialApp

I open devtool but i don't see any widget in details tree.

Please follow the issue template when creating a new issue.
For example, we don't know which version of flutter or getx you are using
in this case you should also tell which IDE you are using and version of the extension
you should post too what tests have you done and what worked and what did not worked. For example, have you tested to replace GetMaterialApp to MaterialApp and then give an hot restart and see what happens?
have you tested if another app with getx gives the same error? have you tested if an app without getx gives the same error? this are all variables that we cant test here because it is happening specificly in your pc

I restart my computer and it's gone! btw, Getx is awesome !!!


Bug fixes

After working with torque for a while I have noticed several bugs. Those bugs have been fixed in this branch.

Thanks for all these. Nathan's pointed out a lot of things that should be fixed. I'll review in more detail after 3.7 most likely. Build breaks on Ubuntu:
../../../../Engine/source/scene/sceneContainer.cpp:1015:7: fatal error: use of undeclared identifier '_isnan'
      if(_isnan(currStartX))
         ^

Thanks for all this! Looking forward to getting it tested and rolled in.

seems to check out

Pending response from @MusicMonkey5555

Sorry for not being very active. Our company closed due to restructuring of Boeing and so I have been actively looking for a job, working on personal projects and taking care of a 1+ year old. So I've had hardly any time to keep up with my commits.
Amazing how not having a job can keep you busier than having one :)

Oh gosh, sorry to hear that! I imagine it can. I hope things work out!


WIP: Support Tensorflow distributed training in kfp workflow

What changes were proposed in this pull request?
Support running distributed Tensorflow training in kfp workflows.
Only Tensorflow/Keras distributed training with MultiWorkerMirroredStrategy is supported. Pytorch support will be added in other PRs. Distributed training using "paramter servers" will not be supported currently.
TODO:

Adding dependence steps before or after the distributed training step.
Pytorch support

set number of workers for the training step:

run the workflow:

How was this pull request tested?
TBD.

Thanks @typhoonzero for another contribution!
Few thoughts,

After building the PR, I cant seem to find the new fields in the UI. (could just be my env, but I did a purge and fresh build)

looks like argo specific metadata labels are hardcoded, we will need to support kfp tekton as well. Thanks @ptitzler
lastly, these changes are very specific to TF. Having them displayed dynamically will probably require us to describe what libraries the images contain.. in the metadata, which opens up a big can of worms. Maybe have a ENV var as a flag instead to trigger displaying these extra options...shrug...will definitely require more discussion.

@akchinSTC Thanks for the information. Actually, I'm looking for a more generic implementation, like workflow ParallelFor function, not only for distributed data parallel training, but also for parallel data processing features.
By setting a node as a parallelfor node (parallel count > 1), elyra should pass the following envs to the user program:

rank
nranks
runtime pod ip address for each rank

Then the user program can set either TF_CONFIG for Tensorflow distributed training or MASTER_ADDR for pytorch distributed training. In this case, the changes should be like:

A parallel-count property for each node.
Connect input and output to dependency nodes.
bootstrapper.py will set those envs at runtime.
Some examples for Tensorflow, Pytorch and general data processing.


[Organizations] Add member by email address

@loic-sharma commented on Mon Jul 02 2018
If you navigate to your organization and add a member, the input field reads "Add existing NuGet.org user". It's not clear that this field accepts only usernames but NOT email addresses. We should either:

Allow adding Organization members by email addresses
Change the input field to read something along the lines of "Add existing NuGet.org user by username"
Detect when an email address is inputted, and if so, show an error message that you must search by username

I think option 1 would be the best experience all around.

@loic-sharma
Option 1 was originally proposed but was taken back later as there was privacy concern. We do not divulge email addresses of NuGet users.

I see. Do you have a preference between option 2 and 3?

After discussion with @anangaur, we are planning to do both 2 and 3.


Tame 1Q simplification warning

closes #6848
Summary
Tames an overly active warning which is triggered during synthesis-based 1Q simplification.
Details and comments
In #6553, we added a warning in Optimize1qGatesDecomposition.__call__ which was meant to check that gate sequences emitted by an operator-based 1Q synthesis routine were always more efficient (i.e., shorter) than the sequence used to form the input. The idea was that this would warn us if a synthesis routine were ever to emit a sequence which is not maximally efficient.
We made a mistake in the definition of 'maximally efficient'. In general, a synthesis routine promises to emit gates whose types form a subset of some larger set of native gates, and it cannot make guarantees (nor be expected to make guarantees) about optimality of its circuits within the larger set, but only within the smaller set. For instance, PSX decomposition emits p(pi/2) ; sx ; p(pi/2) as a circuit embodying h. Its output ["p", "sx"] conforms to the set of native gates ["p", "sx", "h"] and the emitted circuit is depth-optimal within ["p", "sx"], but it is not depth-optimal within the larger set — a lone h is shorter.
I don't believe it's possible to reason about optimality over unions of synthesis targets. So, instead, this PR modifies the predicate which guards the warning about increased depth, specializing it to each synthesis routine. In order to do this specialization, we have to remember which routines target which sets of output, and this is the primary source of diff size. (In retrospect, it might have been preferable to use the .basis slot, rather than retaining the information locally...)
(This isn't exactly a bug — a gnat, at worst — so I've elected not to mention it in the change log.)

Would a better approach be to partially revert to the behavior prior to #6553 and pass through the input in favour of the resynthesized sequence in the case that the input sequence is both: 1) shorter; and 2) fully-contained in the native gate set?

I think that this describes the behavior currently. The predicate guarding replacement is
                    uncalibrated_and_not_basis_p
                    or (uncalibrated_p and len(run) > len(new_circ))
                    or isinstance(run[0].op, U3Gate)

The uncalibrated_and_not_basis_p flag will be lowered if the whole input sequence is in the larger native gate set, and the flag check will also pass if the original sequence is shorter than the synthesized one.


Forwarded messages do not use E2EE

Need to complete device verification before messages will be encrypted. This should ideally be an interactive and nearly automatic process.
https://matrix-nio.readthedocs.io/en/latest/examples.html#interactive-encryption-key-verification

Really nice project, thanks! Just verified my device but it seems like it does not support E2EE by design, right? Even using from verified device.

You are correct, this project does not yet support E2EE in our usage of the Matrix API.
Which device did you verify, and how? There might be some way to add the device verification information to our calls if it is available, but I would have to check into it more.


Access isolation for different file

I have files from two services that are required to be uploaded to SeaweedFS. One set of files needs to be publicly accessible via the internet, whereas the other is intended solely for internal use.
What access control measures can be implemented to ensure external networks cannot access files not designated for public availability?
**1.**A current proposal involves spinning up a separate filer instance dedicated to the external service, accompanied by a segregated database for storing metadata (a concern arises here: if a shared database were used for metadata, would it negate the isolation effect between filers, and could filers potentially access each other's files?). This setup isolates two filer services while still connecting to the same master and volume services.
**2.**Utilizing the same filer, master, and volume services, augmenting the filer configuration with a -disableDir flag. When external HTTP requests attempt to access directories marked by this -disableDir configuration, they would receive a 403 Forbidden status, without interfering with internal gRPC communications.
I would appreciate your insight into which method appears more feasible. If the second option is advisable, I am prepared to develop the necessary configuration adjustments and submit a pull request for consideration.

How abut just using nginx to configure access?

How abut just using nginx to configure access?

Thank you very much. It sounds a good suggestion for addressing the issue, and I will give it a try.

How abut just using nginx to configure access?

I have another question for you.
Regarding the issue I mentioned earlier in  #5218 , we only resolved the problem on the filer java client side, but I suspect the problem lies with the Seaweed server, specifically in being master unable to locate the volume servers.
I am now attempting to retrace and pinpoint the server-side issue; however, upon reviewing the logs from that period, no abnormal behavior is evident, and the code logic appears sound, making the issue rather elusive.
Have there been any similar issues reported or encountered subsequently?
The version is : Seaweed Master 30GB 3.57 0f8168c0c928bba3d2f48b0680d3bdce9c617559


:bug: Filtering business service on copy assessment form

Previously, the business service filter wasn't working on the copy assessment form. This makes it so we can filter results when copying assessments. It also removes the "" filter option.
Resolves https://issues.redhat.com/browse/MTA-34

@djzager, please reference MTA issue (34) in PR description for follow-up.

@djzager, thanks for your help.
The filtering is needed to avoid empty entries for applications with no business service assigned.
The issue for business services filters no working was because the application key's name returned was not the application name.

@djzager @gildub Thanks for your help on this. Will merge as soon as I have a working hub to test against.


blackbot will place trades with itself forever when at very small pricing values

when priced near 0.00000001 to 0.00000004 area, the bot will make trades with itself until it exhausts the wallet or crashes.

i think this has to do with that if the interval is smaller than one wavetoshi and then it will just keep buying and selling from itself. it should really check to see if it's got any buy's that conflict with any sells and vice versa before creating buys or sells.


Error creating a property in inner class

Tested versions
v4.3.dev5.official [89f70e98d]
System information
w10 64
Issue description
When a property is created in an inner class this error is generated., I think it is a bug, because I believe that this error should not happen.

Steps to reproduce
Create a property in an inner class
Minimal reproduction project (MRP)
...

The, issue is that the error isn't clear, but the proper syntax is:
var dir_horizontal: int:
    set(...)

I'd suspect it's not easy to detect this error clearly though, as you can't quite assume that this is missing
Does it print a different error when not in an inner class?
CC @dalexeev @vnen

I'd suspect it's not easy to detect this error clearly though, as you can't quite assume that this is missing
Does it print a different error when not in an inner class?
CC @dalexeev @vnen

Print the same error

I'd suspect it's not easy to detect this error clearly though, as you can't quite assume that this is missing

I think it's pretty simple, just check the INDENT token where we expect a colon. I'll look at this later.


document  graphql setup

please add documentation related to the architecture, components, file structure, usage and any other important notes.

Closing in favor of https://github.com/eoscostarica/eosrate/issues/59


Switch to having the FederatedNamespace define the template

Previously the template for a FederatedNamespace namespace was sourced from the containing namespace.  This divergence from the norm of sourcing the template from a field in the federated resource was a source of user confusion.
Fixes #652
4th in a series targeting #612

cc: @andersjanmyr

Rebased

Rebased

Overall LGTM. This is step in the right direction. This would probably simplify user understanding. Would leave it to other reviewers to comment and merge.

@marun few nits in comments; overall lgtm!

Rebased and added commit to Explain why sync controller never deletes namespaces in host cluster.

It is clear now. LGTM

Taking the liberty to add LGTM :) as the comments raised by @irfanurrehman have been addressed.
/lgtm
Thanks @marun


[enhancement] hide diagnostic in the new buffer gen.nvim on split view

The  new buffer created becomes a christmas tree with lsps and other diagnostics one may have active.
I've tried to set up an autocmd on BufEnter with pattern gen.nvim to trigger vim.diagnostic.hide() but wasn't succesful. ( works when exiting and reentering tho). The other event emitters I tried don't work too.
Is it possible to disable them on the new buffer?
the code in question is here
https://github.com/David-Kunz/gen.nvim/blob/46ab810130097494bbcf12b1426a7166f4c2995e/lua/gen/init.lua#L121-L129
this is the result

This is more of an LSP question rather than gen.nvim. So I recommend you search in nvim-lspconfig or similar.
I actually previously had certain issues with my LSP server and tried solving it by disabling it in certain filetypes temporarily without uninstalling it, or at least disable diagnostics. It was a huge pain, and at the end I actually could not get it to disable, instead I fixed the issues with the LSP server itself lol.
I remember trying to do similar autocmd disable diagnostics stuff, as I said I also couldn't get it to work. I think you are on the right track though.
Btw what are the LSP's you are using here? It appears to be some markdown format LSP and grammar+spelling LSP?

thanks for your suggestion @life00!
I decided to post it here because I thought it could be a sane default to disable possible linting lsps people have on by default together with diagnostics.
This is because the filetype is set to markdown.
If you take a look at things like glow.nvim, dev-docs.nvim, I don't incur in this problem over there when opening their windows.
That said, for now my autocmd works only when leaving the buffer and re-entering it. (and is enough for me)
It appears it can't open with them disabled for some reason. (it reactivates them)
this is a list  of the lsps: [marksman, prosemd_lsp, markdownlint, proselint, codespell, write_good]

@gipo355 its great you found the solution that at least somewhat fixes your problem.
That's a lot of LSPs :D
I just wanted to comment on that. I personally only use ltex-ls with ltex_extra and find it to be sufficient (I also have languagetool server installed separately), and I believe that languagetool provides the best results among open source spell, grammar, and style checkers.   Regarding the syntax LSPs, I did not particularly enjoy having them complain about some formatting errors. It was just annoying, distracting, and unnecessary. Just wanted to suggest.

Thanks a lot for your suggestions, closing it now as you found a solution!


iOS devices require "double tap" to select rating

I seem to be having an issue where the rating only works on iOS if you double-tap the star. I suspect this has to do with using mouseevents, but I'm not sure.
The stars appear to be selected (they turn yellow) but the v-model is only updated with a second tap on the same star.

Well, for anyone else dealing with this and also inexperienced building and modifying vue components: I ended up just using my own solution based on this CSS-only example of star rating: https://codepen.io/jexordexan/pen/yyYEJa

An option to disable the mouse hover functionality on touch devices would be fantastic.
I tried to "fix" it by myself, but I'm too new to Vue's world, hehe.

I've added better touch support for the forthcoming minors versions, so hopefully this will no longer be an issue.


F add coreutils

Added the GNU Coreutils to benchbuild's c_projects.

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- varats/projects/c_projects/coreutils.py  3

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Issues
======
+ Solved 6

Complexity increasing per file
==============================
- varats/projects/c_projects/coreutils.py  5

Complexity decreasing per file
==============================
+ varats/experiments/extract.py  -1

Clones added
============
- varats/experiments/vara_full_mtfa.py  1
- varats/experiments/vara_fc_taint_analysis.py  1

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- varats/projects/c_projects/coreutils.py  5

See the complete overview on Codacy


Refactor the repr for _Trochoid

Description
No dependencies required for this change. Issue "Refactor the repr for _Trochoid #117" should be fixed as described by mapping the numbers (no matter the size of self.thetas) in the list to strings, and then joining them in a str list to be returned by the repr.
Fixes # 117
Checklist

[* ] I followed the guidelines in our Contributing document
[* ] I added an explanation of my changes

Additional notes (optional)

Hey @jlonge4 thanks so much for opening a PR! :D
The change here is losing some of the key functionality that we'll need to incorporate before merging
Here's the relevant context from #117:

Basically thetas contains a list of user defined theta values such as [0, 0.1, 0.2, 0.3 ... 3.3, 3.4]. For the repr display we only want to show the first element of the list, the second element (to show the increment of thetas], and the last element so that the list would display like thetas=[0, 0.1, ... 3.4].

Let's say we have shape = Hypotrochoid(R=100, r=30, d=55, thetas=np.arange(0, 10, .1)). With the change above this will now display as
>>> print(shape)
>>> Hypotrochoid(R=100, r=30, d=55, thetas=0.0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6000000000000001, 0.7000000000000001, 0.8, 0.9, 1.0, 1.1, 1.2000000000000002, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7000000000000002, 1.8, 1.9000000000000001, 2.0, 2.1, 2.2, 2.3000000000000003, 2.4000000000000004, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9000000000000004, 3.0, 3.1, 3.2, 3.3000000000000003, 3.4000000000000004, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9000000000000004, 4.0, 4.1000000000000005, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.800000000000001, 4.9, 5.0, 5.1000000000000005, 5.2, 5.300000000000001, 5.4, 5.5, 5.6000000000000005, 5.7, 5.800000000000001, 5.9, 6.0, 6.1000000000000005, 6.2, 6.300000000000001, 6.4, 6.5, 6.6000000000000005, 6.7, 6.800000000000001, 6.9, 7.0, 7.1000000000000005, 7.2, 7.300000000000001, 7.4, 7.5, 7.6000000000000005, 7.7, 7.800000000000001, 7.9, 8.0, 8.1, 8.200000000000001, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9.0, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.600000000000001, 9.700000000000001, 9.8, 9.9, origin=(0,0))

which has a lot of redundant information - ideally we would preserve the original if-elif-else functionality just with a cleaner implementation so that the above example would instead output as
>>> print(shape)
>>> Hypotrochoid(R=100, r=30, d=55, thetas=[0.0, 0.1, ... 9.9], origin=(0,0))

This would show the first number (the start), the second number to show what the increments are (ithe step), and then the final number (the stop)
Let me know what you think!

@chris-greening Ohhhh my fault I totally missed that! Thanks for the explanation 😆 I will have some more time tomorrow if someone else doesn't get to it first 👍🏼

Noooo totally no worries!!! You got it - truly thank you for your interest in contributing
Let me know if you need any more info/have any questions, looking forward to the update!

@chris-greening Alright my friend let's see if that gets it, let me know what you think

Ye ye ye that'll do it - thanks so much @jlonge4 !!! 😎

@chris-greening happy to help!


Remove Serialise class from a bunch of places

We remove Serialise from a variety of places in the consensus layer, in order to allow integration with the ledger layer, which does not use Serialise.

Before merging this, this branch can be squashed to two commits: one for the .gitignore and one for the rest.

Yep, I intend to do that


ViewException does not provide dependencies to the wrapped report method

Laravel Version: 6.20.15 / 8.25.0 / 9.x (8076d8628f6ca3c9f336bc5457ae00a4c13dbd74)
PHP Version: N/A
Database Driver & Version: N/A

Description:
The ViewException class introduced in https://github.com/laravel/framework/pull/36032 does not pass dependencies to the wrapped exception's report method. This causes a fatal error when an exception thrown in a view has a dependency
See the docs:

You may type-hint any required dependencies of the report method and they will automatically be injected into the method by Laravel's service container.
https://laravel.com/docs/8.x/errors#renderable-exceptions

Steps To Reproduce:

Create a new Laravel project
Remove Ignition & Collision (composer remove facade/ignition nunomaduro/collision) [6.x & 8.x only]
Create a custom exception class with a report method that requires dependencies, e.g.:namespace App\Exceptions;

class MyException extends \Exception
{
    public function report(\Illuminate\Contracts\Auth\Guard $guard)
    {
        return false;
    }
}

Throw an instance of this exception in a view
An ArgumentCountError is thrown:

Too few arguments to function App\Exceptions\MyException::report()

Urgh, I didn't take that into account. I'll get that fixed 👍

@imjoehaines can you try modifying the ViewException class to the following below and see if that works?
<?php

namespace Illuminate\View;

use ErrorException;
use Illuminate\Container\Container;
use Illuminate\Support\Reflector;

class ViewException extends ErrorException
{
    /**
     * Report the exception.
     *
     * @return void
     */
    public function report()
    {
        $exception = $this->getPrevious();

        if (Reflector::isCallable($reportCallable = [$exception, 'report'])) {
            Container::getInstance()->call($reportCallable);
        }
    }

    /**
     * Render the exception into an HTTP response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function render($request)
    {
        $exception = $this->getPrevious();

        if ($exception && method_exists($exception, 'render')) {
            return $exception->render($request);
        }
    }
}

@imjoehaines can you try modifying the ViewException class to the following below and see if that works?

Yeah, that works 🙂


Add Lazy init

Codecov Report

Merging #4 into master will increase coverage by 0.34%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master       #4      +/-   ##
==========================================
+ Coverage   87.32%   87.67%   +0.34%
==========================================
  Files           3        3
  Lines          71       73       +2
==========================================
+ Hits           62       64       +2
  Misses          9        9

Impacted Files
Coverage Δ

src/logicipi/function.py
85.71% <100.00%> (+0.60%)
:arrow_up:

Continue to review full report at Codecov.

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


refactor(server): Break up ServeHTTP for readability

TL;DR
Extracted HTTP handlers for /receive/pop and /receive/flush endpoints into separate methods.
What changed?

Moved /receive/pop handler logic into receivePop method
Moved /receive/flush handler logic into receiveFlush method
Removed //nolint:nestif comment as it's no longer needed
Main ServeHTTP method now delegates to these new methods

How to test?

Send HTTP requests to /receive/pop endpoint

Verify messages are received correctly
Check repeat-last functionality works as expected

Send HTTP requests to /receive/flush endpoint

Verify all messages are flushed properly
Confirm last message is stored when repeat-last is enabled

Why make this change?
Improves code organization and readability by breaking down the large ServeHTTP method into smaller, focused methods. This makes the code easier to maintain and test while reducing cognitive complexity.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#23  👈 (View in Graphite)
#22
#21
#20
#19
#18
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Merge activity

Dec 21, 4:05 PM EST: A user merged this pull request with Graphite.


[Event Hubs] Processor Release Prep

Summary
The focus of these changes is to prepare the Event Hubs Processor package for its April release.

API change check for Azure.Messaging.EventHubs.Processor
API changes are not detected in this pull request for Azure.Messaging.EventHubs.Processor

API change check for Azure.Messaging.EventHubs.Experimental
API changes are not detected in this pull request for Azure.Messaging.EventHubs.Experimental


Is it possible to add a layer to an Estimator after training it?

Hi all,
After training an estimator, we'd like to modify the model and add a custom layer.
Is there a way to modify the estimator model that way?
Thanks!

@jxieeducation It looks, This question is better asked on StackOverflow since it is not a bug or feature request. There is also a larger community that reads questions there. Let us know. Thanks!


Upgrade crate image: ^0.19.0 -> ^0.20.0

See https://deps.rs/repo/github/foresterre/sic;
Will be upgraded after #60.

Completed by #66


Bug 2020610: Update subversion plugin to 2.15.1

Subversion plugin version is updated to 2.15.1 in order to fix security issues (see more at https://www.jenkins.io/security/advisory/2021-11-04/#fix).

/assign @akram

/retest

/hold
This should merge after #1332

/retitle Bug 2020610: Update subversion plugin to 2.15.1

/cherry-pick release-4.8

/cherry-pick release-4.6

https://github.com/openshift/jenkins/pull/1332 has merged
/hold cancel

Plugin list to supply in the ART request:
2021-11-10T13:17:32.092331415Z Installed plugins:
2021-11-10T13:17:32.100056355Z ace-editor:1.1
2021-11-10T13:17:32.106960822Z ant:1.11
2021-11-10T13:17:32.113867393Z apache-httpcomponents-client-4-api:4.5.13-1.0
2021-11-10T13:17:32.120803632Z authentication-tokens:1.4
2021-11-10T13:17:32.127677799Z blueocean-autofavorite:1.2.4
2021-11-10T13:17:32.134448660Z blueocean-bitbucket-pipeline:1.24.8
2021-11-10T13:17:32.141208903Z blueocean-commons:1.24.8
2021-11-10T13:17:32.148085899Z blueocean-config:1.24.8
2021-11-10T13:17:32.154938224Z blueocean-core-js:1.24.8
2021-11-10T13:17:32.161795199Z blueocean-dashboard:1.24.8
2021-11-10T13:17:32.168709526Z blueocean-display-url:2.4.1
2021-11-10T13:17:32.175618749Z blueocean-events:1.24.8
2021-11-10T13:17:32.182826403Z blueocean-github-pipeline:1.24.8
2021-11-10T13:17:32.190041730Z blueocean-git-pipeline:1.24.8
2021-11-10T13:17:32.197063365Z blueocean-i18n:1.24.8
2021-11-10T13:17:32.204064440Z blueocean:1.24.8
2021-11-10T13:17:32.210948199Z blueocean-jwt:1.24.8
2021-11-10T13:17:32.217792599Z blueocean-personalization:1.24.8
2021-11-10T13:17:32.224613799Z blueocean-pipeline-api-impl:1.24.8
2021-11-10T13:17:32.231408810Z blueocean-pipeline-editor:1.24.8
2021-11-10T13:17:32.238257546Z blueocean-pipeline-scm-api:1.24.8
2021-11-10T13:17:32.245063692Z blueocean-rest-impl:1.24.8
2021-11-10T13:17:32.251942855Z blueocean-rest:1.24.8
2021-11-10T13:17:32.259120915Z blueocean-web:1.24.8
2021-11-10T13:17:32.266118408Z bootstrap4-api:4.6.0-3
2021-11-10T13:17:32.273097471Z bouncycastle-api:2.23
2021-11-10T13:17:32.280259757Z branch-api:2.6.4
2021-11-10T13:17:32.287364939Z caffeine-api:2.9.1-23.v51c4e2c879c8
2021-11-10T13:17:32.294430704Z checks-api:1.7.2
2021-11-10T13:17:32.301475324Z cloudbees-bitbucket-branch-source:2.4.4
2021-11-10T13:17:32.308387882Z cloudbees-folder:6.16
2021-11-10T13:17:32.315258213Z config-file-provider:3.8.1
2021-11-10T13:17:32.322062384Z configuration-as-code-groovy:1.1
2021-11-10T13:17:32.328888770Z configuration-as-code:1.52
2021-11-10T13:17:32.335736169Z credentials-binding:1.27
2021-11-10T13:17:32.342635566Z credentials:2.5
2021-11-10T13:17:32.349595457Z display-url-api:2.3.5
2021-11-10T13:17:32.356414316Z docker-commons:1.17
2021-11-10T13:17:32.363388429Z durable-task:1.37
2021-11-10T13:17:32.370211465Z echarts-api:5.0.2-1
2021-11-10T13:17:32.377140226Z favorite:2.3.1
2021-11-10T13:17:32.384592336Z font-awesome-api:5.15.2-2
2021-11-10T13:17:32.391708149Z git-client:3.9.0
2021-11-10T13:17:32.398512264Z github-api:1.114.2
2021-11-10T13:17:32.405419239Z github-branch-source:2.6.0
2021-11-10T13:17:32.412520555Z github:1.34.0
2021-11-10T13:17:32.419499528Z git:4.8.3
2021-11-10T13:17:32.426358901Z git-server:1.9
2021-11-10T13:17:32.433364779Z google-oauth-plugin:1.0.6
2021-11-10T13:17:32.440090007Z groovy:2.4
2021-11-10T13:17:32.446864166Z handy-uri-templates-2-api:2.1.6-1.0
2021-11-10T13:17:32.453651529Z htmlpublisher:1.25
2021-11-10T13:17:32.460580518Z jackson2-api:2.12.4
2021-11-10T13:17:32.467568205Z jenkins-design-language:1.24.8
2021-11-10T13:17:32.474392599Z jira:3.5
2021-11-10T13:17:32.481577041Z job-dsl:1.77
2021-11-10T13:17:32.489054134Z jquery3-api:3.6.0-1
2021-11-10T13:17:32.495928915Z jsch:<IP_ADDRESS>
2021-11-10T13:17:32.502863471Z junit:1.52
2021-11-10T13:17:32.509865221Z kubernetes-client-api:5.4.1
2021-11-10T13:17:32.516800754Z kubernetes-credentials:0.8.0
2021-11-10T13:17:32.523765175Z kubernetes:1.30.1
2021-11-10T13:17:32.530670522Z lockable-resources:2.11
2021-11-10T13:17:32.537443136Z mailer:1.34
2021-11-10T13:17:32.544318844Z mapdb-api:<IP_ADDRESS>
2021-11-10T13:17:32.551286817Z matrix-auth:2.6.8
2021-11-10T13:17:32.559014074Z matrix-project:1.19
2021-11-10T13:17:32.565979752Z mercurial:2.15
2021-11-10T13:17:32.572860025Z metrics:<IP_ADDRESS>
2021-11-10T13:17:32.579715925Z oauth-credentials:0.4
2021-11-10T13:17:32.586837139Z okhttp-api:<IP_ADDRESS>
2021-11-10T13:17:32.594107081Z openshift-client:1.0.35
2021-11-10T13:17:32.601097390Z openshift-login:1.0.26
2021-11-10T13:17:32.608355282Z openshift-sync:1.0.50
2021-11-10T13:17:32.615435464Z pam-auth:1.6
2021-11-10T13:17:32.622402571Z pipeline-build-step:2.14
2021-11-10T13:17:32.629493992Z pipeline-graph-analysis:1.10
2021-11-10T13:17:32.636710597Z pipeline-input-step:2.12
2021-11-10T13:17:32.643777033Z pipeline-milestone-step:1.3.1
2021-11-10T13:17:32.650853629Z pipeline-model-api:1.8.4
2021-11-10T13:17:32.657748878Z pipeline-model-definition:1.8.4
2021-11-10T13:17:32.664695321Z pipeline-model-extensions:1.8.4
2021-11-10T13:17:32.671558537Z pipeline-rest-api:2.15
2021-11-10T13:17:32.678822946Z pipeline-stage-step:2.5
2021-11-10T13:17:32.687626112Z pipeline-stage-tags-metadata:1.8.4
2021-11-10T13:17:32.694877711Z plain-credentials:1.7
2021-11-10T13:17:32.701804569Z plugin-util-api:2.4.0
2021-11-10T13:17:32.708760952Z popper-api:1.16.1-2
2021-11-10T13:17:32.715531601Z prometheus:2.0.10
2021-11-10T13:17:32.722279458Z pubsub-light:1.13
2021-11-10T13:17:32.729005115Z scm-api:2.6.5
2021-11-10T13:17:32.735814085Z script-security:1.78
2021-11-10T13:17:32.742537370Z snakeyaml-api:1.29.1
2021-11-10T13:17:32.749467348Z sse-gateway:1.24
2021-11-10T13:17:32.756340920Z ssh-credentials:1.19
2021-11-10T13:17:32.763245081Z structs:1.23
2021-11-10T13:17:32.770079394Z subversion:2.15.1
2021-11-10T13:17:32.776935680Z token-macro:266.v44a80cf277fd
2021-11-10T13:17:32.783977855Z trilead-api:1.0.13
2021-11-10T13:17:32.790812481Z variant:1.4
2021-11-10T13:17:32.797617805Z workflow-api:2.46
2021-11-10T13:17:32.804427806Z workflow-basic-steps:2.20
2021-11-10T13:17:32.811250620Z workflow-cps-global-lib:2.17
2021-11-10T13:17:32.818213393Z workflow-cps:2.92
2021-11-10T13:17:32.824980248Z workflow-durable-task-step:2.35
2021-11-10T13:17:32.831841038Z workflow-job:2.41
2021-11-10T13:17:32.838599123Z workflow-multibranch:2.23
2021-11-10T13:17:32.845342168Z workflow-scm-step:2.13
2021-11-10T13:17:32.852209325Z workflow-step-api:2.24
2021-11-10T13:17:32.859020573Z workflow-support:3.8

from https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/origin-ci-test/pr-logs/pull/openshift_jenkins/1337/pull-ci-openshift-jenkins-master-images/1458421643838754816/artifacts/build-logs/jenkins.log

This is an amended list of plugins, since we also upgraded core jenkins. I pulled this out of our recent ART sync update in #1340.
See https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/origin-ci-test/pr-logs/pull/openshift_jenkins/1340/pull-ci-openshift-jenkins-master-images/1460889340941963264/artifacts/build-logs/jenkins.log
ace-editor:1.1
ant:1.11
apache-httpcomponents-client-4-api:4.5.13-1.0
authentication-tokens:1.4
blueocean-autofavorite:1.2.4
blueocean-bitbucket-pipeline:1.24.8
blueocean-commons:1.24.8
blueocean-config:1.24.8
blueocean-core-js:1.24.8
blueocean-dashboard:1.24.8
blueocean-display-url:2.4.1
blueocean-events:1.24.8
blueocean-github-pipeline:1.24.8
blueocean-git-pipeline:1.24.8
blueocean-i18n:1.24.8
blueocean:1.24.8
blueocean-jwt:1.24.8
blueocean-personalization:1.24.8
blueocean-pipeline-api-impl:1.24.8
blueocean-pipeline-editor:1.24.8
blueocean-pipeline-scm-api:1.24.8
blueocean-rest-impl:1.24.8
blueocean-rest:1.24.8
blueocean-web:1.24.8
bootstrap4-api:4.6.0-3
bouncycastle-api:2.23
branch-api:2.6.4
caffeine-api:2.9.1-23.v51c4e2c879c8
checks-api:1.7.2
cloudbees-bitbucket-branch-source:2.4.4
cloudbees-folder:6.16
config-file-provider:3.8.1
configuration-as-code-groovy:1.1
configuration-as-code:1.52
credentials-binding:1.27
credentials:2.5
display-url-api:2.3.5
docker-commons:1.17
durable-task:1.37
echarts-api:5.0.2-1
favorite:2.3.1
font-awesome-api:5.15.2-2
git-client:3.9.0
github-api:1.114.2
github-branch-source:2.6.0
github:1.34.0
git:4.8.3
git-server:1.9
google-oauth-plugin:1.0.6
groovy:2.4
handy-uri-templates-2-api:2.1.6-1.0
htmlpublisher:1.25
jackson2-api:2.12.4
jenkins-design-language:1.24.8
jira:3.5
job-dsl:1.77
jquery3-api:3.6.0-1
jsch:<IP_ADDRESS>
junit:1.52
kubernetes-client-api:5.4.1
kubernetes-credentials:0.8.0
kubernetes:1.30.1
lockable-resources:2.11
mailer:1.34
mapdb-api:<IP_ADDRESS>
matrix-auth:2.6.8
matrix-project:1.19
mercurial:2.15
metrics:<IP_ADDRESS>
oauth-credentials:0.4
okhttp-api:<IP_ADDRESS>
openshift-client:1.0.35
openshift-login:1.0.26
openshift-sync:1.0.50
pam-auth:1.6
pipeline-build-step:2.14
pipeline-graph-analysis:1.10
pipeline-input-step:2.12
pipeline-milestone-step:1.3.1
pipeline-model-api:1.8.4
pipeline-model-definition:1.8.4
pipeline-model-extensions:1.8.4
pipeline-rest-api:2.15
pipeline-stage-step:2.5
pipeline-stage-tags-metadata:1.8.4
plain-credentials:1.7
plugin-util-api:2.4.0
popper-api:1.16.1-2
prometheus:2.0.10
pubsub-light:1.13
scm-api:2.6.5
script-security:1.78
snakeyaml-api:1.29.1
sse-gateway:1.24
ssh-credentials:1.19
structs:1.23
subversion:2.15.1
token-macro:266.v44a80cf277fd
trilead-api:1.0.13
variant:1.4
workflow-api:2.46
workflow-basic-steps:2.20
workflow-cps-global-lib:2.17
workflow-cps:2.92
workflow-durable-task-step:2.35
workflow-job:2.41
workflow-multibranch:2.23
workflow-scm-step:2.13
workflow-step-api:2.24
workflow-support:3.8

ART request: https://issues.redhat.com/browse/ART-3511


saveToLocalByLongPress无效

saveToLocalByLongPress={true} 但是长按无反应

the same, version 2.2.3

the same 2.2.5

Same issues

Sorry, i have fixed it too later.

Excellent work, thank you! 👍🏻

I use 2.2.13 but it does not work


Helping out with Todos

Hi @jcl5m1  @nasocializes , I'm an EE undergrad at UCLA, with some knowledge of PCB design, matlab, python, and programming arduinos. I was looking over your documentation, and would like to help out with some of the to dos. Having limited resources and no med background, I'm not sure if I can recreate and test aspects of your todos in ways useful. But I'm available if you'd like to offload any busy work in modeling and design especially with electronics, because I'd like to make this as easy for you as possible. Any chance we could briefly talk through github or email<EMAIL_ADDRESS>would be awesome. Thanks in advance and great work.

Thanks for volunteering. Feel free to pick a ToDo if there's any there that you feel you can help with. I hope you and your family are well!
https://github.com/jcl5m1/ventilator#to-dos-aka-things-i-could-use-help-with


Customers Model has unnecessary mandatory fields

Current Release 1.4:
Customer's Model has Mandatory fields, that are not necessary. For example: phone, address, address2 and many more.
In version 1.3.2 this field was not mandatory. But in Version 1.3.2 it got mandatory as well as in Version 1.4.
Now if you download a Customer, that was created through the UI or another REST API Interface but without the unnecessary mandatory field (e.g. phone). Then the Python SDK will throw an exception and invalidate the Object.
In the current Master Branch, these fields are not mandatory anymore. But the current Master Branch is not released (yet). Can you please release the current master branch?
Until that, one can use the version 1.3.2 (that version has some other disadvantages).
Thanks.

Hi @Butanding, you can use the master version (this bug was fixed) for now. We will release a new version in the nearest future.


 I understand why Deed Die in DCC Ruleset is implemented as is, and I understand developers do not want to "take stance" (quoted from Discord). What I did is, I gave options to groups that want to roll Deed Die with every attack.
Reason behind this is that if player forgets to roll die with each round then value from previous round is added to results, it takes group out of action to recalculate manually rolls (granted, not complicated math but it takes a bit of time). Also, it gives option to groups that understands that core book rules mean to roll deed die with every attack.
This pull request also integrates deed die with DCC roll result cards. I tried to follow what I see is implemented already but javascript is not language I use every day.

Thanks for submitting this.
I've merged it into a local branch for some additional changes building on it (and also to deal with conflicts with recent changes on the dev branch).


Added: Ensuring set methods are not optional

This resolves the issue where, if a type passed into the builder has an optional property, you're forced to use the Non-null assertion operator (!) in order to call the set method.
I can't think of a time where keeping the optional is useful.
Previous usage:
type Type = {
    id?: number;
}

// Note the (!)
Builder<Type>().id!(1);

Current usage
type Type = {
    id?: number;
}

Builder<Type>().id(1);

Sorry for my late reply.
That's great. Thank you for your contribution.


Non-interactive, quiet and offline modes for the installer script

Currently, the installer relies on a lot of user input that might not be available in an automated install environment. For example, currently in Nixpkgs, it is necessary to manually patch the installer script to remove interactivity so that the builder does not hang while waiting for input from stdin via read.
In addition, there are also lots of print-outs and clear screens that are just completely unnecessary for a non-interactive environment, and I find that adding a --no-interactive flag would make downstream packagers' lives much easier, especially since the patch does not have to be updated with each change to the script. A -q/--quiet flag would also be nice to suppress all non-critical messages so that the build log does not get cluttered with unnecessary prompts.
Finally, this is kind of a Nix-specific thing, but it would be nice if we can use a local copy of the cursors repo, instead of wgeting it from the internet. This is mostly done to improve reproducibility and make sure that the cursors can be easily updated and verified to work, and to remove a dependency on wget. This is not as important as the first two flags, but it would be very nice to have.

This is a great suggestion, thank you. I'll probably end up modifying the debug feature similar to what I think the nixpkg is doing and add the relevant flags. As for adding the cursor, I don't know how the org would feel about hosting another Catppuccin port as a part of this one (Assuming I understand what you mean). So that's a little more difficult to do.
Though... for now, I'd want to get the KDE6 update done first, and I think this is something to work on after.

As for adding the cursor, I don't know how the org would feel about hosting another Catppuccin port as a part of this one (Assuming I understand what you mean). So that's a little more difficult to do.

Nono, I mean using a local path to a cloned copy of the cursors repo when building, so that we can clone a known revision of the cursors repo, and then run the installer with the existing repo, without having it run wget.

A note on the catppuccin cursors:
It may be better to add a flag to disable installation rather than packaging them with the KDE theme as pluiedev said (For our nix use case at least). The way we're currently moving to implement catppuccin themes can just have the cursors as a separate source.
So if we could just pass say --no-cursors to the install script in a non-interactive and quiet mode, I think this would be the better option.
This would also just be beneficial for people who may not like the cursor set anyway and who may not want it installed at all

A note on the catppuccin cursors:
It may be better to add a flag to disable installation rather than packaging them with the KDE theme as pluiedev said (For our nix use case at least). The way we're currently moving to implement catppuccin themes can just have the cursors as a separate source.
So if we could just pass say --no-cursors to the install script in a non-interactive and quiet mode, I think this would be the better option.
This would also just be beneficial for people who may not like the cursor set anyway and who may not want it installed at all

To be honest the cursors should just be their own thing. It's not like they're specific to KDE in any way

Currently, the installer relies on a lot of user input that might not be available in an automated install environment. For example, currently in Nixpkgs, it is necessary to manually patch the installer script to remove interactivity so that the builder does not hang while waiting for input from stdin via read.
In addition, there are also lots of print-outs and clear screens that are just completely unnecessary for a non-interactive environment, and I find that adding a --no-interactive flag would make downstream packagers' lives much easier, especially since the patch does not have to be updated with each change to the script. A -q/--quiet flag would also be nice to suppress all non-critical messages so that the build log does not get cluttered with unnecessary prompts.

I completely agree with you on this, I'll work on it.

Finally, this is kind of a Nix-specific thing, but it would be nice if we can use a local copy of the cursors repo, instead of wgeting it from the internet. This is mostly done to improve reproducibility and make sure that the cursors can be easily updated and verified to work, and to remove a dependency on wget. This is not as important as the first two flags, but it would be very nice to have.

I tried using sub-modules to get around this and it isn't viable (The download is way too big),
I think using a flag is best idea as its not that integral anyway.
Thank you for your suggestions.


How do I change CameraPosition, CameraTarget, Navigation

Hi there
In a previous release, I could change the default CameraPosition, CameraTarget, Navigation in the output.js file - how do I change these in 1.5RC?
Rgds

Nevermind - I figured it out myself :-)
In the viewer_template.html
		viewer.scene.view.position.set(x, y, z);
		viewer.scene.view.lookAt(new THREE.Vector3(x, y, z));
		viewer.setNavigationMode(Potree.EarthControls);


Ability to define SSL certificates duration and SSL key size

Instead of having hardcoded values (respectively 2048 and 36500), this PR introduces the ability to overwrite certificates_key_size and certificates_duration (which default respectively to 2048 and 36500)

ci check this

it won't have any affect when we change to kubeadm FYI

I have not switched to kubeadm yet and my secuteam is on my back complaining about certificate durations...
Even if kubeadm will be the default, the original way is not planned to be removed is it?

/lgtm
/approve


Flutter app crashes after putting TextFormField widget into Stack widget

Steps to Reproduce

Create stateful widget
On the build method return Scaffold Widget
Add Stack widget as body property to the scaffold widget
Add TextFormField Widget as children to the Stack widget
Run flutter app

Expected results:
Return normal behavior of TextFormField widget
Actual results:
Flutter app infinitely prints logs to the console and ui doesn't react.
Capture2
Capture3

Hi @serikshaikamalov
don't forget to tell the Stack where to position the widget
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) => MaterialApp(
    home: HomePage(),
  );
}

class HomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) => Scaffold(
    body: Stack(
      children: <Widget>[
       Center(
         child: TextFormField(),
       ),
      ],
    ),
  );
}

for more complex situation my favourite way to proceed is Align
Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow.
Closing, as this isn't an issue with Flutter itself,
if you disagree please write in the comments and I will reopen it
Thank you


Add HdpiMode option to iOS backend

This change adds a HdpiMode option to the iOS backend's IOSApplicationConfiguration, which is used to calculate pixel coordinates for input and return heights and widths in raw pixels on the getWidth() etc calls. Safe areas are also returned in raw pixel sizes. The default is left as Logical pixels, the current iOS behaviour.
The rationale behind this is that some LibGDX games - including my own - use pixel scaling for things like UI positioning, texture tiling, and font generation. Porting to the new "logical pixels" system proved to be very difficult. This gives developers the same option they have on the LWJGL3 backend, and more closely matches the Android backend which to my knowledge always uses raw pixels. I've tested it with my own game and it seems to work.

@obigu It's probably because I've built my game in a very strange way, but all my UI scaling and font generation is done in pure pixel terms, and the move to logical pixels broke my game in a way I wasn't able to fix by simply changing getWidth to getBackBufferWidth and so on. I can't speak for anyone else but I feel it likely that if I managed to (mis?)use libGDX in this way others may well have done so too. Also happy to chat on Discord!

Let's move the entry in the CHANGES file to the correct position and we can merge.

Let's move the entry in the CHANGES file to the correct position and we can merge.

Ooh, I missed the version bump. Done. :)

@JoelOtter  Thanks for this collaboration. I was having the same behavior. I spent three days trying to find out how to solve this until I found this PR.