threads_pthread.c:48: error: `PTHREAD_MUTEX_RECURSIVE' undeclared

I'm building OpenSSL 1.1.1d on Ubuntu 4. The library is having trouble with some pthread gear:
crypto/threads_pthread.c: In function `CRYPTO_THREAD_lock_new':
crypto/threads_pthread.c:48: error: `PTHREAD_MUTEX_RECURSIVE' undeclared (first use in this function)
crypto/threads_pthread.c:48: error: (Each undeclared identifier is reported only once
crypto/threads_pthread.c:48: error: for each function it appears in.)
make[1]: *** [crypto/threads_pthread.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory `/home/jwalton/Build-Scripts/openssl-1.1.1d'
make: *** [all] Error 2

Here's configdata.pm:
Command line (with current working directory = .):

    /usr/local/bin/perl ./Configure linux-x86 no-comp --prefix=/usr/local --libdir=/usr/local/lib --openssldir=/usr/local/lib

Perl information:

    /usr/local/bin/perl
    5.30.1 for i686-linux

Enabled features:

    aria
    asm
    async
    autoalginit
    autoerrinit
    autoload-config
    bf
    blake2
    buildtest-c\+\+
    camellia
    capieng
    cast
    chacha
    cmac
    cms
    ct
    deprecated
    des
    dgram
    dh
    dsa
    dtls
    dynamic-engine
    ec
    ec2m
    ecdh
    ecdsa
    engine
    err
    filenames
    gost
    hw(-.+)?
    idea
    makedepend
    md4
    mdc2
    multiblock
    nextprotoneg
    pinshared
    ocb
    ocsp
    pic
    poly1305
    posix-io
    psk
    rc2
    rc4
    rdrand
    rfc3779
    rmd160
    scrypt
    seed
    shared
    siphash
    sm2
    sm3
    sm4
    sock
    srp
    srtp
    sse2
    ssl
    static-engine
    stdio
    tests
    threads
    tls
    ts
    ui-console
    whirlpool
    tls1
    tls1-method
    tls1_1
    tls1_1-method
    tls1_2
    tls1_2-method
    tls1_3
    dtls1
    dtls1-method
    dtls1_2
    dtls1_2-method

Disabled features:

    afalgeng                [too-old-kernel]
    asan                    [default]        OPENSSL_NO_ASAN
    comp                    [option]         OPENSSL_NO_COMP (skip crypto/comp)
    crypto-mdebug           [default]        OPENSSL_NO_CRYPTO_MDEBUG
    crypto-mdebug-backtrace [default]        OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
    devcryptoeng            [default]        OPENSSL_NO_DEVCRYPTOENG
    ec_nistp_64_gcc_128     [default]        OPENSSL_NO_EC_NISTP_64_GCC_128
    egd                     [default]        OPENSSL_NO_EGD
    external-tests          [default]        OPENSSL_NO_EXTERNAL_TESTS
    fuzz-libfuzzer          [default]        OPENSSL_NO_FUZZ_LIBFUZZER
    fuzz-afl                [default]        OPENSSL_NO_FUZZ_AFL
    heartbeats              [default]        OPENSSL_NO_HEARTBEATS
    md2                     [default]        OPENSSL_NO_MD2 (skip crypto/md2)
    msan                    [default]        OPENSSL_NO_MSAN
    rc5                     [default]        OPENSSL_NO_RC5 (skip crypto/rc5)
    sctp                    [default]        OPENSSL_NO_SCTP
    ssl-trace               [default]        OPENSSL_NO_SSL_TRACE
    ubsan                   [default]        OPENSSL_NO_UBSAN
    unit-test               [default]        OPENSSL_NO_UNIT_TEST
    weak-ssl-ciphers        [default]        OPENSSL_NO_WEAK_SSL_CIPHERS
    zlib                    [default]
    zlib-dynamic            [default]
    ssl3                    [default]        OPENSSL_NO_SSL3
    ssl3-method             [default]        OPENSSL_NO_SSL3_METHOD

Config target attributes:

    AR => "ar",
    ARFLAGS => "r",
    CC => "gcc",
    CFLAGS => "-Wall -O3 -fomit-frame-pointer",
    CXX => "g++",
    CXXFLAGS => "-Wall -O3",
    HASHBANGPERL => "/usr/bin/env perl",
    RANLIB => "ranlib",
    RC => "windres",
    aes_asm_src => "aes_core.c aes_cbc.c vpaes-x86.s aesni-x86.s",
    aes_obj => "aes_core.o aes_cbc.o vpaes-x86.o aesni-x86.o",
    apps_aux_src => "",
    apps_init_src => "",
    apps_obj => "",
    bf_asm_src => "bf-586.s",
    bf_obj => "bf-586.o",
    bn_asm_src => "bn-586.s co-586.s x86-mont.s x86-gf2m.s",
    bn_obj => "bn-586.o co-586.o x86-mont.o x86-gf2m.o",
    bn_ops => "BN_LLONG",
    build_file => "Makefile",
    build_scheme => [ "unified", "unix" ],
    cast_asm_src => "c_enc.c",
    cast_obj => "c_enc.o",
    cflags => "-pthread -m32",
    chacha_asm_src => "chacha-x86.s",
    chacha_obj => "chacha-x86.o",
    cmll_asm_src => "cmll-x86.s",
    cmll_obj => "cmll-x86.o",
    cppflags => "",
    cpuid_asm_src => "x86cpuid.s",
    cpuid_obj => "x86cpuid.o",
    cxxflags => "-std=c++11 -pthread -m32",
    defines => [  ],
    des_asm_src => "des-586.s crypt586.s",
    des_obj => "des-586.o crypt586.o",
    disable => [  ],
    dso_extension => ".so",
    dso_scheme => "dlfcn",
    ec_asm_src => "ecp_nistz256.c ecp_nistz256-x86.s",
    ec_obj => "ecp_nistz256.o ecp_nistz256-x86.o",
    enable => [ "afalgeng" ],
    ex_libs => "-ldl -pthread",
    exe_extension => "",
    includes => [  ],
    keccak1600_asm_src => "keccak1600.c",
    keccak1600_obj => "keccak1600.o",
    lflags => "",
    lib_cflags => "",
    lib_cppflags => "-DOPENSSL_USE_NODELETE -DL_ENDIAN",
    lib_defines => [  ],
    md5_asm_src => "md5-586.s",
    md5_obj => "md5-586.o",
    modes_asm_src => "ghash-x86.s",
    modes_obj => "ghash-x86.o",
    module_cflags => "-fPIC",
    module_cxxflags => "",
    module_ldflags => "-Wl,-znodelete -shared -Wl,-Bsymbolic",
    padlock_asm_src => "e_padlock-x86.s",
    padlock_obj => "e_padlock-x86.o",
    perlasm_scheme => "elf",
    poly1305_asm_src => "poly1305-x86.s",
    poly1305_obj => "poly1305-x86.o",
    rc4_asm_src => "rc4-586.s",
    rc4_obj => "rc4-586.o",
    rc5_asm_src => "rc5-586.s",
    rc5_obj => "rc5-586.o",
    rmd160_asm_src => "rmd-586.s",
    rmd160_obj => "rmd-586.o",
    sha1_asm_src => "sha1-586.s sha256-586.s sha512-586.s",
    sha1_obj => "sha1-586.o sha256-586.o sha512-586.o",
    shared_cflag => "-fPIC",
    shared_defflag => "-Wl,--version-script=",
    shared_defines => [  ],
    shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
    shared_extension_simple => ".so",
    shared_ldflag => "-Wl,-znodelete -shared -Wl,-Bsymbolic",
    shared_rcflag => "",
    shared_sonameflag => "-Wl,-soname=",
    shared_target => "linux-shared",
    thread_defines => [  ],
    thread_scheme => "pthreads",
    unistd => "<unistd.h>",
    uplink_aux_src => "",
    uplink_obj => "",
    wp_asm_src => "wp_block.c wp-mmx.s",
    wp_obj => "wp_block.o wp-mmx.o",

Recorded environment:

    AR =
    ARFLAGS =
    AS =
    ASFLAGS =
    BUILDFILE =
    CC = gcc
    CFLAGS = -g2 -O2 -fPIC -pthread
    CPP =
    CPPDEFINES =
    CPPFLAGS = -I/usr/local/include -DNDEBUG
    CPPINCLUDES =
    CROSS_COMPILE =
    CXX = g++
    CXXFLAGS = -g2 -O2 -fPIC -pthread
    HASHBANGPERL =
    LD =
    LDFLAGS = -L/usr/local/lib -Wl,-R,'$$ORIGIN/../lib' -Wl,-R,/usr/local/lib -Wl,--enable-new-dtags
    LDLIBS =
    MT =
    MTFLAGS =
    OPENSSL_LOCAL_CONFIG_DIR =
    PERL =
    RANLIB =
    RC =
    RCFLAGS =
    RM =
    WINDRES =
    __CNF_CFLAGS =
    __CNF_CPPDEFINES =
    __CNF_CPPFLAGS =
    __CNF_CPPINCLUDES =
    __CNF_CXXFLAGS =
    __CNF_LDFLAGS =
    __CNF_LDLIBS =

Makevars:

    AR              = ar
    ARFLAGS         = r
    CC              = gcc
    CFLAGS          = -g2 -O2 -fPIC -pthread
    CPPDEFINES      =
    CPPFLAGS        = -I/usr/local/include -DNDEBUG
    CPPINCLUDES     =
    CXX             = g++
    CXXFLAGS        = -g2 -O2 -fPIC -pthread
    HASHBANGPERL    = /usr/bin/env perl
    LDFLAGS         = -L/usr/local/lib -Wl,-R,'$$ORIGIN/../lib' -Wl,-R,/usr/local/lib -Wl,--enable-new-dtags
    LDLIBS          =
    PERL            = /usr/local/bin/perl
    RANLIB          = ranlib
    RC              = windres
    RCFLAGS         =

NOTE: These variables only represent the configuration view.  The build file
template may have processed these variables further, please have a look at the
build file for more exact data:
    Makefile

build file:

    Makefile

build file templates:

    Configurations/common0.tmpl
    Configurations/unix-Makefile.tmpl
    Configurations/common.tmpl

You can try to configure with -D_XOPEN_SOURCE=700

For completeness, here is the pthread.h on the machine.
$ cat /usr/include/pthread.h
/* Linuxthreads - a simple clone()-based implementation of Posix        */
/* threads for Linux.                                                   */
/* Copyright (C) 1996 Xavier Leroy<EMAIL_ADDRESS>             */
/*                                                                      */
/* This program is free software; you can redistribute it and/or        */
/* modify it under the terms of the GNU Library General Public License  */
/* as published by the Free Software Foundation; either version 2       */
/* of the License, or (at your option) any later version.               */
/*                                                                      */
/* This program is distributed in the hope that it will be useful,      */
/* but WITHOUT ANY WARRANTY; without even the implied warranty of       */
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        */
/* GNU Library General Public License for more details.                 */

