[DRAFT] PLIP #5629: Enhance timezone support in UI for plone.app.event based types

[DRAFT] PLIP #TBD: Enhance timezone support in UI for plone.app.event based types

Responsible Persons

Steve Piercy @stevepiercy
Add your name and GitHub username

Proposer: Steve Piercy @stevepiercy
Seconder: Johannes Raggam @thet
Abstract
Event content types, or events, have incomplete implementations and sometimes slightly different implementations between the two Plone frontends, Classic UI and Volto. This PLIP proposes to improve the implementations to be more complete and consistent.
In Volto, the event content type does not display a timezone. When visitors are located or travel across multiple time zones, they cannot determine whether the event's time zone is their own local one, the site's default, the author's setting, or the event's location's. This is particularly confusing when an event has online participation, or when participants travel across time zones. In sites that serve its visitors in only one time zone, this is not an issue.
In Classic UI, the event contact type displays only those timezones that have been made available by the Site Administrator.
The history of event content types is in the plone.app.event package. However it was implemented using pytz whereas the standard library zoneinfo and datetime with an optional third-party package tzdata are now recommended for Python 3.9 and later. From the pytz readme:

Projects using Python 3.9 or later should be using the support now included as part of the standard library, and third party packages work with it such as tzdata. pytz offers no advantages beyond backwards compatibility with code written for earlier versions of Python.

Plone 6.0 supports Python 3.8-3.11. Python support for Plone 6.1 and later is unknown at this time. When Python 3.8 support is dropped, we can use the standard library and tzdata instead. Plone 6.2 is expected to be released between October and December 2024, and Python 3.8's end of life is October 2024. It is unknown at this time whether Plone 6.2 will retain Python 3.8 support. Plone 7.0 is tentatively scheduled for release between April and June 2025, at which time Python 3.8 support would definitely be dropped. See Plone Release Schedule.
See also PEP 615 – Support for the IANA Time Zone Database in the Standard Library and Talk - Benjamin "Zags" Zagorsky: Handling Timezones in Python.
Several other related minor issues may be addressed as part of this PLIP.
Motivation
Everyone wants to have a good time with a date. 😉
tzdata is preferred over pytz since Python 3.9.
International audiences expect events to be held at a given date and time with a timezone designation. Consistency between the two frontends makes it easier to transition when upgrading Plone or migrating to Volto.
The following issues relate to the event content type, date, time, and timezone implementations.

Cannot set events with a user preferred time zone:

[ ] Volto #5324
[ ] plone.org #141

[ ] Events do not display a timezone plone.org #151
Event Content Type Overhaul Volto #5551

[ ] When selecting a start datetime, the end datetime should be after the start datetime.
[ ] The end date should be optional to allow infinite event recurrence.

Fixed utc problems in RecurrenceWidget

[ ] Volto #5002
[ ] Volto #5555

Scroll down option for selecting months and years volto #5662
Listing block shows wrong ending date for events when whole_day is clicked volto #5717
Wrong Time displayed in DateTimeWidget volto #2597

Possibly solved by plone.restapi #1192

Assumptions

Timezone support. Every event has a timezone. Do not support naive datetimes, that is, a datetime without a timezone.

Proposal and Implementation
This PLIP is targeted for Plone 6.2 or 7.0, whichever version drops support for Python 3.8 first.
In Classic UI, inputs for events should continue to use the Patterns Lib datetime picker with an HTML5 datetime-local input as fallback, which in turn falls back to an input type of text.
In Classic UI, evaluate dependencies of plone.app.event to determine whether they should be kept or replaced.
In Volto, decide whether to continue to use its datetime widget—which consists of two text inputs, one each for the date and the time—or use a different implementation. The current implementation requires either keyboard input or an excessive number of clicks to select a specific month or year that is distant from the default. From https://github.com/plone/volto/issues/2392#issuecomment-2136547074, there is a plan to move to React Aria, and we could use its calendar component with a styled calendar input with month and year selectors.
In addition to the resolution of the above issues, the following items would be addressed.

[ ] Add <date> and <time> HTML markup for date and time values when displayed.
[ ] Ensure that Publish and Expiration Dates have times.
[ ] Upgrade steps need to be considered for all objects that have a date or time.
[ ] Volto detects the timezone of the user's browser and attempts to display dates for that local timezone. This may interfere with setting and displaying the correct time for an event content type. Ideally browser detection shenanigans would be dropped, and the display would rely upon the value stored in the backend and show the event's timezone. This implementation would remove all ambiguity over when the event occurs.
[ ] The user and site preferences would be fallbacks, when no timezone is selected when creating an event. In other words, timezone order of preference would be: Event > User > Site.
[ ] Add support for anywhere on earth (AoE) as a date. The event would be saved with a start datetime of yyyy-mm-dd 00:00:00 UTC+14 and an end datetime of the next day plus 2 hours less 1 second (yyyy-mm-dd +1d 01:59:59 UTC+14) because there is an overlap of two hours in the Pacific Ocean where the timezone UTC-12 is observed. That's right, there are 50 hours in a day. 🤯 See Time Zone Map and Time Zone Converter.
Event: "whole day" and "open end" have no effect Volto #3243

[ ] Whole day events. When a user enters a date, they may check a box to make it an whole day event so that they do not have to enter a start and end time, although the system will save the event with the start time of 00:00:00 and end time of 23:59:59.
[ ] Open end events. When a user enters a date, they may check a box to make it an open end event, so that they do not have to enter an end date or time.

Exclusions
There are other issues that do not involve the event content type, but are related to date, time, and timezone issues. These issues are not part of this PLIP, but are mentioned to make it clear that they are out of scope.

[ ] Handle timezone in publication fields (effective and expires) plone.restapi #1192
[ ] Date widget does not account for timezone difference volto-form-block #76

Deliverables
All the above issues with a checkbox, as well as the following items.

[ ] Design document
[x] Plone REST API needs to return a timezone in its event endpoint for the start and end attributes. See: https://6.docs.plone.org/plone.restapi/docs/source/endpoints/content-types.html#event
[ ] Migration of plone.app.event documentation from Plone 5 to Plone 6.
[ ] Documentation of upgrade steps.

Project board
https://github.com/orgs/plone/projects/43/views/1
Risks
Switching from pytz to the Python 3.9 or greater standard library and tzdata may cause compatibility issues.
It is unknown which version of Plone will drop support of Python 3.8 when it goes end of life in October 2024.
Dependencies of plone.app.event might need to be upgraded or replaced.
Returning a datetime with a timezone might cause issues in Volto, plone.restapi, and plone.app.event.
Removing detection of the browser's timezone in Volto may break entry and display of dates.
Participants

Steve Piercy, @stevepiercy, Lead Cat Herder
Johannes Raggam, @thet, contributor
Giulia Ghisini, @giuliaghisini, contributor
Timo Stollenwerk, @tisto, reporter
Ishaan Dasgupta, @IshaanDasgupta, contributor
Your name, GitHub username, Role

@IshaanDasgupta thanks for the feedback. However I think the IEventBasic schema does in fact include a timezone for both start and end attributes. Can you verify?
https://github.com/plone/plone.app.event/blob/69e6c1c3afdb0413dfe63a758f56c015ec070ded/plone/app/event/dx/behaviors.py#L63-L80
The Plone REST API does not return the timezone information for the event start and end attributes, according to this example.

Yes, the IEventBasic does have the timezone of the event stored internally but, when return HTTP response in plone.restapi, this timezone info is lost during the conversion of the date to UTC by datetimelike_to_iso function
And as this is a generalised function, modifying it would make all the dates to be returned with their original timezone which would cause problems as in volto, we are using moment and it does not directly take the timezone into account. So, all the datetimes would suddenly change by some amount.

If we decide that this PLIP will be released in Plone 7.0, then it is OK to break stuff.
It is up for discussion whether Moment.js is harmful or beneficial. I would like to get more opinions.
Moment.js with timezone is an option. However, I am wary of duplicating what already comes with the Plone backend. What does Moment.js add? Was this a case of frontend developers not understanding what the backed does? That's not a rhetorical question, I really don't know. Why is it used? The Volto Release Notes don't explain why it is used.

Sir @stevepiercy I have divided this solution into 2 phases, as while searching for the what's better, I came across that these two phases will sum up my thoughts on this.
Phase 1: Laying the groundwork for consistent time zone handling (ing!)
Goal: Establishing a strong foundation for accurate and user-friendly time zone management in Plone events.
Key Initiatives:
Standardizing on tzdata: Migrating from pytz to tzdata for future-proof compatibility with newer Python versions and leveraging the latest time zone data.
Defining a timezone hierarchy: Establishing a clear order of precedence for event time zones: Event > User > Site. Ensuring user control while maintaining consistency.
Upgrading time zone pickers: Updating both Classic UI and Volto's datetime pickers to seamlessly support time zone selection and display. Eliminating reliance on browser detection to avoid confusion and ensuring accurate event times based on stored data.
Developing clear time zone display: Implementing clear and consistent display of the event's specific time zone, regardless of the user's location or browser settings. Users should always be readily understanding the event's timing context.
Phase 2: Refining the user experience and integration (ing!)
Goal: Enhancing the user experience and seamlessly integrating the new time zone management system across all aspects of Plone.
Key Initiatives:
Adjusting the REST API: Modifying the REST API to consistently returning event data with accurate time zone information. Considering adding a separate "timezone" attribute for flexible access and manipulation.
Evaluating Moment.js: Thoroughly assessing the necessity of Moment.js in light of the updated time zone handling system. Determining if its functionality can be replacing by native libraries to simplify the codebase and reduce potential dependencies.
Creating upgrade steps and testing: Developing comprehensive upgrade instructions for migrating existing content to the new system with minimal disruption. Conducting thorough testing across all frontends and Plone versions to ensure smooth transition and avoid regressions.
Communicating and educating: Keeping users informed about upcoming modifications and upgrade requirements. Providing clear and easily accessible educational resources explaining the new time zone handling system and its benefits.

@07tAnYa this PLIP is a proposal. It is not a GSoC idea. Your comment is totally unnecessary and consists entirely of GSoC proposal "word salad". I deleted your comment.
Also I am not a "sir". If anything, you may call me "Lead Cat Herder".

