Force TLS1.2 in cosmos accounts

See https://azure.github.io/PSRule.Rules.Azure/en/rules/Azure.Cosmos.MinTLS/

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: azd-starter-bicep
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/azd-starter-bicep -b pr/3983

View Changes | Compare Changes

Project: todo-csharp-cosmos-sql
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-csharp-cosmos-sql -b pr/3983

View Changes | Compare Changes

Project: todo-csharp-sql-swa-func
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-csharp-sql-swa-func -b pr/3983

View Changes | Compare Changes

Project: todo-csharp-sql
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-csharp-sql -b pr/3983

View Changes | Compare Changes

Project: todo-java-mongo-aca
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo-aca -b pr/3983

View Changes | Compare Changes

Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3983

View Changes | Compare Changes

Project: todo-nodejs-mongo-aca
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-nodejs-mongo-aca -b pr/3983

View Changes | Compare Changes

Project: todo-nodejs-mongo-aks
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-nodejs-mongo-aks -b pr/3983

View Changes | Compare Changes

Project: todo-nodejs-mongo-swa-func
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-nodejs-mongo-swa-func -b pr/3983

View Changes | Compare Changes

Project: todo-nodejs-mongo
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-nodejs-mongo -b pr/3983

View Changes | Compare Changes

Project: todo-python-mongo-aca
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-python-mongo-aca -b pr/3983

View Changes | Compare Changes

Project: todo-python-mongo-swa-func
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-python-mongo-swa-func -b pr/3983

View Changes | Compare Changes

Project: todo-python-mongo
Remote: azure-samples-staging
Branch: pr/3983
You can initialize this project with:
azd init -t Azure-Samples/todo-python-mongo -b pr/3983

View Changes | Compare Changes


Deploy 102 - Second NativeStakingStrategy

Contracts

Contract
Address

NativeStakingFeeAccumulator2Proxy
0xfEE31c09fA5E9cdbC1f80C90b42B58640be91DDF

FeeAccumulator (impl)
0x9178A430b0FC78adEc0aE1686557a53EbB382361

NativeStakingSSVStrategy (impl, Second Strategy)
0xAf4Bc205429Cc6677B891701E94fdb1D6316c682

NativeStakingSSVStrategy (impl, First Strategy)
0x09eB24C1fCca0ee230d20901C6832538A171f0D8

NativeStakingSSVStrategyProxy (proxy, First Strategy)
0x34edb2ee25751ee67f68a45813b22811687c0238

NativeStakingSSVStrategy2Proxy (proxy, Second Strategy)
0x4685db8bf2df743c861d71e6cfb5347222992076

Governance

Proposal:<PHONE_NUMBER>1961988076478290503619170282582190552945502651596812949787910054542
Proposal Tx on Etherscan

Deploy checklist
Two reviewers complete the following checklist:
- [ ] All deployed contracts are listed in the deploy PR's description
- [ ] Deployed contract's verified code (and all dependencies) match the code in master
- [ ] The transactions that interacted with the newly deployed contract match the deploy script.
- [ ] Governance proposal matches the deploy script
- [ ] Smoke tests pass after fork test execution of the governance proposal

[x] All deployed contracts are listed in the deploy PR's description

[x] NativeStakingFeeAccumulator2Proxy
[x] FeeAccumulator
[x] NativeStakingSSVStrategy, second strategy
[x] NativeStakingSSVStrategy, first strategy

[ ] Deployed contract's verified code (and all dependencies) match the code in master
[ ] The transactions that interacted with the newly deployed contract match the deploy script.
[ ] Governance proposal matches the deploy script

[x] Add new strategy to vault
[x] Configure Harvester to support the strategy
[x] Set harvester to the strategy
[x] Configure the fuse interval
[x] Set validator registrator to the Defender Relayer
[x] Set staking threshold
[x] Set staking monitor
[x] Upgrade the first Native Staking Strategy

[ ] Smoke tests pass after fork test execution of the governance proposal


HDDS-7851. Apply flush and compact on all column families

What changes were proposed in this pull request?
The operation of flush and compact only works for "default" column family.
This ticket is to also apply the operations on other column families.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-7851
How was this patch tested?
unit test.

@ChenSammi Could you help to review the PR?

Should the column family be flushed when flushing the wal as well? cc @errose28 @duongkame

Thank you at @symious for fixing this issue.

Should the column family be flushed when flushing the wal as well?

@kerneltime Thank you for the review. Are your refering to the function of "db.flushWal(bool)"? I think the wal is shared by all column families, should be no need of this operation.

@GeorgeJahad can you please take a look?

Should the column family be flushed when flushing the wal as well?

@kerneltime Thank you for the review. Are your refering to the function of "db.flushWal(bool)"? I think the wal is shared by all column families, should be no need of this operation.

I think WAL is flushed (to OS cache) automatically after each writes to achieve durability (unless Ozone has a config to disable it).
On the other hand, this PR deals with flushing column families' memtables to SST files to persist the compaction after a snapshot is taken. We already flush memtable of the default column family so it makes sense to flush all the column families as well.

Some of these methods are already implemented in the snapshot branch (HDDS-6517). Please take a look.

Some of these methods are already implemented in the snapshot branch (HDDS-6517). Please take a look.

@sadanand48 Thank you for the review. I think it should be easy to resolve the conflicts, right?

Thank you for the review. I think it should be easy to resolve the conflicts, right?

The snapshot branch got merged to master today, The conflicts need to be resolved from this PR now.


Enhancement: Add support for importing obsidian vaults

Title.
A user should be able to export their obsidian vault and have it ingested and parsed into the DB without user interaction.
Note titles should gained from the file names.

Functionality added last night. Need to create an actual vault to import to test.


Formatting Developer Documentation | Conflicting guidelines?

Hello,
I found the page Formatting developer text elements in conflict to the code formatting section of Text formatting guidelines.
Is the first page outdated? The second page seems to suggest that it is referring the other guidelines as "old".

Why? Older style guides specify bold for many of these text elements. However, most articles are localized, and code style tells the translator to leave that part of the text untranslated.

Background: @Jay-o-Way is working to improve the Microsoft PowerToys Developer Documentation. There is an ongoing discussion which text formatting guidelines should be applied.

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

ID: 548ee875-6179-9f2d-7e1d-6af87a7d3a2f
Version Independent ID: f6df8d87-ab99-c35e-9d67-29ca979c10f5
Content: Formatting developer text elements - Microsoft Style Guide
Content Source: styleguide/developer-content/formatting-developer-text-elements.md
Product: non-product-specific
GitHub Login: @pallep
Microsoft Alias: pallep

Looking at issues and prs throughout this repo, I'm thinking they lost the password to this account. There have been no serious responses since years. How is that possible?! 🤨

Glad I found this! Was just about to post the same issue. Yes, code should always be monospace.


libui: adds missing pkg-config file and headers

Motivation for this change
In my previos PR #17005 I added the libui library. To test that the library not only was built successfully, but also that it was working, I used the test application that was shipped with the library.
However, the test application build uses a relative path for the shared library and the headers. So building and running the test program worked since it was built in the library's source tree.
But when you want to use the library as a nixpkg dependency the library dir will only contain the shared library libui.so.0:
$ tree /nix/store/3bx887yqs7xkyfq29r1a27r9v94phy5r-libui-3.1.a
/nix/store/3bx887yqs7xkyfq29r1a27r9v94phy5r-libui-3.1.a
└── libui.so.0

Which means you can't include the headers and there's not a pkg-config entry to use, making this library unusable.
This PR adds a pkg-config file and copying of the header files. Which makes the result look like this:
$ tree /nix/store/pcahv5nbjlw9llmvbsrbvzj3hq964vdc-libui-3.1a
/nix/store/pcahv5nbjlw9llmvbsrbvzj3hq964vdc-libui-3.1a
├── include
│   ├── ui.h
│   └── ui_unix.h
└── lib
    ├── libui.so -> /nix/store/pcahv5nbjlw9llmvbsrbvzj3hq964vdc-libui-3.1a/lib/libui.so.0
    ├── libui.so.0
    └── pkgconfig
        └── libui.pc

To see what files were needed I looked at the projects issue 116 and then I built the controlgallery example as a separate nixpkg. I changed all relative header paths in the source file to #include <ui.h> and used the following Makefile:
TARGET = main

CFLAGS=-g -Wall -Wextra $(shell pkg-config --cflags libui)
LDFLAGS=$(shell pkg-config --libs libui)

all: $(TARGET)

And built it with the following default.nix file:
{ stdenv, lib, makeWrapper, pkgconfig, libui }:

let
  shortName = "libui-test";
  version   = "1.0.0";
in
  stdenv.mkDerivation rec {
    name = "${shortName}-${version}";
    src  = ./src;

    buildInputs = [ makeWrapper pkgconfig libui ];

    installPhase = ''
      mkdir -p $out/bin

      cp main $out/bin/${shortName}

      wrapProgram $out/bin/${shortName} \
        --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath
            [ libui ]
          }"
    '';
  }

The resulting executable works and links against libui and gtk:
$ ldd result/bin/.libui-test-wrapped | grep libui
        libui.so.0 => /nix/store/7mqskw0dxff96g8x6zg5rxyjvhbxmp65-libui-3.1a/lib/libui.so.0 (0x00007f7d827e8000)

$ ldd result/bin/.libui-test-wrapped | grep gtk
        libgtk-3.so.0 => /nix/store/faxfzshl9qw4677cy4v2yk1ah8g649kh-gtk+3-3.18.5/lib/libgtk-3.so.0 (0x00007feb43ed8000)
        libgdk-3.so.0 => /nix/store/faxfzshl9qw4677cy4v2yk1ah8g649kh-gtk+3-3.18.5/lib/libgdk-3.so.0 (0x00007feb43c18000)

Here's a screenshot of the program running:

Things done

[ ] Tested using sandboxing
(nix.useChroot on NixOS,
or option build-use-chroot in nix.conf
on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] OS X
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