#ifndef _PTHREAD_H
#define _PTHREAD_H	1

#include <features.h>

#include <sched.h>
#include <time.h>

#define __need_sigset_t
#include <signal.h>
#include <bits/pthreadtypes.h>
#include <bits/initspin.h>

__BEGIN_DECLS

/* Initializers.  */

#define PTHREAD_MUTEX_INITIALIZER \
  {0, 0, 0, PTHREAD_MUTEX_TIMED_NP, __LOCK_INITIALIZER}
#ifdef __USE_GNU
# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \
  {0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP, __LOCK_INITIALIZER}
# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \
  {0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP, __LOCK_INITIALIZER}
# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \
  {0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP, __LOCK_INITIALIZER}
#endif

#define PTHREAD_COND_INITIALIZER {__LOCK_INITIALIZER, 0, "", 0}

#ifdef __USE_UNIX98
# define PTHREAD_RWLOCK_INITIALIZER \
  { __LOCK_INITIALIZER, 0, NULL, NULL, NULL,				      \
    PTHREAD_RWLOCK_DEFAULT_NP, PTHREAD_PROCESS_PRIVATE }
#endif
#ifdef __USE_GNU
# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \
  { __LOCK_INITIALIZER, 0, NULL, NULL, NULL,				      \
    PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP, PTHREAD_PROCESS_PRIVATE }
#endif

/* Values for attributes.  */

enum
{
  PTHREAD_CREATE_JOINABLE,
#define PTHREAD_CREATE_JOINABLE	PTHREAD_CREATE_JOINABLE
  PTHREAD_CREATE_DETACHED
#define PTHREAD_CREATE_DETACHED	PTHREAD_CREATE_DETACHED
};

enum
{
  PTHREAD_INHERIT_SCHED,
#define PTHREAD_INHERIT_SCHED	PTHREAD_INHERIT_SCHED
  PTHREAD_EXPLICIT_SCHED
#define PTHREAD_EXPLICIT_SCHED	PTHREAD_EXPLICIT_SCHED
};

enum
{
  PTHREAD_SCOPE_SYSTEM,
#define PTHREAD_SCOPE_SYSTEM	PTHREAD_SCOPE_SYSTEM
  PTHREAD_SCOPE_PROCESS
#define PTHREAD_SCOPE_PROCESS	PTHREAD_SCOPE_PROCESS
};

enum
{
  PTHREAD_MUTEX_TIMED_NP,
  PTHREAD_MUTEX_RECURSIVE_NP,
  PTHREAD_MUTEX_ERRORCHECK_NP,
  PTHREAD_MUTEX_ADAPTIVE_NP
#ifdef __USE_UNIX98
  ,
  PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP,
  PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP,
  PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP,
  PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL
#endif
#ifdef __USE_GNU
  /* For compatibility.  */
  , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_ADAPTIVE_NP
#endif
};

enum
{
  PTHREAD_PROCESS_PRIVATE,
#define PTHREAD_PROCESS_PRIVATE	PTHREAD_PROCESS_PRIVATE
  PTHREAD_PROCESS_SHARED
#define PTHREAD_PROCESS_SHARED	PTHREAD_PROCESS_SHARED
};

#ifdef __USE_UNIX98
enum
{
  PTHREAD_RWLOCK_PREFER_READER_NP,
  PTHREAD_RWLOCK_PREFER_WRITER_NP,
  PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP,
  PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_WRITER_NP
};
#endif	/* Unix98 */

#define PTHREAD_ONCE_INIT 0

/* Special constants */

#ifdef __USE_XOPEN2K
/* -1 is distinct from 0 and all errno constants */
# define PTHREAD_BARRIER_SERIAL_THREAD -1
#endif

/* Cleanup buffers */

struct _pthread_cleanup_buffer
{
  void (*__routine) (void *);		  /* Function to call.  */
  void *__arg;				  /* Its argument.  */
  int __canceltype;			  /* Saved cancellation type. */
  struct _pthread_cleanup_buffer *__prev; /* Chaining of cleanup functions.  */
};

/* Cancellation */

enum
{
  PTHREAD_CANCEL_ENABLE,
#define PTHREAD_CANCEL_ENABLE	PTHREAD_CANCEL_ENABLE
  PTHREAD_CANCEL_DISABLE
#define PTHREAD_CANCEL_DISABLE	PTHREAD_CANCEL_DISABLE
};
enum
{
  PTHREAD_CANCEL_DEFERRED,
#define PTHREAD_CANCEL_DEFERRED	PTHREAD_CANCEL_DEFERRED
  PTHREAD_CANCEL_ASYNCHRONOUS
#define PTHREAD_CANCEL_ASYNCHRONOUS	PTHREAD_CANCEL_ASYNCHRONOUS
};
#define PTHREAD_CANCELED ((void *) -1)

/* Function for handling threads.  */

/* Create a thread with given attributes ATTR (or default attributes
   if ATTR is NULL), and call function START_ROUTINE with given
   arguments ARG.  */
extern int pthread_create (pthread_t *__restrict __threadp,
			   __const pthread_attr_t *__restrict __attr,
			   void *(*__start_routine) (void *),
			   void *__restrict __arg) __THROW;

/* Obtain the identifier of the current thread.  */
extern pthread_t pthread_self (void) __THROW;

/* Compare two thread identifiers.  */
extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) __THROW;

/* Terminate calling thread.  */
extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__));

/* Make calling thread wait for termination of the thread TH.  The
   exit status of the thread is stored in *THREAD_RETURN, if THREAD_RETURN
   is not NULL.  */
extern int pthread_join (pthread_t __th, void **__thread_return);

/* Indicate that the thread TH is never to be joined with PTHREAD_JOIN.
   The resources of TH will therefore be freed immediately when it
   terminates, instead of waiting for another thread to perform PTHREAD_JOIN
   on it.  */
extern int pthread_detach (pthread_t __th) __THROW;

/* Functions for handling attributes.  */

/* Initialize thread attribute *ATTR with default attributes
   (detachstate is PTHREAD_JOINABLE, scheduling policy is SCHED_OTHER,
    no user-provided stack).  */
extern int pthread_attr_init (pthread_attr_t *__attr) __THROW;

/* Destroy thread attribute *ATTR.  */
extern int pthread_attr_destroy (pthread_attr_t *__attr) __THROW;

/* Set the `detachstate' attribute in *ATTR according to DETACHSTATE.  */
extern int pthread_attr_setdetachstate (pthread_attr_t *__attr,
					int __detachstate) __THROW;

/* Return in *DETACHSTATE the `detachstate' attribute in *ATTR.  */
extern int pthread_attr_getdetachstate (__const pthread_attr_t *__attr,
					int *__detachstate) __THROW;

/* Set scheduling parameters (priority, etc) in *ATTR according to PARAM.  */
extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr,
				       __const struct sched_param *__restrict
				       __param) __THROW;

/* Return in *PARAM the scheduling parameters of *ATTR.  */
extern int pthread_attr_getschedparam (__const pthread_attr_t *__restrict
				       __attr,
				       struct sched_param *__restrict __param)
     __THROW;

/* Set scheduling policy in *ATTR according to POLICY.  */
extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy)
     __THROW;

/* Return in *POLICY the scheduling policy of *ATTR.  */
extern int pthread_attr_getschedpolicy (__const pthread_attr_t *__restrict
					__attr, int *__restrict __policy)
     __THROW;

/* Set scheduling inheritance mode in *ATTR according to INHERIT.  */
extern int pthread_attr_setinheritsched (pthread_attr_t *__attr,
					 int __inherit) __THROW;

/* Return in *INHERIT the scheduling inheritance mode of *ATTR.  */
extern int pthread_attr_getinheritsched (__const pthread_attr_t *__restrict
					 __attr, int *__restrict __inherit)
     __THROW;

/* Set scheduling contention scope in *ATTR according to SCOPE.  */
extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope)
     __THROW;

/* Return in *SCOPE the scheduling contention scope of *ATTR.  */
extern int pthread_attr_getscope (__const pthread_attr_t *__restrict __attr,
				  int *__restrict __scope) __THROW;

#ifdef __USE_UNIX98
/* Set the size of the guard area at the bottom of the thread.  */
extern int pthread_attr_setguardsize (pthread_attr_t *__attr,
				      size_t __guardsize) __THROW;

/* Get the size of the guard area at the bottom of the thread.  */
extern int pthread_attr_getguardsize (__const pthread_attr_t *__restrict
				      __attr, size_t *__restrict __guardsize)
     __THROW;
#endif

/* Set the starting address of the stack of the thread to be created.
   Depending on whether the stack grows up or down the value must either
   be higher or lower than all the address in the memory block.  The
   minimal size of the block must be PTHREAD_STACK_MIN.  */
extern int pthread_attr_setstackaddr (pthread_attr_t *__attr,
				      void *__stackaddr) __THROW;

/* Return the previously set address for the stack.  */
extern int pthread_attr_getstackaddr (__const pthread_attr_t *__restrict
				      __attr, void **__restrict __stackaddr)
     __THROW;

#ifdef __USE_XOPEN2K
/* The following two interfaces are intended to replace the last two.  They
   require setting the address as well as the size since only setting the
   address will make the implementation on some architectures impossible.  */
extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr,
				  size_t __stacksize) __THROW;

/* Return the previously set address for the stack.  */
extern int pthread_attr_getstack (__const pthread_attr_t *__restrict __attr,
				  void **__restrict __stackaddr,
				  size_t *__restrict __stacksize) __THROW;
#endif

/* Add information about the minimum stack size needed for the thread
   to be started.  This size must never be less than PTHREAD_STACK_MIN
   and must also not exceed the system limits.  */
extern int pthread_attr_setstacksize (pthread_attr_t *__attr,
				      size_t __stacksize) __THROW;

/* Return the currently used minimal stack size.  */
extern int pthread_attr_getstacksize (__const pthread_attr_t *__restrict
				      __attr, size_t *__restrict __stacksize)
     __THROW;

#ifdef __USE_GNU
/* Initialize thread attribute *ATTR with attributes corresponding to the
   already running thread TH.  It shall be called on unitialized ATTR
   and destroyed with pthread_attr_destroy when no longer needed.  */
extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr) __THROW;
#endif

/* Functions for scheduling control.  */

/* Set the scheduling parameters for TARGET_THREAD according to POLICY
   and *PARAM.  */
extern int pthread_setschedparam (pthread_t __target_thread, int __policy,
				  __const struct sched_param *__param)
     __THROW;

/* Return in *POLICY and *PARAM the scheduling parameters for TARGET_THREAD.  */
extern int pthread_getschedparam (pthread_t __target_thread,
				  int *__restrict __policy,
				  struct sched_param *__restrict __param)
     __THROW;

