Test for Adrien

First make sure you read the test guidelines here: https://github.com/Wiredcraft/test-pm
This task will be followed up asynchronously over a few days and should not take more than two hours in total.
Project Introduction
You have been assigned as project manager for a project for the client Mayi Corp (your client stakeholder is Anthony). The outcome of this project will be a website which allows a user to sign up, and log-in to a system that gives them gold trading information. The system as a whole is expected in 7 weeks.
Project Details
The work has been divided into two parts:
• the backend and frontend for login and signup - This will be handled by Wiredcraft completely
• the backend and frontend for gold trading information which will be provided by a separate company Charlie Labs, you will need to interface with Chopper, their project manager, to coordinate as they are building this system from scratch for Mayi Corp.
The specific requirements for the registration have been decided as Username, Location, Password, and Email address fields. The login will be based on username. And after sign up the gold trading information system expects to receive the Username and Email so they can customise the information for each user based on location.
In your team you have:
• A designer who can make mockups and flow diagrams of the login and once confirmed, implement the frontend
• A developer who can implement the backend connection to the gold trading service
• A frontend developer who can help out integrating the login frontend
• A dev-ops engineer who can set up the servers and take care of deployment.
Your Task
The first step of this task is for you to provide the following:
• Clarify the requirements and provide your understanding of the final scope for Wiredcraft's work.
• An initial project plan including:
• A work breakdown for Wiredcraft's integration with Charlie labs up to the final delivery
• a rough timeline of what you think needs to happen in this project and deliverables.
You can use the methodology of your choice for this plan,
Hint:
Outline the project phases you would have and what should be delivered at each phase.
The plan can be a few paragraphs of text and the timeline can also be made using Github markdown by outlining what needs to be done during each week.
It could include a rough outline of the process you would use for the day-to-day organisation of the development team and a short overview of how you would manage the communication flows internally and externally.
You can also kick off with any questions to multiple people in one GitHub comment, I will answer likewise and bring up more cases to test your communication skills as we go along:
(Assume you have already been introduced to the client (@anthony111) and gold trading service vendor (@chopper222) ) and you can @myteam333 for questions to your development team)
e.g.
@chopper222 - Hi there, can I confirm with you the requirements for ...
@anthony111 - I heard from chopper222 that they need to have xxx, does that mean we need to change ....
@myteam333 - I'm not clear on how xxx could work, can you tell me more about it?
@mpathiuk - For the test, I don't understand what you mean by xxx ...

Subject: Mayi Corp project follow-up
Good morning @chopper222,
As a follow-up to our previous meeting, I would like first a confirmation of your expectations and needs from Wiredcraft. Then I will need more details about gold traiding technical integration.
Regarding your customisation needs, you expect us to provide:

username & email

You also mention user location based customisation. Could you confirm that we don’t need to provide user GPS location?
Regarding your service technical integration, could you provide more information about it? Whether on the backend and frontend integration process.

Do you have any materials to share with us?

Best regards,
Adrien Pelegri

From @chopper222
Hi @apelegri , I've talked to your developers and shared the relevant technical materials and our API specifications. We're clear on the interfaces needed. From your side you will call our API for signup with all info, and you will call login with username, password and location.
Location will be the GPS coordinates returned by browser or Shanghai center as default if you do not have the location.

To @chopper222
Thanks for your quick answer and materials sharing.
I will get back to you if we have any further questions or requirements.

Note: Mayi Corp (Project Guidelines)
Client: Mayi Corp
Timeframe: 7 weeks
API provider: Charlie Labs in charge of the gold trading information.
Outcome: a website which allows a user to sign up, and log-in to a system that gives them gold trading information.
Wiredcraft project scope: backend & frontend for login/signup to access the gold trading system.
Specific requirements
Signup page: (fields)

Username
Email
Password
Address
Location

Login page: (fields)

Username
Password

Information required by API provider: (access service)

Username
Email
Location

To: @myteam333
Subject: Mayi Corp, kick-off meeting
Hi there,
I planned Mayo Corp project kick-off meeting to tomorrow. (Invitation)
In preparation for the meeting, refer to this note.
If any information is missing, please let me know.
Kick-off meeting details:

Project overview / Q&A
Setup design workshop meeting
Setup sprint planning meeting

@apelegri Can you give us a rough idea of what development activities will occur each sprint?
We'd also like to know your QA and UAT plan

@mpathiuk I will get back to you tomorrow on these points.

@mpathiuk Below are the main steps I will follow.
Sprint activities:
Sprint planning:

Sprint goal definition
Backlog items prioritisation
Sprint backlog (item + sub-tasks)

Sprint execution:

Perform task-level work

Daily scrum:

Yesterday ‘done’ review
Next task assignment
Might discuss task obstacles

Sprint review:

Review ‘Done’ user stories
Gather feedbacks to adapt the product

Sprint retrospective:

Discuss what is not working
Adapt the process (improvement actions)

QA  Plan:
Preparation:

Goals identification
Critical success factors identification
Write down test cases for each user scenario

Implementation:

Continuous integration
Acceptance testing
Test units
Functional testing

Reporting
UAT Plan:
Preparation:

Validate user journeys
Consolidate test cases for each scenario
Setup environments
Test account creations
Issues tacking (device type; OS update…)

Execution
Post-execution:

List all issues, document them
Fixed identified issues
Re-assess

Project Plan
Project introduction
Client: Mayi Corp
Project background:
We should deliver a website which allows a user to signup/log-in to a system that gives them gold trading information.
Success criteria:

QA
UAT
Client’s feedback

Project definition
Methodologies & tools:

Scrum (refer to note)
Agile
Tools:
Calendar
Slack - internal communication
Email - external communication
Github - backlogs & user stories board / host and review code

Dependency:

Mayi Corp
Charlie Labs

Constraints:

Timeframe: 7 weeks
Technical: Dealing with API service provider
Resources: 1 project manager / 1 designer / 1 backend developer / 1 frontend developer /  1 dev-ops engineer

Deliverables:
We should deliver the backend and frontend for the login/signup of a website allowing access to gold trading information. API for gold trading information system will be provided by Charlie Labs.

Backend (API integration, signup/login logic)
Frontend (signup/login)
Design (user flows, wireframes, mockups, protoype)
Dev-ops (server setup, deployment)
QA (refer to note)
UAT(refer to note)

Requirements:

Signup fields: username /  email / password / location
Login fields: username / password
For the user to access gold trading service we should pass to the API call: username / email

Project plan overview
Below table is a detailed break down of the whole project.
You can identify 4 core phases:

Project definition - client managment phase
Design phase (UX-UI)
Development Phase
Test phase

Project phases
Milestones
Tasks
Responsibility
Timeframe

Stakeholders feedbacks
Define,  clarify, assess project outcome & requirements
Project definition - Project goals - User journeys draft
Project manager
ongoing process (week 1)

Project budget
Define,  clarify, assess project outcome & requirements
Project definition - Project goals - User journeys draft
Project manager
ongoing process (week 1)

Product backlog
Product mapping & break down
Personas - User stories
Project manager
1 day (week 2)

Project kick-off meeting
Clarify project requirements - Product backlog review -  Milestones definition
Discuss & schedule milestones - Refine strategy - Outline team roles
Project manager & team members
3 hours (week 2)

Design workshop
Wireframes
User research - User flows - Information architecture
Designer
2 days (week 2)

Product design
Mockups & prototype
UI
Designer
2 days (week 2)

Product design internal feedbacks
Gather feedbacks
Assess & consolidate product design
Project manager - Frontend developer - Designer
1 day (week 3)

Product design external feedbacks
Gather feedbacks
A/B test  -  Design consolidation
Stakeholders - Users
1 day (week 3)

Sprint preparation
Sprint backlog
Prioritization
Project manager
half day (week 3)

Sprint 1 kick-off meeting
Review & discuss sprint backlog
Assign tasks - Weight user stories - Refine sprint backlog
Project manager -  Backend/frontend developers - Dev-ops engineer - Designer
3 hours (week 3)

Sprint sub-tasks definition
Create sub-tasks
Break down personal tasks
Backend/frontend developers - Dev-ops engineer
1h  (week 4)

Sprint 2 preparation - Client update - UAT & QA
Sprint backlog - Inform the client of project advancements - Prepare for test phase
Prioritization - mailing
Project manager
(week 3-4)

Sprint 1 Execution (setup - backend - QA)
Project setup (server / environments / continuous integration) - Backend API integration, login/signup (development - test units)
Keep track of project advancements & solve facing issues
Backend - Dev-ops engineer
5 days (week 3-4)

Sprint 1 Review meeting
Gather feedbacks
Review ‘Done’ user stories - Adapt next sprint backlog
Project manager -  Backend/frontend developers - Dev-ops engineer
1 hour (week 4)

Sprint 1 Retrospective meeting
Improve process
Gather feedbacks from the team
Project manager -  Backend/frontend developers - Dev-ops engineer
1 hour (week 4)

Sprint 2 kick-off meeting
Review & discuss sprint backlog
Assign tasks - Weight user stories - Refine sprint backlog
Project manager -  Backend/frontend developers - Dev-ops engineer - Designer
3 hours (week 4)

Sprint sub-tasks definition
Create sub-tasks
Break down personal tasks
Backend/frontend developers - Dev-ops engineer
1h  (week 4)

Sprint 3 preparation - Client update
Sprint backlog - Inform the client of project advancements - Prepare for test phase
Prioritization - mailing
Project manager
(week 3-4)

Sprint 2 Execution (frontend - QA - Deployment )
Frontend  - Tests implementation
Keep track of project advancements & solve facing issues
Backend/Frontend developer - Dev-ops engineer
5 days (week 5)

Sprint 2 Review meeting
Gather feedbacks
Review ‘Done’ user stories
Project manager -  Backend/frontend developers - Dev-ops engineer
1 hour (week 5)

Sprint 2 Retrospective meeting
Improve process
Gather feedbacks from the team
Project manager -  Backend/frontend developers - Dev-ops engineer
1 hour (week 5)

Testing
UAT report
UAT session: user journeys issues tracking
Project manager
2 days (week 6)

Sprint 3 kick-off meeting
Review & discuss sprint backlog
Prioritise issues - Assign bugs fixing
Project manager -  Backend/frontend developers - Dev-ops engineer - Designer
1 hours (week 6)

Sprint 3 Execution (Fix bugs - Deployment)
Fixing bugs - Deploy
Keep track of project advancements & solve facing issues
Frontend developer - Dev-ops engineer
5 days (week 6-7)

Product demo & delivery
Achievements review
Client demo
Project manager & Client
(week 7)

