How to display Powered By snapChat logo like a example video

Describe the bug
Some text are overflowing on my screen and Snap chat team required to have a Powered by snapChat logo

To Reproduce
Steps to reproduce the behavior:

I just launch camera

Smartphone (please complete the following information):

Device: [e.g. iPhone15 Pro Max]
OS: [e.g. iOS17.2]

Additional context
i
Also I not seeing Snap chat agreement pop up things

@dokind It will be visible exclusively in the staging environment on Android; you won't encounter it in the production environment.

@dokind I see there is some issue in camera kit reference ui pod, It’s not load the Localizable.strings resources in iOS application.

If you want to load strings and display powered by snapchat logo please do the following steps.

Open iOS application in Xcode
Select Pods Project -> Pods -> SCCameraKitReferenceUI -> Resources -> Localizable.strings
In Target Membership at right side checked SCCameraKitReferenceUI Target


Slim batch image prediciton?

I just finished training a model by following train_image_classifier.py
CUDA_VISIBLE_DEVICE=0,1 python train_image_classifier.py --train_dir=train_logs --dataset_dir=../train --num_samples=15500 --num_classes=4 --labels_to_names_path=../labels.txt --model_name=inception_resnet_v2 --checkpoint_path=../checkpoints/inception_resnet_v2_2016_08_30.ckpt --checkpoint_exclude_scopes=InceptionResnetV2/Logits,InceptionResnetV2/AuxLogits --num_clones=2 --num_preprocessing_threads=8 --max_number_of_steps=100000 --batch_size=32 --learning_rate=0.0001 --learning_rate_decay_type=fixed --save_interval_secs=60 --save_summaries_secs=60 --log_every_n_steps=10 --optimizer=rmsprop --weight_decay=0.00004
and evaluate the model by using eval_image_classifier.py.
CUDA_VISIBLE_DEVICE=0,1 python eval_image_classifier.py --checkpoint_path=train_logs --eval_dir=eval_logs --dataset_dir=../val --num_samples=797 --num_classes=4 --model_name=inception_resnet_v2
Everything seems great. But, how to test image classifier unfortunately is not provided, and I cannot really find an good example of how to use this model to predict testing images. Is there a good example that I can use my trained model to predict multiple images in a batch way? Thank you for helping.

This question is better asked on  StackOverflow since it is not a  bug or feature request. There is also a larger community that reads questions there. Thanks!


Adding JavaScript finalize back in

Addresses https://github.com/roots/roots/commit/d6fc59e0417dccc62bf2644395aa33f946024f78#commitcomment-6183775

closes #1254


Implement Story Narrative

Objective:
To design and integrate a compelling story narrative into "Green Paw Chefs: A Food Waste Awareness Game" that introduces new players to the game's purpose, educates them about food waste, sustainability, and provides a coherent backstory for engagement and motivation.
Background:
"Green Paw Chefs" is a Flutter-based game aimed at raising awareness about food waste and promoting sustainable cooking practices. Players manage a virtual restaurant, preparing dishes while adhering to dietary restrictions, managing calories, and minimizing waste. The game progresses through levels of increasing difficulty, offering educational content about sustainability.
Storyline Concept:
The game opens in a bustling city home to "Green Paw Chefs," a unique restaurant with a mission to revolutionize the culinary world by eliminating food waste. The player meets Chef Whiskers, the visionary behind the restaurant, who shares the challenges of running a sustainable kitchen and invites the player to join the cause.
Implementation Details:

The story narrative should be integrated as an intro dialogue or cutscenes when the player first launches the game.
Use engaging and relatable dialogues between Chef Whiskers and the player.
Consider incorporating visual elements or animations to enhance storytelling.
Ensure the narrative is accessible from the main menu for players who wish to revisit the story.

Acceptance Criteria:

A coherent and engaging story narrative is developed and documented.
The narrative successfully introduces players to the game's objectives and features.
The storyline is integrated into the game with visual and textual elements.
Players can access the story narrative upon first entering the game and optionally from the main menu

Revised storyline
Opening Scene:
Camera zooms in on a vibrant city where every corner buzzes with life.
Amid this bustle stands a quaint, yet notably different, restaurant: "Green Paw Chefs". This is not your ordinary eatery. It's a place with a mission, a beacon of sustainability and conscious cooking in the heart of the city. The restaurant is adorned with greenery, and its welcoming sign boasts a zero-waste philosophy.
Narrative:
The story begins with Chef Whiskers, an innovative feline with a dream of changing the world one dish at a time. Chef Whiskers addresses the play directly, sharing their vision for Green Paw Chefs:
"Welcome to Green Paw Chefs, the place where cooking meets sustainability! I'm Chef Whiskers, and I've opened this restaurant with a mission to fight food waste and serve delicious, eco-friendly meals. But, I can't do it alone. I need your help!"
Chef Whiskers explains the challenges they face: managing the kitchen, crafting meals that cater to various dietary needs, and doing it all without wasting a single ingredient
"In our kitchen, every carrot counts, and every beet beats waste"
Gameplay introduction:
as the player, you're invited to take charge of Green Paw Chefs. You'll start by learning the ropes: selecting ingredients, preparing dishes, and serving guests with unique dietary preferences. With each level, the challenges grow, but so does your ability to make a difference
Features integration:

dietary restriction matching: Chef Whiskers emphasises the importance of inclusivity in dining. You'll learn to adapt recipes to ensure everyone can enjoy your culinary creations, regardless of their dietary restrictions.
calorie-conscious meal planning: The health of guests is paramount. Chef Whiskers teaches you to balance nutritional content without compromising on taste.
ingredient inventory system: managing the pantry is crucial for sustainability. you'll learn to use every ingredient efficiently, reducing waste and saving money.
progressive difficulty: as the restaurant gains popularity, the demands increase. you'll encounter guests with complex needs, challenging you to innovate and adapt.
educational content: throughout your journey, Chef Whiskers shares valuable insights on food sustainability, seasonal cooking, and reducing carbon footprints in the kitchen
unlockable content: your achievements in sustainability and customer satisfaction unlock new recipes, kitchen upgrades, and even chef avatars to customize your gaming experience"

###Conclusion
As intro concludes, Chef Whiskers looks at the player with hope and excitement.
"Together, we can make Green Paw Chefs a model of sustainable dining. Are you ready to embark on this journey with me"
Screen fades to game's main menu, inviting players to start their adventure in sustainable cooking and make their mark in the fight against food waste.

Designing the UI

Scene layout: design a vibrant and engaging city scene as the background, with "Green Paw Chefs" restaurant prominent featured. Use animations or static images to convey the bustling city life
Character design: create a charismatic and visually appealing design for Chef Whiskers, making them stand out as the game's mascot. Consider using subtle animations to make the character more lively
Text display: design a clean and readable UI for the narrative text. Consider using speech bubbles for the dialogue to make interactions feel more personal
Interactive buttons: include buttons like "Next" to advance the narrative and "Skip" for players who prefer to jump straight into gameplay

Scripting the narrative flow

High priority tasks

Narrative Script Writing: Write the complete script for Chef Whiskers's introduction, ensuring it covers the game's mission, gameplay mechanics, and the importance of sustainability and food waste reduction.
UI Design: Design the main components of the UI for the intro scene, including the layout for the vibrant city, the restaurant, Chef Whiskers's character design, dialogue boxes, and the "Next" and "Skip" buttons.
Character and Scene Assets: Create or acquire the visual assets needed for the intro scene, including background images, character sprites for Chef Whiskers, and any other relevant environmental elements.
Dialogue Management System: Develop a system to display the scripted narrative in manageable segments, allowing players to proceed through the story at their own pace.

Medium Priority Tasks

Interactive Elements: Implement interactive elements within the intro dialogue, such as decision points where players can choose options that lightly influence the narrative or tutorial.
Tutorial Integration: Design and script an interactive tutorial that directly follows the storyline, teaching players the basic gameplay mechanics in a guided experience that reflects the narrative context.
Feature Highlighting: Program the intro sequence to visually highlight gameplay features and UI elements when they are mentioned in the script, reinforcing their importance and functionality.

Low Priority Tasks

Educational Content Integration: Embed educational tips and facts about sustainability within the narrative and tutorial, ensuring they are informative yet seamlessly blend into the gameplay experience.
Unlockables and Rewards: Decide on and implement the initial rewards for completing the tutorial, such as unlocking a special ingredient or recipe to encourage players to start their sustainable cooking journey.
Accessibility Features: Incorporate accessibility options, like text narration for visually impaired players or adjustable text sizes, to ensure the game is accessible to a wider audience.
Adaptive Design: Ensure that the intro UI and tutorial are responsive and adapt well across different devices and screen sizes for a consistent user experience.

Integration with Chef Gus' backstory:
Opening Scene
The game opens with a heartwarming yet poignant illustration of a humble neighbourhood, starkly contrasting with the city's affluent parts. The scene zooms in on a small, cozy kitchen where a young Chef Gus, full of dreams but facing the harsh reality of poverty, joyfully cooks with whatever little his family has. Despite their situation, the kitchen is filled with love, laughter, and the rich aroma of delicious meals made from scraps.
Narrative Introduction
Chef Gus shares his story directly with the players in a heartfelt dialogue. He reminisces about his childhood - growing up in a family that valued every grain of rice, his early fascination with cooking, and the stark realisation of food waste in high-end restaurants. This revelation deeply affects him, shaping his life's mission: to ensure no one, feline or otherwise, experiences the hunger his family endured.
Chef Gus' Character:
Chef Gus is depicted as a charismatic, larger-than-life cat chef with a vibrant personality, a big hearty laugh, and a nurturing "papa" demeanour. His character design reflects both his humble beginnings and his culinary expertise, perhaps donning a simple chef's outfit with a few patches, symbolising his journey from rags to culinary respectability.
Gameplay integration:
The gameplay revolves around Chef Gus' ambition to run a sustainable restaurant, "Green Paw Chefs", that not only serves delicious dishes but also champions the cause of zero food waste. Players are tasked with helping Chef Gus manage the kitchen efficiently, creating mouthwatering dishes from limited resources, and serve a diverse range of guests without wasting a single ingredient.
Educational and emotional engagement
Throughout the same, players learn valuable lessons on food sustainability, creative cooking techniques to minimise waste, and the importance of community in combating food scarcity. Chef Gus occasionally shares personal anecdotes and tips, reinforcing the game's educational content with his unique humour and wisdom.
Challenges and rewards
As players progress, they face increasing challenges, from managing scarce resources to satisfying the complex dietary needs of guests. Chef Gus' stories of resilience and innovation inspires players to think critically and creatively. Success in these challenges unlock heartfelt acknowledgments from Gus, new recipes, kitchen upgrades, and even community events that reflect the game's message of solidarity and sustainability.


PLNSRVCE-530: Make changes in the repo to move images from ghcr.io to quay.io

