clang/flang-new compilation issues on Linux on loongarch64

Hello,
@XiWeiGu When I try to build OpenBLAS with clang/flang-new on Debian sid, I found compilation failed with both gmake and cmake. See below.
System details: Loongson 3A6000 CPU, Debian sid, kernel 6.11.0, clang 18.1.8, flang-new 18.1.8 (or clang 19.1.0 and flang-new 19.1.0), cmake 3.30.3.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
gmake:
building command: CC=clang-18 FC=flang-new-18 make
result:
...
make[1]: Entering directory '/home/loongson/test/build_OpenBLAS/kernel'
make[1]: warning: -j8 forced in makefile: resetting jobserver mode.
clang-18 -c -O2 -DSMALL_MATRIX_OPT -DMAX_STACK_ALLOC=2048 -Wall -march=loongarch64 -mabi=lp64d -DF_INTERFACE_GFORT -fPIC -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=8 -DMAX_PARALLEL_NUMBER=1 -DBUILD_SINGLE=1 -DBUILD_DOUBLE=1 -DBUILD_COMPLEX=1 -DBUILD_COMPLEX16=1 -DVERSION=\"0.3.28.dev\" -UASMNAME -UASMFNAME -UNAME -UCNAME -UCHAR_NAME -UCHAR_CNAME -DASMNAME=samax_k -DASMFNAME=samax_k_ -DNAME=samax_k_ -DCNAME=samax_k -DCHAR_NAME=\"samax_k_\" -DCHAR_CNAME=\"samax_k\" -DNO_AFFINITY -I.. -UDOUBLE  -UCOMPLEX -UCOMPLEX -UDOUBLE  -DUSE_ABS -UUSE_MIN ../kernel/loongarch64/amax_lasx.S -o samax_k.o
../kernel/loongarch64/amax_lasx.S:232:10: error: expected newline
    .end samax_k ; .section .note.GNU-stack,"",@progbits
         ^