Dude, your issue description is spot-on. :fireworks: :+1: :heart_eyes_cat:

In general, I think the ${shortName} variables are a bit over the top / unnecessary since it isn't likely to change (ie: it isn't a template we're going to apply to other projects.)
That said: it compiles for me and looks good.

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

@grahamc Thanks for the feedback! :+1:
Will keep that in mind next time I'm writing a package.

Should the pkg-config file be put in libui as well?

Hey @andlabs!
Sorry for adding noise to your issue tracker, I wasn't aware the GitHub made references in other projects when linking to issues.
IMO, the pkg-config file shouldn't be added in the project source code, it should be added in the distro specific package. The pkg-config file contains absolute paths to the library headers and shared library, which can be different depending on what distro is being used.
That's why I added the pkg-config file here in the NixOS package, instead of creating a PR in your project.
Well, that's my 2 cents! Good luck with your cool project :smiley:

Should it be generated by cmake then, in that case? I assume you're running cmake properly configured to place things the way you want, and I'm getting around to solving the install rule issue now. In fact, I'm about to link these two threads together with a comment there...


Ready event correctly fires

The ready event will now fire when all shards are ready

should emit Events.CLIENT_READY, not ShardEvents.READY, no?
Anyway no need to overcomplicate it. This should work:
this.on(Discord.Constants.Events.SHARD_RESUME, () => {
    if(!this.readyAt) { this.ws.checkShardReady(); }
})

Yes you're right it should be CLIENT_READY it doesn't make much of a difference because both constants are "ready" and so it emits the same event but I will add it in for completeness
Not quite sure what you mean with checkShardReady ? That method doesn't seem to exist?
The reason I added the extra logic is to only emit the ready event once all shards were ready not just the first one.

checkShardReady does exactly that
https://github.com/discordjs/discord.js/blob/master/src/client/websocket/WebSocketManager.js#L394

also, its better to use Discord.Constants.Events rather than import Constants from discord.js to account for possible modifications done to Discord in classes.js

Noted. Added those changes. Couldn't find that method but seems to do exactly what I intended ahaha
Thanks


copy error on step 2 - headline Task

"User "q" again to create a promise"

Excuse me, I didn't understand the problem. Where is copy error?

sorry wrong repo :< lol


Creating indices programmatically

How can create indices programmatically?

Hi,
currently the MongoDbGenericRepository does not support this, but I am working on it ;)
In a few weeks when I have tested everything, I will release a new version of the MongoDbGenericRepository nuget package that will have this feature.
In the mean time you can always roll your own, by extending the repo and using the HandlePartitioned<TDocument,TKey>(partitionKey) handler to get the collections in a generic fashion.

This is now covered by the following release in MongoDbGenericRepository:
https://github.com/alexandre-spieser/mongodb-generic-repository/releases/tag/1.3.8
The reference of the MongoDbGenericRepository version has been updated in the latest release of this package.
Install-Package AspNetCore.Identity.MongoDbCore -Version 1.0.9

Hi,
currently the MongoDbGenericRepository does not support this, but I am working on it ;)
In a few weeks when I have tested everything, I will release a new version of the MongoDbGenericRepository nuget package that will have this feature.
In the mean time you can always roll your own, by extending the repo and using the HandlePartitioned<TDocument,TKey>(partitionKey) handler to get the collections in a generic fashion.
PS: The AspNetCore.Identity.MongoDbCore package will never expose the index creation functionality in its interface. It is not its responsibility, however its dependency MongoDbGenericRepository will however allow you to do that.

Please. Show me how i can extend repo and create index

It's all in the docs.
https://github.com/alexandre-spieser/mongodb-generic-repository#index-management


Ubuntu1604  build issues