#ifdef __USE_UNIX98
/* Determine level of concurrency.  */
extern int pthread_getconcurrency (void) __THROW;

/* Set new concurrency level to LEVEL.  */
extern int pthread_setconcurrency (int __level) __THROW;
#endif

#ifdef __USE_GNU
/* Yield the processor to another thread or process.
   This function is similar to the POSIX `sched_yield' function but
   might be differently implemented in the case of a m-on-n thread
   implementation.  */
extern int pthread_yield (void) __THROW;
#endif

/* Functions for mutex handling.  */

/* Initialize MUTEX using attributes in *MUTEX_ATTR, or use the
   default values if later is NULL.  */
extern int pthread_mutex_init (pthread_mutex_t *__restrict __mutex,
			       __const pthread_mutexattr_t *__restrict
			       __mutex_attr) __THROW;

/* Destroy MUTEX.  */
extern int pthread_mutex_destroy (pthread_mutex_t *__mutex) __THROW;

/* Try to lock MUTEX.  */
extern int pthread_mutex_trylock (pthread_mutex_t *__mutex) __THROW;

/* Wait until lock for MUTEX becomes available and lock it.  */
extern int pthread_mutex_lock (pthread_mutex_t *__mutex) __THROW;

#ifdef __USE_XOPEN2K
/* Wait until lock becomes available, or specified time passes. */
extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex,
				    __const struct timespec *__restrict
				    __abstime) __THROW;
#endif

/* Unlock MUTEX.  */
extern int pthread_mutex_unlock (pthread_mutex_t *__mutex) __THROW;

/* Functions for handling mutex attributes.  */

/* Initialize mutex attribute object ATTR with default attributes
   (kind is PTHREAD_MUTEX_TIMED_NP).  */
extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr) __THROW;

/* Destroy mutex attribute object ATTR.  */
extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr) __THROW;

/* Get the process-shared flag of the mutex attribute ATTR.  */
extern int pthread_mutexattr_getpshared (__const pthread_mutexattr_t *
					 __restrict __attr,
					 int *__restrict __pshared) __THROW;

/* Set the process-shared flag of the mutex attribute ATTR.  */
extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr,
					 int __pshared) __THROW;

#ifdef __USE_UNIX98
/* Set the mutex kind attribute in *ATTR to KIND (either PTHREAD_MUTEX_NORMAL,
   PTHREAD_MUTEX_RECURSIVE, PTHREAD_MUTEX_ERRORCHECK, or
   PTHREAD_MUTEX_DEFAULT).  */
extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind)
     __THROW;

/* Return in *KIND the mutex kind attribute in *ATTR.  */
extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict
				      __attr, int *__restrict __kind) __THROW;
#endif

/* Functions for handling conditional variables.  */

/* Initialize condition variable COND using attributes ATTR, or use
   the default values if later is NULL.  */
extern int pthread_cond_init (pthread_cond_t *__restrict __cond,
			      __const pthread_condattr_t *__restrict
			      __cond_attr) __THROW;

/* Destroy condition variable COND.  */
extern int pthread_cond_destroy (pthread_cond_t *__cond) __THROW;

/* Wake up one thread waiting for condition variable COND.  */
extern int pthread_cond_signal (pthread_cond_t *__cond) __THROW;

/* Wake up all threads waiting for condition variables COND.  */
extern int pthread_cond_broadcast (pthread_cond_t *__cond) __THROW;

/* Wait for condition variable COND to be signaled or broadcast.
   MUTEX is assumed to be locked before.  */
extern int pthread_cond_wait (pthread_cond_t *__restrict __cond,
			      pthread_mutex_t *__restrict __mutex);

/* Wait for condition variable COND to be signaled or broadcast until
   ABSTIME.  MUTEX is assumed to be locked before.  ABSTIME is an
   absolute time specification; zero is the beginning of the epoch
   (00:00:00 GMT, January 1, 1970).  */
extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
				   pthread_mutex_t *__restrict __mutex,
				   __const struct timespec *__restrict
				   __abstime);

/* Functions for handling condition variable attributes.  */

/* Initialize condition variable attribute ATTR.  */
extern int pthread_condattr_init (pthread_condattr_t *__attr) __THROW;

/* Destroy condition variable attribute ATTR.  */
extern int pthread_condattr_destroy (pthread_condattr_t *__attr) __THROW;

/* Get the process-shared flag of the condition variable attribute ATTR.  */
extern int pthread_condattr_getpshared (__const pthread_condattr_t *
					__restrict __attr,
					int *__restrict __pshared) __THROW;

/* Set the process-shared flag of the condition variable attribute ATTR.  */
extern int pthread_condattr_setpshared (pthread_condattr_t *__attr,
					int __pshared) __THROW;

#ifdef __USE_UNIX98
/* Functions for handling read-write locks.  */

/* Initialize read-write lock RWLOCK using attributes ATTR, or use
   the default values if later is NULL.  */
extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock,
				__const pthread_rwlockattr_t *__restrict
				__attr) __THROW;

/* Destroy read-write lock RWLOCK.  */
extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock) __THROW;

/* Acquire read lock for RWLOCK.  */
extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock) __THROW;

/* Try to acquire read lock for RWLOCK.  */
extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock) __THROW;

#ifdef __USE_XOPEN2K
/* Try to acquire read lock for RWLOCK or return after specfied time.  */
extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock,
				       __const struct timespec *__restrict
				       __abstime) __THROW;
#endif

/* Acquire write lock for RWLOCK.  */
extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock) __THROW;

/* Try to acquire write lock for RWLOCK.  */
extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock) __THROW;

#ifdef __USE_XOPEN2K
/* Try to acquire write lock for RWLOCK or return after specfied time.  */
extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock,
				       __const struct timespec *__restrict
				       __abstime) __THROW;
#endif

/* Unlock RWLOCK.  */
extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock) __THROW;

/* Functions for handling read-write lock attributes.  */

/* Initialize attribute object ATTR with default values.  */
extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr) __THROW;

/* Destroy attribute object ATTR.  */
extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr) __THROW;

/* Return current setting of process-shared attribute of ATTR in PSHARED.  */
extern int pthread_rwlockattr_getpshared (__const pthread_rwlockattr_t *
					  __restrict __attr,
					  int *__restrict __pshared) __THROW;

/* Set process-shared attribute of ATTR to PSHARED.  */
extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr,
					  int __pshared) __THROW;

/* Return current setting of reader/writer preference.  */
extern int pthread_rwlockattr_getkind_np (__const pthread_rwlockattr_t *__attr,
					  int *__pref) __THROW;

/* Set reader/write preference.  */
extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr,
					  int __pref) __THROW;
#endif

#ifdef __USE_XOPEN2K
/* The IEEE Std. 1003.1j-2000 introduces functions to implement
   spinlocks.  */

/* Initialize the spinlock LOCK.  If PSHARED is nonzero the spinlock can
   be shared between different processes.  */
extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared)
     __THROW;

/* Destroy the spinlock LOCK.  */
extern int pthread_spin_destroy (pthread_spinlock_t *__lock) __THROW;

/* Wait until spinlock LOCK is retrieved.  */
extern int pthread_spin_lock (pthread_spinlock_t *__lock) __THROW;

/* Try to lock spinlock LOCK.  */
extern int pthread_spin_trylock (pthread_spinlock_t *__lock) __THROW;

/* Release spinlock LOCK.  */
extern int pthread_spin_unlock (pthread_spinlock_t *__lock) __THROW;

/* Barriers are a also a new feature in 1003.1j-2000. */

extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier,
				 __const pthread_barrierattr_t *__restrict
				 __attr, unsigned int __count) __THROW;

extern int pthread_barrier_destroy (pthread_barrier_t *__barrier) __THROW;

extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr) __THROW;

extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr) __THROW;

extern int pthread_barrierattr_getpshared (__const pthread_barrierattr_t *
					   __restrict __attr,
					   int *__restrict __pshared) __THROW;

extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr,
					   int __pshared) __THROW;

extern int pthread_barrier_wait (pthread_barrier_t *__barrier) __THROW;
#endif

/* Functions for handling thread-specific data.  */

/* Create a key value identifying a location in the thread-specific
   data area.  Each thread maintains a distinct thread-specific data
   area.  DESTR_FUNCTION, if non-NULL, is called with the value
   associated to that key when the key is destroyed.
   DESTR_FUNCTION is not called if the value associated is NULL when
   the key is destroyed.  */
extern int pthread_key_create (pthread_key_t *__key,
			       void (*__destr_function) (void *)) __THROW;

/* Destroy KEY.  */
extern int pthread_key_delete (pthread_key_t __key) __THROW;

/* Store POINTER in the thread-specific data slot identified by KEY. */
extern int pthread_setspecific (pthread_key_t __key,
				__const void *__pointer) __THROW;

/* Return current value of the thread-specific data slot identified by KEY.  */
extern void *pthread_getspecific (pthread_key_t __key) __THROW;

/* Functions for handling initialization.  */

/* Guarantee that the initialization function INIT_ROUTINE will be called
   only once, even if pthread_once is executed several times with the
   same ONCE_CONTROL argument. ONCE_CONTROL must point to a static or
   extern variable initialized to PTHREAD_ONCE_INIT.  */
extern int pthread_once (pthread_once_t *__once_control,
			 void (*__init_routine) (void)) __THROW;

/* Functions for handling cancellation.  */

/* Set cancelability state of current thread to STATE, returning old
   state in *OLDSTATE if OLDSTATE is not NULL.  */
extern int pthread_setcancelstate (int __state, int *__oldstate) __THROW;

/* Set cancellation state of current thread to TYPE, returning the old
   type in *OLDTYPE if OLDTYPE is not NULL.  */
extern int pthread_setcanceltype (int __type, int *__oldtype) __THROW;

/* Cancel THREAD immediately or at the next possibility.  */
extern int pthread_cancel (pthread_t __cancelthread) __THROW;

/* Test for pending cancellation for the current thread and terminate
   the thread as per pthread_exit(PTHREAD_CANCELED) if it has been
   cancelled.  */
extern void pthread_testcancel (void) __THROW;

/* Install a cleanup handler: ROUTINE will be called with arguments ARG
   when the thread is cancelled or calls pthread_exit.  ROUTINE will also
   be called with arguments ARG when the matching pthread_cleanup_pop
   is executed with non-zero EXECUTE argument.
   pthread_cleanup_push and pthread_cleanup_pop are macros and must always
   be used in matching pairs at the same nesting level of braces. */

#define pthread_cleanup_push(routine,arg) \
  { struct _pthread_cleanup_buffer _buffer;				      \
    _pthread_cleanup_push (&_buffer, (routine), (arg));

extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *__buffer,
				   void (*__routine) (void *),
				   void *__arg) __THROW;