@Anthony111  After assessing your new requirement with my team, we estimate the development time of this new feature of 2 weeks. The buffer planned for the project to fix unforeseen issues along the development path, as a whole, cannot absorb this new feature development.
So regarding your release expectation on the due date, we can suggest two alternatives.
First is to accelerate the development workflow, use the project buffer and postpone the test phase after the due date which usually takes between 7 to 9 days.

In that case, we will not be able to ensure a stable platform that suits our high-quality standards.
We will not be legally responsible for any platform facing issues.
In case of a platform crash, we will play the role of technical maintenance, adjust our priorities according to it and fix the issue as quick as possible.
We will postpone the test phase meaning stable release will be delivered 2 weeks after the due date.  (UAT / Bugs fixing / Optimizations)

Second, we deliver the planned platform on the due date (users phone numbers verification not included).  In that case, we will kick-off the development of the new feature as quickly as the first release is fully tested and robust.

In that case, we will be able to deliver stable platform releases that match our standards and ensure high quality.
We will be able to provide the complete platform 1 week and a half after the planned date.

I would like to ensure that you understand the first alternative high level of risk and reminds you that Wiredcraft will not be responsible for any facing issues.
From previous experiences, we strongly recommend that you pick the second alternative and push back your launch.
If you need further information, I remain at your disposal.
@mpathiuk  Let me apologise for my lack of reactivity, my current company is pushing hard on me these days.

Thanks, We have enough information to move to the next steps. Closing this test as completed.


Deployement does not work when I choose Add Application or Add Virtual Directory in IIS

I am trying to deploy an Asp.NEt Core 2.1 application with IIS. It works fine when I choose Add Web Site on port 80, But when I deploy using option Add Application or Add Virtual Directory under Default Web Site in IIS on port 80, it gives 404 error when I browse the application.
Why is it not allowing me to deploy under default web site? Am I missing any configuration?
I have tried the work around mentioned here, below is my observation.
Observation:
app is responding well. So the problem is more likely related to the reverse proxy configuration and less likely within the app, But I have no clue what is the cause
Logs:

info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[0]
User profile not available. Using 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET\4.0.30319.0\AutoGenKeys\S-1-5-82-3006700770-424185619-1745488364-794895919-4004696415\DataProtection' as key repository and Windows DPAPI to encrypt keys at rest.
Hosting environment: Production
Content root path: C:\Published\PublishOutput
Now listening on: http://localhost:14942
Application started. Press Ctrl+C to shut down.
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
Request starting HTTP/1.1 GET http://localhost/swaggar
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
Executing action method Nec.Spar.Web.Host.Controllers.HomeController.Index (Nec.Spar.Web.Host) with arguments ((null)) - ModelState is Valid
info: Microsoft.AspNetCore.Mvc.Internal.RedirectResultExecutor[1]
Executing RedirectResult, redirecting to /swagger.
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
Executed action Nec.Spar.Web.Host.Controllers.HomeController.Index (Nec.Spar.Web.Host) in 697.616ms
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
Request finished in 2127.3839ms 302

https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/index?view=aspnetcore-2.1&tabs=aspnetcore2x#sub-application-configuration
Virtual Directories aren't supported, but sub applications work if you're careful about your web.config inheritance.

I tried the web.config, It gave HTTP Error 403.14 - Forbidden error. So I enabled Directory browsing. Now when I browse the application, its just list all the files like dlls and config etc.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <aspNetCore processPath="dotnet"
      arguments=".\<assembly_name>.dll"
      stdoutLogEnabled="false"
      stdoutLogFile=".\logs\stdout" />
  </system.webServer>
</configuration>

Is it a virtual directory or sub application?

I am adding as sub-application

@Tratcher Do you have any updates?

Hi. It looks like this is a question about how to use ASP.NET Core. While we do our best to look through all the issues filed here, to get a faster response we suggest posting your questions to StackOverflow using the asp.net-core tag.


feat: Add RolePath parameter

*Issue #1562
Description of changes:
Add support for specifying the path of the IAM roles created by SAM.
Description of how you validated changes:
Checklist:

[x] Write/update tests
[x] make pr passes
[x] Update documentation
[x] Verify transformed template deploys and application functions as expected
[ ] Add/update example to examples/2016-10-31

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

Codecov Report

Merging #1567 into develop will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff            @@
##           develop    #1567   +/-   ##
========================================
  Coverage    94.06%   94.06%
========================================
  Files           78       78
  Lines         4953     4954    +1
  Branches      1000     1000
========================================
+ Hits          4659     4660    +1
  Misses         136      136
  Partials       158      158

Impacted Files
Coverage Δ

samtranslator/plugins/globals/globals.py
99.05% <ø> (ø)

samtranslator/model/sam_resources.py
93.95% <100.00%> (+0.01%)
:arrow_up:

Continue to review full report at Codecov.

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

@keetonian this should be all set, appreciate the review 👍

@sriram-mv any chance this could make it into the next release?


Rename CacheConfig field 'prefer_s3' to 'serve_lookup_from_cache'

Description of change
Simple one due to one of the hardest computer science issues: naming things.
Hopefully this is a better name moving forward. This change contains only the rename, and no behavior change.
Action item from https://github.com/awslabs/mountpoint-s3/pull/567#discussion_r1369973467.
Does this change impact existing behavior?
No.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and I agree to the terms of the Developer Certificate of Origin (DCO).

I can reproduce the test failures, digging into those.


TransformError - Unknown Plugin - React-Hot-Loader/Babel

I added the react audio player using npm today. All I get when I go to the screen where this is imported is a message that says:
TransformError: at react-audio-player/dist/bundle.js: Unknown plugin "react-hot-loader/babel" specified in react-audio-player/.babelrc at 0
I have react-hot-loader installed.

Hmm, not sure why that plugin would cause a problem when installed in a separate project.  It should be using the version that's already compiled.
If you search in the actual source code that you have installed (node_modules/react-audio-player/dist/bundle.js), is there any mention of react-hot-loader/babel like the error says?  There shouldn't be.  Also let me know what version you've got installed.
Another thing to try might be to clone this project and try running the example (npm install then npm run example) and make sure that works as you'd expect.
Let me know what you see.  I definitely want to resolve any setup issues people might have so I'm happy to work through this with you.

It looks like the problem is that I'm running this using Expo, which apparently doesn't allow using native libs...sorry about asking the question.

@allenweiss That makes sense, I'd guess you want a native audio player in a React Native app.  I'm going to close this, but let me know if you end up wanting to get this running still.


chore: Update formatting for Param examples

Use & in URLs
Capitilize attribute names
remove spaces between equal signs

Closes #1409

@nschonni Thank you, I am merging this one now.


Add yyhangz's parts into the DG

Summary

Add use case for profile command
Create manual testing instructions for list, edit t/doctor and profile commands

Detail

Fix some minor typos
Note that the use case number for the profile command is currently conflicting with the use case number in PR #314 (both are labelled as use case 8 currently), will resolve and update again after PR #314 is merged
Note that the instructions added for manual testing is not in the correct order yet, waiting on other commands to be added first before another round of re-organization in another PR

Checks

[X] Add Reviewer
[ ] Pass CI

Codecov Report

Merging #317 (5b86b95) into master (d63ce38) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #317   +/-   ##
=========================================
  Coverage     74.06%   74.06%
  Complexity     1037     1037
=========================================
  Files           141      141
  Lines          3385     3385
  Branches        384      384
=========================================
  Hits           2507     2507
  Misses          735      735
  Partials        143      143

Continue to review full report at Codecov.

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


Add eslint-config-prettier to improve Prettier Support

Add the eslint-config-prettier package, which assists
consumers in ensuring their eslint config matches with what prettier
expects and supports.
From the readme:

Turns off all rules that are unnecessary or might conflict with
Prettier.
This lets you use you favorite shareable config without letting its
stylistic choices get in the way when using Prettier.

Thanks @danielma. Will get this released hopefully tomorrow.


Update Morphia version from 1.3.2 to 1.4.0

Expected Result
Use Morphia version 1.4.0, in that release the package was changed from org.mongodb.morphia to xyz.morphia.morphia
https://github.com/MorphiaOrg/morphia/releases/tag/r1.4.0
Actual Result
Morphia version 1.3.2 is used

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Give a small suggestion: I hope that the Morphia scope provided is canceled, because our introduction is generally used at compile time. If we follow the current practice, we need to introduce morphia extra. I think this is not necessary.

They have since moved to yet another group id dev.morphia.morphia:core. Do people still use this?

They have since moved to yet another group id dev.morphia.morphia:core. Do people still use this?

I do and I'd like to upgrade to morphia 2.2.2 or later

So with Morphia switching group ids and package names three times, there is no way we can preserve backwards compatibele other than provide separate modules for all three versions.
I will accept PRs introducing modules that target newer versions of Morphia in a non breaking way. Its yet unclear for me which version(s) we should aim for.

The old morphia (1.3.2 and earlier, maybe as far as 1.5) is a dead project. The code has been contributed and moved, through whatever the middle project is, to its current destination at dev.morphia.morphia:core, which is where you should aim. Not sure how you make this a non-breaking change, but leaving it where it is leaves everyone who might want to use it stranded from the evolving project. I think you need some breaking change. I would suggest a service based approach with different maven artifacts presenting different versions of the service, querydsl-morphia-1.x, querydsl-morphia-2.x, if you really want to provide some backward compatability.


Add Class for preprocessing

See if the structure's fine, and then we can start implementing the filters.
Also added OSA to Levenshtein.
.

I think I can't just keep this abstract. I might have to implement a filter and add unit tests for the codecov to pass. I'll do that if you guys find the structure fine. @someshsingh22 and @rajaswa


Get CMake build system able to identify "mbed.h" imports.

It appears(?) that in our autogenerated CMakeCache.txt file gtest is building. Perhaps this by default?
Anyways, also importing the mbed-os repo in our root level CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
project(ArraySharedComponents)

set(CMAKE_CXX_STANDARD 14)

# Fetch dependencies
include(FetchContent)
# MBED dependency
FetchContent_Declare(
    mbed
    GIT_REPOSITORY  https://github.com/ARMmbed/mbed-os
    GIT_TAG         mbed-os-6.3.0
)
# GTEST dependency
FetchContent_Declare(
    googletest
    GIT_REPOSITORY  https://github.com/google/googletest
    GIT_TAG         release-1.10.0
)
FetchContent_MakeAvailable(mbed googletest)

# We add this subdirectory to get our header references for our tests
include_directories(src)
add_subdirectory(src)
# And then we build our gtests...
add_subdirectory(TESTS)

Is NOT building.
Relevant CMakeLists.txt file in the TESTS directory:
set(BINARY ${CMAKE_PROJECT_NAME}_test)

file(GLOB_RECURSE TEST_SOURCES LIST_DIRECTORIES false *.h *.cpp)