Thanks for your reply. Some questions no longer appear, but there are still the following questions:
make -j 4
[ 1%] Performing update step for 'googletest'
[ 2%] Built target mvfst_bufutil
[ 3%] Built target mvfst_constants
[ 3%] Performing configure step for 'googletest'
[ 4%] Built target mvfst_exception
loading initial cache file /home/h3c/ywc/mvfst/_build/build/googletest/tmp/googletest-cache-RelWithDebInfo.cmake
[ 5%] Built target mvfst_looper
-- Configuring done
[ 7%] Built target mvfst_codec_types
-- Generating done
-- Build files have been written to: /home/h3c/ywc/mvfst/_build/build/googletest/src/googletest-build
[ 8%] Performing build step for 'googletest'
[ 9%] Built target mvfst_codec_decode
[ 36%] Built target gmock_main
[ 63%] Built target gmock
[ 81%] Built target gtest
[100%] Built target gtest_main
[ 10%] Built target mvfst_codec_packet_number_cipher
[ 10%] No install step for 'googletest'
[ 10%] Completed 'googletest'
[ 11%] Built target googletest
Scanning dependencies of target PacketNumberTest
Scanning dependencies of target QuicConnectionIdTest
Scanning dependencies of target QuicIntegerTest
[ 14%] Built target mvfst_handshake
[ 14%] Building CXX object quic/codec/test/CMakeFiles/QuicConnectionIdTest.dir/QuicConnectionIdTest.cpp.o
[ 15%] Built target mvfst_codec_pktbuilder
Scanning dependencies of target FizzPacketNumberCipherTest
[ 16%] Building CXX object quic/codec/test/CMakeFiles/QuicIntegerTest.dir/QuicIntegerTest.cpp.o
[ 16%] Building CXX object quic/codec/test/CMakeFiles/PacketNumberTest.dir/PacketNumberTest.cpp.o
[ 16%] Building CXX object quic/handshake/test/CMakeFiles/FizzPacketNumberCipherTest.dir/FizzPacketNumberCipherTest.cpp.o
[ 16%] Building CXX object quic/codec/test/CMakeFiles/QuicConnectionIdTest.dir///common/test/TestMain.cpp.o
[ 17%] Linking CXX executable QuicConnectionIdTest
[ 17%] Building CXX object quic/codec/test/CMakeFiles/QuicIntegerTest.dir///common/test/TestMain.cpp.o
[ 17%] Built target QuicConnectionIdTest
[ 18%] Building CXX object quic/handshake/test/CMakeFiles/FizzPacketNumberCipherTest.dir///common/test/TestMain.cpp.o
[ 19%] Building CXX object quic/codec/test/CMakeFiles/PacketNumberTest.dir///common/test/TestMain.cpp.o
[ 20%] Linking CXX executable QuicIntegerTest
[ 21%] Built target mvfst_codec
[ 21%] Building CXX object quic/state/CMakeFiles/mvfst_state_machine.dir/StateData.cpp.o
[ 21%] Linking CXX executable PacketNumberTest
[ 21%] Built target QuicIntegerTest
[ 22%] Building CXX object quic/state/CMakeFiles/mvfst_state_machine.dir/PendingPathRateLimiter.cpp.o
[ 22%] Linking CXX executable FizzPacketNumberCipherTest
[ 22%] Built target PacketNumberTest
[ 22%] Built target FizzPacketNumberCipherTest
/home/h3c/ywc/mvfst/quic/state/StateData.cpp: In member function ‘bool quic::QuicConnectionStateBase::retireAndSwitchPeerConnectionIds()’:
/home/h3c/ywc/mvfst/quic/state/StateData.cpp:161:22: error: could not convert ‘((quic::QuicConnectionStateBase*)this)->quic::QuicConnectionStateBase::nodeType’ from ‘quic::QuicNodeType’ to ‘bool’
auto& mainPeerId = nodeType == QuicNodeType::Client ? serverConnectionId
^
quic/state/CMakeFiles/mvfst_state_machine.dir/build.make:110: recipe for target 'quic/state/CMakeFiles/mvfst_state_machine.dir/StateData.cpp.o' failed
make[2]: *** [quic/state/CMakeFiles/mvfst_state_machine.dir/StateData.cpp.o] Error 1
CMakeFiles/Makefile2:4426: recipe for target 'quic/state/CMakeFiles/mvfst_state_machine.dir/all' failed
make[1]: *** [quic/state/CMakeFiles/mvfst_state_machine.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

This is such a strange error though. == has higher precedence than = and ?=. Then after that, ?= goes first since = and ?= are same precedence and right-to-left associativity.
What compiler is this?

OK i'm trying this on my WSL today

Well at least on a WSL Ubuntu, it builds fine.
@weiyuxingchen Can you pull latest, delete the _build dir and try again, or at least let me know what compiler you use?

@yangchi I got the same error with the newest codes on Centos 7.5 . I used gcc/g++ 5.3.0，cmake 3.10 . Details：
[root@localhost mvfst]# cd mbuild/
[root@localhost mbuild]# ls
CMakeCache.txt  CMakeFiles  cmake_install.cmake  Makefile  mvfst-config.cmake  quic
[root@localhost mbuild]# make -j4
[  1%] Built target mvfst_bufutil
[  3%] Built target mvfst_constants
[  5%] Built target mvfst_exception
[  8%] Built target mvfst_looper
[ 14%] Built target mvfst_codec_types
[ 16%] Built target mvfst_codec_decode
[ 18%] Built target mvfst_codec_packet_number_cipher
[ 26%] Built target mvfst_handshake
[ 28%] Built target mvfst_codec_pktbuilder
[ 32%] Built target mvfst_codec
[ 33%] Building CXX object quic/state/CMakeFiles/mvfst_state_machine.dir/StateData.cpp.o
/home/h3c/ywc/mvfst/quic/state/StateData.cpp: 在成员函数‘bool quic::QuicConnectionStateBase::retireAndSwitchPeerConnectionIds()’中:
/home/h3c/ywc/mvfst/quic/state/StateData.cpp:161:22: 错误：could not convert ‘((quic::QuicConnectionStateBase*)this)->quic::QuicConnectionStateBase::nodeType’ from ‘quic::QuicNodeType’ to ‘bool’
auto& mainPeerId = nodeType == QuicNodeType::Client ? serverConnectionId
^
make[2]: *** [quic/state/CMakeFiles/mvfst_state_machine.dir/StateData.cpp.o] 错误 1
make[1]: *** [quic/state/CMakeFiles/mvfst_state_machine.dir/all] 错误 2
make: *** [all] 错误 2
[root@localhost mbuild]#
[root@localhost mbuild]# gcc -v
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-unknown-linux-gnu/5.3.0/lto-wrapper
目标：x86_64-unknown-linux-gnu
配置为：/usr/local/src/gcc-5.3.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
线程模型：posix
gcc 版本 5.3.0 (GCC)

@yangchi  thanks for your reply.
The compiler I use is gcc5.4.0. There will be many syntax errors, but I have tried to avoid them. Now the problems have been solved. Thank you again！


update elasticsearch version

to get rid of Hashie Mash warning and keep up with new development

[ ] update gem elasticsearch_rails #806
[ ] https://www.elastic.co/guide/en/elasticsearch/reference/5.0/setup-upgrade.html

Some links:
https://logz.io/blog/upgrade-elasticsearch-5/

Maybe this migration helper plugin can help as well: https://github.com/elastic/elasticsearch-migration/blob/master/README.asciidoc

https://mendab1e.github.io/dev/2019/03/09/how_not_to_integrate_elasticsearch_testing_with_rspec.html

https://gist.github.com/zaziemo/1c8f6ed25b17b4200f1f53068e79f905

Already did some work on this branch: https://github.com/rubymonsters/speakerinnen_liste/compare/mah-upgrade-elasticsearch

Steps towards upgrade elastic search locally:

Have production data on local machine
Re-Index elasticsearch with new data
Make sure website on localhost still works
Upgrade elasticsearch server and API in the docker container - look at @zaziemo 's branch first:
(links which might be useful for this step that @zaziemo  referred to:

https://www.elastic.co/upgrade_guide
https://logz.io/blog/upgrade-elasticsearch-5/
https://www.linkedin.com/pulse/upgrading-elasticsearch-2x-5x-gian-giovani/
https://github.com/elastic/elasticsearch-migration/tree/2.x

Upgrade elasticsearsch rail gems - look at @zaziemo 's branch first
Test search on website (i.e number of results, autosuggestions) ->
Look at changes at elasticsearch API and gems API
(links that might be usefull:

https://www.elastic.co/guide/en/elasticsearch/reference/5.0/breaking-changes-5.0.html
https://www.elastic.co/guide/en/elasticsearch/reference/5.0/search-suggesters-completion.html)

Fix search specs (look at @zaziemo list above).
(link that might be useful: https://mendab1e.github.io/dev/2019/03/09/how_not_to_integrate_elasticsearch_testing_with_rspec.html)

https://www.elastic.co/guide/en/elasticsearch/reference/5.0/breaking_50_suggester.html
https://www.elastic.co/guide/en/elasticsearch/reference/5.0/search-suggesters-completion.html
https://www.elastic.co/blog/strings-are-dead-long-live-strings

@netagonen Hi Neta, about step 4 (Upgrade elasticsearch server and API in the docker container): I think all you have to do is to specify a later version of the elasticsearch image in the docker-compose.yml. At the moment it is image: elasticsearch:2.4.5 .
Here you can find all available image versions: https://hub.docker.com/_/elasticsearch and then search under 'tags' for your preferred version.

@langjoh thanks fir the reply and sorry for the late response- you are totally right! we did spend some time until we realize it. I still have a question regarding the volumes: Could you maybe help?
in the docker-compose.yml we commented out volumes: - elastic_data:/usr/share/elasticsearch/data2
so version 6 could work, otherwise there is an error. we need to find out how to make it work. Maybe some helpfull links:
https://discuss.elastic.co/t/elastic-elasticsearch-docker-not-assigning-permissions-to-data-directory-on-run/65812/4
https://github.com/elastic/elasticsearch-docker/issues/21

hi @zaziemo ,
There is some progress :) all documented here: https://cloud.speakerinnen.space/f/22379
Can also move it here to the issue if it's better. see also PR #1091 .
There is still more work to do...

@netagonen @alonpeer concerning min_score
I think we need one - or probably some more tweaking with the tie_breaker or field weighs.
Can you explain how the profiles in the search results are ordered? Is it after the scores?
I made tests with the following search terms:

for „Social Business“, being in :en

Localhost: 1.108 speakers
examples for non matching profiles (for my understanding):
http://localhost:3000/en/profiles/nina-mohimi
http://localhost:3000/en/profiles/arlene-buehler
http://localhost:3000/en/profiles/alexandra-grassler
Production: 388 speakers (but there are also some profiles I would not consider matching to the search terms)

„programmieren frauen“, being in :en

localhost: 541
examples for non matching profiles (for my understanding)::
http://localhost:3000/en/profiles/anja-blodow
http://localhost:3000/en/profiles/regula-simon
http://localhost:3000/en/profiles/annika-peters
not really matching but cool to list it: http://localhost:3000/en/profiles/janina-tiedemann
--> which is an argument for being not so strict with the matching terms
production: 159

@netagonen @alonpeer
Concerning autosuggestions:
Here I don't get the same autosuggestions as on production which is good, because currently the suggester seems to be buggy if not broken :(
I would say it works as expected.
The suggested terms seem to be sorted by a score. Do you know what this score is about?

Solution for 0 Matches --> I opened a new issue. I think this is out of the scope for this one here.

@netagonen concerning cities: I think it is good to have the cities not analyzed. I remember faintly that we had problems with people having a city name as their real name. Besides as the cities serve as filters they are already covered.

@netagonen concerning the HashWrapper. Do I get it right that we have to add it somehow? If we have to, we should do it. This was one of the reasons we wanted to update elasticsearch in the first place (we were annoyed by these warnings.)

Hi @zaziemo. I just checked, and the Hashie::Mash#key warnings appear on my localhost when I'm on the master branch, but no longer appear on the neta/upgrade-elastic-6.7 branch. 🎉

The country filtering does not work anymore.
To reproduce:

search for anything
click on one country in the most left column
You get this view


Memory config

@akanto
the hardcoded memory defaults are based on the result of the utility script:
python hdp_manual_install_rpm_helper_files-<IP_ADDRESS>/scripts/yarn-utils.py -c 2 -m 8 -d 4 -k False

2 cores, 8 gb memory and 4 disks per node without HBase - it should be enough for all "minviable" resources. The default blueprints are also updated because they have smaller values hardcoded and the blueprint processor doesn't override existing configuration entries.

Jenkins build finished, all tests passed.
Refer to this link for build results: http://ci.sequenceiq.com/job/cloudbreak-pull-request/1818/


Enable AVX2 functions to be built with BMI2 instructions

While these are technically different instructions, no such CPU exists that has AVX2 that doesn't have BMI2. Enabling BMI2 allows us to eliminate several flag stalls by having flagless versions of shifts, and allows us to not clobber and move around GPRs so much in scalar code. There's usually a sizeable benefit for enabling it. Since we're building with BMI2 for AVX2 functions, let's also just make sure the CPU claims to support it (just to cover our bases).

Summary by CodeRabbit

New Features

Enhanced AVX2 optimizations by adding support for the BMI2 instruction set, improving performance on compatible CPUs.
Introduced new checks for various compiler capabilities and architecture-specific optimizations, ensuring better support for modern hardware.

Bug Fixes

Updated logic for selecting optimized functions to require both AVX2 and BMI2 support, ensuring correct function assignments based on CPU capabilities.

Develop 28 Nov
          6,155.37 msec task-clock:u                     #    1.000 CPUs utilized               ( +-  0.01% )
                 0      context-switches:u               #    0.000 /sec
                 0      cpu-migrations:u                 #    0.000 /sec
               144      page-faults:u                    #   23.394 /sec                        ( +-  0.34% )
    21,365,062,998      cycles:u                         #    3.471 GHz                         ( +-  0.01% )  (62.48%)
    35,582,552,199      instructions:u                   #    1.67  insn per cycle              ( +-  0.02% )  (74.99%)
     3,754,368,604      branches:u                       #  609.934 M/sec                       ( +-  0.02% )  (75.01%)
       174,548,734      branch-misses:u                  #    4.65% of all branches             ( +-  0.02% )  (75.01%)
     6,678,724,547      L1-dcache-loads:u                #    1.085 G/sec                       ( +-  0.00% )  (75.02%)
       233,855,267      L1-dcache-load-misses:u          #    3.50% of all L1-dcache accesses   ( +-  0.08% )  (75.01%)
        17,771,941      LLC-loads:u                      #    2.887 M/sec                       ( +-  0.75% )  (49.98%)
                64      LLC-load-misses:u                #    0.00% of all LL-cache accesses    ( +- 43.98% )  (49.97%)

 Level   Comp   Comptime min/avg/max/stddev  Decomptime min/avg/max/stddev  Compressed size
 1     54.185%      0.106/0.110/0.111/0.001        0.036/0.039/0.042/0.002        8,526,745
 2     43.871%      0.198/0.202/0.204/0.001        0.034/0.038/0.040/0.001        6,903,702
 3     42.390%      0.247/0.250/0.253/0.002        0.032/0.038/0.040/0.002        6,670,664
 4     41.644%      0.272/0.278/0.281/0.002        0.034/0.037/0.038/0.001        6,553,205
 5     41.215%      0.303/0.311/0.315/0.003        0.034/0.037/0.039/0.001        6,485,659
 6     41.032%      0.354/0.360/0.363/0.003        0.035/0.036/0.037/0.001        6,456,912
 7     40.778%      0.494/0.501/0.506/0.003        0.030/0.035/0.037/0.002        6,416,941
 8     40.704%      0.609/0.616/0.621/0.003        0.030/0.035/0.037/0.002        6,405,249
 9     40.409%      0.904/0.911/0.917/0.004        0.030/0.035/0.037/0.002        6,358,951

 avg1  42.914%                        0.393                          0.037
 tot                                106.149                          9.901       60,778,028

   text    data     bss     dec     hex filename
 138830    1312       8  140150   22376 libz-ng.so.2

PR #1816
          5,154.35 msec task-clock:u                     #    1.000 CPUs utilized               ( +-  0.01% )
                 0      context-switches:u               #    0.000 /sec
                 0      cpu-migrations:u                 #    0.000 /sec
               143      page-faults:u                    #   27.744 /sec                        ( +-  0.28% )
    17,778,636,206      cycles:u                         #    3.449 GHz                         ( +-  0.01% )  (62.48%)
    32,149,287,502      instructions:u                   #    1.81  insn per cycle              ( +-  0.01% )  (75.00%)
     3,756,493,111      branches:u                       #  728.801 M/sec                       ( +-  0.01% )  (75.01%)
       173,624,532      branch-misses:u                  #    4.62% of all branches             ( +-  0.02% )  (75.01%)
     6,365,551,872      L1-dcache-loads:u                #    1.235 G/sec                       ( +-  0.00% )  (75.01%)
       231,548,653      L1-dcache-load-misses:u          #    3.64% of all L1-dcache accesses   ( +-  0.03% )  (75.01%)
        17,957,764      LLC-loads:u                      #    3.484 M/sec                       ( +-  1.01% )  (49.98%)
                39      LLC-load-misses:u                #    0.00% of all LL-cache accesses    ( +- 48.35% )  (49.98%)

 Level   Comp   Comptime min/avg/max/stddev  Decomptime min/avg/max/stddev  Compressed size
 1     54.185%      0.107/0.109/0.111/0.001        0.028/0.030/0.032/0.001        8,526,745
 2     43.871%      0.196/0.201/0.203/0.002        0.028/0.031/0.033/0.001        6,903,702
 3     42.390%      0.247/0.251/0.253/0.002        0.025/0.029/0.031/0.002        6,670,664
 4     41.644%      0.274/0.279/0.282/0.002        0.023/0.029/0.031/0.002        6,553,205
 5     41.215%      0.306/0.311/0.315/0.003        0.024/0.028/0.032/0.002        6,485,659
 6     41.032%      0.352/0.359/0.363/0.003        0.025/0.029/0.030/0.002        6,456,912
 7     40.778%      0.496/0.501/0.505/0.003        0.024/0.028/0.030/0.002        6,416,941
 8     40.704%      0.610/0.617/0.621/0.003        0.023/0.028/0.031/0.002        6,405,249
 9     40.409%      0.906/0.910/0.912/0.002        0.026/0.028/0.030/0.001        6,358,951

 avg1  42.914%                        0.393                          0.029
 tot                                106.131                          7.810       60,778,028

   text    data     bss     dec     hex filename
 138702    1312       8  140022   222f6 libz-ng.so.2

# Retest with different unrelated code added to make sure we didn't just hit a rare golden cacheline alignment
 Level   Comp   Comptime min/avg/max/stddev  Decomptime min/avg/max/stddev  Compressed size
 1     54.185%      0.105/0.109/0.111/0.002        0.029/0.031/0.033/0.001        8,526,745
 2     43.871%      0.198/0.202/0.204/0.002        0.028/0.031/0.033/0.001        6,903,702
 3     42.390%      0.246/0.250/0.253/0.002        0.026/0.030/0.032/0.002        6,670,664
 4     41.644%      0.276/0.279/0.282/0.002        0.025/0.029/0.031/0.002        6,553,205
 5     41.215%      0.301/0.310/0.314/0.003        0.025/0.029/0.031/0.002        6,485,659
 6     41.032%      0.353/0.358/0.361/0.002        0.024/0.028/0.030/0.002        6,456,912
 7     40.778%      0.493/0.502/0.507/0.004        0.026/0.028/0.031/0.001        6,416,941
 8     40.704%      0.609/0.616/0.620/0.003        0.023/0.028/0.031/0.002        6,405,249
 9     40.409%      0.895/0.909/0.916/0.005        0.024/0.029/0.030/0.001        6,358,951

 avg1  42.914%                        0.393                          0.029
 tot                                106.081                          7.854       60,778,028

Wow.. I had to retest that because it was such a big difference.
@KungFuJesus Can you do a comparison test with AVX512 disabled also? I am still a little unsure whether this is actually real or not.
In the perf test we can see that the count of instructions executed is down by 9.65%, that is pretty major, so this indicates this might actually be a real speedup.
Inflate: Perf test is 16% faster. Deflatebench is 21% faster. 😮
(Perf and Deflatebench use different datasets)
Deflate: No difference.

@KungFuJesus If this speedup is the real deal, I wonder what the AVX512 is in comparison now, it feels like the benefit must have been reduced by quite a bit.

@KungFuJesus If this speedup is the real deal, I wonder what the AVX512 is in comparison now, it feels like the benefit must have been reduced by quite a bit.

When doing an initial improvement, I tend to compare against -march=native builds, which would have had this enabled.  I don't believe it will be significantly undercut, but let me check.

So here's this PR, as is with inflate_fast_avx512 and all its chunksetting:

Could you do one without this PR as well?

So here's this PR, as is with inflate_fast_avx512 and all its chunksetting:

Could you do one without this PR as well?

I can but it's going to take the avx512 path which will have BMI2 enabled as well.  I can also use this as the baseline for #1821
OS: Linux 6.11.6-gentoo-x86_64 #3 SMP PREEMPT_DYNAMIC Mon Nov  4 10:41:27 EST 2024 x86_64
CPU: Intel(R) Core(TM) i9-10940X CPU @ 3.30GHz
Tool: /home/adam/scratch/zlib-ng/build_clean/minigzip Size: 154,848 B
Levels: 0-9
Runs: 10         Trim worst: 2

 Level   Comp   Comptime min/avg/max/stddev  Decomptime min/avg/max/stddev  Compressed size
 0    100.008%      0.017/0.019/0.022/0.002        0.015/0.018/0.021/0.002      211,973,953
 1     44.409%      0.848/0.858/0.863/0.006        0.332/0.336/0.342/0.004       94,127,497
 2     35.519%      1.427/1.441/1.447/0.008        0.324/0.329/0.337/0.004       75,286,322
 3     33.844%      1.774/1.786/1.792/0.006        0.304/0.312/0.318/0.005       71,735,218
 4     33.146%      2.089/2.099/2.116/0.008        0.295/0.309/0.319/0.008       70,255,223
 5     32.642%      2.407/2.411/2.417/0.004        0.293/0.302/0.307/0.004       69,187,419
 6     32.483%      2.918/2.927/2.935/0.005        0.294/0.302/0.309/0.006       68,850,776
 7     32.255%      4.094/4.115/4.131/0.013        0.297/0.304/0.310/0.005       68,366,759
 8     32.167%      6.582/6.598/6.627/0.018        0.291/0.305/0.310/0.006       68,180,762
 9     31.887%      7.177/7.192/7.218/0.014        0.278/0.287/0.297/0.008       67,586,442

 avg1  40.836%                        2.945                          0.280
 avg2  45.373%                        3.272                          0.312
 tot                                235.577                         22.438      865,550,371

I can but it's going to take the avx512 path which will have BMI2 enabled as well. I can also use this as the baseline for #1821

Oh, right. I was hoping one with -DWITH_AVX512=OFF -DWITH_AVX512VNNI=OFF

Doing that then precludes the faster checksums with it, though.  The numbers for the version with inflate_fast_avx512 and chunkmemset_safe_avx512 commented out from the function table are what I think you want.

Oh, right. I was hoping one with -DWITH_AVX512=OFF -DWITH_AVX512VNNI=OFF

Doing that then precludes the faster checksums with it, though. The numbers for the version with inflate_fast_avx512 and chunkmemset_safe_avx512 commented out from the function table are what I think you want.

But that is with this PR included, or did I misunderstand?
What I want to see is before and after for the AVX2 codepath, similar to what I did, to see whether the speedup is there for others as well and how big.

Reference i

Ah fair enough, let me try this on a U series Haswell CPU since that's what I'm using at the moment.
Develop
 Tool: /home/adam/zlib-ng/build-develop/minigzip Levels: 0-9
 Runs: 10         Trim worst: 2

 Level   Comp   Comptime min/avg/max/stddev  Decomptime min/avg/max/stddev  Compressed size
 0    100.008%      0.060/0.093/0.112/0.019        0.099/0.115/0.129/0.010      211,973,953
 1     44.409%      2.808/2.838/2.859/0.016        1.279/1.301/1.312/0.012       94,127,497
 2     35.519%      5.073/5.145/5.186/0.036        1.255/1.307/1.337/0.028       75,286,322
 3     33.844%      6.666/6.701/6.744/0.023        1.214/1.237/1.265/0.019       71,735,218
 4     33.146%      7.530/7.584/7.661/0.052        1.183/1.196/1.209/0.012       70,255,223
 5     32.642%      8.303/8.392/8.555/0.085        1.155/1.191/1.232/0.025       69,187,419
 6     32.483%      9.691/9.750/9.842/0.051        1.150/1.171/1.183/0.012       68,850,776
 7     32.255%   12.765/12.837/12.900/0.042        1.153/1.170/1.190/0.015       68,366,759
 8     32.167%   19.484/19.566/19.822/0.107        1.140/1.156/1.174/0.013       68,180,762
 9     31.887%   22.513/22.583/22.632/0.039        1.168/1.181/1.203/0.012       67,586,442

 avg1  40.836%                        9.549                          1.102
 avg2  45.373%                       10.610                          1.225
 tot                                763.916                         88.199      865,550,371

PR1816
 Tool: /home/adam/zlib-ng/build-1816/minigzip Levels: 0-9
 Runs: 10         Trim worst: 2

 Level   Comp   Comptime min/avg/max/stddev  Decomptime min/avg/max/stddev  Compressed size
 0    100.008%      0.070/0.097/0.117/0.016        0.090/0.101/0.120/0.012      211,973,953
 1     44.409%      2.806/2.906/3.091/0.088        1.119/1.140/1.165/0.018       94,127,497
 2     35.519%      5.108/5.232/5.564/0.139        1.108/1.143/1.182/0.024       75,286,322
 3     33.844%      6.684/6.802/7.089/0.140        1.057/1.091/1.118/0.019       71,735,218
 4     33.146%      7.506/7.607/7.702/0.067        1.019/1.042/1.064/0.014       70,255,223
 5     32.642%      8.305/8.502/9.036/0.236        0.994/1.032/1.054/0.022       69,187,419
 6     32.483%     9.628/9.882/10.274/0.241        1.006/1.043/1.092/0.024       68,850,776
 7     32.255%   12.741/12.945/13.256/0.175        0.977/1.013/1.037/0.019       68,366,759
 8     32.167%   19.496/19.832/20.398/0.344        0.992/1.024/1.047/0.018       68,180,762
 9     31.887%   22.440/22.695/23.209/0.310        0.985/1.013/1.042/0.018       67,586,442

 avg1  40.836%                        9.650                          0.964
 avg2  45.373%                       10.722                          1.071
 tot                                771.992                         77.135      865,550,371

Nice, a 12.5% speedup.
I think that confirms that it is a really good optimization.
Makes me wonder how performance compares wrt MinGW vs MSVC compilers, since MSVC does not actually let us choose whether to enable BMI2 or not, so is it used since it always exists along with AVX2 or is it never used because that might not be true in the future? I suspect the latter, meaning that MinGW might result in significantly faster inflate.

@Dead2
As far as I know, /arch:AVX2 in MSVC enables support for BMI1/2.

Code rabbit makes a good suggestion:

@KungFuJesus Could you add this comment, it does seem like a really good idea.

@KungFuJesus Could you add this comment, it does seem like a really good idea.

Yeah, sorry had to step away for a bit.  Will add a comment now.


YAML document start marker causes WARNING: environments and releases cannot be defined within the same YAML part

Operating system
Debian stable (12 bookworm)
Helmfile Version
0.158.0
Helm Version
v3.13.1
Bug description
I have found that having the leading document start marker --- in helmfile.yaml is causing the following warning even though the environment section is separated from the other sections.
WARNING: environments and releases cannot be defined within the same YAML part. Use --- to extract the environments into a dedicated part

Removing the first document start marker solves it, however tools like yamllint expect that to be there by default (for example).
So this causes the warning:
---
environments:
  ...
---
releases:
  ...

While this does not.
environments:
  ...
---
releases:
  ...

Example helmfile.yaml
---
environments:
  prod:
  test:

---
helmDefaults:
  atomic: true
  cleanupOnFail: true
  createNamespace: false

releases:
  - name: sre
    chart: ./helm/charts/sre
    labels:
      app: sre
    namespace: {{ env "RELEASE_NAMESPACE" | default "sre" }}
    values:
      - helm/vars/cronjobs.yaml.gotmpl
      - helm/vars/values.yaml.gotmpl

  - name: system-reserved-resources
    chart: ./helm/charts/system-reserved-resources
    labels:
      app: sre
    namespace: {{ env "RELEASE_NAMESPACE" | default "sre" }}
    values:
      - helm/vars/system-reserved.yaml.gotmpl

Error message you've seen (if any)
WARNING: environments and releases cannot be defined within the same YAML part. Use --- to extract the environments into a dedicated part

Steps to reproduce
Details above
Working Helmfile Version
Whatever version before this warning was added to prepare for helmfile v1.
Relevant discussion
No response

@yxxhero thanks for your issue. I will post a PR as soon as I can.


[REQ] generate patch notes

What kind of request is this?
New feature
What is your request or suggestion?
I would like Dalec to generate patch notes based on the included patch sources
It should include the subject + commit id for included sources, and base repo commit id
Are you willing to submit PRs to contribute to this feature request?

[ ] Yes, I am willing to implement it.

The RPM already includes a changelog, but you need to add changelog section in the dalec spec.
Example: https://github.com/Azure/dalec/blob/63f23503017c1ce1ee656cde523db4c1b6c734ac/test/fixtures/local-context.yml#L61-L66
We can get this added to the docs.


Fixed issue with i18n arguments getting translated

This is what has been causing the email updates task to fail

I suspect the key that was messing with the updates mailer was observations_from. Can you add a spec to test for that?

ok I added a spec for the failing mailer case in 62efd6a3283d9ede0c73707806e88ce10206d13c


Anonymous Login and SSO Login

I just want to read and write to a database with both anonymous users and signed users with the leanest code possible. Preferrably use the anonID and then to the SSO. I cannot find one up to date example of that. Its too bad the old firebase site is out of date.

I have already spent too much time on it. And besides, once we start to depend on it, google will phase it out

The Firestore quickstart now shows how to use anonymous auth.


Automate localdb creation (cosmosdb for local)

Describe the bug
Automate creation of localdb file to avoid having to check it in
To Reproduce
Steps to reproduce the behavior:

Go to local folder
Notice localdb file
Can't be code reviewed or easily maintained

Expected behavior
Generated from existing config files

#31


RFC: Promote riscv64gc-unknown-linux-gnu to Tier-1 (without host tools)

This RFC outlines the case for promoting the Rust riscv64gc-unknown-linux-gnu target to Tier-1 (without host tools) status.
Shout out to @hoverbear, @danielsilverstone-ct for their support.
Rendered

I think there should be an explicit note in the tier list of targets that host tools are provided but they are tier 2.

Better to link the previous Zulip discussion here: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/Imminent.20RFC.20PR.3A.20riscv64gc-unknown-linux-gnu.20to.20Tier-1.

I think there should be an explicit note in the tier list of targets that host tools are provided but they are tier 2.

Yeah, this greatly confused me until I saw this clarification. I was thinking that the host tools were being removed, but no, they're just not being promoted.
Honestly, I think that maybe, it might be worth just separately classifying targets and host tools on entirely different lists at least when it comes to tiers, to avoid this kind of confusion, since it appears that they can truly be independently supported. Although I guess that it wouldn't ever make sense to have host tools at a higher tier than a target because, why would you allow building from something and not building for it?

I think there should be an explicit note in the tier list of targets that host tools are provided but they are tier 2.

Thanks. We will follow through as appropriate.

Better to link the previous Zulip discussion here: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/Imminent.20RFC.20PR.3A.20riscv64gc-unknown-linux-gnu.20to.20Tier-1.

Thanks. We will follow through as appropriate.


Register service type in DID Specification Registries

See https://w3c.github.io/did-core/#services

PR has been opened https://github.com/w3c/did-spec-registries/pull/545

PR has been merged


exclude-elements error on a report page is incoherent with other modifiers

Describe the bug
When I use Hide modifier and element is not found I have only warning in a console, but when I use exclude-element to reach exactly the same result (eg. avoid google maps errors) I have an error on the report page
The following elements to be excluded have not been found on page:
Maybe we would like to have one way to show this information and remove this error from the report page and add a warning in the terminal's output?

Version used: AET 3.2.0

It seems that this change would require some major refactoring to provide a way to attach some kind of a warning message to a successful collecting step. This would probably entail some changes in api/suitestatus responses and could require changes in scripts using this endpoint, e.g aet.sh.


Add sequence_based property to package metadata

In GitLab by @peterdesmet on Sep 8, 2020, 19:28
Note: this was suggested in the 2020-09-08 EUROMAMMAL technical call
To better understand the usability of datasets (e.g. for AI learning) it would be good to know if the dataset uses sequence or media based classifications. Proposal is to add a sequence_based term to project information. If both is possible for a single project, than we cannot use a boolean, but should maybe have:
classification_source: media, sequence, both

In GitLab by @kbubnicki on Sep 18, 2020, 15:49
mentioned in commit 65f95608165679fc6c01c8d28751b0b89fe50980

In GitLab by @kbubnicki on Sep 18, 2020, 15:52
mentioned in merge request !12

In GitLab by @kbubnicki on Sep 18, 2020, 15:53
Agree. I have only proposed to change classification_source into classification_level (thinking about a focal level of the classification process). See this merge request.

In GitLab by @peterdesmet on Sep 21, 2020, 15:48
mentioned in commit 36a918a3fd4bbff747690101a2033f80d7b67e96

In GitLab by @peterdesmet on Sep 21, 2020, 15:53
Resolved in !12

In GitLab by @peterdesmet on Jan 20, 2021, 16:23
mentioned in commit 004c8109b289e74575b274650c05273cf757e0ad


using webpack context path

Problem
If i use webpack.LoaderOptionsPlugin(), there is a independent "context" fields.
new webpack.LoaderOptionsPlugin({
  options: {
    context: path.join(APP_DIR, "app/assets"),
    postcss: function(webpack) {
      return [plugins]
    }
  }
})

I can modify that context, and postcss use it.
But if i use postcss.config.js, there is no options for independent context.
Postcss will just using webpack's context, not it's own context.
maybe, postcss.config.js can also handle that context like
module.exports = (ctx) => ({
  context: path.join(APP_DIR, "app/assets"),
  plugins: {
    ...
  }
})

module.exports = (ctx) => ({
   console.log(ctx.webpack) // Webpack Loader API => this.resourcePath etc.
})

@FourwingsY The webpack Context is on ctx.webpack. What do you mean exactly by own context, maybe I'm missing the point here :)?

@michael-ciniawsky Sorry, i might be misusing postcss-smart-import. Thanks for your example!

@FourwingsY I highly recommend using  postcss-import v9+ instead of postcss-smart-import during the fact that postcss-loader is able to watch your @import automatically then
import imports from 'postcss-import'

postcss([ imports() ]).process('index.css', options)
  .then((result) => {
      result.messages
        .filter((msg) => msg.type === 'dependency ? msg : '')
        .forEach((dependency) => loader.addDependency(dependency.file)) // @import's
  })


Update exchange-online-powershell-v2.md

Re-ordering new cmdlets table

Docs Build status updates of commit b564373:
:clock10: Full build: the average full build time is 11 min(s) 46 sec(s), this is based on the last 1000 build(s) for this repository.

Docs Build status updates of commit b564373:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/docs-conceptual/exchange-online/exchange-online-powershell-v2/exchange-online-powershell-v2.md
:white_check_mark:Succeeded
View (exchange-ps)

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.


⚠ ClamAV has degraded performance

In 57f1cf3, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 34 ms

Resolved: ClamAV performance has improved in 021201f after 6 minutes.


Get to Know the ABAP RESTful Programming Model

Explained about how the ABAP RESTful Programming Model is structured and how the development flow is organized.

Who are you? Can you update your GitHub profile?

And why do you erase the tutorial link in the issue!!??

Hi @baskart2112 ,
didn't get your issue. Please create just one issue, for your whole feedback and paste the tutorial links as well.
Thank you.
Best regards,
Merve

Hi, I just have given a comment on this tutorial that it has been explained well about how the ABAP RESTful Programming Model is structured and how the development flow is organized.
From this tutorial, we will understand the concept of the ABAP RESTful Programming Model.


hug.exception does not work with hug.extend_api

In trying to add custom functionality when catching exceptions in hug, I discovered that hug.exception does not work if it is imported via hug.extend_api. Examples below:
This works:
test_exception1.py
import hug

@hug.get('/hello')
def hello():
    return 1/0

@hug.exception()
def handle_exception(exception):
    print("hug handling exception")

This does not work in the sense that the exception is raised but not intercepted by hug.exception:
test_exception2.py
import hug
import test_exception1

@hug.extend_api()
def api():
    return [test_exception1]

Don't know if this is a bug or a feature but thought it should be documented. This is for hug-2.3.0.

Thanks for reporting this isssue! It has been fixed in develop and will make its way out with the next release.
Thanks!
~Timothy

A new version of hug 2.3.2 has been released that fixes this issue.
Thanks!
~Timothy


stop_recording fails to return and locks up depending on recording options

I encountered this issue while running an official  V2.1 camera module on a V1.1 Pi zero W. both units where  purchased from an approved re-seller. I did a fresh install and its details are as follows.

pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.19.97+ #1294 Thu Jan 30 13:10:54 GMT 2020 armv6l GNU/Linux
pi@raspberrypi:~ $ cat /etc/debian_version
10.3
cat /etc/os-release
pi@raspberrypi:~ $ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
pi@raspberrypi:~ $ apt-cache policy python3-picamera
python3-picamera:
Installed: 1.13
Candidate: 1.13
Version table:
*** 1.13 500
500 http://archive.raspberrypi.org/debian buster/main armhf Packages
100 /var/lib/dpkg/status

I encountered this issue on a mildly complex project, but after several iterations I have been able to simplify and condense my code down into the test script below. You can comment/un-comment the the various test cases between runs.
when a test case fails, the active script locks up and you need to open a new ssh connection and restart the pi. To be clear the pi itself is fine, and you can run other python applications in other ssh connections, but to release the camera module you have to restart.
from io import BytesIO
import picamera
import logging

try:
    camera = picamera.PiCamera(sensor_mode=4, resolution='1640x1232', framerate=40)
    op = BytesIO()
    iterations = 250

    for i in range(1, iterations+1):
        print('')
        print('iteration : ' + str(i))
        camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=25000000) #test case 1
        #camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=18000000, resize=(1230,924)) # test case 2
        #camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=10000000, resize=(820,616)) #test case 3
        #camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=4000000, resize=(410,308)) #test case 4
        print('start_recording')
        camera.wait_recording(timeout=1, splitter_port=0)
        print('wait_recording')
        camera.stop_recording(splitter_port=0)
        print('stop_recording')
        op.seek(0)
        op.truncate()

except KeyboardInterrupt:
    pass
except Exception as e:
    logging.error('issue', exc_info=1)
finally:
    camera.close()

with sensor_mode=4, resolution='1640x1232' and framerate=40 the test cases give the following results.

works correctly no matter how many iterations are run
fails to return the 1st iteration, no exception raised
fails to return the 4th iteration, no exception raised
fails to return the 1st iteration, no exception raised

with the framerate lowered to 30

works correctly no matter how many iterations are run
fails to return the  1st iteration, no exception raised
fails to return the  4th iteration, no exception raised
works correctly no matter how many iterations are run

with the framerate lowered to 25

works correctly no matter how many iterations are run
works correctly no matter how many iterations are run
works correctly no matter how many iterations are run
works correctly no matter how many iterations are run

For my more complex test cases fps had to drop to 24, for everything to run smoothly.
Now here is the rub, If I take the fps back to 40 and remove the resizing from test cases 2 through 4 this is what I get.

works correctly no matter how many iterations are run (as expected)
works correctly no matter how many iterations are run
works correctly no matter how many iterations are run
works correctly no matter how many iterations are run

I'm not sure if the issue is at the Python, MMAL, or GPU level, but something is very odd. Some how it ties into the fps and resize options. what's even odder, is that even with the settings from the original script, I was able to generate a video stream out to a browser at 40 fps no matter what resize was set to. The failure only ever happens with stop_recording.

Wow I just started having this issue also on a somewhat bigger/complex project.
The same thing happens to me when I'm dynamically opening and closing recordings with different resize options. I don't change the framerate though.
I also use set motion_output on all of them but probably unrelated as this example shows the same issue without the motion output set.
I'm not sure how alive this project is anymore though :( It is actually so good, @waveform80 please come back :)

More info:
I tried replicating my problem on the interactive console. I was surprised it was always working. The only differences to my "real" program were the extra options other than the resolution. So resize does not seem to be the culprit here. I also had set some h264 specific options and the bitrate. Didn't investigate further as I have something working for my use case, but I would guess it has something to do with the bitrate.

@Esser420 I haven't been able to dig into this to much because life has been a little crazy with what is going on in the world right now.
For my project the frame-rate is the same the only thing that changes is the resolution and bit-rate. In this old bug @6by9 mentions that mjpeg and h.264 have different architectures, and that might be why you are seeing a difference.
I've only started to dig into the issue, but I do wonder if it might be related to buffer size issues that  @waveform80 and @6by9 have mentioned on a few tickets.
for example this, sounds about like what i am seeing.
https://github.com/waveform80/picamera/issues/315#issuecomment-238353837

It's https://github.com/waveform80/picamera/blob/master/picamera/mmalobj.py#L760 that is going to be the problem. The default buffer size off video_encode is 64kB. The MJPEG codec is pretty shonky and will stall badly if it can't get rid of the output data. Disable whilst it still has output data queued and it is game over :-(

Honestly This biggest issue I'll probably face with tracking down whatever the issue happens to be, is that this isn't a simple scenario (no exceptions etc), and I don't have any intimate knowledge of the code base.

No luck so far,  I tried increasing the output buffer size, and that didn't help at all.
I also tried using the isp resizer instead of the vpu resizer but i got a runtime error I don't understand how to fix.
code:
from io import BytesIO
from picamera import mmal, mmalobj as mo
import picamera
import logging

class MyEncoder(picamera.PiCookedVideoEncoder):
    def start(self, output, motion_output=None):
        super(MyEncoder, self).start(output, motion_output)
        frame = self.output_port._get_framesize()
        self.output_port._set_buffer_size(frame.width*frame.height*3)

    def _create_resizer(self, width, height):
        self.resizer = mo.MMALISPResizer()
        self.resizer.connect(self.input_port)
        self.resizer.outputs[0].copy_from(self.resizer.inputs[0])
        self.resizer.outputs[0].format = mmal.MMAL_ENCODING_I420
        self.resizer.outputs[0].framesize = (width, height)
        self.resizer.outputs[0].commit()

class MyCamera(picamera.PiCamera):
    def _get_video_encoder(self, *args, **kwargs):
        return MyEncoder(self, *args, **kwargs)

try:
    camera = MyCamera(sensor_mode=4, resolution='1640x1232', framerate=40)
    op = BytesIO()
    iterations = 10

    for i in range(1, iterations+1):
        print('')
        print('iteration : ' + str(i))
        #camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=25000000) #test case 1
        camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=18000000, resize=(1230,924)) # test case 2
        #camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=10000000, resize=(820,616)) #test case 3
        #camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=4000000, resize=(410,308)) #test case 4
        print('start_recording')
        camera.wait_recording(timeout=1, splitter_port=0)
        print('wait_recording')
        camera.stop_recording(splitter_port=0)
        print('stop_recording')
        op.seek(0)
        op.truncate()

except KeyboardInterrupt:
    pass
except Exception as e:
    logging.error('issue', exc_info=1)
finally:
    camera.close()

error:
ERROR:root:issue
Traceback (most recent call last):
  File "/home/pi/code/testing/run4.py", line 39, in <module>
    camera.start_recording(op, splitter_port=0, format='mjpeg', bitrate=18000000, resize=(1230,924)) # test case 2
  File "/usr/lib/python3/dist-packages/picamera/camera.py", line 1046, in start_recording
    camera_port, output_port, format, resize, **options)
  File "/home/pi/code/testing/run4.py", line 27, in _get_video_encoder
    return MyEncoder(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/picamera/encoders.py", line 601, in __init__
    parent, camera_port, input_port, format, resize, **options)
  File "/usr/lib/python3/dist-packages/picamera/encoders.py", line 186, in __init__
    self._create_resizer(*mo.to_resolution(resize))
  File "/home/pi/code/testing/run4.py", line 18, in _create_resizer
    self.resizer = mo.MMALISPResizer()
  File "/usr/lib/python3/dist-packages/picamera/mmalobj.py", line 2396, in __init__
    super(MMALComponent, self).__init__()
  File "/usr/lib/python3/dist-packages/picamera/mmalobj.py", line 645, in __init__
    self.component_type))