/* Remove a cleanup handler installed by the matching pthread_cleanup_push.
   If EXECUTE is non-zero, the handler function is called. */

#define pthread_cleanup_pop(execute) \
    _pthread_cleanup_pop (&_buffer, (execute)); }

extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *__buffer,
				  int __execute) __THROW;

/* Install a cleanup handler as pthread_cleanup_push does, but also
   saves the current cancellation type and set it to deferred cancellation.  */

#ifdef __USE_GNU
# define pthread_cleanup_push_defer_np(routine,arg) \
  { struct _pthread_cleanup_buffer _buffer;				      \
    _pthread_cleanup_push_defer (&_buffer, (routine), (arg));

extern void _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *__buffer,
					 void (*__routine) (void *),
					 void *__arg) __THROW;

/* Remove a cleanup handler as pthread_cleanup_pop does, but also
   restores the cancellation type that was in effect when the matching
   pthread_cleanup_push_defer was called.  */

# define pthread_cleanup_pop_restore_np(execute) \
  _pthread_cleanup_pop_restore (&_buffer, (execute)); }

extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *__buffer,
					  int __execute) __THROW;
#endif

#ifdef __USE_XOPEN2K
/* Get ID of CPU-time clock for thread THREAD_ID.  */
extern int pthread_getcpuclockid (pthread_t __thread_id,
				  clockid_t *__clock_id) __THROW;
#endif

/* Functions for handling signals.  */
#include <bits/sigthread.h>

/* Functions for handling process creation and process execution.  */

/* Install handlers to be called when a new process is created with FORK.
   The PREPARE handler is called in the parent process just before performing
   FORK. The PARENT handler is called in the parent process just after FORK.
   The CHILD handler is called in the child process.  Each of the three
   handlers can be NULL, meaning that no handler needs to be called at that
   point.
   PTHREAD_ATFORK can be called several times, in which case the PREPARE
   handlers are called in LIFO order (last added with PTHREAD_ATFORK,
   first called before FORK), and the PARENT and CHILD handlers are called
   in FIFO (first added, first called).  */

extern int pthread_atfork (void (*__prepare) (void),
			   void (*__parent) (void),
			   void (*__child) (void)) __THROW;

/* Terminate all threads in the program except the calling process.
   Should be called just before invoking one of the exec*() functions.  */

extern void pthread_kill_other_threads_np (void) __THROW;

__END_DECLS

#endif	/* pthread.h */

Initial smoke testing of this patch looks OK. It works on Ubuntu 4, and it works on Ubuntu 18.
--- crypto/threads_pthread.c
+++ crypto/threads_pthread.c
@@ -7,6 +7,12 @@
  * https://www.openssl.org/source/license.html
  */

+/* https://github.com/openssl/openssl/issues/10966 */
+#ifndef _XOPEN_SOURCE || _XOPEN_SOURCE < 500
+# undef _XOPEN_SOURCE
+# define _XOPEN_SOURCE 500
+#endif
+
 #include <openssl/crypto.h>
 #include "internal/cryptlib.h"

Seems reasonable. Want to create a PR for that?

Should be #if !defined(_XOPEN_SOURCE) || _XOPEN_SOURCE < 500

You can try to configure with -D_XOPEN_SOURCE=700

I also met this problem while cross compiling, and I solved it by this: https://github.com/openssl/openssl/issues/10966#issuecomment-582004497

my solve
try 3.0.5

Marking as inactive, to be closed at the end of 3.4 dev barring further input


index1

webappvm1
eastus

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: nagarjunaazure sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

webappvm1
eastus

Hi
If the problem persists and is related to running it on Azure App Service, please open a support incident in Azure:
https://learn.microsoft.com/en-us/azure/azure-portal/supportability/how-to-create-azure-support-request
This way we can better track and assist you on this case
Thanks,
Joaquin Vano
Azure App Service


STM32 SPI READ NOT RIGHT

Hi,In function MPU_SPI_Read(), line:
HAL_SPI_Receive(&MPU9250_SPI, pBuffer, NumByteToRead, HAL_MAX_DELAY);
need read one more byte ,as spi read dump byte , pBuffer[1] as first read byte.
Please check it ,Thanks.

we can test like below
uint8_t MPU_SPI_Write(uint8_t *pBuffer, uint8_t WriteAddr,
uint16_t NumByteToWrite) {
MPU9250_Activate();

if (HAL_SPI_Transmit(&MPU9250_SPI, (uint8_t*) &WriteAddr, 1, HAL_MAX_DELAY)
		!= HAL_OK)
		{
	return -1;
}

if (HAL_SPI_Transmit(&MPU9250_SPI, pBuffer, NumByteToWrite, HAL_MAX_DELAY) != HAL_OK)
		{
	return -1;
}

MPU9250_Deactivate();
return 0;

}
uint8_t MPU_SPI_Read(uint8_t *pBuffer, uint8_t ReadAddr, uint16_t NumByteToRead) {
MPU9250_Activate();
uint8_t data = ReadAddr | READWRITE_CMD;
if (HAL_SPI_TransmitReceive(&MPU9250_SPI, &data, pBuffer, 1, HAL_MAX_DELAY)
!= HAL_OK)
		{
	return -1;
}

if (HAL_SPI_Receive(&MPU9250_SPI, pBuffer, NumByteToRead, HAL_MAX_DELAY) != HAL_OK)
		{
	return -1;
}
MPU9250_Deactivate();
return 0;

}

Could you please make a pull request? As I've started this as a hobby project when I had free time, now I do not.


remote validation won't trigger again after change on a valid field

I need the remote validation to trigger on every change to the field - but instead, it's only triggering one time. Is there something I'm missing? I don't see any documentation surrounding this issue.
    email1: {
                required: true,
                blacklist: true,
                beanEmailValidator: true,
                minlength: 6,
                maxlength: 70,
                remote: {
                    type: "GET",
                    url: llbFieldValJSONURL,
                    data: {
                          fieldData : function() {
                            return $("#enterEmail").val();
                          }
                     },
                    dataType:"json",
                    dataFilter: function(data) {
                        var json = jQuery.parseJSON(data);
                        if(json.error == "true") {
                            return "\"" + json.errorMessage + "\"";
                        } else {
                            return success;

                        }

                    }
                }

            }

There is a fix:
complete: function() {
	$('!validated_field_selector!').valid();
}

I'm sorry for the lack of activity on this issue. Instead of leaving it open any longer, I decided to close old issues without trying to address them, to longer give the false impression that it will get addressed eventually.
To the reporter (or anyone else interested in this issue): If you're affected by the same issue, consider opening a new issue, with a testpage that shows the issue. Even better, try to fix the issue yourself, and improve the project by sending a pull request. This may seem daunting at first, but you'll likely learn some useful skills that you can apply elsewhere as well. And you can help keep this project alive. We've documented how to do these things, too. A patch is worth a thousand issues!


state does not get updated and action not performed

hi,
i'm trying to control the devices configured in habridge via api calls from within a bash script. Unfortunately, even if the command appears to execute successful, the state within habridge does not get updated and the action does not get performed.
below the curl commands to check current status of device and curl command to update it's state.
can you please take a look? i'm running the latest version 5.20.
best
T
curl -X GET http://<IP_ADDRESS>/api/I29e75ef174e54e55a29c887b80ce96d8/lights
{"1":{"state":{"on":false,"bri":0,"alert":"none","reachable":true},"type":"Dimmable light","name":"cooling","modelid":"LWB007","manufacturername":"Philips","uniqueid":"00:17:88:5E:D3:01-01","swversion":"66012040"}}
curl -X POST -d "{"on": true}" http://<IP_ADDRESS>/api/I29e75ef174e54e55a29c887b80ce96d8/lights/1/state
[{"success":{"username":"29e75ef174e54e55a29c887b80ce96d8"}}]
curl -X GET http://<IP_ADDRESS>/api/I29e75ef174e54e55a29c887b80ce96d8/lights
{"1":{"state":{"on":false,"bri":0,"alert":"none","reachable":true},"type":"Dimmable light","name":"cooling","modelid":"LWB007","manufacturername":"Philips","uniqueid":"00:17:88:5E:D3:01-01","swversion":"66012040"}}

If you could turn on debug for com.bwssystems.habridge.HueMulator and  post your log that would help.

I have the same issue in the latest version.
Somehow API commands are not executed any more.
Response contains only "success" with "username" in it, instead the confirmation about the execution


Improve toJson API configuration to configure whether or not to consider the array entry tag

Description:
JSON to XML conversion has been updated by this PR to create a new array entry tag when the JSON array doesn't key.
https://github.com/ballerina-platform/module-ballerina-xmldata/pull/345
Example:
This JSON array has a key, So No need to create array entry tag
  json data = {
         "books": [
                "book1",
                "book2",
                "book3"
              ]
  };

Here, JSON array has no key, So The API has to create an array entry tag.
  json data =  [
                "book1",
                "book2",
                "book3"
              ];

Hence, we have to give a configuration to eliminate or keep the created array entry tag in the XML for the reverse conversion from XML to JSON.

@kalaiyarasiganeshalingam shall we come up with a proposal for this improvement


python3Packages.python-arango: init at 7.5.1

Description of changes
Introduce the python ArangoDB driver library.

Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[X] x86_64-darwin (monterey, no sandbox)
[ ] aarch64-darwin

[X] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

The library has tests on the main repository. It would be recommended to use fetchFromGitHub instead.

I'm waiting to merge #194670 before this goes in. Plus I'd like to understand the test failures more before I am confident this library is ok.

@WolfangAukang I was able to reenable a bunch of tests and update the commentary. Some of these test failures look like things that were missed upstream, some are due to the sandbox. I am much more confident this is ready. Plus #194670 was merged.

Result of nixpkgs-review pr 193783 run on x86_64-linux 1

2 packages failed to build:

python310Packages.python-arango
python39Packages.python-arango

@WolfangAukang

166 Illegal instruction

This suggests to me this ran into the portability issues I mentioned here: https://github.com/arangodb/arangodb/issues/17454
Can you do me a favor and send the output of
awk '/^(cpu family|vendor_id)[ \t]:/ { print $0 } /^model[ \t]+:/ { printf("%s (%x)\n", $0, $3) }' /proc/cpuinfo

please?

Can you do me a favor and send the output of

vendor_id	: GenuineIntel
cpu family	: 6
model		: 58 (3a)

Not sure if this is the expected response.

Can you do me a favor and send the output of

vendor_id	: GenuineIntel
cpu family	: 6
model		: 58 (3a)

Not sure if this is the expected response.

Thank you! I wanted to check what model cpu you have. (arangodb is configured to build for haswell which is model 3f). 3a (what you have) is ivy-bridge. I had some debate internally about what architecture to default to because it is just not possible to compile arangodb reproducibly without specifying the cpu architecture up front. I wonder if the default architecture should be changed.  Note: on haswell the other two packages that failed for you do succeed.