Since plone backend uses no technology for storing dates and times without specific timezone information. So here, moment.js can be used a bridge between backend n frontend for fetching user timezone,  converting meeting time and updating notification content.
And specifically speaking about the issue which I rose ,  it was for the better UX( a simple scroll for years and months)

Sorry lead as I am still learning, so I thought writing whatever I can do
with that I should write it.
Lead (if I can call you this) in the documentation repo, I cannot run the
command make clean or make html.  What do you think? Where is the issue?
On Sat, Jan 20, 2024, 00:54 Steve Piercy @.***> wrote:

@07tAnYa https://github.com/07tAnYa this PLIP is a proposal. It is
not a GSoC idea. Your comment is totally unnecessary and consists entirely
of GSoC proposal "word salad". I deleted your comment.
Also I am not a "sir". If anything, you may call me "Lead Cat Herder".
—
Reply to this email directly, view it on GitHub
https://github.com/plone/volto/issues/5629#issuecomment-1900981517, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/BBN43VNU5TL7BYOSE6AO6NTYPLB7RAVCNFSM6AAAAABB4NGH6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBQHE4DCNJRG4
.
You are receiving this because you were mentioned.Message ID:
@.***>

here, moment.js can be used a bridge between backend n frontend for fetching user timezone, converting meeting time and updating notification content.

I would strongly encourage anyone in support of moment.js to read its Project Status. The arguments against its use are compelling, and its addition I don't think is needed or wanted. An important factor is saving 30Kb, especially where Internet speeds are slow.

Sorry lead as I am still learning, so I thought writing whatever I can do with that I should write it. Lead (if I can call you this)

My self-appointed official title is Lead Cat Herder, but you don't need to call me by any formal title.

in the documentation repo, I cannot run the command make clean or make html. What do you think? Where is the issue?

For support, post your question to https://community.plone.org/. When posting to the Plone Community Forum, you must give sufficient information for others to reproduce and identify the cause of your issue. Help us to help you.