Created a new organization in quay.io called redhat-pipeline-service
Created repositories in quay.io in order to upload respective images
Created a robot account in order to grant access to GitHub actions to upload images to quay.io
Updated references from ghcr.io to quay.io throughout the repo - both in GitHub actions and PipelineRuns where it was being used
Added access-setup workflow.
Tested it on my repo to verify its working fine (similar steps were followed on my quay account and github repo)

@fgiloux Why would we want to maintain our images in two registries? Do you see any usecase?

@fgiloux Why would we want to maintain our images in two registries? Do you see any usecase?

That's related to the doc he linked.
TL;DR: If we don't claim redhat-pipeline-service on ghcr.io and docker, someone could claim it, push tainted images there, and an unsuspecting user doing a pull docker redhat-pipeline-service/setup_compute:latest could open themselves to harm.

@fgiloux Why would we want to maintain our images in two registries? Do you see any usecase?

As per the above: From a security point of view it makes sense to own the name in the common public image repositories: quay, docker, ghcr. It helps with preventing hijacking when users are referencing images through short name (what they should avoid). Here is some background.

Agreed. As discussed, have created #174 to track this. We can revisit this around the time of our release.


Meet the Team Page (2 people)

We will be adding a new page to meet the organizer team. This will involve some design.
Design Portion: Plan the page layout. What shape do you want people's profile images to be? (circle is probably safest). Probably Directors at the top and then official organizers below. Then RCOS developers under official organizers. Making a Figma design for this would be useful. Reach out if you do this so we can create a separate design repo to add these types of mock-ups to for open source contributions.
Coding Portion: Create a bio for everyone. Put up their picture. Underneath should be Name, Position in HackRPI, major, year. Make the page theme align with others.

Note: Andrew will be working on this in a pair as well


Axon doesn't work in combination with spring-boot-dev-tools on class path

Axon version: 3.0.2
With: spring-boot-axon + H2 + No cache repository
If you add spring-boot-dev-tools in your class path, axon will not work. I am not sure, but spring-boot-dev-tools will change the path class name of event message object and during the publishing this event will not match.
I make an example here -> https://github.com/moifort/axon-sample-with-spring-dev-tools
Make the test by removing/adding spring-boot-dev-tools dependency

We've noticed the same behavior in our stack. We removed spring-boot-dev-tools
to enable execution from within the IDE.
Michael Kazarian
PromonTech
1512 Larimer St, Unit 325, Denver, Co 80202
Mobile:<PHONE_NUMBER>
On Sun, Feb 26, 2017 at 11:38 AM, Thibaut Mottet<EMAIL_ADDRESS>wrote:

If you add spring-boot-dev-tools in your class path, axon will not work.
I am not sure, but spring-boot-dev-tools will change the path class name
of event message object and during the publishing this event will not match.
I make an example here -> https://github.com/moifort/
axon-sample-with-spring-dev-tools
Make the test by removing/adding spring-boot-dev-tools dependency
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/AxonFramework/AxonFramework/issues/282, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ABKsHZgNbKB2EoWGiktQpuYbDUhYy65cks5rgcbCgaJpZM4MMeMg
.

--

CONFIDENTIALITY NOTICE
This message and any attachments are only for the intended recipient and
contain confidential information. All intellectual property and other
proprietary rights associated with this message and any attachments are
owned and retained by PromonTech.  No license or other conveyance of such
rights is intended or granted with respect to this message and any
attachments.  If you are not the intended recipient or the person
responsible for delivering this message to the intended recipient, then you
are notified of the strict prohibition against copying, distribution,
further transmission or other disclosure of this message and any
attachments, and taking any action in reliance on this message and any
attachments. If you have received this message in error, please notify the
sender immediately by reply e-mail, delete this message and any
attachments from your system, and destroy any hard copy that you may have
made.  Thank you for your cooperation.

Its the classloader used by devtools.
The behavior is described in the docs: http://docs.spring.io/spring-boot/docs/1.5.1.RELEASE/reference/htmlsingle/#using-boot-devtools-customizing-classload.

@pbit yes, I already set the META-INF/spring-devtools.properties, but still have the issue.

@moifort Can you provide a small sample project with the issue?

Sample project: https://github.com/moifort/axon-sample-with-spring-dev-tools