set(SOURCES ${TEST_SOURCES})

add_executable(${BINARY} ${TEST_SOURCES})

add_test(NAME ${BINARY} COMMAND ${BINARY})

target_link_libraries(${BINARY} PUBLIC ${CMAKE_PROJECT_NAME}_lib gtest)
# target_link_libraries(${BINARY} PUBLIC ${CMAKE_PROJECT_NAME}_lib mbed)

Once these are built and can be configured to use device specific drivers like the L432KC, we can do some testing on the other components. (Not really, since any mbed driver probably needs physical testing or a simulator, but we can probably test some basic functionality.)

Better idea, let's switch to doctest bc all of the clutter for gtest is annoying.

Swapped to doctest, closing.


In-page nav bar links to external content

In some cases, the analysts have produced content that doesn't fit directly into the current model.
When this happens, they put a link into the in-page navigation bar.  This will be a custom link and a custom reference.
I guess this is a bit like Related Links references.
So, Ian will produce a page of this Related Links content, and we'll experiment with linking to it from the nav bar.

I´m just referring to the French Power  Units file.

Done.


[BUG]

Context
In order to help us troubleshoot issues with this project, you must provide the following details:

ElasticDump version:  Docker image elasticdump/elasticsearch-dump
Elasticsearch version: Opensearch 2.4
Node.js version : v16.16.0
Full command you are having issue with (with inputs and outputs)

(base)> docker run --name es-dump --rm -ti   elasticdump/elasticsearch-dump     --input=http://localhost:9200/recipe_en     --output=./recipe_en.json
Mon, 13 Mar 2023 21:45:03 GMT | starting dump
Mon, 13 Mar 2023 21:45:23 GMT | Error Emitted => connect ECONNREFUSED <IP_ADDRESS>:9200
Mon, 13 Mar 2023 21:45:23 GMT | Error Emitted => connect ECONNREFUSED <IP_ADDRESS>:9200
Mon, 13 Mar 2023 21:45:23 GMT | Total Writes: 0
Mon, 13 Mar 2023 21:45:23 GMT | dump ended with error (get phase) => Error: connect ECONNREFUSED <IP_ADDRESS>:9200
Describe the bug
Not able to connect to a local instance of Opensearch 2.4

https://github.com/elasticsearch-dump/elasticsearch-dump#docker-install


typo - oprionalClaims

typo
The oprionalClaims object declares the optional claims requested by an application

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

ID: b4a177db-c714-599f-9091-b1e97506cd49
Version Independent ID: 2bbfd6ca-1032-6afb-49bd-9dba40aa2513
Content: Provide optional claims to your app - Microsoft Entra
Content Source: articles/active-directory/develop/optional-claims.md
Service: active-directory
Sub-service: develop
GitHub Login: @davidmu1
Microsoft Alias: davidmu

@davidmu1
Thanks for your responses.
Please can you confirm to close this case.

is there a PR? or was it already merged?

LGTM


[WIP] hostcore docker build

Need to figure out why the release isn't working for 0.58.0, may be related to https://community.render.com/t/i-need-a-temporary-directory-for-rustler-elixir-to-write-to/3987

Closing in favor of #490


feat: Allow the OT-2 to continue on with a protocol after the temperature is set on a temperature module

Customers should be able to set a temperature on the temperature module and continue on with their protocol. Currently, after setting a temperature on the module the protocol pauses and waits for the temperature to be reached.

It looks like start_set_temperature() is deliberately excluded from the docs:
https://github.com/Opentrons/opentrons/blame/e446e26fcf4dcf0267cf0d221f137cc16a0265c4/api/docs/v2/new_protocol_api.rst#L33

This will not be published to python users, it is intended to be used only by PD for the time being.

I can't figure out what mechanism is preventing await_temperature from showing up, though.

If/when we decide to officially support this, we should double-check the name. It would be easy-ish to change now, but harder to change later.
My vote is for wait_for_temperature().

It avoids conflicting with Python's special await keyword, which would erroneously imply async-ness.
It is more likely to match UX copy, like in Protocol Designer. UX copy is more likely to say "wait for" than it is to say "await."
The pattern wait_for_* is extensible to pretty much anything.


feat(parser/html): correctly parse void elements

Summary

Void elements are elements whose content model is "nothing", meaning that they should not have an end tag, and therefore, have no children.
In browsers, this requirement is imposed very forgivingly. Given that Biome doesn't aim to write browser-grade parsers, we can afford to be a little more strict.
The parser now checks the tag name to know if it should be self closing. If it encounters a closing tag for a void element, it will emit a diagnostic.

Test Plan

Added snapshot tests.
See the HTML spec: https://html.spec.whatwg.org/#void-elements

Given that Biome doesn't aim to write browser-grade parsers, we can afford to be a little more strict.

I would like to bring this topic to the table and discuss it, eventually. I would be open to make the parser a bit more forgiving, and still emitting warnings/errors, using our error resilience parser.
FYI, Astro's parser is way closer to a browser parser, because they can enable streaming during rendering.
I believe that also Svelte recently changed their approach.

Given that Biome doesn't aim to write browser-grade parsers, we can afford to be a little more strict.

I think we should aim to be standard compliant. If I remember correctly the HTML5 standard is pretty forgiving. Of course, we can start with a strict subset and then extend it to be more lenient.


(extra) idea: display values tendency

if the new displayed sensor value is lesser (in a range) than the old one, then  ↘
if the new displayed sensor value is higher (in a range) than the old one, then  ↗
if the new displayed sensor value stays in the range, then ➡

Done


Release 2023-02-01

Adds Composer patches plugin to composer.json

Proposed commit message:

Adds Composer Patches plugin
The Composer Patches plugin provides a way to patch any required Composer package from a local or remote file. This brings the WordPress (Composer Managed) upstream in line with the existing Drupal (Composer Managed) upstream which also supports Composer Patches. You can learn more about Composer Patches here: https://github.com/cweagans/composer-patches


Chart Goes Somewhere

To Reproduce
Steps to reproduce the behavior:
Screenshots
https://i.imgur.com/V3VZI3F.png
Desktop (please complete the following information):

OS: Windows
Browser Chrome

Sporadic issues are the worst to track down but I was able to get it to happen each time by having the viewport around 1200px wide then as the graphs begin to draw, maximize the window to a full 5120 and the graphs freeze in mid-draw.

@leineveber please check if your PR fixed this

Sporadic issues are the worst to track down but I was able to get it to happen each time by having the viewport around 1200px wide then as the graphs begin to draw, maximize the window to a full 5120 and the graphs freeze in mid-draw.

thanks for your help!
fixed


version: Show the agent version in startup

This patch adds a message to show the agent version
at startup, this will be useful for debugging.
Fixes: #52
Signed-off-by: Jose Carlos Venegas Munoz<EMAIL_ADDRESS>

@sboeuf  what do you think about save a commit in 'commit_id' file and use it, this  in order to show the commit id from a make dist tarball (that we dont have yet)

@jcvenegas yes if you want to display the commit id on the tarball name, I am fine with this :)

Great! This is indeed going to be extremely useful.
lgtm


[Feature]: Cue skills development

Description
Learn Cue language :rocket:
Expected behaviour
Here is what you have to do :

cuelang.org will be your best friend

Cuelang GitHub

[ ] Read Cue introduction
[ ] Read Cue use cases
[ ] Read the logic of Cue
[ ] Read Cue specifications
[ ] Follow all the Cue tutorials
[ ] Write a Cue program that validates GitHub Actions
[ ] Call @TomChv to review your Cue program

Environment
/
Proposed solution
/

You can also check Cuetorials, it's a good complement to officiel cue website

You can also check Cuetorials, it's a good complement to officiel cue website.
Specially about Cue API, you'll need to master that one to complete your project ;)

Thanks ! I was trying to find this website :+1:


More tests for the commandline interface

I added more tests:

Check if columns only consist of NaN
Check if clumns adhere to their categorical values defined in the validation file in the section values
A check that tests whether each row in a column cluster does not contain single NaN values.

I also added some hopefully convenient tool that you get asked after each section whether you want to continue the tests. This can be overridden by the option -y which will enforce all tests.
For doing all tests:
python3 src/validate.py -d data/example_study1 -y

For intercepting after some tests:
python3 src/validate.py -d data/example_study1

I have some questions/things about the changes:

I get the error "←[91mERROR Empty column inoculation_type in host_events.csv←[0m"
I think this is because there is no value in this column. So this is an exception for the empty columns. There is also a possibility that a experiment has no inoculation event.

This error: "←[91mERROR VALUES environment.csv column environment_level contains {1} --> not accepted.←[0m"
I see in the validation.toml that 1,2,3 are accepted ? So why my value of 1 is not accepted?

I get the feeling that the check on missing values per row is 1 step behind. I get
Row 2 in columns ['measurement_type', 'measurement_quantity', 'measurement_unit'].
Row 3 in columns ['measurement_type', 'measurement_quantity', 'measurement_unit'].

where in the excel file of host_event.csv it is row 3-4 (if I do not count the header as a row ;)).

Maybe it is possible to show 5 more errors hence 15 errors instead of 10?

1. I get the error "←[91mERROR Empty column inoculation_type in host_events.csv←[0m"
   I think this is because there is no value in this column. So this is an exception for the empty columns. There is also a possibility that a experiment has no inoculation event.

It can be easily turned into "INFO", but then it would also just give an INFO for the madatory columns.

2. This error: "←[91mERROR VALUES environment.csv column environment_level contains {1} --> not accepted.←[0m"
   I see in the validation.toml that 1,2,3 are accepted ? So why my value of 1 is not accepted?

I need to on which data you are running the code. For the synthetic data 2 all is fine.

3. I get the feeling that the check on missing values per row is 1 step behind. I get
   Row 2 in columns ['measurement_type', 'measurement_quantity', 'measurement_unit'].
   Row 3 in columns ['measurement_type', 'measurement_quantity', 'measurement_unit'].

where in the excel file of host_event.csv it is row 3-4 (if I do not count the header as a row ;)).

Yes, python starts indexing at 0. So the first row always has index 0. I added a 1.

4. Maybe it is possible to show 5 more errors hence 15 errors instead of 10?

I think this is easily adjustable, if you need it. The variable to steer the length of the output is called MAX_NUM_RES


agent subprocess termination

We have witnessed that an agent process might not terminate after a kill signal with a 30 second timeout.

"The child process is not killed if the timeout expires, so in order to cleanup properly a well-behaved application should kill the child process and finish communication" - reference
We should consider running the agent in a separate process group. This will prevent orphan (zombie) processes in case the agent spawn any subprocesses. - reference

we may also inspect the subprocess termination logic in the psutil library for details of their implementation.