picamera.exc.PiCameraRuntimeError: Expected 1 outputs but found 3 on component b'vc.ril.isp'

This comment by @6by9  seems to explain why I can't get MMALISPResizer to work no matter what I try.

Looks like I faced with the same issue, but using different route

Pinging the issue, to let the rpi developers know this is still an issue that needs fixed.

Adding here, this is a problem we are currently experiencing too. I'll have to investigate more to be sure this is the case, but I think the issue we face is very similar to this one, if not identical.

I just tested with your script and I saw the exact same problem pops up. Error definitely reproduced then.

Same issue. In addition to stop_recording getting hung, nothing short of a complete reboot will bring back camera functionality.


Mixing angular-multi-select with angular-formly

Hi, im trying using both plugins in my project (http://angular-formly.com/#/), actually with sucess, but i need to ask certain questions. But first goes first, im trying to do a jsbin, but not work very well, can you help me with that?
http://jsbin.com/bipoze/12
http://jsbin.com/bipoze/12/edit?html,js

@estvmachine,
Unfortunately I have zero experience in angular-formly.
I can only inform you few things;

You better use CDNJS instead of Github. We have one here but I haven't got chance to update the manual;

https://cdnjs.cloudflare.com/ajax/libs/angular-multi-select/4.0.0/isteven-multi-select.css
https://cdnjs.cloudflare.com/ajax/libs/angular-multi-select/4.0.0/isteven-multi-select.js

You define "icon" in the "button-label" and "item-label", but I didn't see "icon" property in your vm.names object.

Likewise, you use "ticked" in the "tick-property", but I didn't see "ticked" property in your vm.names object. You need to add them.

For the translation attribute, you need to define the translation object in the controller.

Hi, i check your suggestions and now its working:
http://jsbin.com/vayafi/5
Well, i actually make the merge successfull, thank you!

You're welcome, glad can help.
I'll be closing the issue now. Cheers.

Yeah you're welcome, thanks, i love this plugin.


Fix logout crash

This is a fix for https://github.com/GitHawkApp/GitHawk/issues/2743 and https://github.com/GitHawkApp/GitHawk/issues/2643.
Reading through the issues, It looks like the crash only occurred on iPads and that's where I was able to reproduce it. It's the notorious popoverPresentationController that's always too easy to miss. 🧐

Oooh, nice catch! This API drives me crazy.
Sent with GitHawk


412## - Fizz Buzz

Description of the Problem
Write a program that outputs the string representation of numbers from 1 to n.
But for multiples of three it should output “Fizz” instead of the number and for the multiples of five output “Buzz”. For numbers which are multiples of both three and five output “FizzBuzz”.
Example:
n = 15,

Return:
[
    "1",
    "2",
    "Fizz",
    "4",
    "Buzz",
    "Fizz",
    "7",
    "8",
    "Fizz",
    "Buzz",
    "11",
    "Fizz",
    "13",
    "14",
    "FizzBuzz"
]

Link To The LeetCode Problem
LeetCode

Please assign this issue to me


Update VRT to run against the datagovuk test data

What
Update the tests in the VRT to use the data setup used by DGU's functional tests repo. Additionally updates the data setup commands to mirror this approach.
Why
Prevents 2 data schemas be used across the project and increases the potential to shuffle the VRT into a CI workflow.
Card: https://trello.com/c/1DGJEbb8/251-setup-vrt-to-use-same-test-set-up-as-ckan-functional-tests

I ran the VRT and am finding some failures, will try again next week to get the test passing

I'm getting some odd errors when running VRT, seems like some of the pages are erroring, 'unexpected error' on a number of pages due to missing reference.

A number of tests are failing due to missing references
bitmaps_reference/ckan-27_User_-_register_for_an_account_0_document_0_phone.png
bitmaps_reference/ckan-27_User_-_register_for_an_account_0_document_1_tablet.png
bitmaps_reference/ckan-27_User_-_register_for_an_account_0_document_2_desktop.png
Otherwise the tests are more or less passing when you inspect the html report, without the html report it looks like they are all failing but it's because there are minor differences like icons being different or minor differences in the layout.
We should probably look into making the tests more tolerant of differences.


Fix: update not propagated to the children

ViewSwitcher does not propagate updates to the children when the data has changed.
The fix will propagate the update to the active child whenever the data changes.

@cmyr sorry, I messed up while trying to amend a commit and deleted the remote branch by mistake, so Github closed the PR. 🤦♂
I've recreated this same PR here: https://github.com/xi-editor/druid/pull/662


Remove all ToDo's from ReadMe

As a developer, I want to make sure that my documentation is clear and concise so that others can easily read it.

Technically there is only one left. I looked into it tonight but wasn't sure what would be the best option. Frenk's video from 4 years ago on why he designed the repo as he did? Or something general about HA to Cloud?


Constant value in SELECT statement should not be treated as a real column

I have a table which has 230.03 thousand rows for the time frame below:
SELECT count(*) FROM profiler.iface WHERE (time >=<PHONE_NUMBER>) AND (time <<PHONE_NUMBER>) GROUP BY interface
28 rows in set. Elapsed: 0.011 sec. Processed 230.03 thousand rows, 6.33 MB (20.22 million rows/s., 556.20 MB/s.)
However, if I add a column of constant value, the processed rows becomes huge and the results seem to be wrong!
SELECT<PHONE_NUMBER> AS time, count(*) FROM profiler.iface WHERE (time >=<PHONE_NUMBER>) AND (time <<PHONE_NUMBER>) GROUP BY interface
87 rows in set. Elapsed: 7.553 sec. Processed 2.48 billion rows, 57.72 GB (328.88 million rows/s., 7.64 GB/s.)
Below is some discussion on google group: https://groups.google.com/forum/#!topic/clickhouse/3E-VPzhSWqI

Aliases have higher priority than column names.
At least MySQL does the same http://sqlfiddle.com/#!9/a6c585/17907


Failed to establish a new connection: [WinError 10048] Only one usage of each socket address (protocol/network address/port) is normally permitted'))

I am trying to download tick data from Dukascopy. To download a few days it is OK but when try to download more data the following error show up. Anyone have idea how to tackle this problem?
2020-05-31 21:33:37,547 - findatapy.market.datavendorweb - WARNING - Problem downloading.. HTTPConnectionPool(host='www.dukascopy.com', port=80): Max retries exceeded with url: /datafeed/EURUSD/2003/04/06/02h_ticks.bi5 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000001BCA9CE9488>: Failed to establish a new connection: [WinError 10048] Only one usage of each socket address (protocol/network address/port) is normally permitted'))

It might be worth trying again later. I've noticed that occasionally, the servers can be down.


[vscode-graphql] Markdown code highlighting breaks for fenced code blocks when gql is typed

In a markdown file whenever I have a fenced code block, with for example Javascript code, whenever I type gql somewhere the code highlighting in that block breaks.

It's some side effect of this
https://github.com/graphql/graphiql/blob/5278625d27ca91ac12b1c5c8fc9468fc238f5dcd/packages/vscode-graphql/grammars/graphql.markdown.codeblock.json#L8

CC'ing @orta who wrote this lovely grammar

@acao it looks awfully similar to this to my eye
I believe I have a fix (just copied the way fenced code blocks are captured in the markdown tml). Working on a testing setup to go along with this change.
Curious if you would expect to see highlighting in this case:
<!-- markdown file -->

```js
const query = gql`
  query { test } # <- would you expect gql syntax highlighting here?
`;
js```


Added application scope comic

looks like there's merge conflicts with the new doc structure, and I don't have permission to resolve them. Would either of you be able to resolve the conflicts, or should I delete the PR, rebased, and start a new one - @wonderflow, @hongchaodeng ?

Hi @macolso
To resolve the conflict, you just need to rebase on your local repo, fix any conflicts, and push the code again.
Maybe ask any of your programmer colleague to give you a hand. It is very trivial ;)