I try to disable the restart in application.properties with spring.devtools.restart.enabled=false
I try to exclude axon framework jar in META-INF/spring-devtools.properties with restart.exclude.axon=axonframework/*

I still have the error

I think the solution may to do the opposite: make sure Axon jar is also reloaded. The default behavior is to only reload project classes. The Axon repository (especially the model inspectors) probably benefit from a 'refresh'.
I can't test right now, but if it helps, I can include this property in the Axon-Spring module.

Did some test with the sample project given by @moifort
The Axon jars are just one part, the serializer has to be included too.
What finally worked:
restart.include.axon-core=axon-core-3.0.2.jar
restart.include.axon-spring=axon-spring-3.0.2.jar
restart.include.axon-spring-boot-autoconfigure=axon-spring-boot-autoconfigure-3.0.2.jar
restart.include.xstream=xstream-1.4.9.jar

Depending on the serializer chosen by the developer you have to include more dependencies (with unknown side effects).
I think this should not be handled by Axon.
Just add a section to the README and give some examples for common use cases.

It's work, thanks @pbit, I updated my repo. Should I make a PR adding the spring-devtools.properties in the axon-spring project?

Feel free to add it @moifort, I'd say it's valuable and @abuijze also suggest to do so (in Axon-Spring module).

@pbit, why don't you think this should be handled by Axon? I could agree for the serializer part (although we can add configuration for the Jackson and XStream serializers provided). But if the 'Axon include' is included, people will not run into annoying trouble.
Curious to know what you reason is.

@abuijze I just meant the serializer part.
Just afraid what happens if you put a common dependency like Jackson on a different classloader.
This could break deserialization of other libs using Jackson.
In theory everything should work by just including Axon libs, as the serializer is created by Axon.
I'm currently trying to figure out why the AggregateIdentifier is not populated when the second event is send.

Seems like this can be resolved without touching XStream.
There are multiple locations involved:
The JpaEventStorageEngine in JpaConfiguration is constructed without the Serializer Bean:
https://github.com/AxonFramework/AxonFramework/blob/master/spring-boot-autoconfigure/src/main/java/org/axonframework/boot/AxonAutoConfiguration.java#L173
The XStream instance of the XStreamSerializer is configured without a classLoader.
So the ClassLoader of the library is used.
A working example is:
Add to spring-devtools.properties:
restart.include.axon-core=axon-core-3.0.2.jar
restart.include.axon-spring=axon-spring-3.0.2.jar
restart.include.axon-spring-boot-autoconfigure=axon-spring-boot-autoconfigure-3.0.2.jar

Add a configuration class:
    @Configuration
    public static class AxonConfiguration {

        @Bean
        public Serializer serializer() {
            final XStream xStream = new XStream(new CompactDriver());
            xStream.setClassLoader(this.getClass().getClassLoader());
            final XStreamSerializer serializer = new XStreamSerializer(xStream);

            return serializer;
        }

        @Bean
        public EventStorageEngine eventStorageEngine(Serializer serializer, EntityManagerProvider entityManagerProvider, TransactionManager transactionManager) {
            JpaEventStorageEngine engine = new JpaEventStorageEngine(serializer, null, null, null, entityManagerProvider, transactionManager, null, null, true);

            return engine;
        }

    }

This solves the issues at least for XStream without adding the lib to devtools.
Seems like Jackson provides an explicity ClassLoader too.
Does anybody know how to unit test such class loader related stuff?

I think this problem returned in Axle 3.2, if I include spring-boot-devtools my @EventHandler's are no longer processed. If I exclude it everything works again. Maybe a newer version of spring-boot-devtools. I'm using 2.0.4.RELEASE of spring-boot-devtools.

I removed spring-boot-devtools from my pom.xml this is also working for me in production. Thanks a lot :)

In 4.3.1 this problem still occurs. It's a pity because spring-dev-tools would really speed up the development process (I saw that the Axon team is using it too). Maybe it is an easy fix @abuijze ?
I tried to configure devtools to include the axon framework as jars, however, that doesn't fix it, unfortunately.
Let me know if I can help.

We've prioritized a fix/solution for the spring-dev-tools issue in #1382 for release 4.4.
That issue links to the majority of the created issues around spring-dev-tools, although I forget to reference this one; sorry for that unclarity.


Installation of grpc with pip in docker image very slow for x86_64

What version of gRPC and what language are you using?
GRPC version 1.30.1 (latest)
Python 3.6
What operating system (Linux, Windows,...) and version?
Linux ubuntu bionic in docker on a linux x86_64 intel xeon host
What runtime / compiler are you using (e.g. python version or version of gcc)
python
What did you do?
I am trying to create a docker image that includes grpc for python installed via pip3 install grpc grpcio-tools.  But the command
pip3 install grpcio grpcio-tools
takes more than 15 minutes, even though this is a xeon host with 32 physical CPUs (NOT virtualized, NOT cloud machine).
My docker images uses bionic-20200311 as a base image.  I have also tried using a different bionic base image and a different host and see the same issue.
What did you expect to see?
A fast installation of grpc.  I hypothesize that the grpc build might be single-threaded and/or unnecessary (i.e. Google should be building and shipping x86_64 wheels; perhaps something is broken here? ).
What did you see instead?
> Building wheels for collected packages: grpcio, grpcio-tools
>   Building wheel for grpcio (setup.py): started
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...
>   Building wheel for grpcio (setup.py): still running...

Anything else we should know about your project / environment?
See also https://github.com/grpc/grpc/issues/20493

Try upgrading your version of pip. We do have precompiled x86-64 wheels, but they're manylinux2010. If your pip is too old, it won't recognize those artifacts and will instead default to installing from source. As for the slow from-source build, that is indeed a case of single-threaded compilation. That has now been parallelized by default on the master branch, but this has not made its way into a release yet.

Going ahead and closing due to lack of response from the original poster. Feel free to reopen if you have any further trouble.

pip install --upgrade pip fix it for me

pip install --upgrade pip did not fix it for me on python:3.8.9-alpine3.12 base image. @gnossen

@TalhaNaeem1 If i remember correctly the cause of the slowness for me was that the grpc package somehow could not use any "wheel" variant of the package forced it to build from source. I think what variant can be used depends on pip version, package version and what OS/distribution you use. Maybe this helps https://stackoverflow.com/questions/37793046/how-does-pip-decide-which-many-linux-wheel-to-use

Thank you
On Mon, Apr 25, 2022 at 3:10 PM Mattias Wadman @.***>
wrote:

@TalhaNaeem1 https://github.com/TalhaNaeem1 If i remember correctly the
cause of the slowness for me was that the grpc package somehow could not
use any "wheel" variant of the package forced it to build from source. I
think what variant can be used depends on pip version, package version and
what OS/distribution you use. Maybe this helps
https://stackoverflow.com/questions/37793046/how-does-pip-decide-which-many-linux-wheel-to-use
—
Reply to this email directly, view it on GitHub
https://github.com/grpc/grpc/issues/23509#issuecomment-1108364966, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AU42NWXU664ZYN6FH753BLLVGZVQLANCNFSM4O4XMVTA
.
You are receiving this because you were mentioned.Message ID:
@.***>


Add hooks for new devicedb

Note that this enables local storybook development with the new device db, but it will NOT work yet in the live storybook environments yet (will be handled in follow up PR, testing is over here: https://github.com/seamapi/react/pull/524/commits/8c628ab133029329d7d998ffb71f083ae3a84d0e).

Everything is working locally ok expect the images. 🤔

Images are ok now. Getting it working on Vercel is out of scope for this PR.


Use ERR_get_error_all if available

ERR_get_error_line_data is going to be deprecated since OpenSSL 3.0.0
https://www.openssl.org/docs/manmaster/man3/ERR_get_error_all.html

[approve ci autest]
     file /var/tmp/ausb-7354.14419/schedule_on_thread/_output/schedule_on_thread-ts/stream.all.txt : Checking that /var/tmp/ausb-7354.14419/schedule_on_thread/_output/schedule_on_thread-ts/stream.all.txt matches gold/schedule_on_thread.gold - Failed
        Reason: File differences
         Gold File : /var/jenkins/workspace/autest-github/src/tests/gold_tests/cont_schedule/gold/schedule_on_thread.gold
         Data File : /var/tmp/ausb-7354.14419/schedule_on_thread/_output/schedule_on_thread-ts/stream.all.txt
           [Nov 29 19:12:42.229] traffic_server DIAG: (TSContSchedule_test.init) initializing plugin for testing TSContScheduleOnThread
           [Nov 29 19:12:42.464] [ET_TASK 1] DIAG: (TSContSchedule_test.schedule) [TSContSchedule_test] scheduling continuation
           [Nov 29 19:12:42.464] [ET_NET 10] DIAG: (TSContSchedule_test.handler) TSContScheduleOnThread handler 1 thread [0x7f96370f4010]
           [Nov 29 19:12:42.464] [ET_NET 10] DIAG: (TSContSchedule_test.handler) [TSContSchedule_test] scheduling continuation
           [Nov 29 19:12:42.464] [ET_NET 10] DIAG: (TSContSchedule_test.handler) TSContScheduleOnThread handler 2 thread [0x7f96370f4010]
           [Nov 29 19:12:42.464] [ET_NET 10] DIAG: (TSContSchedule_test.handler) TSContScheduleOnThread handler 2 thread [0x7f96370f4010]
           [Nov 29 19:12:42.464] [ET_NET 10] DIAG: (TSContSchedule_test.check) pass [should be the same thread]
         - ``(TSContSchedule_test.check) pass [should not be the same thread]
         + Traffic Server 10.0.0 Nov 29 2020 18:59:29 docker-gd-1
         + traffic_server: using root directory '/var/tmp/ausb-7354.14419/schedule_on_thread/ts'


Scripts are not 2FA compatible

I needed to switch on 2FA, but it totally breaks the scripts in here:
kg:~/bsipocz/tegla2_mentes/munka/devel/atools/pr_consistency$ bash pr_checks.sh
The repository this script currently works with is 'astropy/astropy'.

Enter your GitHub username and password so that API requests aren't as severely rate-limited...
Username: bsipocz
Password:
Last modified date: 2018-08-01 14:59:47
Traceback (most recent call last):
  File "1.get_merged_prs.py", line 70, in <module>
    max_issues = repo.get_issues(state='closed', sort='created')[0].number
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/github/PaginatedList.py", line 40, in __getitem__
    self.__fetchToIndex(index)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/github/PaginatedList.py", line 58, in __fetchToIndex
    self._grow()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/github/PaginatedList.py", line 61, in _grow
    newElements = self._fetchNextPage()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/github/PaginatedList.py", line 163, in _fetchNextPage
    headers=self.__headers
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/github/Requester.py", line 169, in requestJsonAndCheck
    return self.__check(*self.requestJson(verb, url, parameters, headers, input, cnx))
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/github/Requester.py", line 182, in __check
    raise self.__createException(status, responseHeaders, output)
github.GithubException.TwoFactorException: 401 {'message': 'Must specify two-factor authentication OTP code.', 'documentation_url': 'https://developer.github.com/v3/auth#working-with-two-factor-authentication'}

As a workaround I suppose I can create a dummy user just to run the scripts (without providing a user the API rate limit is reached super quickly), but ideally we need to fix the scripts for this.

Yeah I ran into this yesterday too. It turns out a solution is to make a personal access token (which doesn't require 2FA) then use that instead of username/password


 Somebody needs to donate a new API key for SoundScrape to work again, or even better, we need to strip out the pysoundcloud dependency, which was being actively crippled anyway, and replace it with something entirely parser based.

 Gah, I'm so pissed!

I'll work on clearing out my music, and donate my API, I was working on a
similar project but having a front end. Your code, skills, and development
is far beyond mine. I can send it to you via private email in 24 hours.
 Gah, I'm so pissed!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/Miserlou/SoundScrape/issues/78#issuecomment-218180796

That would be very much appreciated. Please email<EMAIL_ADDRESS>to discuss further.

I'm sorry this happened :( it sucks

Out of curiosity do you still need an API?


Unable to install Composer packages with current composer.lock

I'm trying to to install all project dependencies (including those that needed for development).
composer install

As a result I get the following error:

Problem 1

Installation request for phpunit/phpunit 4.8.x-dev -> satisfiable by phpunit/phpunit[4.8.x-dev].
phpunit/phpunit 4.8.x-dev requires sebastian/environment ~1.3 -> no matching package found.

Potential causes:

A typo in the package name
The package is not available in a stable-enough version according to your minimum-stability setting
see https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion for more details.

Read https://getcomposer.org/doc/articles/troubleshooting.md for further common problems.

issue confirmed.

this depends on the php version installed on dev machine. will fix it.

@arogachev @dynasource for verification, could you provide the php version you used for testing

I simply did the following:

use the guide https://github.com/yiisoft/yii2/blob/master/docs/internals/git-workflow.md#3-prepare-the-testing-environment-
git clone https://github.com/yiisoft/yii2.git
composer install

my php version in CLI: 7.0.10

I have updated composer.json to contain a target platform so that dependencies should now be installable on different platforms. This works on travis as of https://travis-ci.org/yiisoft/yii2/builds/174347785 please also check if it works for you now.

@cebe
php -v
PHP 5.6.11-1+deb.sury.org~trusty+1 (cli)

@arogachev does composer install work for you now?

@cebe, it works now. Well done.

@cebe Just checked it, now it works fine. Thank you for solving this problem.


Sponsors.json changed according to v2

Kindly Merge first #388, second #390 before this.
@mariobehling @championswimmer Issue related #392

pushed here https://github.com/fossasia/open-event-webapp/commit/7bd6fdbb6ac04cf63601a2298db4b5546d4c2006


Getting error: Cannot read property 'tr' of undefined

I am getting the following error when dropping the first simple example into a basic react component inside a React/Electron project:

Seems the line it's failing on is this one, with _react2['default'].DOM undefined.

Not sure what the issue could be, but maybe a version conflict between React and Reactable?
I am using the follow versions:
    "react": "^16.0.0",
    "react-dom": "^16.0.0",
    "reactable": "^0.14.1",
    "electron": "1.7.8",

    "babel-register": "^6.26.0", // to compile ES6

Here is the full code for my react component that is using Reactable:
// Libraries
import React from 'react';
import Reflux from 'reflux';

// Stores
import DashboardStore from '../../stores/DashboardStore.js';

// Components
import Label from '../base/Label.jsx';
import { Table } from 'reactable';

export default class DashboardPaneProfile extends Reflux.Component {
  constructor(props) {
    super(props);
    this.state = {};
    this.store = DashboardStore;
  }

  render() {
    return (

Profile

    );
  }
}

// Types
DashboardPaneProfile.propTypes = {
};

// Defaults
DashboardPaneProfile.defaultProps = {
};

Got the same, it's because of removed deprecation React.DOM, now it is in a separated lib react-dom-factories. Easy fix is to move back to react 15.

Ok, thanks! Think I will hold off on using it until it get's incorporated here.

I'm getting the same. Sad that I'd have to change React version to get this library to work.

Yep getting this as well. Unfortunately seems this is unusable on the latest version of react.


Testing existing libraries for matrix operations and Kalman filter

The aim is to research and test possible libraries starting with http://strawsondesign.com/docs/librobotcontrol/ which is very well documented and should have everything we need

Kalman filter is working. Here is an example of 1 set of K [1,0.3288], 4 sensors and the following amplitudes [0,0,0,1,0,0,0,0]. There is random noise for both, process and measurements added into the system

Next, we want to know how the system will behave given a k(k1,k2) that gives the same temporal frquency as our real example but has different values k1,k2 (Same magnitude different components). To test this, we have created different scenarios:
Scenario 1
Wave simulation with k = [1,0.3288], 4 sensors placed in [1,1],[1,2],[2,1],[2,2] and the following amplitudes a = [0,0,0,1,0,0,0,0]
Kalman filter with k =[0.926342,0.5] and we get the following results

We also want to test how we could use a grid of wavenumbers (K) and try to work as best as possible with an infinite number of   frequencies.
Scenario 1
We will start easy by having a 1 K simulation and checking in our kalman filter for 3 different wavenumbers, one of them being the exact simulated K. That is K = [0.707,0.707] for our simulation with amplitudes a = [0,0,0,0.5,0,0.5,0,0,]. In our Kalman filter we have: K = [0.707, 0.707 ;  45,107 ; 0.222,-0.056 ]. We have chosen K values that are far apart from each other to try to make it as easy as possible. We got the following results

The first image refers to the first K vector. This is the one that should match exactly with our simulation, The 2nd and 3rd screenshots show the amplitudes calculated by the filter for the second vector K, which should be as close to zero as possible

We now want to create a grid with different K values and check how the filter distributes a single unknown simulated k between near by points in the grid.
Scenario 1
To start off easy, lets begin with a 4 vector grid and simulate exactly one of the Ks in this grid. The results are as follows

These are the results for each vector in the grid. The simulated K was EXACTLY the same as the first k in our grid and it still aplit the amplitudes among the first 2 vectors, which is not what I expected and far from ideal. However, if we plot the resulting eta for the kalman filter, it's quite accurate. Below the first image shows the eta for one of the for sensors, green is the filter and red is the simulation. After 10 seconds we "turn off" the sensors to check how accurately the filter is following reality. Zooming in we can see that while the sensor is on the filter is spot on predicting the eta (next image). There is 1 measurement every 25 updates.

Execution time can be an issue. For a 25 point grid, we have recorded the time it takes for both prediction and update step.
Here are some cycles and their corresponding times:

Time per iteration predict: 0.116000
Time per iteration predict: 0.005000
Time per iteration predict: 0.086000
Time per iteration predict: 0.007000
Time per iteration predict: 0.101000
Time per iteration predict: 0.009000
Time per iteration predict: 0.192000
Time per iteration predict: 0.007000
Time per iteration predict: 0.128000
Time per iteration predict: 0.007000
Time per iteration predict: 0.237000
Time per iteration predict: 0.003000

In the prediction step, the most time consuming isntruction is by far:
if(rc_kalman_predict_simple(&kfilter, F) == -1) return -1;
So we need to look how to optimize this as it takes way too long. We would not be able to run this 25 step grid filter in real time, as it needs to run at 0.025 seconds per iteration

In order to be able to distinguish waves with same frquency coming from different directions we are going to try: Adding a moving boat and moving the sensors as a whole.
Simulation with 4 point mesh of 1 freq and multiple angles, just like the last picture in the last comment. Here the boat is moving at about 5m/s with 45º angle and wave has a direction of about 50 degrees

Depués de debuggear, parece que ya las cosas funcionan como deberían. A continuación quiero mostrar la diferencia entre 4 y 9 sensores, que es una de las razones que nos llevó a pensar que antes no estaba funcionando bien. Quiero destacar que con 4 y 9 sensores, el error en amplitud es similar, pero sin embargo, la velocidad es mucho más precisa con más sensores.
4 Sensores
Comenzamos con un gráfico mostrando la diferencia en amplitud entre la simulación y el filtro con 4 sensores. Son las 8 amplitudes de la primera K del filtro, que deberían coincidir con la K de la simulación, puesto que son iguales.

A continuación vemos la diferencia en la velocidad del agua en el eje x calculada para la simulación y para el filtro con el sistema que usa 4 sensores

9 Sensores
Se muestra la diferencia en amplitudes para el caso de los 9 sensores, el resto de parámetros permanecen iguales. Es notable que la diferencia, especialmente en algunas amplitudes sigue siendo grande.

Sin embargo, como vemos en la imagen inferior, la velocidad es mucho más precisa

Prueba con una malla con muchos módulos (10 módulos), todos con el mismo ángulo. Simulación de una K que no está en la malla. Y solo 2 sensores:
Representación de las velocidades:

Y las emplitudes, la simulada está entre la tercera y la cuarta

Plot de posicion vertical del barco real frente a la estimada por el filtro

Grafico de altura de ola ideal frente a la del filtro para la misma ola

Amplitudes para esa misma ola


internal error executing 'corporations_corporation_assets' with page=-1

using the "corporations_corporation_assets" function with page = -1, the error 'Internal error when executing the custom function.' is reported in the cell. My corporation usually has more than 20 pages (25, 28). Some advice?

This usually happens when there is a large amount of data to return/parse.  I can reproduce it getting market orders from The Forge.  Will look into either fixing it or providing a better error message if this is a limit within Sheets itself.

@sapyx Can you try creating a new google sheets, setting up GESI and see if you get the same error?

same error, but the files on github aren't changed

I have been poking around at this, from what I can tell it is one of the following:

The endpoint hits the 30 sec runtime limit of a custom function
There are too many cells in the sheet OR returning all the data would make the workbook have too many cells. (is a 2m cell limit, inclusive of all sheets in a Google Sheet doc)
There is some size limit that a scripts array or something can contain/process.

I'll keep messing with it but as of now im not so sure i can do anything about it.  Possibly you could something like https://github.com/Blacksmoke16/GESI#using-functions-with-multiple-characters to create functions that wrap x pages of an endpoint. This way it would be split up and sheets could handle it better.

I believe the cause is the 30 second timeout for user functions.
fetch works for up to 7 / 10 pages

I tried this, but always reports the same error;
function filteredCorporationAssets(name, filterList, opt_headers) {
    var endpoint_name = "corporations_corporation_assets";
    var endpoint = ENDPOINTS[endpoint_name];

    var data = [];
    var result = [];

    if (opt_headers || undefined === opt_headers) result.push(endpoint.headers.map(function(h) { return h.name }));

    var page = 1;
    var response = getData_(endpoint_name, {name:name,page:page,opt_headers:opt_headers})
    var assets = response.data;

// -------------
    var filterListLength = filterList.length;

    for (var i=0;i<assets.length;i++){
      for (var j=0;j<filterListLength;j++){
          if (assets[i].type_id == filterList[j][0]){
              data.push(assets[i]);
          }
      }
  }
// -------------

    var pages = parseInt(response.headers['x-pages']);

    for (var page = 2; page <= pages; page++) {
        assets = getData_(endpoint_name, {name:name,page:page,opt_headers:opt_headers}).data;
        // -------------
        for (var i=0;i<assets.length;i++){
            for (var j=0;j<filterListLength;j++){
                if (assets[i].type_id == filterList[j][0]){
                    data.push(assets[i]);
                }
            }
        }
        // -------------
    }

    data.forEach(function(obj) {
        var temp = [];
        endpoint.headers.forEach(function(header) {
            temp.push(parseObject_(obj, header));
        });
       result.push(temp);
    });

    return result;
}

I was thinking something like
function getAssets(startPage, endPage) {
  var data = [];
  for (var page = startPage; page <= endPage; page++) {
    data = data.concat(corporations_corporation_assets(null, page, false));
  }
}

Then can call it like =getAssets(1,7) where that would return assets pages 1 thru 7, then could call it again for next 7 like =getAssets(8,14).  Not really optimal but not much i can do about that limit :/

true, but you can not know in advance how many pages will be returned by the API

No but it does not really matter.  The functionality is exactly the same.

humm... no!
to replicate the behavior of the -1, I MUST know, at the time of creating the sheet, the number of pages returned by the API. But, being the response variable , it is impossible.

You don't have to.  You could do something like this:
function getAssets(startPage, endPage) {
  var assets = [];
  for (var page = startPage; page <= endPage; page++) {
    var a = corporations_corporation_assets(null, page, false);
    assets = assets.concat(a);
    if (a.length < 1000) break;
  }
  return assets;
}

If you request a page higher than the actual number of pages it would just come back empty and break out of the loop.  This also covers the last page that would have less than 1000 results (for this specific endpoint).  Of course there are a few suboptimal issues with this, such as making a few more calls than the -1 param but overall the functionality is exactly the same provided you make enough of the function to account for the highest possible amount of pages.
For example if on average you get 25 pages, with it able to get 7 pages within 30 sec you could use 4 functions,

1-7
8-14
15-21
22-28

If you really wanted you could add in logic like if (endPage === page && a.length === 1000) throw 'Need more functions to cover additional pages'; This way if you end up getting 30 pages the last function would throw an error telling you that you need to add more functions to cover pages 29-35.

mmmmh! it's like an hack, but i can try. This breaks the automatism of a complex sheet, but if there is no other way ...

mhm.  I wouldn't call it a hack, just not as simple as using -1 but considering i can't do anything about the 30 sec limit this is best you got.
Imma close this issue.

As reference for others visiting this issue see https://github.com/Blacksmoke16/GESI#internal-error-when-executing-the-custom-function

You can work around this issue. The run time of a google apps script is 5 minutes, whereas for a function it's 30 seconds. What I do is make a second script that writes the output of the first to a sheet, and then assign that to a button on my spreadsheet. That way you avoid using functions and do everything entirely in GAS, and the Google sheet is only used for the output itself.


DepositAddress: unrecognized field msg

Caused by: com.binance.api.client.exception.BinanceApiException: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "msg" (class com.binance.api.client.domain.account.DepositAddress), not marked as ignorable (4 known properties: "asset", "success", "address", "addressTag"])
at [Source: (okhttp3.ResponseBody$BomAwareReader); line: 1, column: 9] (through reference chain: com.binance.api.client.domain.account.DepositAddress["msg"])

Are you running the latest version?

Hi @matejsp , please update to the latest version by running git pull. That issue has been fixed already.


Optimize initial page load

Hi

Here is the result of npm run build command (I ran npm run clean before running this command)
The size of main.bdc9cb4ce7ad33cffa15.js is 654 KB
I think, in a slower network initial page load will too slow with this size. That too we don't have all the page containers included in this bundle.

Is this size normal?
What dependencies are contributing most of the size?
Can we fix this?

Yeah, size is about "normal" See #918 for discussion.
Run npm run analyze then visit Webpack Visualizer and upload stats.json for a graph showing the size of various dependencies.
Depends on your needs and willingness to hack, but you can remove parts of the boilerplate, see Remove.md and Preact will save some space (I have no experience with Preact).

While your concerns are no doubt valid, I would caution against premature optimization.

Thanks @gihrig


Allows user to set number of threads used by openMP in C library grad…

fixes #475
This allows the user to set the number of threads to use for the C implementation of gradient. It defaults to half the number of cpus which gives a good average performance increase but let's the user change it if they desire.
This also fixes the cmake build.

Is this fixed? because still numpy is faster. do i need to sth else?

@gfardell is testing thoroughly. As far as I understand, the gradient operations are as fast as numpy's or faster. The benefit comes with large arrays.
What remains to test is the PDHG example where the gradient is one step and the timing seem to indicate that numpy and @gfardell implementation take the same time.

do u have any time comparison with only the forward & backward diffs numpy vs c?

I believe that at this line the install should copy from ${CMAKE_CURRENT_BINARY_DIR}/build

I'm still working on this at the moment, but so for a 512x512x512 dataset for an average of 100 iterations of PDHG I'm get the following:
| numpy | c |   |   |
-- | -- | -- | -- | -- | --
n threads | 1 | 1 | 4 | 8 | 12
direct | 0.552918 | 0.43333 | 0.113587 | 0.064253 | 0.054869
adjoint | 0.975464 | 0.646022 | 0.177825 | 0.108155 | 0.100044
PDHG iter | 4.1385 | 5.709 | 2.7885 | 2.479 | 2.538
On a smaller 3D dataset there's a limited benefit to multiply threads but it should perform similarly to numpy.

I believe that at this line the install should copy from ${CMAKE_CURRENT_BINARY_DIR}/build

I fixed it in #478

Ok with 512x512x512 it works, but it is strange to me why there is no benefit with 2048x2048... it is large but not large enough

For 2048x2048 I get the following (all in seconds):
| numpy | c |   |   |   |
-- | -- | -- | -- | -- | -- | --
n   threads | 1 | 1 | 4 | 8 | 12 | 16
direct | 0.01127 | 0.00510 | 0.00301 | 0.00246 | 0.00231 | 0.00162
adjoint | 0.01562 | 0.00890 | 0.00541 | 0.00596 | 0.00459 | 0.00361
PDHG   iter | 0.11115 | 0.14207 | 0.09492 | 0.08674 | 0.08373 | 0.06892
If you're not seeing an speed-up could you send me some details? Maybe average it over 1000 iterations, and check there's no other processes running.

Updated for 2048x2048
| numpy | c |   |   |   |
-- | -- | -- | -- | -- | -- | --
n   threads |   | 1 | 4 | 8 | 12 | 16
direct | 0.0114 | 0.0058 | 0.0026 | 0.0023 | 0.0026 | 0.0019
adjoint | 0.0163 | 0.0106 | 0.0055 | 0.0051 | 0.0059 | 0.0038
PDHG   iter | 0.1211 | 0.0977 | 0.0880 | 0.0807 | 0.0786 | 0.0776
mkl also uses openMP so I have to set omp_set_num_threads() back to its initial state after the C calls. This seems to fix the behaviour above where the gradient implementation was faster but the overall PDHG iteration slower. I'll implement this properly and check it in.


Generate printout for EU digital certificates

Description
Generate a printout for the stored EU COVID certificates.
Suggested Enhancement

PDF can be generated for all types of certificates
Original EU template used for printing
PDF can be shared using the standard OS sharing functionality

Currently it's only possible to store a EU digital COVID-Testcertificate in the App.
It would be a great benefit to print a certificate.
Reason to ask for it:
My daugther is going for a scandinavia trip with a group of 18 persons. (14 children, 4 adults)
The adults have to take care, that the certificates of each child is available.
What if one of the children loose/broke/... its smartphone?
It would be a great backup to have a printed version available.
Thanks for taking into account

Internal Tracking-ID: EXPOSUREAPP-8352 obsolete (vaccination DCC)
Internal Tracking ID: EXPOSUREAPP-8328 obsolete (test DCC)
Internal Tracking ID: EXPOSUREAPP-8384 export function for all DCCs - iOS
Internal Tracking ID: EXPOSUREAPP-8900 export function for all DCCs - Android
Currently the following is being considered:
PDF can be generated for all types of DCCs with different templates (vaccination, test, recovery)
PDF can be generated only for DCCs issued in Germany
for DCCs issued by another country, an error message is presented to the user
Original EU template used for printing
PDF can be shared using the standard OS sharing functionality
related issues and PR:
corona-warn-app/cwa-quick-test-backend#143
corona-warn-app/cwa-server#1491

@Balze2
I like your idea!

In the meantime, as a workaround you could take a screenshot from the Corona-Warn-App and print it.
Certificates which are issued on paper could be copied.
Ones which are issued in PDF format can be printed out as a backup.

@MikeMcC399
Thank you for your positive reply.

The workaround using a printed screenshot is no problem for me. But not all parents are able to handle the workflow. :)
Sure, printed certificates could be coppied, but vacciend people do get a printed document (if they want to).
The PDF could be copied too. The PDF I received does not look like the vacciened-certificate.
Best regards
Balze2

@Balze2
Thanks for your proposal. I have informaed the dev team about it. The developers and RKI will think about your proposal. We will report back here on Github if a decision has been made.

Corona-Warn-App Open Source Team

Thank you for taking it into account!

Internal Tracking-ID: EXPOSUREAPP-8328 obsolete
Internal Tracking ID: EXPOSUREAPP-8352 new ticket

I assume we will see something like this in one of the next releases: https://github.com/corona-warn-app/cwa-quick-test-backend/pull/143 & https://github.com/corona-warn-app/cwa-server/pull/1491)

iOS PR: https://github.com/corona-warn-app/cwa-app-ios/pull/3386

@Ein-Tim do you understand the description of the PR? What does he mean with "show a printable version"?

of course a mobile device cannot print.
But instead of showing a printable version I would expect to export a printable version?

@ndegendogo
The printable version is the QR-Code which is shown in the app on the corresponding template from here: https://github.com/Digitaler-Impfnachweis/certification-apis/blob/master/templates/README.md

Ah - thanks. But how do I then print it?

@ndegendogo

of course a mobile device cannot print.
But instead of showing a printable version I would expect to export a printable version?

In German the text in the app is "Druckversion anzeigen", similar to what you can do when creating an Event QR code.

Ah - thanks. But how do I then print it?

I assume like you can print the QR code from an event at the moment.

So maybe they think "exportieren" is too technical, and the concept of showing it is easier to understand for non-technical people? 😅

You can print from an iPhone indeed. Just search for "AirPrint"

One recommendation: Don't call it "Druckversion" but rather "Zertifikat Exportieren".

One recommendation: Don't call it "Druckversion" but rather "Zertifikat Exportieren".

😅😅😅
@Ein-Tim Maybe I can display the "Druckversion", then make a screenshot, and export that to my laptop for printing

@ndegendogo If I understood correctly you will see a preview of the "Druckversion" and then you can share it with the standard iOS / Android sharing menu.

@Ein-Tim sounds good 🎉

I would appreciate this feature, we are about to depart from Iceland and Iceland Air requires Covid-19 documents, but they don't accept Screenshots of the QR Code, rather then Official Vaccination documents.
So we can't use the online check in, but have to use the personal checkin at the airport

@idoodler
CWA 2.10 will come with this feature. In the meantime you can use CovPass, there you can create print outs of your EU digital COVID certificates already now.

Hey @Balze2!
This feature has been implemented in version 2.10, which has been released today.
More information can be found in this blog post:
Version 2.10: Corona-Warn-App ready to inform users about booster vaccinations
If you consider your request as implemented, I'd like to ask you to close this issue.
Thank you!

I can confirm that it works as describes on my iPhone. But perhaps someone has the patience to explain to me why this is the best possible implementation.
I’m confused by the text on the pdf generated that states I can import this pdf/paper version into my CWA to obtain a digital version. Why would I want to export a pdf from CWA and then import it into the CWA again?
Surely the qr-code rendering of the cert’s character-string alone is the certificate? The fold-instructions/yellow-graphics etc are simply embellishments irrelevant in determining the legitimacy of the test/Immunity.
My own personal experience was the different countries I visited that required the EU certificate were satisfied when I uploaded the png rendering of the qr code. And whenever I’ve needed a paper backup a print-out of the screenshot from my Apple Wallet has sufficed.
Bottom line: Is the certificate the qr-code rendering of the certificate sufficient, or are the other text graphic embellishments needed for validation, too. If the embellishments don’t play a role in the legitimacy, wouldn’t it make more sense for the CWA exported version to explain how to validate the paper print-out (e.g. CovPass Check App) rather than how to reimport it?

Thank you very much for adding this function to CWA!
Best regards
balze2

Dear @Balze2 and community,
Thanks for contributing to this project. Best wishes, DS

Corona-Warn-App Open Source Team

@alanrick

I’m confused by the text on the pdf generated that states I can import this pdf/paper version into my CWA to obtain a digital version. Why would I want to export a pdf from CWA and then import it into the CWA again?

Surely the qr-code rendering of the cert’s character-string alone is the certificate? The fold-instructions/yellow-graphics etc are simply embellishments irrelevant in determining the legitimacy of the test/Immunity.

These things, the text staying to scan the QR code with CovPass or CWA, as well as the fold instructions are only there because the original template is used. What you create in the CWA is the same as you would get when going to a pharmacy with your yellow vaccination booklet and asking them for a certificate.

But what’s the point in using the same template as the pharmacy? The pharmacy version was generated for people to import the certificate into an app to avoid carrying the yellow booklet with them, but the intention of the generate button is to create a paper backup that can be used when your phones dead/broken. The former  is designed for  importing, but the latter is intended as a „passport“ to be validated.  Different use-case -> different text.

@alanrick
CWA 2.10.1 generates the standard format EU Digital COVID Certificate for Germany.  This is not a special "pharmacy version". It is the one used by all generated papier format versions.
Users can do what they want with this, for example:

show it to somebody
print it out
archive it digitally
scan the QR into another device

It does also include the text "Mehr informationen unter: www.digitaler-impfnachweis-app.de" which contains lots of information in German and English about certificates and their usage.

I agree you can use the pdf for all this and more. But the problem to solve in this wish-list item was to generate a paper copy to be used as a “green pass” backup where legitimization by non-digital experts is important. I also realise that my gripe would best be solved by improving the German template to explain how the pass can be validated, because without validating this makes a mockery of a beautifully devised EU green-pass system.
So far my passes (paper/app/wallet) have been inspected about 40 times but not even the German Border Control validated it electronically. So an extra educational line of text above/below/within the graphic generated by the template explaining how to validate it would have been cool.
As an aside, the only places that did validate my pass were pubs, hotels and restaurants in Dublin. Digital capital of Europe?

@alanrick
I understand your point about wanting to improve the text on the templates, however this is probably the wrong place to make suggestions to get it changed.
I'm not completely clear about who controls the template formats which are based on EU guidelines. I believe though that Corona-Warn-App is more or less just a consumer of the template.
If you look in the https://github.com/Digitaler-Impfnachweis/certification-apis/tree/master/templates you can find DCC Print templates (Germany). The CWA community made some formatting suggestions for the template in certification-apis/issues which were picked up and implemented. That repository also hosts discussions.


ST2 or 3?

The description says this is for ST3, but in package manager it is only tagged as ST2 - so I cannot install it through Package Manager on ST3.
Which is correct?

ST3 is the correct, there must a mistake in the package manager. Unfortunately I have to discontinue development on this project for the time being, but I'll be happy to merge pull requests though!!!


Unable to upload cookbook using Knife

I am able to upload every other cookbook but apache2 upload fails with following error.
I am running my chef-server in Azure (its open source version 11.x)
Uploading apache2 [3.1.0]
ERROR: SSL Validation failure connecting to host: xx.xx.xx.xx - SSL_read: cert already in hash table
ERROR: Could not establish a secure connection to the server.
Use knife ssl check to troubleshoot your SSL configuration.
If your Chef Server uses a self-signed certificate, you can use
knife ssl fetch to make knife trust the server's certificates.
Original Exception: OpenSSL::SSL::SSLError: SSL_read: cert already in hash table
I am unable to understand why specifically for apache2 cookbook.

This is not a problem with the apache2 cookbook specifically. Take a look at issues like this: https://github.com/chef/chef-dk/issues/492 for more information.

Good question. I do not see anything specific in the apache2 cookbook that would cause something like this. The only thing I can think of is because your are using Chef Server 11 and not Chef Server 12, you are hitting #374. You can see if you remove issues_url and source_url from the metadata.rb file and see if that resolves your issue.
Regardless, I would recommend you update to a newer chef server.

I do not have metadata.rb in my cookbook. there is only metadata.json file.

--concurrency set to one works.


Feature/enhancement for the mob harvester

Hi! So thanks to you I understood that the mob harvester needs to be bounded and so I got two ideas that (only if they are possible) I would like to give to you:

Have a way to signify that a key is bounded correctly (maybe the enchantment glow or even the a tag/text with the bounded mob)

Testing with the Wither and the Ender Dragon (because: why not) I've noticed that the Wither seems to bind, but the nether star is not a drop (I think vanilla is weird about that, it just checks for a wither death and spawns a nether star), and the ender dragon doesn't bound at all so... maybe you could add them as a custom? Ideas for the ender dragon loot: dragon egg, elytra andr dragon's breath, all items that some mods use as a very high end crafting and don't have a renewable source

Thank you very much in advance, love the mod!

There's a status message that shows when the Mob Key is bound to something or is used on a harvester. As for the bosses, the machine is already so pathetically broken that it doesn't even seem to do anything for some people. I'll probably try that later if I ever get the thing to work reliably in the first place. Thanks for pointing that out though, I had no idea. There is another mod called "Woot" that has something similar that actually works as intended and supports bosses.

Ah yes, woot was exactly the mod I was thinking about. I followed it's early stages and it actually had the same problem with both of them, so (to my knowledge) the mod author first made an exception for them (crafting a core instead of bounding for the dragon, adding the nether star as an additional loot table for the wither), and then fixed it using something else (really don't know what). Thanks for the patience and thanks again !


SSD with ext4 partition with Ubuntu 22.10 Not Recognized in BIOS but only in Ubuntu/Windows

After trying to reinstall of my laptop to Ubuntu 23.04, the BIOS do not recognize my SSD with an ext4 partition with Ubuntu 22.10 on it.
I have tryed with the Ubuntu Live USB to delete and format the partitions, but it doesn´t matter.
Proberly their was something wrong with a permission or mounting error?
I have try it with 2 SSD harddisk, wich i connected to my USB port.
-Samsung 840EVO (model MZ - 7TE500
-Samsung 850 PRO 9model MZ-7KE256 (maybe to old? 2016)
After buying a new SSD the BIOS saw the disk and i was be able to install Ubuntu 22.10 LTS and also start up with the installation of 23.04)

Hi, This issue does not look like related to rails-dev-box, that is a virtual box using Vagrant.


partialschur finds only one of three degenerate eigenvectors

I have  matrix with a three-fold degenerate extremal eigenvalue and ArnoldiMethod.partialschur finds only one of them while e.g. Arpack.eigs finds all three. See the following MWE:
using Arpack
using ArnoldiMethod
using SparseArrays

ham_sparse = sparse(I, J, V)     # the numerical values for I, J and V are hosted at https://justpaste.it/5naju

λ, φ = Arpack.eigs(ham_sparse, which=:SR)
print(real(λ))

decomp, _ = partialschur(ham_sparse, nev=6, which=SR())
λ, φ = partialeigen(decomp)
print(real(λ))

prints
[-4.785165067232189, -4.785165067232181, -4.785165067232169, -4.458749101599544, -3.5927605849611726, -3.5927605849611552]
[-4.785165067232141, -4.603267050112509, -4.4587491015995315, -3.59276058496115, -3.502637833700079, -3.2498680277756797]

Is this still happening? I also have a problem with multiple repeated eigenvalues, and failure is sometimes observed.

I get 2 out of 3 with default settings for the current version, but all 3 with maxdim=40.  Even Arpack needs a padded subspace to get the next multiplet right (I haven't got all of those with ArnoldiMethod yet).

@Jutho did you every look into restart issues with repeated/multiple/tightly clustered eigenvalues in IRA / Krylov-Schur?

Maybe I should revise the docs as this description sounds a bit too optimistic. I think that in general, it is very finicky to rely on numerical noise to generate you the new linearly independent eigenvectors that are not present in the initial starting vector.
With the default values for KrylovKit.eigsolve (krylovdim=30, maxiter=100) and randomly generated initial vectors, it seems to find the correct first 6 eigenvalues with degeneracies (typically in 7 iterations = approximately 100 matrix vector products)
But something is strange with the ArnoldiMethod results reported above. It is not that it just does not find 3 linearly independent eigenvectors and thus reports higher lying eigenvalues. The second value it reports is not a correct eigenvalues for this matrix. I think this may point towards a bug.

This may account for the problem seen here: ISTM that the re-sorting of Ritz values in _partialschur should start at index active rather than 1, so as not to mix locked subspace content into the working set, or vice versa.

@RalphAS I think that might be an issue yes. So, a repeated eigenpair converges later than others, and then gets inserted somewhere between already locked vectors, whereas typically eigenpairs converge in order
However, completely at the end, reordering the schur form should still work.
Will have a look.

Looks like #116 resolves the issue, but I don't immediately see why.

I'm afraid the change did not fix things at my end.

@RalphAS thanks for pointing me somewhat in the right direction. In the end though, sorting only the active part is incorrect, as the algorithm would return the first eigenvalues that converged, instead of the best eigenvalues it can detect over time. For most applications that coincides (dominant eigenvalues converge first), but with repeated eigenvalues that was not the case: they start to converge rather late, sometimes by accident, and at that point you better toss out an already converged eigenvalue further from the target, do a couple more iterations and let the repeated eigenvalue closer to the target converge.
PR #116 implements a double bug fix for purging of converged, unwanted Schur vectors.
On top of that, I noticed there that this package's partialeigen may unnecessarily destroy orthogonality of Schur vectors for symmetric matrices, even though partialeigen should be a no-op for those as it should coincide with the Schur decomp. I think I'll just document this, although I could make a ::Diagonal/::Hermitian wrapper for partialeigen too.

One thing I'm not 100% sure about is:
My implementation of purging retains converged vectors in the search subspace, they're simply at index > number of requested eigenvalues
I think Arpack may actually completely remove them from the search subspace: put them at index > mindim and they're automatically truncated.
The latter gives more space for new eigenvectors to converge.
But is that helpful at all? I'm pretty sure the vector you completely toss out starts to converge immediately again, whereas by keeping it in the subspace its deflated.

That is an interesting comparison.

In the end purging was implemented to actually remove the converged & wanted vecs, because they may cause stability issues in the Krylov-Schur restart due to tiny residuals.
After they're removed, they may reappear due to rounding noise, but that's better than loss of precision at restart.


[FIX] <Grammatical-errors-fix-CONTRIBUTING.md>

Issue Description
CONTRIBUTING.md has some grammatical errors that can be fixed making the website look more professional.
Screenshots or Examples (if applicable)
No response
Proposed Solution (optional)
No response
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue (optional)
[X] I am participating in Hacktoberfest 2023

Can you mention the errors that you see @rover07?

Please Assign me this issue.

Please Assign me this issue.

@rover07, we can't assign you the issue unless you provide more context. It'll help us gain a better understanding of your proposed contribution.
@Anmol-Baranwal

So sorry about the issue, I mistakenly made some bogus changes which I thought were relevant. Eg. Changed 'Commitlint' to 'Commit'. This won't happen again.

All is forgiven @rover07

Closing this!


pkg/assets: Add oidc-issuer flags and tectonic-ca secret

WIP

Going to make tectonic a protected branch.


Make mvn2nix self bootstrap

It's still a good idea to provide a script to generate mvn2nix's own lockfile without Nix and mention it in the readme.
It will help you and contributors in case mvn2nix is broken for external reasons or if the mvn2nix you're working on is incompatible with the existing mvn2nix build.

One idea; @roberth i think if i pin it to a commit i know is working i can always guarantee it to work though.
Another idea is yea just leave another file bootstrap.nix which does the old double-maven-invoke

A pin cannot guarantee that all jars remain available for download and with the same hash. So when a new contributor wants to build it on their system, the pin may not be buildable. Another reason it could fail is because it wasn't tested on their platform.
It's typically easier to work with systems that don't need itself to bootstrap, so it seems best to have at least a bash script to invoke maven and invoke java on the old-fashioned mvn2nix jar.

@roberth not sure if you came across this thread https://discourse.nixos.org/t/mvn2nix-packaging-maven-application-made-easy/8751/5?u=fzakaria
Might be worth having a section about that and also pulling some of the nice ideas of mavenix.
I'm hoping the approach taken here though is superior; if not it's a fun learning experiment :)

I'm going to merge this; there's no need for a "script"; since it's just mvn package which should be self-evident to anyone who knows Java / Maven.
If they don't that's ok too! That's why there's the mvn2nix-bootstrap which now builds mvn2nix itself with the old methadology.

Thank you for your feedback as always @roberth


bug: cannot remove edge using studio

steps to reproduce:

create a new database
add Person class (subclass of V), define some properties
add Organization class (subclass of V), define some properties
create edge (E) between them
Try to remove edge using visual graph editor

message is displayed:
WARNING: You are removing Edge in_ from #12:0 to #13:0 . Are you sure?
Press OK
Then the following error message appears:
com.orientechnologies.orient.core.sql.OCommandSQLParsingException: Error on parsing command at position #0: Class 'UNDEFINED' was not found
version 2.1 rc6 (Windows)

Same problem for me on Mac using Chrome

I'v got the same problem, can't remove edit edge.
com.orientechnologies.orient.core.sql.OCommandSQLParsingException: Error on parsing command at position #0: Class 'UNDEFINED' was not found


Add webexp

@nocommit - debugging why this caused issues

🚀 Deployed on https://64b843a97ed0762016720a1a--cozy-fox-0defec.netlify.app


highlightOnTouch interferes with set("transform", ...)

Refer to the code below. The idea is to translate the Composite horizontally as the pan:horizontal event is fired. However, I noticed that if the Composite has the property highlightOnTouch, the Composite will not translate, even though the gesture object returns the correct "x" translation.
var composite = tabris.create("Composite", {
    layoutData: {top:0, bottom:0, left:0, right:0},
    highlightOnTouch: true
}).on("pan:horizontal", function(widget, gesture) { // Remove item
    widget.set("transform", {translationX:gesture.translation.x});
});

What platform are you seeing this on?

@mpost I'm testing it on Android 4.4.2

@wilsonna Thanks for the clarification.

With the resolution of https://github.com/eclipsesource/tabris-js/issues/714 this issue is fixed on Android 6.0 and above.


Optimize the performance of OpenEBS Volumes

OpenEBS adds a additional layer on top of the disks attached to the kubernetes nodes. This layer needs to be optimized to minimize the performance degradation seen by the applications. This issue will act as an tracker for different techniques/ideas that will be added in the upcoming releases to optimize the performance.
Some of the ideas are to use:

Using Caching with Pre-fetch logic
Optmizing the existing stack

As a follow up to our conversation on Slack about performance, here are for reference the results of some benchmarks done with volumes provisioned with OpenEBS Jiva engine, OpenEBS cStor engine, Longhorn and Rook (based on Ceph). As suggested, benchmarks have been run using this YAML template, adjusted for each storage class to test. The test cluster is made of three nodes in Hetzner Cloud with 4 cores, 16GB ram and 160GB SSD storage plus additional SSD volumes of 100GB to test cStor engine; the connection between the nodes is a bit over 2 Gb/sec. OpenEBS 0.8.2 was installed with Helm through Rancher and all the images in use were the default apart from the image for Jiva, which was the latest CI build.
Here's the results:
==================
cstor
==================
Random Read/Write IOPS: 1505/2182. BW: 14.3MiB/s / 41.7MiB/s
Average Latency (usec) Read/Write: 3591.09/2887.95
Sequential Read/Write: 4108KiB/s / 34.7MiB/s
Mixed Random Read/Write IOPS: 1256/428

==================
jiva
==================
Random Read/Write IOPS: 6341/2904. BW: 58.3MiB/s / 45.6MiB/s
Average Latency (usec) Read/Write: 2149.19/
Sequential Read/Write: 54.6MiB/s / 51.5MiB/s
Mixed Random Read/Write IOPS: 3716/1233

==================
longhorn
==================
Random Read/Write IOPS: 5323/2105. BW: 180MiB/s / 67.2MiB/s
Average Latency (usec) Read/Write: 1903.94/
Sequential Read/Write: 255MiB/s / 69.4MiB/s
Mixed Random Read/Write IOPS: 2860/965

==================
rook
==================
Random Read/Write IOPS: 12.1k/2637. BW: 263MiB/s / 71.5MiB/s
Average Latency (usec) Read/Write: 1320.95/
Sequential Read/Write: 273MiB/s / 80.4MiB/s
Mixed Random Read/Write IOPS: 5171/1709

I love OpenEBS's  and am looking forward to seeing improvements on performance!
Thanks for your hard work.


NPE when address already in use

Expected Behavior
When the port to used is already blocked, shut down the websocket again, eventually notifying the caller that it failed as well.
Current Behavior
A NullPointerException in the stop() method is thrown when the server-side binding failed because the address/socket is used already.
Possible Solution
Add a non-null check before calling selector.wakeup();.
Steps to Reproduce (for bugs)

Open a server websocket
Open a new server websocket on the same port again

Debug log (for bugs)
2018-Feb-05 10:48:00 AM [WebsocketSelector28] ERROR application.websockets.WebsocketServer - an error occured:java.net.BindException: Address already in use: bind
Exception in thread "WebsocketSelector28" java.lang.NullPointerException
	at org.java_websocket.server.WebSocketServer.stop(WebSocketServer.java:257)
	at org.java_websocket.server.WebSocketServer.stop(WebSocketServer.java:263)
	at org.java_websocket.server.WebSocketServer.handleFatal(WebSocketServer.java:539)
	at org.java_websocket.server.WebSocketServer.run(WebSocketServer.java:321)
	at java.lang.Thread.run(Thread.java:748)

The error line is
synchronized ( this ) {
	if( selectorthread != null  ) {
--->		selector.wakeup();
		selectorthread.join( timeout );
	}
}

Your Environment

Version used: 1.3.7
Java version: Java 8.161
Operating System and version: Win10

Hello @bcersows,
thank you for your bug report.
Fixed this issue with #662.
Greetings
marci4


WIFI_ESP: sockets left opened after unexpected reset of ESP

Describe the bug
There are multiple scenario when cold start of ESP chip can occur (deep sleep modes, turn off to save energy, spurious resets).
Reset is detected by driver, but UDP sockets are still kept in connected state (so AT+CIPSTART= is not sent)
Expected behavior
All sockets should be closed upon reset.
Impact
DNS resolver works only during first "session". After powering ESP chip off and on, there is not possible to use resolver.
Logs and console output
Correct flow (AT+CIPSTART followed by AT+CIPSEND):
uart:~$ net dns google.com
Query for 'google.com' sent.
[00:00:36.901,428] <dbg> wifi_esp_offload.esp_recv: link_id 0, timeout 0, cb 0x245b9, data 0x20005320
[00:00:36.901,489] <dbg> wifi_esp_offload.esp_sendto: link 0, timeout 0
[00:00:36.901,519] <dbg> wifi_esp_offload.esp_connect: link 0, timeout 5000
[00:00:36.901,580] <dbg> wifi_esp_offload._sock_connect: link 0, ip_proto UDP, addr <IP_ADDRESS>
[00:00:36.901,611] <dbg> modem_cmd_handler: SENT DATA
41 54 2b 43 49 50 53 54  41 52 54 3d 30 2c 22 55 |AT+CIPST ART=0,"U
44 50 22 2c 22 38 2e 38  2e 38 2e 38 22 2c 35 33 |DP","8.8 .8.8",53
[00:00:36.910,339] <dbg> modem_cmd_handler: RECV
30 2c 43 4f 4e 4e 45 43  54                      |0,CONNEC T
[00:00:36.910,369] <dbg> modem_cmd_handler.cmd_handler_process: match cmd [0,CONNECT] (len:9)
[00:00:36.910,858] <dbg> modem_cmd_handler: RECV
4f 4b                                            |OK
[00:00:36.910,858] <dbg> modem_cmd_handler.cmd_handler_process: match cmd [OK] (len:2)
[00:00:36.910,980] <dbg> wifi_esp_offload._sock_send: link 0, len 28
[00:00:36.911,041] <dbg> modem_cmd_handler: SENT DATA
41 54 2b 43 49 50 53 45  4e 44 3d 30 2c 32 38 2c |AT+CIPSE ND=0,28,
22 38 2e 38 2e 38 2e 38  22 2c 35 33             |"<IP_ADDRESS> ",53
[00:00:36.916,137] <dbg> modem_cmd_handler: RECV
4f 4b                                            |OK
[00:00:36.916,137] <dbg> modem_cmd_handler.cmd_handler_process: match cmd [OK] (len:2)
[00:00:36.921,997] <dbg> modem_cmd_handler: RECV
52 65 63 76 20 32 38 20  62 79 74 65 73          |Recv 28  bytes
[00:00:36.927,703] <dbg> modem_cmd_handler: RECV
53 45 4e 44 20 4f 4b                             |SEND OK
[00:00:36.927,764] <dbg> modem_cmd_handler.cmd_handler_process: match cmd [SEND OK] (len:7)
dns: <IP_ADDRESS>
dns: All results received

After ESP chip reset (Only AT+CIPSEND is sent):
[00:00:47.368,591] <dbg> wifi_esp_offload.esp_recv: link_id 0, timeout 0, cb 0x245b9, data 0x20005320
[00:00:47.368,652] <dbg> wifi_esp_offload.esp_sendto: link 0, timeout 0
[00:00:48.168,029] <dbg> wifi_esp_offload._sock_send: link 0, len 28
[00:00:48.168,090] <dbg> modem_cmd_handler: SENT DATA
41 54 2b 43 49 50 53 45  4e 44 3d 30 2c 32 38 2c |AT+CIPSE ND=0,28,
22 38 2e 38 2e 38 2e 38  22 2c 35 33             |"<IP_ADDRESS> ",53
[00:00:48.173,797] <dbg> modem_cmd_handler: RECV
45 52 52 4f 52                                   |ERROR
[00:00:48.173,828] <dbg> modem_cmd_handler.cmd_handler_process: match cmd [ERROR] (len:5)
[00:00:48.173,858] <dbg> wifi_esp_offload._sock_send: Failed to send command, -5
[00:00:48.173,889] <err> wifi_esp_offload: Failed to send data: link 0, ret -5

Environment (please complete the following information):

OS:  Linux
Toolchain: zephyr-sdk-0.11.1
Zephyr version: 2.3.99 2eb633d12ed96b90babda1e3ade76941f33375d5

Additional context
Reset is detected by driver and  handled.
MODEM_CMD_DEFINE(on_cmd_ready) {
...
	if (net_if_is_up(dev->net_iface)) {
		net_if_down(dev->net_iface);
		LOG_ERR("Unexpected reset");
	}
...
       net_if_ipv4_addr_rm(dev->net_iface, &dev->ip);
       k_work_submit_to_queue(&dev->workq, &dev->init_work);
}

static void esp_init_work(struct k_work *work)
{
...
	net_if_set_link_addr(dev->net_iface, dev->mac_addr,
			     sizeof(dev->mac_addr), NET_LINK_ETHERNET);
	LOG_INF("ESP Wi-Fi ready");
	net_if_up(dev->net_iface);
...
}

I don't know network stack architecture of Zephyr, but at least after removing od IP address from interface all opened sockets should be closed (is this flow possible with offloaded driver?)
There is only one place in driver code, where socket can be freed - by call to  esp_offload->put().
@tsvehagen Please propose correct to way to implement fix.

See my fix proposal: https://github.com/niziak/zephyr/tree/esp_close_sockets_on_reset

What I see is that net_context is allocated once in DNS implementation in subsys/net/lib/dns/resolve.c in dns_resolve_init(). net_context_put() is never called (when using fixed list of DNS servers), which is why esp_offload->put() is never called as well.
So first question is: is DNS resolve implementation correct? Maybe we should change the code to allocate (net_context_get() and deallocate (net_context_put()) new network context with each resolve attempt? @jukkar could you feedback on this?

So first question is: is DNS resolve implementation correct? Maybe we should change the code to allocate (net_context_get() and deallocate (net_context_put()) new network context with each resolve attempt?

The dns_init_resolver() is called when the network stack is initialized and there is no cleanup for the statically allocated addresses. It would be very heavy operation to do this init for each resolve operation. We could probably have a cleanup function if needed, or allow dns_init_resolver() to be called multiple times in which case it could cleanup things from earlier invocation.

The dns_init_resolver() is called when the network stack is initialized and there is no cleanup for the statically allocated addresses. It would be very heavy operation to do this init for each resolve operation. We could probably have a cleanup function if needed, or allow dns_init_resolver() to be called multiple times in which case it could cleanup things from earlier invocation.

dns_init_resolver() calls net_context_bind() function in which network interface is assigned to the context. I don't think this is right to do during system init, because (available) network interfaces might change in runtime. For example there might be GSM and WiFi, which are both "dynamic". If application tries to resolve some domain, then socket (or net_context) should be bound to the network interface, which is online (has configured IP addresses) at the time.

I don't think this is right to do during system init, because (available) network interfaces might change in runtime. For example there might be GSM and WiFi, which are both "dynamic". If application tries to resolve some domain, then socket (or net_context) should be bound to the network interface, which is online (has configured IP addresses) at the time.

I agree, if we have interfaces coming up/down, the system should re-do the DNS init or we could do the bind() only when application is trying to resolve address. We could start to monitor network connectivity events or similar, and act accordingly. Atm I do not have time to look into this, patches are welcome if there are anyone willing to investigate this.


puppet-jenkins 2.0

There are number of changes I would like to make that should trigger a major API bump. Including:

drop support for puppet 3.x (EOL'd at the end of 2016)
drop support for ruby 2.0.0 (EOL'd for almost a year)
remove all currently deprecated class/define params
deprecate (ASAP) and make jenkins::sysconfig private - we need to resolve the conflict between jenkins::port, jenkins::config_hash, and user declared jenkins::sysconfig resources.
make jenkins::cli_helper private
add puppet 4 type annotations to all public interfaces
convert from erb -> epp

Thoughts/comments?
/cc @jenkinsci/puppet-jenkins-developers

For the most part this looks fine; my only other request/desire would be to remove as much if not all of the clever file fuckery the module does. jenkins::plugin spends a lot of effort placing files in the right places.
If we can commit to requiring that a CLI SSH port must be present in order to configure Jenkins, at least on localhost, then we can make some positive and opinionated Groovy-based implementations which will ensure more correctness in configuration of the master.

@rtyler I agree that jenkins::plugin is complex but I don't think anything in there is really blocking refactoring.  We could deprecate/remove the pin parameter since it is meaningless under jenkins 2.x and timeout doesn't do anything.  The other parameter we probably live without is enabled -- but there are likely some valid use cases for it.

Any reason why jenkins::plugin couldn't use the jenkins API ?
This from the command line for example installs the git plugin and all dependencies
url=http://jenkins.example.com:8080
plugin=git

curl -X POST \
  --data "<jenkins><install plugin='${plugin}@latest' /></jenkins>" \
  --header 'Content-Type: text/xml' \
  ${url}/pluginManager/installNecessaryPlugins

It doesn't support versioning. The updatecenter json only contains metadata for the most recent release of all plugins. https://issues.jenkins-ci.org/browse/JENKINS-32793

Bother....
Oh well never mind

Maybe you can use the user bootstrapping for Jenkins 2.0 and the new CLI code with username and password from https://github.com/jenkinsci/puppet-jenkins/pull/761 to setup the initial automation user. This way you can add support for:

AD
SAML
LDAP
OpenID
Crowd and others

Also with init.groovy.d you can do ANYTHING you want. So no limits for this module anymore.

@jhoblitt I would even go further with the new CLI and everyting taking place now.

only support native providers (maybe wrap in defines) - this makes everything idempotent. (then this module is more a less a wrapper around the Jenkins Groovy API from puppet)
only support Jenkins 2.54++ and 2.46.2++ (new CLI, username / password and SSH auth)
Pluggable Authentication and Authorization Support
use Groovy only (e.g. install plugins via plugin manager and not CLI, this fixes transitive resultion issues)
provide external interface for external puppet code to call the Jenkins CLI (customer groovy skripts)
provide interface to place bootstrap scripts in init.groovy.d by external puppet code (customer groovy skripts e.g. AD Setup) - maybe a simple concat ?

provide interface to place bootstrap scripts in init.groovy.d by external puppet code (customer groovy skripts e.g. AD Setup) - maybe a simple concat ?

I see no need to concat all groovy together, it seems even dangerous with variable names being re-used and overwritten. Groovy is not as strict as java and it could give people headaches. Maybe just a simple wrapper around file {} with some ordering

It doesn't support versioning. The updatecenter json only contains metadata for the most recent release of all plugins. https://issues.jenkins-ci.org/browse/JENKINS-32793

On the other hand, if we download the plugins and upload them using the form, jenkins will get the additional dependencies and you can specify the exact version you want.

So the way we handle versioning for plugins is to download the plugins to another place entirely and sym link the downloaded file (which has the version number in it) to the jenkins/plugin directory, rather than downloading them directly. This means we can roll back plugins quite easily. The current method doesn't seem to pay any attention to whether the version asked for has changed - only if it exists at all.
Not sure if this is an approach you're interested in taking though!

In #966 there's plans for 3.0, which is really needed at this point.


Instructions not correct

[Enter feedback here]
"Step 4. Select Add a resource mailbox to create a new room account. Enter a display name and email address for the account, select Add, and then select Close."
The option actually reads 'Add resource'. There is no Add option, only Save.
_"5. By default, resource accounts are configured with the following settings:
Allow repeat meetings
Automatically decline meetings outside of the following limits
Booking window (days): 180
Maximum duration (hours): 24
Auto accept meeting requests
If you want to change them, select Set scheduling options before you select Close. If you want to change them later, go to Resources > Rooms & equipment, select the resource account. Then under Booking options, select Edit."_
The option to set scheduling options actually reads 'Edit booking options'
"Requiring users to change the password on a shared device will cause sign in problems. Uncheck Require this user to change their password when they first sign in, and select Reset."
The option to 'Reset' actually reads 'Reset password'

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

ID: 05282aa8-ae14-117b-5885-7d851ee66b89
Version Independent ID: 85abe13c-d34c-f42c-e273-a69be8cd991e
Content: Create resource accounts for rooms and shared Teams devices - Microsoft Teams
Content Source: Teams/rooms/with-office-365.md
Service: msteams
GitHub Login: @dstrome
Microsoft Alias: dstrome

Thanks for your feedback!


digester: consider paramMarker as literal when normalizing SQL

What problem does this PR solve?
https://github.com/pingcap/tidb/issues/19836
What is changed and how it works?
When normalizing SQL, consider paramMarker as literal.
This should mainly affect executing prepared statements.
After this change, select * from t limit ?, ? will be normalized to select * from t limit ... instead of select * from t limit ?, ?.
Check List
Tests

Unit test

/run-all-tests

/cc eurekaka,SunRunAway

@SunRunAway PTAL~

@SunRunAway PTAL

LGTM


couldn't find it in the cached files and it looks like microsoft/Florence-2-base-ft is not the path to a directory containing a file named configuration_florence2.py.

How to fix it?
Error occurred when executing Miaoshouai_Tagger:
We couldn't connect to 'https://huggingface.co' to load this file, couldn't find it in the cached files and it looks like microsoft/Florence-2-base-ft is not the path to a directory containing a file named configuration_florence2.py.
Checkout your internet connection or see how to run the library in offline mode at 'https://huggingface.co/docs/transformers/installation#offline-mode'.
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\execution.py", line 152, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\execution.py", line 82, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\execution.py", line 75, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\custom_nodes\ComfyUI-Miaoshouai-Tagger\nodes.py", line 136, in start_tag
model = AutoModelForCausalLM.from_pretrained(model_path, attn_implementation=attention, device_map=device,
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\python\lib\site-packages\transformers\models\auto\auto_factory.py", line 521, in from_pretrained
config, kwargs = AutoConfig.from_pretrained(
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\python\lib\site-packages\transformers\models\auto\configuration_auto.py", line 1120, in from_pretrained
config_class = get_class_from_dynamic_module(
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\python\lib\site-packages\transformers\dynamic_module_utils.py", line 488, in get_class_from_dynamic_module
final_module = get_cached_module_file(
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\python\lib\site-packages\transformers\dynamic_module_utils.py", line 293, in get_cached_module_file
resolved_module_file = cached_file(
File "F:\quark_download\ComfyUI-aki\ComfyUI-aki-v1.3\python\lib\site-packages\transformers\utils\hub.py", line 441, in cached_file
raise EnvironmentError(

if auto download fail for connection problems, you can gitclone the model under the models\LLM folder in your comfyui
eg: git clone https://huggingface.co/MiaoshouAI/Florence-2-base-PromptGen-v1.5
This will do the something as auto download

I have gitted clone them but the error still existed.

still says  microsoft/Florence-2-base-ft  is not the path to a directory？
that is the wrong model to start with.

I really use to gitclone (git clone https://hf-mirror.com/MiaoshouAI/Florence-2-base-PromptGen-v1.5.git) the promtgen model, here are the content in my folder.
![Uploading<EMAIL_ADDRESS>

I really use to gitclone (git clone https://hf-mirror.com/MiaoshouAI/Florence-2-base-PromptGen-v1.5.git) the promtgen model, here are the content in my folder.

try update your comfyui version and also make sure tagger is updated to the new version

I updated the comfyui version but it still has this error.

I even gitclone florence large and base into LLM filefold but it still has this error. Any other way to detect cause of this error?

你的网络有问题, 我在云端也遇到了, 改一下config文件就好 ,或者你直接把我改好的文件全部覆盖到模型就好了:https://drive.google.com/drive/folders/1gnAFrQQftnYPsmUu4JUNyG8VehYCDqvx?usp=drive_link

I really use to gitclone (git clone https://hf-mirror.com/MiaoshouAI/Florence-2-base-PromptGen-v1.5.git) the promtgen model, here are the content in my folder.

try download the model from the baidu drive if you are in Mainland China: https://resource.miaoshouai.com/1156.html

你的网络有问题, 我在云端也遇到了, 改一下config文件就好 ,或者你直接把我改好的文件全部覆盖到模型就好了:https://drive.google.com/drive/folders/1gnAFrQQftnYPsmUu4JUNyG8VehYCDqvx?usp=drive_link

我下载了这些config但是报错了：No module named 'transformers_modules.Florence-2-base-PromptGen-v1且在这些文件中没有找到-v1的字样

你的网络有问题, 我在云端也遇到了, 改一下config文件就好 ,或者你直接把我改好的文件全部覆盖到模型就好了:https://drive.google.com/drive/folders/1gnAFrQQftnYPsmUu4JUNyG8VehYCDqvx?usp=drive_link

我下载了这些config但是报错了：No module named 'transformers_modules.Florence-2-base-PromptGen-v1且在这些文件中没有找到-v1的字样

你这报错有点诡异,我无法复现, 因为我只是把config文件开头的"_name_or_path"和"auto_map"改成原版Florence2的名称并且上传了三个需要联网下载的py文件, 并没有修改插件或模型的的导入transformer模块的代码, 有可能已经不是模型文件缺失的问题了, 可以检查下transformers版本, 也许有用?

谢谢各位大佬的建议，已经解决了


How do I show all bullet points on a slide at once in generated HTML slide deck?

Currently, I have to press the right arrow key to make each bullet point appear on the slide. Is there a directive to alternatively have them all show up on the slide immediately when a slide is shown? In other words, arrow keys scroll through entire slides not just bullet points.

Duplicate of marp-team/marp-cli#102.

Just replace the bullet * into - in list item

Refer to https://marpit.marp.app/fragmented-list.

Great thanks. Sorry I missed that in the docs.


added show password option on login and signup page (issue #350)

Issue Number
fixes #
#350
Describe the changes you've made
Added eye icon to password field on login and signup page
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
A clear and concise description of it.
Additional context (OPTIONAL)
Add any other context or screenshots about the feature request here.
Test plan (OPTIONAL)
A good test plan should give instructions that someone else can easily follow.
How someone can test your code?
Checklist

[x] I have added my name in the contributors list at the end of README.md file.
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.
[x] The title of my pull request is a short description of the requested changes.
[x]Lgm soc

Can't review, too many unnecessary additions and deletions.
Make a clean PR.
Only necessary updates should highlight.


[FEATURE] Mysql env vars in httpd (apache) and (nginx) vhost configuration

Please also add those env variables to
https://github.com/mblaschke/TYPO3-docker-boilerplate/blob/develop/docker/main/bin/init-php.sh


fix(button-toggle): toggle group should not emit an initial change event.

This is the addition of https://github.com/angular/material2/commit/23a61ab8687d5e4f962c39423ed095959d2da82c, which was only taking care of the ButtonToggle itself, and not of the group.
Since the md-button-toggle-group does not contain any underlaying input element, and we can't use the emit event if native input does  approach, we need to wait for the component view to be ready.
References #1125

Just wondering, can we put this._isInitialized = true in ngOnInit? As the property binding are finished before entering ngOnInit.

@colinfang Yeah that works too. I do not recall why we started using the ngAfterViewInit hook instead.

@DevVersion @colinfang Using ngOnInit does not work because the order of initialization for directives on the same element is not defined. As such, an ngModel on the element may initialize after the ngOnInit of the component itself.

@jelbourn Sounds reasonable. Reverted my commit about the ngOnInit

LGTM

@jelbourn  Sorry I don't quite follow up what you mean, I have never made a ngModel for a custom component before. Could you please elaborate a little bit more?
Are you saying in
 <my-component  [ngModel]="abc" ></my-component>

If ngModel is mapped to a property say  Output() myInput, in MyComponent.ngOnInit myInput is not defined?

@colinfang when you have an ngModel, it can be responsible for initializing the component, so you want to set isInitialized = true after ngModel has run, which can be after the component's onInit.