suppose it's good to make a test that checks agent terminated properly, without any subprocesses left
https://github.com/valory-xyz/open-aea/pull/563 partially fixes for windows.
not sure issue presents for liunx,mac. need to check

Addressed


Spotify playlist not being recognized/handled properly on launch

OxidizeBot starts on PC launch, but needs to be restarted before actual use, because if it isn't, the Spotify fallback playlist is seen as empty. It gives the "queue is empty" error.

This issue was fixed in d26b4f18236fbcd5a635a4460f56737bcd918770, pre-release 1.0.4-alpha.2 onwards.

This issue was fixed in d26b4f18236fbcd5a635a4460f56737bcd918770, pre-release 1.0.4-alpha.2 onwards.


[Feature]Setting up of control node and 2 target nodes  using ansible

In this project I would like to add Steps for setting up of control node and 2 target nodes in system using ansible
This would be great start and would be helpful for people learning setting up of control node and target nodes

Go ahead @litesh1123


Some code confusion

I'm confused about the line 203 of meta.py:
w_target = torch.abs(ebd @ data['w_target'])
Why need to calculate absolute value here?

Hi,

Hi

On line 203, we first compute the dot product of each category's weight vector and the word embedding. The reason why we take an absolute value is that here we care about the influence of the current word to the prediction:

If the outcome is a large positive number, this word is a very important feature.
If the outcome is a large negative number, then the current word should also be a strong indicator for this example not belonging to this category.

Anyway, these are some heuristics that we found pretty effective. Please feel free to make adjustments to fit your need.


Button participate or interest

Adding a participate button helps the event creator to know that there are participants in his event.
We currently have a follow and like button only.

What is the difference between participate and follow in this context?
Another solution is change names like this:

Follow becomes Participate, meaning will assist and be actively engaged.
Like becomes Interested, meaning the user likes the event but not sure if assist

What do you think about it?

the like button remains so that users can like it if they find it good or imagine it.
the follow button remains so that people can follow if there are any changes on the events and can see it in his profile.
the participate button will be for real participants of the event.

finished
2h


Functionality of C++ headers in libcaercpp/events

The C++ wrapping code for C headers looks great! :+1:
I don't know about the state of the cpp headers in events/ folder. I found a problem, where common.hpp is properly defined, but polarity.hpp is empty (only the #ifndef).
I think it should also have the #include <libcaer/polarity.h>, or if only the C-header is intended to be used, remove the .hpp broken versions.
Current status:

you include polarity.h and everything works
include polarity.hpp and there are undefined names.

Yes, the C++ support is still work in progress. The events have now all been ported, as well as pretty much everything else.
Only outstanding job is to write a C++ 'events/packetContainer.hpp' and make the deviceDataGet() functions return that one. I'll complete this Saturday afternoon.

C++ support is complete and working. Enjoy!
Some features will be added later, like iterators, but the API should substantially be stable now.

Awesome! Thank you very much!

Hi, please update again from master. I've just merged a branch with many changes to the C++ support, some of the API changed, but nothing too dramatically. The probably only big user-visible change is that the events are now in the same namespace as the packets, and not inside of the packet namespace.
I've added support for iterators (const & reverse included), properly use smart pointers in the public API now, lots less code duplication between the event packet types, a few new useful methods like front(), back(), etc. and support for negative indexes, so you can do EventPacket[-1] to access the last event and so on (counts back from size(), not capacity()! Is range checked).
for (auto &event : *eventPacket) {} is really nice! ;-)


Add support for db plugins

As I suggested on twitter it would be nice to have support for db plugins. I am am more than happy to implement this. There are a few things that needs to be considered. How should the api be? I am thinking the same as db.js is today just with promises for everything, like you mentioned on twitter. Should plugins be in this repo? I think it would be nice if they were external packages e.g. micro-analytics-db-redis.

