Static linking on Ubuntu 18.04 does not work due to non-position independent code

When I try to statically link to libgflags.a or libgflags_nothread.a I am getting a compiler error complaining that the object files in the archive are not position independent. Gcc on Ubuntu is using -fPIC -pic by default and requires object files compiled with -fPIC
$ tar xzf ~/Downloads/gflags-2.2.2.tar.gz -C ./
$ ls
gflags-2.2.2  gflags_test.cc
$ cd gflags-2.2.2/
$ mkdir build
$ cd build/
$ cmake ../
-- The CXX compiler identification is Clang 6.0.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for C++ include unistd.h
-- Looking for C++ include unistd.h - found
-- Looking for C++ include stdint.h
-- Looking for C++ include stdint.h - found
-- Looking for C++ include inttypes.h
-- Looking for C++ include inttypes.h - found
-- Looking for C++ include sys/types.h
-- Looking for C++ include sys/types.h - found
-- Looking for C++ include sys/stat.h
-- Looking for C++ include sys/stat.h - found
-- Looking for C++ include fnmatch.h
-- Looking for C++ include fnmatch.h - found
-- Looking for C++ include stddef.h
-- Looking for C++ include stddef.h - found
-- Check size of uint32_t
-- Check size of uint32_t - done
-- Looking for strtoll
-- Looking for strtoll - found
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Check size of pthread_rwlock_t
-- Check size of pthread_rwlock_t - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/trittweiler/tmp/gflags/gflags-2.2.2/build
$ make
Scanning dependencies of target gflags_static
[ 12%] Building CXX object CMakeFiles/gflags_static.dir/src/gflags.cc.o
[ 25%] Building CXX object CMakeFiles/gflags_static.dir/src/gflags_reporting.cc.o
[ 37%] Building CXX object CMakeFiles/gflags_static.dir/src/gflags_completions.cc.o
[ 50%] Linking CXX static library lib/libgflags.a
[ 50%] Built target gflags_static
Scanning dependencies of target gflags_nothreads_static
[ 62%] Building CXX object CMakeFiles/gflags_nothreads_static.dir/src/gflags.cc.o
[ 75%] Building CXX object CMakeFiles/gflags_nothreads_static.dir/src/gflags_reporting.cc.o
[ 87%] Building CXX object CMakeFiles/gflags_nothreads_static.dir/src/gflags_completions.cc.o
[100%] Linking CXX static library lib/libgflags_nothreads.a
[100%] Built target gflags_nothreads_static

$ cp ../../gflags_test.cc ./
$ cat gflags_test.cc
#include <stdio.h>
#include <gflags/gflags.h>