make[1]: *** [Makefile.L1:556: samax_k.o] Error 1
make[1]: Leaving directory '/home/loongson/test/build_OpenBLAS/kernel'
make: *** [Makefile:199: libs] Error 1

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
cmake:
building commands: CC=clang-18 FC=flang-new-18 cmake -B build and then cmake --build build
result:
[  0%] Building Fortran object CMakeFiles/LAPACK_OVERRIDES.dir/lapack-netlib/SRC/la_constants.f90.o
flang-new: error: unknown argument: '-mabi=lp64d'
flang-new: error: unknown argument: '-mabi=lp64d'
gmake[2]: *** [CMakeFiles/LAPACK_OVERRIDES.dir/build.make:5548: CMakeFiles/LAPACK_OVERRIDES.dir/lapack-netlib/SRC/la_constants.f90.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:378: CMakeFiles/LAPACK_OVERRIDES.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2

if replace flang-new-18 with gfortran, the result is:
...
[ 77%] Building C object driver/others/CMakeFiles/driver_others.dir/parameter.c.o
[ 77%] Built target driver_others
[ 77%] Building C object kernel/CMakeFiles/kernel.dir/CMakeFiles/lsame.c.o
[ 77%] Building C object kernel/CMakeFiles/kernel.dir/CMakeFiles/scabs1.c.o
[ 77%] Building C object kernel/CMakeFiles/kernel.dir/CMakeFiles/dcabs1.c.o
[ 77%] Building ASM object kernel/CMakeFiles/kernel.dir/CMakeFiles/samax_k.S.o
/home/loongson/test/build_OpenBLAS/kernel/loongarch64/amax_lasx.S:232:10: error: expected newline
    .end samax_k ; .section .note.GNU-stack,"",@progbits
         ^
gmake[2]: *** [kernel/CMakeFiles/kernel.dir/build.make:117: kernel/CMakeFiles/kernel.dir/CMakeFiles/samax_k.S.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:594: kernel/CMakeFiles/kernel.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2

Thank you for your testing. I will set up the environment promptly to reproduce the issue.

According to the reference here: https://flang.llvm.org/docs/FlangCommandLineReference.html, there is no "-mabi=%" flag for flang-new.
Following a recent PR https://github.com/OpenMathLib/OpenBLAS/pull/4899, I tried to add " -mabi=% " flag to the filter-out list at lines 1723-1724 in the file Makefile.system:
https://github.com/OpenMathLib/OpenBLAS/blob/f10d47c4bbc752efca8cf93d6a02a1eeedf4d65a/Makefile.system#L1722-L1724
and the flang-new issue presented above for cmake disappears.

Right, seems earlier versions of flang-new used to ignore any -m arguments without complaining, and now those generate an error. I have no idea however if/how flang-new is expected to react to the presence of multiple ABIs for a given target...
Regarding the other problem with clang, could you try changing the toplevel common_loongarch64.h
around line 280 where it currently has an unconditional
#define EPILOGUE      \
    .end    REALNAME ;\
    GNUSTACK

and make it read
#ifdef __clang__
#define EPILOGUE .end
#else
#define EPILOGUE      \
    .end    REALNAME ;\
    GNUSTACK
#endif

(assuming one does not need to use the GNUSTACK identifier to mark the stack as non-executable with clang - although maybe it would be necessary when expressly using GNU ld for linking)

Right, seems earlier versions of flang-new used to ignore any -m arguments without complaining, and now those generate an error. I have no idea however if/how flang-new is expected to react to the presence of multiple ABIs for a given target...
Regarding the other problem with clang, could you try changing the toplevel common_loongarch64.h around line 280 where it currently has an unconditional
#define EPILOGUE      \
    .end    REALNAME ;\
    GNUSTACK

and make it read
#ifdef __clang__
#define EPILOGUE .end
#else
#define EPILOGUE      \
    .end    REALNAME ;\
    GNUSTACK
#endif

(assuming one does not need to use the GNUSTACK identifier to mark the stack as non-executable with clang - although maybe it would be necessary when expressly using GNU ld for linking)

Thanks for your kind help. I confirm that your modification fixes clang errors.

Great, thanks for the feedback. That leaves the compilation error in slacon.f, which appears to be an internal error in LLVM18. Maybe this is already fixed in the recently released 19.1 ?

Great, thanks for the feedback. That leaves the compilation error in slacon.f, which appears to be an internal error in LLVM18. Maybe this is already fixed in the recently released 19.1 ?

No. Current flang-new 19.1.1 still fails.

Thanks, reported to llvm/llvm-project now


IRQL_NOT_LESS_OR_EQUAL BSOD a few times a day

Windows Version
Microsoft Windows [Version 10.0.22631.3007]
WSL Version
<IP_ADDRESS>
Are you using WSL 1 or WSL 2?

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
Ubuntu 22.04
Other Software
Docker Desktop v4.17.1
VSCode 1.83.1
Repro Steps
Well... I just fiddle around in WSL for some time and then boom, goes the BSOD
Expected Behavior
Not to BSOD
Actual Behavior
BSOD between 1-4 times daily. Not due to load, file operations or anything in particular that I can pinpoint and it happens whether or not I am actually using WSL2 actively. WSL2 is loaded though, all days, every day and Docker Desktop and VSCode are active all day as well.
Diagnostic Logs
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: ffffc06673fe4578, memory referenced
Arg2:<PHONE_NUMBER>000002, IRQL
Arg3:<PHONE_NUMBER>000000, bitfield :
	bit 0 : value 0 = read operation, 1 = write operation
	bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)
Arg4: fffff806600ae57d, address which referenced memory

Debugging Details:
------------------

BUGCHECK_CODE:  a

BUGCHECK_P1: ffffc06673fe4578

BUGCHECK_P2: 2

BUGCHECK_P3: 0

BUGCHECK_P4: fffff806600ae57d

PROCESS_NAME:  wsl.exe

SYMBOL_NAME:  nt!MiWalkVaCheckCommon+1d

MODULE_NAME: nt

IMAGE_NAME:  ntkrnlmp.exe

FAILURE_BUCKET_ID:  AV_nt!MiWalkVaCheckCommon

FAILURE_ID_HASH:  {18f0f161-6c2c-5db0-d879-b666add2f2f6}

Followup:     MachineOwner
---------

Do not open Github issues for Windows crashes (BSODs) or security issues. Please direct all Windows crashes and security issues to<EMAIL_ADDRESS>Issues with security vulnerabilities may be edited to hide the vulnerability details.


Removed mumbai polygon links underneath profile account address

Users do not need (and likely don't care) to have clickable links that direct them to Polygonscan pages for the various blockchains their data may be stored on.

Ignore the package.json file; it was created after running npm install --legacy-peer-deps


Two RegExps are considered equal via uniqueItems

In the latest version of Ajv, as used by Webpack 2, uniqueItems fails on two RegExps due to the equal function
function equal(a, b) {
  if (a === b) return true;

  var arrA = Array.isArray(a)
    , arrB = Array.isArray(b)
    , i;

  if (arrA && arrB) {
    if (a.length != b.length) return false;
    for (i = 0; i < a.length; i++)
      if (!equal(a[i], b[i])) return false;
    return true;
  }

  if (arrA != arrB) return false;

  if (a && b && typeof a === 'object' && typeof b === 'object') {
    var keys = Object.keys(a);

    if (keys.length !== Object.keys(b).length) return false;

    for (i = 0; i < keys.length; i++)
      if (b[keys[i]] === undefined) return false;

    for (i = 0; i < keys.length; i++)
      if(!equal(a[keys[i]], b[keys[i]])) return false;

    return true;
  }

  return false;
}
undefined
equal(/foo/, /bar/)
true

This should likely check if Object.getPrototypeOf(a) === Object.prototype && Object.getPrototypeOf(b) === Object.prototype before simply checking keys (RegExps have no enumerable keys, nor would other class objects, etc). Otherwise, we could use something like the standalone lodash.deepEqual.

See also https://github.com/webpack/webpack/issues/3284

Is this more or less intended as ajv seems to be a JSON schema validator, and not so much of an 'arbitrary JS object' validator?

@STRML is de facto used for validating/processing arbitrary objects, not only JSON. Schemas must be JSON as they get serialised, but data can be anything.
I am thinking about optionally(?) using getOwnPropertyNames instead of keys and maybe also comparing enumerable status of properties (or maybe just values).

Could work - although why not just import an existing lib that can do deep object comparison?

size and performance

can also just compare .toString() for Date and RegExp, it would ignore regexp state though, but I don't think it's important here.

If Ajv wants to move into more general arbitrary object comparisons, it's probably better to use a real deep-equality lib here; otherwise it's just going to be one edge case after another.
I agree with the size/perf argument though. How about something much smaller than lodash.isequal, like https://github.com/substack/node-deep-equal/blob/master/index.js?

it doesn't cover regexp it seems

Yeah you're right. I'm investigating https://github.com/chaijs/deep-eql right now and writing up some test cases.

deep-eql works great, except for this blocker which fails the very last json-schema draft4 uniqueItems test: https://github.com/chaijs/deep-eql/issues/33

So, I ran a benchmark (https://gist.github.com/STRML/a16622ca49ea15c7b246ba8a89188569):

Lines without () are using deep-eql
(basic) is the current implementation in equal.js
Lines where no ops/sec are reported are where the existing implementation returns the wrong result

Generally seems like a wash, a decent few where deep-eql is faster, and many where the existing impl is just wrong.

deep-eql is failing tests it seems... I've added correct comparisons for Data/RegExp in 4.9.0, but I think the better solution could have been to keep the internal implementation supporting only objects from JSON and allow to pass any other library as an option, rather than having it as dependency.

@epoberezkin Yeah, I have a PR in to fix it, appears they will accept it soon.
I disagree with the extra option; the runtime/install penalty is minimal & it's not particularly intuitive to have "breaks in many cases, unless you use this option", especially since the default equality checker will work pretty well and fail in non-obvious ways. it's not particularly easy to track failures like this uniqueItems bug back to the equality checker.

I don't want to make deep-eql the default option too. It is much slower in the main use case (objects/arrays created from JSON) and also quite opinionated about what to consider equal (e.g., generators are iterated btw, rather than be compared by the reference, i.e. the assumption is that they are pure).

I have extracted equality comparison into a separate package: https://github.com/epoberezkin/fast-deep-equal


On Pop of present context, still tool tip displaying

I implemented auto-logout in my application if the tooltip is open while  auto-logout, the tooltip was not closing automatically

As the tool_tip is drawn in an overlay this is expected behavior. You would need to keep some flag that a tool_tip is open.


Add support for league/commonmark

league/commonmark is a modern Markdown parser which supports custom syntax and has several community-built extensions.

Hello @colinodell. What are the differences/advantages over http://parsedown.org/ or https://michelf.ca/projects/php-markdown/ (they are the built-in Markdown converters)
You may extend Spress with support for this Markfown parser by plugins


Moves: contest_combos is not a list

Docs:

Actual return value:

@M-Zuber Heya. Can you point out where it says it should be a list?

@phalt looks like its just in the docs. Just need to remove the word 'list' in the data-type of the table

Sorry that screen shot is quite small :)


PR regarding issue:  Add DynamicObstacles #33

Added DynamicObstacles env

Codecov Report

Merging #42 into master will decrease coverage by 5.47%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master      #42      +/-   ##
==========================================
- Coverage   37.54%   32.06%   -5.48%
==========================================
  Files          13       14       +1
  Lines         293      343      +50
==========================================
  Hits          110      110
- Misses        183      233      +50

Impacted Files
Coverage Δ

src/envs/doorkey.jl
0.00% <ø> (ø)

src/envs/dynamicobstacles.jl
0.00% <0.00%> (ø)

src/objects.jl
16.12% <0.00%> (-1.12%)
:arrow_down:

Continue to review full report at Codecov.

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

@findmyway  I think it should work now, please tell me if something is wrong, I had messed up the for loop :p (new to julia)


Update skelBML instructions

After testing out the new script on the cgbml repository, I discovered two issues with the skelBML instructions:

The "Sync fork" button on the GitHub web interface will probably never be an option for updating a module library from skelBML, because this button will not work when there are merge conflicts. I also don't think there's an easy way to do it using GitHub desktop.
Previously, I didn't properly describe the naming scheme for the backup files created by the startup script.

This PR addresses these issues by providing git commands that can be used to update a repository from skelBML, and updating the explanation of the backup files.

I am making some changes here intended to address some of the currently open issues.
I have just made a few changes to follow the suggested wording from issue https://github.com/biocro/skelBML/issues/10.

I would like to explain how to create a new BioCro module library at the BioCro meeting on Tuesday, March 28. This is important so we can remove any private modules and totally shift over to the public repository.
I know it's short notice, but I will probably merge this PR on Sunday night or Monday morning to get ready for the meeting. The skeleton package seems to be in pretty good shape. I think it makes sense to let people start testing it, and we will soon learn if there are other issues.


Better artwork implementation

When I had Windows on my PC I was using this app and it worked great. Only problem: you have to wait for artworks. So I switched to Linux. On Linux there is no official client so I found tidal-hifi which is basically a custom client for Linux. This client has a Discord RPC plugin baked in the client and I was confused on why artworks were working instantly.
So I figured out it somehow uses a URL as the artwork instead of constantly uploading artworks as assets. The image URL loaded on discord looks like this https://media.discordapp.net/external/c78dDCeR1nLDcfVlaxW7s1AzhrdPqhOIbIxjtv0zJw8/https/resources.tidal.com/images/99baaa31/52a0/40ee/a8d0/4525fb5f8a02/640x640.jpg (basically a proxy for the artwork image). As far as I understand if you just set the largeImageKey to an image url, it just works. I haven't tested this, I just wanted to drop this here in case it can improve the app.

Credits to this guy
https://github.com/Mastermindzh/tidal-hifi/pull/84


Question - RNASeq tumour-normal data and variant calling

Hi there, is there a specific pipeline for matched tumour-normal RNA-Seq data or should one follow the yaml file set up for the 'Somatic (cancer) variants' as per the documentation pages? I couldn't  seem to find a specific set-up under 'bulk-RNA-seq'.
Also, which tool would be best to use for variant calling? I read that vardict results might be uncertain and mutect2 not supported?
Thanks in advance.

Hi @VictoriaPatten!
Unfortunately, we don't have T/N calling for RNA-seq. Even N calling is tricky in RNA-seq (precision could be quite low especially for indels, gatk3.x is recommended over gatk4). You may try to call T and N separately with gatk or vardict and then subtract the variants as the first approximation.
Sergey

@naumenko-sa Thank you for the info and advice. Much appreciated.


Error after upgrading flutter

Describe the bug

error logs:
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:113:48: Error: The property 'firstDayOfMonth' is defined in multiple extensions for 'DateTime' and neither is more specific.

'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
DateTime get lastDayOfMonth => plusMonths(1).firstDayOfMonth.subtract(1.days);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:112:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => DateTimeRrule(atStartOfDay).copyWith(day: 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:217:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => isUtc ? DateTime.utc(year, month, 1) : DateTime(year, month, 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set.dart:89:17: Error: The property 'firstDayOfMonth' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
start: base.firstDayOfMonth.dayOfYear - 1,
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:217:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => isUtc ? DateTime.utc(year, month, 1) : DateTime(year, month, 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:112:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => DateTimeRrule(atStartOfDay).copyWith(day: 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set.dart:90:15: Error: The property 'lastDayOfMonth' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
end: base.lastDayOfMonth.dayOfYear,
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:220:16: Context: This is one of the extension members.
DateTime get lastDayOfMonth => isUtc ? DateTime.utc(year, month + 1, 0) : DateTime(year, month + 1, 0);
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:113:16: Context: This is one of the extension members.
DateTime get lastDayOfMonth => plusMonths(1).firstDayOfMonth.subtract(1.days);
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set_filtering.dart:97:14: Error: The property 'firstDayOfYear' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
date.firstDayOfYear,
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:223:16: Context: This is one of the extension members.
DateTime get firstDayOfYear => isUtc ? DateTime.utc(year, 1, 1) : DateTime(year, 1, 1);
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:108:16: Context: This is one of the extension members.
DateTime get firstDayOfYear =>
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set_filtering.dart:98:14: Error: The property 'lastDayOfYear' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
date.lastDayOfYear,
^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:226:16: Context: This is one of the extension members.
DateTime get lastDayOfYear => isUtc ? DateTime.utc(year, 12, 31) : DateTime(year, 12, 31);
^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:110:16: Context: This is one of the extension members.
DateTime get lastDayOfYear =>
^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set_filtering.dart:104:14: Error: The property 'firstDayOfMonth' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
date.firstDayOfMonth,
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:217:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => isUtc ? DateTime.utc(year, month, 1) : DateTime(year, month, 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:112:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => DateTimeRrule(atStartOfDay).copyWith(day: 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set_filtering.dart:105:14: Error: The property 'lastDayOfMonth' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
date.lastDayOfMonth,
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:220:16: Context: This is one of the extension members.
DateTime get lastDayOfMonth => isUtc ? DateTime.utc(year, month + 1, 0) : DateTime(year, month + 1, 0);
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:113:16: Context: This is one of the extension members.
DateTime get lastDayOfMonth => plusMonths(1).firstDayOfMonth.subtract(1.days);
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set_filtering.dart:112:12: Error: The property 'firstDayOfMonth' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
date.firstDayOfMonth,
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:217:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => isUtc ? DateTime.utc(year, month, 1) : DateTime(year, month, 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:112:16: Context: This is one of the extension members.
DateTime get firstDayOfMonth => DateTimeRrule(atStartOfDay).copyWith(day: 1);
^^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/iteration/date_set_filtering.dart:113:12: Error: The property 'lastDayOfMonth' is defined in multiple extensions for 'DateTime' and neither is more specific.
'DateTime' is from 'dart:core'.
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
date.lastDayOfMonth,
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/time-2.1.1/lib/src/extensions.dart:220:16: Context: This is one of the extension members.
DateTime get lastDayOfMonth => isUtc ? DateTime.utc(year, month + 1, 0) : DateTime(year, month + 1, 0);
^^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/rrule-0.2.8/lib/src/utils.dart:113:16: Context: This is one of the extension members.
DateTime get lastDayOfMonth => plusMonths(1).firstDayOfMonth.subtract(1.days);

Environment:

Package version:

Any workarounds for this? Need to get a release out now. I went down to 0.2.7 but it's still breaking.

It looks like time added extensions with conflicting names in v2.1.1, so a dependency override should fix this for now:
dependency_overrides:
  time: 2.1.0

I'll try to release a new version of rrule using these extensions and removing mine in the next week.

@JonasWanke I was gonna comment this as well. Thanks for responding so fast.

Fixed in v0.2.9


Load ICU4J library in a separate DependencyClassLoader

Next to #1201 (Netty Buffer) and #1204 (Airlift Slice), we're moving ICU4J that has been used for charset detection in Embulk's guess.
The entry point is just CharsetDetector. But as CharsetDetector#detect returns CharsetMatch, we have CharsetMatch, too.

Thanks!


Few enhancement as per request

As per the request got it from AWX google group

you are assuming redhat for the install, change that to centos, aws, redhat in a dictionary. I just removed the when condition in the playbook tjat loads the roles.
I am testing on vagrant boxes loaded on my local laptop -- no dns. I had to add the name <--> IP mapping in /etc/hosts in each machine. Would be cool if the playbook could detect that and add to /etc/hosts or use IP's when name resolution doesn't work. (not required, just cool)

@cvernooy23 Flagged the OS information and also few improvements. I may automate the IP mapping later, not for now. Thanks you for reporting these enhancements and I am going to be close this.


Feature Request: Config inside discord for setting character id and other commands but inside a config (with the new dicord popups) + using slash commands

I feel like I'm the only one actively using this bot :) so yeah the title explains all

I find it really-really bloat for such a small thing like this bot. Well, I can do it, but don't expect it to be soon.

I feel like I'm the only one actively using this bot :)

That's not actually true (:

That's not actually true (:
Better then :)

But it’s not really a small bot, it’s very powerful


Push Kit notifications not receiving when app kill and reopen the app

Environment: IOS
Notification Type: PushKit Voip
RN: 0.51.0
React: 16.0.0
"react-native-notifications": "^1.1.19"
"react-native-navigation": "^1.1.458"
I am receiving notification using push kit (voip) in all the modes (background and foreground) until I kill or close the app. Once I kill or close the app completely and reopen then none of the messages are being delivered and shown. Didn't find any thing in the device console logs as well. Can someone please help me with this issue. I am stuck with this issue from a week now.

Hey did you find a solution to this ? I'm facing the same problem

hey, I think you need to call consumeBagroundQueue() before loading the app each time. That will resolve the issue.


Script Manager Output Caching

The current caching of the Script Manager view output is causing issues when mixed with CSP Manager.
So for instance when wanting to apply CSP nonce for Google Tag Manger we would create a custom view to override the default GTM HeadBottom.cshtml view from Script Manager to added the extra bit of JS to configure the nonce.
When using CSP Manager this nonce creation is handled with a tag helper so when end up with a view template like this:
@model string
<!-- Google Tag Manager -->
<script csp-manager-add-nonce="true">(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
        new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
        'https://www.googletagmanager.com/gtm.js?id='+i+dl;var n=d.querySelector('[nonce]');
        n&&j.setAttribute('nonce',n.nonce||n.getAttribute('nonce'));f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','@Model');</script>
<!-- End Google Tag Manager -->

CSP Manager will then keep track of the creation of nonce on the HttpContext and its middleware will output the CSP response headers based on the state of the data in the context.  With the caching of the view output in Script Manager, subsequent request do not create the context data that CSP Manager expects and no nonce is output in the CSP header.
Based on my understanding of the Script Manager code the caching could be removed (or toggled on/off with a setting) with no detrimental affect.

Hi @whitter
Thanks for the report, though I am not sure if removing the cache would fix your issue here. I think only the output of the scripts are cached, not the whole view. So if you are overwriting the HeadBottom.cshtml your code shouldn't be cached.
But those are just my initial thoughts, I'll try to reproduce this myself and see if I can find a fix for it :)

Hi @patrickdemooij9,
Just calling in to see if you had a chance to reproduce the above and see if you need anymore information.

Hi @whitter
Sorry for the late reply, been quite busy with the Umbraco 14 version. I was able to reproduce this issue and it was indeed caused by the caching. I've added a new property to disable the caching for the rendering, which should fix your issue. I am hoping to get this released with a new version in the coming weeks.
Thank you for the report!


Update microsoft-defender-for-office.md

Fixing what seemed like a typo or copy-paste error

@JohanFreelancer9 - kindly do the copy editor review for this PR. Thanks


Add more instructions for debugging on Linux and bash

r? @keybase/react-hackers

Yeah, I just want something easily copy-and-pastable.


Feature: add webhook notification capability

I propose here to add the possibility to send a notification to a web hook for each new comment.
Notable changes

creation of a new WebHook class in the notifications module
by default, it sends a POST request with the same metadata as the mail notification (name, mail and site of the author as well as the moderation links)
add requests as dependency
possibility for the end user to pass a JSON template to the webhook (useful for tools allowing formatting, like Slack/Teams/Matrix...). An example of template for Slack is provided (into contrib subfolder) with this render:

Questions

Maybe it is possible with Werkzeug, Flask or the stdlib directly for the POST request? I'm not expert on this side so, don't hesitate on review my code.
I wanted to use f-strings but apparently the project is still tested on Python 3.5 (which has reached EOL), but not 3.9. Is it a voluntary choice?
I had to fix dependencies consistency between setup.py and tox.ini, in order to get CI fixed. Requirements are not well documented and the development workflow is quite unclear. Would you accept a PR to switch to requirements.txt files and/or pyproject.tom (recomended by tox anyway)?

Misc

add cache to Travis to make it faster
Close my question #722

ping @posativ @ix5 @blatinier : any chance to see it merged or reviewed?

Can't say much, but here are my thoughts:

f-strings are pretty dangerous, see Armin Ronacher: Be Careful with Python's New-Style String Format
Avoid adding new dependencies. POST requests can be done with urllib
Squash your commits

Thanks for your feedback.

* f-strings are pretty dangerous, see [Armin Ronacher: Be Careful with Python's New-Style String Format](https://lucumr.pocoo.org/2016/12/29/careful-with-str-format/)

I did not know that but it's quite old (not sure it's still applicable) and it's a concern only when we format some secret no? If you prefer, we can switch to f"{var}" or "%s" % var.

Avoid adding new dependencies. POST requests can be done with urllib

Sure but it would be quite harder to handle different cases (HTTP warnings, redirections, etc...).

Squash your commits

I will.

It would be great if this had some unit tests.

Sure!
I did not write them because I can't find which tests framework is recommended.
Can you tell me which one please? (pypi package name)

We're using nosetests; you can invoke them with nose or by running "make test"

We're using nosetests; you can invoke them with nose or by running "make test"

Ok. What I need is the PyPi package to install it as testing dependency in a virtual env (I don't want to install something widely on my system). I can't find noestests on pypi.org but I've found 2 nose* packages: this one https://pypi.org/project/nose/ or this one https://pypi.org/project/nose2/?

I think the pypi name is just "nose", but you should also be able to just use python's standard unittest framework to run the tests - we don't use anything nose-specific.

I think the pypi name is just "nose", but you should also be able to just use python's standard unittest framework to run the tests - we don't use anything nose-specific.

Good news because running make test returns an error (Ubuntu 20.04, after make init with node 14):
:~/Git/External/isso$ make test
python3 setup.py nosetests
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help

error: invalid command 'nosetests'
make: *** [Makefile:71 : test] Erreur 1

Thanks for your help. I'll try to write some unit tests with the standard lib.

nose is only a runner. You can also run them with python3 -m unittest discover isso/tests or by using pytest which also includes a runner.

I & @mskian ended up creating this - https://github.com/mskian/isso-telegram-notifier

I & @mskian ended up creating this - https://github.com/mskian/isso-telegram-notifier

Nice work! Why not develop it right into Isso?

If this was added to mainline isso, it would be hard to make sure that it kept working - the maintainers can't test with lots of different configurations.

Nice work! I have not verified the functionality myself, but the code looks neat.
Please add (unit) tests as requested by @jelmer

@Guts this is a great feature, would you mind rebasing and addressing the points raised by jelmer and myself?

It'll be great to have this feature. It'll enable me to trigger a build of my static website in which I render the Isso comments at build time.


Docs on usage with Dask

The Dask experience with this can be pretty nice, but needs some extra configuration. Docs should describe:

Using jupyter-server-proxy
Using yarnspawner
Bundling dask configuration in with the packaged archives

Fixed by fb918c476cbc4e5c7cd25c672329826568905a97


Support for Animas basals and using new platform API

This PR adds support for Animas basals and (joint) suspend/resume events, and also sends all Animas data through the new platform API endpoints. Other drivers still upload through Jellyfish.
Note:

This requires an npm link ../platform-client/ on this branch to work.
You'll also need to run this branch of the platform API. (Or create a mock server as described here if you just want to download the POST records)

 <ux:0, dev:3, tst:0> [uploader] Upload Animas data using new platform API endpoints

Merging this into main Animas branch to build new alpha Uploader. /cc @darinkrauss


Problems with disable draggable circle

When a use "this.manager.create", the points stayed draggable, but is not necessary. And I request a functionality for this case.

Solved in the new version available on npm https://www.npmjs.com/package/garea.js/v/1.0.3 available in the doc.
Example
const area = crop.getDraw('area');
area.setDisable(true);


[Question] SHAP library: Is it possible to have a node in LightGBM that has no coverage (no samples assigned to it)?

Description
In https://github.com/shap/shap/issues/3574 we discuss if it possible to have a node in LightGBM that has no samples assigned to it during training. This question is important to clarify if it is necessary to assert coverage of the nodes in case of no background dataset is is passed and SHAP computations are based on tree paths. One of the SHAP maintainers asked for a clarification on this question.
To summarize the lengthy discussion at https://github.com/shap/shap/issues/3574:
There exists a case (multiclass prediction with LightGBM, interactions=True, data=None, feature_perturbation='tree_path_dependent') where SHAP explanations fail due to an

ExplainerError: The background dataset you provided does not cover all the leaves in the model, so TreeExplainer cannot run with the feature_perturbation="tree_path_dependent" option! Try providing a larger background dataset, no background dataset, or using feature_perturbation="interventional".

But since this works in all other cases (non multiclass cases) and also with interactions=False in the multiclass case (this case is using the LightGBM implementation) and since it even works if one removes the assert of coverage, the question arises if for this single case the assert of the coverage is necessary at all.
It would be necessary to assert coverage if it is possible to get "empty" nodes during training, which would be an uncovered node. Hence the question if it is possible to have a node in LightGBM that has no samples assigned to it during training.
Please point me toward any documentation that covers this question or alternatively if one of the maintainers could clarify this question would help us a lot to get forward! Thank you very much in advance!
Reproducible example
from sklearn.datasets import load_diabetes
from sklearn.datasets import load_digits
from sklearn.datasets import load_breast_cancer
from lightgbm import LGBMRegressor
from lightgbm import LGBMClassifier
from shap.explainers import Tree as TreeExplainer

# data | regression | binary | multi class
data_reg = load_diabetes(as_frame=True)
data_bin = load_breast_cancer(as_frame=True)
data_mult = load_digits(as_frame=True)

# train models | regression | binary | multi class
model_reg = LGBMRegressor(**{'verbosity': -1,}).fit(data_reg.data, data_reg.target)
model_bin = LGBMClassifier(**{'verbosity': -1,}).fit(data_bin.data, data_bin.target)
model_mult = LGBMClassifier(**{'verbosity': -1,}).fit(data_mult.data, data_mult.target)

# Explainer
explainer_reg = TreeExplainer(
    model_reg,
    data=None,
    feature_perturbation='tree_path_dependent')
explainer_bin = TreeExplainer(
    model_bin,
    data=None,
    feature_perturbation='tree_path_dependent')
explainer_mult = TreeExplainer(
    model_mult,
    data=None,
    feature_perturbation='tree_path_dependent')

# Explainations
explainations_reg = explainer_reg(data_reg.data, interactions=False)
explainations_reg_inter = explainer_reg(data_reg.data, interactions=True)
explainations_bin = explainer_bin(data_bin.data, interactions=False)
explainations_bin_inter = explainer_bin(data_bin.data, interactions=True)
explainations_mult = explainer_mult(data_mult.data, interactions=False)
explainations_mult_inter = explainer_mult(data_mult.data, interactions=True)

Environment info
Win11
Python 3.11.8
LightGBM 4.3.0
SHAP 0.45.0
Additional Comments

possible to have a node in LightGBM that has no samples assigned to it during training

Given a dataset X with label y, while performing one round of boosting on X and y I don't believe it's possible for LightGBM to produce any leaf nodes matching 0 samples in X.
These checks explicitly prevent the addition of splits that result in 0 samples on one side of the split.
https://github.com/microsoft/LightGBM/blob/28536a0a5d0c46598fbc930a63cec72399a969e4/src/treelearner/serial_tree_learner.cpp#L846
https://github.com/microsoft/LightGBM/blob/28536a0a5d0c46598fbc930a63cec72399a969e4/src/treelearner/serial_tree_learner.cpp#L856
https://github.com/microsoft/LightGBM/blob/28536a0a5d0c46598fbc930a63cec72399a969e4/src/treelearner/serial_tree_learner.cpp#L856
https://github.com/microsoft/LightGBM/blob/28536a0a5d0c46598fbc930a63cec72399a969e4/src/treelearner/serial_tree_learner.cpp#L880
Here's a minimal example using lightgbm==4.3.0 showing how to trigger those checks, by providing a "forced" split that is impossible to satisfy.
import lightgbm as lgb
import numpy as np
import json
from sklearn.datasets import make_blobs

X, y = make_blobs(n_samples=10_000, n_features=1, centers=3)

with open("forced_splits.json", "w") as f:
    f.write(json.dumps(
        {"feature": 0, "threshold": np.max(X) + 1.0}
    ))

# construct the estimator + fit the model
bst = lgb.train(
    params={
        "forcedsplits_filename": "forced_splits.json",
        "objective": "multiclass",
        "min_gain_to_split": 0.0,
        "min_data_in_leaf": 0,
        "num_classes": 3,
        "num_iterations": 10,
        "num_leaves": 31,
        "verbose": 1
    },
    train_set=lgb.Dataset(X, label=y, params={"min_data_in_bin": 1})
)

lightgbm.basic.LightGBMError: Check failed: (best_split_info.right_count) > (0) at /Users/jlamb/repos/LightGBM/lightgbm-python/src/treelearner/serial_tree_learner.cpp, line 856 .

Ok, so given that I just trained a LightGBM model on dataset X, every leaf in every tree will match at least one sample in X?
No.
LightGBM supports "training continuation", where you start from an already-created model and then perform additional boosting rounds to add trees to that model.
It's not necessary that the training dataset used to produce that initial model is the same as the one used to generate those new trees. If the distribution of features is very different in those two datasets, it's possible for earlier trees (from the pre-trained model) to have leaves that match 0 samples in the newly-provided dataset.
For more, see https://stackoverflow.com/questions/73664093/lightgbm-train-vs-update-vs-refit/73669068#73669068.
So you CANNOT assume that every leaf in every tree in a LightGBM model m will match at least one record in training dataset X, unless every tree in the model was created from X.
A LightGBM model can be created from multiple, heterogeneous datasets, so you cannot assume that for a given model there is such as thing "the", single, training dataset.
Wait, you can set min_child_samples = 0?
Yes. In https://github.com/shap/shap/issues/3574, you mentioned the parameter min_child_samples several times. That is an alias for min_data_in_leaf, which must be in the range >=0 (parameter docs).
Setting it to 0 is supported as a way to say "use other mechanisms to prevent overfitting instead", like:

min_gain_to_split = minimum total change in the loss function that a split must provide to be added to the tree
max_depth, num_leaves = limits on the number of leaves, regardless of how many samples fall in them

@jameslamb Thank you very much! Really appreciating your help!


Beam Search optimization trainer for PNP

New training algorithm that optimizes a globally-normalized model by training the weights to ensure that  correct program executions don't fall off the beam.
Also some random refactoring and code cleanup.

I think changing to ComputationGraph.getNew is important, the other comments are your call

I changed everything to computationGraph.getNew here and in all other code in pnp.


[ALLUXIO-2265]Mark RuntimeConstants class name in RuntimeConstants.java with annotation "@ThreadSafe"

https://alluxio.atlassian.net/browse/ALLUXIO-2265
I have marked RuntimeConstants class name in RuntimeConstants.java with annotation "@ThreadSafe".

Can one of the admins verify this patch?

ok to test

Jenkins, add to whitelist

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12001/
Test PASSed.

Merged build finished. Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12013/
Test PASSed.


mentions

okay not sure why that comment went through twice but whatever

wait I forgot to await it

oops. you broke the bot

was trying to figure out how to push a followup commit from github.dev without making a whole new pr so technically it's microsoft's fault

wow what a joke of a company


Switch to Netflix data set

Use Netflix data set
Pined version
Add time counter

Tested-by: zlq

/gcbrun


update release branch makefile to target correct branch bundle

Issue #, if available:
Description of changes:
Testing (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/override eks-anywhere-attribution-files-presubmit
/override eks-anywhere-mocks-presubmits
/override eks-anywhere-presubmit


Can't Unhide or Hide Programs

I just got the new Gameboy Emulator for my Ti-84 Plus CE and after I was done setting it up I booted into Cesium to hide it. Once I got there I noticed it was already locked and it wouldn't let me unlock or hide it. I then went to another program and it also didn't let me unlock it or unhide it. Am I missing something? Thanks

You cannot hide archived programs. You need to unarchive them, hide them, and rearchive them as needed.


AttributeError: 'SpawnProcess' object has no attribute '_closed'

I run python main.py
I got the error:
Traceback (most recent call last):
File "main.py", line 124, in
main()
File "main.py", line 76, in main
predicted_state_std=predicted_state_std)
File "/home/lq/Data-Efficient-Reinforcement-Learning-with-Probabilistic-Model-Predictive-Control/control_objects/gp_mpc_controller.py", line 806, in add_memory
not ('p_train' in self.dict and not self.p_train._closed):
AttributeError: 'SpawnProcess' object has no attribute '_closed'
Traceback (most recent call last):
File "", line 1, in
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.6/multiprocessing/spawn.py", line 105, in spawn_main
exitcode = _main(fd)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.6/multiprocessing/spawn.py", line 115, in _main
self = reduction.pickle.load(from_parent)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.6/multiprocessing/synchronize.py", line 110, in setstate
self._semlock = _multiprocessing.SemLock._rebuild(*state)
FileNotFoundError: [Errno 2] No such file or directory
^CError in atexit._run_exitfuncs:
Traceback (most recent call last):
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.6/multiprocessing/popen_fork.py", line 28, in poll
Process Process-1:
pid, sts = os.waitpid(self.pid, flag)
KeyboardInterrupt
Traceback (most recent call last):
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/lq/Data-Efficient-Reinforcement-Learning-with-Probabilistic-Model-Predictive-Control/utils/utils.py", line 473, in anim_plots_2d_p
if (time.time() - last_update_time) > time_between_updates:
Can you give me some suggestions?

Hi,
Can you update your python version to 3.8 (update your anaconda version if necessary), and see if you get the same error ?
Thanks.

@SimonRennotte
Thanks for your quickly reply.

I update my python version to 3.8.
The project can run sucessfully a few steps, then I got the error:
Traceback (most recent call last):
File "main.py", line 124, in
main()
File "main.py", line 77, in main
action, info_dict = ctrl_obj.compute_action(obs_mu=obs)
File "/home/lq/Data-Efficient-Reinforcement-Learning-with-Probabilistic-Model-Predictive-Control/control_objects/gp_mpc_controller.py", line 639, in compute_action
self.check_and_close_processes()
File "/home/lq/Data-Efficient-Reinforcement-Learning-with-Probabilistic-Model-Predictive-Control/control_objects/gp_mpc_controller.py", line 985, in check_and_close_processes
self.models[model_idx].initialize(params_dict_list[model_idx])
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/gpytorch/module.py", line 95, in initialize
module.initialize({name: val})
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/gpytorch/module.py", line 95, in initialize
module.initialize(**{name: val})
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/gpytorch/module.py", line 99, in initialize
setattr(self, name, val)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1178, in setattr
object.setattr(self, name, value)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/gpytorch/kernels/kernel.py", line 245, in lengthscale
self._set_lengthscale(value)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/gpytorch/kernels/kernel.py", line 254, in _set_lengthscale
self.initialize(raw_lengthscale=self.raw_lengthscale_constraint.inverse_transform(value))
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/gpytorch/module.py", line 103, in initialize
raise RuntimeError(
RuntimeError: Attempting to manually set a parameter value that is out of bounds of its current constraints, Interval(4.000E-03, 2.500E+01). Most likely, you want to do the following:
likelihood = GaussianLikelihood(noise_constraint=gpytorch.constraints.GreaterThan(better_lower_bound))
Process Process-1:
Traceback (most recent call last):
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/lq/Data-Efficient-Reinforcement-Learning-with-Probabilistic-Model-Predictive-Control/utils/utils.py", line 477, in anim_plots_2d_p
msg = queue.get()  # Read from the queue
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/multiprocessing/queues.py", line 116, in get
return _ForkingPickler.loads(res)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/site-packages/torch/multiprocessing/reductions.py", line 289, in rebuild_storage_fd
fd = df.detach()
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/multiprocessing/resource_sharer.py", line 57, in detach
with _resource_sharer.get_connection(self._id) as conn:
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/multiprocessing/resource_sharer.py", line 87, in get_connection
c = Client(address, authkey=process.current_process().authkey)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/multiprocessing/connection.py", line 502, in Client
c = SocketClient(address)
File "/home/lq/anaconda3/envs/py3.6-Gaussian_processes/lib/python3.8/multiprocessing/connection.py", line 630, in SocketClient
s.connect(address)
FileNotFoundError: [Errno 2] No such file or directory

It seems you are trying to initialize the lengthscale value outside the constrainsts bound.
If it is the case, you need to update the constraints on the parameter so that it makes sense.
Can you let me know if it works ?
If not, can you paste your config file here?

main_parameters_pendulum.json:
{
"env_to_control":  "Pendulum-v1", "render_env": true, "verbose":  true,
"render_live_plots_2d": true,
"save_plots_2d":  false, "save_plots_model_3d":  false,
"save_render_env": true, "freq_iter_save_plots":  30,
"number_tests_to_run": 1, "run_live_graph_parallel_process": true,
"num_steps_env": 150, "random_actions_init":  20
}
params_Pendulum-v1.json:
{
"gp_init": {
"noise_covar.noise": [1e-4, 1e-4, 1e-4],
"base_kernel.lengthscale": [[0.75, 0.75, 0.75, 0.75],
[0.75, 0.75, 0.75, 0.75],
[0.75, 0.75, 0.75, 0.75]],
"outputscale": [5e-2, 5e-2, 5e-2]
},
"gp_constraints": {
"min_std_noise": 1e-3, "max_std_noise": 3e-1, "min_outputscale":  1e-5,
"max_outputscale": 0.95, "min_lengthscale":  4e-3, "max_lengthscale": 25.0,
"min_lengthscale_time": 10, "max_lengthscale_time": 10000
},
"controller": {
"target_state_norm": [1, 0.5, 0.5], "weight_state": [1, 0.1, 0.1],
"weight_state_terminal": [10, 5, 5],
"target_action_norm": [0.5], "weight_action": [0.05],
"obs_var_norm": [1e-6, 1e-6, 1e-6], "len_horizon": 15, "exploration_factor": 3,
"limit_action_change": false, "max_change_action_norm": [0.05],
"num_repeat_actions": 1, "clip_lower_bound_cost_to_0": false,
"include_time_gp": false
},
"constraints_states": {
"use_constraints": false, "state_min": [-0.1, 0.05, 0.05], "state_max":  [1.1, 0.95, 0.925],
"area_multiplier": 1
},
"train": {
"lr_train": 7e-3, "iter_train": 15, "training_frequency": 10, "clip_grad_value": 1e-3,
"print_train": false, "step_print_train": 5
},
"actions_optimizer": {
"disp": null, "maxcor": 2, "ftol": 1e-15, "gtol": 1e-15, "eps": 1e-2, "maxfun": 2,
"maxiter": 2, "iprint": -1, "maxls": 2, "finite_diff_rel_step": null
},
"memory": {
"min_error_prediction_state_for_memory":  [3e-4, 3e-4, 3e-4],
"min_prediction_state_std_for_memory":  [3e-3, 3e-3, 3e-3]
}
}
Note: When I run main.py, I got the error that Pendulum-v0 is not registered. Thus, I changed Pendulum-v0 to Pendulum-v1.
I only changed this name, and I did not change any other parameter.

Did you follow the installation instructions in the ReadMe?
Normally you should not have to change Pendulum-v0 to Pendulum-v1.
Can you provide the version of the packages you get when writing "pip freeze" in your virtual environment?


Document how to develop on streamparse

Currently, I have some internal developer documentation at Parse.ly in our project readmes about how to develop on streamparse, including:

setting up local lein checkouts for working on the JVM interop library from a dependent project
using setup.py develop
building and installing pre-release Storm versions locally

These would be good to have somewhere in our developer wiki.

I'm going to close this issue due to the merged #103.


fix(apiclient): add CONNECTION_URL to debug output in debug mode

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


Audit action field optionality

Environment
Delta-rs version: all
Binding: rust

Bug
What happened:
Some of the fields are incorrectly marked as optional in action.rs
What you expected to happen:
Make sure optionality annotation matches with what's in delta spec and reference implementation: https://github.com/delta-io/delta/blob/master/core/src/main/scala/org/apache/spark/sql/delta/actions/actions.scala
How to reproduce it:
More details:
Follow up from https://github.com/delta-io/delta-rs/pull/370

We also has to double check changes and do not copy paste 1-to-1 as this example https://github.com/delta-io/delta-rs/pull/417/files/b33124ce41bf4ce9b210fc67a79c8e8590dc72b4#diff-9fb70b66d3f77e15e99399b95228d124db4bd0d898e1e159bf106ccced488332 shows that we could face some issues


Better documentation of options

Can we please have more documentation on the options? Even just copy/paste the notes in the top of the .js file into your promo page and a wiki page on here.

It would be nice to set the template parameter to use the "time ago" or just plain time.
maybe a html5 time tag, example:
2011/11/24 03:11

It would really help beginners if the home page gave more examples of how to use the "template" option. The coded examples there, while really helpful, are mostly pretty similar. A greater range of template syntaxes would really help show off the flexibility of the plug-in, and get beginners started. As it is, you have to dive pretty far into the source code to see what's happening, and even then you have to know what to look for.


Better testing for solution correctness, plots

Codecov Report

Merging #37 (1dd4203) into master (d0e15c0) will increase coverage by 11.45%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##           master       #37       +/-   ##
============================================
+ Coverage   88.54%   100.00%   +11.45%
============================================
  Files          11        11
  Lines         192       214       +22
============================================
+ Hits          170       214       +44
+ Misses         22         0       -22

Flag
Coverage Δ

unittests
100.00% <100.00%> (+11.45%)
:arrow_up:

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

Impacted Files
Coverage Δ

pkmodel/tests/test_compartment.py
100.00% <ø> (+11.11%)
:arrow_up:

pkmodel/tests/test_dose.py
100.00% <ø> (+4.54%)
:arrow_up:

pkmodel/tests/test_model.py
100.00% <ø> (+11.11%)
:arrow_up:

pkmodel/tests/test_protocol.py
100.00% <ø> (+6.25%)
:arrow_up:

pkmodel/solution.py
100.00% <100.00%> (+29.82%)
:arrow_up:

pkmodel/tests/test_solution.py
100.00% <100.00%> (+2.63%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Status of Windows build

This issues tracks the status of native Windows builds for the toolkit.
Windows is not currently a supported platform. Windows users are encouraged to run Linux builds of the tools using either Windows Subsystem for Linux (WSL) or Docker for Windows.
Acknowledging the above caveat, it is useful to track known issues on Windows and resolve them over time. At present, the toolkit is built on Windows as part of CI tests, and large parts of the test suite run successfully. Cases where the test suite does not run successfully are primarily due to limitations in the test suite, not the tools. At this time there are no known bugs in the tools, but there are gaps in the runnable test suite and limited real-world testing.
The two main issues for having Windows support are having a complete CI test suite that runs on Windows, and resolving inconsistencies in Windows newline handling. Most other known issues are minor, though a couple complicate having a test suite shared across Windows and Unix platforms. With PRs #314 and #320 newline consistency issues are largely addressed.
Windows CI Test suite status
A Windows CI test suite was setup using GitHub Actions. See PRs #313 and #315. Current status:

[x] Build (compile/link) w/ dub, DMD 64-bit - Done (passses)
[x] Build (compile/link) w/ dub, LDC  64-bit - Done (passses)
[x] Build (compile/link) w/ make, DMD  64-bit - Done (passses)
[x] Build (compile/link) w/ make, LDC  64-bit - Done (passses)
[x] Built-in unit tests w/ make unittest, DMD  64-bit - Passes, with minor caveats. See "Disabled unit tests" below.
[ ] Built-in unit tests w/ make unittest, LDC  64-bit - Fails in tsv-sample due to differences in floating point format output. As an example, a floating point value formatted as 0.75346697377181959 on Linux/MacOs is formatted as 0.75346697377181970 with LDC. This looks like a round-off difference in a mathematical calculation, nothing more.
[ ] Command line unit tests w/ make test, both DMD and LDC. These fail from the beginning because of newline differences between the golden set files from the repo and the results produced in the tests. In particular, the "error" and "help" tests that generate messages to end users are getting written using Windows newlines, but the "gold" files with expected results were generated on Unix. The main complication is that many expected results should be newline equivalent, so different strategies are needed for each.
[ ] Input files with Windows newlines - The test suite needs to include files with Windows newlines, for every tool.

Notes:

Disabled unit tests - A pair of rounding tests for common.tsv-utils.numerics.formatNumber function fail on Windows and were disabled. The cases are formatNumber(0.6, 0) and formatNumber(-0.6, 0). These should return "1" and "-1" respectively, but on Windows return "0" and "-0". This is due to incorrect results from the calls being made to std.format.format. std.format.format is likely calling snprintf from platform's C library. The disabled unit tests are in common.tsv-utils.numerics.d starting at lines 220 and 334

Windows Newline handling
On Unix and MacOs tsv-utils requires and generates Unix newlines. However, a newline handling policy has never been identified for running on a Windows platform. As a result, tools are inconsistent in the manner they handled Windows newlines when running on Windows. Some possible newline handling policies:

Read and write Unix newlines only, on all platforms.
Read and write using platform preferred linefeeds.
Read either Windows or Unix linefeeds; Write Unix linefeeds
Full customization via command line arguments.

Option 1 is simplest policy to support and what is being done initially. It is the easiest to enforce in the current code, and easiest to support in the current test suite. And, it is a reasonable choice in many environments, especially in circumstances where a mix of Unix and Windows platforms are in use. If data files are being shared, Unix newlines will normally be preferred. Option 1 is also consistent with other choices made in the toolkit. In particular, supporting only one file format (UTF-8 TSV), and delegating conversion to that format to other tools (e.g. dos2unix, csv2tsv).
Option 1 is largely in place with PRs #314 and #320, but the test suite still needs work to test it fully. Tasks:

[x] Detection of Windows newlines when on a Window platform, same as it is being done on Unix. (PR #320)
[ ] Have files with Windows newlines (or platform newlines) in the test suite so these cases are tested.

Option 2 might be the preferred option in many traditional applications, but it is not clear if this is a good choice for data mining tools. In particular, it is very common to share data files between people, platforms, and tools. In such environments Unix newlines will be preferred. Switching to Windows newlines on Windows machines may be more an annoyance than a benefit.
Option 3, reading both newline forms, but writing Unix newlines, has some nice properties. And, it might be easier done than expected, as most tools use bufferedByLine. In particular, bufferedByLine.front handles newlines. However, a number of tools have their own reader functionality, so it would still be necessary to have a test suite for each tool. And, it is not really necessary given the availability of tools like dos2unix. Still, this option may be worth consideration.
Option 4, full customization of newline handling, would provide the most complete solution. However, it has a material downsides. It creates additional user complexity in the form of additional command line arguments. It also creates complexity in the tools and test suite. At present these downsides seem to outweigh the benefits.
Other issues

Floating point number formatting - This is described under "Disabled unit tests" above. This affects primarily tsv-pretty when printing floats in formatted forms. Appears to affect a relatively small number of forms, though it is undesirable when it occurs.

Does the merge into v2.1.2 for #320 imply that,  for newline handling going forward, it might be easiest to adopt option 3?

Option 3, reading both newline forms, but writing Unix newlines

In any case, while waiting for a full windows release/build, could just csv2tsv.exe be made availalble, assuming it passes any needed tests?  This would enable Windows users to generate valid tsv from csv without excel, perhaps by:

validate foo.csv  with some tool(s), for example https://csvlint.io/ But be warned, if you download the "standardized" csv they offer, I think it silently adds double-quotes around every field, including numbers. For example if foo.csv has a row foo,22 it becomes "foo","22" in the "standardized" csv file (not sure why).
csv2tsv.exe  foo.csv  >  foo.tsv Note that  csv2tsv by default removes double-quotes where not needed, so foo.tsv would be fooTAB22

May need some documentation on how to pass escaped command-line arguments to csv2tsv.exe in windows if using cmd or powershell...
For example, on linux/macos, we can create  a file with scsv (semi-colon separated values) using something like these:
csv2tsv --tsv-delim   $";"    foo.csv  > foo.scsv
csv2tsv --tsv-delim   $';'    foo.csv  > foo.scsv
csv2tsv --tsv-delim    \;     foo.csv  > foo.scsv

And I'm thinking none of the above command-lines would work on windows. Perhaps ^; would work per which-symbol-is-escape-character-in-cmd
But if you need to specify tab as a command line argument, then instead of cmd windows folks may need to use powershell, which can escape tab as backtick-t
`t

per About special characters in PowerShell docs
Finally, another work-around  avoiding both cmd and powershell completely, just install git-for-windows (choco install git or some other bash shell for windows). Then run csv2tsv.exe in that shell, if csv2tsv.exe can handle arguments passed to it from bash.exe.

Does the merge into v2.1.2 for #320 imply that,  for newline handling going forward, it might be easiest to adopt option 3?

Option 3, reading both newline forms, but writing Unix newlines

In any case, while waiting for a full windows release/build, could just csv2tsv.exe be made availalble, assuming it passes any needed tests?  This would enable Windows users to generate valid tsv from csv without excel, perhaps by:

validate foo.csv  with some tool(s), for example https://csvlint.io/ But be warned, if you download the "standardized" csv they offer, I think it silently adds double-quotes around every field, including numbers. For example if foo.csv has a row foo,22 it becomes "foo","22" in the "standardized" csv file (not sure why).
csv2tsv.exe  foo.csv  >  foo.tsv Note that  csv2tsv by default removes double-quotes where not needed, so foo.tsv would be fooTAB22

May need some documentation on how to pass escaped command-line arguments to csv2tsv.exe in windows if using cmd or powershell...
For example, on linux/macos, we can create  a file with scsv (semi-colon separated values) using something like these:
csv2tsv --tsv-delim   $";"    foo.csv  > foo.scsv
csv2tsv --tsv-delim   $';'    foo.csv  > foo.scsv
csv2tsv --tsv-delim    \;     foo.csv  > foo.scsv

And I'm thinking none of the above command-lines would work on windows. Perhaps ^; would work per which-symbol-is-escape-character-in-cmd
But if you need to specify tab as a command line argument, then instead of cmd windows folks may need to use powershell, which can escape tab as backtick-t
`t

per About special characters in PowerShell docs
Finally, another work-around  avoiding both cmd and powershell completely, just install git-for-windows (choco install git or some other bash shell for windows). Then run csv2tsv.exe in that shell, if csv2tsv.exe can handle arguments passed to it from bash.exe.

Hi @porteusconf. Thanks for the feedback and suggestions. Some comments in-line below.

Does the merge into v2.1.2 for #320 imply that, for newline handling going forward, it might be easiest to adopt option 3?

Option 3, reading both newline forms, but writing Unix newlines

Option 1, Unix newlines only on both input and output is by far the easiest (lowest investment cost). Option 3 is a fair bit more expensive. Much of this comes from increased test suite cost. Some because there are a several tools that have their own reader functionality (for example, tsv-sample).
A relevant question is how much additional benefit would be seen investing in option 3? It's a question I don't know the answer to. How many users, how prevalent are the data files, and how onerous are the alternatives, such as invoking dos2unix on the data first.

In any case, while waiting for a full windows release/build, could just csv2tsv.exe be made availalble, assuming it passes any needed tests? This would enable Windows users to generate valid tsv from csv without excel, ...

Well, I'm reluctant to create pre-built binary packages for only a single tool. However, I see the merit behind this idea, perhaps there are ways to get the desired effect.
First, note that nothing prevents cloning the git repo and building the tools on Windows. The test suite is not complete for Windows, but that doesn't mean the tools won't work properly. And to your point, csv2tsv would likely passes a more complete test suite simply because the csv2tsv test suite already includes examples of files with Windows newlines.
What could be done in this regard is to: (a) Publish test suite status info for csv2tsv by itself; (b) Add any missing csv2tsv tests; (c) Add specific instructions describing how to build on Windows.

perhaps by:

validate foo.csv  with some tool(s), for example https://csvlint.io/ But be warned, if you download the "standardized" csv they offer, I think it silently adds double-quotes around every field, including numbers. For example if foo.csv has a row foo,22 it becomes "foo","22" in the "standardized" csv file (not sure why).
csv2tsv.exe  foo.csv  >  foo.tsv Note that  csv2tsv by default removes double-quotes where not needed, so foo.tsv would be fooTAB22

csv2tsv doesn't have any trouble reading any of these formats, but as you point out, it always generates escape-free TSV.

May need some documentation on how to pass escaped command-line arguments to csv2tsv.exe in windows if using cmd or powershell...

Good thoughts, thank you.

Finally, another work-around avoiding both cmd and powershell completely, just install git-for-windows (choco install git or some other bash shell for windows). Then run csv2tsv.exe in that shell, if csv2tsv.exe can handle arguments passed to it from bash.exe.

Agreed, it might make sense to include this option in the documentation.

Hi @porteusconf. Thanks for the feedback and suggestions. Some comments in-line below.

Does the merge into v2.1.2 for #320 imply that, for newline handling going forward, it might be easiest to adopt option 3?

Option 3, reading both newline forms, but writing Unix newlines

Option 1, Unix newlines only on both input and output is by far the easiest (lowest investment cost). Option 3 is a fair bit more expensive. Much of this comes from increased test suite cost. Some because there are a several tools that have their own reader functionality (for example, tsv-sample).
A relevant question is how much additional benefit would be seen investing in option 3? It's a question I don't know the answer to. How many users, how prevalent are the data files, and how onerous are the alternatives, such as invoking dos2unix on the data first.

In any case, while waiting for a full windows release/build, could just csv2tsv.exe be made availalble, assuming it passes any needed tests? This would enable Windows users to generate valid tsv from csv without excel, ...

Well, I'm reluctant to create pre-built binary packages for only a single tool. However, I see the merit behind this idea, perhaps there are ways to get the desired effect.
First, note that nothing prevents cloning the git repo and building the tools on Windows. The test suite is not complete for Windows, but that doesn't mean the tools won't work properly. And to your point, csv2tsv would likely passes a more complete test suite simply because the csv2tsv test suite already includes examples of files with Windows newlines.
What could be done in this regard is to: (a) Publish test suite status info for csv2tsv by itself; (b) Add any missing csv2tsv tests; (c) Add specific instructions describing how to build on Windows.

perhaps by:

validate foo.csv  with some tool(s), for example https://csvlint.io/ But be warned, if you download the "standardized" csv they offer, I think it silently adds double-quotes around every field, including numbers. For example if foo.csv has a row foo,22 it becomes "foo","22" in the "standardized" csv file (not sure why).
csv2tsv.exe  foo.csv  >  foo.tsv Note that  csv2tsv by default removes double-quotes where not needed, so foo.tsv would be fooTAB22

csv2tsv doesn't have any trouble reading any of these formats, but as you point out, it always generates escape-free TSV.

May need some documentation on how to pass escaped command-line arguments to csv2tsv.exe in windows if using cmd or powershell...

Good thoughts, thank you.

Finally, another work-around avoiding both cmd and powershell completely, just install git-for-windows (choco install git or some other bash shell for windows). Then run csv2tsv.exe in that shell, if csv2tsv.exe can handle arguments passed to it from bash.exe.

Agreed, it might make sense to include this option in the documentation.

Status?

Status?

Status as described in the main description is up-to-date. It is updated as things change. At present, there are no known failure cases on Windows. But, since the test suite doesn't run fully, it leaves unknowns. Also, there's a lack of real-world use on Windows, or at least use that gets reported. So it is more about unknowns at this point.
Do you have specific questions?

No, I was just wondering why there weren't any Windows binaries. I've put them here for anyone interested:
https://github.com/Imperatorn/tsv-utils/releases

@Imperatorn Great to know there's someone trying the tools on Windows! Report any problems you have, Windows related or otherwise!


Very little default min window size in hyprland.

Tested versions
v4.3.stable.arch_linux using hyprland wm
System information
Godot v4.3.stable unknown - Arch Linux #1 SMP PREEMPT_DYNAMIC Wed, 14 Aug 2024 15:21:14 +0000 - Wayland - Vulkan (Forward+) - integrated AMD Radeon Vega 3 Graphics (RADV RAVEN) - AMD Ryzen 3 2200U with Radeon Vega Mobile Gfx (4 Threads)
Issue description
In Godot editor, windows like "Create New Node", "Instantiate Child Scene", "About Godot", and any other besides de main editor window, starts with a very little size, then you need to manually resize it.
Steps to reproduce
In Hyprland wm, launch Godot, open any project, then try to open any window, for example try to add a new node to the scene tree, or open Help ->"about godot".
Minimal reproduction project (MRP)
May be any project, no one in particular.

currently i fixed this locally in hyprland.conf by windowrules. but it's only a workaround.

Could you show the windowsrules you used?

@EhwazM these two windowrules worked for me (obviously adjust the window size for your screen)
windowrulev2 = size 1300 800,title:^(Create New Node)$
windowrulev2 = move center,title:^(Create New Node)$
Godot still flickers like crazy on Hyprland though. Should really be looked at

For anyone looking for a better workaround, launching Godot with the single window option will stop it from creating these pop-ups as real windows.
godot --single-window


[Feature Request] [Discussion] Clear Grid Pattern

Feature Request: A pattern to clear the current grid without losing the current stack or ravenmind. This pattern should be a nop for circles and artifacts. It should not have any special escaping rules, so it won't cause a grid clear in the middle of an intro/retro pair.
Why This Might Be Good:
We have been playing with a method in the discord we call "Flash Casting" where you store a spell in your ravenmind, and keep a quine on the bottom of your stack that invokes your ravenmind spell. This is a pretty cute way to turn yourself into a trinket that's slightly slower to activate (and an ideal playground for self-modifying spells), but the practical limit of it is that your grid fills up with hermes pretty quick.
Also, when stringing together lots of spell fragments, it is nice to be able to clear the grid to make room for the final assembly and arfactification of the spell. It'd definitely be a quality of life improvement.
Why This Might Be Bad:
One dangerous part about this is precisely that it lets us keep our ravenmind around for a long time. It's been observed that it's safe to put a player you meet into your ravenmind and so long as you don't clear your stack, it stays there. Given the new player range rules, it'd be possible to write a spell that assembles a list of players and then curses them even if they don't write their true name to a focus.
The only practical limitation (and this is a fairly soft limitation) to this is that the grid has a maximum size and eventually you'd run out of grid space to inflict new harm.

it would probably have a use in artifacts if it cleared the stack though, as it could be used to discard any access data or preloaded spell effects for large multi step decision making spells. perhaps a limitation of this pattern could be that it turns player references to garbage elements?

If it cleared the stack, it wouldn't really have any purpose and would invalidate bookkeepers. I also think it's going to be a game of cat and mouse trying to trace through nested data structures looking for player references.

afaik this deliberately does not exist - grid size is a limitation that's intended. Especially with how it makes holding on to a true name harder.


sane add plugin cleanup

WIP fixes for #4381

modify the signature for post_add_plugin to not require a placeholder
removed force_unicode as it's no longer needed after 1.8
fixes bug on plugin position calculation
fixes some failing tests
fixes potential corrupt parent/child relationships

Coverage increased (+1.7%) to 88.391% when pulling ac236a37f6df0c26180cef4fe7f02f038e323244 on czpython:feature/sane-add-plugin-cleanup into 7a0c61fc1616d256b3ab047a901d40fb0eab9bca on divio:sane-add-plugin.

@vxsx this is the only test failing https://travis-ci.org/divio/django-cms/jobs/120096594, please have a look.

Coverage remained the same at 86.653% when pulling eb8a2641d2b173160d30b76d622ec922e806b223 on czpython:feature/sane-add-plugin-cleanup into 7a0c61fc1616d256b3ab047a901d40fb0eab9bca on divio:sane-add-plugin.

@vxsx I've added the fix for the popup error but still this fails https://travis-ci.org/divio/django-cms/jobs/120152910

Coverage increased (+1.7%) to 88.387% when pulling 69885b6376f65d2606e2d30c38ffe5319d9dd639 on czpython:feature/sane-add-plugin-cleanup into 7a0c61fc1616d256b3ab047a901d40fb0eab9bca on divio:sane-add-plugin.

@czpython fixed

Thanks. This is history @vxsx , for the first time in over a year sane-add-plugin passes tests! :tada: :dancers:

Coverage remained the same at 86.653% when pulling a082d9625509f4672f6abbc99cb0ee0cb6639394 on czpython:feature/sane-add-plugin-cleanup into 7a0c61fc1616d256b3ab047a901d40fb0eab9bca on divio:sane-add-plugin.

Coverage increased (+1.7%) to 88.355% when pulling 98afb306bcd17823bb55e61b5e4dfd6822f76b61 on czpython:feature/sane-add-plugin-cleanup into 7a0c61fc1616d256b3ab047a901d40fb0eab9bca on divio:sane-add-plugin.

Tests are passing!! @ojii

Seriously though, great work.
Without me having to go through months of commits, what caused the tests to fail (only on CI) in the end?

@ojii honestly I'm not sure.
The way I approached it was to read all your changes and simply refactor what I saw could cause issues.
If I had to guess I'd say it was https://github.com/divio/django-cms/pull/5098/commits/ba1db7057d6ff87fd0fe5481b24f19c09ca7d59d or maybe https://github.com/divio/djangocms-text-ckeditor/commit/65934f6cfa1801c31c6ff45a9bb202bf36ade0ba

@czpython okay, thanks. can't believe this might eventually get merged :D


"WARN [karma]: No captured browser" message always appears

Expected behaviour
Should not see any warnings when starting karma
Actual behaviour
The following output appears after i run karma start
21 09 2016 18:28:21.960:WARN [karma]: No captured browser, open http://localhost:9876/
21 09 2016 18:28:21.970:INFO [karma]: Karma v1.3.0 server started at http://localhost:9876/
21 09 2016 18:28:21.970:INFO [launcher]: Launching browser Chrome with unlimited concurrency
21 09 2016 18:28:21.992:INFO [launcher]: Starting browser Chrome
21 09 2016 18:28:22.881:INFO [Chrome 53.0.2785 (Linux 0.0.0)]: Connected on socket /#OLx2oK-yFrqokDyYAAAA with id 52089739

Environment Details

Karma version (output of karma --version): 1.3.0
Relevant part of your karma.config.js file:

// Karma configuration
// Generated on Wed Sep 21 2016 18:16:01 GMT+0100 (BST)

module.exports = function(config) {
  config.set({
    basePath: '',
    frameworks: ['jasmine'],
    files: [
      '*.js'
    ],
    exclude: [
    ],
    preprocessors: {
    },
    reporters: ['progress'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Chrome'],
    singleRun: false,
    concurrency: Infinity
  })
}

Steps to reproduce the behaviour

create a new project, set up package.json with :
"devDependencies": {
  "jasmine-core": "^2.5.2",
  "karma": "^1.3.0",
  "karma-chrome-launcher": "^2.0.0",
  "karma-jasmine": "^1.0.2"
}

use the above karma.conf.js

create a dummy js file so karma has something to load (eg. test.js)

run karma start, and you should see a warning

I get the same behavior with a clean, out of the box project created with 'ng new site-name'.
I get the the warning, then it runs the tests, they pass, but the command doesn't exist.

I have exactly the same problem, trying with PhantomJS.

Amy, I followed the directions straight from Angular2 for testing and those are the only ones that worked for me. nothing else. Watch out for the '/base' directory in the karma config file. That is needed for karma even though there is no '/base' directory in your project.
Check it out: https://angular.io/docs/ts/latest/guide/testing.html
it looks like a lot but it's basically getting karma installed properly.

Thanks @innergap for the time being, as it is a very small module which I'm implementing, a sort of proof of concept, I just disabled karma and I'm running the tests manually.
I'll give it a try later and return with some feedback on how it goes.

Wouldn't logLevel: config.LOG_INFO suggest it is supposed to log any info logs or higher, which would include warnings since warnings are at a higher level?
Here are the docs on logLevel:
logLevel
Type: Constant
Default: config.LOG_INFO
CLI: --log-level debug
Possible values:
config.LOG_DISABLE
config.LOG_ERROR
config.LOG_WARN
config.LOG_INFO
config.LOG_DEBUG
Description: Level of logging.

See logLevel here.

Was anyone able to make any progress on this issue?  I recently started seeing this warning when migrating the build of an existing React application from Gulp to Webpack 2.  I'm running the same versions of jasmine-core, karma, and karma-chrome-launcher, but version ^1.1.0 of karma-jasmine.

Came here to duplicate @chazzlabs comment. Searching for a solution that works long term.

same here !!!

will be there any fix soon?

Maybe, it help
mime: {       'text/x-typescript': ['ts','tsx']     },

I have the same issue.
I install karma using instruction from the official site. During the installation I chose to use Google Chrome browser for testing - karma init
After run karma start - I only get the warn. All tests finish correct.
03 07 2017 15:22:46.108:WARN [karma]: No captured browser, open http://localhost:9876/
03 07 2017 15:22:46.241:INFO [karma]: Karma v1.7.0 server started at http://<IP_ADDRESS>:9876/
03 07 2017 15:22:46.243:INFO [launcher]: Launching browser Chrome with unlimited concurrency
03 07 2017 15:22:46.289:INFO [launcher]: Starting browser Chrome
03 07 2017 15:22:59.253:INFO [Chrome 59.0.3071 (Mac OS X 10.12.5)]: Connected on socket Pm5Y0RVF7pKA-ZqaAAAA with id 16979434

But when I use karma run, get the error:
03 07 2017 15:34:45.867:ERROR [runner]: There is no server listening on port 9876
How can I fix this error?

I've had this crop up a few times.

Try commenting out or renaming all your spec files so they don't run.
Retry Karma. Browser should start, connect and show you have no tests
Then start uncommenting/unrenaming your spec files one by one until you find the one that's broken

Horrible but only way I've managed to get things back up and running again.
PS: I have a LOT of spec files, so without an error to tell me where to look it was hard to know. Last time this happened to me I started my PC and it was just broken, I had a ton of spec files changed and no clue where to look.

Hey guys,
Any updates on this issue?

I was facing the same issue and i resolved it by killing all the chrome instances from Task Manager. It seems that there were 'n' number of test runners running. When you close the karma test runner without stopping the server, it's instance is still alive.

It works!

I also had this problem when using a proxy. If you are behind a proxy and have set HTTP_PROXY and HTTPS_PROXY be sure to also include the following addresses to NO_PROXY
NO_PROXY <IP_ADDRESS>,<IP_ADDRESS>,localhost

Still open since 2016, any updates on this issue?

I still get this same error, is there any update? The workaround is to open that URL in my Chrome, then Karma starts running my tests correctly everytime I modify my files. But the ideal would be not to have to open any Chrome tab as that's why I'm using Chrome Headless.

Having the same issue. Karma opens the chrome window with an URL that looks like a file url (like http://c/Users/.../Documents/...:9876/?id=24594662) instead of localhost. Seems like that is the problem why headless chrome is waiting forever to connect. Removing the headless-flag from the config and manually setting the url to localhost:986... solves the issue for me as well. Just as @dwilches  suggested as a workaround.

3.5 years and still no solution?

3.5 years and still no solution?

karma has worked fine for millions of tests over those 3.5 years.  So perhaps there never was a problem here?
The "No captured browser" means karma can't automatically test because it does not have a browser to launch tests in.  I speculated on the cause, a deliberate config issue, above. Without further information there is nothing to do here.
I suggest opening a new issue with a complete description from a recent karma version and the output of --logLevel=DEBUG.

its the year 2024 and the issue/error still hitting me hard! any sln?


IsChecked CompiledBinding to code behind sets background incorrectly

Describe the bug
I have a ToggleSwitch where the IsChecked property is set with a CompiledBinding to a property in its own code-behind. The property only has a getter, and can be set to either true or false, it doesn't make a difference in the outcome. When I run the program the ToggleSwitch says off (even if the property is set to true), and the background of the ToggleSwitch is blue as though the switch was on.
To Reproduce
Steps to reproduce the behavior:
Create a new View:
<Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:v="using:AvaloniaCheckedBug.Views"
        xmlns:vm="using:AvaloniaCheckedBug.ViewModels"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
        x:Class="AvaloniaCheckedBug.Views.MainWindow"
        Icon="/Assets/avalonia-logo.ico"
        Title="AvaloniaCheckedBug"
        x:DataType="v:MainWindow">
  <ToggleSwitch
    Grid.Row="0"
    IsChecked="{CompiledBinding SomeProperty}" />
</Window>

Add the property in the code-behind:
using Avalonia.Controls;

namespace AvaloniaCheckedBug.Views
{
  public partial class MainWindow : Window
  {
    public bool SomeProperty { get; } = true;

    public MainWindow()
    {
      InitializeComponent();
    }
  }
}

Run the application. The ToggleSwitch will say "off" but have a background set to blue as though it was on.

This issue doesn't seem specific to the ToggleSwitch. With a RadioButton the button is just left unchecked, even with the property set to true.
I noticed in the output window I get:
Exception thrown: 'System.InvalidCastException' in System.Private.CoreLib.dll
If I change the CompiledBinding to just a Binding the issue goes away.
 By default IsChecked is two-way. Can you double check what happens if you set Mode=OneWay in your Binding?

Adding Mode=OneWay doesn't seem to make a difference. But adding DataContext="{Binding $self}" to the Window fixes the issue.


Add facebook/twitter share option

where should these buttons/links be placed?

maybe somewhere under the team?


Update documentation: Developer guide

Developer Guide:
Each member should describe the implementation of at least one enhancement she has added (or planning to add).
Expected length: 1+ page per person
The description can contain things such as,
How the feature is implemented.
Why it is implemented that way.
Alternatives considered.
The stated objective is to explain the implementation to a future developer, but a hidden objective is to show evidence that you can document deeply-technical content using prose, examples, diagrams, code snippets, etc. appropriately. To that end, you may also describe features that you plan to implement in the future, even beyond v1.5 (hypothetically).
For an example, see the description of the undo/redo feature implementation in the AddressBook-Level4 developer guide.

From lecture:
Indicate features in Dev Guide

Dev Guide -> Appendix B -> Feature contribution
One two lines summary of how it fits in the project
Identify what's major, what's minor

Created seperate issue for order command developer guide #46
Unassigned myself to this issue.

Created separate issues for making shortcuts #47 and Food Profile #48
Unassigned everyone


OnreadyFind

Would be nice if we could also do something like (I'm including the optional parameters for reference):
[OnReadyFind("SomeNodeName"), Recursive = true, Owned = true] HBoxContainer _myContainer;

Which will essentially generate:
HBoxContainer _myContainer;
_myContainer = (HBoxContainer)FindNode("SomeNodeName", true, true)

Thanks for filing! A few people in the C# Godot discord channel have asked about this too, and I'm not opposed to it.
(Personally, assigning paths in the editor has worked fine for me so far, but I've seen reasonable arguments about Find making it easier to move nodes around in the scene later.)
I'll add this when I have a bit.

I've published version 1.2.0 with https://github.com/31/GodotOnReady/pull/39 to add this, although with the parameters inverted to keep the defaults false for simplicity reasons:
[OnReadyFind("SomeNodeName")]
[OnReadyFind("SomeNodeName", NonRecursive = true, Unowned = true)]

Thanks for https://github.com/31/GodotOnReady/pull/38! I added a comment explaining the ways/reasons I did it somewhat differently.
Let me know how it ends up working for you (or if it doesn't). 😄


Size of scraped pages is None

Scraper isn't getting the file size from the HEAD request correctly; returns something like Cached file size is 34589. Web file size is None. This results in downloading the page every time we run the scraper.

Yeah this has been going on a while. They must have changed something about their web server on the state side.


[mwc-textfield] not robust to undefined value

Describe the bug
mwc-textfield does not like when its value is set to undefined.
This happens for instance when we are using the component within a Polymer component, with bindings such as :
<mwc-textfield value="[[boundTo.value]]"><mwc-textfield>

This cause :

label not to float again when a new value is set
throw "Uncaught (in promise) TypeError: Cannot read property 'length' of undefined"

Situation is similar with mwc-textarea;
To Reproduce
https://codepen.io/christophe-g/pen/ZEbGMwp
Expected behavior
The component should be able to handle such case
Screenshots

I'm a bit torn on this issue. At the core of the problem, the textfield does not support value being set to undefined. The type is strictly a string and should only be set to a string. Coercing undefined values should be the responsibility of the application.
This would set a strange precedent for other types as well. What do we do if textfield's value is set to a Date or other types?
If we're emulating native behavior, should all types be allowed, and coerced with .toString()
https://jsbin.com/vanabequmu/edit?html,output
I think this issue subtly raises a few bigger questions.

I'm a bit torn on this issue. At the core of the problem, the textfield does not support value being set to undefined. The type is strictly a string and should only be set to a string.

I understand the sentiment, but my experience is that when things can go wrong, they will. The problem here is that when an undefined value is set to the component (for whatever reason ... ) it breaks it.
It is usually safer and less costly to prevent such unwanted behaviors (when easy to do; the proposed fix simply says don't call Foundation setValue when value is undefined).

Coercing undefined values should be the responsibility of the application.

In this case the responsible application is Polymer, which I doubt will change the way it applies values to non-Polymer elements/nodes property.
I can further override <mwc-textfield> so that two-way binding schemes such as  <mwc-textfield value="{{boundTo.value}}"><mwc-textfield> work, which I already do 1 . But my sense is that mwc-textfield simply should be more robust in dealing with setting undefined values.
1 - current override for two-way bindings:
class PwiTextField extends TextField {
  handleInputChange() {
    super.handleInputChange(...arguments);
    this.dispatchEvent(new CustomEvent('value-changed', { detail: { value: this.value }, bubbles: true, composed: true }));
  }
}

We're going to do a little more research on the Polymer side of things to see if we can find a better pattern to handle for how this should be handled using mwc in Polymer.
For example, this could be a computed binding instead of a direct binding to ensure that the value is not undefined.
We're also going to do a little more research on exactly what we want to do when textfield's value is set to undefined given how it's handled natively with <input>.

Great ! Thanks a lot ; )


Figure out how exceptions are used in MPSGE

We should add error messages to catch user errors like not allocating taxes to an agent, or having variables that are never used.

Figure out how exceptions are used in MPSGE (and implement those).
We should check that each input/enowment is also an output. (I was thinking we could check that each commodity is in balance in the benchmark, but maybe that's a lot of work replicating the over all benchmark balance?

This is the source/sink issue. This might be a non-issue now, but it's something we should test.
Anecdotally, I've been stopped by MPSGE when my model was bad. This is a good thing.

Yes, I think some good elements to match here, sink/source for sure (with clear error messages).
And maybe a separate issue, and maybe it's just a documentation question ("if your model isn't balanced, run generate_report and sort by margin"), but potentially a method to use the margin values to directly point to what elements of a model aren't balanced.

As a note, it's not just margin. It's margin*variable, that's what you want
to be zero. It just happens that most of the time variable != 0.
Also fixed variables may be different, but I need to test more.
On Fri, Jun 21, 2024 at 11:54 AM EliLazarus @.***>
wrote:

Yes, I think some good elements to match here, sink/source for sure (with
clear error messages).
And maybe a separate issue, and maybe it's just a documentation question
("if your model isn't balanced, run generate_report and sort by margin"),
but potentially a method to use the margin values to directly point to what
elements of a model aren't balanced.
—
Reply to this email directly, view it on GitHub
https://github.com/julia-mpsge/MPSGE.jl/issues/38#issuecomment-2183105627,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEVAPXJR2OLEXZOMIHCQAQLZIRLEFAVCNFSM6AAAAABJV4UR3OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBTGEYDKNRSG4
.
You are receiving this because you commented.Message ID:
@.***>


MCUBoot : encryption code issue

The file loader.c has an API boot_copy_region() (line  768)
boot_copy_region() has following code under if (IS_ENCRYPTED(hdr)) :

uint8_t buf[1024]; declaration
idx = hdr->ih_hdr_size; assignment
boot_encrypt( .... , &buf[idx]);

In case of header_size is 1024 last line will cause a RAM corruption.
A header size of 1024 is an easiest way to satisfy vector table alignment (256 x 32bit) for Cortex M on Cypress PSoC6.

obviously, hotfix can be a declaration of larger buffer:
uint8_t buf[2048];

Makes sense, in practice this should affect flash devices which have alignments larger than 512, which we don't support yet. Or someone could decide to have a very big header size as well, but for no reason. I think a proper fix is not to enlarge the buffer, but to update the code to deal with sizes larger than the buffer. Feel free to work on a fix or assign to me.


Replace world with robot base frame

Each link has a variable and corresponding method called wTl which is the link frame in the world frame. However, when reading the URDF/SDF, all the links are defined with respect to the robot base frame, which in turn needs to be defined in terms of the world frame.
We should rename wTl to bTl (link in base/body frame) and add a variable for the root link which we should be able to set the world frame for.

Closed by #238