That makes sense. Like you mentioned, this is the client and the error was related to the database. I haven't had a case where the CPU model needs to be considered, so I can't provide more input unfortunately.

That makes sense. Like you mentioned, this is the client and the error was related to the database. I haven't had a case where the CPU model needs to be considered, so I can't provide more input unfortunately.

Ok. In that case I'll disable tests but keep the test code around for the next time I need to upgrade.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/1436

@SuperSandro2000 I reordered/renamed the attrs but I don't know how to conditionally disable the checks.

Also please squash the review commits into the init one(s).

Squashed.

Ideally we want to force arango onto an older architecture like westmere.

Right now it defaults to haswell.
I think this client library shouldn't matter though, since it is going to be communicating with arangod over the network.  Do you think it would be enough to add one commit removing the tests so they could be resurrected in a reverting commit if the arango architecture can be made portable enough?

We could make an option that disabled those tests. There are some other packages that do that already. Should have remembered that earlier.

We could make an option that disabled those tests. There are some other packages that do that already. Should have remembered that earlier.

Could it be overridden in python-packages.nix?

For only tests that can be done.

Ah, sorry. I thought you had something else in mind other than disabling the tests by default. The only difference in your last commit is that we are now always using an overlay.

Ah, sorry. I thought you had something else in mind other than disabling the tests by default. The only difference in your last commit is that we are now always using an overlay.

Ok right. Sorry I don't understand what you have in mind, then.  Do you have an example maybe?

Ok.  Thank you so much for your time!

@ofborg build python310Packages.python-arango


Use middleware auth and needsrole, don't redirect to 403

If you use
Route::group(['prefix' => 'admin', 'middleware' => ['auth','role:superman']], function() {
});

How to redirect to specific url? If Authentication fail, then it will redirect to auth/login because of
protected $loginPath = '/auth/login'; //AuthController.php

I want that Entrust on fail redirects to '/' and not Abort('403'), is this possible?

+1, I like specificy a path to redirect when a specific role or permission fail.

When the authentication fails it throws a 403 exception. You can catch these exception in your App\Exceptions\Handler.php file like so:
public function render($request, Exception $e)
{
    // handle 403 errors
    if ($e instanceof HttpException && $e->getStatusCode()==403) {

        // put your redirect logic here

    }
}

@geoffs3310 I am getting this result:
https://paste.laravel.io/8c685f14-4703-4404-b9d0-12617674e2d8#24-25


Install fails on Ubuntu 18.04

Steps to reproduce
Follow instructions at https://docs.microsoft.com/en-ca/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7#ubuntu-1804.
Expected behavior
Successful installation
Actual behavior
The following packages have unmet dependencies:
 powershell : Depends: libicu55 but it is not installable

Environment data

Fresh installation of Ubuntu 18.04.3 (LTS) x64 on DigitalOcean droplet

@octos4murai Please share PowerShell versions as requested in the issue template.

It is .Net dependency https://github.com/dotnet/core/blob/master/Documentation/linux-prereqs.md

@iSazonov It's my mistake--I was attempting to install the version for Ubuntu 16.04 rather than 18.04.


Bug: PL not starting anymore

I tried to reinstall but it is saying that I'm trying to install version 1.0.50 when I download from the nightly build (v 1.0.163)
However, both versions are not starting since this morning anymore.

Got the same problem on 2 pc's since today. It is not starting anymore and writes an entry in Event viewer.
Naam van toepassing met fout: PresenceLight.exe, versie: <IP_ADDRESS>, tijdstempel: 0x5e96518b
Naam van module met fout: KERNELBASE.dll, versie: 10.0.18362.778, tijdstempel: 0x692cf0ab
Uitzonderingscode: 0xe0434352
Foutmarge: 0x00114192
Id van proces met fout: 0x7e5c
Starttijd van toepassing met fout: 0x01d623a7d2195196
Pad naar toepassing met fout: C:\Program Files\WindowsApps\37828IsaacLevin.197278F15330A.Nightly_<IP_ADDRESS>_x86__jvewcxq8vj8qt\PresenceLight\PresenceLight.exe
Pad naar module met fout: C:\WINDOWS\System32\KERNELBASE.dll
Rapport-id: a5afa8b0-2c53-436d-ae15-05c256eb735d
Volledige pakketnaam met fout: 37828IsaacLevin.197278F15330A.Nightly_<IP_ADDRESS>_x86__jvewcxq8vj8qt
Relatieve toepassings-id van pakket met fout: App

Anything in Event log? I just did a test with no issue

Could it be the build? I have 2004 (19041.208)

I installed it on monday and it work fine. Today is doesn't. When trying to reinstall from the website is says that there is already a newer version. Did Uninstall and that a new install but problem is the same.
It starts in Task monitor and the gives a Microsoft error and stops.  Some extra info from eventviewer: (dutch version)
Application: PresenceLight.exe
CoreCLR Version: <IP_ADDRESS>06
.NET Version: 5.0.0-preview.3.20214.6
Description: The process was terminated due to an unhandled exception.
Exception Info: Microsoft.Azure.Services.AppAuthentication.AzureServiceTokenProviderException: Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried the following 3 methods to get an access token, but none of them worked.
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried to get token using Managed Service Identity. Unable to connect to the Managed Service Identity (MSI) endpoint. Please check that you are running on an Azure resource that has MSI setup.
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried to get token using Visual Studio. Access token could not be acquired. Visual Studio Token provider file not found at "C:\Users\roald.000\AppData\Local.IdentityService\AzureServiceAuth\tokenprovider.json"
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried to get token using Azure CLI. Access token could not be acquired. 'az' is not recognized as an internal or external command,
operable program or batch file.

Do a full uninstall and reinstall. The new version is <IP_ADDRESS>

New version not starting for me after reinstall

Application: PresenceLight.exe
CoreCLR Version: <IP_ADDRESS>06
.NET Version: 5.0.0-preview.3.20214.6
Description: The process was terminated due to an unhandled exception.
Exception Info: Microsoft.Azure.Services.AppAuthentication.AzureServiceTokenProviderException: Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried the following 3 methods to get an access token, but none of them worked.
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried to get token using Managed Service Identity. Unable to connect to the Managed Service Identity (MSI) endpoint. Please check that you are running on an Azure resource that has MSI setup.
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried to get token using Visual Studio. Access token could not be acquired.
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47. Exception Message: Tried to get token using Azure CLI. Access token could not be acquired. Der Befehl "az" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
at Microsoft.Azure.Services.AppAuthentication.AzureServiceTokenProvider.GetAccessTokenAsyncImpl(String authority, String resource, String scope)
at Microsoft.Azure.KeyVault.KeyVaultCredential.PostAuthenticate(HttpResponseMessage response)
at Microsoft.Azure.KeyVault.KeyVaultCredential.ProcessHttpRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at Microsoft.Azure.KeyVault.KeyVaultClient.GetSecretsWithHttpMessagesAsync(String vaultBaseUrl, Nullable1 maxresults, Dictionary2 customHeaders, CancellationToken cancellationToken)
at Microsoft.Azure.KeyVault.KeyVaultClientExtensions.GetSecretsAsync(IKeyVaultClient operations, String vaultBaseUrl, Nullable1 maxresults, CancellationToken cancellationToken)    at Microsoft.Extensions.Configuration.AzureKeyVault.AzureKeyVaultConfigurationProvider.LoadAsync()    at Microsoft.Extensions.Configuration.AzureKeyVault.AzureKeyVaultConfigurationProvider.Load()    at Microsoft.Extensions.Configuration.ConfigurationRoot..ctor(IList1 providers)
at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()
at PresenceLight.App.OnStartup(Object sender, StartupEventArgs e) in d:\a\1\s\src\PresenceLight\App.xaml.cs:line 47
at System.Windows.Application.OnStartup(StartupEventArgs e)
at System.Windows.Application.<.ctor>b__1_0(Object unused)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
at System.Windows.Threading.Dispatcher.Run()
at System.Windows.Application.RunDispatcher(Object ignore)
at System.Windows.Application.RunInternal(Window window)
at System.Windows.Application.Run()
at PresenceLight.App.Main()

Tested it on 2 pc's but still not running. Same kind of error as above.

Confirm that this file
C:\Users\username\AppData\Local\Packages\37828IsaacLevin.197278F15330A.Nightly_jvewcxq8vj8qt\LocalState\settings.json
matches this schema
{
  "ClientId": "f8119f58-4523-44c1-ab72-b2e0c815bd6a",
  "LIFXApiKey": "",
  "ClientSecret": "",
  "Instance": "https://login.microsoftonline.com/",
  "RedirectUri": "http://localhost",
  "CallbackPath": "/signin-oidc",
  "HueApiKey": "",
  "LIFXClientId": "",
  "LIFXClientSecret": "",
  "ApiScopes": "User.Read offline_access",
  "PollingInterval": 5.0,
  "Brightness": 100,
  "SelectedHueLightId": "",
  "SelectedLIFXItemId": "",
  "HueIpAddress": "",
  "IconType": "White",
  "IsLIFXEnabled": false,
  "IsPhillipsEnabled": false,
  "KeyVaultName": "presencelight-kv"
}

folder is empty

There should be a json file there. Check for this file
C:\Program Files\WindowsApps\37828IsaacLevin.197278F15330A.Nightly_<IP_ADDRESS>_x86__jvewcxq8vj8qt\PresenceLight\appsettings.json

trust me. empty folder.

what about the program files folder?

pls check Teams

This is now resolved

indeed<IP_ADDRESS> is working again.
Thanks


Listing review workflow.

We probably don't want listings just hanging around forever, or until someone explicitly decides to delete them.  So...
Do they expire after a while?  (If so, same lifetime for all listings, or do we let this get set per-listing?)
Also would there be use for a search form which allows designated users ("moderators" or whatever else) to see what listings are about to expire -- within 3 days or whatever -- to check on their status and possibly renew them?

I've done the simplest thing that can possibly work:  give listings an optional expiration date, and sort listings which are about to expire towards the top of the "editors' listings view", so they're easy to find.
(The expiration date actually surfaces in the UI as "days left [till expiration]", though it's stored internally as a SQL timestamp...)


Updated bower.json - because the dependencies for leaflet.markerclustere...

"bower install" no longer works because the "leaflet.markerclusterer" project doesn't have any tags (I'm not sure if the tags were removed, but there is only a single branch: master, so the bower install portion of this project failed until I removed the 0.4 version from the bower.json).
I've also created a 0.7.3 version of this project in my fork for reference.

Guys I seem to have this issue and it is driving me nuts. I have install angular-leaflet-directive and I need to use the map cluster feature so I have installed the leaflet.markerclusterer but when I run grunt serve I get the error leaflet.markerclusterer was not injected in your file. Can anyone help me?