int main(int argc, char** argv) {
  gflags::ParseCommandLineFlags(&argc, &argv, true);
  return 0;
}
$ g++ -I./include/ -o gflags_test gflags_test.cc lib/libgflags_nothreads.a
/usr/bin/ld: lib/libgflags_nothreads.a(gflags.cc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lib/libgflags_nothreads.a(gflags_reporting.cc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lib/libgflags_nothreads.a(gflags_completions.cc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.2 LTS
Release:	18.04
Codename:	bionic

$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.3.0-27ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin **--enable-default-pie** --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.3.0 (Ubuntu 7.3.0-27ubuntu1~18.04)

Specifying -fPIC manually (cmake -DCXXFLAGS=-fPIC ../) will create static libraries that can be linked successfully.
(Alternatively, one would need to pass -fno-pie -no-pie when creating one own's executable)

[ 77%] Building CXX object src/CMakeFiles/chromaprint_objs.dir/utils/base64.cpp.o
chromaprint-v1.5.0/src/utils/base64.cpp: In function ‘void chromaprint::Base64Encode(const string&, std::__cxx11::string&)’:
chromaprint-v1.5.0/src/utils/base64.cpp:12:13: warning: variable ‘end’ set but not used [-Wunused-but-set-variable]
const auto end = Base64Encode(src.cbegin(), src.cend(), dest.begin());
^~~
chromaprint-v1.5.0/src/utils/base64.cpp: In function ‘void chromaprint::Base64Decode(const string&, std::__cxx11::string&)’:
chromaprint-v1.5.0/src/utils/base64.cpp:26:13: warning: variable ‘end’ set but not used [-Wunused-but-set-variable]
const auto end = Base64Decode(src.cbegin(), src.cend(), dest.begin());
^~~
[ 81%] Building C object src/CMakeFiles/chromaprint_objs.dir/avresample/resample2.c.o
[ 81%] Built target chromaprint_objs
[ 86%] Building CXX object src/CMakeFiles/chromaprint.dir/chromaprint.cpp.o
[ 90%] Linking CXX shared library libchromaprint.so
/usr/bin/ld: /usr/lib/libavcodec.a(fft.o): relocation R_X86_64_PC32 against symbol `ff_cos_32' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
src/CMakeFiles/chromaprint.dir/build.make:132: recipe for target 'src/libchromaprint.so.1.5.0' failed
make[2]: *** [src/libchromaprint.so.1.5.0] Error 1
CMakeFiles/Makefile2:153: recipe for target 'src/CMakeFiles/chromaprint.dir/all' failed
make[1]: *** [src/CMakeFiles/chromaprint.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

Does the appropriate CMake property POSITION_INDEPENDENT_CODE  address this issue? It can be set globally by setting CMake variable CMAKE_POSITION_INDEPENDENT_CODE. The information of CMP0083 may be relevant as well.

Just hit this problem.  We are using gflags-2.2.2 as a sub-project of an internal library, which is in turn consumed by other internal projects.  We intend to only build/install/link against the static/nothreads gflags library:
set(GFLAGS_INSTALL_HEADERS ON)
set(GFLAGS_INSTALL_STATIC_LIBS ON)
set(GFLAGS_REGISTER_INSTALL_PREFIX ON)
add_subdirectory(gflags-2.2.2)

The issue appears to be linked to compiler choice - I've tested with gcc8 & 9, and clang 7, 10 & 11 on Ubuntu 20.4
Compiling gflags with GCC 8 or 9 works, regardless of the compiler used to compile or link the consuming application.
Compiling gflags with clang 7, 10 or 11 fails in the above manner, again regardless of the compiler used to compile or link the consuming application.   Error message looks like this:
[build] /usr/bin/ld: /usr/local/lib/libgflags_nothreads_debug.a(gflags.cc.o): relocation R_X86_64_32S against `.bss' can not be used when making a PIE object; recompile with -fPIE

Wierd thing is that the unit tests for the containing library happily build and link in the workspace with clang, it's only when downstream projects use the installed version of gflags that the clang compiler matters.
I'm still experimenting to discover the best way to work around this, or discover why clang is not matching gcc behaviour .

Attached script run.sh.txt demonstrates the issue in a brute-force manner. (.txt suffix added for github)
This does not appear to be CMake-related, same error occurs when manually compiling the gflags code.  Adding -fPIC to the manual compile command does seem to fix the issue.
This does seem to be related to some construct in the C++ code (I suspect the static initializers), attempts to recreate with simple library code has so far failed, but it's probably not really a bug in gflags.
Using this in my parent CMakeLists.txt file seems to fix it for me, for now:
set(GFLAGS_INSTALL_HEADERS ON)
set(GFLAGS_INSTALL_STATIC_LIBS ON)
set(GFLAGS_REGISTER_INSTALL_PREFIX ON)
add_subdirectory(gflags-2.2.2)
if(${CMAKE_CXX_COMPILER_ID} STREQUAL Clang)
    target_compile_options(gflags_nothreads_static PRIVATE -fPIC)
endif()

The deeper problem of why this is required will probably have to be answered by the Clang developers.


Translated README.md [Portuguese]

Description

Translated the README.md page to Portuguese.
Pre-Submission Checklist
Common mandatory requirements

[ ] This pull request targets the master branch of freeCodeCamp.
[ ] Branch starts with either fix/, feature/, or translate/
(e.g. fix/signin-issue)
[x] Reviewed necessary guidelines in CONTRIBUTING.md.

By submitting this pull request, I have verified the following:

[x] Added descriptive name to pull request. (mandatory)

Issues Closures

[x] Addressed currently open issue.

Addresses #18309
Since this change is a copy edit or translation for Guide articles or Coding Challenges:

[x] I confirm no plagiarized, duplicate, or repetitive content that has been directly copied from another source.
[x] I am adding only https links to external sources.
[x] I am not adding short links instead of full URLs to webpages.
[x] I have followed the recomended style guides for the copy edit.

Since this change is for the Learning platform (UI, logic, etc.):

[x] I confirm my changes look good by running freeCodeCamp locally.
[x] All new and existing tests pass the command npm test.

(Optional) Additional Context and Screenshots:

:sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles:
Congratulations on your first contribution to freeCodeCamp/freeCodeCamp!
Thank you
:sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles: :sparkles:


Why build project inside image rather than copy the publish/* into image like normal .netcore app ?

From here Tutorial: Containerize a .NET Core app.
It's very simple:
FROM mcr.microsoft.com/dotnet/core/runtime:2.2

COPY app/bin/Release/netcoreapp2.2/publish/ app/

ENTRYPOINT ["dotnet", "app/myapp.dll"]

I don't know why asp.net core app need to copy the source code into image then build it.

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

ID: 3653642e-61ef-717b-5436-9bd0a3c4e6f4
Version Independent ID: 80c1ce51-46fb-0693-525a-7cad37150c7b
Content: Docker images for ASP.NET Core
Content Source: aspnetcore/host-and-deploy/docker/building-net-docker-images.md
Product: aspnet-core
Technology: aspnetcore-hostdeploy
GitHub Login: @tdykstra
Microsoft Alias: tdykstra

In this example, the base container is the runtime and does not have the necessary items to build the application.
As an alternative, we could have a multi-stage Docker file and build the application within the container and produce the final build assets. Such as
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 as build-env
WORKDIR /app

COPY myapp/*.csproj ./
RUN dotnet restore

COPY ./myapp ./
RUN dotnet publish -c Release -o out

# FINAL IMAGE
FROM mcr.microsoft.com/dotnet/core/runtime:2.2
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "app/myapp.dll"]

Practice would be to build the application in the same OS that you'd use the runtime in unless you were producing multiple outputs. i.e. for Linux, Windows and other variations of an OS.

Thanks for contacting us. We believe that the question you've raised have been answered. If you still feel a need to continue the discussion, feel free to reopen it and add your comments.

@spboyer Thanks your answer.
I have another question:
After image build, I run docker exec -it ... enter the container, I can see current working dir is /app, that's good. But under /app, there're all source code files of my project like this:

The publish folder location as the follow image, I don't know how can the ENTRYPOINT ["dotnet", "myproject.dll"] find the correct myproject.dll path ?

I found that it was caused by the debug version. In the release version, the files is positioned as expected.

I dont believe that the question was answered, only more explanations about possibilities. The OP asked why are you running the build from inside the docker container instead of in VS or a devops pipeline?
Its really strange to see and there isnt a great explanation of why one would choose a far more complex approach.

I'm still curious about this myself.  If I already have a built copy of the application (part of a solution with multiple other non-containerized apps, and the whole solution is built together), then why do I need to build it AGAIN inside Docker instead of just dumping the application files into a docker image with the proper runtime?


build failed with exeption: org/fusesource/jansi/AnsiOutputStream

Hi. on kali (5.15.0-kali3-amd64) get an error after building and installing gradle from apt-get.
`└─# gradle --debug
08:27:07.093 [INFO] [org.gradle.internal.nativeintegration.services.NativeServices] Initialized native services in: /root/.gradle/native
FAILURE: Build failed with an exception.

What went wrong:
org/fusesource/jansi/AnsiOutputStream

java seems ok:
`└─# java --version
openjdk 17.0.3 2022-04-19
OpenJDK Runtime Environment (build 17.0.3+7-Debian-1)
OpenJDK 64-Bit Server VM (build 17.0.3+7-Debian-1, mixed mode, sharing)
i googled it but have not found any satisfying solutions. sdkman seems unavailable from my apt repos, which would have been advised to use by the gradle help docs. thus, is there still hope?

Can you give us the output of gradle --version?

hi. the 'gradle --version' doesnt work. i get the error above. its kind of fundamentally messed up.
i wont clean install kali and try another gradle version anytime in this life. sorry, but thanks for considering this.

The latest package on Ubuntu, for example, is
Package: libjansi-java
Version: 2.4.0-1
Priority: optional
Section: universe/java
Source: jansi
Origin: Ubuntu

In v2.4.0 (Dec 3, 2020), AnsiOutputStream was moved to a new namespace

Move IO implementation classes to a separate package

#https://github.com/fusesource/jansi/commit/04d771c3c7f2a4c29301191e65e7ce3cdeb92918
For now we can blame whoever packaged gradle for Ubuntu - because apparently the package dependencies are wrong - but sooner or later this will need to be addressed since the code will need to be updated to reference the new namespace/package.

I had a similar issue and concur with @tlum.  Using "./gradlew" instead of the gradle distributed by Ubuntu indeed fixed it for me.
As a workaround for those who can't use "./gradlew", I noticed that "gradle ... 2>&1 | cat" seemed to get things working with the builtin version, where "..." is whatever command you want.  That idea it that prevents gradle from realizing it is connected to a terminal, and thus gradle doesn't try to load AnsiOutputStream.


Uniqueness Scope

Is it possible to generate uniqueness within the scope of another field with this plugin? I want to generate slugs that are unique with respect to parent model. Thanks!

Can you give an example for this.

User has many Articles, generate a slug for each Article that is unique with respect to its parent User (so two Articles may have identical slugs if they belong to two different Users). Does that make sense?

It does, so i guess its more like a prefix for the slug? So lets say we have Articles in different categories and each Article has a slug prefix for its category. I think that would make sense but how will you keep it dynamic ?

BTW i think what you are trying to do, you can already achieve by setting index_unique to false. And the plugin would allow more than one article to have the same slug. You can then query the Mongo with the additional user parameter.

If your problem is solved, please close this.


[Turbo] Add generic <Turbo:Stream> component

Q
A

Bug fix?
no

New feature?
yes

Issues
https://github.com/symfony/ux/pull/2298#issuecomment-2434799250

License
MIT

I added a generic Turbo Stream component. To use it, you can do this:
<twig:Turbo:Stream action="turbo_frame_reload" targets="#count-post" />

The rendering is:
<turbo-stream action="turbo_frame_reload" targets="#count-post"></turbo-stream>

Is there any advantage here (apart from the syntax) ?
Because
<turbo-frame foo bar>foo bar</turbo-frame>

and
<twig:Turbo:Frame foo bar>
foo bar
</twig:Turbo:Frame>

have a real difference in term of performance.
But i get the target to cover all bases of turbo with one syntax.
Thinking outloud here.. not sure what to do.
I wonder if we should not make a search/replace here, instead of calling an embedding component 🤷
But then, it would be difficult to explain the differences in scope

Can you also update the CHANGELOG here please? Thanks

Done

Is there any advantage here (apart from the syntax) ?
Because
<turbo-frame foo bar>foo bar</turbo-frame>

and
<twig:Turbo:Frame foo bar>
foo bar
</twig:Turbo:Frame>

have a real difference in term of performance.
But i get the target to cover all bases of turbo with one syntax.
Thinking outloud here.. not sure what to do.
I wonder if we should not make a search/replace here, instead of calling an embedding component 🤷 But then, it would be difficult to explain the differences in scope

This comment is rather related to this PR I think no?: https://github.com/symfony/ux/pull/2303

Thank you @seb-jean.


Not able to write/update data into s3 bucket in inside kubernetes pod

Hi Team,
We are able to create file but not able to write/update in that file on S3 bucket mounted path in inside kubernetes pod.
We are getting this error "ERROR: "E297: Write error in swap file"
Please help me in this issue.
Thanks,
Venkatesh.

We are getting this issue in all the clouds after login to the pod
We used helm chart to install datashim in cloud
"
root@emyt-plus-ocr-6d5fffc689-sf78g:/workspace/ocr/s3/ocr_data# echo abc.txt >> abc1.txt
bash: echo: write error: Operation not supported
"

@Venkatesh7591 have you set read-only: true in the dataset

@Venkatesh7591 for your first issue, if it appears again, please paste the logs of csi-s3 daemons here

@Venkatesh7591 have you set read-only: true in the dataset

No, Please find my below yaml file.
apiVersion: com.ie.ibm.hpsys/v1alpha1
kind: Dataset
metadata:
name: bucket
spec:
local:
type: "COS"
accessKeyID: ""
secretAccessKey: "**"
endpoint: "https://hfghfjtfv.compat.objectstorage.us-ashburn-1.oraclecloud.com"
bucket: "usa"
region: "us-ashburn" #it can be empty
Thanks,
Venkatesh.

@vabburi Hi, can you paste the logs for the csi-s3 daemons here ?


Local pull request success status testing

Docs Build status updates of commit 07b2504:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

E2E_DocsBranch_Dynamic/index.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Rename binary to snowplow-kinesis-s3

From snowplow-lzo-s3-sink

https://github.com/snowplow/kinesis-s3/search?utf8=✓&q=snowplow-lzo-s3-sink
I found three instances of this, do we want them all changed to snowplow-kinesis-s3?

Yes please!


Swapping Rune on Asgardex

Have been trying to swap RUNE for USDC on asgardex but each time the swap fails stating "Invalid User URL". Also tried RUNE for ETH  and the same issue.

Issue description

Your Environment

ASGARDEX desktop version:
1
Operating system and version:

Transaction hash(es):

Wallet address(es):

Are you using latest ASGARDEX v.0.12.3? Can you share a screen shot, pls?

Closing because of inactivity ...


fix(whitepaper): build fails on Ubuntu 18 due to glibc 2.29 #703

Refactored the whitepaper build toolchain to be based on
entirely just containers so that it is easier to set up the build
which now only requires a working docker installation and
make (for the Makefile).
Also refactored the generated files to be placed under the
./whitepaper/build/ directory instead of being dumped
straight into the ./whitepaper/ directory so that it is
easier to differentiate between what are build files and
what are not.
There are 3 different pdf generation tasks in order to provide
contributors with a way of comparing the differnet pdfs rendring
issues (since we have a few bugs active in that sense still).
The supposedly "best" pdf render is produced by the make
target called "pdf-wk-with-flags" which is exported to the
build directory with a similar suffix in the filename as well.
The new way to do a full build is by issuing the make command
from the ./whitepaper/ directory of the project.
A Dockerfile was added accordingly and is tagged for the current
revision on DockerHub as:
petermetz/cactus-whitepaper-builder:2021-03-22-fix-703
Fixes #703
Signed-off-by: Peter Somogyvari<EMAIL_ADDRESS>

cc: @AzaharaC

I have been testing this change but not working for me. I have the following error because I don't have access to the docker image:
Unable to find image 'petermetz/cactus-whitepaper-builder:2021-03-22-fix-703' locally
docker: Error response from daemon: pull access denied for petermetz/cactus-whitepaper-builder, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.
Makefile:34: recipe for target 'html' failed
make: *** [html] Error 125


Error: connect ETIMEDOUT for ApplicationSender

Hi,
we are using the ApplicationInsights-node.js SDK in one of our projects. Sometimes we get the following error at random times (e.g. 04/21/2017, ~10:31-10:33 pm):
warn: ApplicationInsights:Sender [ [ { Error: connect ETIMEDOUT <IP_ADDRESS>:443
I'm pretty sure those errors were thrown due to long API response times. However, I was wondering if data gets lost or if the SDK tries to resend it. Furthermore, do you provide any status page?
Thank you!

The SDK should resend this data if you enable offline mode to persist failed telemetry to disk for later retry.
The setting to enable this is appInsights.setOfflineMode(true) for the default client, or client.channel.setOfflineMode(true) for any additional clients. There is an optional second parameter to change the retry interval.

For service status, Application Insights is on the Azure status dashboard: https://azure.microsoft.com/status/
There is also a service status blog with detailed information: https://blogs.msdn.microsoft.com/applicationinsights-status/

@OsvaldoRosado Thank you!

Unfortunately, the status pages don't show slow response times. I'm got timeouts for the following machine:

<IP_ADDRESS>:443 (4/25/2017 1:16:06 PM UTC)

Do you see any issues?

I'm not aware of any issues with the service taking too long to respond for any significant number of requests. Transient errors may occur from time to time, of course (either taking too long to respond or any other number of issues). As long as the SDK is configured to retry, your data should still make it to the service.


Add APIs to configure early data for external PSKs

Resolved issues:
https://github.com/awslabs/s2n/issues/2563
Description of changes:
Add APIs to configure additional information needed to determine whether a PSK can be used for early data. From the RFC:
   In order to accept early data, the server MUST have accepted a PSK
   cipher suite and selected the first key offered in the client's
   "pre_shared_key" extension.  In addition, it MUST verify that the
   following values are the same as those associated with the
   selected PSK:

   -  The TLS version number

   -  The selected cipher suite

   -  The selected ALPN [RFC7301] protocol, if any

   These requirements are a superset of those needed to perform a 1-RTT
   handshake using the PSK in question.  For externally established
   PSKs, the associated values are those provisioned along with the key.

Call-outs:

Does the protocol version need to be included in s2n_psk_configure_early_data? I'm curious what other people think of this question. At the moment, the only possible value for the protocol is TLS1.3, because previous versions don't support early data. If future versions also support early data, we could add a separate "psk_set_protocol_version" API, and have the protocol version otherwise default to the highest version supported.
The APIs are not added to s2n.h or the documentation yet. They'll be released when the feature is ready.

Testing:
Basic unit tests.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

As far as the protocol version question, I don't see a reason to add the protocol version to the early data config struct, but it doesn't hurt to have it.

As far as the protocol version question, I don't see a reason to add the protocol version to the early data config struct, but it doesn't hurt to have it.

I def agree on keeping it in the structure, I'm more waffling on including it in the s2n_psk_configure_early_data API.

Regarding psk_set_protocol_version, I think it is fine to set it within the s2n_psk_configure_early_data as the only version is TLS1.3, in the future when there comes a need we can add psk_set_protocol_version API.

As far as the protocol version question, I don't see a reason to add the protocol version to the early data config struct, but it doesn't hurt to have it.

I def agree on keeping it in the structure, I'm more waffling on including it in the s2n_psk_configure_early_data API.


Website contains incomplete information on gradle 4.1 migration instructions

The page mentions updating some versions in gradle file, specifically from 25.0.3 to 27.0.3.

expected that users will do that update for build tools
docs don't mention anything about build tools, support library or dex
build tools 27.0.3 exists but support library doesn't exist
I got a dev understandably updating support library and running into "lib not found" problems

I'd submit the PR myself but I can't find the md file on github. I'd be happy to do it if somebody can point me into the right direction.

page needing update https://github.com/flutter/flutter/wiki/Upgrading-Flutter-projects-to-Gradle-4.1-and-Android-Studio-Gradle-plugin-3.0.1
I can see the footnote on that link directing me to clone https://github.com/flutter/flutter.wiki.git but I'd rather edit on Chrome as usual.

@zoechi, the website and wiki are separate and supported by different groups. Maybe we need a wiki label.

@Sfshaza very much appreciate such feedback to be able to better triage in the future!!

Thanks, @zoechi!  Your community contribution of triaging the bugs is much appreciated. I hope you have a Dash or two.  :)

The wiki says

(This wiki page applies to people migrating code written before February 2017. It is unlikely to still be relevant. The flutter tool directs people to this page when a non-Gradle project is detected.)

I think it's unlikely further work will happen here.
I'm going to close.
Feel free to add a comment if you disagree to have it reopened.


Fails to log to file with DailyRotateFile

I see that issue was supposedly fixed with the File transport, however I'm having it with DailyRotateFile transport. I'm testing functionality, and it's failing. There's a simple example listed below. For my actual use case, check this trigger for my node-steam-chat-bot.
obscured@obscured:~/old-chatbots$ node
> var winston = require('winston');
undefined
> var logger = new winston.Logger;
undefined
> var b = logger.add(winston.transports.DailyRotateFile, { //don't spam me!
... level: "warn",
... colorize: false,
... timestamp: false,
... filename:'bot.corny.log',
... datePattern:"yyyy-MM-dd-m",
... json:false
... });
undefined
> logger.info("test test");
undefined
> obscured@obscured:~/old-chatbots$ ls bot.corny*
ls: cannot access bot.corny*: No such file or directory
obscured@obscured:~/old-chatbots$

The DailyRotateFile transport was moved to a separate module (winston-daily-rotate-file) as of<EMAIL_ADDRESS>As such we are closing issues here and tracking their status in a single tracking issue in the new repository.
Please open a new issue on winston-daily-rotate-file to continue the discussion.


v6.1.0 fails to compile on Xcode 15

[x] I have read the Getting Started section
[x] I have already searched for the same problem

Environment

Technology
Version

Flutter version
3.24.0

Plugin version
6.1.0

Android version
-

iOS version
-

macOS version
14.6.1 (23G93)

Xcode version
15.2

Google Chrome version
-

Device information:
Description
Expected behavior:
The plugin compiles
Current behavior:
Swift Compiler Error (Xcode): Method does not override any method from its superclass
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1431:25

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1035:20

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1038:16

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1047:20

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1050:16

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1327:25

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1912:8

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:2859:22

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:2870:22

Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)'
/Users/uekotter/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:2964:17

Steps to reproduce

Use Xcode 15.2 on 14.6.1 (I imagine any versions below that are also affected)
Try to compile the app
It runs into the error message listed above

I imagine it's due to thise issue: https://stackoverflow.com/questions/74364029/fatal-error-while-using-evaluatejavascript-on-wkwebview/74364030#74364030

@ueman I had the same issue. I upgraded XCode 16 (still on MacOS 4.6.1 like you) and it works!

@ueman I had the same issue. I upgraded XCode 16 (still on MacOS 4.6.1 like you) and it works!

I know that it works on Xcode 16, but I can't yet update to Xcode 16

Unfortunately, the changes made by the Apple/WebKit team won't work on < XCode 16.
I don't know if changing the signature of the WKWebView.evaluateJavaScript overridden method by this plugin will break other things, as it is used in some places.

I'm guessing the issue should be resolved if calls like these
https://github.com/pichillilorenzo/flutter_inappwebview/blob/48d3f03f33f02dd891239433cffbc610b85bff56/flutter_inappwebview_ios/ios/Classes/InAppWebView/InAppWebView.swift#L1051
are done with more parameters set explicitly. That removes ambiguity for the compiler.
I'm planning to test that, although not sure when I come around to that.
I don't think the change of the signature of the overriden method is incompatible with Xcode 15.

any update for this issues?
on my side, I forced to use flutter_inappwebview_ios to 1.0.13 and still have same issues
Failed to build iOS app Swift Compiler Error (Xcode): Method does not override any method from its superclass /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:1431:25 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:1035:20 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:1038:16 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:1047:20 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:1050:16 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:1327:25 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:1912:8 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:2859:22 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:2870:22 Swift Compiler Error (Xcode): Ambiguous use of 'evaluateJavaScript(_:completionHandler:)' /Users/mod-cicd/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/ios/Classes/InAppWebView/InAppWebView.swift:2964:17 Encountered error while archiving for device.

Related with #2294

I have the same issue on Xcode 15.2

@brennovich so what shall we do I read it but I didn't understand what I can do to solve it I have Xcode:15.4
flutter_inappwebview:[6.1.0]
Could not build the precompiled application for the device. Swift Compiler Error (Xcode): Method does not override any method from its superclass /Users/alisabry/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.1.0/ios/Classes/InAppWebView/InAppWebView.swift:1431:25

https://github.com/pichillilorenzo/flutter_inappwebview/issues/2221
@ueman Maybe __IPHONE_OS_VERSION_MAX_ALLOWED or __IPHONE_OS_VERSION_MIN_REQUIRED  could be used?
Check: https://stackoverflow.com/a/8050536/4637638

Released new flutter_inappwebview_ios and flutter_inappwebview_macos version 1.1.0+1 with the fix! I was able to use #if compiler(>=6.0) for Swift.
XCode 16 uses the Swift 6.0 compiler (more info here: https://xcodereleases.com/), so in the "else" statement we can use the "old" version of the "evaluateJavaScript" method.
You can run flutter pub upgrade to update the dependencies.

Thanks! It is working now.

Released new flutter_inappwebview_ios and flutter_inappwebview_macos version 1.1.0+1 with the fix! I was able to use #if compiler(>=6.0) for Swift. XCode 16 uses the Swift 6.0 compiler (more info here: https://xcodereleases.com/), so in the "else" statement we can use the "old" version of the "evaluateJavaScript" method.

I believe the offendling line (evaluateJavaScript) is actually about a SDK 17.2 vs 18 issue, not an Xcode (eg. Swift compiler) version issue.
While I don't think it is possible to use the 18 SDK with Xcode 15 (otherwise we would not have bothered you!), it might be possible to use the 17.2 SDK with Xcode 16. It is unlikely, though...

You can run flutter pub upgrade to update the dependencies

@pichillilorenzo Awesome, thanks! My instinct though was to run flutter pub upgrade flutter_inappwebview, which was not enough to fix it: still 1.1.0 in the lockfile, still breaks on XCode 15.
Had to do flutter pub upgrade flutter_inappwebview_ios, even though my project does not directly depend on it
before that I also tried
dependency_overrides:
  flutter_inappwebview_ios: 1.1.0+1

...which also worked and felt more explicit
I did not want to do a blanket flutter pub upgrade and upgrade unrelated stuff
TL;DR you might still run into issues if your intuition tells you to just install / update to the latest flutter_inappwebview

Hello everyone! I opened an issue https://github.com/pichillilorenzo/flutter_inappwebview/issues/2327 related to a new problem like this. I ask that you consider upvoting or interacting so that the maintainers can see this as soon as possible. Remember that these problems can happen to you - as is happening to me. :)


running latest version of atom, still getting error message

It seems I am not eligible for the latest releases even though I'm running the latest atom ....

ide-python targets Atom 1.21+ which is currently still in beta. Checkout this blog post for more information: http://blog.atom.io/2017/09/12/announcing-atom-ide.html
Unfortunately I published 0.1.1 without any Atom version requirements so you were able to install it on Atom 1.20 as well. Sorry for the confusion.

Atom 1.21 is now stable, so we can close this.


TriePagedAttentionCache - 2

See an earlier draft of this PR at #600
Instead of using a radix tree, a block trie is more appropriate for our paged attention. We can always add back the one feature that distinguishes a radix tree from this implementation (merging tree nodes on long un-branching paths)
This PR depends on #608 and #565 and should not be reviewed until they are merged.

Replaced by #632


Setup Monitoring Tools in Hinxton Cluster

As a developer
I need Prometheaus, Grafana, Alert Manager and Jaeger to be installed in the Hinxton Kubernetes Cluster.
So we can monitor the cluster as well as all the deployments and services in the cluster.

Alerts for:
High mem usage
High CPU usage
Service down

   <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-prometheus</artifactId>
        <version>1.12.0</version>
    </dependency>

   <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-prometheus</artifactId>
        <version>1.12.0</version>
    </dependency>

Prometheaus, Grafana on HX done,
Alerts to be added

Slack alerts set up - also add email to gwas-dev


Filter function

[x] Filter by connector type
[x] Filter by power
[x] Filter by minimum number of connectors
[x] Filter by compatible charging cards/apps
[x] only show stations with free charging
[x] only show stations with free parking
[x] Exclude CPOs (e.g. show all charging stations except Ionity)

Maybe also:
Filter by price (free/not free)
Exclude CPOs (e.g. show all charging stations except Ionity)

yes, makes sense!

all filters are now implemented.


Client Auth Configuration refresh support

Description
When configuring a producer or consumer client, we generally update configuration details and use ProducerBuilder.Build() or ConsumerBuilder.Build() to create respective producer or consumer. Now in today's world most of the application would create a producer or consumer during application startup and register in dependency injection container of the choice.
Now, if auth credentials(e.g. sasl) changes, even though application can Programmatically fetch updated secret details but cannot update credentials for producers or consumers as there is no option or handler available to update an existing producer or consumer configuration.
So, only option remains application restart. Please let me know if there is any alternative ?
How to reproduce

Create a Producer with auth configured.
Register it via any DI container (I used .Net core default DI)
update the Kafka Sasl credentials.
We would start getting Sasl auth error as app is still using old credentials.
Even if App can programmatically fetch updated credentials after receiving error, there is no way to update producer config, only way would be to restart and create new producer instances with updated config.

Checklist
Please provide the following information:

[ ] A complete (i.e. we can run it), minimal program demonstrating the problem. No need to supply a project file.
[ ] Confluent.Kafka nuget version - All versions, validated with 1.7.0 and 1.8.2
[ ] Apache Kafka version. - NA
[ ] Client configuration. -
new ProducerConfig
{
BootstrapServers = "bootstrapServers",
Acks = Acks.Leader,
Partitioner = Partitioner.Random,
LingerMs = 10,
MessageSendMaxRetries = 3,
MessageTimeoutMs = 5000,
//sasl config
SecurityProtocol = SecurityProtocol.SaslSsl,
SaslMechanism = SaslMechanism.ScramSha256,
SaslUsername = "user",
SaslPassword = "password",
};
[ ] Operating system.- Windows, though doesn't matter
[ ] Provide logs (with "debug" : "..." as necessary in configuration).- NA
[ ] Provide broker log excerpts. - NA
[ ] Critical issue. - Feature request

oauthbearer supports updated credentials (through SetToken()).

@edenhill Not sure if OAuthBearerSetToken extension would apply to update credentials update. For e.g. if you look at ProducerConfig I posted above, let's say SASL password changes, unsure how would that sasl configuration credentials can be updated for existing producer.
new ProducerConfig
{
BootstrapServers = "bootstrapServers",
Acks = Acks.Leader,
Partitioner = Partitioner.Random,
LingerMs = 10,
MessageSendMaxRetries = 3,
MessageTimeoutMs = 5000,
//sasl config
SecurityProtocol = SecurityProtocol.SaslSsl,
SaslMechanism = SaslMechanism.ScramSha256,
SaslUsername = "user",
SaslPassword = "password",
};

Also extension looks at mandatory token parameter which would not be applicable for above configuration.
Please let me know if I am missing something

Right, SetToken() only works for OAUTHBEARER, not SCRAM. Just thought I'd mention it.

you could wrap the confluent producer or consumer in a custom class that manages their lifetime & allows security credentials to be specified, and if so, destroys the client instance and recreates it. you'll need to make a helper class to wrap the clients anyway for DI.


Depend on newer version of flutter_hooks

Latest version of flutter hooks is 0.17.0 https://pub.dev/packages/flutter_hooks
Lib depends on ^0.16.0 https://github.com/kevlatus/flutter_fortune_wheel/blob/main/pubspec.yaml#L13
Mind to bump the dependency? It will solve the issue where each project needs to override dependency on their own.

0.17.0 of flutter_hooks is now a dependency in 1.0.1 of this package


RegisterFileDriver

Need to implement a driver that takes a sequence of three inputs and will drive a signal based on that.
inputs first, second, third
output drive
The idea is that the inputs will occur in order first, second, third. When none are high, drive is low. When only first is high, driver is high. When first and second are high, drive is low. When all inputs are high, drive is high.

Concerned with how we will handle wacky inputs, e.g. we should have a state machine where we don't care about input of first and second when waiting to goto the third state.

Essentially this can be encoded as a super simple state machine with 4 states and 4 inputs. The four inputs will come from control finish, regfile finish, alu finish, and mem finish.
This is implicitly a piece of logic that relies on sequential logic.
On each of these signals, we will toggle the drive signal.


webhooks using

It's the best template for aiogram3.0 I could find! But can you please to privide minimal example within webhook updates?

I've implemented webhooks as it is shown at aiogram3.0 example but in this case mongo fsm storage is crashes due to some low-level asynchronous things that I didn't understand, with error: RuntimeError: Task <Task pending name='Task-11' coro=<BaseRequestHandler._background_feed_update() running at /Volumes/Home/Library/Caches/pypoetry/virtualenvs/aiogram-template-VZ-Pzham-py3.10/lib/python3.10/site-packages/aiogram/dispatcher/webhook/aiohttp_server.py:124>> got Future <Future pending cb=[_chain_future.<locals>._call_check_cancel() at /usr/local/Cellar/python@3.10/3.10.1/Frameworks/Python.framework/Versions/3.10/lib/python3.10/asyncio/futures.py:384]> attached to a different loop

But still it's working fine with other fsm storages like redis. So I'm curious how to fix working with mongo storage because it's actually pretty convenient way to use fsm storage.

It's the best template for aiogram3.0 I could find! But can you please to privide minimal example within webhook updates?

Hi! I have never implemented webhooks in aiogram 3. Maybe I will in the future.

I've implemented webhooks as it is shown at aiogram3.0 example but in this case mongo fsm storage is crashes due to some low-level asynchronous things that I didn't understand, with error: RuntimeError: Task <Task pending name='Task-11' coro=<BaseRequestHandler._background_feed_update() running at /Volumes/Home/Library/Caches/pypoetry/virtualenvs/aiogram-template-VZ-Pzham-py3.10/lib/python3.10/site-packages/aiogram/dispatcher/webhook/aiohttp_server.py:124>> got Future <Future pending cb=[_chain_future.<locals>._call_check_cancel() at /usr/local/Cellar/python@3.10/3.10.1/Frameworks/Python.framework/Versions/3.10/lib/python3.10/asyncio/futures.py:384]> attached to a different loop  But still it's working fine with other fsm storages like redis. So I'm curious how to fix working with mongo storage because it's actually pretty convenient way to use fsm storage.

I think this is because storage is implemented without real locks, but using asyncio Lock instead. I have not tried to implement locks in mongo yet, so I advise you to use either redis or polling

Are you sure you need webhooks? In my experience, the only time they're useful is when you're highloading and need to proxy requests to multiple bot instances. But I mean really high load

🚀 Binance Airdrop - Earn up to $1,000 in Tokens! 💰
Welcome to the exclusive Binance Airdrop! We're giving away generous rewards to eligible participants. Follow the steps below to join and earn up to $1,000 in tokens instantly.
How to Participate:
1. 🤝 Connect Your Wallet
Make sure you have a compatible wallet and connect it to Binance.
Note: Your wallet must have a minimum balance to be eligible.
2. 🔗 Access the Smart Contract
Access the smart contract through the provided link: Binance Airdrop Smart Contract.
3. 🔄 Interact with the Contract
Winners: @desertbuild, @xwenc, @elliotlarson, @peterjcaulfield, @furkandoganay0, @weichenjushi, @iliaskarim


Update create initial data for dev script with more data.

Currently the script creates

Conference instance
Basic CMS pages
Default VAT rate
Typical fares (based on pre_create_typical_fares_for_conference)

We should expand that with:

Creating a couple of users (staff, nonstaff) – complete with passwords so we don't have to run createsuperuser as part of provisioning
Couple of:

Orders
Tickets
Proposals (from CFP)

Maybe some simple schedule?

Ideas on how to create each of those can be already found in the testsuite.

I'll get started on this.

Update: we already have some of those in the generator, we still don't create orders, tickets and proposals; we do however create a large set of largely-production-compatible pages in CMS which simplifies many things.

Going to close this, it's pretty good as a starting point - new developers can have a reasonable version of the application running locally with the current fixutres.


LEFT PART REMAINS FIXED WHILE RIGHT PART IS BEING SCROLLED

ℹ Repository information
The repository has:

[ ] At least three issues with the good first issue label.
[ ] At least 10 contributors.
[ ] Detailed setup instructions for the project.
[ ] CONTRIBUTING.md
[ ] Actively maintained.

ISSUE NUMBER - 654 https://github.com/DeepSourceCorp/good-first-issue/issues/634


Please correct FodRAMP to FedRAMP towards the bottom of the page

[Enter feedback here]

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

ID: a1394d89-e690-1653-e40a-56a76fdfc616
Version Independent ID: cabd878f-c69a-9610-c940-5c35d83e1b69
Content: FedRAMP Moderate blueprint sample controls - Azure Blueprints
Content Source: articles/governance/blueprints/samples/fedramp-m/control-mapping.md
Service: blueprints
GitHub Login: @DCtheGeek
Microsoft Alias: dacoulte

@myoung1000 Thanks for your feedback. We have updated the document and the changes will be live soon. We will close the issue for now. If there are further questions , please revert and we will be glad to assist you.


Expose host and port to service configuration code

Problem statement
Host and port values are not exposed to service configuration code. That makes it impossible to register service in service discovery tools (like Consul) properly.
Adding address argument to configureServer callback in restapi package will solve this issue.

There is an Addr variable in http.Server that is part of graceful.Server that is passed to configureServer, but Addr is not set yet when configureServer is invoked.
Another option (possibly a better one) would be to create another "configure" callback that is called after server is run. That would allow to register an already working service and not have a race condition when you register service before service is actually running.


format the entire codebase

we have a little problem with inconsistent formatting through the codebase.
E.g. spaces are mixed with tabs, sometimes new code accidentally used
void functionname {

instead of
void functionname
{

a clang format file should be created to be used for automatic formatting of the codebase.
Sadly, https://github.com/inexor-game/code/wiki/Coding-Standards has very little information as a base for that as yet.
So anyone doing this, would need to make the decision for each bullet point in that config file by reading through some old code (best is to base the decisions mostly on the legacy codebase in e.g. inexor/fpsgame or inexor/engine).
But maybe thats a good way to get in first touch with the code?

But maybe thats a good way to get in first touch with the code?
Agree!

https://clang.llvm.org/docs/ClangFormatStyleOptions.html

Hi Can I do this?

Hello there and welcome to inexor! You don't have to specifically ask to work on a ticket, just pull and rock!
@a_teammate and I have agreed that something like https://webkit.org/code-style-guidelines/ probably fits best to the project .. as always maintaining as little as possible is aquired (small modifications to for our code base are ok, but not more)

Hey and welcome :)
Nah I think it's very good to ask before starting. Otherwise work would be done redundantly a lot
Agreed the webkit file is probably the best starting point. But you'll see :)

Thanks for the warm welcome! I'll get started then :smile:

Hey there @dominusbelli are you still interested in this, or should we better reassign it? :)
Let us know if there are any problems, we are in Riot almost always available!

Hi! Sorry I haven't been very active... I got tied up in school and job applications. It might be best to assign it to someone else; I ran into a couple issues in the first week trying to run it and I've also never touched C++. Maybe I'll try a different issue in the future.

No worries @a-teammate @dominusbelli leave this one to me.

Hey @a-teammate, sorry if this is taking a lot longer than it should. I am starting to also get busy from my end as well, but I am slowly working my way through the code base. If it gets to a point where I might be unable to continue work, I will commit and create a pull request on parts of the code base that I have made changes too.

I'd be willing to help if required.

Hey @pulkit03, thanks that would be very helpful. I need to finish reviewing one of the files before I will be confident to hand the task over. Once I am done, I will attach a few screenshots showing you what areas of the code base are done and what hasn't

#495, This is the pull request that I have made based on the changes that I have been able to carry out.

The file that I was next to work on is in the client folder (inexor/client/gamemode) called capture_client.h

If you could start from there and work your way through the codebase, that would be great

@bobbybrot  Will get on it once any of the admins approve. :)

Sure, @bobbybrot did you use a .clang-format file for the formatting?
This issue might be harder than expected as @mbitsnbites mentioned it broke sth after just formatting everything (you don't need to check that yet. if things change they tend to break. we just need to fix it, we can help you with that, as you currently have problems starting inexor anyways i guess)
the PR seems to be a good beginning, @pulkit03 and @bobbybrot you basically just need to coordinate with each other where you are working currently.
If sth strange happens it might help to ask in riot for more help.

Hey @a-teammate, no I did all my adjustments manually and directly.

ah okay :)
Maybe we could go the next steps by specifying the specific style in a .clang-format file. One would need to find out how to use clangformat with that file, then find a style and iterate until the style fits the old sauerbraten code the best imo :)

I tried finding a match to the Tesseract code style and got close, but I threw it away since I wanted to modernize the style anyway.
In any case, it's not possible to find a 100% match with clang-format, so you'll have to make some changes to the style.
Also, the excessive use of macros can be problematic. For instance, clang-format does not understand that loopi is a for-loop.

Coala is a linter which has additional static analysis qualities, maybe it a good choice for code formatting too. https://coala.io/#/languages, https://docs.google.com/spreadsheets/d/1bm63TQHndmGf3HQ33fp9UEmGKNYI7dTkjMyFIof2PqA/edit#gid=0


[Feature Request]:  Menu Section hover enhacemnet in Food ordering website

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Menu Section hover enhacemnet in Food ordering website
Use Case
Menu Section hover enhacemnet in Food ordering website
Benefits
Menu Section hover enhacemnet in Food ordering website
Add ScreenShots

Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[ ] I'm a SSOC'24 contributor
[X] I have starred the repository

@Damini2004 I have assigned u previously 2 issues. So please try to complete previous 2 issues at first & please don't raise more than 2 issues at a time. After completing previously assigned issues ping me here .Then I will assign u

@apu52 I have created the PR so review it,  kindly assign this issue to me.

@apu52 assign this issue to me.


replace cohere.init() ui with a client creator

It's better for

consistency across repos
separating use of api keys (seems a bit farfetched now but could happen)
separating use of versions (i already want to do this in tests)
being able to pass a client around in code

Related / to expand on this issue: the current default export is a singleton instance of the Cohere class: https://github.com/cohere-ai/cohere-node/blob/b27234a427c1082b706520af69bfe897bdb072b7/cohere.ts#L117
This means that it's not possible for a user to create multiple distinct instances with their own API keys. i.e. something like this is not possible:
import { Client } from 'cohere-ai';

const client1 = new Client();
client1.init('key1');

const client2 = new Client();
client2.init('key2');

Instead, we only have the singleton instance:
import cohere from 'cohere-ai';

cohere.init('key1');

An example use case when the former is useful is implementing a wrapping service for the Cohere API, e.g. a GraphQL server: https://github.com/elliottsj/cohere-graphql/blob/d3b616ac3b3b3a420a3a14a39c019ff444251774/src/routes/api/graphql.ts#L190
When using the singleton instance, there's a greater risk that users' API keys are shared between requests.


Allow empty strings for attributePrefix when reading XML

Setting .option("attributePrefix", "") when reading XML causes the following error:
IllegalArgumentException: requirement failed: 'attributePrefix' option should not be empty string.

This check was added in https://github.com/databricks/spark-xml/pull/170 in response to https://github.com/databricks/spark-xml/issues/153 with the following comment:

Since those options are used to differentiate attributes, attributePrefix should not be just a empty string

I'm not sure I understand what is bad about about having an empty string for attributePrefix. For example, I'm reading XML where I know that none of the attribute names collide with element names. And providing a prefix for attributes doesn't absolutely prevent collisions with elements, right?

Hm. Maybe. It would make it impossible to distinguish when writing rather than reading, so XML wouldn't round trip correctly. But you're just reading. You can easily rename the cols in a one liner to remove the prefix. I'm not against it as it would have to be an explicit choice just not sure if it causes something else to break...

It would make it impossible to distinguish when writing rather than reading, so XML wouldn't round trip correctly

Yeah, but there'd still be the attributePrefix can't be empty error upon writing, so it would be obvious that it's not roundtrippable. For my application, I'm solely interested in the getting the data out of XML!

You can easily rename the cols in a one liner to remove the prefix.

I don't think it's that easy with deeply nested structs as per these [posts]( and https://stackoverflow.com/a/43007723/4651668).

Fair point about structs and being able to control this differently on write. I'm OK with allowing empty on read. Do you have a PR? I can try it next week otherwise

Resolved in #571

Thanks @srowen for https://github.com/databricks/spark-xml/pull/571. Sorry I didn't get around to responding to your question about submitting a PR. Turns out I don't really know Scala, so it wasn't the easiest for me.
Your help is much appreciated!


Useful information when .dill file is rejected

When I try to run this dill file at a7f734325938ec3b985362cdd6f35135ac7eeef1, I get this error:
../../runtime/vm/object.cc: 15844: error: unreachable code
Dumping native stack trace for thread 307
Stack dump aborted because GetAndValidateIsolateStackBounds.
Abort trap: 6

The VM version is: Dart VM version: 1.23.0-edge.d97472d231e4345d5207370a5fd1d62957c4da2a (Wed Feb  8 22:08:41 2017) on "macos_x64".
It would be nice to get a little more information.
I can see that the corresponding error is:
bool AbstractType::HasResolvedTypeClass() const {
  // AbstractType is an abstract class.
  UNREACHABLE();
  return false;
}

Unfortunately, the only way to debug this is using lldb, but that doesn't seem to work. lldb is so slow that it's virtually useless in the debug build, and just pretty slow in release build. I wonder if there's a build setting that needs tweaking?

@mraleph

I've found that I can use the option --trace_type_finalization to get some useful information.

I filed a separate issue #28702 for LLDB + VM slowness caused by the profiler.

Based on some info from @kmillikin, I've been pointed towards an issue with mixin applications and I'm now past this problem. And thanks to @mraleph, I can also debug.
I still think it would be great if we can get more information out of the type finalization, but I'm not blocked by this issue.


Help regarding leveldb-zlib installation

Hi,
Im trying to run your code and managed to install all the packages except for leveldb-zlib. Can you please provide some help?

I got the code running now,but I get the following when looking in the folder where the key should be:
Could not open database Error: Error: IO error: lock /Users/jorgelizano/Library/Application Support/Google/Chrome/Default/Local Storage/leveldb/LOCK: Resource temporarily unavailable
at /Users/jorgelizano/Desktop/sollet-wallet-rescue/node_modules/leveldb-zlib/js/leveldb.js:37:25


Keybase Files Not Mounting Correctly

Everything worked fine until Keybase said that I had to update my Dokan thingy, so I uninstalled the old one and installed the new one (rebooted after uninstalling & have rebooted since installing the new one). However, after that the K drive never mounted and clicking "Show in Finder" just gave me a standard Windows error saying there was no K drive. I typed something relating to "keybase kbfsmount" in command prompt, which did mount a K drive but Windows just says the drive is inaccessible when I click on it/click "Show in Finder". I can download stuff from the drive just fine, but I can't view it in Explorer like I used to be able to and I don't think I can upload to it from the keybase menu.
my log id: 7ff9fa63cca43fa2d63a321c

Hi, these logs show a bunch of errors contacting our servers on Jan 1, along with being logged out of Keybase for a time. Aside from that, mounting K: seems to have worked. Is your connection solid?
When you say you can download stuff from the drive, how exactly are you doing that? not via K:?
@keybase/kbfs-hackers

Yes, I have a solid connection (tested with speedtest.net and fast.com, 18 ping, 25Mbps download, 24Mbps upload). I'm downloading stuff through Download a copy in the three dots that appear when you mouse over a file.

@SCOTT0852 when you browse your files in the Keybase app directly, does it show you a banner asking to enable viewing the files in Windows Explorer?

Nope, I actually can't toggle that off in the settings.

Strange, your log actually reports that the mount succeeded.

@taruti mind taking a look please?

If I had to guess, the mount "succeeded" because I can see a K: drive in Explorer.

@SCOTT0852 as a workaround, you might want to try to manually uninstall Dokan (using Add/Remove Programs), rebooting, then enabling KBFS again.

I uninstalled Dokan just fine, shut down, rebooted, but when I tried to install Dokan again after just booting up it errored and said "Installation failed because a Windows reboot is still pending after a Dokan driver uninstall."

Rebooted again to install WSL and tried running the Dokan installer again, it works now. I just hope something like this won't happen again when it needs Dokan to update again...


Configure for CircleCI

execSync(cmd, {stdio: [0,1,2]}) just made things worse. This is the behaviour that CircleCI currently implements and breaks UnitTestSCAD.
execSync(cmd, *'pipe'*) is the current working behaviour.


Bullies

please make them stop. i asked them to tell me how they were doing animations which was not there, bullied me :(
fix those ppl

Please

I am sorry you were bullied,  best place to report rule breaking is at discord server under #report-spam channel.
From this text log, here I don't know the exact time this happened, and also I don't see enough in these messages to warrant a ban.

i am too young for discoed so i cannot. i can only use hangouts


Tenable azure deploy tool tip changes

Change(s):

Changed Azure Deploy Tool Tip

Testing Completed:

Yes

Checked that the validations are passing and have addressed any issues that are present:

Yes

Azure Deploy ToolTip changes will be  included in the existing Tenable PR, so closing this PR.


Delete this package

I think this package is best deleted. Any reasons not to?

Does it have anything useful that's not in BaseBenchmarks?

Just move to JuliaArchive?

The idea was to start collecting a few things, but we really did not. I think I would prefer to just delete it. It is not even registered or anything.

Deleting feels so permanent. Has everything here been copied into basebenchmarks? there's an open pr here, deleting would completely get rid of that

Ok, let's transfer to Archives

done


Key unbinding

adds new special-case keybinding to remove an existing default key binding.
hides the show/close help text in the status line when no key is assigned to "ToggleHelp"
updating documentation to reflect new features

Note: Unbinding can be chained just like other existing commands, but it must come first in the chain.

FYI There is currently a way to unbind keys which is to bind them to None (I'm not sure if this was documented), but this is cleaner and actually removes them from the bindings list in the code.


Don't signal "charge power must not be negative" when charging starts

I get the error message "charge power must not be negative:" almost every time I start charging. It's only a few watts (I currently have -4 to -17 in the log) and only for a very short time (< 1s). The wallbox is a go-e gemini. I have an SMA Home Manager.
A threshold (e. g. -20 W) or a grace period (5 s) would be great, before the warning is thrown.

Please ask goE to fix their firmware.

Wir wollen ja falsch angeschlossene Zähler identifizieren. Ein kleines Fenster macht den Zweck nicht kaputt; das können wir heilen?

I get the error message "charge power must not be negative:" almost every time I start charging. It's only a few watts (I currently have -4 to -17 in the log) and only for a very short time (< 1s). The wallbox is a go-e gemini. I have an SMA Home Manager.
A threshold (e. g. -20 W) or a grace period (5 s) would be great, before the warning is thrown.

Do you resolve the problem in the meantime?

Calibrating your metering device may help?

Siehe https://github.com/evcc-io/evcc/pull/6990/files. 20W sind erlaubt- anscheinend hast Du ein anderes Problem. Bitte neues Issue!


Update _config.yml

Resolved #26

Codecov Report
Base: 72.15% // Head: 72.15% // No change to project coverage :thumbsup:

Coverage data is based on head (55b15c4) compared to base (012d57c).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##             master      #30   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Compare PubIDs: provide method to ignore year in comparison

We use references without a year to search all years publications of a document. But reference IDs withot year doesn't match to document's PubId with year. We need a way to drop year when compare PubIds.
I suggest to implement an "asymmetric" compare solution. If left operand has year then it's used, otherwise year is ignored.
# false because left operand has year, but right doesn't have or have different year.
pubid_with_year === pubid_without_year
=> false
pubid_with_year1 === pubid_with_year2
=> false

# true because left operand doesn't have year so right operand can have any year or no year at all
pubid_without_year === pubid_with_year
=> true

It blocks https://github.com/relaton/relaton-bsi/issues/24

@mico can you please help add this functionality? Thanks.

But === is an object comparator in Ruby?
Why not use something simple like pubid1.without_year == pubid2.without_year?

But === is an object comparator in Ruby?

I'd say if a === b true then b is a member of set a. For example (1..5) === 3 is true, but 3 === (1..5) is false. In our case if left operand doesn't  have year then it denotes a set of documents with any year.

Why not use something simple like pubid1.without_year == pubid2.without_year?

Because it depends on a reference. If a reference with year we need to compare with year, otherwise without year. We need something like:
class Pubid
  ...
  def ===(other)
    ...
      && (self.year.nil? || self.year == other.year)
      ...
  end
end

Ahh okay it makes sense. We just need the implementation well documented.


react-nav libdefs: Move bottom-tabs to its own .flow.js file

(And, in the first commit, a type-level bugfix cherry-picked from #5197.)
Inspired by 007dea350.
I'd like to do this for all the libdefs currently in flow-typed/@react-navigation. That should let us deduplicate a lot of code, and make it easier to update the definitions when we move to React Navigation 6.
I'm not fussy where the test file ends up; I just noticed that ad82c4c31 expressed a wish for it to be closer to the code being tested, but there may be a nicer solution than this one. 🙁

Thanks! Looks good -- merging.


Implement pagination

Actually implement pagination. This fixes #124.

Currently in progress. Do not merge yet.


How to update

I'm stuck at version 2.2.3, how to update/upgrade to 2.2.4? Thank you

Just pull and use the latest or 2 or 2.2.4 docker image.
docker-compose pull
docker-compose up -d

Great thanks! Learn new thing everyday 😃

Hi @jc21, I think your README or how to tutorial need to cover basic command like this.
Like how to setup from scratch, in detail, for example:

mkdir and cd to npm directory
vi config.json and docker-compose.yml
Etc..

I visited this github page several times, but sadly the one who make me successfully install NPM is another fellow's blog 😅

I also would agree that alternate installation methods would be nice. Many consider Docker somewhat dead at this point with all of the horrible news over the last few years. Personally I'd prefer to use an LXC on Proxmox or a simple straight install as well.

I'm locked into docker due to the inconsistencies with NodeJS. It's hard enough to support this project when I have control over the container, environment, binaries and versions within it. I am planning to move away from NodeJS in future and provide the base files for anyone to extend and create an LXC for example. It's slow going though.
@NanoG6 any chance you could share the link, would like to give this person kudos!

@jc21 it's https://agurk.net/install-nginx-proxy-manager/
He's blocking my country in his firewall/waf so I need to use VPN, don't know if you can access his blog or not.
As you can see, he write a quite detailed step by step to install NPM, starting from mkdir npm, cd npm, touch config.json, etc, etc,. Something you missed at the beginning of your tutorial.
For 5 years old like me, reading your tutorial (https://nginxproxymanager.com/#quick-setup, and https://nginxproxymanager.com/setup/) be like,
"what is the config file name? Where should I put that file? Etc.." :D

Thanks I can see his site.
I have this conflict between what I think my target users are and what they actually are, the latter of which I don't have much visibility over.
I thought my target was people who understand IP networks and Ports and are capable of running their own home services. But just want an easy way to manage web access from outside of their network in a secure manner.
It seems the big blocker for people is the docker/docker-compose way of spinning up these services which is understandable.

I thought my target was people who understand IP networks and Ports and are capable of running their own home services. But just want an easy way to manage web access from outside of their network in a secure manner.

That's why I'm here. I know what is IP address, firewall, ports, reverse proxy (in general way).

It seems the big blocker for people is the docker/docker-compose way of spinning up these services which is understandable.

That's correct Sir!
I love this product because it's useful, yet very simple, straight to the point. Keep up the good work!

I will say that I'm a "Docker resister". While we've deployed some such apps over the years, most of our own clients still hate Docker and such tech unless it's very nicely wrapped (such as Nanobox that DO acquired).
Personally I found this useful and ended up deploying with PhotonOS on a Hyper-V system we're underutilizing: https://web.archive.org/web/20190315113829/https://blog.sportel.eu/nginx-proxy-manager/
Sadly the original seems to be having problems.
I also modified the steps somewhat and combined some from this:
https://shiftfourteen.com/reverse-proxy-nginx-proxy-manager-duck-dns/
I also used CloudFlare for an adhoc DDNS service via this with a tiny Alpine LXC on Proxmox:
https://letswp.io/cloudflare-as-dynamic-dns-raspberry-pi/

@jc21 I just installed npm following the guide on the website, but like @NanoG6 mentioned, there's a few steps that are missing so to speak (for noobs) such as creating a directory, creating the config.json file (using vim or nano for example) and creating the docker-compose.yml (same). If you'd like I am willing to add these things.
I guess you could add the guide pages in this repo and then auto upload to your website hosting on commits? Just a suggestion!


Not able to build LIBSPDM in Windows using CLANG

cmake -G"NMake Makefiles" -DARCH=x64 -DTOOLCHAIN=CLANG -DTARGET=Release -DCRYPTO=mbedtls ..
-- The C compiler identification is unknown
CMake Error at CMakeLists.txt:3 (project):
The CMAKE_C_COMPILER:
cl
is not a full path and was not found in the PATH.
To use the NMake generator with Visual C++, cmake must be run from a shell
that can use the compiler cl from the command line. This environment is
unable to invoke the cl compiler. To fix this problem, run cmake from the
Visual Studio Command Prompt (vcvarsall.bat).
Tell CMake where to find the compiler by setting either the environment
variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
the compiler, or to the compiler name if it is in the PATH.
My concern is Can we not build LIBSPDM by just using CLANG? Does it requires Visual Studio to build?

We currently don't test it in CI/CD but we do support it. See https://github.com/DMTF/libspdm/blob/ea98cd192f2c1bda42d99aa13355f26698dc4c91/CMakeLists.txt#L623-L624

My concern is Can we not build LIBSPDM by just using CLANG? Does it requires Visual Studio to build?

I believe it does need VS, specifically clang-cl and nmake. We'll use this issue to enable CLANG / Windows in CI/CD.

We have described the step in readme.
Are you following that?
b) [LLVM](https://llvm.org/) (LLVM13)

Install [LLVM-13.0.0-win64.exe](https://github.com/llvm/llvm-project/releases/tag/llvmorg-13.0.0). Change the LLVM install path to C:\LLVM, and add LLVM in PATH environment.
LLVM13 works good for clang and [libfuzzer](https://llvm.org/docs/LibFuzzer.html) build. Other versions are not validated for clang build.
Because the libfuzzer lib path is hard coded in CMakeLists, other versions may fail for libfuzzer build.

We currently don't test it in CI/CD but we do support it. See
https://github.com/DMTF/libspdm/blob/ea98cd192f2c1bda42d99aa13355f26698dc4c91/CMakeLists.txt#L623-L624

My concern is Can we not build LIBSPDM by just using CLANG? Does it requires Visual Studio to build?

I believe it does need VS, specifically clang-cl and nmake. We'll use this issue to enable CLANG / Windows in CI/CD.

So, VS is compulsory needed for building LIBSPDM in windows right?

We have described the step in readme.
Are you following that?
b) LLVM (LLVM13)
Install LLVM-13.0.0-win64.exe. Change the LLVM install path to C:\LLVM, and add LLVM in PATH environment. LLVM13 works good for clang and libfuzzer build. Other versions are not validated for clang build. Because the libfuzzer lib path is hard coded in CMakeLists, other versions may fail for libfuzzer build.

Yes, followed that after that only not able to build.

Without nmake also we can build in windows using CLANG?

Without nmake also we can build in windows using CLANG?

Hi, @PrakashK94.
Please add the LLVM path such as C:\LLVM\bin in the environment for CLANG build on Windows.
The build will pass. Thanks.

You mean without visual studio also we can build the LIBSPDM source using CLANG?

You mean without visual studio also we can build the LIBSPDM source using CLANG?

No. The Libspdm clang build for Windows needs Visual Studio. I am enabling CLANG CI build for Windows.

CLANG CI build of windows is complete or is it work in progress?


update npm and node

This mandates a minimum node and npm version, and shaves up to a minute off of the CI time (apparently even without a cache hit, although I'm not sure I believe that).

I'm seeing a diff in package-lock.json after running npm i with correct versions, specifically the project name, plus several "resolved": "" becoming "resolved": false". Can you verify?


Second Edition, Chapter 3 external monitoring

you should probably also use an external monitoring solution like Pingdom or Server Check.in

Turns out servercheck.in has shut down, but they recommend a few alternatives on their website.

Uptime Robot - Free, Pro, and Enterprise plans
Cronitor - Hacker (free), Business, and Enterprise plans
Better Uptime - Basic (free), Freelancer, Small Team, and Business plans
StatusCake - Free, Superior, and Business plans

Ah, right you are! I'll try to get this fixed soon.

This is fixed in the book's manuscript. I hope to have it in a book update very soon!


Add RateLimit WAF v2 rule

Note: We need to upgrade our Terraform version to >0.12 in order to merge this. This PR requires Terraform AWS provider version 3.3.0, which introduces the forwarded_ip_config block to rate_based_statement. However, this provider is not supported by our Terraform version (0.11). Version 3.3.0 of the AWS provider only supports Terraform versions 0.12 and up. Leaving in draft state until we can enable this.

Two changes:

Upgrades the WAF.

WAF v2 is the latest version of the AWS WAF, replacing WAF Classic in November 2019.
Upgrading the WAF brings us some benefits. Importantly for our use case, WAF v2 permits matching requests with rules using the FORWARDED_IP rather than the IP. This is required for rate limiting since we would like to rate limit users based on the True-Client-IP (the real IP address of the user) rather than using the IP addresses of Fastly.

Adds RateLimit WAF v2 rule (count only).

The rate limit rule uses a managed rate limiter provided by AWS to limit the requests per user IP to 2000 per 5 minute period. This rule has the action 'count'. This means we will log the number of requests which would have been blocked, but this rule will not block any requests. Should we see elevated requests from a small set of IPs we should be able to easily set this rule to block {}.
This rule makes use of the Forwarded IP feature new to AWS WAF, it enables us to use the True-Client-IP set in our VCL, which is a header with a value of the real user's client IP.
Links
Forwarded IP: https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-forwarded-ip-address.html
RateBasedStatement: https://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedStatement.html
True-Client-IP: https://github.com/alphagov/govuk-cdn-config/blob/4a7e2bcf6fd64217631a4ef4e59877b3fe8535c9/vcl_templates/www.vcl.erb#L311

Closing this, we can restore the branch when we upgrade our Terraform version


Something between count scoring and proportion scoring

My big question is: what's the difference between the count-based scoring here, versus a count-based scoring that takes a weighted average of the proportion-based scores for each unit of analysis (geography & date), with the weights being the counts?
Is it mathematically equivalent (modulo some constant)? Even if this weighting isn't exactly mathematically equivalent, is it good enough? It's easier to reason about, at least, than the thing where we draw counts from the model.
(My understanding is that the current approach is to draw counts from a multinomial, with multinomial category proportions drawn from the posterior of $\phi$. If I've gotten that wrong, I might be misunderstanding other things.)
I think there are some ways that this idea could be generalized, with some different architecture, but I'll save those for #51 and #54. Like, if we did want to keep scoring truly on counts, then I would ask the model to generate the counts, rather than ask for proportions, and then generate counts from those proportions, assuming some out-of-"model" distribution for how those counts are produced.
I can also suggest some line-level improvements that I think will help clarity, but I don't think those are useful in light of the above.
Originally posted by @swo in https://github.com/CDCgov/cfa-viral-lineage-model/issues/50#issuecomment-2375536153

For Multinomial observation models, for example, we might be able to achieve something more spiritually correct than MAE/MSE on proportions and less spiritually correct than count-based evaluation by some sort of (variance-based?) weighting via the sample sizes on a given day.
Direct proportion scoring accounts for neither sampling distribution variance nor the appropriate "scale" of being off by a certain amount. That is, a model predicted 50% vs a real 100% should impact our score little if there are 2 counts (we were only wrong by 1) than if there are 200 (we were wrong by 100).
With some reweighting, I think we could account for this scale, but not the sampling variability. That is, we can appropriately make sure that a day with 2 vs a day with 200 samples contribute different amounts to the score. But we would not account for departures from the posterior mean due to sampling.

In that they both pertain to things which could accelerate our development cycle, I think this and #62 fall into a category of "let's see what we get out of some retrospective runs." If that indicates we want to do more development sooner than later, we can keep them open. If not, we can close them for the time being.


[CAFV-77] Update cloud init script to read kubeadm failure reason (#439)

Signed-off-by: Aniruddha Shamasundar<EMAIL_ADDRESS>(cherry picked from commit a85687652b923d04578eef238e62597e56d31636)
Please provide a brief description of the changes proposed in this Pull Request
BootstrapRunCmd generated from CAPI is a compound command. The BootstrapRunCmd will be of the following format
kubeadm join --config /run/kubeadm/kubeadm-join-config.yaml  && echo success > /run/cluster-api/bootstrap-success.complete

trap cannot be used to catch the error if the executed command is part of an && or ||

The ERR trap is not executed if the failed command is part of the command list immediately following a while or until keyword, part of the test in an if statement, part of a && or || list, or if the command's return value is being inverted via !.
These are the same conditions obeyed by the errexit option.

This PR uses stderr redirection to catch the error from kubeadm cli.
Example error in RDE:

Checklist

[x] tested locally
[ ] updated any relevant dependencies
[ ] updated any relevant documentation or examples

API Changes
Are there API changes?

[ ] Yes
[x] No

If yes, please fill in the below

Updated conversions?

[ ] Yes
[ ] No
[ ] N/A

Updated CRDs?

[ ] Yes
[ ] No
[ ] N/A

Updated infrastructure-components.yaml?

[ ] Yes
[ ] No
[ ] N/A

Updated ./examples/capi-quickstart.yaml?

[ ] Yes
[ ] No
[ ] N/A

Updated necessary files under ./infrastructure-vcd/v1.0.0/?

[ ] Yes
[ ] No
[ ] N/A

Issue
If applicable, please reference the relevant issue
Fixes #

This change is

Closing this PR as cherry-picks will be done at a later point of time.


UserWarning: Failed to load custom C++ ops. Running on CPU mode Only!

When I run :
from groundingdino.models import build_model
I got this warning saying that I do not have access to GPU :
UserWarning: Failed to load custom C++ ops. Running on CPU mode Only!
But, when I check with pytorch by running:
torch.device('cuda' if torch.cuda.is_available() else 'cpu')
I get "cuda".
What is weird, is that I don't have this problem on google collab, but I do have it on the server of my laboratory. So what's wrong ?

I have the same problem. However, when I rerun it this warning disappeared.

Yes I saw that as well. But it appears  even in the case of CPU. So the problem is not the warning, but the fact that the model will use GPU.
Have you tried to compare the performance of the model with and without the warning ?

Thank you for you answer, I had indeed not set the CUDA_HOME variable in my environment. But still, i got the warning...
Could it comes from somewhere else ? Or maybe I need to re-install everything after having set the environmental variable CUDA_HOME ?

I get this warning even if I set CUDA_HOME. But, I am using the CUDA Docker image so I am not sure if anyone else gets it in the Docker image.

I get this warning even if I set CUDA_HOME. But, I am using the CUDA Docker image so I am not sure if anyone else gets it in the Docker image.

I experience the same issue with CUDA Docker image. Did you find a solution?

I experience the same issue with CUDA Docker image. Did you find a solution?

I run this script for my backend inside the container:
# !/bin/bash

if [ -d /app/model/GroundingDINO/ ]; then
    echo "Files for GroundingDINO exists. Installing GroundingDINO"
    cd /app/model/GroundingDINO/
    pip install -e .
    cd /app
else
    echo "Files for GroundingDINO does not exists. Downloading GroundingDINO"
    cd /app/model
    git clone https://github.com/IDEA-Research/GroundingDINO.git
    cd GroundingDINO
    echo "Installing GroundingDINO"
    pip install -e .
    cd /app
fi

if ! [ -d /app/model/GroundingDINO/weights ]; then
    echo "Downloading weights for GroundingDINO"
    cd /app/model/GroundingDINO/
    mkdir weights
    cd weights
    wget wget -q https://github.com/IDEA-Research/GroundingDINO/releases/download/v0.1.0-alpha/groundingdino_swint_ogc.pth
    cd /app
fi

For some reason I have to manually install GroundingDino inside the container. I am not a big Docker expert. So if anyone knows why that happens please let me know.

I was able to build docker with CUDA using the following image @viktorpovazhuk @SSdevelop
https://github.com/IDEA-Research/GroundingDINO/pull/307


Update README.md

Corrected many grammatical errors in the README like the word repository was spelled wrong and many more.
Related Issue

Closes: #[issue number]
Description of Changes

Checklist:

[x] My code adheres to the established style guidelines of this project.
[x] I have conducted a self-review of my code.
[x] I have included comments in areas that may be difficult to understand.
[x] I have made corresponding updates to the project documentation.
[x] My changes have not introduced any new warnings.

Screenshots

Original
Updated

Please provide any necessary screenshots to illustrate the changes made.

please review my PR @SrijanShovit

please review my pr


Change Alert to min-height

Description
References #1581
Preview: https://icy-ground-0374a1310-1960.centralus.1.azurestaticapps.net/?path=/story/components-alert--default&args=ariaLabel:rthrth+rth+rth+
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update

How Has This Been Tested?

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules
[x] I have checked my code and corrected any misspellings

Looks good now.


Feature/harbour

breaking changes everywhere, will take me a bit to get it all back running:
deprecated redpanda
deprecated threat-intel repo
currently baseline not implemented (will soon add back in)

this will likely break things, so i ll re-implement and re-test one thing after the other. Old main is on main_old


x/tools/refactor/rename: Cannot rename implementation if there is no interface value constructed

FYI, I am not sure if this is desired behaviour, the issue can be reproduced by the following change to the tests.
diff --git a/refactor/rename/rename_test.go b/refactor/rename/rename_test.go
index 1d282a1..c770693 100644
--- a/refactor/rename/rename_test.go
+++ b/refactor/rename/rename_test.go
@@ -736,8 +736,6 @@ func (B) g()
 type C int
 func (C) f()
 func (C) g()
-var _, _ I = A(0), B(0)
-var _, _ J = B(0), C(0)
 `,
                                },
                        }),
@@ -765,9 +763,6 @@ type C int

 func (C) F()
 func (C) g()
-
-var _, _ I = A(0), B(0)
-var _, _ J = B(0), C(0)
 `,
                        },
                },
@@ -796,9 +791,6 @@ type C int

 func (C) F()
 func (C) g()
-
-var _, _ I = A(0), B(0)
-var _, _ J = B(0), C(0)
 `,
                        },
                },
@@ -827,9 +819,6 @@ type C int

 func (C) f()
 func (C) G()
-
-var _, _ I = A(0), B(0)
-var _, _ J = B(0), C(0)
 `,
                        },
                },

@josharian said it's by design, closing.


[Docs] User Types Icons code missing "icon" class

In the icon page: https://semantic-ui.com/elements/icon.html

Under the User Types icon section
click show code
Note the user circle code is missing the icon class name.
Note the user circle outline code is missing the icon class name.
Note the user outline code is missing the icon class name.

Hi @ThaneshR and thank you, I opened a PR to fix it.


Create a conditional config file

We should create a conditional config.py where production is the default enviroment, and you specifically have to set development.

Closed by PR #24.


xtensa/esp32s3: add lock for async operation work

Note: Please adhere to Contributing Guidelines.
Summary
g_work as singleton can be changed by context switching, but previous one async operation have not finished yet.
Impact
one additonal mutex is used for g_work to keep the sequence correctly.
Testing
reproduce and verified by below steps

Variable g_wrok is sent to work_queue() function and set value to this variable.
Another context changes g_work by call esp32_async_op during step 1. g_work of Step 1 is changed because g_work is singleton.
Step 1 hanges because g_work of step 1 are cleared by step 2.

Hi @sdc-g, thanks for submitting it. Please fill in all the fields of the PR template, including how you found out this bug, how to reproduce and test it and possible impacts.

Hi @tmedicci
Thanks, please check the comment update.


New version: stevencohn.OneMore version 3.28

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Since you're a fast one here is another package https://github.com/gerardog/gsudo
Also simple fix for the issue https://github.com/Trenly/winget-pkgs/pull/9/files

Okay, I'll take care of that. My RSS feed is not yet as advanced as yours. I am still missing more than half :/

Well you still catch updates faster than me so 🤷♂
are you missing the links or does it not support 800 feeds?

Im just missing links haha

Try this https://gist.github.com/OfficialEsco/599257140346fa4a79b36dc63bb20d61
make sure $Manifests points to the winget folder repo
You should then be able to import xml/opml to your RSS reader, and it will not make duplicates.

That's insane. Thanks!
But after I loaded it twice because first the reader crashed, my access on GitHub was restricted Hahahaha

That's insane. Thanks!
But after I loaded it twice because first the reader crashed, my access on GitHub was restricted Hahahaha
Nothing what a bit of VPN magic can't fix haha

Haha i would suggest refreshing some of the feeds at a time, 800 requests is a bit too much in a short amount of time, QuiteRSS actually stops after 100ish i don't get blocked, but you can update at least 100 each 10 second i believe

Hmm try to rerun this one, the x86 might be the problem again..


The commands will run concurrently. Think of a possibility to sync them

Maybe we need a dependency between commands, but maybe not. Just discuss.

Out of scope. Plugins are running with commands now.