kontrol show crashes if more than one test match the prefix

If kontrol show is called with a prefix that matches more than one test, it crashes with ValueError: Expected a single element, found more. For example, if there are two tests, one called StartPrankTestSymbolic.testSymbolicPrank and another called StartPrankTestSymbolic.testSymbolicPrankSplit, calling kontrol show StartPrankTestSymbolic.testSymbolicPrank produces the following error:
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/lucasmt/kontrol/refute-node/src/kontrol/__main__.py", line 90, in main
    execute(**vars(args))
  File "/home/lucasmt/kontrol/refute-node/src/kontrol/__main__.py", line 336, in exec_show
    output = foundry_show(
  File "/home/lucasmt/kontrol/refute-node/src/kontrol/foundry.py", line 522, in foundry_show
    contract_name, _ = single(foundry.matching_tests([test])).split('.')
  File "/home/lucasmt/pyk/refute-node/src/pyk/utils.py", line 272, in single
    raise ValueError('Expected a single element, found more', fst, snd)
ValueError: ('Expected a single element, found more', 'test%StartPrankTestSymbolic.testSymbolicPrankSplit(address)', 'test%StartPrankTestSymbolic.testSymbolicPrank(address)')

Note that kontrol show StartPrankTestSymbolic.testSymbolicPrankSplit can be called with no problem, but there is no way to display the KCFG for StartPrankTestSymbolic.testSymbolicPrank, since its name is a strict prefix of the other test.
Some alternatives on how to handle this:

Require the argument to kontrol show to be the full name of the test, not just a prefix.
Keep the current behavior by default, but add an option (e.g. --full-name) to match the full name instead. Rewrite the error message above to suggest this as an option to the user.
Print the KCFGs for all tests that match the prefix (might be hard to read and confusing if the KCFGs are large).

Thanks @lucasmt! I also ran into a related issue today, and it seems that there's a mismatch between loading proof data for kontrol show and kontrol view-kcfg.
If the contract contains tests with the same prefix, e.g. test_complex_type and test_complex_type_array, and only test_complex_type_array (the longer one) has been executed,
kontrol view-kcfg CDTest.test_complex_type

will show the KCFG for test_complex_type_array (since it matches the prefix and is present in out/proofs), although it might be misleading for the user.
On the other hand, as you've said,
kontrol show CDTest.test_complex_type

crashes with
ValueError: ('Expected a single element, found more', 'test%CDTest.test_complex_type_array((uint256,bytes)[])', 'test%CDTest.test_complex_type((uint256,bytes),bytes[],uint256)')
```.

The error message thrown if multiple proofs with the same name are encountered was improved in https://github.com/runtimeverification/kontrol/pull/394, but I'm not sure if is solved the discrepancy described above — will need to re-test.


Conversion to RDF not functioning properly with special characters

Closing due to duplicate issue on https://github.com/LinDA-tools/LindaWorkbench/labels/Query Builder %2F RDF2Any


Minor fix to releasing notes.

Superseded by https://github.com/census-instrumentation/opencensus-java/pull/1753.


[BUG] Process out of memory when using fesom data and more than 2 workers

Description
In my  branch I don't know why memory is exceeded when using more than two workers. We put 1 degree fesom data into format mimicking era5:
ds['data'].info
Name               : /data
Type               : zarr.core.Array
Data type          : float32
Shape              : (22280, 4, 47, 170, 360)
Chunk shape        : (8, 4, 47, 170, 360)
Order              : C
Read-only          : False
Compressor         : Blosc(cname='lz4', clevel=5, shuffle=SHUFFLE, blocksize=0)
Store type         : zarr.storage.DirectoryStore
No. bytes          :<PHONE_NUMBER>000 (955.0G)
No. bytes stored   :<PHONE_NUMBER>50 (438.8G)
Storage ratio      : 2.2
Chunks initialized : 2785/2785

I attach logs
atmorep-slurm_atmorep.sh.12968591.err.txt
output_12968591.txt
To Reproduce
Steps to reproduce the behavior:

Set num_loader_workers to more than 2 in train.py
run slurm_atmorep.sh
See error

Expected behavior
It should start training instead of crashing
Hardware and environment:

System: DKRZ
Runtime: sbatch
Special branch: fesom_support
Python Version: 3.10.10

Additional context
In my earlier prototype there was no problem with training with this setup, but the file was structured differently. Each field was a separate array withing zarr. Data loader was modified to accommodate this change: data = self.ds[grib_index[field_info[0]]][idxs_t]
 ds['temp'].info
Name               : /temp
Type               : zarr.core.Array
Data type          : float32
Shape              : (22645, 48, 170, 360)
Chunk shape        : (8, 48, 170, 360)
Order              : C
Read-only          : False
Compressor         : Blosc(cname='lz4', clevel=3, shuffle=SHUFFLE, blocksize=0)
Store type         : zarr.storage.DirectoryStore
No. bytes          :<PHONE_NUMBER>00 (247.8G)
No. bytes stored   :<PHONE_NUMBER>56 (110.8G)
Storage ratio      : 2.2
Chunks initialized : 2831/2831

I assume it is CPU memory that is exceeded? How much RAM do the jobs on DKRZ have? Are you using all available one?

Yes, its CPU memory. DKRZ has 512 GB per node, while using A100 with 80 GB. Sstats showed usage of of like 600 GB of RAM. I tried using 1 task per node but it didn't help

What's the batch size you are using?

By default 96, but I've tested 16 with 8 workers and the result is identical

What's the (approximate effective) grid resolution of the FESOM data?

It's daily data on a 1 degree grid

Hi kacper,
what's the size of the loaded cube? Is that what you expect?
also, side question: why n_size : [30, 30, 30] if
fields : [['temp', [1, 1024, [], 0], [1], [5, 3, 3], [3, 10, 10], [0.5, 0.9, 0.2, 0.05]]]
shouldn't be n_size = 15 in time if you have daily data?

Thanks for pointing this out! It definitely should be as you described.
I'm sure it's related to creating mask while training. I've found a bug with inverted mask for training and fixing it made things better. Now it crashes at 7 and more workers instead of 3. It's really bizarre to me, but at least models are training

I found that using mask for loss function is currently unnecessary so this is not a problem anymore. I think this issue can be closed

Hi, I am closing the issue, but can you please explain what does it mean in practice using mask for the loss function?
Thanks!


tools/build.py does not adhere to $CXX env variable settings

While building on OpenBSD the base system ships with g++ 4.2.1
$ g++ --version
g++ (GCC) 4.2.1 20070719
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

There is a newer gcc/g++ installed via ports as egcc/eg++
$ eg++ --version
eg++ (GCC) 4.9.3
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Doing export CXX=eg++ allowed me to move forward with the port but after a significant amount of code got build the setting seems to no longer being adhered to. Leading to a build failure due to a flag that is not recognised in g++ but would normally be recognized by eg++.
$ ./tools/build.py -v runtime
gmake -j 2 BUILDTYPE=DebugX64 V=1 runtime
  g++ '-DDEBUG' '-D_FORTIFY_SOURCE=2' '-DNATIVE_CODE_HAS_FRAME_POINTERS' -Iruntime  -Werror -Wall -Wextra -Wno-unused-parameter -Wnon-virtual-dtor -Wvla -Wno-conversion-null -Woverloaded-virtual -g3 -ggdb3 -fno-rtti -fno-exceptions -fstack-protector -m64 -msse2 -mno-omit-leaf-frame-pointer -O2 -fno-omit-frame-pointer  -MMD -MF out/DebugX64/.deps/out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o.d.raw  -c -o out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o runtime/vm/bootstrap.cc
  g++ '-DDEBUG' '-D_FORTIFY_SOURCE=2' '-DNATIVE_CODE_HAS_FRAME_POINTERS' -Iruntime  -Werror -Wall -Wextra -Wno-unused-parameter -Wnon-virtual-dtor -Wvla -Wno-conversion-null -Woverloaded-virtual -g3 -ggdb3 -fno-rtti -fno-exceptions -fstack-protector -m64 -msse2 -mno-omit-leaf-frame-pointer -O2 -fno-omit-frame-pointer  -MMD -MF out/DebugX64/.deps/out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o.d.raw  -c -o out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o out/DebugX64/obj/gen/async_gen.cc
cc1plus: error: unrecognized command line option "-Wvla"
cc1plus: error: unrecognized command line option "-Wno-conversion-null"
runtime/libdart_lib_nosnapshot.host.mk:1319: recipe for target 'out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o' failed
cc1plus: error: unrecognized command line option "-Wvla"gmake: *** [out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o] Error 1

cc1plus: error: unrecognized command line option "-Wno-conversion-null"
gmake: *** Waiting for unfinished jobs....
runtime/libdart_lib_nosnapshot.host.mk:1327: recipe for target 'out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o' failed
gmake: *** [out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o] Error 1
BUILD FAILED
$ echo $CXX
eg++

This is of course related with my BSD porting efforts: https://github.com/dart-lang/sdk/issues/10260

I was provided by a nice temporary workaround from http://bsdguru.in/29/shadow-the-base-from-external-apps-they-use-egcc-unkowningly - I still think this is a build issue that should eventually get fixed.
For anyone wondering the workaround is:

create a directory pbin
create symlinks to eg++ & egcc in it as gcc, g++, egcc, eg++
put it on your path

$ ln -sf `which egcc` egcc
$ ln -sf `which egcc` gcc
$ ln -sf `which eg++` eg++
$ ln -sf `which eg++` g++
$ ls -l
total 16
-rw-r--r--  1 mulander  mulander  104 Sep  4 19:38 README.txt
lrwxr-xr-x  1 mulander  mulander   19 Sep  4 19:39 eg++ -> /usr/local/bin/eg++
lrwxr-xr-x  1 mulander  mulander   19 Sep  4 19:38 egcc -> /usr/local/bin/egcc
lrwxr-xr-x  1 mulander  mulander   19 Sep  4 19:39 g++ -> /usr/local/bin/eg++
lrwxr-xr-x  1 mulander  mulander   19 Sep  4 19:39 gcc -> /usr/local/bin/egcc

$ export PATH=`pwd`/pbin:$PATH

$ gcc --version
gcc (GCC) 4.9.3
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ g++ --version
g++ (GCC) 4.9.3
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Found another place that ignores the environment. This one is even worse than the previous one since base gcc & g++ are not on PATH so it must hard code the path somewhere?
$ time ./tools/build.py runtime
gmake -j 2 BUILDTYPE=DebugX64 runtime
  LINK(target) out/DebugX64/libdart_dependency_helper.target
  CXX(target) out/DebugX64/obj.target/libdart_io/runtime/bin/socket_openbsd.o
  CXX(target) out/DebugX64/obj.target/libdart_io/runtime/bin/stdio_macos.o
  CXX(target) out/DebugX64/obj.target/libdart_io/runtime/bin/stdio_win.o
  CXX(host) out/DebugX64/obj.host/libdart_builtin/runtime/bin/dbg_connection_openbsd.o
  CXX(host) out/DebugX64/obj.host/libdart_builtin/runtime/bin/directory_openbsd.o
  CXX(host) out/DebugX64/obj.host/libdart_builtin/runtime/bin/file_openbsd.o
  CXX(host) out/DebugX64/obj.host/libdart_builtin/runtime/bin/thread_openbsd.o
  CXX(host) out/DebugX64/obj.host/libdart_io/runtime/bin/eventhandler_openbsd.o
  CXX(host) out/DebugX64/obj.host/libdart_io/runtime/bin/socket_openbsd.o
  CC(target) out/DebugX64/obj.target/zlib_dart/third_party/zlib/adler32.o
  CC(target) out/DebugX64/obj.target/zlib_dart/third_party/zlib/compress.o
cc1: error: unrecognized command line option "-Wvla"
cc1: error: unrecognized command line option "-Wvla"
runtime/bin/net/zlib_dart.target.mk:1279: recipe for target 'out/DebugX64/obj.target/zlib_dart/third_party/zlib/adler32.o' failed
gmake: *** [out/DebugX64/obj.target/zlib_dart/third_party/zlib/adler32.o] Error 1
gmake: *** Waiting for unfinished jobs....
runtime/bin/net/zlib_dart.target.mk:1279: recipe for target 'out/DebugX64/obj.target/zlib_dart/third_party/zlib/compress.o' failed
gmake: *** [out/DebugX64/obj.target/zlib_dart/third_party/zlib/compress.o] Error 1
BUILD FAILED
    0m07.24s real     0m05.25s user     0m03.21s system
$ gcc --version
gcc (GCC) 4.9.3
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ g++ --version
g++ (GCC) 4.9.3
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Checked with build.py -v, seems that this spot of the build uses 'cc' which I didn't shadow from the system. Still another place that should be fixed up imho.
  cc '-DDEBUG' '-D_FORTIFY_SOURCE=2' '-DNATIVE_CODE_HAS_FRAME_POINTERS' -Ithird_party/zlib  -w -UHAVE_CVAR_BUILT_ON_SEM -Wextra -Wno-unused-parameter -Wvla -g3 -ggdb3 -fno-exceptions -fstack-protector -m64 -msse2 -mno-omit-leaf-frame-pointer -O2 -fno-omit-frame-pointer  -MMD -MF out/DebugX64/.deps/out/DebugX64/obj.target/zlib_dart/third_party/zlib/adler32.o.d.raw  -c -o out/DebugX64/obj.target/zlib_dart/third_party/zlib/adler32.o third_party/zlib/adler32.c
cc1: error: unrecognized command line option "-Wvla"
runtime/bin/net/zlib_dart.target.mk:1279: recipe for target 'out/DebugX64/obj.target/zlib_dart/third_party/zlib/adler32.o' failed
gmake: *** [out/DebugX64/obj.target/zlib_dart/third_party/zlib/adler32.o] Error 1
gmake: *** Waiting for unfinished jobs....
  cc '-DDEBUG' '-D_FORTIFY_SOURCE=2' '-DNATIVE_CODE_HAS_FRAME_POINTERS' -Ithird_party/zlib  -w -UHAVE_CVAR_BUILT_ON_SEM -Wextra -Wno-unused-parameter -Wvla -g3 -ggdb3 -fno-exceptions -fstack-protector -m64 -msse2 -mno-omit-leaf-frame-pointer -O2 -fno-omit-frame-pointer  -MMD -MF out/DebugX64/.deps/out/DebugX64/obj.target/zlib_dart/third_party/zlib/compress.o.d.raw  -c -o out/DebugX64/obj.target/zlib_dart/third_party/zlib/compress.o third_party/zlib/compress.c
cc1: error: unrecognized command line option "-Wvla"
runtime/bin/net/zlib_dart.target.mk:1279: recipe for target 'out/DebugX64/obj.target/zlib_dart/third_party/zlib/compress.o' failed
gmake: *** [out/DebugX64/obj.target/zlib_dart/third_party/zlib/compress.o] Error 1

The GYP build was replaced with a GN build.


[Crash] Incompatibility with Forge Multipart CBE

MC version: 1.12.2
OS: Windows 10 x64 (8 GB RAM)
Forge version: <IP_ADDRESS>38
Mod version: 2.1 (MoreCommands_2.1_mc1.12-1.12.2.jar)
Mod list: JEI, Optinfine, CodeChicken Lib, Forge Multipart CBE.
Crash occurs during the initialization state.
Crash log attached
If you need any other information I could provide, feel free to ask.

Was fixed quite some time ago, so I should probably close this.

Was fixed quite some time ago, so I should probably close this.


Missing path variable error is not visible

Here is a small example code where the path variable is not defined:
/users/{id}/test:     post:       tags:       - "Test"       operationId: "userTest"       responses:         200:           description: "Operation good!"          ....
In the official swagger page(https://editor.swagger.io/) I can see this type of errors but inside vs there is no notifications

Should be fixed in 3.0.0


WMAgent: Missing Reqmgr.tools package causing exception when loading Stdbase

Impact of the bug
WMAgent
Describe the bug
While working on the T0 deployment issue https://github.com/dmwm/WMCore/issues/11890, we found out that loading  StdBase module leads to an exception caused by a missing include. Here is the line causing it:
https://github.com/dmwm/WMCore/blob/e4628ce9ab25f5015b71197a42eb09d630286318/src/python/WMCore/WMSpec/StdSpecs/StdBase.py#L23
And here is the result of this import inside the agent environment:
In [2]: from WMCore.ReqMgr.Tools  import releases, architectures
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[2], line 1
----> 1 from WMCore.ReqMgr.Tools  import releases, architectures

ModuleNotFoundError: No module named 'WMCore.ReqMgr.Tools'

The module WMCore.Reqmgr.Tools is indeed missing as a dependency for the wmagent package, which we build and upload to Pypi:  https://github.com/dmwm/WMCore/blob/e4628ce9ab25f5015b71197a42eb09d630286318/setup_dependencies.py#L182-L189
But is actually present for tier0-agent: https://github.com/dmwm/WMCore/blob/e4628ce9ab25f5015b71197a42eb09d630286318/setup_dependencies.py#L271
which package, I am not sure if we actually upload to pypi.
What we should do is to either include the WMCore.Reqmgr.Tools module as a dependency in the default wmagent package (which is currently the default pypi packag deployed even for the T0 deployment model) or to switch somehow to deploying the tier0-agent package.
How to reproduce it
Start a pypi deployed agent and try to load the WMCore.Reqmgr.Tools module inside it.
Expected behavior
To be able to load the StdBase module standalone
Additional context and error message
The issue: https://github.com/dmwm/WMCore/issues/11890  depends on the resolution of the current one, which makes it a chained dependency for the WMAgent new deployment model meta-issue: https://github.com/dmwm/WMCore/issues/11314

Just for completeness, here is the full exception from the Tier0Feeder logs:
2024-05-13 15:31:32,103:140259373348416:ERROR:StdBase:About to raise exception <@========== WMException Start ==========@>
Exception Class: WMSpecFactoryException
Message: [Errno 2] No such file or directory: '/tmp/.wmcore_cache_vxk10uvl/cmssdt.cern.ch/-5258551530043697436_GET__SDT_cgi-bin_ReleasesXML_'
        ClassName : None
        ModuleName : WMCore.WMSpec.WMWorkloadTools
        MethodName : _validateArgFunction
        ClassInstance : None
        FileName : /data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/WMSpec/WMWorkloadTools.py
        LineNumber : 139
        ErrorNr : 0

Traceback:
  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/WMSpec/WMWorkloadTools.py", line 130, in _validateArgFunction
    if not valFunction(value):

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/WMSpec/StdSpecs/StdBase.py", line 1034, in <lambda>
    "CMSSWVersion": {"validate": lambda x: x in releases(),

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/ReqMgr/Tools/cms.py", line 219, in releases
    return TC.releases(arch)

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/Services/TagCollector/TagCollector.py", line 89, in releases
    for row in self.data():

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/Services/TagCollector/TagCollector.py", line 81, in data
    data = self._getResult()

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/Services/TagCollector/TagCollector.py", line 66, in _getResult
    f = self.refreshCache(cFile, callname, args, encoder=encoder, decoder=decodeBytesToUnicode,

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/Services/Service.py", line 218, in refreshCache
    self.getData(cachefile, url, inputdata, incoming_headers, encoder, decoder, verb, contentType, binary=binary)

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/Services/Service.py", line 362, in getData
    raise he

  File "/data/tier0/WMAgent.venv3-2.3.3-src/srv/WMCore/src/python/WMCore/Services/Service.py", line 341, in getData
    with open(cachefile, 'w', encoding='utf-8') as f:

<@---------- WMException End ----------@>

Just for the record: I cannot see us uploading t0-agent package at all. The list of packages we upload throughout our builds is:  https://pypi.org/user/cms-oc-dmwm/ :

reqmgr2ms-rulecleaner
wmagent-devtools
reqmgr2ms-pileup
reqmgr2ms-transferor
wmcore
reqmon
wmagent
reqmgr2
reqmgr2ms-monitor
reqmgr2ms-output
reqmgr2ms-unmerged
global-workqueue
acdcserver
dbs3-client
dbs3-pycurl
reqmgr2ms
CMSCouchapp
pycurl-client

@todor-ivanov this list above only contains the projects under the dmwm organization in PyPi.
The services we actually have defined in our CD pipeline is listed in these 2 lines:
https://github.com/dmwm/WMCore/blob/master/.github/workflows/pypi_build_and_images.yaml#L29-L30

hi @amaltaro thanks for pointing this list (exactly the configuration place I was looking for)  , so this confirms exactly what I meant: in order for us to get a t0-agent uploaded to Pypi, we need to add this package in this very list. The alternative would be to add WMCore.ReqMgr+ as a dependence to the wmagent package.
Let me know  which solution you'd prefer.

Hi @amaltaro  as we quickly discussed in a private chat the path chosen here should be adding the extra dependencies to the wmagent package instead of uploading a new one to Pypi and changing deployment scripts.
In the PR for fixing the issue I did so, but I did not wipe out the whole t0-agent section from the setup_dependency.py script, because this system deployment is still needed for the rpm based deployment: https://github.com/cms-sw/cmsdist/blob/a5a0b8640d227a432388285b8c0a11dfd5c0706d/t0.spec#L37
So we  will have to deprecate the whole t0-agent package only once we  completely finish the Alma9 migration.


target browser by default in rollup-plugin-node-resolve

Currently, if a node module is targeting both browser and node, the node version is used by default.
Of course one can overwrite the config but the default should target browser version of packages.
nodeResolve({
      module: true,
      jsnext: true,
      main: true,
      browser: true,
      extensions: ['.js']
    })

Good call, thanks


[Feature] Support for managing API resources and securing access to API resources

Describe the improvement
Securing access to API resources is a primary requirement during development of most applications.
Typically this is done by fronting the APIs with an API Gateway and securing the API resources with OAuth2 access tokens and scopes. The API Gateway plays the part of enforcing the security policy of not allowing access to API resources with an access token with the right scope. However, issuing the OAuth2 access token with the right scope is usually done by an Identity Provider / OAuth2 Authorization Server
Though WSO2 IS supports OAuth2 it currently does not have the capability to support securing an API resource first class.
Here are a few aspects that are lacking,

No way to represent APIs or permissions (a.k.a scopes) related to the APIs
No way to attach policies to decide how/when a particular API permission(scope) should be included in an access token. For example: which roles are allowed to access a particular scope.
No way to enforce policies related to API permissions(scopes) during access token issuing
No way to represent or enforce whether a particular application is authorized to access an API resource (This is more of a specialized example of 3)

Additional context

Identified Issues

[ ] https://github.com/wso2/product-is/issues/17238

UI implementation PRs -

https://github.com/wso2/identity-apps/pull/4271
https://github.com/wso2/identity-apps/pull/4300
https://github.com/wso2/identity-apps/pull/4369

This has been implemented and deployed with Identity Server 7.0.0 - Alpha


fix(learn): Disable auto focus on editor

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[x] My changes do not use shortened URLs or affiliate links.

Closes #37146 by disabling auto focus on editor.

@rickysyamsi @thecodingaviator This isn't the right approach in my personal opinion.

Hi @vkWeb thanks for your comments.

This isn't the right approach in my personal opinion.

Unless you have a working pull-request or a solution to suggest, lets avoid the noise on the threads. We are in the midst of rapid iterations.

@vkWeb I agree that this is not the best possible approach. I also have commented a solution suggestion on #37146. Can you please give me some feedback on it? Also calling @raisedadead @thecodingaviator

Unless you have a working pull-request or a solution to suggest, lets avoid the noise on the threads. We are in the midst of rapid iterations.

I will keep this in mind. I'm sorry.

No worries @vkWeb we understand you want to help. Thanks for your contributions.
Closing as discussed.


[UI] - Missing 'back' button in the inspect view

Should be the same as in the edit project view.

Closed by PR #56


Add section on upgrading CoreDNS

content /lgtm

@sftim : can we go ahead here ? (I think there is a question in comment from @rajansandeep).
We need to have PR approved before Monday. Thanks!

content /lgtm

@johnbelamaric I guess your lgtm was not caught by the bot.

@kubernetes/sig-docs-en-reviews for approval

@neolit123 : do you know how we can get this documentation approved and merged ? Thanks!

@fturib if nobody is approving you should ping the #sig-docs slack channel.
/lgtm
/assign @jimangel
^ ping relatively small change related to CoreDNS.

@rajansandeep @fturib thank you for the PR
@sftim thank you too for reviewing it, i agree will be nice to have the shortcode, let's chase it on a different PR ourselves, maybe when we're going to align the style consistency on the concept section
/lgtm
@cody-clark pls help review it


Broken queries when used in conjunction with friendly_id and globalize

When using acts_as in conjunction with friendly_id and globalize, the finders on the model get broken due to an incorrect WHERE condition injected in the query (parent_model.child_model_translations.slug = ? where it should have been child_model_translations.slug = ?).
Models:
class Collection < ActiveRecord::Base
  extend FriendlyId

  translates :name, :slug
  friendly_id :name, use: :globalize
  acts_as :box
end

class Box < ActiveRecord::Base
  default_scope -> { where(in_home: true) }
  acts_as_list scope: [:in_home]
  actable
end

My schema.rb (relevant portions):
  create_table "boxes", force: true do |t|
    t.integer  "actable_id"
    t.string   "actable_type"
    t.integer  "position",     default: 0
    t.boolean  "in_home",      default: false
    t.boolean  "featured",     default: false
    t.datetime "created_at"
    t.datetime "updated_at"
  end

  create_table "collection_translations", force: true do |t|
    t.integer  "collection_id", null: false
    t.string   "locale",        null: false
    t.datetime "created_at"
    t.datetime "updated_at"
    t.string   "name"
    t.string   "slug"
  end

  create_table "collections", force: true do |t|
    t.string   "name"
    t.string   "icon"
    t.string   "image"
    t.datetime "created_at"
    t.datetime "updated_at"
    t.string   "color"
    t.string   "slug"
  end

Gem versions (from  bundle show)
 * active_record-acts_as (1.0.2)
 * activerecord (4.1.8)
 * friendly_id (5.0.4)
 * friendly_id-globalize (1.0.0.alpha1 058f863)
 * globalize (4.0.3)

Exception raised when invoking, e.g., Collection.friendly.find('autumn-winter') or Collection.find_by_slug('autumn-winter'):
PG::UndefinedColumn: ERROR:  column boxes.collection_translations.slug does not exist
LINE 1: ... = 'Collection' AND "boxes"."in_home" = 't' WHERE "boxes"."c...
                                                             ^
: SELECT  "collections"."id" AS t0_r0, "collections"."name" AS t0_r1, "collections"."icon" AS t0_r2, "collections"."image" AS t0_r3, "collections"."created_at" AS t0_r4, "collections"."updated_at" AS t0_r5, "collections"."color" AS t0_r6, "collections"."slug" AS t0_r7, "boxes"."id" AS t1_r0, "boxes"."actable_id" AS t1_r1, "boxes"."actable_type" AS t1_r2, "boxes"."position" AS t1_r3, "boxes"."in_home" AS t1_r4, "boxes"."featured" AS t1_r5, "boxes"."created_at" AS t1_r6, "boxes"."updated_at" AS t1_r7 FROM "collections" INNER JOIN "collection_translations" ON "collection_translations"."collection_id" = "collections"."id" LEFT OUTER JOIN "boxes" ON "boxes"."actable_id" = "collections"."id" AND "boxes"."actable_type" = 'Collection' AND "boxes"."in_home" = 't' WHERE "boxes"."collection_translations.slug" = 'autumn-winter' AND "collection_translations"."locale" = 'en' LIMIT 1
ActiveRecord::StatementInvalid: PG::UndefinedColumn: ERROR:  column boxes.collection_translations.slug does not exist
LINE 1: ... = 'Collection' AND "boxes"."in_home" = 't' WHERE "boxes"."c...
                                                             ^
: SELECT  "collections"."id" AS t0_r0, "collections"."name" AS t0_r1, "collections"."icon" AS t0_r2, "collections"."image" AS t0_r3, "collections"."created_at" AS t0_r4, "collections"."updated_at" AS t0_r5, "collections"."color" AS t0_r6, "collections"."slug" AS t0_r7, "boxes"."id" AS t1_r0, "boxes"."actable_id" AS t1_r1, "boxes"."actable_type" AS t1_r2, "boxes"."position" AS t1_r3, "boxes"."in_home" AS t1_r4, "boxes"."featured" AS t1_r5, "boxes"."created_at" AS t1_r6, "boxes"."updated_at" AS t1_r7 FROM "collections" INNER JOIN "collection_translations" ON "collection_translations"."collection_id" = "collections"."id" LEFT OUTER JOIN "boxes" ON "boxes"."actable_id" = "collections"."id" AND "boxes"."actable_type" = 'Collection' AND "boxes"."in_home" = 't' WHERE "boxes"."collection_translations.slug" = 'autumn-winter' AND "collection_translations"."locale" = 'en' LIMIT 1
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/postgresql_adapter.rb:822:in `async_exec'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/postgresql_adapter.rb:822:in `block in exec_no_cache'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/abstract_adapter.rb:373:in `block in log'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/abstract_adapter.rb:367:in `log'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/postgresql_adapter.rb:822:in `exec_no_cache'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/postgresql/database_statements.rb:137:in `exec_query'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/postgresql_adapter.rb:954:in `select'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/abstract/database_statements.rb:24:in `select_all'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/connection_adapters/abstract/query_cache.rb:70:in `select_all'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/relation/finder_methods.rb:347:in `find_with_associations'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/relation.rb:611:in `exec_queries'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/relation.rb:493:in `load'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/relation.rb:238:in `to_a'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/relation/finder_methods.rb:460:in `find_take'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activerecord-4.1.8/lib/active_record/relation/finder_methods.rb:98:in `take'
... 6 levels...
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/railties-4.1.8/lib/rails/commands/console.rb:9:in `start'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:69:in `console'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/railties-4.1.8/lib/rails/commands.rb:17:in `<top (required)>'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:247:in `require'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:247:in `block in require'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:232:in `load_dependency'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:247:in `require'
    from /vagrant/bin/rails:8:in `<top (required)>'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:241:in `load'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:241:in `block in load'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:232:in `load_dependency'
    from /opt/rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/activesupport-4.1.8/lib/active_support/dependencies.rb:241:in `load'
    from /opt/rbenv/versions/2.1.5/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /opt/rbenv/versions/2.1.5/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from -e:1:in `<main>'

Full query that triggered the exception:
SELECT  "collections"."id" AS t0_r0, "collections"."name" AS t0_r1, "collections"."icon" AS t0_r2, "collections"."image" AS t0_r3, "collections"."created_at" AS t0_r4, "collections"."updated_at" AS t0_r5, "collections"."color" AS t0_r6, "collections"."slug" AS t0_r7, "boxes"."id" AS t1_r0, "boxes"."actable_id" AS t1_r1, "boxes"."actable_type" AS t1_r2, "boxes"."position" AS t1_r3, "boxes"."in_home" AS t1_r4, "boxes"."featured" AS t1_r5, "boxes"."created_at" AS t1_r6, "boxes"."updated_at" AS t1_r7 FROM "collections" INNER JOIN "collection_translations" ON "collection_translations"."collection_id" = "collections"."id" LEFT OUTER JOIN "boxes" ON "boxes"."actable_id" = "collections"."id" AND "boxes"."actable_type" = 'Collection' AND "boxes"."in_home" = 't' WHERE "boxes"."collection_translations.slug" = 'autumn-winter' AND "collection_translations"."locale" = 'en' LIMIT 1

What the query looks like without acts_as:
SELECT  "collections".* FROM "collections" INNER JOIN "collection_translations" ON "collection_translations"."collection_id" = "collections"."id" WHERE "collection_translations"."slug" = 'autumn-winter' AND "collection_translations"."locale" = 'en' LIMIT 1

Seems related to the same issue encountered by @kidlab in #9.
My first guess is that something is going awry in lib/active_record/acts_as/querying.rb, where the ActiveRecord::QueryMethods#where override is performed.
I haven't fully made sense of the code yet, but my general impression is that the keys that should get prefixed don't get separated correctly from those that should remain instead unprefixed (lines 6 to 8).

UPDATE:
I've made a couple of tests in my code, didn't have time to make a full PR.
This fixed the problem in my scenario:
opts, acts_as_opts = opts.stringify_keys.partition { |k,v| attribute_method?(k) or k.include?(".")}

The matter seems to be that opts had this form:
{"collection_translations.slug"=>"autumn-winter"}

Just to further expand on this answer as I was having a similar issue with querying on associations in general (although I don't use the "." notation for my where clauses). I think it would be better if this statement was checking attribute_method? on the acting_as_model instance, not the specific instance. Like so:
acts_as_opts, opts  = opts.stringify_keys.partition { |k,v| acting_as_model.attribute_method?(k) }

I'll close this for now. Please reopen (https://github.com/krautcomputing/active_record-acts_as/issues) if this is still an issue with the current version.


How can  I change the LED display?

After VAD, I can display the LED with KWS_DOA.py.
How can I change the LED display like the original ReSpeak Core + MIC Array (Green + Blue  + Geen)
Thanks

Modify pixel_ring.py in this repo.
        colors = [0] * 4 * self.PIXELS_N
        colors[0] = 0x4
        colors[1] = 0x40
        colors[2] = 0x4

        colors[4 + 1] = 0x8
        colors[4 * 11 + 1] = 0x8

        self.direction_template = colors

To help you understand the HID protocol, please refer to https://github.com/Fuhua-Chen/ReSpeaker-Microphone-Array-HID-tool/blob/master/respeaker micarray hid protocol.xlsx

Will close this issue, please open a new issue if you have further questions.

Are there codes for specific color values? Say instead of blue, green, and red I wanted to make the colors indigo, violet, and green, respectively. Does it use decimal, or hex, or something else?


Upodate reqs

Coverage remained the same at 60.962% when pulling ab1b31604c32ee16ceceef7f6738d26ffa2209d5 on castrapel:req_up into a8b18480aa32a07b835a561e9d319a26d3c03af2 on Netflix:master.


praat: 6.0.38 -> 6.0.40

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/praat/versions.
These checks were done:

built on NixOS
/nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40/bin/praat passed the binary check.
1 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 6.0.40 with grep in /nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40
directory tree listing: https://gist.github.com/48461f433362d4c7c4143942011a22d6
du listing: https://gist.github.com/621b0b6d55906c1ba560361af3d25bcb

meta.description for praat is: '"Doing phonetics by computer"'.

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: praat
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: praat
Partial log (click to expand)
installing
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40
shrinking /nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40/bin/praat
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40/bin
patching script interpreter paths in /nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40
checking for references to /build in /nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40...
/nix/store/51k239kq3pb732lar9y4j996p8inmmzq-praat-6.0.40

Success on aarch64-linux (full log)
Attempted: praat
Partial log (click to expand)
installing
glibPreFixupPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/97yqr2pq9zs4fmv6mh6phdqq4lrv1azi-praat-6.0.40
shrinking /nix/store/97yqr2pq9zs4fmv6mh6phdqq4lrv1azi-praat-6.0.40/bin/praat
strip is /nix/store/jk6j4lh9v5mvjdbdc35sj0zffhhf6s56-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/97yqr2pq9zs4fmv6mh6phdqq4lrv1azi-praat-6.0.40/bin
patching script interpreter paths in /nix/store/97yqr2pq9zs4fmv6mh6phdqq4lrv1azi-praat-6.0.40
checking for references to /build in /nix/store/97yqr2pq9zs4fmv6mh6phdqq4lrv1azi-praat-6.0.40...
/nix/store/97yqr2pq9zs4fmv6mh6phdqq4lrv1azi-praat-6.0.40


Lint terraform in a CI environment

It would be useful to automate checking that the terraform passes a lint check in a CI environment.

https://travis-ci.org/wellcometrust/workflow/builds/343432745


Feature - colorize

Be able to set the color of a box, a line.

I opted for exporting SVG's so that people can style their flowcharts after export. For the time being I'm going to keep all design/styled related functionality out of the app because I feel it can add lots of complexity, and it's very difficult to do in a way that works for everyone. Thank you for the suggestion!


Tutorial: Configure SAP Analytics Cloud for automatic user provisioning

[Enter feedback here]
This tutorial contains a link to an actual SAP IPS internal test system: https://ips-xlnk9v890j.dispatcher.us1.hana.ondemand.com/ > embedded with text 'SAP Identity Provisioning admin console' in step 2.
Some SAP customers are getting confused by this and looking for access to this system... the customer should be using their own IPS here. Some tickets have been opened in SAP precisely for this.
I would suggest to modify the document and remove any real SAP internal system links and make it clear the customer should be using their own systems with url template. Example: https://ips-<consumer_account>.dispatcher.<region_host>/webapp/index.html.

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

ID: f787b194-a8ad-2941-0744-d40342f23bd3
Version Independent ID: 9b66a6da-d0db-8cf2-ad09-1c39ebfa9843
Content: Tutorial: Configure SAP Analytics Cloud for automatic user provisioning with Azure Active Directory - Microsoft Entra
Content Source: articles/active-directory/saas-apps/sap-analytics-cloud-provisioning-tutorial.md
Service: active-directory
Sub-service: saas-app-tutorial
GitHub Login: @twimmers
Microsoft Alias: thwimmer

I've updated the doc to remove this link, thanks for the feedback!

No problem. I'm working in SAP product support  so thought it best to mention it!!!
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Tom Wimmers @.>
Sent: Friday, July 1, 2022 8:36:50 PM
To: MicrosoftDocs/azure-docs @.>
Cc: JazzerConn @.>; Mention @.>
Subject: Re: [MicrosoftDocs/azure-docs] Tutorial: Configure SAP Analytics Cloud for automatic user provisioning (Issue #95173)
I've updated the doc to remove this link, thanks for the feedback!
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/95173#issuecomment-1172660468, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AVVSC7T4MGSBF7MTDNG3XJDVR5CFFANCNFSM52MIFWLA.
You are receiving this because you were mentioned.Message ID: @.***>

#please-close


5/24 Publish

@Taojunshen,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-autogen/mysql/server.pycliyml
:white_check_mark:Succeeded
View

docs-ref-autogen/postgres/server.pycliyml
:white_check_mark:Succeeded
View

docs-ref-autogen/storage/file.pycliyml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Rewrite GitHub services

In #2253 I got the ball rolling with rewriting the GitHub services. The changes to the service in that PR are a good model for rewriting any of the remaining services.
You can ignore the changes to the base services and to the GithubAuthService.
There have been some small enhancements to BaseService since then which should also be taken into account: #2278 #2279 (and #2308 once it's merged)
If folks are comfortable taking any of the remaining LegacyServices in services/github/ and rewriting them along the lines of #2253, please give it a go!
At the moment there's also a pull request open (#2309) to move the rest of the GitHub badge examples into services/github/, though that hopefully will be merged soon.
Ref #1358

If anyone is interested in helping with this, we've now got some tips!
https://github.com/badges/shields/blob/master/doc/rewriting-services.md

These have gotten easier!
#3095 #3098 #3099

Just three of these left! Let's track at https://github.com/badges/shields/issues/2863#issuecomment-482874488.


Add github actions CI for linux and macos

just copied from ebisp. also builds the examples, but does not run them (since some of them might need limits, eg. fib)

@zhiayang @leandrobbraga looks good to me! :+1: Thank you for the contribution!


sink-connector-client change_replication_source does not update the binary log postion

from the container
root@f59d10eac663:/# ./sink-connector-client change_replication_source  --binlog_file binary.060411 --binlog_position<PHONE_NUMBER>

does not update the binary log position.

This is something to be documented as a limitation - https://issues.redhat.com/browse/DBZ-3829


Pypi link is broken

Pypi lists the homepage as https://github.com/rigetticomputing/referenceqvm when it should be https://github.com/rigetticomputing/reference-qvm
Installation through pip works regardless, though.

Thanks @marcusps !  I fixed this in the setup.py and the next release will fix this on pypi


Fix Fastlane xcversion warning

As a developer I want to be able to update to the latest Fastlane version when needed.
Acceptance criteria

Existing Fastlane deprecation warnings have been fixed.
In particular This action (xcversion) is deprecated has been fixed.

Tasks

[x] Update Fastlane to the latest version.
[x] Follow the xcversion migration guide to fix the corresponding warning.
[x] Address other issues.
[x] Update CI documentation (xcodes as required tool).

Floating version numbers are not supported by xcodes anymore.
Wr also discussed:

Whether we could store the version number in a separate file. For the moment we won't and we will adjust this later if needed.
Whether we should install the specified Xcode version if missing. For the moment we won't (to avoid polluting the CI agents without noticing).


where are the release notes?

If you're referring to this client library, we have a changelog: https://github.com/driftyco/ionic-cloud/blob/master/CHANGELOG.md
If you're referring to Ionic Cloud as a whole, we don't yet have a centralized place for release notes.


lens keys restore command always uses 'home' directory

Lens config.yaml below.
Expected: The command "lens keys restore default" will restore into the default chain's configured key-directory. With my configuration (below) this would be e.g. /home/kyle/projects/cosmos-chains/lens. The golang client seems to do this, I am seeing paths in the debugger like {homepath}/keys/{ChainID}/keyring-test.
Actual: Ran command "lens keys restore default". The keys were created in my home directory e.g. /home/kyle/.lens/keys.
Note: I am inexperienced with lens, so I may be misunderstanding something. However, if it is desirable to have the behavior I described above (in the lens cli) I may be able to make a PR.
default_chain: juno
chains:
  juno:
    key: default
    chain-id: testing
    rpc-addr: http://localhost:80
    grpc-addr: "http://localhost:9090"
    account-prefix: juno
    keyring-backend: test
    gas-adjustment: 1.2
    gas-prices: 0.0ustake
    key-directory: /home/kyle/projects/cosmos-chains/lens
    debug: false
    timeout: 10s
    output-format: json
    sign-mode: direct

If Im understanding you correctly, you can use the '--home' flag and pass your desired "home" directory when running lens keys restore.

Gotcha. Guess I misunderstood key-directory as being intended to override that value as well. Will dig through the code some more. Thanks!

Reopen if you still have trouble or I misinterpreted you.


Explain climate data

What about climate data? Presumably from flux-tower instruments?

In ref #35


Exporting software to a layer doesn't select associated techniques on the layer in the Navigator

If I search "mimikatz" in the Navigator, it selects all the techniques that use that software.

But exporting software bookmarks to a layer doesn't do anything to the visual layer in navigator, so isn't a useful option as is.

I modified the export feature to behave as expected. E.g. if you have mimikatz bookmarked:

Then it exports all of the techniques related to Mimikatz (as defined by the STIX relationships in our source data):

Colors/scores and notes are copied over from the bookmark to the related techniques.


Fix typo in command name in Phase 1

Fix typo in command name: Changed "Import Resource" to "Insert Resource"

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

#sign-off


Add DocServiceConfigurator into boot2-webflux-autoconfigure

Hi.
Currently can't use DocServiceConfigurator in boot2-webflux-autoconfigure, so I'd like to add it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Manabu Matsuzaki seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@matsumana Gentle ping - We're gonna release a new version tomorrow morning :wink:

Updated.
Sorry, I didn't notice the your comments immediately...
Could you exclude this PR from the new release, if I can't meet the deadline?

Thanks a lot, @matsumana :bow:

Thank you guys for the review!


npm install

What do I do after I install the package with nam?

import and use it

take a look into the README. https://github.com/30-seconds/30-seconds-of-code#package > Then under Details.


File Access Error on watch run

From @jdenekat on March 12, 2018 23:31
Steps to reproduce
Checkout a project that uses "watch" on a new computer, type "dotnet watch run"
Expected  behavior
It should build and run
Actual behavior
The first thing it does is try to populate a local package cache at the same time it watches, leading to a file contention error.
Work-around:
First, just do "dotnet run".  It will build the local package cache.  Afterwards you can use "dotnet watch run" without file contention.
Environment data
dotnet --info output:
.NET Command Line Tools (2.1.4)
Product Information:
Version:            2.1.4
Commit SHA-1 hash:  5e8add2190
Runtime Environment:
OS Name:     Windows
OS Version:  10.0.16299
OS Platform: Windows
RID:         win10-x64
Base Path:   C:\Program Files\dotnet\sdk\2.1.4\
Microsoft .NET Core Shared Framework Host
Version  : 2.0.5
Build    : 17373eb129b3b05aa18ece963f8795d65ef8ea54
Copied from original issue: dotnet/cli#8773

Hmm, this one is tricky. Not sure there is a good way for dotnet-watch to solve it. You can use this environment variable, however, to disable first-run package cache population.
$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE='true'

@livarcocc @wli3 will first run experience run for bundled SDK tools in 2.1.300? It appears they may be skipped for DotNetCliToolReference's.

They should run for bundled SDK tools, as the fact they are bundled tools is just an implementation detail. From the user's perspective, they are native commands. If that's not happening, I would say that's a bug in the CLI and we should fix it.
@wli3 can you double check?

In a clean VM, the first run is triggered .

What about for tools installed via DotNetCliToolReference or dotnet-install-tool (and resolved via PATH)?

DotNetCliToolReference in theory it should, however, it is not a valid scenario, you need dotnet restore to pull these tools down and dotnet restore has triggered it already.
installed tool will not in theory, but, again, you need dotnet install first, so it would be triggered by the time tools get invoked.

That's a good point. @jdenekat how are you installing dotnet-watch? It seems like the first-run package cache should have run before dotnet watch begins execution

Closing due to lack of response. As mentioned above, use $env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE='true' to disable the package cache initialization.


[MINOR] Job parameters synchronization

What is this PR for?
We need to synchronize setting up job result, exception, errorMessage and dateFinished in the end of Job.run() method. This will guarantee that we won't see these parameters in inconsistent state in multithreading environment, e.g., if we see that a dateFinished parameter has not been set up yet we will be sure that we also don't have a job final result.
This code refactoring will make it possible to resolve issue ZEPPELIN-1856.
What type of PR is it?
Refactoring
Todos

[ ] - Synchronize setResult(), exception, errorMessage and dateFinished in Job.run() method.
[ ] - Synchronize getters and setters for exception, errorMessage and dateFinished.

Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

Thanks for the contribution!
LGTM

Merge to master and branch-0.7 if no further comments.

Merged to master, but didn't merged to branch-0.7 because of conflict.


Added "Unlock" Feature

Added "Unlock" Feature;
Made a dynamic dropdown;
Moved vote option creation to Static;

Opened new PR (#46) to fix merging issues.


CLI version command should specify if no meshes are in the cluster

Bug description:
CLI version command should specify if no meshes are in the cluster OR not show the table if no meshes are in the cluster

Affected area (please mark with X where applicable):

CLI Tool                   [x ]

Environment:

OSM version (use osm version): v1.1.0

I would like to work on it

Thanks for volunteering for this work, @mudit-01! I'll assign this item to you.


Clarify what VoteVariation types 2.0 supports, and make test cases for them

Allowed via range proofs

Range proofs enable cumulative voting. To do so:

Section 3.3, 3.3,1: selection text must be generalized from (0, 1) to (0, limit)

The code to be changed:

ManifestInputValidation allows ContestDecription.voteVariation == cumulative
Range proofs are substituted for disjunctive proofs in Encryptor.encryptSelection(), if cumulative
ContestData over_votes might want to record the selection vote amount, instead of assuming == 1
Add tests

Range proofs: a voter has a fixed number of votes ($t$, for now), and can then hand them out to as few or as many candidates as they want. We'll need a range proof for each candidate, saying that they have $[0,t]$ votes, and then we have a range proof for the sum of all the candidates that it, as well, is in $[0,t]$.
Pick 1-of-n: the individual proofs are all zero-or-one and the sum proof is zero-or-one.
Pick k-of-n: you can vote for as many as $k$ choices. All the individual proofs are zero-or-one, and the sum proof is a range $[0,k]$.
Approval voting: You don't need the sum proof any more, since you can vote for as many or as few as you want, but you need zero-or-one proofs for each candidate.
Of course, every zero-or-one disjunctive proof can and should be implemented with a range proof. Once we're happy with that, we can probably remove the disjunctive proofs entirely.

From spec 1.9, p 10:
"For some voting methods such as cumulative voting, Borda count,
and a variety of cardinal voting methods like score voting and STAR-voting, it can be necessary to
encrypt other small, positive integers."
Need to clarify what VoteVAriation types we are supporting, and get some test cases for them
/**
     * Enumeration for contest algorithm or rules in the contest.
     * @see [Civics Common Standard Data Specification](https://developers.google.com/elections-data/reference/vote-variation)
     */
    enum class VoteVariationType {
        /** Each voter can select up to one option. */
        one_of_m,

        /** Approval voting, where each voter can select as many options as desired. */
        approval,

        /**
         * Borda count, where each voter can rank the options, and the rankings are assigned point
         * values.
         */
        borda,

        /** Cumulative voting, where each voter can distribute their vote to up to N options. */
        cumulative,

        /** A 1-of-m method where the winner needs more than 50% of the vote to be elected. */
        majority,

        /** A method where each voter can select up to N options. */
        n_of_m,

        /**
         * A 1-of-m method where the option with the most votes is elected, regardless of whether
         * the option has more than 50% of the vote.
         */
        plurality,

        /**
         * A proportional representation method, which is any system that elects winners in
         * proportion to the total vote. For the single transferable vote (STV) method, use rcv
         * instead.
         */
        proportional,

        /** Range voting, where each voter can select a score for each option. */
        range,

        /**
         * Ranked choice voting (RCV), where each voter can rank the options, and the ballots are
         * counted in rounds. Also known as instant-runoff voting (IRV) and the single transferable
         * vote (STV).
         */
        rcv,

        /**
         * A 1-of-m method where the winner needs more than some predetermined fraction of the vote
         * to be elected, and where the fraction is more than 50%. For example, the winner might
         * need three-fifths or two-thirds of the vote.
         */
        super_majority,

        /**
         * The vote variation is a type that isn't included in this enumeration. If used, provide
         * the item's custom type in an OtherType element.
         */
        other
    }

Spec 2.0.0 Section 3.1.3 . p 17 "Selections, option selection limits and contest selection limits" has both R (option selection limit) and L (contest selection limit).
"To allow other voting methods, ElectionGuard allows a selection to be the assignment of a value in a range {0, 1, . . . , R},
where R is the option selection limit..."
Spec 2.0.0 Section 3.3.3 . p 26:
"In most elections, most contests have a selection limit of one. However, a larger selection limit
(e.g., select up to three) is not uncommon in some elections. Approval voting can be achieved by
setting the selection limit to the total number of options in a contest.
This gives us one_of_m, n_of_m and approval.
p 27:
"Cardinal voting methods. A range proof, i.e. a proof that a ciphertext is an encryption of one
of the values 0, 1, . . . , L is a generalization of the proof that a ciphertext is an encryption of zero
or one. It can be used to prove well-formedness of an individual selection when it is allowed for
options to receive multiple votes in a contest by a single voter. Using range proofs with a range
up to a certain option selection limit for the individual option as well as the contest selection sum
therefore enables cardinal voting methods such as cumulative voting, score voting, STAR-voting,
and Borda count in ElectionGuard."
Each of these cases needs more clarity and especially tests.


ncgopher: 0.1.5 -> 0.2.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/jansc/ncgopher/releases.
meta.description for ncgopher is: "A gopher and gemini client for the modern internet"
meta.homepage for ncgopher is: "https://github.com/jansc/ncgopher"
meta.changelog for ncgopher is: ""
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 0.2.0 with grep in /nix/store/9h8p8h2c03q7dxsbbf00jr1qw9rkw9ji-ncgopher-0.2.0

directory tree listing: https://gist.github.com/94411c2055bbf35bf779535e55154161

du listing: https://gist.github.com/924c215e917f567209988b849ccd962c

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
ncgopher

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/9h8p8h2c03q7dxsbbf00jr1qw9rkw9ji-ncgopher-0.2.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A ncgopher https://github.com/r-ryantm/nixpkgs/archive/b8e1eed940e961a8d2fea8cd0e3b2f44ad6eeb3b.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/9h8p8h2c03q7dxsbbf00jr1qw9rkw9ji-ncgopher-0.2.0
ls -la /nix/store/9h8p8h2c03q7dxsbbf00jr1qw9rkw9ji-ncgopher-0.2.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

ncgopher

Maintainer pings
cc @SCOTT-HAMILTON for testing.

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

1 package built:

ncgopher


build: update configuration

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


Add support for Third Reality RealitySwitch Plus.

Tested this out and was able to create a switch in home assistant that allows reporting the state and toggling the switch.  I believe this device also supports indicating the battery level, but I'm not quite sure how to add that support.  Any assistance would be appreciated.  It runs on 2 AA alkaline batteries.  Here is what the row looks like from the database:
{
  "_id": "4K7nkAWZv6006kJV",
  "endpoints": {
    "1": {
      "clusters": {
        "genBasic": {
          "attrs": {
            "10": {},
            "65533": 6,
            "9": 255,
            "appProfileVersion": 0,
            "appVersion": 7,
            "dateCode": "2018-10-26",
            "hwVersion": 3,
            "manufacturerName": "Third Reality, Inc",
            "modelId": "3RSS008Z",
            "powerSource": 3,
            "swBuildId": "v1.01.07",
            "zclVersion": 2
          },
          "dir": {
            "value": 1
          }
        },
        "genGroups": {
          "attrs": {
            "65533": 6,
            "nameSupport": 128
          },
          "dir": {
            "value": 1
          }
        },
        "genIdentify": {
          "attrs": {
            "65533": 6,
            "identifyTime": 157
          },
          "dir": {
            "value": 1
          }
        },
        "genOnOff": {
          "attrs": {
            "65533": 6,
            "onOff": 1
          },
          "dir": {
            "value": 1
          }
        },
        "genOta": {
          "attrs": {
            "65533": 6
          },
          "dir": {
            "value": 1
          }
        },
        "genPowerCfg": {
          "attrs": {
            "65533": 1,
            "batteryVoltage": 34
          },
          "dir": {
            "value": 3
          }
        },
        "genScenes": {
          "attrs": {
            "65533": 6,
            "count": 0,
            "currentGroup": 0,
            "currentScene": 0,
            "nameSupport": 128,
            "sceneValid": 0
          },
          "dir": {
            "value": 1
          }
        }
      },
      "devId": 2,
      "epId": 1,
      "inClusterList": [
        0,
        1,
        3,
        4,
        5,
        6,
        25
      ],
      "outClusterList": [
        1
      ],
      "profId": 260
    }
  },
  "epList": [
    1
  ],
  "id": 9,
  "ieeeAddr": "0x282c02bfffe02f11",
  "joinTime": null,
  "manufId": 4659,
  "manufName": "Third Reality, Inc",
  "modelId": "3RSS008Z",
  "nwkAddr": 14032,
  "powerSource": "Battery",
  "status": "offline",
  "type": "EndDevice"
}

I can see the genPowerCfg has a batteryVoltage attr, but I'm not sure how to convert that to an approximate percentage.

Does battery reporting work with:
    // Third Reality
    {
        zigbeeModel: ['3RSS008Z'],
        model: '3RSS008Z',
        vendor: 'Third Reality, Inc',
        description: 'RealitySwitch Plus',
        supports: 'on/off, battery',
        fromZigbee: [fz.ignore_onoff_change, fz.state],
        toZigbee: [tz.on_off, tz.ignore_transition],
        configure: (ieeeAddr, shepherd, coordinator, callback) => {
            const device = shepherd.find(ieeeAddr, 1);
            const actions = [
                (cb) => device.bind('genPowerCfg', coordinator, cb),
                (cb) => device.report('genPowerCfg', 'batteryVoltage', 1, 4, 0, cb),
            ];
            execute(device, actions, callback);
        },
    },

I'll give that a try tonight and let you know.

Doesn't look like that works:
  zigbee2mqtt:warn 4/10/2019, 2:30:36 AM Failed to configure RealitySwitch Plus Living Room (0x282c02bfffe02f14) ('unreportableAttribute') (attempt #1)

Updated the fromZigbee to ignore a few dev state changes after seeing these in the logs:
4/10/2019, 1:42:24 AM - warn: No converter available for '3RSS008Z' with cid 'genBasic', type 'devChange' and data '{"cid":"genBasic","data":{"10":[0,0,0,0,0,0,0,0,0,0,0,0,0]}}'
4/10/2019, 1:42:24 AM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html.
4/10/2019, 1:42:30 AM - warn: No converter available for '3RSS008Z' with cid 'genPowerCfg', type 'devChange' and data '{"cid":"genPowerCfg","data":{"batteryVoltage":32}}'
4/10/2019, 1:42:30 AM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html.
4/10/2019, 1:42:34 AM - warn: No converter available for '3RSS008Z' with cid 'genIdentify', type 'devChange' and data '{"cid":"genIdentify","data":{"identifyTime":145}}'
4/10/2019, 1:42:34 AM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html.

I guess we could merge as is without battery/voltage readings to get a basic on/off/state switch.

Can you try with:
    // Third Reality
    {
        zigbeeModel: ['3RSS008Z'],
        model: '3RSS008Z',
        vendor: 'Third Reality, Inc',
        description: 'RealitySwitch Plus',
        supports: 'on/off, battery',
        fromZigbee: [
            fz.ignore_onoff_change, fz.state, fz.ignore_genIdentify_change,
            fz.ignore_basic_change,
        ],
        toZigbee: [tz.on_off, tz.ignore_transition],
        configure: (ieeeAddr, shepherd, coordinator, callback) => {
            const device = shepherd.find(ieeeAddr, 1);
            const cfg = {
                direction: 0, attrId: 33, dataType: 32, minRepIntval: 0, maxRepIntval: repInterval.MAX, repChange: 0,
            };

            const actions = [
                (cb) => device.bind('genPowerCfg', coordinator, cb),
                (cb) => device.foundation('genPowerCfg', 'configReport', [cfg], foundationCfg, cb),
            ];
            execute(device, actions, callback);
        },
    },

Adding that code didn't produce any errors, but I also am not seeing a mqtt message that is any different then before.
4/11/2019, 5:57:15 PM - debug: Received MQTT message on 'zigbee2mqtt/RealitySwitch Plus Living Room/set' with data 'OFF'
4/11/2019, 5:57:15 PM - info: Zigbee publish to device '0x282c02bfffe02f14', genOnOff - off - {} - {"manufSpec":0,"disDefaultRsp":0} - null
4/11/2019, 5:57:16 PM - info: MQTT publish: topic 'zigbee2mqtt/RealitySwitch Plus Living Room', payload '{"state":"OFF","linkquality":107}'
4/11/2019, 5:57:17 PM - debug: Received zigbee message of type 'attReport' with data '{"cid":"genOnOff","data":{"onOff":0}}' of device '3RSS008Z' (0x282c02bfffe02f14) of endpoint 1
4/11/2019, 5:57:17 PM - info: MQTT publish: topic 'zigbee2mqtt/RealitySwitch Plus Living Room', payload '{"state":"OFF","linkquality":99}'
4/11/2019, 5:57:17 PM - debug: Received zigbee message of type 'devChange' with data '{"cid":"genOnOff","data":{"onOff":0}}' of device '3RSS008Z' (0x282c02bfffe02f14) of endpoint 1
4/11/2019, 5:57:19 PM - debug: Received zigbee message of type 'readRsp' with data '{"cid":"genOnOff","data":{"65533":6,"onOff":0}}' of device '3RSS008Z' (0x282c02bfffe02f14) of endpoint 1
4/11/2019, 5:57:19 PM - info: MQTT publish: topic 'zigbee2mqtt/RealitySwitch Plus Living Room', payload '{"state":"OFF","linkquality":105}'
4/11/2019, 5:57:19 PM - debug: Received zigbee message of type 'devChange' with data '{"cid":"genOnOff","data":{"onOff":0}}' of device '3RSS008Z' (0x282c02bfffe02f14) of endpoint 1
4/11/2019, 5:57:31 PM - debug: Received zigbee message of type 'attReport' with data '{"cid":"genOnOff","data":{"onOff":0}}' of device '3RSS008Z' (0x282c02bfffe02f14) of endpoint 1

I suppose it's possible it only reports voltage at certain times and not w/ every message.

Whoops, I forgot the change the report interval so it will probably take long to report, please use
    // Third Reality
    {
        zigbeeModel: ['3RSS008Z'],
        model: '3RSS008Z',
        vendor: 'Third Reality, Inc',
        description: 'RealitySwitch Plus',
        supports: 'on/off, battery',
        fromZigbee: [
            fz.ignore_onoff_change, fz.state, fz.ignore_genIdentify_change,
            fz.ignore_basic_change,
        ],
        toZigbee: [tz.on_off, tz.ignore_transition],
        configure: (ieeeAddr, shepherd, coordinator, callback) => {
            const device = shepherd.find(ieeeAddr, 1);
            const cfg = {
                direction: 0, attrId: 33, dataType: 32, minRepIntval: 0, maxRepIntval: 3, repChange: 0,
            };

            const actions = [
                (cb) => device.bind('genPowerCfg', coordinator, cb),
                (cb) => device.foundation('genPowerCfg', 'configReport', [cfg], foundationCfg, cb),
            ];
            execute(device, actions, callback);
        },
    },

I updated the device this morning, will check back this evening to see if there were any issues or if it's reporting the new value.

Still no errors in the logs, but I'm also not seeing any new values being reported.

I've checked the SmartThings (https://github.com/SmartThingsCommunity/SmartThingsPublic/blob/master/devicetypes/smartthings/zigbee-switch.src/zigbee-switch.groovy) integration and they also do not seem to support battery, I think we should merge it as is, OK?

Yup that sounds good to me.  At some later point if I ever try out their hub and check out their app I may be able to figure out how they are reporting battery life (if at all).  But I can always create a new PR for that.

Thanks!


Version to 0.3.1b1

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Correctly set the release channel to main, geofileops_rc or geofileops_dev (depending on stable, rc or dev version)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I was trying to look for recipes to lint for you, but it appears we have a merge conflict.
Please try to merge or rebase with the base branch to resolve this conflict.
Please ping the 'conda-forge/core' team (using the @ notation in a comment) if you believe this is a bug.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender


chore(main): release channel 0.0.2

:robot: I have created a release beep boop
0.0.2 (2024-02-12)
Bug Fixes

export wasmify (14d724b)
initial commit (195d342)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/fission-codes/stack/releases/tag/channel-v0.0.2 :sunflower:


How to handle an empty string ''

Hi
Andri,
I have the following
RegExp wordMatcherOptional = new VerbalExpression( ).startOfLine( ).range(
[new Range( 'a', 'z' )] ).oneOrMore( ).withAnyCase( ).anyOf( "' -" )
.zeroOrMore( )
.add( '[a-z]' )
.zeroOrMore( )
.or( '\s*' )
.endOfLine( )
.toRegExp( );
but the .or( '\s*' ) does NOT handle the empty string. This regex should be valid if a word is present or an empty string is present. How can I handle this empty string.
Cheers

@st-clair-clarke
All methods except add method take value as parameter which will be sanitized before insert into the regex for obvious reasons.
In your case, as I understood you want to have a match either with your regex or an empty string. It could be reached by capturing your regex and say that it should be met zero or once:
RegExp wordMatcherOptional = new VerbalExpression( )
.startOfLine( )
.beginCapture()
//.. continue your pipe
.endCapture()
.countRange(0, 1)  // is capture should be matched 0(empty string) or once (your regex)
.endOfLine()
.toRegExp();

Hope it will help


docs: add starting workflow suggestion for junior devs

Add a foldable callout in index.md to clarify the suggested workflow for junior developers

Going to close this in favour of a more detailed writeup linked under the hosting page just to keep the main page clutter-free: https://github.com/jackyzha0/quartz/commit/5196f3b9db159c8d06af3f610d854631d2b07537


doc: typo in examples/conflicts/README.md

Description
Typo in examples/conflicts/README.md.
Checklist

[x] documentation is changed or added
[x] commit message follows commit guidelines

@shivamvk 💯 Thank you for contribution to Voyager Server 🚀
Really useful change!


Not able to pause music when the source is WiFi Samsung Q800A

Hi,
when I control my soundbar with HA I can turn it on/off, change input source and volume, play music, but I can't pause it.
Pressing play/pause button only allows me to start music, but not stop it.
It looks like the issue is present only when the source is WiFi and music is played with built in Spotify. There is no information about playback status then.
When using bluetooth source, playback state is correctly displayed and play/pause button works as intended.

Have you tried to use media_player.media_pause service directly?

I have now, it works if I use it directly. Seems like the issue stems from the lack of information about playback status when the source is WiFi.

What status does soundbar entity have when you use Spotify?

While using Spotify it's "On".
When using bluetooth it's "playing" or "paused".


Question about SERAC

I see you ran the sequential editing using the method SERAC in paper 《Editing Large Language Models: Problems, Methods, and Opportunities》. I want to know how much samples you saved in experiments. Thank you.

As you can see in Figure 3 of the paper, the part about SERAC only shows the editing capacity of [1,10,100]. That means we save 100 sequential editing samples.
In theory, this number could be more, but you may need to modify the code at scope classifier, because the original implementation is to calculate the similarity between all samples and the current editing instance, you can segment the calculation and merge it, and theoretically explore editing performance on 1000 or more samples

Thank you for your answer.


No map received RVIZ2 (Humble) Only RPLIDAR A1

I am doing a robotics and version testing project with ROS. Since I don't have the camera or the turtlebot 4 kit, I have created something similar to try to use it. I am using only a RPLIDAR A1 without the camera shown in the tutorial, because I don't have it.
Below I put a picture of how I have everything mounted in the roomba.

Using
PC OS: Ubuntu 22.04
PC ROS Distro: Humble
Raspberry Pi OS: Ubuntu 22.04
Raspberry Pi ROS Distro: Humble
Create® 3 firmware version: H.1.2
Expected behaviour
Follow the tutorial and generate a map.
Actual behaviour
No map is received.
To Reproduce

Power on Turtlebot4.
Confirm the PC is connected to the Raspberry Pi properly.
On PC, run ros2 launch turtlebot4_navigation slam.launch.py and ros2 launch turtlebot4_viz view_robot.launch.py to generate a map, but no map is received.

I get this in RVIZ2:

I have connected my pc, the nuc and the roomba iCreate 3 in the same wifi. I can get from my pc the topics of the nuc connected via USB C to the roomba, like the following picture:
sergio@sergio:~$ ros2 topic list
/battery_state
/clicked_point
/cmd_audio
/cmd_lightring
/cmd_vel
/dock_status
/downsampled_costmap
/downsampled_costmap_updates
/global_costmap/costmap
/global_costmap/costmap_updates
/global_costmap/voxel_marked_cloud
/hazard_detection
/imu
/initialpose
/interface_buttons
/ir_intensity
/ir_opcode
/kidnap_status
/local_costmap/costmap
/local_costmap/costmap_updates
/local_costmap/published_footprint
/local_costmap/voxel_marked_cloud
/local_plan
/map
/map_metadata
/map_updates
/mobile_base/sensors/bumper_pointcloud
/mobility_monitor/transition_event
/mouse
/odom
/parameter_events
/particle_cloud
/plan
/pose
/robot_description
/robot_state/transition_event
/rosout
/scan
/slam_toolbox/feedback
/slam_toolbox/graph_visualization
/slam_toolbox/scan_visualization
/slam_toolbox/update
/slip_status
/static_transform/transition_event
/stop_status
/tf
/tf_static
/waypoints
/wheel_status
/wheel_ticks
/wheel_vels

I am executing this two commands and getting this in terminal:
ros2 launch turtlebot4_navigation slam.launch.py sync:=false
ros2 launch turtlebot4_viz view_robot.launch.py
sergio@sergio:~$ ros2 launch turtlebot4_navigation slam.launch.py sync:=false
[INFO] [launch]: All log files can be found below /home/sergio/.ros/log/2023-06-27-19-14-54-850864-sergio-2544
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [async_slam_toolbox_node-1]: process started with pid [2545]
[async_slam_toolbox_node-1] [INFO] [1687886095.513091448] [slam_toolbox]: Node using stack size 40000000
[async_slam_toolbox_node-1] [INFO] [1687886095.590721537] [slam_toolbox]: Using solver plugin solver_plugins::CeresSolver
[async_slam_toolbox_node-1] [INFO] [1687886095.591266425] [slam_toolbox]: CeresSolver: Using SCHUR_JACOBI preconditioner.

sergio@sergio:~$ ros2 launch turtlebot4_viz view_robot.launch.py
[INFO] [launch]: All log files can be found below /home/sergio/.ros/log/2023-06-27-19-10-58-454563-sergio-4535
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [rviz2-1]: process started with pid [4536]
[rviz2-1] Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
[rviz2-1] [INFO] [1687885859.019502697] [rviz2]: Stereo is NOT SUPPORTED
[rviz2-1] [INFO] [1687885859.019763450] [rviz2]: OpenGl version: 4.6 (GLSL 4.6)
[rviz2-1] [INFO] [1687885859.046779301] [rviz2]: Stereo is NOT SUPPORTED
[rviz2-1] [WARN] [1687885859.254517492] [rcl.logging_rosout]: Publisher already registered for provided node name. If this is due to multiple nodes with the same name then all logs for that logger name will go out over the existing publisher. As soon as any node with that name is destructed it will unregister the publisher, preventing any further logs for that name from being published on the rosout topic.

If I do a echo of /scan topic i don't recieve nothing. But I haven't been researching and I don't know if you have to indicate on which USB port the lidar is running, but I couldn't find anywhere to indicate it.

This issue is being closed due to inactivity. If you are still experiencing the issue, feel free to reopen this ticket when you are ready to continue the troubleshooting process.

Hello. I am experiencing the same issue, but the only difference is that I am able to see the RPLidar data using rplidar.launch.py. I am running this on a simulator, however, but I have set the simulated robot in an empty world. I can see on RViz that the real lidar data is being read in as well as the simulated world lidar data, but when I try to map using slam toolbox, it does not generate the map I want of the real world, but only the simulated world.
Here is what I am seeing in Gazebo with the empty world:

Here is what I see on RViz:

So this is after I launch everything with the robot_localization package and I can see the real data on there, but the map I generate does not take that into account. Don't know what is happening. Please help.

@sdp-team-12 This venue is for issues regarding the Turtlebot4 package. Are you using the Turtlebot4 package because it does not look like it. I would encourage you to enter your issue on the github repo for the packages that you are using and/or on https://robotics.stackexchange.com/.
What I will say though is make sure that slam is looking at the right scan topic and that only 1 robot OR simulated robot is publishing to any given topic (not both)


[SPARK-11821] Propagate Kerberos keytab for all environments

I prepared a patch for recent bugfix. The scope of the previous bugfix is too narrow- it works only on YARN. I need it on local mode and I think the other modes also need the information (because reflection works the same for each environment having JVM).

Can one of the admins verify this patch?

I also see, that a change of authentication method from a simple to a kerberos was required while renewing credentials. I've made a commit.

@tgravescs @harishreedharan

@woj-i please open the patch against the master branch instead. Committers will backport it into branch-1.5 when they merge it.

@woj-i would you mind tagging this one as [branch-1.5] in the title of the PR so it's clearer?
@harishreedharan please review #9859 instead, which is the same patch opened against master

Title changed.

I made comments on https://github.com/apache/spark/pull/9859.

@woj-i could you close this PR?


Add credscan

Similar to how this is done in .NET

https://github.com/Azure/azure-sdk-for-cpp/pull/3382
The PR includes the enable codes and the link in comments have all errors detected from the tool.

@danieljurek Could you please take a look at the errors reported in the pipeline and ask someone help with suppression?

https://github.com/Azure/azure-sdk-for-cpp/issues/3568

This was fixed and credscan was added in https://github.com/Azure/azure-sdk-for-cpp/pull/4328


Cadence HiFi 5 Neural Network Library v1.6.0

updated the download script to use hifi5 v1.6.0 archive.
depthwise_conv kernel is updated and patch is not required now.
quantize optimized kernel is renamed in the v1.6.0, updated with new
kernel name.
BUG= updating script to download latest cadence hifi5 neural network library

@googlebot I consent


Add 'osxphotos cookbook' or some other way to show "recipes"

osxphotos has a plethora of options which can be overwhelming for the new comer.  Perhaps an "osxphotos cookbook" command that simply lists some common "recipes" for using and configuring osxphotos would be helpful to demystify the tool.

Maybe osxphotos tutorial which shows the tutorial text.


Subtitles wont disable

Subtitles wont disable off a show although I select to disable them. Does not matter if i start the show from where i left off or from the beginning, they still don't go away.
I know similar problems with subtitles are listed, but they do not appear to be like this one.

I fixed already a problem with disabled subs from within a running show / movie. This has not yet merged. However switching off subs or even switching to another sub does not work with integrated subs. The LG Netcast api unfortunately does not supports integrated subs as Netcast requires a sub stream to be referenced by url. This is not possible with integrated subs.

+1 I have the same issue.

Having the same issue. Unfortunately, PlayZ Media will go unused until this bug is fixed.

Same. While I miss having the PLEX features, I don't want to use
transcoding or strip subtitles if I don't have to. Will be using SmartShare
until this is resolved.
On Mon, Feb 23, 2015 at 10:58 AM, Ethan<EMAIL_ADDRESS>wrote:

Having the same issue. Unfortunately, PlayZ Media will go unused until
this bug is fixed.
—
Reply to this email directly or view it on GitHub
https://github.com/simonjhogan/PLAYz-Media-for-PLEX/issues/81#issuecomment-75483322
.

Hey folks, similar problem here. I've got a LG UB850 and subtitles are simply always active using Playz Media. If a movie's got more than one subtitle it can only show the first one, no switching possible. It doesn't matter if I leave the movie, disable/change the subtitle, and then play it again (from the beginning), it just shows the same subtitle again. The only thing I can do is turning on the transcoding option to make the subtitles disappear, but the image quality is obviously lower then, can't take it.
As far as I can see this post started on november 2014. And there's still no fix for this? I know how complex problems can get, and I really appreciate what has been developed so far. But I paid for this app, so I'd really like to use it, otherwise, this app is somehow useless to me. So please let us know, what the status is regarding this issue.

I have the same issue. No update since November  14, so this bug exists very very long. This is very sad for a paid app. And the developer is not responding to our concerns, what is even more sad.

Also experiencing this issue. Very unfortunate

Anyone know why this line might be commented out? Seems related.
https://github.com/simonjhogan/PLAYz-Media-for-PLEX/blob/b53a973a7325bcf3601e506f79c162706e9e3727/WebContent/system/script/player.js#L534

Tried running this program in the Smart TV emulator. Subtitles seem to be totally unavailable while the program is emulated, I can't even get them to enable. This makes tracking down the issue more difficult. I will try building and running the program on my own TV next.

You guys know Plex has it's own client right? I think PLAYz was meant to hold us over until the official release, which is out right now. Also, if you guys are using Plex and don't have a PS/XBox/Roku...

@axebox Unfortunately the Plex client isn't WebOS 2.0 compatible yet. PlayZ and DLNA are the only options for those of us with the newer LG Smart TVs.

Same issue on my system, WebOS 2.0 as well


typo: signifant -> significant

@nschonni : Thanks for your contribution! The author, @, has been notified to review your proposed change.

Verified editorial corrections.


Session Time Out

Is there a way to get the session time out for the session id retrieved through ApiSessionCreate() That does not seem to be accessible in the response

Hoping to get this answered and have a related question.  It seems the response is a protected property.  I'm would like to see the response in its native XML format before the client parses it.  Is that possible?

Hey @lbTustin, sorry for the late response....... For the session time out, that value should be calculated from the sessionTimeStamp where:
sessionTimeOut = sessionTimeStamp + session duration (specified by user/company configurations).
I have noticed that there is a "ToDo" item for a few fields not yet added in Authentication.cs and sessionTimeStamp is one of those fields. So I will be adding that in preparation for our next .NET release, date is TBD 2022.
Apologies for the delay on this matter.

Changes for this will be going into the next release. Closing this issue


a12z 16.3 still crashes

a12z 16.3 still crashes 3.3.6

Same issue over here. Tried every puaf settings 10-20 times, but still just always kernel panic...


[Cleanup] Refactor CreateExecutor

Eh, so you this does what I want for #1003, but we still need to clean up the logic for how we report errors in the different methods.

Coverage decreased (-9.2%) to 66.576% when pulling<PHONE_NUMBER>45e35598b7cc7c4d06e63c881aaf1d on apavlo:dec2017-cleanup into 0cb7dab509a45db1536427614f64b341465c662d on cmu-db:master.


[Feature] Configuration Variants

Is your feature request related to a problem? Please describe
I want to have different configurations for different environments without having to think about a separate name for the executor for each environment. I aim to have a consistent approach across plugins, similar to what the Angular plugin provides for example.
Describe the idea you'd like
I would like the ability to run nx serve service-xyz -c production, and specify configurations like the following:
"deploy": {
  "executor": "@glowdragon/nx-dokku:deploy",
  "configurations": {
    "production": {
      "options": {
        "host": "production-server.xyz",
        "app": "service-xyz",
        "localBranch": "main"
      }
    },
    "development": {
      "options": {
        "host": "development-server.xyz",
        "app": "service-xyz",
        "localBranch": "develop"
      }
    }
  },
  "defaultConfiguration": "development"
}

Describe alternatives you've considered
My current workaround involves setting up separate executors for development and production:
"deploy-prod": {
  "executor": "@glowdragon/nx-dokku:deploy",
  "options": {
    "host": "production-server.xyz",
    "app": "service-xyz",
    "localBranch": "main"
  }
},
"deploy-dev": {
  "executor": "@glowdragon/nx-dokku:deploy",
  "options": {
    "host": "development-server.xyz",
    "app": "service-xyz",
    "localBranch": "develop"
  }
}

While this does work, it isn't as clean or consistent with other Nx plugins, making it a bit harder to maintain and understand for developers switching between projects.
Additional context
Having consistent configuration mechanisms across Nx plugins would simplify the developer experience when using nx affected within CI/CD pipelines.

Apologies for the oversight. I just realized, that I made a mistake when configuring the environments.
For anyone facing a similar confusion, make sure your configuration excludes the options key when defining different environments. Here's the correct structure for reference:
"deploy": {
  "executor": "@glowdragon/nx-dokku:deploy",
  "configurations": {
    "production": {
      "host": "production-server.xyz",
      "app": "service-xyz",
      "localBranch": "main"
    },
    "development": {
      "host": "development-server.xyz",
      "app": "service-xyz",
      "localBranch": "develop"
    }
  },
  "defaultConfiguration": "development"
}


Not enough info: types of locks, Shared, Update, IntentShared, IntentExclusive, or Exclusive

There is not enough information on the types of locks that can be acquired or where to learn more about them and their pros and cons. Please link to the exact meaning of Shared, Update, IntentShared, IntentExclusive, or Exclusive.

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

ID: 1bfc5142-4589-ac67-69c2-65d7760719e4
Version Independent ID: 02464294-1e91-30e6-8489-51ee2ee45a31
Content: sp_getapplock (Transact-SQL) - SQL Server
Content Source: docs/relational-databases/system-stored-procedures/sp-getapplock-transact-sql.md
Product: sql
Technology: system-objects
GitHub Login: @stevestein
Microsoft Alias: sstein

@samrueby Thank you for the feedback, assigning this to the author.
In the meantime, please refer to the Lock Compatibility matrix.

@samrueby - thanks for the feedback. I updated the article to include a link to: https://docs.microsoft.com/sql/relational-databases/sql-server-transaction-locking-and-row-versioning-guide#lock_modes
Thanks!
#please-close


conf: CODEOWNERS

Re: #472
Goal
Address https://github.com/FoveaCentral/vaccinesignup/security/code-scanning/4.
Approach

Add CODEOWNERS as described in Introducing code owners .

Signed-off-by: Roderick Monje<EMAIL_ADDRESS>

Pull Request Test Coverage Report for Build<PHONE_NUMBER>1
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.697%

Totals

Change from base Build<PHONE_NUMBER>0:
0.0%

Covered Lines:
125

Relevant Lines:
132

💛  - Coveralls


Token expired, error: {"detail":"Not found"}

When token is expired and user is trying to connect to the app, it throw error. Token should be deleted after its expired or force user to login again.

Removed expiration date from token. Right now token cant expire and it is removed only by logout.


Implement Some Sort of Script Editor

Expected Behavior
The script editor can work one of two ways:
(1) - The script editor is its own separate entity that you can access by itself
(2) - The script editor is built into the map-creator, and starts when you place an event tile that requires a script to function
Category of Issue
Todo

Script editor has been finished except for the data portion, which has nothing. The data editor will be different for each type of script. That comes soon.

Script editor now loads, saves, etc. A new issue will be started for the data editor.


E3036 New rule for UpdateReplacePolicy values

Issue #, if available:
Description of changes:
New rule to validate values for UpdateReplacePolicy properties on all resources.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report

Merging #635 into master will increase coverage by 0.17%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #635      +/-   ##
==========================================
+ Coverage   84.88%   85.05%   +0.17%
==========================================
  Files         113      115       +2
  Lines        6470     6546      +76
  Branches     1513     1525      +12
==========================================
+ Hits         5492     5568      +76
  Misses        627      627
  Partials      351      351

Impacted Files
Coverage Δ

src/cfnlint/rules/resources/UpdateReplacePolicy.py
100% <100%> (ø)

src/cfnlint/rules/resources/DeletionPolicy.py
100% <100%> (ø)

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 746e602...fd80b02. Read the comment docs.