What do you expect to happen?
What steps did you take? Include the terminal session commands you issued and a link to the documentation you followed.
What did you observe? Include complete tracebacks and error messages as text, surrounded by triple backticks (```).

@stevepiercy How does GitHub manage its timezone?

@stevepiercy How does GitHub manage its timezone?

I have no idea. You could ask them.
However, whatever GitHub does has no bearing on what we do. GitHub and Plone are not comparable. GitHub requires user accounts with a user set timezone to use its service. Plone websites tend to be public and don't have that advantage.

@stevepiercy How does GitHub manage its timezone?

I have no idea. You could ask them.
However, whatever GitHub does has no bearing on what we do. GitHub and Plone are not comparable. GitHub requires user accounts with a user set timezone to use its service. Plone websites tend to be public and don't have that advantage.

Okay

From a discussion in the Community Forum:

It has not yet been decided or discussed how to display [a datetime] to the end user, other than include a timezone. I imagine that a localized datetime with timezone would be preferred, and Python has great support for formatting dates. A preferred format could be configured in the Date and Time Settings control panel with an arbitrary format code.

Yes I agree too that localised timings would be beneficial. And python can
be used for this purpose , by this space can also be optimised. I have
personally worked with this, it is good.
@stevepiercy is your email linked to the GitHub, as I messaged you in email
and you deleted the comment from GitHub.
On Tue, Jan 23, 2024, 02:38 Steve Piercy @.***> wrote:

From a discussion in the Community Forum
https://community.plone.org/t/issue-in-running-a-command/18598/19?u=stevepiercy
:
It has not yet been decided or discussed how to display [a datetime] to
the end user, other than include a timezone. I imagine that a localized
datetime with timezone would be preferred, and Python has great support
for formatting dates
https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes.
A preferred format could be configured in the Date and Time Settings
control panel https://classic.demo.plone.org/@@dateandtime-controlpanel
with an arbitrary format code.
—
Reply to this email directly, view it on GitHub
https://github.com/plone/volto/issues/5629#issuecomment-1904819202, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/BBN43VNUVUXU5ANAHAG5Y5DYP3IL7AVCNFSM6AAAAABB4NGH6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBUHAYTSMRQGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

@stevepiercy I think that this PLIP has to be thought globally on the context of whole Plone itself, analyzing how the data is saved in Plone and then how it is exposed through the REST API and then how it is shown in Volto and also a Classic UI.
When the PLIP draft is finalized I would move it to the

Sorry for the noise, I clicked the wrong button

@sneridagh would you please move this item on the Volto Roadmap from Done to uh... Not Done? I reverted the other project board automatic updates.

@erral I thought I captured your general concerns in this PLIP. If not, please let me know what I can do to revise the PLIP accordingly.
FYI, I've already had discussions with Classic UI and Volto Teams. There will be many more planning discussions, including at upcoming sprints even if remotely, over the next several months.

@stevepiercy I know that there are also issues with effective and expiration dates, you link them in the explanation above, but I think that the timezone issue and handling changes should also be extended to those fields and I would even say that also to internal created and modified dates.
I think that having timezone aware and not aware datetimes would be even a bigger nightmare.
Anyway, no matter we finally include them in other datetime fields, a big +1 to the PLIP.

As discussed in the Plone Steering Circle today, we will drop Python 3.8 and 3.9 support in Plone 6.1.  Alpha 2 still officially supports them, but we will drop them in the next alpha.  So from that point of view it will be fine to start using the tzdata and timezone modules instead of pytz.
(I don't know much about timezone support, so I don't have a good feeling for how much of a breaking change this would be.)

This is an issue that discusses transition from pytz to zoneinfo in icalendar: https://github.com/collective/icalendar/issues/609. @stevepiercy referred here in https://github.com/collective/icalendar/discussions/360#discussioncomment-9068621

Per a discussion with @jensens on the design document, we came up with a more concise and precise name of this PLIP: "Enhance timezone support in UI for plone.app.event based types".

icalendar's zoneinfo support (https://github.com/collective/icalendar/issues/609) has progressed. If you would like to review the PR: https://github.com/collective/icalendar/pull/623

This is how I let the user choose the timezone in the UI if the OpenWebCalendar:

(I do not know if that is in any way useful for this PLIP.)

This is how I let the user choose the timezone in the UI if the OpenWebCalendar:

Indeed it is useful. @thet and I discussed that one issue with plain old select menus is the huge number of options for timezones. A typeahead select would be an improvement upon this, both for Volto and Classic UI via mockup.

I will watch what you are doing and it might be worth creating a separate library for this so it can be shared. When I was using the timezone choice in Etar (Android) I could not find my timezone. They just all had names like "British Summer Time" and so on. It would be cool to have one place that maps cities, timezone names, countries, GPS, ... and everything we can think of to timezones in a localized fashion. That could just be a set of JSON files that then can be exported into JS and Python modules and can be very useful also for Etar and other FOSS applications, with localization.
I will be watching what you do but I also think, we can do an excellent job and set a new standard ahead of others.

For what is worth I support this PLIP. It is an incredibly complex topic. Maybe we need a dedicated sprint to bring people together to being able to move on.

I intend to finalize the draft PLIP, its design document, and its own project board. We're about 80% done with the planning phase after Axolotl Sprint and Buschenschanksprint.


Change hkdCommitteeMaxTermLengthL to use EpochInterval

In #3876 we adjusted a few protocol parameters to use EpochInterval. We forgot about one protocol parameter that also should use that type, namely committeeMaxTermLength

Fixed in #3947


Propose a mechanism to enable sysext builds in the OS image build process

The OS image we currently produce is unsuitable as a base for building Flatcar specific sysext images: it lacks package information and portage configuration. During the image build process our low-level build automation removes this information from the OS image to keep it lean.
In order to build sysext images suitable for running on a specific OS release, the image build needs to be extended to produce artifacts retaining this information.
Part of the work is already in progress here: https://github.com/flatcar/scripts/pull/858
This issue builds on that work with the aim to make it more generally usable for all future Flatcar / version specific sysext builds.

@krishjainx wanted to look into this.

Not until the build process produces docker/containerd sysexts that work.

Good point, @jepio .
PR was merged and will be in Alpha-3654  (https://github.com/flatcar/scripts/pull/920).
Also, we're using build_sysext now to build the OEM sysexts (https://github.com/flatcar/scripts/pull/969).

The script is now used for both the OEMs as well as the inbuilt Docker+containerd sysext images.


Separating the notions of Agent and Client

Separating the previous notion of Agent into Agent (as a managed entity) and Client (as an endpoint of OpAMP).

Thanks @tigrannajaryan for reviewing.
I tried to be careful with the changes, but it is a long document, and I might have missed some places. Yes, I looked carefully at the Packages section, and I thought all was good there.
I'll have a small update soon.

Thank you for this :+1: I recently found myself stumbling over words when explaining how OpAMP works with/within the OT Agent :sweat_smile:

Thank you for this 👍 I recently found myself stumbling over words when explaining how OpAMP works with/within the OT Agent 😅

@portertech do you think the changes introduced by this PR make it clearer?

@andykellr @portertech I wonder what you guys think about this change. As the author of the current text I am probably biased towards the usage of "Agent" everywhere, so I may not be the best person to tell if this change makes the spec more clear (I think it definitely does in some places, but I am worried that overall it may result in some confusion because of using 2 different concepts).
It would be great to know your opinion.

Thank you @andykellr for the review. I agree with yours and @tigrannajaryan suggestions. I'll make the corrections next week.

@andykellr I will keep this open for you to also review.

Merged. Thanks @PeterF778 !


API missing filtering options and pagination

Firstly, great project!
Secondly, for me to use it, I'd need the API to be more robust and allow for filtering. Do you think it's too late for breaking changes? I'd like to rewrite the whole API section to follow CRUD and allow for an easier developer experience both in the implementation as well as usage.
As an example, I'd like to add pagination (probably cursor), filters and endpoints for specific subqueries.

Figured maybe a better explanation is needed.
So for example, when querying time entries, instead of /api/time-entries/list returning everything, to get the same result, but paginated and only for a single customer, you would make a request like this /api/time-entries?include=client,project,user,work_type&filter[client_id]=1
/api/time-entries?include=project,user,work_type&filter[client_id]=1&perPage=1 would result in the following:
 {
  "success":{
    "data":[
      {
        "id":51,
        "client_id":1,
        "project_id":1,
        "user_id":1,
        "work_type_id":1,
        "start":"2024-09-02T20:50:01.000000Z",
        "end":"2024-09-02T23:50:01.000000Z",
        "description":"Temporibus facilis enim eligendi quasi iusto placeat temporibus.",
        "link":"http:\/\/www.gerhold.com\/at-rerum-magnam-possimus-ullam-et-et-cum-ducimus",
        "billable":1,
        "created_at":"2024-09-02T21:55:26.000000Z",
        "updated_at":"2024-09-02T21:55:26.000000Z",
        "hourly_duration":"03:00"
      }
    ],
    "path":"http:\/\/clockfork.test\/api\/time-entries\/list",
    "per_page":1,
    "next_cursor":"eyJjcmVhdGVkX2F0IjoiMjAyNC0wOS0wMiAyMTo1NToyNiIsIl9wb2ludHNUb05leHRJdGVtcyI6dHJ1ZX0",
    "next_page_url":"http:\/\/clockfork.test\/api\/time-entries\/list?cursor=eyJjcmVhdGVkX2F0IjoiMjAyNC0wOS0wMiAyMTo1NToyNiIsIl9wb2ludHNUb05leHRJdGVtcyI6dHJ1ZX0",
    "prev_cursor":null,
    "prev_page_url":null
  }
}

It's never too late 😉 I mention that this section is WIP on the site as I only developed it as a proof of concept so far (I did build the nativephp pendant of the web app as a POC). So it's definitely on my list to refactor it (I doubt that many people will jump on the API first).
That being said, I would love people to contribute! So feel free if you'd like to.
I would definitely think about following the CRUD structure, about adding pagination and about making error handling a bit more robust/detailed.


Explicit public invitations

... note that this addresses https://github.com/hyperledger/aries-cloudagent-python/issues/944

OK, fixes incoming


Use the new NoContractsFromMethod

Depends on https://github.com/eisop/checker-framework/pull/878
Also tests whether the EISOP CI picks up this corresponding branch in the reference checker.

EISOP CI build correctly picks up this branch and is successful.
I'll merge the two PRs together once they're approved.

In CI I notice this failure:
FAILURE: Build failed with an exception.

* What went wrong:
Circular dependency between the following tasks:
:jspecify:classes
\--- :jspecify:compileJava
     \--- :jspecify:jar
          +--- :jspecify:classes (*)
          +--- :jspecify:compileJava (*)
          +--- :jspecify:compileJava9Java
          |    \--- :jspecify:jar (*)
          \--- :jspecify:java9Classes
               \--- :jspecify:compileJava9Java (*)

(*) - details omitted (listed previously)

The same problem can be reproduced with main, meaning it doesn't depend on this PR and doesn't depend on changes in EISOP.
I can reproduce it with jspecify-reference-checker in the main branch using an --include-build ../jspecify configuration.
However, I didn't figure out how to trigger the circular dependency directly in the jspecify build.
When I go into jspecify and execute git checkout 0394cfed29ae86d75ad327dc9df9697e0b9b90a6, that is, if I use the state before https://github.com/jspecify/jspecify/pull/605, the build of the reference checker succeeds.
So something about https://github.com/jspecify/jspecify/pull/605 is breaking the build of the reference checker.
@cpovirk Any idea?

I'll merge this PR to make main-eisop compile against the updated EISOP. I'll turn the previous comment into a new issue.


Use http-range-client crate

https://crates.io/crates/http-range-client

Am I correct that this is strictly an extraction of the existing logic into a new crate?  Or were there changes in the new crate vs. when it was internal?

Yes, it's exactly the same logic. The only difference of the crate is, that it's prepared for supporting other HTTP clients via feature flags. The reason for extracting http-range-client was to enable reuse for other cloud optimized formats like 3D tiles, COG or COPC.


mark functions with cpu features and sse42 flag fix

Fixes #20
Fixes #60
(such nice numbers)

Oops, I think you put sse3 on the sse2 content.


error when installing AZURE ML training model piece

I was getting an error when azuremllogonscript.ps1 was running and trying to use grep in one line, but it could not find grep anywhere. So, I installed grep via chocolatey, and now the script goes further to line 267,and gives me the error below.
grep executes but now the error says "Dataset with name 'mnist_opendataset' is not found".
Any help troubleshooting this error will be appreciated, I am trying to demo this to a customer. next week.
TEXT of the OUTPUT when error is encountered:
Installing amlarc-compute K8s extension was successful.
Warning: Falling back to use azure cli login credentials.
If you run your code in unattended mode, i.e., where you can't give a user input, then we recommend to use ServicePrincipalAuthentication or MsiAuthentication.
Please refer to aka.ms/aml-notebook-auth for different authentication mechanisms in azureml-sdk.
Library configuration succeeded
Warning: Falling back to use azure cli login credentials.
If you run your code in unattended mode, i.e., where you can't give a user input, then we recommend to use ServicePrincipalAuthentication or MsiAuthentication.
Please refer to aka.ms/aml-notebook-auth for different authentication mechanisms in azureml-sdk.
Class KubernetesCompute: This is an experimental class, and may change at any time. Please see https://aka.ms/azuremlexperimental for more information.
Class KubernetesCompute: This is an experimental class, and may change at any time. Please see https://aka.ms/azuremlexperimental for more information.
found compute target: ARC-ml
"
Training model:
        .....                                             .....
     .........                                           .........
    .........                 (((((((((##                 .........
   .....                      (((((((####                      .....
  ......                      #((########                      ......
 ....... .............        ###########        ............. .......
 ......................       ###########       ......................
.................*.....       ###########       ....,*.................
.........*******......       (((((((((((         ......*******.........
     ............          (((((((((((     (.         ............
                        .(((((((((((     (((((/
                      ((((((((((((     #(((((((##
                    ////(((((((*     ##############
                  //////(((((.         ,#############.
               ,**///////((               #############/
                *////////&%%%%%%%%%%%%%%%%%%%##########
                ///////&&&%&%%%%%%%%%%%%%%%&%&&#######(
                 ////&&&&&&&%%%%%%%%%%%%%&&&&&&&&%####
                 .(&&&&&&&&&&&&&&%%%%%%&&&&&&&&&&&&&#.

"
Warning: Falling back to use azure cli login credentials.
If you run your code in unattended mode, i.e., where you can't give a user input, then we recommend to use ServicePrincipalAuthentication or MsiAuthentication.
Please refer to aka.ms/aml-notebook-auth for different authentication mechanisms in azureml-sdk.
WARNING: Command group 'ml job' is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus
Uploading src:   0%|                                                                                | 0.00/3.08k [00:00<?, ?B/s]
ERROR: Code: UserError
Message: Dataset with name 'mnist_opendataset' is not found.
You cannot call a method on a null-valued expression.
At C:\Temp\AzureMLLogonScript.ps1:267 char:4
+    $RunId = ($Job | grep '"name":').Split('"')[3]
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
RunId:
Training model, hold tight...
ERROR: argument --name/-n: expected one argument_****
TRY THIS:
az ml job show --name my-job-id --query "{Name:name,Jobstatus:status}" --output table --resource-group my-resource-group --workspace-name my-workspace
Show the status of a job using --query argument to execute a JMESPath query on the results of commands.
https://aka.ms/cli_ref
Read more about the command in reference docs
Job Status:
ERROR: argument --name/-n: expected one argument
TRY THIS:
az ml job show --name my-job-id --query "{Name:name,Jobstatus:status}" --output table --resource-group my-resource-group --workspace-name my-workspace
Show the status of a job using --query argument to execute a JMESPath query on the results of commands.
https://aka.ms/cli_ref
Read more about the command in reference docs
Job Status:
ERROR: argument --name/-n: expected one argument
TRY THIS:
az ml job show --name my-job-id --query "{Name:name,Jobstatus:status}" --output table --resource-group my-resource-group --workspace-name my-workspace
Show the status of a job using --query argument to execute a JMESPath query on the results of commands.

Hi @arturoqu77 - thanks for reaching out. We tried to repro this issue but couldn't.
This line of code leverages grep to parse the file name. grep should have been installed as part of the bootstrap. If  grep wasn't installed, this implies something must have interrupted the install before it got there.
Did you by any chance RDP into the VM before the Deployment was fully finished? That would cause the chocolatey install flow to break - which would also explain why the Training above isn't working.
Are you seeing Postman installed - this happens after grep? If not, this is probably what happened.
Could you try the deployment in a new RG, but this time ensuring you RDP in once ARM returns success (and the Bootstrap script is successful in running - you can see this in the ARM deployment status from the RG)? If you can't repro this issue once more, we can eliminate the above.

Hello,
Thank you for your reply. I may have logged on before the bootstrap completed, I re-started the deployment to a new RG and seems to be working now.
Thanks for the help.
Regards
@.***
Arturo Quiroga
Sr. Cloud Solutions Architect (CSA)
Azure Applications & Infrastructure
<EMAIL_ADDRESS>[MSFT_logo_Gray DE sized SIG1.png]
From: Raki @.>
Date: Tuesday, September 14, 2021 at 6:22 PM
To: microsoft/azure_arc @.>
Cc: Arturo Quiroga @.>, Mention @.>
Subject: Re: [microsoft/azure_arc] error when installing AZURE ML training model piece (#758)
Hi @arturoqu77https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Farturoqu77&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666347896|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=r1kAuKxYlYhONjoSTk83SERggUvNcbP1Hr4vmNh29io%3D&reserved=0 - thanks for reaching out. We tried to repro this issue but couldn't.
This line of codehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fazure_arc%2Fblob%2Fa322f4915a72f860779e4d92d7d111848883a344%2Fazure_arc_ml_jumpstart%2Faks%2Farm_template%2Fartifacts%2FAzureMLLogonScript.ps1%23L266&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666357889|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=oAjL%2BfBBF4QXfnwN9gcM9UqEB4OA0ZZrzMuKilatz5A%3D&reserved=0 leverages grep to parse the file name. grep should have been installed as part of the bootstraphttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fazure_arc%2Fblob%2Fa322f4915a72f860779e4d92d7d111848883a344%2Fazure_arc_ml_jumpstart%2Faks%2Farm_template%2Fartifacts%2FBootstrap.ps1%23L73&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666357889|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=V8dzJxj3W5a6IL8T%2BvB0mijBm5Ng4G46bb%2Fcdo2uvz4%3D&reserved=0. If grep wasn't installed, this implies something must have interrupted the install before it got there.
Did you by any chance RDP into the VM before the Deployment was fully finished? That would cause the chocolatey install flow to break - which would also explain why the Training above isn't working.
Are you seeing Postman installed - this happens after grephttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fazure_arc%2Fblob%2Fa322f4915a72f860779e4d92d7d111848883a344%2Fazure_arc_ml_jumpstart%2Faks%2Farm_template%2Fartifacts%2FBootstrap.ps1%23L73&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666367883|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=XvpeFo2T7Kjr4qrIZYKO7eM0khlOddES9O3DGaw1yZ4%3D&reserved=0? If not, this is probably what happened.
Could you try the deployment in a new RG, but this time ensuring you RDP in once ARM returns success (and the Bootstrap script is successful in running - you can see this in the ARM deployment status from the RG)? If you can't repro this issue once more, we can eliminate the above.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fazure_arc%2Fissues%2F758%23issuecomment-919554382&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666367883|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=ZBGNkrDGFcqvrdWHXy5iEGluQiq2Ph%2BZnfosqC3qTTU%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAHV4QUFA72NR7CEJ3UPS5NLUB7DLDANCNFSM5D6SSBHA&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666377877|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=ctEevpiqzC%2FQnTc6ho2hfr2PVGA%2FqwGJzj1pPUCEylY%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666377877|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=cMCZqYPB6q8c9n%2BgPTk9f3MCQr%2BlV4GsOW9iPFSZtgE%3D&reserved=0 or Androidhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01|arturoqu%40microsoft.com|4df75e22c063478509d008d977ce2b14|72f988bf86f141af91ab2d7cd011db47|1|0|637672549666387876|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=6B5T09q%2Bx2Q2rWftui6b32lD1VLrCRMPiLSrTUS7xnI%3D&reserved=0.

Great!


Bug fixing

@Mushfiqur06 it would be more practical to simply continue on the same branch until changes are actually merged into the upstream branch. I noticed you created a bug_fixing2 branch to add a single commit while you could have pushed that change to bug_fixing as well. :wink:
A more idiomatic git approach would be to just keep working on the branch that I provided (add-hashicorp-based-landingcorp) and creating PR's to namesake branch upstream instead of upstream master. Let me know if any of this git-fu is a bit unclear such that I can clarify what I mean.
I'll close this PR and will review #12


Plugin executed several times during vagrant execution as of Vagrant version 2.2.14

Upon updating to vagrant 2.2.14 and running a relevant vagrant command which adds hosts (up, provision, reload), I see that the "Checking for Hosts Entries" operation executes several times at different times during the process.  Consider a machine which has a hostname luma.demo and one alias, b2b.luma.demo:
==> Kukla-Machine: [vagrant-hostsupdater] Writing the following entries to (/etc/hosts)
==> Kukla-Machine: [vagrant-hostsupdater]   <IP_ADDRESS>  luma.demo  # VAGRANT: b0909dcb3cd2b4ce381f5e67253df7e4 (Kukla-Machine) / b977d2f2-196d-4126-84d8-287319c9cf82
==> Kukla-Machine: [vagrant-hostsupdater]   <IP_ADDRESS>  b2b.luma.demo  # VAGRANT: b0909dcb3cd2b4ce381f5e67253df7e4 (Kukla-Machine) / b977d2f2-196d-4126-84d8-287319c9cf82
==> Kukla-Machine: [vagrant-hostsupdater] This operation requires administrative access. You may skip it by manually adding equivalent entries to the hosts file.
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: Setting hostname...
==> Kukla-Machine: Configuring and enabling network interfaces...
==> Kukla-Machine: Mounting shared folders...
    Kukla-Machine: /vagrant => /Users/steve/Repositories/chef-vm-builder/app
    Kukla-Machine: /tmp/vagrant-chef/2e8896bed40d5e23b8918bdb0645b887/roles => /Users/steve/Repositories/chef-vm-builder/app/roles
    Kukla-Machine: /tmp/vagrant-chef/4847eb237c6608f62eeedf7d5e50171e/nodes => /Users/steve/Repositories/chef-vm-builder/app/nodes
    Kukla-Machine: /tmp/vagrant-chef/c57acd1717291ee7fbbcc6bea632e620/cookbooks => /Users/steve/Repositories/chef-vm-builder/app/cookbooks
    Kukla-Machine: /tmp/vagrant-chef/75cac5eba507dbedb2893badd80a45b5/environments => /Users/steve/Repositories/chef-vm-builder/app/environments
==> Kukla-Machine: Machine already provisioned. Run `vagrant provision` or use the `--provision`
==> Kukla-Machine: flag to force provisioning. Provisioners marked to run always will still run.
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo
==> Kukla-Machine: [vagrant-hostsupdater] Checking for host entries
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> luma.demo
==> Kukla-Machine: [vagrant-hostsupdater]   found entry for: <IP_ADDRESS> b2b.luma.demo

When digging for information on this issue, I found the following github issue which seems to be related: https://github.com/hashicorp/vagrant/issues/12034
Problem is, it seems like this issue is considered "solved", which potentially leaves me in the lurch with the above problem.
My questions would be:

Is this a known issue?
If the above github thread from Vagrant IS the cause of this and the problem will not be solved, is there a workaround?

As of now, the only way I have seen to address this is to downgrade to 2.2.10 (since 2.2.11, 12, and 13 all have subsequent bugs and issues). I'd just like to confirm whether that's my only recourse at this point.
Thanks so much!

Same multiple apparent host updates here, with these:
Vagrant 2.2.14
VirtualBox 6.1.16r140961
ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin20]
ansible 2.10.3
  config file = /Users/iain/bradford-abbas.uk/ansible.cfg
  configured module search path = ['/Users/iain/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/2.10.4/libexec/lib/python3.9/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.9.1 (default, Dec 17 2020, 10:08:12) [Clang 12.0.0 (clang-1<IP_ADDRESS>)]
vagrant-auto_network (1.0.3, global)
  - Version Constraint: > 0
vagrant-hostsupdater (1.2.0, global)
  - Version Constraint: > 0
vagrant-vbguest (0.28.0, global)
  - Version Constraint: > 0

Is this a known issue?

This looks like the same issue as described in #187.

If the above github thread from Vagrant IS the cause of this and the problem will not be solved, is there a workaround?

As far as I know there is no workaround yet. The maintainer is currently looking into it.

This one is definitely a dup of #187. I just provided the PR with the fix, see https://github.com/agiledivider/vagrant-hostsupdater/issues/187#issuecomment-778387163.


CLI command to terminate all open livestreamer processes

Is there a CLI command to terminate all open livestreamer processes?

If you're on Linux:
killall livestreamer

Windows:
taskkill /IM livestreamer.exe

Perfect! thanks


Update to allow for rescript 0.3.1

Hey, can you bump version of recoil for using recoil 0.3.1?

Updated in v1.0.1


Reconstruction Pipeline

Hello, thanks for your sharing!
How could I apply GeoDesc to SIFT-based reconstruction pipeline like you did in your paper Fig.5. I'm new in program, any advice would be appreciated.

@lzx551402 are you planning on opensourcing your 3D reconstruction pipeline?

@Giorat I'm afraid not as it is in commercial use (https://www.altizure.com/).


Retain the bf16 in fallback versions of the NeoverseN2 -march flag

hopefully fixes #4449 for good

For the record, the aarch64-apple-darwin build in https://buildkite.com/julialang/yggdrasil/builds/9492#018eb409-61f2-47c0-b754-d6323ba9c858 (from https://github.com/JuliaPackaging/Yggdrasil/pull/8446) was successful with this patch.  Thanks for the quick resolution!


Windows Insider SDKs link is broken

[Enter feedback here]
Windows Insider SDKs link leads to "page cannot be found"

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

ID: 78ad11f6-c110-d5f8-6a13-dd9bbc972fb2
Version Independent ID: e079a5eb-e883-1078-d59b-81586ea2d3e8
Content: Experimental APIs - UWP applications
Content Source: windows-apps-src/whats-new/experimental-apis.md
Product: uwp
Technology: whats-new
GitHub Login: @QuinnRadich
Microsoft Alias: quradic

Thanks for your patience on this issue. I think it may have been a temporary issue on the page being linked to? Currently, the link is working for me, though unless you're a member of the Windows Insider Program it mainly just contains a link to learn more / sign up about the program.
As the link appears to work, closing this issue.


no-duplicate-variable: handle parameters

PR checklist

[ ] Addresses an existing issue: #0000
[x] New feature, bugfix, or enhancement

[x] Includes tests

[ ] Documentation update

Overview of change:
[enhancement] no-dupliate-variable: added check if variable has the same name as a parameter
This is needed because of the behavior change of no-shadowed-variable in my upcoming PR.
Also the name of the rule implies this behavior. At least I expected that...
Is there anything you'd like reviewers to focus on?
The rule does not check for duplicate parameter names, because the compiler already does that.

please merge develop, this will fail strict-boolean-expressions #2408

@adidahiya I can't confirm there is anything failing. Anyways, I rebased on master.

hmm, I dunno about this... parameters do feel a little different from var declarations in the function body, which is why I put this check into no-shadowed-variable... is it really worth the breaking change? can you make the enhancements in #2598 without making this change @ajafff?

@adidahiya I don't think having this check in no-shadowed-variable is the right thing to do. no-shadowed-variable allows declarations with the same name in the same scope. They either merge (e.g. interface and class) or give a compiler error (e.g. two block scoped variables or block scoped variable and class). Parameters and variables merge if types match, so adding this additional check would be an ugly hack.
How about adding a new config option "check-parameters" to this rule to make it non-breaking?

@adidahiya I added a new options "check-parameters" to make this change non-breaking


isn't --> is not

Weird case where this comment is breaking a string on a client side script I'm I am generating. :p

That's a big you need to fix in your build tool


License change

Codecov Report

Merging #2 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop       #2   +/-   ##
========================================
  Coverage    89.55%   89.55%
========================================
  Files           21       21
  Lines         3715     3715
========================================
  Hits          3327     3327
  Misses         388      388

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 c9ff16f...4fc8838. Read the comment docs.


Upgraded to 0.63.4 and LogBox does not even function

Please provide all the information requested. Issues that do not follow this format are likely to stall.
Description
Please provide a clear and concise description of what the bug is. Include screenshots if needed.
Please test using the latest React Native release to make sure your issue has not already been fixed: https://reactnative.dev/docs/upgrading.html
React Native version:
Run react-native info in your terminal and copy the results here.
System:
OS: macOS 10.15.7
CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
Memory: 89.91 MB / 8.00 GB
Shell: 5.7.1 - /bin/zsh
Binaries:
Node: 13.0.0 - /usr/local/bin/node
Yarn: 1.22.10 - /usr/local/bin/yarn
npm: 6.12.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
Managers:
CocoaPods: 1.10.1 - /Users/hugocheng/.rvm/rubies/ruby-2.6.3/bin/pod
SDKs:
iOS SDK:
Platforms: iOS 14.2, DriverKit 20.0, macOS 11.0, tvOS 14.2, watchOS 7.1
Android SDK:
API Levels: 22, 23, 26, 27, 28, 29, 30
Build Tools: 27.0.3, 28.0.3, 29.0.2
System Images: android-28 | Google APIs Intel x86 Atom, android-28 | Google Play Intel x86 Atom, android-29 | Google APIs Intel x86 Atom
Android NDK: Not Found
IDEs:
Android Studio: 4.0 AI-193.69<IP_ADDRESS>26763
Xcode: 12.2/12B45b - /usr/bin/xcodebuild
Languages:
Java: 1.8.0_202-ea - /usr/bin/javac
Python: 2.7.16 - /usr/bin/python
npmPackages:
@react-native-community/cli: Not Found
react: 16.3.1 => 16.3.1
react-native: 0.63.4 => 0.63.4
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.
1.npx react-native run-ios
2.app boots up
3. app crashes with error
Expected Results
Describe what you expected to happen.
To at least be able to start up with the app, if there is a error, display error properly

package.json
{
  "name": "redacted",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "@babel/core": "~7.8.4",
    "@babel/runtime": "^7.8.4",
    "@react-native-community/eslint-config": "^1.1.0",
    "babel-jest": "^25.1.0",
    "eslint": "7.14.0",
    "enzyme": "^3.11.0",
    "enzyme-adapter-react-16": "^1.15.5",
    "enzyme-to-json": "^3.3.4",
    "jest": "^25.1.0",
    "jest-enzyme": "^6.0.1",
    "jest-expo": "^37.0.0",
    "jest-react-hooks-shallow": "^1.4.1",
    "jest-serializer-enzyme": "^1.0.0",
    "jetifier": "^1.6.5",
    "metro-react-native-babel-preset": "^0.59.0",
    "react-dom": "16.9.0",
    "react-native": "0.63.4",
    "react-native-mock": "^0.3.1",
    "react-native-scripts": "1.14.0",
    "react-native-unimodules": "~0.9.1",
    "react-test-renderer": "^16.3.1",
    "sinon": "^5.0.10"
  },
  "scripts": {
    "postinstall": "jetify",
    "startTest": "npm test; expo start",
    "start": "react-native start",
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "test": "jest"
  },
  "jest": {
    "preset": "jest-expo",
    "transformIgnorePatterns": [
      "node_modules/(?!(jest-)?react-native|react-clone-referenced-element|@react-native-community|expo(nent)?|@expo(nent)?/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|@sentry/.*|react-native-modal-dropdown|deprecated-react-native-listview)"
    ],
    "snapshotSerializers": [
      "enzyme-to-json/serializer"
    ],
    "setupFilesAfterEnv": [
      "./__mocks__/react-hook-jest"
    ],
    "automock": false
  },
  "dependencies": {
    "@babel/core": "7.12.9",
    "@babel/runtime": "^7.12.5",
    "@expo/vector-icons": "^10.0.0",
    "@react-native-async-storage/async-storage": "^1.14.1",
    "@react-native-community/checkbox": "^0.5.5",
    "@react-native-community/datetimepicker": "^3.0.2",
    "@react-native-community/masked-view": "^0.1.10",
    "@react-navigation/drawer": "^5.7.5",
    "@react-navigation/native": "^5.4.0",
    "@react-navigation/stack": "^5.3.7",
    "amplitude-js": "^7.4.2",
    "babel-core": "^7.0.0-bridge.0",
    "babel-jest": "^23.6.0",
    "d3": "^4.13.0",
    "deprecated-react-native-listview": "^0.0.5",
    "expo": "^37.0.8",
    "expo-asset": "^8.1.5",
    "expo-constants": "^9.2.0",
    "expo-font": "~8.1.0",
    "expo-notifications": "^0.7.2",
    "expo-permissions": "~8.1.0",
    "expo-secure-store": "~8.1.0",
    "expo-splash-screen": "^0.2.3",
    "expo-updates": "0.2.1",
    "jsdom": "^11.11.0",
    "metro-react-native-babel-preset": "^0.58.0",
    "moment": "^2.27.0",
    "moment-timezone": "^0.5.32",
    "prop-types": "^15.6.1",
    "react": "16.3.1",
    "react-dom": "~16.9.0",
    "react-native-calendar-picker": "^7.0.2",
    "react-native-chip-view": "0.0.11",
    "react-native-codegen": "0.0.7",
    "react-native-dash": "0.0.9",
    "react-native-device-info": "^8.0.1",
    "react-native-elements": "^1.1.0",
    "react-native-extended-stylesheet": "^0.10.0",
    "react-native-gesture-handler": "^1.6.1",
    "react-native-material-tabs": "^3.8.1",
    "react-native-modal": "^11.5.6",
    "react-native-modal-datetime-picker": "9.0.0",
    "react-native-modal-dropdown": "git+https://github.com/siemiatj/react-native-modal-dropdown.git",
    "react-native-picker-dropdown": "^0.1.2",
    "react-native-pinch-zoom-view": "^0.2.0",
    "react-native-progress": "^4.1.2",
    "react-native-progress-circle": "^2.0.0",
    "react-native-reanimated": "^1.7.1",
    "react-native-render-html": "^3.10.0",
    "react-native-safe-area-context": "^1.0.2",
    "react-native-screens": "^2.2.0",
    "react-native-simple-radio-button": "^2.7.1",
    "react-native-svg": "^11.0.1",
    "react-native-svg-transformer": "^0.14.3",
    "react-native-swipe-gestures": "^1.0.2",
    "react-native-switch": "^1.5.0",
    "react-native-tag-autocomplete": "^1.0.21",
    "react-native-timeline-listview": "^0.2.3",
    "react-native-timeline-theme": "0.0.9",
    "react-native-unimodules": "^0.9.1",
    "react-native-vector-icons": "^6.3.0",
    "react-native-web": "~0.11.7",
    "react-navigation": "^2.18.3",
    "whatwg-fetch": "^2.0.4"
  },
  "resolutions": {
    "deprecated-react-native-listview": "0.0.6"
  },
  "rnpm": {
    "assets": [
      "./app/assets/fonts"
    ]
  }
}

Did you try clearing the cache npx react-native start & npx react-native run-ios?

Hey,
We're cleaning up the React Native issue tracker to make sure we focus on the most important issues first.
I'm closing this one because it's stale and related to a version of React Native we no longer support. If the issue persists on the latest version, please re-open a new issue and reference this one.
Thank you.


Add badge linking to weights on Hugging Face

Hello! For #33, I added a little badge in the README to point to where you've hosted the weights. I haven't made other changes to the README though (e.g. putting in a snippet showing how to load the weights). If you'd like, I can totally do that!

+1 for the snippet showing how to load the weights :)

@NimaBoscarino sorry I haven't merged this yet. Got busy and kinda forgot about it. I was thinking if there was a more "organized" way of linking to all Hugging Face resources since the badges are getting too cluttered in my opinion.
Regarding the loading of the weights hosted at Hugging Face, I'm not entirely sure how that's going to be any different from loading the weights hosted here at GitHub (from the perspective of a PyTorch Hub user). Are you referring to a Hugging Face-specific API or library?


Hard coded server connection-count limits produces greeting: “BYE too many open connections from your ip or network”

— The connection limits are measured for all time and limits the total number of connections per server lifetime that can be made from ip and some CIDRs
— This can apparently not be configured but is hard coded
— For 10 threads opening at most one connection at a time per thread overtime a sequence of multiple connections exceeding 30, triggers at per-address set limit 30 which likely means connection limiting by source address is not working as intended
— at no time is there more than 10 parallel imap connections, yet the limiter triggers
— ie. mox stops accepting any connection
Issues:
— the total allowed number of connections per server lifetime should not be limited
— the limit must be configurable and have ability to be disabled
— the IP CIDRs are arbitrary
mox/imapserver/server.go:732
c.writelinef("* BYE too many open connections from your ip or network")
mox/imapserver/server.go:120
	limiterConnections = &ratelimit.Limiter{
		WindowLimits: []ratelimit.WindowLimit{
			{
				Window: time.Duration(math.MaxInt64), // All of time.
				Limits: [...]int64{30, 90, 270},
			},
		},

Connection limits are hard coded per server process lifetime:
— per ipmasked1 (ipv4 /32 or ipv6 /64) 30
— per ipmasked2 (ipv4 /26 or ipv6 /48) 90
— per ipmasked3 (ipv4 /21 or ipv6 /32) 270

The root cause of this was a bug in my client’s LOGOUT code
A large number of ESTABLISHED or TIME_WAIT sockets was listed on the mox host:
netstat -ntp | grep :993
However, it is likely that some yahoo will want to use more than 30 connections per IP address
— mox needs ability to disable the connection limit

Maybe instead of disabling the connection limit for such cases mox could support killing the oldest established (and probably stuck) connection to allow the new one to go through?

While that could be an option for a limit per exact IP address match, it wouldn't be great for the subnet matches. It may mean someone with another IP can get your connection dropped. Did you run into the limit without accidentally keeping too many connections open?
I suppose we can make the connection limit configurable. But as an admin I wouldn't like to disable it.


merge package from arlac77/npm-package-template

package.json

chore(package<EMAIL_ADDRESS>chore(scripts): cover@#overwrite c8 --temp-directory build/coverage ava && c8 report -r lcov --temp-directory build/coverage
chore(package): add nyc from template
chore(package): set $.ava.require='esm' as in template
chore(package): set $.ava.files='tests/-test.js,tests/-test.mjs' as in template
chore(package): set $.ava.extensions='js,mjs' as in template

Codecov Report

Merging #538 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #538   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           1      1
  Lines          29     29
=====================================
  Hits           29     29

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 6c10396...e84351f. Read the comment docs.

Codecov Report

Merging #538 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #538   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           1      1
  Lines          29     29
=====================================
  Hits           29     29

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 6c10396...e84351f. Read the comment docs.

Coverage remained the same at 97.619% when pulling e84351f40ec127644005ee22b91a1a8fb0680ae3 on template-sync-1 into 6c10396b8ad7c4270a70625c93bd2a883ff889c4 on master.


Is there a way to change the default language / store?

Hello!!!
First of all thanks for this great package.
I'm having troubles downloading few apks and i'm assuming its due to either language/store.
Is there an easy way to modify the language? like --lang es_mx
Thanks a lot!!!

Hi, I am not sure but probably that link to you the country the your account associate to it.
Btw, Have you manage to download an apk. I always got this whenever I set the password for download stuff. (any help?)
'Security check is needed, try to visit https://accounts.google.com/b/0/DisplayUnlockCaptcha to unlock, or setup an app-specific password'

Hi @adtimizer,
I am not sure but probably that link to you the country the your account associate to it.
Btw, Have you manage to download an apk. I always got this whenever I set the password for download stuff. (any help?)
'Security check is needed, try to visit https://accounts.google.com/b/0/DisplayUnlockCaptcha to unlock, or setup an app-specific password'

you should go to that link and do the captcha before signing in

Hi,
Whenever I configure a new user to download the apk i get an alert on my google account and then I approve that the new login was done by myself. From that moment it works like a charm.
Best,
Oren

On Sep 3, 2021, at 21:45, Abdulla Aldoseri @.***> wrote:

Hi, I am not sure but probably that link to you the country the your account associate to it.
Btw, Have you manage to download an apk. I always got this whenever I set the password for download stuff. (any help?)
'Security check is needed, try to visit https://accounts.google.com/b/0/DisplayUnlockCaptcha to unlock, or setup an app-specific password'
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.


Convert markdown from GitHub to Slack format

Some markdown elements that are present in GitHub issues don't exist or have different syntax in Slack threads. Thus we need to convert them into something Slack can show in a nice way.
Elements that are well formatted as is:

italic text
quoted text
single line of code
multiline code
ordered list

Elements that require conversion in SBot:

headers 1-6: should be converted to bold text as there are no headers in Slack's markdown
bold text: should be converted from **text** to *text*
unordered lists: items should be converted from - item to • item
linked text: should be converted from [Link text](https://link.address) to <https://link.address|Link text>

Thanks for looking into this @eXConf

Original issue was updated with two more problematic cases:

multiline code (with four spaces at the start of a line): should be converted to ``` ``` syntax
italic text (with * * syntax): should be converted to _ _ syntax


Enable service catalog on minikube using PSI cluster

Running service catalog tests on 3.11 PSI cluster requires service catalog to be enabled.
https://issues.redhat.com/browse/ODO-40

We could try to run Service Catalog tests on k8s (minikube) because that's where we mainly expect odo users to use it. I get it that it's available on 3.11 as well. But more users of the Service Catalog would be on k8s than on OCP 3.11.
WDYT @kadel?
/remove-lifecycle rotten

We could try to run Service Catalog tests on k8s (minikube) because that's where we mainly expect odo users to use it. I get it that it's available on 3.11 as well. But more users of the Service Catalog would be on k8s than on OCP 3.11.
WDYT @kadel?
/remove-lifecycle rotten

Enabling service catalog on 3.11 would be addressed in #4288. As far as Service Catalog tests on k8s (minikube) is concerned, yes we can work on it once we close #4287 . As this issue is left out with minikibe service catalog implementation, changing issue title.

Steps needs to be verified and implemented:

[ ] Install helm
[ ] kubernetes configuration file needs to be installed https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/
[ ] Helm repository setup
[ ] Install service catalog
[ ] Run operator hub tests on it successfully, Resolve blockers if any
[ ] Create a custom image and modify jenkins configuration script accordingly

Working on https://github.com/openshift/odo/issues/4287 to get fixed first. Then jump into add ons.

Working on #4287 to get fixed first. Then jump into add ons.

#4287 was fixed.
We need to start working on this again. We currently don't test ServiceCatalog integration at all and that is a problem.

We are removing service catalog from odo
/close


[React] Support width in floatingStyles, and make default with the width of the reference element

https://github.com/floating-ui/floating-ui/blob/eb6c042e42faae7567e717fe10afdd1953375e14/packages/react-dom/src/useFloating.ts#L156-L160
Can we change it to:
const referenceRect = referenceEl?.getBoundingClientRect();
const initialStyles = {
   position: strategy,
   left: 0,
   top: 0,
   width: referenceRect?.width,
 };

Popovers and tooltips (most common floating elements) don't match the width of the reference element, so this is not an appropriate default.
Aside from that technique, there is also documentation here for size: https://floating-ui.com/docs/size#match-reference-width

thx


[MappedCondition] generate proper conditionDescriptionWithStatus

MappedCondition delegated to an inner Condition. When calling conditionDescriptionWithStatus all inner conditions should also show the status.
Like:
[✗] mapped
   using: ::toString
   from: <StringBuilder> a -
   to:   <String> a -
   then checked:
   [✗] all of:[
      [✓] has -,
      [✗] is longer 4
   ]
]

and not
[✗] mapped
   using: ::toString
   from: <StringBuilder> a -
   to:   <String> a -
   then checked:
   all of:[
      has -,
      is longer 4
   ]
]

Issue  #2268

@joel-costigliola is more needed here?

did all requested changes of Review1 but not the one with the status label

@stbischof can you rebase on main as I merged your other PR related to mapped condition and format the code with AssertJ code style preferences ;-)

did a rebase and reimported the formatter.

The failing test ist not Part of the pr

Integrated thanks @stbischof!


Add NOEXPORT option to add_hpx_{component,library}

Almost fixes #3941. I've added a NOEXPORT option to add_hpx_library to skip exporting. The only reason I made it NOEXPORT and not EXPORT is to not change the default behaviour of add_hpx_library. add_hpx_module also got an EXPORT option for the same thing. This would still require adding NOEXPORT to the add_hpx_library call in APEX.

Almost fixes #3941

By this do you mean, it doesn't fix it? (spoiler - I tried it - and it doesn't!). That being the case - do you know what's needed to fix it? I just ran into this same error and would like to solve it ASAP.

Almost fixes #3941

By this do you mean, it doesn't fix it? (spoiler - I tried it - and it doesn't!). That being the case - do you know what's needed to fix it? I just ran into this same error and would like to solve it ASAP.

By almost I mean that it needs a change in APEX to fully fix it (the NOEXPORT in add_hpx_library).


Added unwrap through uniswap v3

lets add some integration tests to the RETHAdapterV1 test suite. ie. deploy the new adapter, hook it up in the alchemist, and use it to test depositUnderlying, withdrawUnderlying, harvest, and liquidate


Grpc server stuck for certain tests

I encounter this issue when trying to set up durabletask-go as the testing image for durabletask-java integration tests. I can reproduce this issue in Java, Go, and JavaScript.
Issue Description:
for a test suite contains two tests:
func Test_Grpc_WaitForInstanceStart_Timeout(t *testing.T) {
	r := task.NewTaskRegistry()
	r.AddOrchestratorN("WaitForInstanceStartThrowsException", func(ctx *task.OrchestrationContext) (any, error) {
		// sleep 5 seconds
		time.Sleep(5 * time.Second)
		return 20, nil
	})

	cancelListener := startGrpcListener(t, r)
	defer cancelListener()

	id, err := grpcClient.ScheduleNewOrchestration(ctx, "WaitForInstanceStartThrowsException", api.WithInput("世界"))
	require.NoError(t, err)
	timeoutCtx, cancelTimeout := context.WithTimeout(ctx, time.Second)
	defer cancelTimeout()
	_, err = grpcClient.WaitForOrchestrationStart(timeoutCtx, id, api.WithFetchPayloads(true))
	if assert.Error(t, err) {
		assert.Contains(t, err.Error(), "context deadline exceeded")
	}
	time.Sleep(1 * time.Second)
}

func Test_Grpc_HelloOrchestration(t *testing.T) {
	r := task.NewTaskRegistry()
	r.AddOrchestratorN("SingleActivity", func(ctx *task.OrchestrationContext) (any, error) {
		var input string
		if err := ctx.GetInput(&input); err != nil {
			return nil, err
		}
		var output string
		err := ctx.CallActivity("SayHello", task.WithActivityInput(input)).Await(&output)
		return output, err
	})
	r.AddActivityN("SayHello", func(ctx task.ActivityContext) (any, error) {
		var name string
		if err := ctx.GetInput(&name); err != nil {
			return nil, err
		}
		return fmt.Sprintf("Hello, %s!", name), nil
	})

	cancelListener := startGrpcListener(t, r)
	defer cancelListener()

	id, err := grpcClient.ScheduleNewOrchestration(ctx, "SingleActivity", api.WithInput("世界"))
	require.NoError(t, err)
	timeoutCtx, cancelTimeout := context.WithTimeout(ctx, 30*time.Second)
	defer cancelTimeout()
	metadata, err := grpcClient.WaitForOrchestrationCompletion(timeoutCtx, id, api.WithFetchPayloads(true))
	require.NoError(t, err)
	assert.Equal(t, true, metadata.IsComplete())
	assert.Equal(t, `"Hello, 世界!"`, metadata.SerializedOutput)
	time.Sleep(1 * time.Second)
}

If running them in order the second test will timeout, although running them separately, both tests will succeed. It turns out that after running the first test, all other tests will timeout. The executor goroutine seems parking forever (not fetching work item and processing them. )
The step to reproduce the issue

checkout branch kaibocai/server-stuck-issue
run go test tests/grpc/grpc_test.go

You will see the second test time-out.

I try to figure this out but without much luck. Appreciate it if you can help take a look @cgillum , @ItalyPaleAle , @shivamkm07

Feel free to ping me later and we can debug together. The first thing that comes to mind is that there may be a port conflict, maybe the test is trying to create a listener on an port that was already taken?

Hey I debugged this today and was able to identify why it's getting stuck:
Here https://github.com/microsoft/durabletask-go/blob/28789e17ce0a2ccecc811ab02035e8c3df262a71/tests/grpc/grpc_test.go#L85 in the Test_Grpc_WaitForInstanceStart_Timeout test, in the orchestration you are sleeping for 5 seconds, but the whole test ends in ~2 seconds(1 second timeout for timeoutCtx and 1 second sleep in the end) and so after the test ends and grpc listener is cancelled(https://github.com/microsoft/durabletask-go/blob/28789e17ce0a2ccecc811ab02035e8c3df262a71/tests/grpc/grpc_test.go#L92), workflow is still running. Once grpc listener gets closed, corresponding work item stream is closed as well. Now when the orchestration completes and it is unable to send the signal to executor that the orchestration is completed(https://github.com/microsoft/durabletask-go/blob/28789e17ce0a2ccecc811ab02035e8c3df262a71/client/worker_grpc.go#L83) as the call errors out with log failed to complete orchestration task: context canceled. Since executor never receives the signal, it is still waiting for the orchestration to complete here: https://github.com/microsoft/durabletask-go/blob/28789e17ce0a2ccecc811ab02035e8c3df262a71/backend/executor.go#L129 and keeps waiting forever. That's why it keeps hanging and never receives any work item.
It is actually already mentioned in the comment: https://github.com/microsoft/durabletask-go/blob/28789e17ce0a2ccecc811ab02035e8c3df262a71/backend/executor.go#L124


host Android build on maven central

Is your feature request related to a problem? Please describe.
Java 8/Android compatibility was added with https://github.com/filip26/titanium-json-ld/issues/133, but presently I can't see the jar being hosted anywhere.
I was hoping to raise a PR on https://github.com/decentralized-identity/jsonld-common-java and https://github.com/decentralized-identity/did-common-java to provide Android support and titanium-json-ld is the key transitive dependency.
Describe the solution you'd like
titanium-json-ld uploaded under a separate artifactId to maven central or equivalent.
Describe alternatives you've considered
I've currently used git submodules to achieve the above, but it comes with problems:

gradle doesn't have a proxy for maven profiles, so building the maven module from gradle requires a fiddly bit of groovy
not sure if individual commits relate 1-1 to maven releases
it's ugly

I had a look in your github actions to try and raise a PR, but it didn't seem like the maven-push action actually does a maven push and I assumed you do it manually - I could well be misunderstanding though!
Additional context
Thanks for your work so far!

I'm also no expert in maven or the nexus-staging plugin, but I'm happy to take a look. A cheap solution could be profiles for -Pmaven-central and -Pmaven-central-android - I'll see if I can come up with something tidier!

The tricky part is how to build all the artifact together.
e.g.
titanium-json-ld-1.0.3.jar
titanium-json-ld-1.0.3-android.jar
titanium-json-ld-1.0.3-javadoc.jar
titanium-json-ld-1.0.3-sources.jar
titanium-json-ld-1.0.3.pom

Some recommend https://maven.apache.org/plugins/maven-toolchains-plugin/  to get different builds done at once, to get rid off the android profile.

The easiest solution is to name android artifact like titanium-json-ld-androd' or 'titanium-android and publish it as a separate artifact, including separate versioning, javadoc, and sources.

Yes, separate module that gets always compiled. I believe it's best; conditional compilation is rarely a good thing in Java.

@pkozelka  The biggest downside of this approach is that it requires two pom.xml  - one for JRE11 build and second one for JRE8. Beside duplicates in the files there is no IDE support (e.g. now, you can select a maven profile in Eclipse).
What about Gradle? Could that help?

I've just run into toolchains.
Guide for Supporting Multiple Versions of Java (8, 11, 14) in Your Maven Project.

Structure:
pom_parent.xml
pom.xml <- default, inherits pom_parent.xml
pom_jre8.xml <- android build, inherits pom_parent.xml

Use maven-flatten-plugin to get distributable pom
> export JAVA_HOME=<JDK11>
> mvn clean package

> export JAVA_HOME=<JDK8>
> mvn -f pom_jre8.xml clean package


Add msdyn_SearchResourceAvailability service C# example

The msdyn_SearchResourceAvailability service is very useful.
Would you please put in an example running it using .Net C# version! I presume using OrganizationRequest object.
Many thanks

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

ID: 1172fb10-64c9-30b2-2b4b-922ef6807e17
Version Independent ID: 9690c995-4a64-0217-562a-70456b02e78a
Content: Search resource availability API in Dynamics 365 Field Service
Content Source: ce/field-service/search-resource-availability-api.md
Service: dynamics-365-field-service
GitHub Login: @FieldServiceDave
Microsoft Alias: daclar

Hello @Enielezi - thank you for sharing the feedback and apologies for the delay in getting back to you.
We're looking into this issue and will circle back with an update.
Thanks!
Michael

We have created a work item to rewrite the Search Resource Availability page. We will consider adding a C# example based on your feedback. Thank you so much for your feedback!


feat: add smul_prod lemmas

From #6718.

[x] depends on: #8936

It would be nice to have the ∏ x in s, x • c lemmas too, if you'll willing to let the scope expand.

That one is there, no?

Can you summarize in the PR description the difference between Finset.smul_prod and Finset.smul_prod' (and the variants for lists and multisets). Thanks!

Coming here from PR triage: it seems like you have one outstanding review ask, and you have a merge conflict now. Can you fix both, please? Thanks!
#6718 is huge (but would also be great to have in mathlib) - it would be great for at least make steady progress on pieces like this.

Can you summarize in the PR description the difference between Finset.smul_prod and Finset.smul_prod' (and the variants for lists and multisets). Thanks!

I summarized in the module documentation instead

Thanks!
bors merge


Put snappy, gzip, and openssl behind a feature guard

This should resolve #89 and help #90

Can we update the README to mention the possibility of optional dependencies (in particular on snappy.)

@xitep works for me.

@samphippen thanks. just pushed to crates.io as 0.3.2


Campaign Gallery should be showing promoted and approved items for single reportback

On this campaign: http://staging.beta.dosomething.org/campaigns/please-dont-break-anything, only promoted reportbacks are showing from a Reportback that contains multiple reportback-items with both approved and promoted statuses, and may be an issue across other campaigns.

@weerd do you know if this was addressed by #4927? thanks!

@namimody ya it was 🍶


difference to waterlinks implementation

I just wanted to know whether there are any different aims you have for your implementation as the implementation of waterlink.

I didn't know his timecop.cr repository when I start this project.
Two differences are between this and his timecop.cr:

My timecop.cr support nesting of Time.freeze.
Following code will not run on the his timecop.cr:

t = Time.new(2008, 10, 10, 10, 10, 10).to_local
Timecop.freeze(t) do
  true.should eq(t == Time.now)
  t2 = Time.new(2008, 9, 9, 9, 9, 9).to_local
  Timecop.freeze(t2) do
    true.should eq(t2 == Time.now)
  end
  true.should eq(t == Time.now)
end
false.should eq(t == Time.now)

To run this code, we need using a stack of Time class wrapper in timecop.cr.

Last commit in his project is 9 months ago, but some functions are not implemented. I'm going to implement Time.travel and Time.scale by 9/15.

Wow, thank you for your fast response!


[MINOR] Remove redundant logic of JDBC Interpreter

What is this PR for?
Removing redundant codes and expanding features for passing extra properties into JDBC driver
What type of PR is it?
[Bug Fix | Improvement]
Todos

[x] - Removed logic

What is the Jira issue?

MINOR issue

How should this be tested?
Just passed additional information into your JDBC
Screenshots (if appropriate)
Questions:

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

@wfhartford I think it's okay to satisfy your concern. Could you please review it?

Awesome, thanks. That looks great.

This PR is a very trivial. Merging if there's no more discussion.

Tested, LGTM!

LGTM! +1


Can't switch spaces from the widget in Big Sur

Ever since I updated my mac to macOS 11, I have no longer been able to switch spaces by clicking on the space number in the widget. In addition, the widget doesn't update unfocused spaces.

Hi, did you check the yabai wiki after updating to Big Sur?
There is some changes to do after updating, see here for more information.
Let me know if this helps you.

Yeah, thanks :)


Check for updates to the chrome extension on startup

Actually, this may not be necessary if we go with https://github.com/pmansour/pimeet/issues/9


[Bug Report]: enchanted leather armor is in the wrong category

Spark link
No response
Server Version
1.19.3
Server Platform
Spigot
Describe the bug
Hello! I noticed a bug in the CrazyAuctions plugin where enchanted leather armor is in the wrong category. Instead of being in the "armor" category, it's in the "other" category.
First picture is other

Steps to reproduce
/ah sell
Additional context
No response
Agreements

[X] I have searched for and ensured there isn't already an open issue regarding this.
[x] I ticked all the boxes without actually reading them
[X] My version of Minecraft is supported by CrazyCrew.

Closed due to pending re-write


docker containers exited with code 126

while running docker-compose up, all the container creation is getting exited with error
sonar-codequality-collector_1      | /bin/sh: 1: ./properties-builder.sh: Permission denied
appdynamics-collector_1            | /bin/sh: 1: ./properties-builder.sh: Permission denied
gitlab-scm-collector_1             | /bin/sh: 1: ./properties-builder.sh: Permission denied
artifactory-artifact-collector_1   | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_appdynamics-collector_1 exited with code 126
hygieia-app_sonar-codequality-collector_1 exited with code 126
hygieia-app_gitlab-scm-collector_1 exited with code 126
hygieia-app_artifactory-artifact-collector_1 exited with code 126
nexus-iq-collector_1               | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_nexus-iq-collector_1 exited with code 126
jenkins-codequality-collector_1    | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_jenkins-codequality-collector_1 exited with code 126
udeploy-collector_1                | /bin/sh: 1: ./properties-builder.sh: Permission denied
bamboo-build-collector_1           | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_udeploy-collector_1 exited with code 126
hygieia-app_bamboo-build-collector_1 exited with code 126
subversion-collector_1             | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_subversion-collector_1 exited with code 126
versionone-collector_1             | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_versionone-collector_1 exited with code 126
score-collector_1                  | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_score-collector_1 exited with code 126
gitlab-feature-collector_1         | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_gitlab-feature-collector_1 exited with code 126
bitbucket-collector_1              | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_bitbucket-collector_1 exited with code 126
github-graphql-collector_1         | /bin/sh: 1: ./properties-builder.sh: Permission denied
jenkins-build-collector_1          | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_github-graphql-collector_1 exited with code 126
hygieia-app_jenkins-build-collector_1 exited with code 126
chat-ops-collector_1               | /bin/sh: 1: ./properties-builder.sh: Permission denied
jira-collector_1                   | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_chat-ops-collector_1 exited with code 126
github-collector_1                 | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_jira-collector_1 exited with code 126
hygieia-app_github-collector_1 exited with code 126
xldeploy-collector_1               | /bin/sh: 1: ./properties-builder.sh: Permission denied
jenkins-cucumber-test-collector_1  | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_xldeploy-collector_1 exited with code 126
hygieia-app_jenkins-cucumber-test-collector_1 exited with code 126
hpsm-cmdb-collector_1              | /bin/sh: 1: ./properties-builder.sh: Permission denied
api_1                              | /bin/sh: 1: ./properties-builder.sh: Permission denied
hygieia-app_hpsm-cmdb-collector_1 exited with code 126
hygieia-app_api_1 exited with code 126

Fixed it by making changes to Dockerfile. closing.

Hi @guruprasadsane,
Do you mind sharing what changes you made to Dockerfile? I'm having a similar issue and I'm not sure what to fix. Thanks!

hi @guruprasadsane , do you mind sharing the changes as well
@JFDonaghy  did you manage to find what changes needed to be done?

If you find the solution, please contribute back by creating a PR for the same.

@rvema I did not
@guruprasadsane apparently did and it's an old issue
he made changes to the Dockerfile but did not share them...

Fixed it by making changes to Dockerfile. closing.
@guruprasadsane can you please reopen the PR or comment how you managed to solve it?
thank you


I can't install extensions, and downloaded and instaled VSIX are also giving me an error ((

Hi guys, so look, I has downloaded Microsoft Visual Studio, and has tryed to instal C++ extension ( i have installed already mingw and other compilers features on my system ), so I tried to install a C++ extensions from " Extensions " in Visual Studio Code, and I am are receiveng alway an error ( look to the screen )
And when I'm trying to download VSIX format from this link: https://github.com/Microsoft/vscode-cpptools/releases
I am are also receiveng an error, because the reason is that " The Identity element has an invalid value for the version attribute "

Windows 10 LTSB 1607 build.
Thank you in advance for help.

This is from c++ extension, please file an issue here - https://github.com/Microsoft/vscode-cpptools/issues


upgrade chart versions

change  to version change jenkins-x/jenkins-x-platform to version 2.0.744
change jenkins-x/jx-build-templates to version 0.0.766
change jenkins-x/prow to version 0.0.860

/test all

/test ng

ng failed due to a nexus burp.

/test ng

And now ng is failing with:
ERROR: error creating cluster configuring the git auth: saving the Git authentication configuration: saving auth config "gitAuth.yaml" in vault: Error making API request.

URL: PUT http://jx-vault-pr-313-129-ng.jx.<IP_ADDRESS>.nip.io/v1/secret/data/auth/gitAuth.yaml
Code: 404. Errors:

* no handler for route 'secret/data/auth/gitAuth.yaml'
error: configuring the git auth: saving the Git authentication configuration: saving auth config "gitAuth.yaml" in vault: Error making API request.

URL: PUT http://jx-vault-pr-313-129-ng.jx.<IP_ADDRESS>.nip.io/v1/secret/data/auth/gitAuth.yaml
Code: 404. Errors:

* no handler for route 'secret/data/auth/gitAuth.yaml'

@jstrachan, @rawlingsj - any ideas?

/test ng


Rebase ALPA to JAX 0.4.10

This is still a work-in-progress.

[ ] Migrate from tensorflow to OpenXLA

[ ] migrate all delta between tensorflow-alpa and tensorflow upstream to xla-alpa
[ ] build ALPA's jaxlib wheel

[ ] Rebase ALPA's Python code

[ ] Fix frontend-backend compatibility

Adding @nouiz @ZYHowell @gjoliver @merrymercy @mjsML for viz


small fix to 0.10

it works on 0.10 adding
#include "ofMain.h"
into ofxMacScreenRecorder.h

@moebiussurfing
i updated include dependencies.
thanks to report issue!


clean: add test for not removing git extensions artifacts

Unfortunately https://github.com/bundler/bundler/pull/4030 was merged before I had a chance to write a test. I confirmed that the test did not pass before my patch.
Any ETA of 1.10.7 which includes #4030? :heart:
@indirect @segiddins @andremedeiros @skottler

@Sirupsen awesome, thanks for following up!
@homu r+

:pushpin: Commit d1bb0be has been approved by indirect

:hourglass: Testing commit d1bb0be with merge 5d508c3...

:broken_heart: Test failed - status

@homu retry

Looks like a bug with older Rubygems versions. Will take a look.

It looks like the only affected Rubygems version of my specific symptom is 2.2.x, as compilation on #activate was removed in 2.3.x. However, it can still compile unnecessarily in other scenarios on later versions.

No idea why that test is failing :(

@Sirupsen you're right! it wasn't you. rack-cache just released a new version that cannot be installed on ruby 1.9, breaking all the 1.9 specs. I just fixed master, so Homu should be able to build successfully now!

@homu retry

@homu r+

:pushpin: Commit b4227f4 has been approved by indirect

:hourglass: Testing commit b4227f4 with merge be1083b...

boo, I screwed it up, going to have to have to retry again

:broken_heart: Test failed - status

@homu retry

:hourglass: Testing commit b4227f4 with merge 21b1e3b...

:sunny: Test successful - status

@indirect :sparkles: Sorry to ask again, but any news on when a new version of bundler will be out that includes this fix? Would really help us in production to speed up our builds in certain cases and avoid compiling Nokogiri when booting a Rails console (and avoid running a fork!). :)

We don't follow a fixed release schedule, and given that this is the only fix to be backported to the 1.10 series, I'm not entirely sure that I can provide a window for a release. In the meantime, you're welcome to use bundler off of master.

@segiddins that's fair, thanks for the response! We'll build off master.

@segiddins will this with the related patch backported to the 1-10-stable branch or you only backport when releasing? I'm not seeing this commit there https://github.com/bundler/bundler/compare/v1.10.6...1-10-stable

Well only backport if we do a patch release.


[wrt][xwalk-3590] Update script codes' installed app path

Update the installed app path from 'xwalk-service' to 'xwalk'

Impacted tests(approved): new 0, update 3, delete 0
Unit test platform: [Tizen]
Unit test result summary: pass 3, fail 0, block 0

@YongseopKim, thank you very much for the updates!
@yinhaichao Please double check if other test cases have the same issue.

@YongseopKim The latest path is still /home/$TIZEN_USER/apps_rw/xwalk-service on Tizen Common (tizen-common_20150127.1_common-wayland-mbr-x86_64), what's the target of /home/$TIZEN_USER/apps_rw/xwalk change?

@ibelem I think this commit should be merged after crosswalk-12. Currently tizen image is using crosswalk-11. App path was changed in https://github.com/crosswalk-project/crosswalk/commit/e4f3799ac3606fad56a5910f3b3268e9daf071af

@WonyoungChoi Thank you!
The PR https://github.com/crosswalk-project/crosswalk/pull/2717 was landed on Crosswalk 12.40.280.0.
The Crosswalk version is 11.40.277.0 on latest tizen-common_20150127.1_common-wayland-mbr-x86_64.
@yinhaichao, @jennycao said that we will test upstream Crosswalk (install the latest Canary builds from download.01.org) on Tizen common in the future, so we can merge the test cases.
@yinhaichao Please double check if other test cases have the same issue.

LGTM


unable to get route from 46.0838,-109.729 to 46.079639,-109.650807 via car in North America pbf

Describe the bug
I am trying to setup graphhopper for USA from geofabrikhttp://download.geofabrik.de/north-america/us.html. I have added foot endcoder in config-example.yml. But I am unable to get route from 46.0838,-109.729 to 46.079639,-109.650807 via car. While https://graphhopper.com/maps/ gives successful route for same location.
To Reproduce
Steps to reproduce the behavior. For examples:

checkout recent and stable version of GraphHopper (master branch)
download from geofabrikhttp://download.geofabrik.de/north-america/us.html
run ./graphhopper.sh -a web -i us-latest.osm.pbf -o us-latest-gh
PointNotFound for 46.0838,-109.729

Instead of a manual reproduction it would be even better to have a unit or integration test reproducing the issue.
Expected behavior
get successful route from 46.0838,-109.729 to 46.079639,-109.650807

Please ask questions on our forum: https://discuss.graphhopper.com/
Such errors occur if the location is too far away from the road network.

I have already raised this question in forum but didn't get any response.
https://discuss.graphhopper.com/t/getting-pointnotfound-error-for-start-position-but-route-works-when-end-location-is-moved/5951
https://discuss.graphhopper.com/t/getting-pointnotfound-error-for-46-0838-109-729-in-gh-master-latest-code/5872


Show player interface (hp,cover, bullets, money)

What problem is this solving
when im trying to make simple clips from my past gameplay, it feels strange not to show player health points, money etc.
Proposed solution
i want to have the option to show the user interface during a video game, not sure if its possible (easy)
Describe alternatives you've considered
if not possible, maybe a custom user interface, with only HP, Cover?

ohh, my mistake, it seens like i just needed to disable this option