You're definitely thinking in the right direction. I want the default to be flat-file-db due to easy of usage, which shall still live in this repo.
Using a different database should be as easy as running $ micro-analytics --db redis, where "redis" then requires the micro-analytics-adapter-redis package. (I'm thinking all the other packages should live in their own repos of the people who make them, since I might or might not use them and don't want to end up maintaining something I don't know)

The first step towards this is that we have to stop mocking db.js in tests. Instead, we should be mocking flat-file-db, and making db.js be flat-file-adapter.js. Running --db redis would then go in and require a different adapter.
The methods we use right now are db.get, db.put, db.keys and db.has, all of which should be changed to return promises. I actually think that flat-file-db has something wrong, which is db.keys – it would be much more useful if the db had a method called db.getAll or something, which would automatically return all the data. This would also allow us to move filtering over to the databases, instead of doing it on the returned data. (which is slower)
What do you think?

Also, should we future-proof adapters? What other methods could we ever need?
Is there precedence of doing something like this somewhere? What database adapters for which projects exist today?

My first reaction to seeing this repo was "awesome, how can I use firebase as my backend?". Definitely looking forward to the ability to create adapters 👌
The spec you have above looks pretty solid, would easily allow for local and remote storage solutions. Are the before and after filters going to be unix timestamps?

The spec looks good. It might be nice to have subscribe and unsubscribe if we want to support live updates. A bit unsure about that tho, what do you think?

Also do we need a delete call?

That spec looks solid. You can check #9 for an example of a redis adapter with all methods using promises.

@juandjara I missed that PR, also interested in a redis backend so i started to create an adapter on for it (mostly to think about the API).
btw: I have a wip/poc branch for moving flat file to adapters here https://github.com/mxstbr/micro-analytics/compare/master...relekang:move-flat-file-db-to-adapter. It just need new tests for the filtering.

Are the before and after filters going to be unix timestamps?

Yes, I think it's fair to require users to convert their human-readable times to UTC before they send them to us if they need them. (see the discussion in #3)

It might be nice to have subscribe and unsubscribe if we want to support live updates. A bit unsure about that tho, what do you think?

Good call, we should definitely have those! They should probably return an observable based on the new spec? https://github.com/tc39/proposal-observable What do you think?

Good call, we should definitely have those! They should probably return an observable based on the new spec? https://github.com/tc39/proposal-observable What do you think?

Yes, that sounds like a good idea. I have about zero experience with observables, but from what I understand this seems like a good use case.

Not sure about this and unsubscribe. Are they really worth having? I don't think you'd ever delete a view or unsubscribe?

Agree, just wanted to ask since it was in the current implementation. If we go for observables I don't think we need unsubscribe either.

Yes, that sounds like a good idea. I have about zero experience with observables, but from what I understand this seems like a good use case.

The bigger question is how we then implement the actual live updates from the server to the client, but I guess I'll just open another issue for that.


Verify uri.host before downcasing to prevent NilClass error

Overview
Normalization of external hostnames was introduced in v4.1.0. One of the steps of this normalization is downcasing external hostnames.
Problem
In case of an invalid URL (user entered information or specs), the hostname can be nil. Then calling downcase! in such object would result in NoMethodError: undefined method 'downcase' for nil:NilClass.
Proposed Solution
A simple nil check before trying to downcase the hostname would solve this, since if no hostname is available, there's no need for using downcase!

@rafaelv90 thank you! that is indeed a good check to have there. what do you think about adding a test for this case in test/new_relic/agent/http_clients/uri_util_test.rb ?

@kenichi Nice! Will submit the commit as soon as I can!

@kenichi Do you think it's good now?

@rafaelv90 We've got some test failures that we're having trouble reproducing locally, so we're working on figuring out the source of that. Most likely it has to do with incompatible gem versions - something new got released and broke it. So once we figure that out it should be good to go. 👍

This has been accepted, we rebased it to fix the failures and it's being merged in our private repo - we'll release it with our next release. Thanks @rafaelv90!

This has been released in version 4.3.0! Thanks, @rafaelv90!


lower python minimum version to 3.6

This project does not use any special language features outside of f-strings, so we can lower the minimum version required. This should help avoid branching import strategies for projects that have not yet moved up to 3.8.

The GitHub runners resolve to Ubuntu 22.04 (jammy) for the ubuntu-latest tag, which does not have any packages available that provide Python 3.6. Moving back just one version to 3.7 does not make sense - if a project is going to move forward, they might as well go from 3.6 to a much later version.


Add personal snippets api

This adds support for Gitlab Personal Snippets API (/snippets). If everything is ok, it would be nice to have this code merged to the main project.

@faustovaz
This looks great and is very complete, thank you.
I have just one question, why call the the PersonalSnippetsApi and not simply the SnippetsApi?  As much as possible, we keep a one-to-one mapping of sub-API names to the API names in the GitLab documentation, and this maps to https://docs.gitlab.com/ee/api/snippets.html which GitLab refers to as the Snippets API.
I would suggest renaming this to simply SnippetsApi so that it matches the GitLab documentation.

Hi @gmessner ,
you are right. I chose PersonalSnippets to differentiate this kind of Snippet from Project's Snippet. But it's better to keep a one-to-one mapping, like you said.
I already submitted the code changes.
Thank you!

Thank you for reviewing my code, @gmessner .
Now it's much better!

@faustovaz
The changes look good.  I'm going to approve and merge and will get a release out later today.

@faustovaz
I've released 4.8.19.
I did make some minor edits, mostly around formatting to bring the new files in-line with the formatting styles we use (mainly 4 spaces instead of tabs).  Also added Pager and Optional support to the SnippetsApi.
Thanks again for your contribution.


Don't apologise if its not our fault in warnings

r? @marcusklaas or @cassiersg

Looks good to me. I think one could argue that the message {pre, suf}fix isn't really a property of a FormattingError, but that's splitting hairs of course.
Is @bors watching this?
@bors r+

Heh, no bors here


[1472] Add course.toggle_site method, and more

Context
These are various model methods that are used by the forthcoming new MCB scripts.
This allows us to toggle sites on courses through MCB as well as present different kinds of data, such as the potential sites that can be attached to a course.
Changes proposed in this pull request
Implements the new methods, alongside tests.
Guidance to review
Easiest reviewed commit by commit.
I have not ticked the "Cleaned commit history" because I don't know if I should add more context to the existing 6 commits, or squash them into one. They all do one small method each which I find pleasing but maybe not all reviewers agree.
Checklist

[x] Make sure all information from the Trello card is in here
[x] Attach to Trello card
[x] Rebased master
[ ] Cleaned commit history
[x] Tested by running locally

 Ability to "toggle" training locations on courses in code

@tvararu I made a couple of tweaks:

replaced the course.actual_and_potential_site_statuses method with the far simpler sites_not_associated_with_course method
broke up the specs for the state machine and added a little more coverage

Thanks @benilovj 👍

🎉


Fix unit-test self-import and add extra unit-tests

Signed-off-by: Dominique Vernier<EMAIL_ADDRESS>

/approve

/lgtm


LineFormatter throws TypeError when json_encode fails

When LineFormatter::convertToString() is called with non scalar data, it ends up calling NormalizerFormatter::toJson() with second param, $ignoreErrors,  set to true.
It means that NormalizerFormatter::toJson() does just return @$this->jsonEncode($data); that on its turn calls json_encode.
The issue here is that with some inputs json_encode returns false and so, up to the stack, in those cases LineFormatter::convertToString() return false as well.
This is causing a Monolog-based library I've written to log TypeError throwable caused by Monolog, because I was (reasonably, IMO) expecting LineFormatter::convertToString() to return a string.
This could just be solved changing
return $this->toJson($data, true);

to
return (string) $this->toJson($data, true);

in LineFormatter::convertToString().
I'm glad to send a PR if you agree.

Thanks for the detailed report and indeed that sounds like a valid solution, I'll do it as it's such an easy change.


problem with different image file types, train.txt

Hello,
I have two issues with this software.

it seems it does not generate the train.txt file intself and we gonna make it before start labeling, isn't it?

I have some images with PNG format, the software seems to be unable to read them.

@VanitarNordic

No. Yolo_mark generates train.txt automatically. You should create only synset.txt, or you may to not create it.

Yes, but you can rename all .png, .jpeg, .bmp files to .jpg-files, and it will work.

Yess, Now it woks quite perfectly. it is good software. congratulations!

I fixed it.
Now there are supported files: jpg, jpeg, bmp, png, ppm - and UPPER CASE extensions.


Packaging support

We should be able to predefine shipping packages which should define:

Dimensions (Height, width, depth)
The weight of an empty package

Loose idea - as we create the packages, we could rely on pulling the rates from carriers website.

Second this. To give some context. We're building a furniture e-commerce app and dimensions on product variants is super important. We're adding this ourselves, but would be great if can be supported natively one day.

Anyone interested in pursuing this project to present a finished project to miramee please contact me as I already have 80% of this complete<EMAIL_ADDRESS>

@jyoost feel free to send an email to<EMAIL_ADDRESS>👍


Notifications are not showing on Android 7.0.0 Platform for IONIC 4

Hi everyone. I'm having issues with the receiver plugin showing the next error in monitor while receive a notification:
06-04 10:21:37.499: E/NotificationService(1277): No Channel found for pkg=com.levellite.llt, channelId=null, id=1, tag=null, opPkg=com.levellite.llt, callingUid=10269, userId=0, incomingUserId=0, notificationUid=10269, notification=Notification(channel=null pri=0 contentView=null vibrate=[0,400,250,400] sound=content://settings/system/notification_sound defaults=0x0 flags=0x10 color=0x00000000 vis=PRIVATE)
i'm writing this because i saw this issue
 but seems that it's not solved yet, besides im using version 1.0.25 for pushy-cordova and version 1.0.0 for pushy-cordova-receiver.
Thanks for your time.
PD: I tried with the platform 8.0.0 of Android from cordova and works like charm!

Hi @alvarofelipe12,
You may be experiencing this issue because you have updated the pushy-cordova plugin to 1.0.25 which is indeed the latest version but have not updated the pushy-cordova-receiver plugin.
Please run these commands in the root of your project:
cordova plugin rm pushy-cordova-receiver
cordova plugin add ./plugins/pushy-cordova/receiver/

Then, re-run your app and it should now display notifications on newer Android versions which require setting a notification channel.

Hi @alvarofelipe12,
You may be experiencing this issue because you have updated the pushy-cordova plugin to 1.0.25 which is indeed the latest version but have not updated the pushy-cordova-receiver plugin.
Please run these commands in the root of your project:
cordova plugin rm pushy-cordova-receiver
cordova plugin add ./plugins/pushy-cordova/receiver/

Then, re-run your app and it should now display notifications on newer Android versions which require setting a notification channel.

Hi @alvarofelipe12,
You may be experiencing this issue because you have updated the pushy-cordova plugin to 1.0.25 which is indeed the latest version but have not updated the pushy-cordova-receiver plugin.
Please run these commands in the root of your project:
cordova plugin rm pushy-cordova-receiver
cordova plugin add ./plugins/pushy-cordova/receiver/

Then, re-run your app and it should now display notifications on newer Android versions which require setting a notification channel.

Nope, that didn't worked. Anyway i'm using right now the platform 8.0.0.

Hi @alvarofelipe12,
Please reply with the contents of the following file in your project:
./plugins/pushy-cordova/receiver/src/android/PushReceiver.java

It should contain the following line:
        // Automatically configure a Notification Channel for devices running Android O+
        Pushy.setNotificationChannel(builder, context);

@alvarofelipe12 Closing due to lack of activity.


Consider Matlab support

1-based indexing is horrible but can be overcome by always adding or subtracting 1.
https://www.mathworks.com/help/matlab/matlab_oop/matlab-vs-other-oo-languages.html

https://www.mathworks.com/help/matlab/ref/function.html
Matlab also does weird thing with function return types by declaring the return values first. Not supportable.


Update README.md  err translated into Portuguese would be perfect for reading!

Thanks!

It was correct before though...


karma logo to animated logo

https://github.com/akshitagupta15june/Moksh/assets/91370902/d15f84c8-3490-4720-a1ae-1bffc0a066d1
Change the previous logo in an animated logo.

https://github.com/akshitagupta15june/Moksh/assets/91370902/9bab3d66-0092-4490-b2ef-0260063c8f8c
updated logo


Custom events are showing in wrong order

Is it an issue related to Adaptive Cards?
No
Is this an accessibility issue?
No
What version of Web Chat are you using?
Latest production
Which distribution are you using Web Chat from?
NPM
Which hosting environment does this issue primarily affect?
Web apps
Which browsers and platforms do the issue happened?
Browser: Edge (latest), Browser: Chrome (latest)
Which area does this issue affect?
Chat history
What is the public URL for the website?
No response
Please describe the bug
(Refer to IcM #342603662 for full issue details.)
The scenario is a user is communicating with the bot, then elects to transfer (handoff) the conversation to a Salesforce agent. Once the handoff to the agent succeeds, an 'End Chat' button appears at the bottom of the transcript window giving the user the option to end the conversation at any point. It is a custom event, 'SHOW_CLOSE_CHAT_BUTTON', that is issued that causes the 'End Chat' button to appear.
Once the user clicks the 'End Chat' button, a second custom event, 'HIDE_CLOSE_CHAT_BUTTON', is issued which then causes the 'End Chat' button to be hidden. At this point, the conversation with the agent has concluded and the conversation with the bot has resumed. Additionally, the order of the issued events shows as:

'SHOW_CLOSE_CHAT_BUTTON'
'HIDE_CLOSE_CHAT_BUTTON'

If the user, then, refreshes the page, the order of the issued events reverses showing as:

'HIDE_CLOSE_CHAT_BUTTON'
'SHOW_CLOSE_CHAT_BUTTON'

The result being that the 'End Chat' button is once more visible. As the customer states,

the chat conversation is loading but the event fired are fetching in reverse order due to which the close event is firing first and show event is firing second.

Ram and I cannot attempt a repro using Salesforce since it requires having an account. However, using the customer's code we were not able to repro in any other environment. The order was always maintained. We tested with different versions of Web Chat as well as different versions of Composer.
Customer's bot and Web Chat code, as well as a video repro'ing the issue, are available in the IcM.
Do you see any errors in console log?
None shown while testing.

How to reproduce the issue?
Unable to repro as it requires a Salesforce account.
What do you expect?
When the page is refreshed, the order of the events should be maintained so that the state of the UI elements is also maintained.
What actually happened?
When the page is refreshed, the order of the events is not being maintained, but rather reversed in order. Consequently, the state of the affected UI elements is not being maintained.
Do you have any screenshots or recordings to repro the issue?
A video from the customer is available in the above referenced IcM.
Adaptive Card JSON
No response
Additional context
Customer stated they implemented the below as a workaround:

Regarding the workaround we have tried to count the number of events count by using state hooks and based on it we are handling to show end chat button or not. If show button event is triggered count is 1 and hide button event button is 1 then we are hiding the End Chat Button ,if the Show event count> hide event count then we are enabling the End Chat Button and vice-versa .

After some investigations:

The "show button" event has a replyToId pointing to a non-existent activity
The "hide button" event has a valid replyToId

Thus, when the chat history is being restored, the "show button" event is delayed waiting for the non-existing activity. And the "hide button" event is being presented sooner than the "show button" event.
On the bot side, needs to investigate why the replyToId on the "show button" event is pointing nowhere.


Country code changed by itself when trying to input.

If i set initialValue to some country, then change country in app and try to input phone number - it changes back to initial country code.

Similar to #155,
@spacekestrel iss: #155 was able to explain break down this issue, so far I have been able to reproduce and  fix it. Thanks for raising this issue.


Running out of CPU memory

Hi, I'm trying to Scan a simple modelo with a CNN and a LSTM, with no so big parameters:
def breast_cancer_model(x_train, y_train, x_val, y_val, params):
    model = Sequential()
    model.add(Embedding(len(w2idx), params['emb_size'], input_length=MAX_DOCUMENT_LENGTH))
    model.add(Conv1D(params['first_neuron'],params['cn_shape'],padding='same', activation=relu))#original with 64
    model.add(Dropout(params['do1']))
    model.add((LSTM(params['second_neuron'],return_sequences=True)))#original with 100
    model.add(Attention_tf())
    model.add(Dropout(params['do1']))
    model.add(Dense(len(int_idx2la), activation='softmax'))
    parallel_model = multi_gpu_model(model, gpus=2)

    parallel_model.compile(optimizer=params['optimizer']
                  (lr=lr_normalizer(params['lr'],
                                    params['optimizer'])),
                  loss=params['losses'],
                  metrics=[fmeasure_acc])
    #print(model.summary())
    out = parallel_model.fit(x_train, y_train, validation_data=(x_val, y_val), batch_size=params['batch_size'], verbose=1, epochs=params['epochs'])
    return out, parallel_model

with
p = {'lr': (0.5, 5, 4),
     'second_neuron':[512,256,64],
     'first_neuron': [512,256,64],
     'cn_shape':[4,5],
     'batch_size': [50, 100, 150],
     'epochs': [1],
     'do1': [0.5],
     #'do2': (0.0, 1.0, 4),
     'emb_size': [10000, 1000],
     'optimizer': [Adam],
     'losses': [binary_crossentropy],
     'activation':[relu],
     'last_activation': [softmax]}

And it's growing the cpu usage until it uses 64GB (my whole RAM memory). I tried to train the model with all of the parameters separately and no more than 5GB are used. Why is this?
Thanks

Can you first update to latest version pip install -U git+https://github.com/autonomio/talos@daily-dev and see if the problem persist.

The problem persists with the latest version. The dataset is very small, I'm just testing, it's 2.000 sentences padded to 75 length only.

Are you on TensorFlow backend?

Also I'm not sure what do you mean by "running out of CPU memory" as it seems to me that you are running a GPU model.
Related, what is this parallel_model = multi_gpu_model(model, gpus=2).

Yes, I'm on TensorFlow backend. The parallel_model was only to run the model with two GPUs, but it was only a try, the problem was there before I tried it. And, as you say, I'm running a GPU model, but I don't know why it's using the whole CPU. I explain myself: I can see that it's running on GPU (with nvidia-smi), and no OOM errors with this, but if I watch the CPU with htop the memory it's beeing filled iteration by iteration, until it's full, and the machine get stuck because of the lack of RAM.

Here are some pictures:
the GPU:

and the CPU:

(I'm going to update the comment when the CPU usage is raising)

I have this warning in the beginning, maybe could be related..:
env_spell_checker35/lib/python3.5/site-packages/chances/plots.py:7: UserWarning:
This call to matplotlib.use() has no effect because the backend has already
been chosen; matplotlib.use() must be called *before* pylab, matplotlib.pyplot,
or matplotlib.backends is imported for the first time.

The backend was *originally* set to 'module://ipykernel.pylab.backend_inline' by the following code:
  File "/usr/lib/python3.5/runpy.py", line 184, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/local/lib/python3.5/dist-packages/ipykernel_launcher.py", line 16, in <module>
    app.launch_new_instance()
  File "/usr/local/lib/python3.5/dist-packages/traitlets/config/application.py", line 658, in launch_instance
    app.start()
  File "/usr/local/lib/python3.5/dist-packages/ipykernel/kernelapp.py", line 486, in start
    self.io_loop.start()
  File "/usr/local/lib/python3.5/dist-packages/tornado/platform/asyncio.py", line 127, in start
    self.asyncio_loop.run_forever()
  File "/usr/lib/python3.5/asyncio/base_events.py", line 345, in run_forever
    self._run_once()
  File "/usr/lib/python3.5/asyncio/base_events.py", line 1312, in _run_once
    handle._run()
  File "/usr/lib/python3.5/asyncio/events.py", line 125, in _run
    self._callback(*self._args)
  File "/usr/local/lib/python3.5/dist-packages/tornado/ioloop.py", line 759, in _run_callback
    ret = callback()
  File "/usr/local/lib/python3.5/dist-packages/tornado/stack_context.py", line 276, in null_wrapper
    return fn(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/zmq/eventloop/zmqstream.py", line 536, in <lambda>
    self.io_loop.add_callback(lambda : self._handle_events(self.socket, 0))
  File "/usr/local/lib/python3.5/dist-packages/zmq/eventloop/zmqstream.py", line 450, in _handle_events
    self._handle_recv()
  File "/usr/local/lib/python3.5/dist-packages/zmq/eventloop/zmqstream.py", line 480, in _handle_recv
    self._run_callback(callback, msg)
  File "/usr/local/lib/python3.5/dist-packages/zmq/eventloop/zmqstream.py", line 432, in _run_callback
    callback(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/tornado/stack_context.py", line 276, in null_wrapper
    return fn(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/ipykernel/kernelbase.py", line 283, in dispatcher
    return self.dispatch_shell(stream, msg)
  File "/usr/local/lib/python3.5/dist-packages/ipykernel/kernelbase.py", line 233, in dispatch_shell
    handler(stream, idents, msg)
  File "/usr/local/lib/python3.5/dist-packages/ipykernel/kernelbase.py", line 399, in execute_request
    user_expressions, allow_stdin)
  File "/usr/local/lib/python3.5/dist-packages/ipykernel/ipkernel.py", line 208, in do_execute
    res = shell.run_cell(code, store_history=store_history, silent=silent)
  File "/usr/local/lib/python3.5/dist-packages/ipykernel/zmqshell.py", line 537, in run_cell
    return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/IPython/core/interactiveshell.py", line 2662, in run_cell
    raw_cell, store_history, silent, shell_futures)
  File "/usr/local/lib/python3.5/dist-packages/IPython/core/interactiveshell.py", line 2785, in _run_cell
    interactivity=interactivity, compiler=compiler, result=result)
  File "/usr/local/lib/python3.5/dist-packages/IPython/core/interactiveshell.py", line 2903, in run_ast_nodes
    if self.run_code(code, result):
  File "/usr/local/lib/python3.5/dist-packages/IPython/core/interactiveshell.py", line 2963, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-11-b8ab17f2c44b>", line 1, in <module>
    import talos as ta
  File "/tertiary/env_spell_checker35/lib/python3.5/site-packages/talos/__init__.py", line 2, in <module>
    from .scan.Scan import Scan
  File "/tertiary/env_spell_checker35/lib/python3.5/site-packages/talos/scan/Scan.py", line 3, in <module>
    from .scan_prepare import scan_prepare
  File "/tertiary/env_spell_checker35/lib/python3.5/site-packages/talos/scan/scan_prepare.py", line 3, in <module>
    from ..utils.validation_split import validation_split
  File "/tertiary/env_spell_checker35/lib/python3.5/site-packages/talos/utils/__init__.py", line 4, in <module>
    from kerasplotlib import TrainingLog as live
  File "/tertiary/env_spell_checker35/lib/python3.5/site-packages/kerasplotlib/__init__.py", line 1, in <module>
    from kerasplotlib.traininglog import TrainingLog
  File "/tertiary//env_spell_checker35/lib/python3.5/site-packages/kerasplotlib/traininglog.py", line 5, in <module>
    import matplotlib.pyplot as plt
  File "/usr/local/lib/python3.5/dist-packages/matplotlib/pyplot.py", line 71, in <module>
    from matplotlib.backends import pylab_setup
  File "/usr/local/lib/python3.5/dist-packages/matplotlib/backends/__init__.py", line 16, in <module>
    line for line in traceback.format_stack()

  matplotlib.use('Agg')

Thanks. Please share your Scan() command as well.

Sure, this is the Scan command:
from keras.backend.tensorflow_backend import set_session
config = tf.ConfigProto(allow_soft_placement=True)
config.gpu_options.allow_growth = True  # dynamically grow the memory used on the GPU
sess = tf.Session(config=config)
set_session(sess)  # set this TensorFlow session as the default session for Keras

t = ta.Scan(x=data,
            y=labels,
            model=breast_cancer_model,
            #grid_downsample=0.01,
            params=p,
            dataset_name='breast_cancer',
            experiment_no='2',
            val_split = 0.2)

(I'm not doing the downsample because I want to try all the options)

Any idea of what can be the reason? :(

Definitely yes, CUDA version is a common reason in TensorFlow with these "weird" problems. Better go back to the old version and see what happens. I'm closing this as it has nothing to do with Talos, but feel free to keep the conversation going here and do update what happens when you roll-back the Cuda version.


Issue raised from PR #47

I have been unable to rename field "persons" in line 24 of "JsonSerializableInternApply" class. The method that this concerns is found in line 30.
Renaming it to "applications" results in the application failing the following testcases:
readAndSaveAddressBook_allInOrder_success() (Line 65)
addressBookReadSave() (Line 51)
Testcases can be found in:
src/test/java/seedu/address/storage/JsonInternApplyStorageTest.java
src/test/java/seedu/address/storage/StorageManagerTest.java
respectively.
I have yet to figure out a solution but the error likely comes from how Json files are being handled by the AB3 code base, This is something pretty minor but I thought I'd just jot it down here for future reference,

Since this does not have any affects we will be closing this.


@vercel/postgres error: Prepared statement does not exist

Received the "prepared statement does not exist" error (full error log at bottom of post) while using vercel provided code (from Learn Next.js course, specifically here). What's baffling is the SQL provided by vercel looks correct to me (copied below), and mostly works, but fails on a random index only for Invoices and Revenue. Every time I run the script it successfully seeds some number of Invoices and then fails on a random index. Same is true if I run it for revenue. Customers and Users get seeded properly without issue.
Here's the table schema and insert statements for invoices, as an example:
async function seedInvoices() {
  await sql`CREATE EXTENSION IF NOT EXISTS "uuid-ossp"`;

  const createTable = await sql`
    CREATE TABLE IF NOT EXISTS invoices (
    id UUID DEFAULT uuid_generate_v4() PRIMARY KEY,
    customer_id UUID NOT NULL,
    amount INT NOT NULL,
    status VARCHAR(255) NOT NULL,
    date DATE NOT NULL
  );
`;

  const insertedInvoices = await Promise.all(
    invoices.map(
      (invoice, i) => sql`
        INSERT INTO invoices (customer_id, amount, status, date)
        VALUES (${invoice.customer_id}, ${invoice.amount}, ${invoice.status}, ${invoice.date})
        ON CONFLICT (id) DO NOTHING;
      `
    )
  );
}

Here are the seed data for invoices:
const invoices = [
  {
    customer_id: '3958dc9e-712f-4377-85e9-fec4b6a6442a',
    amount: 15795,
    status: 'pending',
    date: '2022-12-06'
  },
  {
    customer_id: '3958dc9e-742f-4377-85e9-fec4b6a6442a',
    amount: 20348,
    status: 'pending',
    date: '2022-11-14'
  },
  {
    customer_id: '3958dc9e-787f-4377-85e9-fec4b6a6442a',
    amount: 3040,
    status: 'paid',
    date: '2022-10-29'
  },
  {
    customer_id: '50ca3e18-62cd-11ee-8c99-0242ac120002',
    amount: 44800,
    status: 'paid',
    date: '2023-09-10'
  },
  {
    customer_id: '76d65c26-f784-44a2-ac19-586678f7c2f2',
    amount: 34577,
    status: 'pending',
    date: '2023-08-05'
  },
  {
    customer_id: '126eed9c-c90c-4ef6-a4a8-fcf7408d3c66',
    amount: 54246,
    status: 'pending',
    date: '2023-07-16'
  },
  {
    customer_id: 'd6e15727-9fe1-4961-8c5b-ea44a9bd81aa',
    amount: 666,
    status: 'pending',
    date: '2023-06-27'
  },
  {
    customer_id: '50ca3e18-62cd-11ee-8c99-0242ac120002',
    amount: 32545,
    status: 'paid',
    date: '2023-06-09'
  },
  {
    customer_id: '3958dc9e-787f-4377-85e9-fec4b6a6442a',
    amount: 1250,
    status: 'paid',
    date: '2023-06-17'
  },
  {
    customer_id: '76d65c26-f784-44a2-ac19-586678f7c2f2',
    amount: 8546,
    status: 'paid',
    date: '2023-06-07'
  },
  {
    customer_id: '3958dc9e-742f-4377-85e9-fec4b6a6442a',
    amount: 500,
    status: 'paid',
    date: '2023-08-19'
  },
  {
    customer_id: '76d65c26-f784-44a2-ac19-586678f7c2f2',
    amount: 8945,
    status: 'paid',
    date: '2023-06-03'
  },
  {
    customer_id: '3958dc9e-737f-4377-85e9-fec4b6a6442a',
    amount: 8945,
    status: 'paid',
    date: '2023-06-18'
  },
  {
    customer_id: '3958dc9e-712f-4377-85e9-fec4b6a6442a',
    amount: 8945,
    status: 'paid',
    date: '2023-10-04'
  },
  {
    customer_id: '3958dc9e-737f-4377-85e9-fec4b6a6442a',
    amount: 1000,
    status: 'paid',
    date: '2022-06-05'
  }
]

Here are some typical error logs:
Error seeding invoices: NeonDbError: db error: ERROR: prepared statement "s6495894" does not exist

Caused by:
    ERROR: prepared statement "s6495894" does not exist
    at execute (/Users/johnathansimeroth/Documents/sweProjects/nextjs-dashboard/node_modules/@neondatabase/serverless/index.js:1539:48)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async Promise.all (index 7)
    at async seedInvoices (/Users/johnathansimeroth/Documents/sweProjects/nextjs-dashboard/scripts/seed.js:79:30)
    at async /Users/johnathansimeroth/Documents/sweProjects/nextjs-dashboard/scripts/seed.js:182:3 {
  code: '26000',
  sourceError: undefined
}
node:internal/process/promises:289
            triggerUncaughtException(err, true /* fromPromise */);

My system info from npx envinfo:
System:
    OS: macOS 14.1
    CPU: (12) x64 Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz
    Memory: 936.34 MB / 32.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 21.1.0 - ~/.nvm/versions/node/v21.1.0/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v21.1.0/bin/yarn
    npm: 10.2.1 - ~/.nvm/versions/node/v21.1.0/bin/npm
    pnpm: 8.10.0 - ~/.nvm/versions/node/v21.1.0/bin/pnpm
  Browsers:
    Chrome: 118.0.5993.117
    Safari: 17.1
  npmPackages:
    @heroicons/react: ^2.0.18 => 2.0.18
    @tailwindcss/forms: ^0.5.6 => 0.5.6
    @types/bcrypt: ^5.0.1 => 5.0.1
    @types/node: 20.5.7 => 20.5.7
    @types/react: 18.2.21 => 18.2.21
    @types/react-dom: 18.2.14 => 18.2.14
    @vercel/postgres: ^0.5.0 => 0.5.0
    autoprefixer: 10.4.15 => 10.4.15
    bcrypt: ^5.1.1 => 5.1.1
    clsx: ^2.0.0 => 2.0.0
    dotenv: ^16.3.1 => 16.3.1
    next: ^14.0.0 => 14.0.0
    postcss: 8.4.31 => 8.4.31
    prettier: ^3.0.3 => 3.0.3
    react: 18.2.0 => 18.2.0
    react-dom: 18.2.0 => 18.2.0
    tailwindcss: 3.3.3 => 3.3.3
    typescript: 5.2.2 => 5.2.2
    zod: ^3.22.2 => 3.22.4

I have the same issue with customers seed:
The code:
async function seedCustomers () {
  try {
    await sql`CREATE EXTENSION IF NOT EXISTS "uuid-ossp"`

    // Create the "customers" table if it doesn't exist
    const createTable = await sql`
      CREATE TABLE IF NOT EXISTS customers (
        id UUID DEFAULT uuid_generate_v4() PRIMARY KEY,
        name VARCHAR(255) NOT NULL,
        email VARCHAR(255) NOT NULL,
        image_url VARCHAR(255) NOT NULL
      );
    `

    console.log('Created "customers" table')

    // Insert data into the "customers" table
    const insertedCustomers = await Promise.all(
      customers.map(
        async (customer) => await sql`
        INSERT INTO customers (id, name, email, image_url)
        VALUES (${customer.id}, ${customer.name}, ${customer.email}, ${customer.image_url})
        ON CONFLICT (id) DO NOTHING;
      `
      )
    )

    console.log(`Seeded ${insertedCustomers.length} customers`)

    return {
      createTable,
      customers: insertedCustomers
    }
  } catch (error) {
    console.error('Error seeding customers:', error)
    throw error
  }
}

And the error:
Error seeding customers: NeonDbError: db error: ERROR: prepared statement "s199509" does not exist

Caused by:
    ERROR: prepared statement "s199509" does not exist
    at execute (D:\dev\next\nextjs-dashboard\node_modules\.pnpm\@neondatabase+serverless@0.6.0\node_modules\@neondatabase\serverless\index.js:1539:48)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async file:///D:/dev/next/nextjs-dashboard/scripts/seed.mjs:103:29
    at async Promise.all (index 6)
    at async seedCustomers (file:///D:/dev/next/nextjs-dashboard/scripts/seed.mjs:101:31)
    at async file:///D:/dev/next/nextjs-dashboard/scripts/seed.mjs:160:3 {
  code: '26000',
  sourceError: undefined
}

Hey there, our upstream provider (neon) had an issue and they are working on a fix. Will update this ticket.


Polish development and contribution section

I made the section much more succinct, removing the list of editors which is basically duplicating the real-world use cases for no reason. People who plan on contributing to a terminal probably have an established routine :smile:

Coverage increased (+7.3%) to 67.75% when pulling 8cf76cc6e93d8a109a59d7315405dca3150e134e on Tyriar-patch-1 into ff29fd69a316c59f55dbec1cc86f00c262b73275 on master.


Memory usage display incorrect

Running on a 1.12 cluster, seeing incorrect output:

These machines are almost maxed out, should be showing ~1-2GB free

The problem is that Docker reports total memory for nodes, not free memory. Workaround is changing labels to make it more clear — #26

Fixed in #26


created API

created an API based on original website work so that you can just pass in a URL at any time and all the work will be done for you.

Thank you very much.
I will add some callbacks into AJAX functions for loading status control on website.

No problem. Your code will help me a lot with creating my github.io pages.
I want my users to be able go to a page dedicated to each folder and be able to download at each step.
This was perfect.
Thank you.
Perfect, let me know how else I can help.
-Ken

On Feb 21, 2016, at 9:07 PM, KinoLien<EMAIL_ADDRESS>wrote:
Thank you very much.
I will add some callbacks into AJAX functions for loading status control on website.
—
Reply to this email directly or view it on GitHub https://github.com/KinoLien/gitzip/pull/2#issuecomment-186969356.


Add minimum input feature

Adds a “minimum input” feature similar to Select2. You can give it a try on the demo page.
I have taken inspiration from both #326 and #336. In contrast, I’ve tried to keep the core changes to a minimum and implemented the feature for all three themes.

@SonicHedgehog -  Hey, you need to squash your commits.
@dimirc - Can you have a look?

Closing as #1291 has been merged.


Beautify The Code

Hello @ravisaxena23, can you explain more on this?

Please Fork New Code and please check for conflicts

sure..what you have to do is beautify the code i.e every tag should be in hierarchy there should be proper spacing in all tags(1 -2 tabs) code should not scroll sideways etc..did you get it??

Thanks @ravisaxena23. I will look into it.


Add donation#search endpoint

Followup to https://github.com/nationbuilder/api_spec/pull/8
Related feature announcement and docs
Example of usage:
client.call(:donations, :search, succeeded_since: Date.parse("1/1/1973"))

@kaip yes - it's just making the new endpoint available.


automate tests with selenium

@pierre Please review.

🏆 This is quite exciting, as it will let us enable automated integration tests in Travis! 🏆

@pierre Please take a look. I cannot test against the elements on the legacy UI. Could you try?
Not sure if the frame is the same in the legacy layout.

I do get errors like:
     Failure/Error: validate_token(form)
     Selenium::WebDriver::Error::NoSuchFrameError:
       Unable to locate frame: injectedUl

even with the new UI:
Finished in 11 minutes 30.88 seconds
22 examples, 7 failures

Could you simply switch to the first frame instead of looking-it up by name?
Might be relevant: http://stackoverflow.com/questions/11866983/unable-to-locate-iframe-in-selenium-webdriverjava

@pierre hmm, looks like should be switched to the second frame driver.switch_to.frame(1). It failed when switching to the first frame driver.switch_to.frame(0).

PR looks good and I'm happy to merge it as-is. Unfortunately, I haven't been able to have a successful run so far. It seems that at some point, the frame cannot be found (I verified the name matched) and the login process fails. Did you experience this at all?

@pierre It happened to me once when the browser opened an old page although I am using the same account. And I tried a couple times after than, it never happens again.


BUG: fix use of keepdims for scipy.stats.ttest_1samp

Reference issue
Closes gh-20725.
What does this implement/fix?
This PR fixes an error raised when using the keepdims argument of scipy.stats.ttest_1samp. The error comes from the _axis_nan_policy_factory decorator that tries to expand the dimensions of all returns from decorator functions. Some of the decorated functions return simple integers that cannot be expanded, thus the error:
https://github.com/scipy/scipy/blob/626bbd18e1cb45afa9648aa8e1eddbc68fa69d0d/scipy/stats/_axis_nan_policy.py#L240-L246
Additional information
test_keepdims originally raised an error when adding stats.ttest_1samp due to a division-by-zero warning. The error is due to some test cases where omitting NaNs leads to samples of size 1, thus the division-by-zero when computing the SEM. To fix this, I set the too_small argument to a callable that checks if the sample to test has at least size 2. I could not simply use too_small=1 however, since it seems popmean is considered a sample (ie., n_samples is set to 2 in the decorator of ttest_1samp).
Adding all other functions from axis_nan_policy_cases raises many more errors that I'll try to check now.

@mdhaber Ok so it seems most errors that occur when running test_keepdims on all axis_nan_policy_cases are due to small sample sizes (occurring for a number of reasons, from samples becoming too small after omitting NaNs, to samples being simply too small or having a degenerate dimension, e.g. with the case sample_shape=(20, 0)). What would you recommend? Should I try to modify test_keepdims parameters in this PR to fit axis_nan_policy_cases?

Maybe leave the existing test alone if it's that strict. Instead, add a new test like it that doesn't generate the problematic cases that are unrelated to the issue of non-expandable scalars. The inconsistent behavior w.r.t. small samples is being fixed separately; when that's resolved, we can probably combine the tests more easily.

This fixes a bug as-is, so I'd like this to make it into 1.14.0.
We just did a major cleanup of warnings/errors for functions with sample sizes <= too_small. We need to do a follow-up of functions that need a different too_small than they have, so I don't want that to hold up or be touched in this issue.
I'll leave gh-20725 open after this so we remember to add other functions to test_keepdims after fixing too_small.


[Feature Request] - Missing dependencies

Summary
When working in a mono repo, you can import packages from the node_modules which are used by other packages within the mono repo, but not listed in the dependency list of the package you are working in. It might be nice to give the user a heads up to include the dependency in their dependency list too.
Example
{
  "name": "package-a",
  "dependencies": {
    "react": "^18"
  }
}

{
  "name": "package-b",
  "dependencies": {
    "react": "^18"
  }
}

{
  "name": "package-c",
  "dependencies": {}
}

As both package a & b use react, the react is installed in the root node_modules, thus allowing it to be imported by package c too. When react is also used in the source code of package c, it should be listed in the dependency or dev dependency list

That's a cool idea, but I'm not sure how we could reliably detect if another package is using a dependency that isn't specified in its own dependencies / devDependencies. At a first glance, we would have to analyze the source code for all packages to detect any import statements, which might be expensive.
Do you have any other idea in mind?

That's a good question, to which I do not have the answer to :(

eslint-plugin-import has a similar rule.

eslint-plugin-import has a similar rule.

Does it work with monorepo's?

Yes, it looks for dependencies in the nearest package.json file. I use it in my monorepo.


[Laravel 5.1.39] Your requirements could not be resolved to an installable set of packages

Hi there!
I'm trying to install the Dingo/api package into a Laravel 5.1.39 project by running:
composer require dingo/api
However after doing so, I get the following error during the installation:

Does anyone know what's going wrong here? Thanks.

See #1060.

Thanks for your reply. Do you suggest using:
composer require drmyersii/dingo-api:v1.0.*
to install dingo/api to a Laravel 5.1 project?

It is available if you would like to use it, but I only plan to maintain until dingo/api and dingo/blueprint get to stable versions. I'm currently working on fixing the mentioned issue about API Blueprint generation, but for API uses, it should work as expected.

The installation succeeded, thanks a lot! Do you recommend also updating the composer.lock file?

@php-it the install should have handled that for you automatically, but feel free to update the lock file as well if it didn't!


Write functions and documentation related to the 'adopted' column

The adopted column in tables like Parallaxes or SpectralTypes is meant to hold a value of 1 for the entry we consider the 'default' with 0 for all other entries. We should document how to update that if a new entry is added that we want to set as the adopted one.

Added some logic to set the adopted column in the ingest_proper_motions function but it should be improved.

We could set up columns to be DEFAULT FALSE with the blocker of not being allowed to be NULL.


IV IS bug

I implemented the IV IS metric a long time ago, and never managed to really evaluate it.
I am not looking into it and it seems there is a bug, which I am now fixing.

It has now independently been verified that GGIR's new IV and IS variables are strongly correlated with IV and IS variables from the R package nparACT


segfault when compiling with swift

I'm trying to integrate cocoaLumberjack with a swift project.
I tried the following in my podfile:
pod 'CocoaLumberjack/Swift', :git => 'https://github.com/CocoaLumberjack/CocoaLumberjack.git', :branch => 'swift_2.0'
pod 'CocoaLumberjack', :git => 'https://github.com/CocoaLumberjack/CocoaLumberjack.git', :branch => 'swift_2.0'
or only:
pod 'CocoaLumberjack', '~>2.0.1'
In the latter case I had to manually added CocoaLumberjack.swift into the pod project.  But in either cases I get a compile error saying:
CompileSwift normal x86_64 ..../Pods/CocoaLumberjack/Classes/CocoaLumberjack.swift
Build/Intermediates/Pods.build/Debug-iphonesimulator/CocoaLumberjack.build/unextended-module.modulemap:7:5: error: expected umbrella, header, submodule, or module export
textual header "DDLogMacros.h"
Command failed due to signal: Segmentation fault: 11
Any ideas?

I think i figured out the problem.  I need xCode 7 for this to work.
For xcode 6.3 I should use the branch "swift_support" ?

For 6.3 you should use the master branch. swift_support was old and already merged so I just deleted it now.


update vdc user access in install function

What this PR resolves:
Reflecting user access right of the blueprint in the env during the install action
Related to https://github.com/Jumpscale/ays9/issues/88

@alichaddad codeclimate points out that there's code duplication, which is a good point. How about we refactor into a helper function?


update ICML 2023 Deadline: Off by one hour

I belive the deadline should be 11:59 and not 1pm.
From the icml website:
Full Paper Submission Deadline	Jan 26 '23 07:59 PM UTC

Thanks for the fix!


Not getting BIRTH message into the  SparkplugNet.Examples  when a new publisher comes up on the broker

Hi SeepPenner.
I'm using the SparkPlugNet samples and running RunVersionB()  function.
Application class is able to receive the BIRTH messages from RunVersionBNode() for group1 and device 1.
On the same broker address I have another publisher publishing data at Group Name : "Group" and NodeName: "EdgeGateway" and devideName : "device_0"
When this publisher goes down Application class is able to receive the DEATH messages.
But when this publisher comes up application is NOT able to receive the BIRTH messages.
Could you please let me know if any changes need to be done inside the RunVersionBApplication() OR in RunVersionBNode().
I verified that the topic it is subscribing to is spBv1.0/#  , but birth messages from another publisher is not able to detect.
Whereas MQTT.fx application is able to detect the BIRTH messages from the broker address.
I'm submitting this as an issue as I  do not see a discussion board here , please don't for this.
Thanks in Advance
Venkat

Sounds strange, I need to investigate. Maybe a callback from MqttNet is not triggered properly...

I'm having a similar problem with my spBv1.0 application, which will include both Node and Application components. My application gets death messages, but never gets birth or data messages.  However, using debug logging on my broker shows that all the missed messages are delivered if I restart my application (but before the app is ready to receive messages, it seems).    Third party applications like MQTT Explorer or MQTT.fx get all the messages in realtime.
I'm guessing that the problem is QoS: the SparkplugNet subscriptions are with QoS 1, but are never acked explicitly.  I don't know if MQTTNet defaults autoack to true, but if not, that would explain my problem.  I haven't tried implementing that in your code yet, but I figured I'd drop this note in case you get to it before I do.  If I find success with this approach, I'll send a PR.

Just a followup to my own comment in case anyone else hits similar issues: it doesn't look lke QoS is my issue.  Instead, it looks like metric storage is throwing an exception since the devices are publishing metrics that haven't yet been seen.  My application can't know all possible metrics ahead of time (it connects to unknown devices to allow users to select and log metrics), so I'm going to move towards building a mechanism to request a rebirth in this scenario, and allow "learning" metrics from birth messages.

So, this seems to be the same issue as https://github.com/SeppPenner/SparkplugNet/issues/43. The problem is that this is currently by design in version 2.2: https://github.com/SeppPenner/SparkplugNet/issues/6#issuecomment-1044441756. I will check version 3 compatibility today or tomorrow and check if some changes have been done there. Until then follow https://github.com/SeppPenner/SparkplugNet/issues/43 for updates.


Develop

Review Django Rest framework built Api.

Changes Unknown when pulling 94bacd4abde2cd3dabd6091a67b3a6474de52a05 on develop into ** on master**.

Changes Unknown when pulling 4fdd122cbace303a125b1fae40aeb3fe878a1540 on develop into ** on master**.


Add cacheKeyFilter to allow user provide modified version of data when storing the disk cache in SDWebImageManager

New Pull Request Checklist

[x] I have read and understood the CONTRIBUTING guide

[x] I have read the Documentation

[x] I have searched for a similar pull request in the project and found none

[x] I have updated this branch with the latest master to avoid conflicts (via merge from master or rebase)

[x] I have added the required tests to prove the fix/feature I am adding

[x] I have updated the documentation (if necessary)

[x] I have run the tests and they pass

[x] I have run the lint and it passes (pod lib lint)

This merge request fixes / reffers to the following issues: #2127 #2236 #2227
Pull Request Description
Reason
Many user facing the performance of WebP decoding. Since Apple does not adopt WebP images in Apple's framework(UIKit, Image/IO), we use libwebp from Google to do WebP decoding. For the same image, WebP decoding spend 5x time slower than JPEG images. And it's also time-consuming when decoding Animated WebP.
Design
So, some user argue to store the encoded image into disk cache instead of the original data from the server. Since we previously adopt the behavior to store the original data, this property is optional. Default to store the original data.
Since some user may decide to encode the image to another data, which is also time-consuming. The cache serializer block is dispatch on a global queue to avoid blocking main queue.
Implementation
The block should look like this, to allow user get the right context(Throguh imageURL arg) and the source data and image.
typedef NSData * _Nullable(^SDWebImageCacheSerializerBlock)(UIImage * _Nonnull image, NSData * _Nullable data, NSURL * _Nullable imageURL);

Codecov Report

Merging #2245 into master will increase coverage by 0.06%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2245      +/-   ##
==========================================
+ Coverage    78.5%   78.56%   +0.06%
==========================================
  Files          36       36
  Lines        3735     3746      +11
  Branches      344      340       -4
==========================================
+ Hits         2932     2943      +11
  Misses        780      780
  Partials       23       23

Impacted Files
Coverage Δ

SDWebImage/SDWebImageManager.m
83.33% <100%> (+0.94%)
:arrow_up:

Continue to review full report at Codecov.

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

@dreampiggy how does this affect performance?

@mythodeia The default value is nil, means there is no different with current performance.
If you decide to provide a modified data instead of the original server data, this block is dipatched on global queue. In general, WebP decoding time is 5x slower than Apple's JPEG decoding time. So this can decrease the querying disk cache time.

Good job @dreampiggy

...So..? Could you please tell me why you do this
encode the image which is already decoded from WebP into WebP format ?
If you need to convert WebP data into another format like JPEG, you should use image imageAsFormat:SDImageFormatJPEG. Isn't it ?

I don't understand how to solve the slow loading of webp images from disk.

@YasinZhou See here about the demo usage.
This feature is introduced since WebP encoding/decoding is slower than JPEG/PNG images. So if the original image data from network is WebP. You can consider to provide another data for this image. Which means you can encode the WebP image into JPEG data. After that the disk cache image data is JPEG format. You don't need to decode WebP again. Just decode JPEG format, which is fater.
But however, you should know that convert from different image type may lose quanlity, for example, JPEG does not support alpha channel, but WebP does. So you'd better to check it before encoding to JPEG/PNG. Another way, it's pass nil to let SDImageCache do this.

OK, I see! Thank you very much.


[APPM-865] Anonymous Tenant user's can't view apps with default visibility

Since it is not possible to load a tenant store, anonymous tenant users can't view applications with default visibility.Reference: https://wso2.org/jira/browse/APPM-865

App manager component is being rewritten for IoT server, and this will be addressed there. Hence closing the issue.