fixed the merge conflicts, @hongchaodeng !

Nice! Merging...


Multiple write databases

In a multiple read write database environment, If you have to write databases that the migrations need to get applied to, it'd be nice to have a nested phinx yaml configuration that apply the migrations to more the one database when you kick off the migration. That is, take in the credentials for all write databases and connects and runs the valid migrations one by one.
Upon error, I'd see the migration doing a down and recovering with the proper algorithm that ensures application integrity and uptime. This will require further development as the community provides input on their requirements.

The library http://github.com/keithy/primo-pdo-php has this basic tools for this feature.
In this example, the migration is applied to all environments. (choices)
It is applied to a configuration which is derived from the base environment, but adds a prefix to the database name.
$reader = new Primo\Phinx\ConfigReader( __DIR__ . "/_fixtures/phinx.php");

$clean = true;
foreach( $clients as $client )
{
  foreach( $reader->choices() as $choice )
  {
    $reader->choose($choice)->which('per-client')->atPut('%%CLIENT%%',  "$choice_$client")->create(true);
  }
}

'sqlite' => [
    'which' => [
        'per-client' => [
          'name' => '%%CLIENT%%'
     ]
]


Added saving todos functionality. Todos are now stored in localstorage.

All todos should now be saved in localstorage upon addition/change/deletion.

Do they get changed in the localStorage when we add, edit, delete???

Do they get changed in the localStorage when we add, edit, delete???

Yes, it should. The changes upon each addition, edit, or deletion can be viewed using the localStorage command in console, as well as on the actual Todo website. Let me know if it doesn't work on your end. I can try to look into it!

I will merge it. I hope it works 😃

It worked very nicely. Thanks for the contribution

@all-contributors please add @ykchan052 for code


Introduce client-side validation on methods

In #287 and #286, I started introducing client-side validation for some very easy to catch errors defined by the Mastodon documentation, such as “input length should only be 80 characters”, “input should not contain spaces”, “input should not contain #”, and so on.
We want to go through all existing methods (“methods” meaning the methods in bigbone/src/main/kotlin/social/bigbone/api/method) and check where it could make sense to add client-side validation.
For the client-side validation, we want to return IllegalArgumentExceptions. For easy ones, we should use Kotlin’s require and a message lambda that we pass.
Example:
fun blockDomain(
    domain: String
) {
    require(domain.isNotBlank()) { "domain must not be blank" }

For the slightly harder ones where we deal with optional parameters that may or may not be null, but if they’re non-null need to follow certain criteria, we write our own checks, such as:
if (range.limit != null && range.limit > QUERY_RESULT_LIMIT) {
    throw IllegalArgumentException(
        "limit defined in Range must not be higher than $QUERY_RESULT_LIMIT but was ${range.limit}"
    )
}

@PattaFeuFeu I think we should go through all methods and implement these checks everywhere where needed. Let's create a separate issue for this. Any objections?

Originally posted by @andregasser in https://github.com/andregasser/bigbone/pull/287#discussion_r1367795877

Having seen this in some newly added methods, I wonder if we should really do this everywhere, especially in cases where the server would fail safely, anyway.
For example, any endpoint that accepts a limit parameter will already coerce the given limit to be within the valid range, so any request with an invalid limit value should never fail, but just return less results than expected. This might happen anyway even for a valid limit value (if there simply aren't more results to return), so a library user would need to check the number of returned results anyway.
If these allowed limits ever change, whether it is between Mastodon versions or even by individual instances being configured manually, our library could not be fully used on some instances unless updated.
I do think that this is a good thing to do for cases where we are sure that the request would fail with some 4xx response, like trying to schedule a post in the past or with a string that cannot be parsed into any valid timestamp - but I doubt we should do it all across the board.

For example, any endpoint that accepts a limit parameter will already coerce the given limit to be within the valid range,[…]

Oh, I did not know that! I thought it would fail with a higher limit. That was my whole reason for doing client-side validation: To fail the request before it goes over the network to save resources.
If that turns out to not be the case, I’m also in favour of rolling those checks back.

If these allowed limits ever change, whether it is between Mastodon versions or even by individual instances being configured manually, our library could not be fully used on some instances unless updated.

Yep, excellent point. I did think about that possibility from time to time but never talked about it. Good that you raise it!


⚠ Bofrost.lu has degraded performance

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

HTTP code: 200
Response time: 1678 ms

Resolved: Bofrost.lu performance has improved in 60ed17f.


Error in the extension, gives an error

Manifest version 2 is deprecated, and support will be removed in 2023. See https://developer.chrome.com/blog/mv2-transition/ for more details.
Error in the extension, gives an error

@Gvidon12 I need to update the source code and add support for manifest v3, I was planning to add support for other browsers as well. But now I am not interested in supporting this project because of its low popularity in the open media space, but statistically it is actively used and I assume not for benevolent purposes

@Gvidon12 A new version has been released, try it


Universal Dark mode is not applied, errors out on all services

Bug description:
Universal Dark mode is not applied, error is shown
Steps to reproduce:
Ferdi 5.5, Windows
Enable dark model, load any service
Warning: Failed prop type: Invalid prop `isAdaptableDarkModeEnabled` of type `string` supplied to `_class2`, expected `boolean`.

Update
While trying to recover from this, I found out that the above might not be connected (I have some installations where dark mode works). This error alone is enough for dark mode to not work

Can you provide more info like what OS you were using?

Windows v1909
Both normal and portable installation
Adding darkmode.css works of course, DarkReader doesn't.
Any way I can debug this further?

Can you provide your debug info? You can get this information here -

Up until now I used the (unofficial/unsupported) PAF portable version of Ferdi. I think the issue had to do with that - although I could replicate this with normal install, after a reinstall now I can no longer. Will reopen if I see a related issue again.


Allow Arweave Transaction Handlers with no owner filtering

If no "owner" is specified in the source, all transactions should be processed


ci: use 0.9.1 SDK

This change moves to a project specific container with the latest SDK
which adds support for xtensa HALs.

CI related change


Updated menu. Removed deprecated telemetry. Renamed Delfin to monitor

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
This PR removes access to deprecated Telemetry feature. It also renames the delfin menu items and route.
Which issue(s) this PR fixes:
Fixes #434
Test Report Added?:

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:
/kind TESTED
/kind NOT-TESTED

Test Report:

Special notes for your reviewer:

@kumarashit @skdwriting
updated the PR.
Changed the path from /monitor to /resource-monitor.


Config CLI flag ignored

Currently having issues with the -config CLI flag being ignored, either with a file (relative or absolute) or a directory, nothing works and /data/media-repo.yaml is always the loaded config file. Have worked around it by copying the config into this location for now.
~ # media_repo -config /configs/media-repo-config.yaml
INFO[0000] Loading config file: /data/media-repo.yaml
...

Version info:
~ # media_repo -version
Version: v1.2.8
Commit: 047945f80c931cd5fa901806cc9c65299fd64ba2

I can't reproduce this, sorry. Is there something strange going on in your shell which might interfere somehow?

oh, this is the Docker image, which sets an environment override. Documentation needs to be updated to say to set REPO_CONFIG at runtime, overriding the -config argument.


Where's the definition of the function "hidden2rel" at line 125 in "KGQA/RoBERTa/model.py"?

You define a variable named "hidden2rel" at line 85, but you call the function "hidden2rel" at line 125 in function "applyNonLinear", where there's no definition of function "hidden2rel". Sorry for my poor coding level, can you tell me where's the definition of the function "hidden2rel" or what it means?

Sorry to disturb you, my problem has been solved

Hi, I have the same question in “hidden2rel” too，I don not know how and why the hidden state can be converted into the relation_embeddings. Is there any relationship between the relation and hidden state?


khepri_cluster: Accept machine_config in Ra server config

It is now possible to pass state machine arguments in the Ra server config. This is handy to e.g. set the snapshot interval:
RaServerConfig = #{cluster_name => StoreId,
                   machine_config => #{snapshot_interval => 10000}},
khepri:start(RaSystem, RaServerConfig).

This helps with #144 but doesn't solve it magically.


What version of Fira Code in Carbon?

The current version of carbon is the same as the current version of FiraCode?
I checked the recent FiraCode docs, and saw the number zero current is a slash not a dot.

It looks like the current version is 1.204, which is from 2016. Also the CDN for the font is deprecated. Made a quick PR to update to the latest version.


Docker permissions

Tell us about your request
I would like to be able to have some sort of permissions system to limit what exactly a user can do in terms of docker (and compose). Right now, it is all or nothing. A user can start, stop, create containers as his heart desires. He could also exec into containers as he pleases, meaning he can read all secrets that are in some way in the container. So it might be nice to say user/group x, can start and stop containers, but can't build new ones, or pull new ones. This would make it able to run all containers as user x, where user x can only start stop containers, but can't pull or alter them.
It would also be neat to put permissions on what folders a user can mount into his container. Because at the moment every docker user, can mount /etc, add himself to the sudoers, and boom, he has control over the whole system.
So in general, it would be neat to have some kind of (fine-grained) permissions system, where

The user/group is limited on what docker commands he can execute
What folders he can volume/mount to the container.
The permissions also count for docker-compose

Which service(s) is this request for?
Docker engine (/compose)
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
I'm trying to find a way to limit the attack vectors of docker itself. If ever an attacker obtains an ssh key to a docker user, he can use docker to escalate his privileges, and root the machine. Or just have a distinction between system admins, and developers who need docker.
Are you currently working around the issue?
You could prevent certain docker commands by aliasing them in some way , but that doesn't prevent users from running a docker compose, and finding a way around it. Enabling DOCKER_CONTENT_TRUST=1 makes it extra effort for the attacker to pull images, but doesn't stop him from doing stuff on the entrypoint.
Additional context
If this by any means is out of scope, or there are better ways (have googled for a bit, haven't found much yet), or it is pointless, please let me know!

Hey @RobinGoussey thanks for the detailed request. Are you using Docker on Linux or Mac/Win? As some points here we could address in Mac/Windows more easily as admin features (we had some before in desktop enterprise)

Hi @nebuk89, we are using docker and docker-compose on linux at the moment.

Have you tried rootless mode?

I've come across it, but haven't tried it yet. How does it limit users? Can users still mount for example etc folders if they are not sudo?
I'll have to experiment to see if my previous points are all mitigated by using rootless.

It appears, you can still mount those files, but there is nothing you can do to read/alter them in the container. So if the docker user has no access to a file, then neither will the container.
Seems like running docker in rootless mode will fix the part where they can make themselves sudo. So while there are no fine-grained permissions on docker, they can be aliased away. Thank you very much!

@nebuk89 , are there any plans to make docker rootless mode non experimental? Also will there be an easy way to have multiuser support?
It took me a while, but I found how to have other users also use docker (in rootless mode), however it took me a while to figure out.

Already non-experimental on git master (v20.0X).

please add support for AWS Systems Manager Parameter Store. It provides the same function as Secret Manager for a lot less money. Sssshhhhh don't tell AWS ;)


[Android] Verify App Level Error Handling

As we move to the new app, it has been seen that it does not have the extensive error handling that the current production app has. We need to run an in-depth analysis to test and verify places for improvement and implementation.
Possible cases to look for:

Empty screens

My Courses
My Programs

API fails

No connectivity error handling

Forceful app upgrade

Discover

Webview load failed
Enrolment failed

Profile

Contact support
Profile update errors

Course Dashboard

Learner access status error: Access expired | not started |

Discussions

All error handling

Generic error handling approach

Full screen loader to show error display if any

The testing and verification process is not limited by the list shared above.
Our goal is to create a file with screenshots of all the error handling in the production app that will help us identify areas of implementation in the new app.

Findings can be seen here: https://www.figma.com/board/dTXgyPSNccXFicXg4I8baa/Error-Handling-screenshots-(iOS%2FAndroid)?node-id=0-1&t=Tj7XnFVELykBZoi4-0


Slayer target highlighting no longer works on Desert Lizards

This was caused by the Desert Lizards task being changed to just Lizards with the addition of Sulphur Lizards.

I'm seeing this bug as well. I also noticed that killing Desert Lizards and Small Lizards don't cause the kill count to update.

I believe this was fixed by 6c56880989a72143a8e670729d3e6f2fbd318682


Remove all “folder” in code and replace it with directory

Replace "folder" in code/comments, with directory.

Closing it as it's not an important issue.