feat: Add a new prop to  that would optimize for print

Prerequisites | Prérequis

[X] I've read the Contributing Guidelines. | J’ai lu les Lignes directrices sur les contributions.
[X] I agree to follow the Code of Conduct. | J’accepte de me conformer au Code de conduite.
[X] I've searched for existing issues that already report this problem, without success. | J’ai vérifié parmi les tickets (issues) existants que ce sujet n’avait pas déjà été soumis.

Describe the feature request. | Décrivez la fonctionnalité demandée
Add a print-expanded prop to the <gcds-details> component for optimized print output.
This feature would introduce a new prop to the <gcds-details> component, ensuring the content within is automatically expanded when the page is printed. Additionally, screen-specific styles would be removed, providing a clean and readable print layout.
Proposed Print Appearance:
When printed, the <gcds-details> content would appear expanded for better accessibility and usability.

Existing Appearance (Screen):
For comparison, here is the current screen appearance of the <gcds-details> component.

This enhancement would improve the user experience by making printed content more comprehensive and removing unnecessary styling elements.
Describe the use case. | Décrivez les cas d’utilisation
Use Case:
In some scenarios, content is collapsed to reduce visual clutter on the screen or to make sub-headings more scannable. However, when printing the page, it is often desirable for this content to be fully exposed to ensure all information is accessible and readable in a print format.
In other cases, where auxiliary information is collapsed (e.g., in a data dictionary with dozens of items), keeping the content collapsed during printing might be more appropriate. For example, expanding all items could overwhelm the printed output.
Adding a print-expanded prop would empower content experts to decide whether specific collapsed content should be expanded or remain collapsed when printed, ensuring flexibility for various use cases.
Describe the preferred solution. | Décrivez la solution souhaitée

Add a new prop to the <gcds-details> component, such as print-expanded.

Update the component's stylesheet to include a print-specific media query (@media print {…}) that would:

Automatically expand and display the content within the details__panel when printed.
Remove screen-specific styles, such as the caret and thick left margin, that are unnecessary or distracting in print.
Enhance the details summary by adding increased font weight for better visibility and clarity in print.

Describe all alternatives. | Décrivez toutes les solutions possibles
Alternatives:
1. Do Nothing: Rely on the user to expand/collapse elements manually

Advantage:

Users have direct control over what content is expanded and printed.

Disadvantage:

Poor user experience if there are many <gcds-details> elements or scrolling is required between them.
Users might not realize they need to expand elements for printing, leading to wasted effort and resources from printing multiple times.
Negative UX and environmental impacts due to unnecessary reprints.

2. Per Project: Create an Expand/Collapse All Button for <gcds-details>
I'm not sure this would work, I haven't tried it, it's based on the assumption that we can control props with JavaScript.

Advantage:

Provides users with a quick and efficient way to expand or collapse all <gcds-details> elements, improving readability both on screen and in print.

Disadvantage:

Assumes developers have the knowledge and access to create a JavaScript-based button to control the <gcds-details> elements.
Users may still not realize they need to expand everything before printing, leading to potential reprints.
Limited applicability, as this solution works best when all <gcds-details> elements are siblings.

Both alternatives have significant limitations in terms of usability and consistency,
Provide related code or examples. | Fournissez du code ou des exemples pertinents
No response
Add other relevant resources. | Ajoutez toute autre ressource utile

A similar feature has just been added by the W3C to the HTML spec for <details> elements:
This feature is currently experimental and not widely supported in browsers.

Applicability to GCDS Details Component:
This limitation does not affect the GCDS details component since it renders custom HTML instead of a native <details> element.

@CraigClark thanks for submitting an issue, we will look into this as a team on how we can support adding a feature to support expanded text on print view on the details component.
Please react with a 👍 on the issue if this is something that affects you, it helps us with prioritization. If you have any use-cases, screenshots, etc to share, please don't hesitate to reach out to us

Hello @CraigClark ,
Thank you so much for reaching out and for providing such great examples! They've really helped us understand the context better.
After reviewing your suggestion, we decided to expand all detail components by default for print rather than add a prop. The reason is that, as implementors and content creators, we don't always have enough insight into which specific information will be most important to users in different contexts. Since we can't fully predict which details should be expanded or collapsed for each user, we need to conduct more research to determine if a new print-expanded prop would be a better solution.
We have modified the styling of the details component to look like this for print:

The updated print design for the details component is now available in the latest version of our component package (v0.30.0).
Does this approach help resolve the issue you encountered, or would you like to explore other alternatives? We'd love to hear your thoughts!
Thank you again for creating this feature request and providing a detailed description with examples!

@melaniebmn
This resolves it. Thank you!


Inviting an invalid number and a valid email user at the same time in invite new members page throws error in both the users when invited

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

 Now first, enter a valid email of the user and select it. Next, enter an invalid number in the search bar like 1234 and select it
Make sure both the users are selected (One is the invalid number user, the other one is the valid email user)
Now click on invite
Notice that 'There was a problem adding this workspace member.' error is thrown in both the users . It should not have thrown an error in the valid email user.
Follow the same steps with just inviting a single valid email user and see that it doesn't throw an error. Thus, the problem occurs when any valid email user is being invited together with an invalid number user

Expected Result:
'The error should not be thrown in a valid email user if the valid email user and an invalid number user is being invited at the same time
Actual Result:
The error is shown for the valid email user too, when the valid email user is being invited with an invalid number user
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.2
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/233451755-1a10bf54-c63c-4d90-b080-627e09ee1c36.mp4
https://user-images.githubusercontent.com/43996225/233451771-eecae329-cad6-4a68-aa22-6a2cbebe0b9e.mp4
Expensify/Expensify Issue URL:
Issue reported by: @avi-shek-jha
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1681968606564479
View all open jobs on GitHub

Triggered auto assignment to @tjferriss (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

@tjferriss Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

This issue and this one https://github.com/Expensify/App/issues/17787 look similar.

@mvtglobally I saw your comment on the related issue. Do you think we can consolidate both of these into one issue?

I'm asking for clarification on the other issue.

@tjferriss this issue was created 2 weeks ago. Are we close to a solution? Let's make sure we're treating this as a top priority. Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!

I can't reproduce this one. When I try to enter an invalid number or email I get a warning to provide a valid one.

@tjferriss I tried to reproduce it again , and it shows the same error. In the current version, invalid number is not allowed, but I'm able to reproduce it with the invalid email on the current version. Seems like inviting invalid email and valid email at the same time throws an error.
https://github.com/Expensify/App/assets/123831727/a5a0f3ec-384d-4af9-9cb0-8170b8575f52


Swift 2 Support?

Any possible updates for Swift 2?

@idriskhenchil please check swift-2.0 branch. If you're using cocoapods, version 0.11 works fine with Swift 2.0


Big Fix (wandb_writer): correct spelling mistake

Writer_config was misspelled as write_config to get the group for wandb.

Nice catch up!


Add/Update github files

Motivation
Add references to relevant tickets or a short description about what motivated you do it. (E.g Trello Card AND/OR GitHub ISSUE: https://github.com/integr8ly/tutorial-web-app/issues)
What
Add an short answer for: What was done in this PR? (E.g Don't allow users has access to the feature X.)
Why
Add an short answer for: Why it was done? (E.g The feature X was deprecated.)
How
Add an short answer for: How it was done? (E.g By removing this feature from ... OR By removing just the button but not its implementation ... )
Verification Steps
Add detailed steps required to check this change. Following an example.

Go to XX >> YY >> SS
Create a new item N with the info X
Try to edit this item
Check if in the left menu the feature X is not so long present.

Checklist:

[ ] Code has been tested locally by PR requester
[ ] Changes have been successfully verified by another team member
[ ] Screen shots included (if applicable)

Progress

[x] Finished task
[ ] TODO

Additional Notes
PS.: Add images and/or .gifs to illustrate what was changed if this pull request modifies the appearance/output of something presented to the users.

Ignore it will be redone.


MapPath problem with nested entitys and JPA / Hibernate

Good morning,
I toyed around with querydsl the past few days, and ran into a strange problem with a Map<String, String>. Not sure if this is an error on querydsls or my side, so I'm posting it here.
Hibernate: 4.3.11.Final
Querydsl: 3.6.8
I have my entity set up as follows:
@Entity
public class EvaluationCentreContext {
  [...]

  @ElementCollection(fetch=FetchType.EAGER)
  @CollectionTable(name = "evaluationcentrecontext_attribute",
      joinColumns = {@JoinColumn(name = "context_id")})
  @MapKeyColumn(name = "attribute_key")
  @Column(name = "attribute")
  private Map<String, String> attributes;

  [...]
}

The attributes map is backed by an MSSQL table as follows:

The Q... class is generated correctly, too:
@Generated("com.mysema.query.codegen.EntitySerializer")
public class QEvaluationCentreContext extends EntityPathBase<EvaluationCentreContext> {
    [...]
    public final MapPath<String, String, StringPath> attributes = this.<String, String, StringPath>createMap("attributes", String.class, String.class, StringPath.class);
    [...]
}

Now, I want to order my EvaluationCentreContext objects via an attribute in the attributes map. This works as intendend:
evaluationCentreContextRepository.findAll(null, QEvaluationCentreContext.evaluationCentreContext.attributes.get("bla123").asc());

Which results in
select
	[...]
from
	evaluationcentrecontext evaluation0_
inner join
	evaluationcentrecontext_attribute attributes1_
		on evaluation0_.auto_id=attributes1_.context_id
		and (
			attributes1_.attribute_key='bla123'
		)
order by
	attributes1_.attribute asc

However, as soon as I introduce a new entity, that has an reference to said EvaluationCentreContex, the query breaks...
@Entity
public class RadiationExposedActivity{
  [...]

  @OneToOne(optional = false)
  @JoinColumn(name = "context_id")
  private EvaluationCentreContext evaluationCentreContext;
    [...]
}

@Generated("com.mysema.query.codegen.EntitySerializer")
public class QRadiationExposedActivity extends EntityPathBase<RadiationExposedActivity> {
    [...]
        public final QEvaluationCentreContext evaluationCentreContext;
        [...]
}

QRadiationExposedActivity qradiationExposedActivity = QRadiationExposedActivity.radiationExposedActivity;
radiationExposedActivityRepository.findAll(null, qradiationExposedActivity.evaluationCentreContext.attributes.get("bla123").asc());

select
	[...]
from
	radiationexposedactivity radiatione0_
inner join
	evaluationcentrecontext evaluation1_
		on radiatione0_.context_id=evaluation1_.auto_id
		and (
			attributes2_.attribute_key='bla123'
		)
inner join
	evaluationcentrecontext_attribute attributes2_
		on evaluation1_.auto_id=attributes2_.context_id
order by
	attributes2_.attribute asc

Error message is: The multi-part identifier "attributes2_.attribute_key" could not be bound.
The error is obvious - the "and" part in the first inner join does not belong there. It should be part of the evaluationcentrecontext_attribute join. If I manually edit the query, it works ofc.
So - where did I go wrong?
Link to Google Group: https://groups.google.com/forum/#!topic/querydsl/fPMNqQnkhaI
Greetings,
Björn

After some debugging I don't think this is Querydsl related. Looks like hibernate :/
I analyzed the native query Querydsl generates... (shortened)
select rep from radiationexposedactivity rep inner join rep.evaluationCentreContext.attributes as evalAttribute with key(evalAttribute) = 'bla123'

That looks pretty good, and should work from my understanding. But it doesn't. Same error message.
Suggestions?

I guess we need to split the join into two parts to make it work:
select rep from radiationexposedactivity rep inner join rep.evaluationCentreContext.attributes as evalAttribute with key(evalAttribute) = 'bla123'

becomes
select rep from radiationexposedactivity rep
inner join rep.evaluationCentreContext as evaluationCentreContext
inner join evaluationCentreContext.attributes as evalAttribute with key(evalAttribute) = 'bla123'

I will do that change in the PR I prepared.

Thanks for fixing this (and so fast!).
Could this be backported to 3.X? We are forced to use 3.X due to the incompatibility between 4.X and hibernate :/.

Yes, we can backport it. What kind of Hibernate issues do you have with Querydsl 4?

Don't remeber if it was a hibernate or spring issue. But the problem is that affected framework did not change the packagename, and thus not accepts 4.X classes.

My bad. Its Spring Data causing the problem.
https://jira.spring.io/browse/DATACMNS-670
I did read different things about wheater they are going to fix it or drop support for querydsl.

So how is the backport going? I saw 3 failed checks? :/

The backport is now fixed, some other changes needed to be backported as well. Once it is merged you can access it from the nightly snapshots or wait for the next release.

Where am I able to obtain said nightly snapshots? Looking at past release dates of QDSL I assume that the next release will be at the end of the month? If so, we depend on the nightlys, since we are scheduled for release next week.
Don't mean to rush you tho. We really appreciate your work and support.

The snapshots repository is oss.sonatype.org/content/repositories/snapshots
I'll push the review of the PR.

It's now merged and should be available in the next nightly snapshot.

Fix confirmed with the 3.7.0 Build Snapshot 20151108. Thanks for your support! :)


Niloofar Sadeghi / Image size is not consistent on the Homepage

Changes:

...

Type of change

[x] Bug fix
[ ] New feature
[ ] Update feature
[ ] Refactor code
[ ] Translation to code
[ ] Translation to crowdin
[ ] Script configuration
[ ] Improve performance
[ ] Style only
[ ] Dependency update
[ ] Documentation update
[ ] Release

Closing this PR now since the changes in the PR has been overridden by other PR and this is no longer required.


[Icon Request] Support for PostgreSQL

[x] I'm sure this issue is not a duplicate.

[x] I'm submitting an icon request:

Type: language id
Icon Name: PostgreSQL
Sample original Icon:
Language ids: pgsql

Language Extensions: https://marketplace.visualstudio.com/items?itemName=doublefint.pgsql

@brennongs Thanks for your request. At this point, I like to remind you all to first read https://github.com/vscode-icons/vscode-icons/wiki/Issue before submitting an issue.
That said, I took the liberty to correct your request as it contained many errors.
Now, to the point, thanks for reminding me to do that. Been wanting to add that since I added sqlite but totally forgot about it.


please using whichkey instead of hydra

Whichkey is almost a must-have plugin for everyone, and whichkey now also supports hydra mode. Replacing hydra with whichkey can reduce the number of plugins installed by one.

Older versions of which-key.nvim did work but I'll look at the latest version when I have time.

As for me, I don't quite understand why folke added hydra functionality into his plugin. Personally I would prefer seeing a plugin in dependencies that focuses on advanced mappings rather then a plugin that focuses on keymappings visualization that just happens to have some feautures of the hydra.


vagrant: bump bpf-next vagrant box version

Pull in latest BPF kernel tree from bpf-next which contains updated
signature for bpf_redirect_neigh() helper.
Signed-off-by: Daniel Borkmann<EMAIL_ADDRESS>

test-me-please


SEO: Soft 404

Current Behavior

Page indexing issues detected in submitted URLs for flowforge.com
To the owner of flowforge.com:
Search Console has identified that your site is affected by 1 Page indexing issue(s). The following issues were found on your site.
Top Issues
Soft 404
We recommend that you fix these issues when possible to enable the best experience and coverage in Google Search.

This is our 404.html page.
Expected Behavior
Need to ensure we return HTTP 404 response too.
Steps To Reproduce
No response
Environment
No response

I think this is a little tricky.
If you go to any invalid page on your site (eg http://flowforge.com/aioahwgoihawgoih ) then you get a proper 404 response code and are shown our 404 page.
If you navigate straight to the 404 page itself ( http://flowforge.com/404.html ) then you see the 404 page, but get a regular 200 status code. This is because you are navigating to a page that exists... it just happens to say 404 on it.
To my knowledge, GH pages doesn't provide any way to set custom response codes on individual existing pages.
Given we don't have anything that links explicitly to the url I don't think we would want it to appear on the site index (which is what I assume this report is coming from?). So one approach would be to find a way to prevent it trying to index that page.

Given we don't have anything that links explicitly to the url I don't think we would want it to appear on the site index (which is what I assume this report is coming from?). So one approach would be to find a way to prevent it trying to index that page.

Sensible

#345 raised to remove 404 from site index

Closed by https://github.com/flowforge/website/pull/387


⚠ Bofrost.be has degraded performance

In 8908425, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1534 ms

Resolved: Bofrost.be performance has improved in 27c8766.


Uninstall

Hi,
I need to uninstall price filter but is seems that setting "false" as ususl is not enough since I receive an error, eve after flushed cache; no compiler.
May you help me?
Thanks in advance
Michele

oh, magento 1.9 ultimo theme

hello,
you should delete the attribute "filter_price_ranges" in the "eav_attribute" table
then re-index "category flat data" index
flush caches again
did you look into logs/reports?
regards

Hi, thanks for your response;
After deleting attribute and reindex we got following error:
2015-05-27T09:24:49+00:00 ERR (3): Warning:
include(Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php):
failed to open stream: No such file or directory  in
/var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:24:49+00:00 ERR (3): Warning: include(): Failed opening
'Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php'
for inclusion
(include_path='/var/www/vhosts/testgalli/httpdocs/app/code/local:/var/www/vhosts/testgalli/httpdocs/app/code/community:/var/www/vhosts/testgalli/httpdocs/app/code/core:/var/www/vhosts/testgalli/httpdocs/lib:.:/usr/share/php:/usr/share/pear')
in /var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:16+00:00 ERR (3): Warning:
include(Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php):
failed to open stream: No such file or directory  in
/var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:16+00:00 ERR (3): Warning: include(): Failed opening
'Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php'
for inclusion
(include_path='/var/www/vhosts/testgalli/httpdocs/app/code/local:/var/www/vhosts/testgalli/httpdocs/app/code/community:/var/www/vhosts/testgalli/httpdocs/app/code/core:/var/www/vhosts/testgalli/httpdocs/lib:.:/usr/share/php:/usr/share/pear')
in /var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:21+00:00 ERR (3): Warning:
include(Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php):
failed to open stream: No such file or directory  in
/var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:21+00:00 ERR (3): Warning: include(): Failed opening
'Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php'
for inclusion
(include_path='/var/www/vhosts/testgalli/httpdocs/app/code/local:/var/www/vhosts/testgalli/httpdocs/app/code/community:/var/www/vhosts/testgalli/httpdocs/app/code/core:/var/www/vhosts/testgalli/httpdocs/lib:.:/usr/share/php:/usr/share/pear')
in /var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:36+00:00 ERR (3): Warning:
include(Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php):
failed to open stream: No such file or directory  in
/var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:36+00:00 ERR (3): Warning: include(): Failed opening
'Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php'
for inclusion
(include_path='/var/www/vhosts/testgalli/httpdocs/app/code/local:/var/www/vhosts/testgalli/httpdocs/app/code/community:/var/www/vhosts/testgalli/httpdocs/app/code/core:/var/www/vhosts/testgalli/httpdocs/lib:.:/usr/share/php:/usr/share/pear')
in /var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:52+00:00 ERR (3): Warning:
include(Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php):
failed to open stream: No such file or directory  in
/var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
2015-05-27T09:25:52+00:00 ERR (3): Warning: include(): Failed opening
'Mage/Aurmil/Customizepricefilter/Model/Catalog/Category/Attribute/Backend/Priceranges.php'
for inclusion
(include_path='/var/www/vhosts/testgalli/httpdocs/app/code/local:/var/www/vhosts/testgalli/httpdocs/app/code/community:/var/www/vhosts/testgalli/httpdocs/app/code/core:/var/www/vhosts/testgalli/httpdocs/lib:.:/usr/share/php:/usr/share/pear')
in /var/www/vhosts/testgalli/httpdocs/lib/Varien/Autoload.php on line 94
Can you help me?
Thankyou in advance
Michele
2015-05-25 21:39 GMT+02:00 Aurélien Millet<EMAIL_ADDRESS>
hello,
you should delete the attribute "filter_price_ranges" in the
"eav_attribute" table
then re-index "category flat data" index
flush caches again
did you look into logs/reports?
regards
—
Reply to this email directly or view it on GitHub
https://github.com/aurmil/magento-customize-price-filter/issues/14#issuecomment-105296780
.

hello
on a Magento <IP_ADDRESS>, I successfully disabled my module:

set active = false in app/etc/Aurmil_CustomizePriceFilter.xml
removed "filter_price_ranges" attribute from "eav_attribute" table
re indexed everything
flushed caches (APC / OpCache ; Magento ; ...)

do you use Magento compilation? do not forget to run it again each time a class is added/modified/removed
I don't know why, after doing these steps, a file of this module could still be included...

I can confirm the previous steps to disable the module on a 1.9


[CORE] Partial Caching not working on Windows (XAMPP) if silverstripe-cache directory is missing

This issue has been discussed in the forum previously: http://www.silverstripe.org/community/forums/template-questions/show/100887
Partial Caching is not working when used with any cache key if the silverstripe-cache directory in the root of the project is missing.
When you use <% cached %> without cache key it works and the cache file is written to the temp directory.
As soon as you insert a key like <% cached $LastEdited %> or <% cached 'bla' %> the cache file is not written and caching doesn't work.
Here is the test code I have inserted into the page layout template of a fresh ss install:
    <% cached %>

$Now

    <% end_cached %>
    <% cached 'somekey' %>

$Now

    <% end_cached %>
    <% cached $ID %>

$Now

    <% end_cached %>

The first date is cached, the other two are updated with every page load.
When I create the silverstripe-cache directory and rebuild the cache the everything works fine and all cache blocks are cached.
I am using SS 3.2.1 on XAMPP 5.6.11 on Windows 7:
Apache 2.4.12
PHP: 5.6.11
MySQL 5.6.25

confirmed for windows on wnmp as well

Unfortunately, Silverstripe CMS 3 has entered limited support in June 2018. This means we'll only be fixing critical bugs and security issues for Silverstripe CMS 3 going forward.
You can read the Silverstripe CMS Roadmap for more information on our support commitments.
I don't have a quick way of replicating this with Silverstripe CMS 4 on Windows. If someone is still encountering this issue with Silverstripe CMS 4, please leave a comment and I'll reopen.


CHEBI:136572, please fix molFile

Hi Adnan,
Please could you fix the molFile of CHEBI:136572.
The polymerization index is written as "n" instead of "n".
When I used CHEBI:136572 molFile to submit a related structure, the submission tool was not able to create the picture. This error disappeared when I manually replaced "n" by "n".
Thank you!
Anne

The existing mol file has now been replaced.


⚠ Bofrost.lu has degraded performance

In 65a87b5, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1376 ms

Resolved: Bofrost.lu performance has improved in 85d5321 after 25 minutes.


Version 0.1.1 release.

Well... I guess it is time for another release. It's arbitrary. A new version will be released soon as there are many features added since last release.
Please comment if you have any comments, ideas.

I forget I mead a 0.1.1 release. Closing


@soumaprakash

@soumaprakash
Running Gradle task 'assembleDebug'...
/D:/FlutterSdk/flutter_windows_2.2.3-stable/flutter/.pub-cache/hosted/pub.dartlang.org/pull_to_refresh-1.6.5/lib/src/internals/indicator_wrap.dart:632:9: Error: A value of type 'ValueNotifier' can't be assigned to a variable of type 'ValueNotifier'.

'ValueNotifier' is from 'package:flutter/src/foundation/change_notifier.dart' ('/D:/FlutterSdk/flutter_windows_2.2.3-stable/flutter/packages/flutter/lib/src/foundation/change_notifier.dart').
? refresher.controller.headerMode
^ks.

Originally posted by @darshankawar in https://github.com/flutter/flutter/issues/78201#issuecomment-801081459

Ok
On Mon, Oct 18, 2021, 15:03 darshankawar @.***> wrote:

Closed #91989 https://github.com/flutter/flutter/issues/91989.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/91989#event-5477009031, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ANCYBCNHUN64I2R7OQUJHQTUHPSUXANCNFSM5GGEBSUQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Create a getter protocol for Streams?

This is a feature request...
When we have a property in a protocol, we can specify it as either { get set } or just { get }. When we have a property in a struct or class, we can use private (set) to restrict access. However, as it stands, there is no compile time way to stop a piece of code from calling next inappropriately on a stream.
I would like to have some way to do that, probably through some sort of Observable (maybe there's a better name?) protocol or base class.

Hmm... looks like I just misunderstood how streams work, or confused this library with some other library. Ignore this issue.


Add release milestone check for gardener release v1.60 to tide

/kind enhancement
What this PR does / why we need it:
This PR enables milestone check for gardener release v1.60 in Tide.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:

/lgtm
/approve


[timeseries] Part-3: Add Time Series Exchange Operator, Plan Node and Serde

TBD

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 0.00%. Comparing base (59551e4) to head (5634e57).
Report is 1436 commits behind head on master.

:exclamation:  There is a different number of reports uploaded between BASE (59551e4) and HEAD (5634e57). Click for more details.
HEAD has 53 uploads less than BASE

Flag
BASE (59551e4)
HEAD (5634e57)

integration
7
1

integration2
3
1

temurin
12
1

java-21
7
1

skip-bytebuffers-true
3
0

skip-bytebuffers-false
7
1

unittests
5
0

unittests1
2
0

java-11
5
0

unittests2
3
0

integration1
2
0

custom-integration1
2
0

Additional details and impacted files
@@              Coverage Diff              @@
##             master   #14611       +/-   ##
=============================================
- Coverage     61.75%    0.00%   -61.76%
=============================================
  Files          2436        3     -2433
  Lines        133233        6   -133227
  Branches      20636        0    -20636
=============================================
- Hits          82274        0    -82274
+ Misses        44911        6    -44905
+ Partials       6048        0     -6048

Flag
Coverage Δ

custom-integration1
?

integration
0.00% <ø> (-0.01%)
:arrow_down:

integration1
?

integration2
0.00% <ø> (ø)

java-11
?

java-21
0.00% <ø> (-61.63%)
:arrow_down:

skip-bytebuffers-false
0.00% <ø> (-61.75%)
:arrow_down:

skip-bytebuffers-true
?

temurin
0.00% <ø> (-61.76%)
:arrow_down:

unittests
?

unittests1
?

unittests2
?

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Stream Results

Results should be streamed when appropriate so that large XML responses can be parsed and yielded as they are returned.

Would require a fork or upstream change on https://github.com/martinblech/xmltodict/issues/88

http://docs.python-requests.org/en/master/user/advanced/#body-content-workflow


Ability to split the query window like SSMS

Is your feature request related to a problem? Please describe.
No
Describe the solution or feature you'd like
SSMS has an icon in the upper right of the vertical scrollbar to split the query window into two panes that scroll independently of each other. Can this be added to Azure Data Studio?
Before:

After:

Describe alternatives you've considered
N/A
Additional context

@gregclerk there are a few ways to split the query window in ADS:
Right click on the editor tab and select which way to split it:

Open the command palette and search for the split editor command:

You can also add a keyboard shortcut for the command to split the editor down.

Thanks for the info.  That, however, creates two sets of editor/results panes but both results panes get refreshed whenever a query from EITHER editor pane is run.  Is there a way to have a split editor pane and only ONE results pane?

@alanrenmsft do you know if this is currently supported?


Abandoned project? Anyone interested in collaborating on a fork?

It looks like @inossidabile has been inactive for quite some time. Are there plans to continue development of Protector?
If not, are there any maintainers that would be interested in collaborating on a fork? There are a few issues with Rails 4.1+ that I'd love to see resolved. I'd be happy to help contribute of course.

I think this a pretty important piece of software and hope anyone will pick it up

:+1:
Not sure if I can be helpful. If just done some changes to the new prepend syntax/logic. That seems more readable to me. But didn't solve the issues I had with rails 4.2 https://github.com/inossidabile/protector/issues/60 . So what are your issues with 4.2?

I don't think @inossidabile is completely inactive.  His GitHub profile shows commits as recent as two days ago.  However, it is true that he seems to have chosen to ignore protector (either too busy, lost interest, whatever.  I can't judge; life happens).  I would prefer to get @inossidabile's permission before officially forking his gem, but if that's the way things go, I wouldn't mind being involved.
We use protector extensively in production, along with its integrations with CanCan and InheritedResources.  It has needed a few upgrades for our use and so I've made a few additions (see pull requests #64 #65 #66 & #67).  So I guess I'm kind of already maintaining my own fork (all the pull requests are combined into a branch on my fork called cyborg-fixes).
@inossidabile, do you have any input?

That's true. I will unlikely support it reasonably well in any predictable future (read never). I can put the desired redirect info to the README. You don't really need permissions to do such things but thanks for asking. I'm glad it's useful to you and I'm glad there's someone to keep evolving the idea. If you need any other non-time-consuming things - feel free to ask.
My advise is that you would create an organization since there were at least few commiters that probably aren't active only because I lost my belief in OSS in its previous form. I'm confident they'd like to be involved as well. I'd also like to be a part of that organization. Not an active one but more for researching purpose (I still like the concept and I have ideas how to improve it).

@inossidabile, thanks for your input and permission.  It's much appreciated.
Would anyone else like to be in charge of spearheading setting up the GitHub organization and repo?  I would be happy to do it, I just haven't done it before and don't have the time at the moment.  If no one else would like to, I'll probably get around to it in the next few months.
When we do get it set up, @inossidabile, it would be great if we could then get the rights to push to RubyGems as well so we can maintain the same gem name.

Yes, certainly.

@CyborgMaster Can you please give a little inside on how you managed to pivot?
Let's say that we have a user, manager and admin. The object they should read is a Book. Which all have these read rights:
user -> name, pages
manager -> name, pages, author
admin -> id, name, pages, author, UUID
What we are doing with protector is:
Book.restrict(user).first.uuid and we know that we will get nil if we do not have access to that field.
We are thinking of ways to go out of protector as it is not maintained and this falls only on us. We want to understand how and why the community has moved on and nobody picked up the pieces to maintain it.


version bump to 1.3.9

Description
version bump to 1.3.9
Issues Resolved
post task for release 1.3.9
https://github.com/opensearch-project/opensearch-build/issues/3195
Check List

[x] Commits are signed per the DCO using --signoff

For any changes to files within Helm chart directories:

[x] Helm chart version bumped
[x] Helm chart CHANGELOG.md updated to reflect change

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Hey @TheAlgo thanks I have updated the description, please check.

Please rebase to 1 commit @jordarlu Thanks!

Hey @TheAlgo can you please check this PR again, Not able to merge as it as requested changes from you.
Thank you


Dcu debug

Example run for:

V1610:

==============================================================================
Dcu
==============================================================================
DCU001.001 Change the UUID :: This test case verifies that the UUI... | PASS |
------------------------------------------------------------------------------
DCU002.001 Change the serial number :: This test case verifies tha... | PASS |
------------------------------------------------------------------------------

V1210:

==============================================================================
Dcu
==============================================================================
DCU001.001 Change the UUID :: This test case verifies that the UUI... | PASS |
------------------------------------------------------------------------------
DCU002.001 Change the serial number :: This test case verifies tha... | PASS |
------------------------------------------------------------------------------

The DCU003.001 fails now as it requires the display to be connected, which is not at the moment, but it used to work before when it was.

I'm unable to verify those tests on V1211 as it looks like fw cannot be flashed on this platform anymore and it isnt booting.

@macpijan I pulled the new commit but i seem to have the same problem as before, the test just freezes indefinitely it has been like that for 2h now and I dont think it is gonna unfreeze on its own. Platform: Protectli V1410

@wiktormowinski Freeze where exactly? Any log? How it looks like after you interrupt with Ctrl + C? What was the last keyword?

@wiktormowinski Freeze where exactly? Any log? How it looks like after you interrupt with Ctrl + C? What was the last keyword?
dcu-logi-1410.zip

Tests pass on v1211. Code looks ok.

Fixes: https://github.com/Dasharo/open-source-firmware-validation/issues/415

Confirmed once again on V1210.


Include completeness in mask

Compute observable fraction including photometric errors and detection completeness. Currently only using the magnitude limit. Fully incorporate completeness in isochrone fitting and simulation.

This has been incorporated into fitting. It may or may not have propagated to the ugali builtin simulation tools.