Bundle internationalization files with apps?

The documentation explains how to add internationalization to apps, via /etc/ood/config/locales/en.yml.
This works, but it mixes the translation strings of different apps in the same file, which makes it not so easy to maintain the file as apps are added/removed/updated.
Is there a way to ship internationalization files together with an app, say inside an i18n subfolder of the app, and have OOD read them from there when the app folder is copied to /var/www/ood/apps/sys ?
I see one can use the OOD_LOCALES_ROOT variable to tell OOD where to look for i18n files, but from the documentation I understand this is a global variable, rather than "per app"?
cc @matt-chan
┆Issue is synchronized with this Asana task by Unito

I see one can use the OOD_LOCALES_ROOT variable to tell OOD where to look for i18n files, but from the documentation I understand this is a global variable, rather than "per app"?

This could be per app if you set it in /etc/ood/config/apps//env for example /etc/ood/config/apps/dashboard/env just for the dashboard.

Note that things set in this env file only populate new environment variables and won't override existing ones. So if you set OOD_LOCALES_ROOT in nginx_stage, which is global, it won't be overwritten in the env file.

Hi @johrstrom,  thanks a lot for the quick reply!
Since there was a bit of confusion about what exactly I was asking, let me try to make an example using the bc_example_jupyter app:
From your replies, do I understand correctly that I should

create a config/locales folder in https://github.com/OSC/bc_example_jupyter
add config/locales/en.yml with strings to be translated
then refer to those strings e.g. from form.yml.erb via <%= I18n.t('bc_example_jupyter.my_string') %> (I noticed that <%= t() %> alone is not recognized in form.yml.erb)

If I do that, should the en.yml file be recognized automatically? (in my case it says translation missing: en.bc_example_jupyter.my_string)
Do I also need to add a file /etc/ood/config/apps/bc_example_jupyter/env with content
OOD_LOCALES_ROOT=/var/www/ood/apps/sys/bc_example_jupyter/config/locales

(also this does not seem to have an effect in my case)

I see, thanks for the clarification!

What's the problem you're trying to solve here - maybe localization isn't the right approach.

I was indeed looking into how we would go about providing a translation of the landing pages batch connect applications in a way that is maintainable.
What approach would you recommend for this - edit the /var/www/ood/apps/sys/dashboard/config/locales/*.yml files?

What approach would you recommend for this - edit the /var/www/ood/apps/sys/dashboard/config/locales/*.yml files?

No, these files will be overwritten when you re-install/update.  Seems like if you need translations, then you need to add them to /etc/ood/config/locales/*.yml (that being the easiest because again, you'll be editing 1 single file per locale, so it may as well be the default).

Great, thanks for the help!


refactor: use youtube controls for youtube videos

Pre-Flight checklist

[x] Screenshots and design review for any changes that affect layout or styling

[x] Desktop screenshots
[x] Mobile width screenshots

[x] Testing

[x] Code is tested
[x] Changes have been manually tested

What are the relevant tickets?
#490
What's this PR do?

Uses the youtube controls for the youtube based videos for the closed captioning support

How should this be manually tested?

Setup MitxOnline
Add a product page
Add a youtube URL in the video URL
Play the video and make sure the closed captioning support is available
Make sure that the design remains intact

Where should the reviewer start?
(Optional)
Any background context you want to provide?
We used video.js package in a recent PR(https://github.com/mitodl/mitxonline/pull/95) to support videos, but the closed captioning support was not added/enabled. So, we have now enabled youtube controls for that to make it similar to how it works in xPRO.
Reviewer Note:
  # As per https://github.com/mitodl/mitxonline/issues/490 we want to use the same controls of youtube in
  # case of youtube videos for supporting closed captions. We can do it in two possible ways:
  # 1) We add "Track" key of type `Captions` to the config with a hosted or static transcript file URL
  # 2) Or we can just disable `video.js` self controls and enable all the youtube controls for the youtube
  # based videos with embedded support for the closed captioning.
  # The solution in #2 is used below.

Screenshots (if appropriate)
After (Desktop)

After (Mobile)

Before (Desktop)

Before (Mobile)

FYI, @briangrossman & the reviewer:
While looking at the video.js package, There were these possibilities to add the captioning support for the player.

We can add "Track" key of type Captions to the config(As mentioned here) with a hosted or static transcript file URL. The drawback is that we will need to host our caption files on a server and serve them to video.js.
Or we can just disable video.js self-controls and enable all the youtube controls for the youtube based videos with embedded support for the closed captioning.

In this PR and as per mentioned in the ticket I've done it with option#2 above. If we want to follow option#1 we would need some other changes like adding a field for subtitle track URL in CMS, uploading the subtitles on a CDN/Server. And if we want to do this we can create another PR for enhancement.

Thanks, @arslanashraf7
Option#2 looks good to me. And the screenshots look good, too.
Can you confirm how YouTube captioning works? Is it correct that it will use automatic (YouTube-generated) captions by default, but we can override the captions with our own if we want to do so?


Gemini-pro Vision Supported?

How could we add Gemini pro vision model I am using vertexai environment?

It's not currently supported, but it I'll keeop this open as a feature request.

Also want to make a request on this. With Gemini Nano coming out very soon baked into the Chrome Browser from about v.127 (which will be excellent for this), it would be great to be able to fully run this locally using that model. I think it would be big for OpenUI in general to support this.


Unnable to run PL/SQL with bind variables

I have recently updated DBeaver to the 4.0.6 version, however I've had a persistent problem in executing a PL/SQL script with bind variables. But, this problem does not happen when I run the same script in SQL Developer, what makes me think the problem is in DBeaver.
I try to execute a script like the following example:
DECLARE V_IDSOMETHING NUMBER(18);

BEGIN

INSERT INTO [TABLE] ( [COLUMNS] ) VALUES( :NMSOMETHING, :NRSOMETHING )
RETURNING IDSOMETHING INTO V_IDSOMETHING;

COMMIT;
END;

However, I'm not prompted to fill any bind variable's value, instead this window is shown:

I tried running with both Execute SQL Statement and Execute Script options.
Apologies if this is something I might be doing wrong. I really appreciate DBeaver's efficiency and clean interface, and would like this possible bug to be known so it can be either fixed or ruled out.

Yes, parameters binding doesn't work inside PL/SQL blocks. This was made on purpose to avoid parameters in DDL statements.
I've made a better fix so parameters will work in anonymous blocks.

@serge-rider what is the workaround to bind parameters in a declare block?


Changelog

Does a changelog for stitches exist? I just saw that there was a major version bump but don't know what changed other than comparing commits https://github.com/christianalfoni/stitches/compare/v1.6.1...v2.0.0

Trying to update a changelog now in root of repo 😄


Move demos to packages, fix errors and lint.

Move demos code into packages so it stops breaking.
Ripples doesn't work because of each cleanup, Visualizer required hacking around private access to work.

:metal:


this.model inside FieldWrapper is empty

when you create a custom type and extend FieldWrapper, this.model inside this class is empty even if it has value in the host component
export class ChainWrapperComponent extends FieldWrapper {
 onClick(){
   console.log(this.model); // {}
   console.log(this.options.formState) // also empty
 }
}

Hi,
could you please provide a reproduction, using is our stackblitz starter example:
https://stackblitz.com/edit/ngx-formly-ui-bootstrap
Thanks!

ignore this reply as it just a side node for me
update this repo to refict the issue in entities/models/announcements.js


Users can register applications option

Hi,
In the User Settings option in the AD Blade the App Registrations allows the admin to decide whether non-admin users have the ability to register applications (Users can register applications). This doesn't seen to be reflected in Overview section within the article.

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

ID: 18bf18dd-016d-1949-06e7-b06d8240dd50
Version Independent ID: 5e32e1e0-9686-5a4d-f4b7-61c4a8a19afc
Content: Register your application to use Azure Active Directory
Content Source: articles/active-directory/manage-apps/developer-guidance-for-integrating-applications.md
Service: active-directory
Sub-service: app-mgmt
GitHub Login: @kenwith
Microsoft Alias: kenwith

@zjakub1
Thanks for your Question! We are currently investigating and will get back on this.

@zjakub1 Thank you for your feedback on this. We do have separate document for providing the information you requested however we have linked the same in the overview section for more clarity . The changes will go live in the next 48 hours. We will now close this issue.
Thank you.


Peer Review

Summary
This paper examines prediction of 2024 U.S presidential election using polling data from ‘FiveThirtyEight’. Writers used linear model to explain their prediction and they predicted victory for Trump due to his win in swing states.
Strong positive points

Abstract and Introduction are clear so it’s easy for reader to understand what they trying to do.
Explanation of variables are well performed

Critical improvements needed

Data and R not cited
Labels of box plots (figure 5 and 6) are hard to see

Suggestions for improvement:

Including justification of variables you used would be useful.
Write little more for results and discussion would be nice.

Evaluation
R appropriately cited: 0
Data appropriately cited: 0
Class paper: 1
LLM usage is documented: 1
Title: 2
Author, date, and repo: 2
Abstract: 4
Introduction: 3
Estimand: 1
Data: 8
Measurement: 3
Model: 8
Results: 6
Discussion: 6
Prose: 6
Cross-references: 1
Captions: 2
Graphs/tables/etc.: 2
Idealized methodology: 8
Idealized survey: 3
Pollster methodology overview and evaluation: 2
Referencing: 4
Commits: 2
Sketches: 2
Simulation: 3
Test: 8
Parquet: 1
Reproducible workflow: 3
Miscellaneous: 3
Estimated overall mark
95/126
Any other comments:
This is a good first draft. Please develop little more for discussion and results section.

Thank you for the review, to adress the points you raised we have made the following changes:

Added depth to the justification justification of variables we used
Expanded on our results and discussion
We also cited the Data and R
Made sure all the figures have captions and appropriate cross referencing.
Removed the box plots to violin plots of just the candidates we care most bout()Trump and Harris


Don't defer message if A-R header cannot be parsed

Don't defer a message if a A-R header cannot be parsed - just ignore it.
Addtionally try to correctly parse a valid A-R header with only 'none' in it.

Ok, changes done as you requested.


Implement caching for Annotations

Currently our caching setup assumes the underlying method takes exactly 1 argument, and that argument is a Pydantic object. Annotation takes a list of Pydantic objects, so I created a wrapper to hold that list. Also we already require all annotators to return a Pydantic object, so this is guaranteed to work with all annotators.
I tested this manually and it works. It is also exercised by expensive-tests via demo_04, and I verified that works as well.

It looks good, but I'm wondering if introducing the wrapper class PromptInteractionList solely for caching is a good idea. I feel like the inconsistency of using  PromptInteractionList vs. List[PromptInteraction] could be confusing.
An alternative to using the wrapper class could be to enable the cache to handle non-pydantic objects.
For example, using json to serialize & overloading it's default encoder:
def encode(object):
	if isinstance(object, BaseModel):
		return TypedData.from_instance(object).model_dump()

def _encode_request(request):
    return json.dumps(request, default=encode)

For example, using json to serialize & overloading it's default encoder:

My hope is to establish a pattern for what to do if the function you are caching doesn't fit Callable[[BaseModel], BaseModel]. While that encoder could work in this case, its less clear to me what we'd do if annotate_test_item needed to take in a second argument.

I feel like the inconsistency of using  PromptInteractionList vs. List[PromptInteraction] could be confusing

Would it make it better if PromptInteractionList were named something like AnnotateTestItemRequest and moved into simple_test_runner.py? That way it is more clear what this is being used for, and it is easier to extend in the future of annotate_test_item takes a second argument.

Ok that makes sense. Yeah lets go rename and move the wrapper in that cased.

Ok that makes sense. Yeah lets go rename and move the wrapper in that cased.

Done.


Helm does not wait for Statefulset to be ready after upgrade

Helm does not wait for Statefulset to be ready after upgrade to 3.6.3 from 3.3.1. I have tried using versions:

3.7.0 (does not work),
3.6.3 (does not work),
3.5.4 (works!),
3.3.1 (works!).

It seems that this behavior was introduced with: https://github.com/helm/helm/commit/98d98369ed9abcaec9b75352e07dd6f759a8804f
Helm 3.7.0 behavior - unexpected:
helm upgrade --install --reset-values XXX chart --version X.Y.Z --wait --timeout 900s --create-namespace --namespace dummy --values /tmp/helmfile351904154/XXX-values-6fd57cf55 ... --history-max 10 --debug
helm:whTHc> history.go:56: [debug] getting history for release XXX
helm:whTHc> upgrade.go:139: [debug] preparing upgrade for XXX
helm:whTHc> upgrade.go:488: [debug] resetting values to the chart's original version
helm:whTHc> upgrade.go:147: [debug] performing update for XXX
helm:whTHc> upgrade.go:319: [debug] creating upgraded release for XXX
helm:whTHc> client.go:218: [debug] checking 4 resources for changes
helm:whTHc> client.go:501: [debug] Looks like there are no changes for ConfigMap "XXX"
helm:whTHc> client.go:501: [debug] Looks like there are no changes for Service "XXX"
helm:whTHc> wait.go:48: [debug] beginning wait for 4 resources with timeout of 15m0s
helm:whTHc> upgrade.go:154: [debug] updating status for upgraded release for XXX
helm:whTHc> Release "XXX" has been upgraded. Happy Helming!
NAME: XXX
...

Helm 3.5.4 behavior - expected:
exec: helm upgrade --install --reset-values XXX chart --version X.Y.Z --wait --timeout 900s --create-namespace --namespace dummy --values /tmp/helmfile549477625/XXX-values-68c7579fb5 ... --history-max 10 --debug
helm:whTHc> history.go:56: [debug] getting history for release XXX
helm:whTHc> upgrade.go:123: [debug] preparing upgrade for XXX
helm:whTHc> upgrade.go:437: [debug] resetting values to the chart's original version
helm:whTHc> upgrade.go:131: [debug] performing update for XXX
helm:whTHc> upgrade.go:303: [debug] creating upgraded release for XXX
helm:whTHc> client.go:201: [debug] checking 4 resources for changes
helm:whTHc> client.go:464: [debug] Looks like there are no changes for PodDisruptionBudget "XXX"
helm:whTHc> client.go:464: [debug] Looks like there are no changes for ConfigMap "XXX"
helm:whTHc> client.go:464: [debug] Looks like there are no changes for Service "XXX"
helm:whTHc> wait.go:53: [debug] beginning wait for 4 resources with timeout of 15m0s
helm:whTHc> wait.go:348: [debug] StatefulSet is not ready: dummy/XXX. 0 out of 2 expected pods have been scheduled
helm:whTHc> wait.go:348: [debug] StatefulSet is not ready: dummy/XXX. 0 out of 2 expected pods have been scheduled
helm:whTHc> wait.go:348: [debug] StatefulSet is not ready: dummy/XXX. 0 out of 2 expected pods have been scheduled
helm:whTHc> wait.go:348: [debug] StatefulSet is not ready: dummy/XXX. 1 out of 2 expected pods have been scheduled
helm:whTHc> wait.go:348: [debug] StatefulSet is not ready: dummy/XXX. 1 out of 2 expected pods have been scheduled
...
helm:whTHc> wait.go:353: [debug] StatefulSet is not ready: dummy/XXX. 1 out of 2 expected pods are ready
helm:whTHc> wait.go:353: [debug] StatefulSet is not ready: dummy/XXX. 1 out of 2 expected pods are ready
...
helm:whTHc> upgrade.go:138: [debug] updating status for upgraded release for XXX
helm:whTHc> Release "XXX" has been upgraded. Happy Helming!
NAME: XXX

It's weird because I have similar releases of this chart where --wait works as expected. I do not know if it is relevant but release XXX was converted from Helm 2 release using 2to3 plugin a while ago.
Output of helm version:
version.BuildInfo{Version:"v3.7.0", GitCommit:"eeac83883cb4014fe60267ec6373570374ce770b", GitTreeState:"clean", GoVersion:"go1.16.8"}
Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.10", GitCommit:"8152330a2b6ca3621196e62966ef761b8f5a61bb", GitTreeState:"clean", BuildDate:"2021-08-11T18:06:15Z", GoVersion:"go1.15.15", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.9", GitCommit:"7a576bc3935a6b555e33346fd73ad77c925e9e4a", GitTreeState:"clean", BuildDate:"2021-07-15T20:56:38Z", GoVersion:"go1.15.14", Compiler:"gc", Platform:"linux/amd64"}
Cloud Provider/Platform (AKS, GKE, Minikube etc.):
AWS+Kops

Hi @libsamek. Thanks for looking into this.
Can you please provide an example to be used for testing? We need a way to reproduce the issue to try and determine the proper cause.

Hey @bacongobbler, it will probably take a couple of days to prepare an example. I'm not sure what is causing this because in most cases this is not an issue.

Good idea! I was thinking of doing something like that myself. I'll try reproducing this with a chart I can share. Currently, it's not a priority because we encountered this issue only in one case with StatefulSet. Anyhow, I'll try to find some time to reproduce this.

@dnwe, it seems that your fix is working! 🎉
It seems there is a race condition as you have assumed.
So, what do we need to do to get this merged into master?
Output:
helm:gbaiC> history.go:56: [debug] getting history for release XXX
helm:gbaiC> upgrade.go:139: [debug] preparing upgrade for XXX
helm:gbaiC> upgrade.go:491: [debug] resetting values to the chart's original version
helm:gbaiC> upgrade.go:147: [debug] performing update for XXX
helm:gbaiC> upgrade.go:319: [debug] creating upgraded release for XXX
helm:gbaiC> client.go:218: [debug] checking 4 resources for changes
helm:gbaiC> client.go:501: [debug] Looks like there are no changes for ConfigMap "XXX"
helm:gbaiC> client.go:501: [debug] Looks like there are no changes for Service "XXX"
helm:gbaiC> upgrade.go:383: [debug] waiting for release XXX resources (created=0, updated=4, deleted=0)
wait.go:48: [debug] beginning wait for 4 resources with timeout of 15m0s
helm:gbaiC> ready.go:362: [debug] StatefulSet is not ready: develop/XXX. update has not yet been observed
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 0 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 0 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 0 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 0 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 0 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 0 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 0 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 1 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 1 out of 2 expected pods have been scheduled
...
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 1 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:388: [debug] StatefulSet is not ready: develop/XXX. 1 out of 2 expected pods have been scheduled
helm:gbaiC> ready.go:393: [debug] StatefulSet is not ready: develop/XXX. 1 out of 2 expected pods are ready
helm:gbaiC> ready.go:393: [debug] StatefulSet is not ready: develop/XXX. 1 out of 2 expected pods are ready
helm:gbaiC> ready.go:393: [debug] StatefulSet is not ready: develop/XXX. 1 out of 2 expected pods are ready
...
helm:gbaiC> ready.go:402: [debug] StatefulSet is ready: develop/XXX. 2 out of 2 expected pods are ready
helm:gbaiC> upgrade.go:154: [debug] updating status for upgraded release for XXX
helm:gbaiC> Release "XXX" has been upgraded. Happy Helming!
NAME: XXX
LAST DEPLOYED: Mon Nov 22 15:13:03 2021

@bacongobbler I have also prepared a repository with information on how to reproduce this: https://github.com/libsamek/dummy.
Please let me know if this is sufficient.

Any news on this?
We see this issue as well and it hinders us from upgrading helm to the newer (>v3.5.4) versions. The issue seems to be a race condition (possibly introduced in 98d9836) as this only happens when running helm in-cluster when the kube api has really short response times. It is easily triggered by introducing and removing an artificial delay to the kube-api.
I can provide detailed information and a testing scenario to reproduce this if necessary.
The fix of @dnwe works great. It just misses some reviews from the maintainers to be merged back.

Any news on this?
We are in a similar position as mentioned by @jonny08152, we cannot upgrade Helm without this fix.
I am also prepared to help with testing if needed.

Fixed in Helm v3.9.1


Make it possible to express Visitor requirements

The pull request introduces a new method on the visitor interface:
  public Predicate[] getRequirements();

A visitor will only visit if and only if all predicates are satisfied by at least one node in the visitor path.


operator cass-operator-community (1.14.0)

Thanks for submitting your Operator. Please check the below list before you create your Pull Request.
New Submissions

[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?

[ ] Have you tested your Operator in all supported installation modes?
[ ] Have you considered whether you want to use semantic versioning order?
[ ] Is your submission signed?
[ ] Is operator icon set?

Updates to existing Operators

[ ] Did you create a ci.yaml file according to the update instructions?
[ ] Is your new CSV pointing to the previous version with the replaces property if you chose replaces-mode via the updateGraph property in ci.yaml?
[ ] Is your new CSV referenced in the appropriate channel defined in the package.yaml or annotations.yaml ?
[ ] Have you tested an update to your Operator when deployed via OLM?
[ ] Is your submission signed?

Your submission should not

[ ] Modify more than one operator
[ ] Modify an Operator you don't own
[ ] Rename an operator - please remove and add with a different name instead
[ ] Modify any files outside the above mentioned folders
[ ] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[ ] Description of the managed Application and where to find more information
[ ] Features and capabilities of your Operator and how to use it
[ ] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[ ] Human readable name and 1-liner description about your Operator
[ ] Valid category name1
[ ] One of the pre-defined capability levels2
[ ] Links to the maintainer, source code and documentation
[ ] Example templates for all Custom Resource Definitions intended to be used
[ ] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

/merge possible

/merge possible

/merge possible

/merge possible

/retest

I hate it when something that's not supposed to run fails (this version is marked as requiring 4.9 or higher, yet 4.8 test fails)

/merge possible

/merge possible


OpenAI organization and API key seem to be swapped in evaluate_qa.py

Thank you for raising the issue! We have fixed it.


Implement Pytorch's built-in AMP instead of APEX

Hello, would it be possible to utilize Pytorch 1.6.0's AMP for mixed precision training instead of APEX?
It would be easier to use, and I personally haven't managed to get APEX working.

@n00mkrad Hi Noomkrad! I'm trying to avoid Apex until there's more adoption of Pytorch 1.6. Using their AMP would mean forcing everyone to upgrade!


Refactor feature with empty refactor pane

Describe the Problem
coc-refactor opens an empty refactor buffer instead of one I can use to refactor code
To Reproduce
Steps to reproduce the behavior:

Open a php file
Put the cursor on the property
Trigger coc-refactor (in my case <leader>rf)
See empty buffer only containing "Save current buffer to make changes"

Expected behavior
A buffer assisting refactoring should show up (not sure how to call it ...)
Screenshots

Desktop (please complete the following information):

Xubuntu 19.10, vim 8.1.1401, latest release of coc.nvim

Additional context

The same feature works with rust rls
I bought a license to enable the rename feature of intelephense (the license is also recognized).

Edit: I did not assign this issue to you intentionally, so, sorry about that.

Closing this issue as the problem is in coc.nvim: https://github.com/neoclide/coc.nvim/pull/1286


Added ENV support

Added support for environment variables. We need this for DNS auth.

Hi there,
first off, thanks for the PR!
I'm not entirely sure wether the second commit (169f3d3) was actually meant to go to this PR, as it seems to completely alter the Repo 😬
f475849 looks OK, I will review it when the Question above is resolved.

Sorry had a little git SNAFU. Reverted


http -> https redirects

http://foo.readthedocs.org should redirect to https://foo.readthedocs.org.

This looks like a dupe of #3282.


Added detailed deletion metrics

For accounting purposes, I need to have a fine grained visibility on the number of points deleted by a particular user. This change reports in Sensision the count of deleted points associated to the owner (and app if present).
This is optional (and disabled by default) for the HBase version, and always active for the standalone version.

Thanks for the PR


Added "Rating and Feedback" in the Master Typing Game

PR Description 📜
Summary -

I have added a "RATING/FEEDBACK" prompt structure when the game ends.
I have added a logic to display the rating prompt, select a rating, and handle submission or cancellation.
Allows players to rate the game from 1 to 5 stars. On submitting the rating it will show a thankyou message.
Canceling the rating will hide the prompt without saving feedback.

Fixes #3380

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[ ] I have added entries for my game in main README.md
[ ] I have added README.md in my folder
[ ] I have added working video of the game in README.md (optional)
[x] I have specified the respective issue number for which I have requested the new game.

Screenshot of "Rating and Feedback Form" 📸

Thank you soo much for contributing to our repository 💗

@ShristiiSharma resolve the changes then you are good to go !

@kunjgit I have resolved the conflicts. If any further changes are needed, please let me know.

Thank you  @ShristiiSharma , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


Distinction between exists-at and occupies-temporal-region is unclear

From<EMAIL_ADDRESS>on July 25, 2012 10:56:53
Barry says the difference is that occupies-temporal-region is maximal extent, where as exists-at doesn't have that property.  Needs to get added to documentation.
Original issue: http://code.google.com/p/bfo/issues/detail?id=116

From<EMAIL_ADDRESS>on August 13, 2012 21:58:33
Agreed. Will check that next version of reference makes this clear, and that the comments make it to the OWL.
Status: Accepted
Owner<EMAIL_ADDRESS>Labels: -Type-BFO2-OWL Type-BFO2-Reference


Analytics Request

Currently adding any custom JS/CSS means, the person has to manually fork and edit the code, would request for an environment variable which can take the source of a JS/CSS file to be included at <head>
Proposal can be: PASTY_CUSTOM_CSS and PASTY_CUSTOM_JS which would hold values to URLs having the JS/CSS respectively.

Hello.
Thank you for your idea!
I personally think that this feature would bloat pasty a bit too much, but I'll suggest an alternative:
You actually don't have to fork and re-compile the whole project to inject custom CSS/JS or perform any other modifications to the frontend as it is a simple folder inside the Docker container.
You can just manually mount this exact folder using Docker volumes and perform any modifications directly in the frontend code itself without having to re-compile or re-deploy the service.
If you need any further advice feel free to ask in this issue ^^

A Discord conversation led to following proposal:
A custom CSS/JS folder one can mount to the Docker container which allows injection of custom CSS/JS files.


readme: more professional styling on the roadmap section

"Right now the main goal of brutal is to run doom." sounds like a child wrote it

sounds like a child wrote it

What do you mean by that ?

Its all lowercase

the main goal of brutal is to run doom.

no we're not porting doom right now, its not milestone 6

What if we want to re-find our inner child ?
Brutal doesn't want to be professional so who cares really ?
Imagine making an os to look like an adult big meme :^)

💀


How could I use a struct as a parameter ?

What would you like to be added:
Define a struct as a parameter
Why is this needed:
When I'd like to use node-affinity or tolerations in my operatorVersions, parameter type string is not easy to achieve.

Hi @abmybgx would you mind proposing a syntax for this? Would love to see your thoughts here.

Closing in favour of #1221 which has more traction. Please reopen if you think this is something else.

@porridge Is the function would be ready on v0.11 release, and how to use it?

@abmybgx there are 3 pieces to this feature w.r.t. your use case:

ability to create parameters of type map - will be in 0.11, but AFAIK is undocumented (right @nfnt?). You can use this test operator as an example though.
ability to dump a parameter value as YAML inside a template - will also be in 0.11 and documentation for it will appear in the canonical place right after the release. For now you can see it on this preview site but basically it's to be used identically like the function with the same name in Helm.
ability to conveniently pass complex parameter values into kubectl kudo - unlikely to be merged in time for the 0.11 release, and I'm only starting to write the docs today. However you should be able to still pass them in JSON format (which is a subset of YAML) on the --parameter flag.

@porridge Thanks for your comment. And what about the case of below?
tolerations:
- key: xxx
   value: xxx
   operator: xxx
   effect: xxx
- key
   value
   operator:
   effect:

@abmybgx what is the question exactly? FWIW this is not valid YAML, but something like this would be allowed, once KEP-26 implementation is merged (probably in kudo 0.12.x). If you rewrite this in JSON format it should also work in 0.11, I think.

@porridge I mean maybe I need a param named tolerations and how could I mapping the struct like that?  Did mean the below is usable now?
tolerations:
- key: {json}
- key: {json}

@abmybgx no, because currently there is nowhere you could put the above document in.
What I mean is that the following should be usable:
kubectl kudo update --instance=foo --parameter 'tolerations=[{"key": {"value": 1, "operator": "eq", "effect": 3}}, {"key": {"value": 5, "operator": "le", "effect": 6}}]'


Made WorldGeneratorInfo available to modules [GCI2016]

Made WorldGeneratorInfo available to modules for my interface screen to work. Refer to this PR --> https://github.com/Terasology/Sample/pull/25

Can one of the admins please verify this patch?


Different usage of daily_rates in daily_spend vs cost_per_query

Hey folks!
I've noticed that in the cost_per_query model you have an extra inner join on current_rates.is_latest_rate, which is not the case in the daily_spend model. As a result, we attribute some cost to even the most recent queries, but when looking at daily_spend some days could be missing.
In our case, at the time of running the models from the package today (2023-02-02), we didn't have a daily rate for 2023-02-01 in SNOWFLAKE.ORGANIZATION_USAGE.RATE_SHEET_DAILY and that means that both 2023-02-01 and 2023-02-02 are currently missing from daily_spend. It's not a big deal of course, but I thought it was still worth reporting.
Thanks!

Hey @john-jerome , thanks for reaching out.
Your observations are correct, we added the extra join in cost_per_query so that model wouldn't be held up by missing rates and we would have queries from the most recent hour. We never ended up adding the same strategy to daily_spend because we only include records for days with complete data, and we normally have a daily rate for the last day. But in this case it seems like snowflake is delayed on populating that, so we could use that strategy there as well.
This should be rare, but nonetheless clearly possible.
I'm gonna open up a new issue to capture that potential improvement. Thanks for flagging!


need to setup valid certificate for microservice

The newly deployed microservice is responding on cmsweb-testbed, e.g.
scurl https://cmsweb-testbed.cern.ch/microservice/data/status
{"result": [
 {"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}

but I can't place post request to query WQ, e.g.
scurl -X POST -H "Content-type: application/json" -d '{"request":{"process":"assignment-approved"}}'
https://cmsweb-testbed.cern.ch/microservice/data

produces the following traceback
[29/Nov/2017:13:30:42] vocms0131.cern.ch <IP_ADDRESS> "POST /microservice/data HTTP/1.1" 200 OK [data: 4299 in
42 out 392722 us ] [auth: OK "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=valya/CN=443502/CN=Valentin Y
Kuznetsov" "" ] [ref: "" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18
libssh2/1.4.2" ]
Traceback (most recent call last):
  File
"/data/srv/beHG1712b/sw/slc6_amd64_gcc493/cms/reqmgr2ms/0.0.2/lib/python2.7/site-packages/WMCore/Services/MicroSe
rvice/Unified/TaskManager.py", line 130, in run
    func(*args, **kwargs)
  File
"/data/srv/beHG1712b/sw/slc6_amd64_gcc493/cms/reqmgr2ms/0.0.2/lib/python2.7/site-packages/WMCore/Services/MicroSe
rvice/Unified/Transferor.py", line 216, in process
    requests = requestsInfo(state)
  File
"/data/srv/beHG1712b/sw/slc6_amd64_gcc493/cms/reqmgr2ms/0.0.2/lib/python2.7/site-packages/WMCore/Services/MicroSe
rvice/Unified/RequestInfo.py", line 385, in requestsInfo
    requestJobs = workqueueRequests(state)
  File
"/data/srv/beHG1712b/sw/slc6_amd64_gcc493/cms/reqmgr2ms/0.0.2/lib/python2.7/site-packages/WMCore/Services/MicroSe
rvice/Unified/RequestInfo.py", line 372, in workqueueRequests
    data = mgr.getdata(url, params=params, headers=headers, cert=cert(), ckey=ckey())
  File
"/data/srv/beHG1712b/sw/slc6_amd64_gcc493/cms/reqmgr2ms/0.0.2/lib/python2.7/site-packages/WMCore/Services/pycurl_
manager.py", line 262, in getdata
    verbose=verbose, ckey=ckey, cert=cert, doseq=doseq, cookie=cookie)
  File
"/data/srv/beHG1712b/sw/slc6_amd64_gcc493/cms/reqmgr2ms/0.0.2/lib/python2.7/site-packages/WMCore/Services/pycurl_
manager.py", line 252, in request
    raise exc
HTTPException:
url=https://cmsweb.cern.ch/couchdb/workqueue/_design/WorkQueue/_view/jobsByRequest?group=true&reduce=true,
code=403, reason=Forbidden, headers={'Date': 'Wed, 29 Nov 2017 12:30:42 GMT', 'Transfer-Encoding': 'chunked',
'Content-Type': 'text/html', 'CMS-Server-Time': 'D=3028 t=1511958642511950', 'Server': 'Apache'

So, my question is how do we need to configure microservice that it will be
allowed to query WQ and ReqMgr2? My understanding that we need a valid proxy or
host certificate but it looks like it is not the case on microservice backend
(vocms0131).

Checking the services that use dmwm-service-key.pem and dmwm-service-cert.pem
cfg]$ grep -rn dmwm-service- ./* | grep manage
/acdcserver/acdcserver_manage:45:  if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./acdcserver/acdcserver_manage:46:    export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./acdcserver/acdcserver_manage:47:    export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./crabcache/manage:39:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./crabcache/manage:40:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./crabcache/manage:41:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./crabserver/manage:39:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./crabserver/manage:40:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./crabserver/manage:41:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./reqmgr/manage:48:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./reqmgr/manage:49:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./reqmgr/manage:50:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./reqmgr2/manage:50:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./reqmgr2/manage:51:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./reqmgr2/manage:52:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./reqmgr2ms/manage:50:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./reqmgr2ms/manage:51:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./reqmgr2ms/manage:52:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./reqmon/manage:48:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./reqmon/manage:49:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./reqmon/manage:50:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./t0_reqmon/manage:48:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./t0_reqmon/manage:49:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./t0_reqmon/manage:50:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
./workqueue/manage:51:if [ -e $AUTHDIR/dmwm-service-cert.pem ] && [ -e $AUTHDIR/dmwm-service-key.pem ]; then
./workqueue/manage:52:  export X509_USER_CERT=$AUTHDIR/dmwm-service-cert.pem
./workqueue/manage:53:  export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
I found that excepting reqmgr2ms all services have those certificates copied in its
/data/srv/current/auth/ directory
ls -l /data/srv/current/auth/
total 84
drwxr-x---. 2 cmsweb _acdcserver   4096 Dec  9  2016 acdcserver
drwxr-x---. 2 cmsweb _bigcouch     4096 Dec  9  2016 bigcouch
drwxr-x---. 2 cmsweb _confdb       4096 Dec  9  2016 confdb
drwxr-x---. 2 cmsweb _couchdb      4096 Dec  9  2016 couchdb
drwxr-x---. 2 cmsweb _crabserver   4096 Dec  9  2016 crabserver
drwxr-x---. 2 cmsweb _dbs          4096 Dec  9  2016 dbs
drwxr-x---. 2 cmsweb _dbsmigration 4096 Dec  9  2016 dbsmigration
drwxr-x---. 2 cmsweb _dmwmmon      4096 Dec  9  2016 dmwmmon
drwxr-x---. 2 cmsweb _dqmgui       4096 Dec  9  2016 dqmgui
drwxr-x---. 2 cmsweb _phedex       4096 Dec  9  2016 phedex
drwxr-x---. 2 cmsweb _popdbweb     4096 Dec  9  2016 popdbweb
drwxrwx---. 2 cmsweb _config       4096 Nov 29 18:03 proxy
drwxr-x---. 2 cmsweb _reqmgr       4096 Dec  9  2016 reqmgr
drwxr-x---. 2 cmsweb _reqmgr2      4096 Dec  9  2016 reqmgr2
drwxr-x---. 2 cmsweb _reqmon       4096 Dec  9  2016 reqmon
drwxr-x---. 2 cmsweb _sitedb       4096 Mar 17  2017 sitedb
drwxr-x---. 2 cmsweb _t0_reqmon    4096 Dec  9  2016 t0_reqmon
drwxr-x---. 2 cmsweb _t0wmadatasvc 4096 Feb 13  2017 t0wmadatasvc
drwxr-x---. 2 cmsweb _victorweb    4096 Dec  9  2016 victorweb
drwxr-x---. 2 cmsweb _config       4096 Dec  9  2016 wmcore-auth
drwxr-x---. 2 cmsweb _workqueue    4096 Dec  9  2016 workqueue
Additionally, even when /data/cfg/reqmgr2ms/manage points to the
AUTHDIR=$TOP/current/auth/reqmgr2 when the certificates are,
I saw that the owner and group of /data/srv/current/auth/reqmgr2 are cmsweb and _reqmgr2.
drwxr-x---. 2 cmsweb _reqmgr2      4096 Dec  9  2016 reqmgr2
And _reqmgr2ms are not into the reqmgr2 group.
cat /etc/group | grep reqmgr2 _reqmgr2:x:100048:cmsweb
So, this could be affecting the access to dmwcore certificates.
I also, checked that reqmgr2ms user are into the group _config.
cat /etc/group | grep config _config:x:100000:_confdb,_couchdb,_empty,_bigcouch,_auth,_config,_phedex,_sitedb,_dqmgui,_gitweb,_reqmon,_mongodb,_dmwmmon,_das,_dbs,_workqueue,_t0_reqmon,_popdbweb,_sw,_crabserver,_reqmgr,_t0wmadatasvc,_frontend,_crabcache,_overview,_reqmgr2,_acdcserver,_dbsmigration,_victorweb,cmsweb,_admin,_reqmgr2ms
Then, I think that we can try creating the certificate directory for
reqmgr2ms into /data/srv/current/auth/ and copied wmcore certificates there.

@h4d4 Lina, could you then change manually the following

create reqmgr2ms area in /data/srv/current/auth/ with proper permissions
copy certs over there
assign reqmgr2ms group to this area
change reqmgr2ms manage script to set AUTHDIR=$TOP/current/auth/reqmgr2ms
then restart the service and let us know
Then I can try to test if requests are coming through.
Thanks,
Valentin.

@vkuznet I did the changes, please test and let me know how it's going.
Thnaks, Lina.

Lina,
something is not right. I still get the same error. Could you please list
/data/srv/current/auth/reqmgr2ms area since I don't have permission. Also let me know
if you restarted the service? And, it would be easier to debug if you'll
just add printouts to reqmgr2ms/manage script, e.g.
echo "$X509_USER_KEY"
echo "$X509_USER_CERT"
after they're setup (after if block where they set).
Please report here.
Best,
Valentin.
On  0, Lina Jiménez<EMAIL_ADDRESS>wrote:

@vkuznet I did the changes, please test and let me know how it's going.
Thnaks, Lina.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/issues/8370#issuecomment-348159206

Valentin, I think we should test it ourselves and only ask Lina if we really cannot catch these problems in dev.

Alan,
I'll be happy to do it if I either get spare VM or somebody give me proper
certificates, on my VM I have:
sudo -H -u _reqmgr2ms bashs -l -c "curl --cert /data/srv/current/auth/reqmgr2ms/dmwm-service-cert.pem --key /data/srv/current/auth/reqmgr2ms/dmwm-service-key.pem https://cmsweb.cern.ch/sitedb"
curl: (58) unable to load client cert: -8018 (SEC_ERROR_UNKNOWN_PKCS11_ERROR)

On  0, Alan Malta Rodrigues<EMAIL_ADDRESS>wrote:

Valentin, I think we should test it ourselves and only ask Lina if we really cannot catch these problems in dev.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/issues/8370#issuecomment-348179081

If you need more developments VM in your openstack personal project, then you should contact Daniel (VOC) and ask for it. Since you work on several different projects, I don't think they would deny your request :)
About these pem files. Are you using a real service certificate (or your proxy file)? Or is it just a fake file created during the deployment? Or is it in the cmsweb-testbed backend (needless to say, that is NOT the purpose of cmsweb-testbed...)?

@vkuznet
In case that this can help:
Below the current status of /data/srv/current/auth/reqmgr2ms
ls -lash /data/srv/current/auth/ | grep reqmgr2ms
4.0K drwxr-x---.  2 cmsweb _reqmgr2ms    4.0K Nov 30 11:32 reqmgr2ms
ls -lash /data/srv/current/auth/reqmgr2ms
total 16K
4.0K drwxr-x---.  2 cmsweb _reqmgr2ms 4.0K Nov 30 11:32 .
4.0K drwxr-x---. 24 cmsweb _config    4.0K Nov 30 11:25 ..
4.0K -r--r-----.  1 cmsweb _reqmgr2ms 3.0K Nov 30 11:32 dmwm-service-cert.pem
4.0K -r--r-----.  1 cmsweb _reqmgr2ms 1.7K Nov 30 11:32 dmwm-service-key.pem
And below the value for the variables $AUTHDIR, $X509_USER_KEY, $X509_USER_CERT, set into /data/srv/current/config/reqmgr2ms/manage
[cmsweb@vocms0131 auth]$ less /data/srv/current/config/reqmgr2ms/manage | grep  AUTHDIR
AUTHDIR=$TOP/current/auth/reqmgr2ms
[cmsweb@vocms0131 auth]$ less /data/srv/current/config/reqmgr2ms/manage | grep X509_USER_KEY
export X509_USER_KEY=$AUTHDIR/dmwm-service-key.pem
[cmsweb@vocms0131 auth]$ less /data/srv/current/config/reqmgr2ms/manage | grep X509_USER_CERT
[cmsweb@vocms0131 auth]$ less /data/srv/current/config/reqmgr2ms/manage | grep X509_USER_CERT
I also restarted the service.
Best Regards, Lina.

ok, I tested service in my VM using my personal certificates which I placed
in /data/srv/current/auth/reqmgr2ms/ area as
/data/srv/current/auth/reqmgr2ms/dmwm-service-key.pem
/data/srv/current/auth/reqmgr2ms/dmwm-service-cert.pem

With this setup everything works. Here is PR for manage script changes
which I requested Lina to already apply for cmsweb-testbed:
https://github.com/dmwm/deployment/pull/566
With this change everything works in my VM (!!!).
Now, on cmsweb-testbed there is somewhere misconfiguration since now I even
can't access the service. The following call
scurl https://cmsweb-testbed.cern.ch/microservice/data/status

worked (here scurl is an alias to curl --key mykey --cert mycert)
and now it stopped working. The original output was
{"result": [
 {"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}

and now I'm getting
The site you requested is not available.

CMS scheduled interventions page lists planned CMS and CERN service downtimes and known site-wide computing system incidents. Planned updates are notified on the CERN computing announcements forum.

Would you please be so kind and create a ticket to"CMS Web Tools" support unit if this interruption was unexpected?

It is obvious misbehavior of cmsweb-testbed frontend. But I can't check it since
I don't have permission to cmsweb-testebed frontend nodes (vocms0134|vocms0135).
@h4d4, Lina, sorry but your help to resolve this issue is required.
Either provide me access to cmsweb-testbed frontends that I can see why requests
are failing or do it yourself via
curl -k --key ~/.globus/userkey.pem --cert ~/.globus/usercert.pem https://cmsweb-testbed.cern.ch/microservice/data/status

call which should work since service is running on backend.
On  0, Lina Jiménez<EMAIL_ADDRESS>wrote:

@vkuznet I did the changes, please test and let me know how it's going.
Thnaks, Lina.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/issues/8370#issuecomment-348159206

Lina, For the initial permission problem, what is the cert DN reqmgr2ms is using? If it is the same as other services in cmsweb it should have following group and role in sitedb.
"facops", "web-service"
https://github.com/dmwm/WMCore/blob/master/src/couchapps/WorkQueue/validate_doc_update.js#L18

@vkuznet I've given you access to vocms0134 and vocms0135 the testbed fronted machines

Lina,
here is the issue:

the frontend yields 503 (HTTP Service unavailable) error
[30/Nov/2017:16:21:55 +0100] cmsweb-testbed.cern.ch <IP_ADDRESS> "GET /microservice/data/status HTTP/1.1" 503 [data: 5919 in 18003 out 1359 body 21556 us ] [auth: TLSv1.2 DHE-RSA-AES128-GCM-SHA256 "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=valya/CN=443502/CN=Valentin Y Kuznetsov" "-" ] [ref: "-" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2" ]
the backend complains about authz that front-end not present proper headers
[30/Nov/2017:18:19:13]  ERROR: authz denied, front-end headers not present
and the backend allows monitoring call
[30/Nov/2017:18:19:28] vocms0131.cern.ch <IP_ADDRESS> "GET /microservice/data/status HTTP/1.1" 200 OK [data: 344 in 104 out 956 us ] [auth: OK "" "" ] [ref: "" "ServerMonitor/2.0" ]
but it does not allow my local curl call
[30/Nov/2017:18:19:13] vocms0131.cern.ch <IP_ADDRESS> "GET /microservice/data/status HTTP/1.1" 403 Forbidden [data: 191 in 751 out 684 us ] [auth: - "" "" ] [ref: "" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2" ]
Please note that the last two are identical in terms of calls the only
difference is that one comes from a monitoring daemon and another from my curl
call.

I think it is permission problem somewhere on backend.
Can we restart the service again. I want to see if local curl call will pass
through after fresh restart.
Thanks,
Valentin.
On  0, Lina Jiménez<EMAIL_ADDRESS>wrote:

@vkuznet I've given you access to vocms0134 and vocms0135 the testbed fronted machines
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/issues/8370#issuecomment-348248838

@vkuznet Hello Valentin I've just restart the service.
Best regards, Lina.

Lina,
I doubt that you restarted proper one.
According to vocms0131:/data/srv/logs/reqmgr2ms/reqmgr2ms-20171130.log
the reqmgr2ms data-service last time was restarted at 30/Nov/2017:14:35:54
So, I don't know what you restarted but certainly it is not what I'm looking for.
Please provide details and check that you indeed restart reqmgr2ms on vocms0131.
Thanks,
Valentin.
On  0, Lina Jiménez<EMAIL_ADDRESS>wrote:

@vkuznet Hello Valentin I've just restart the service.
Best regards, Lina.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/issues/8370#issuecomment-348262921

Now I think I understand what's going on. It seems to me we had two instances running on vocms0131. One feed /data/srv/logs/reqmgr2ms/reqmgr2ms-20171130.log log and it ended at 30/Nov/2017:19:38:10 and another feed /data/srv/logs/reqmgr2ms/reqmgr2-20171130.log which still runs. According to first log it was killed, then the second instance was allowed to run. Even though I don't know how in this case the ports were handled.
I think that's it's partially my fault since I asked Lina to manually change things and at the end we end-up with different logs and messy situation. Sorry for that.
Anyhow, I created PR: https://github.com/dmwm/deployment/pull/566 which I suggest Lina will merge and deploy again the service with it. It addresses missing Unified config files and contains proper log names, X509 settings, etc.
Lina, can you do that? It would be nice to remove logs from /data/srv/logs/reqmgr2ms/ to avoid further confusion.
Let me know.

@vkuznet
Hello Valentin,
for now I deleted the reqmgr2ms logs, let me review the changes to redeploy it.
I'll keep you posted.
Best Regards, Lina.

@h4d4 Lina, did you get chance to work on reqmgr2ms issue. I tried again and I can't pass the frontend. Here is frontend entry for this call https://cmsweb-testbed.cern.ch/microservice/data/status
[07/Dec/2017:16:29:49 +0100] cmsweb-testbed.cern.ch 2001:1458:201:a4::100:17a "GET /microservice/data/status HTTP/1.1" 503 [data: 5919 in 18002 out 1359 body 7010 us ] [auth: TLSv1.2 DHE-RSA-AES128-GCM-SHA256 "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=valya/CN=443502/CN=Valentin Y Kuznetsov" "-" ] [ref: "-" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2" ]

and here is what back end says:
[07/Dec/2017:16:30:42]  ERROR: authz denied, front-end headers not present
[07/Dec/2017:16:30:42] vocms0131.cern.ch <IP_ADDRESS> "GET /microservice/data/status HTTP/1.1" 403 Forbidden [data: 191 in 751 out 23522 us ] [auth: - "" "" ] [ref: "" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2" ]

To me it is issue with frontend configuration.

@h4d4  LIna, did you fix anything?
It seems it is working for me.
https://cmsweb-testbed.cern.ch/microservice/data/status
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
https://cmsweb-testbed.cern.ch/microservice/data
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
@vkuznet, Valentin, Are they (2 REST apis above) supposed to give the same result?
One weird thing is initially it gave me Service unavailable but by resending it I can get the reply.

Hi,
yes service is working, but I think it is configured to talk to 2 backends
as reqmgr2 and only one backend has it. Therefore time to time due to round
robin we hit a backend which does not have it.
But I did checked that when I hit proper backend I got correct behavior:
getWorkflows: 49.6 sec
dbsInfo: 22.5 sec
phedexInfo: 11.0 sec
eventsLumisInfo: 13.7 sec
So this is correct response on backend.
I think we agreed that it will only run on single backend and therefore
we'll need to adjust frontend rules correctly only to forward request to
specific backend.
Best,
Valentin.
On  0, ticoann<EMAIL_ADDRESS>wrote:

@h4d4  LIna, did you fix anything?
It seems it is working for me.
https://cmsweb-testbed.cern.ch/microservice/data/status
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
https://cmsweb-testbed.cern.ch/microservice/data
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
@vkuznet, Valentin, Are they (2 REST apis above) supposed to give the same result?
One weird thing is initially it gave me Service unavailable but by resending it I can get the reply.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/issues/8370#issuecomment-350035350

@vkuznet @ticoann
Hello,
Regarding to those Valentin's suggestions[1].
I merged the PR #566 that Valentin did, and deleted the reqmgr2ms logs as he proposed, but I not redeployed on testbed yet. Last Thursday was the Production upgrade, so I decide to wait for this redeploy in testbed.
Then, I'll do it the next Monday. I'll let you know once the deployment is done.
Best Regards, Lina.
[1]
Anyhow, I created PR: dmwm/deployment#566 which I suggest Lina will merge and deploy again the service with it. It addresses missing Unified config files and contains proper log names, X509 settings, etc.
Lina, can you do that? It would be nice to remove logs from /data/srv/logs/reqmgr2ms/ to avoid further confusion.

@vkuznet
Hello Valentin,
I've re-deployed on testbed including the PR #566.
I've also create reqmgr2ms area in /data/srv/current/auth/ with proper permissions, including the dmwm certificates.
This is the part of the output when reqmgr2ms starts[1]
When I do:
https://cmsweb-testbed.cern.ch/microservice/data/status
I got:
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
When I do
https://cmsweb-testbed.cern.ch/microservice/data:
I got:
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
Please, test it and let me know how it's going.
Best Regards, Lina.
[1]
starting reqmgr2ms
X509_USER_CERT=/data/srv/current/auth/reqmgr2ms/dmwm-service-cert.pem
X509_USER_KEY=/data/srv/current/auth/reqmgr2ms/dmwm-service-key.pem

Lina,
thanks, now as far as I can tell everything work as expected. I was able to
query the service via GET request as you shown and also placed a POST request.
We can close the ticket.
Thanks again for your help.
Best,
Valentin.
On  0, Lina Jiménez<EMAIL_ADDRESS>wrote:

@vkuznet
Hello Valentin,
I've re-deployed on testbed including the PR #566.
I've also create reqmgr2ms area in /data/srv/current/auth/ with proper permissions, including the dmwm certificates.
This is the part of the output when reqmgr2ms starts[1]
When I do:
https://cmsweb-testbed.cern.ch/microservice/data/status
I got:
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
When I do
https://cmsweb-testbed.cern.ch/microservice/data:
I got:
{"result": [
{"microservice": "UnifiedTransferorManager", "request": {}, "results": {"status": {}}}
]}
Please, test it and let me know how it's going.
Best Regards, Lina.
[1]
starting reqmgr2ms
X509_USER_CERT=/data/srv/current/auth/reqmgr2ms/dmwm-service-cert.pem
X509_USER_KEY=/data/srv/current/auth/reqmgr2ms/dmwm-service-key.pem
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/issues/8370#issuecomment-350738787


Prevent non-number in aggregate function

I think aggregation on string should not be possible because it leads to weird/unpredictable results:

I have started to work today on a patch that return a blank value when the input data is not a number (using typeof(val) === 'number' because strings like '012' are also unpredictable)
What do you think? Should I submit a PR?

@ValentinH  Any luck with this patch? It would definitely be useful.

Created a patch that I will PR. Creates a new "none" aggregateFunc option to allow using text fields.


API Management service SKU API documentation

Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[x] The OpenAPI Hub was used for checking validation status and next steps.

Automation for azure-sdk-for-js
A PR has been created for you based on this PR content.
Once this PR will be merged, content will be added to your service PR:
https://github.com/Azure/azure-sdk-for-js/pull/491

Automation for azure-sdk-for-python

Automation for azure-sdk-for-java

Automation for azure-sdk-for-node


FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

Version
3.2.2
Reproduction link
http://localhost/
Environment info
vue info
Usage: vue <command> [options]

Options:
  -V, --version                              output the version number
  -h, --help                                 output usage information

Commands:
  create [options] <app-name>                create a new project powered by vue-cli-service
  add [options] <plugin> [pluginOptions]     install a plugin and invoke its generator in an already created project
  invoke [options] <plugin> [pluginOptions]  invoke the generator of a plugin in an already created project
  inspect [options] [paths...]               inspect the webpack config in a project with vue-cli-service
  serve [options] [entry]                    serve a .js or .vue file in development mode with zero config
  build [options] [entry]                    build a .js or .vue file in production mode with zero config
  ui [options]                               start and open the vue-cli ui
  init [options] <template> <app-name>       generate a project from a remote template (legacy API, requires @vue/cli-init)
  config [options] [value]                   inspect and modify the config
  upgrade [semverLevel]                      upgrade vue cli service / plugins (default semverLevel: minor)

  Run vue <command> --help for detailed usage of given command.

  Unknown command info.

Steps to reproduce
import a json file of size 367M
What is expected?
data is loaded
What is actually happening?
fails to serve

I cant seem to find a way to increase the memory limit (my device has more than enough ram, I think the webpack server limits how much it can take)?

See https://github.com/vuejs/vue-cli/issues/1453


treewide: remove unnecessary dontGzipMan

Both packages compress the man pages with gzip, but
setup-hooks/compress-man-pages.sh correctly detects that and does not
try to compress them again.
Related to #134881, but does not depend on it.

Motivation for this change
https://github.com/NixOS/nixpkgs/pull/134881#issuecomment-902722175
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip" (1 package failed, but it seems unrelated)
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 134963 run on x86_64-linux 1

1 package failed to build:

meli

17 packages built:

aerc
afew
alot (python39Packages.alot)
astroid
haskellPackages.notmuch
i3status-rust
lieer
muchsync
neomutt
notmuch
notmuch-addrlookup
python38Packages.alot
python38Packages.notmuch
python38Packages.notmuch2
python39Packages.notmuch
python39Packages.notmuch2
vym


PublishTestResults is marked as "succeeded" if dotnet app throws exception

Required Information
Question, Bug, or Feature?
Type: Bug
Enter Task Name: PublishTestResults
Environment

Server - Azure Pipelines or TFS on-premises? Azure Pipelines

If using Azure Pipelines, provide the account name, team project name, build definition name/build number: https://dev.azure.com/azure-sdk/public/_build/results?buildId=203814

Agent - Hosted or Private: Hosted

Issue Description
If the dotnet portion of the PublishTestResults task throws an exception, the task is marked as succeeded when it should be marked as failed.  The current behavior masks failures in the dotnet portion of the task.
Related: https://github.com/microsoft/azure-pipelines-tasks/issues/11925
Task logs
log_147_203814.zip
Error logs
2019-12-05T18:20:40.0049465Z ##[debug]Reading test results from file 'sdk/appconfiguration/app-configuration/test-results.xml'.
2019-12-05T18:20:40.0347004Z Failed to parse result files: System.IO.DirectoryNotFoundException: Could not find a part of the path '/home/vsts/agents/2.160.1/bin/sdk/appconfiguration/app-configuration/test-results.xml'.
   at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func`2 errorRewriter)
   at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
   at System.Xml.XmlDownloadManager.GetStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)
   at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)
   at System.Xml.XmlTextReaderImpl.FinishInitUriString()
   at System.Xml.XmlTextReaderImpl..ctor(String uriStr, XmlReaderSettings settings, XmlParserContext context, XmlResolver uriResolver)
   at System.Xml.XmlReaderSettings.CreateReader(String inputUri, XmlParserContext inputContext)
   at Microsoft.TeamFoundation.TestClient.PublishTestResults.JUnitResultParser.ReadFile(String filePath, XmlDocument doc)
   at Microsoft.TeamFoundation.TestClient.PublishTestResults.JUnitResultParser.ParseTestResultFile(TestRunContext runContext, String filePath)
   at Microsoft.TeamFoundation.TestClient.PublishTestResults.JUnitResultParser.<>c__DisplayClass1_0.<ParseTestResultFiles>b__0(String file)
   at System.Linq.Enumerable.SelectListIterator`2.MoveNext()
   at System.Linq.Enumerable.WhereEnumerableIterator`1.ToList()
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Microsoft.TeamFoundation.TestClient.PublishTestResults.JUnitResultParser.ParseTestResultFiles(TestRunContext runContext, IList`1 resultFilePaths)
   at Microsoft.VisualStudio.Services.Agent.Worker.TestResults.Parser.ParseFiles(IExecutionContext executionContext, TestRunContext testRunContext, List`1 testResultsFiles, ITestResultParser testResultParser)
2019-12-05T18:20:40.0393637Z ##[debug]Processed: ##vso[results.publish type=JUnit;mergeResults=false;runTitle=Linux - NodeJS - Unit Tests - [Node 12.x%5D;publishRunAttachments=true;resultFiles=sdk/appconfiguration/app-configuration/test-results.xml,sdk/core/abort-controller/test-results.xml,sdk/core/core-amqp/test-results.xml,sdk/core/core-arm/test-results.xml,sdk/core/core-auth/test-results.xml,sdk/core/core-http/test-results.xml,sdk/core/core-lro/test-results.xml,sdk/core/core-tracing/test-results.xml,sdk/core/logger/test-results.xml,sdk/identity/identity/test-results.xml,sdk/keyvault/keyvault-certificates/test-results.xml,sdk/keyvault/keyvault-keys/test-results.xml,sdk/keyvault/keyvault-secrets/test-results.xml,sdk/storage/storage-blob/test-results.xml,sdk/storage/storage-file-datalake/test-results.xml,sdk/storage/storage-file-share/test-results.xml,sdk/storage/storage-queue/test-results.xml,sdk/template/template/test-results.xml;failTaskOnFailedTests=false;testRunSystem=VSTS - PTR;]
2019-12-05T18:20:40.0394555Z ##[debug]task result: Succeeded

Hey,
This is how the system is designed. In case there are multiple test files and one of the test files is not found, we publish the other results and display the problem in the logs.

What do you mean by a test file is "not found"?  In related issue #11925, the issue was that the JS component and .NET component of this task were not in sync, and this should cause PublishTestResults to fail.  There may be some cases where it's appropriate to skip missing results files, but I don't think this is one of them.

#11925  is a bug and we are working on it. But if a few files among a bunch of files are actually not found, then we don't fail the task by design.

I would throw another scenario in the mix: "Failed to parse result files. Invalid file format". If I tell it to parse files and it has trouble doing that, this is another scenario the publish should fail. This is very dangerous, because it passed, failures in another file it didn't pick up got thru.


Definition of 'dot' function

Is the dot function defined to produce the dot product?
Seems that it does not give dot product
for example dot [1,2] [1,2] would give 9 instead of 5 = 1 * 1 + 2 *2
Perhaps a workaround like this
dot :: (Applicative v, Foldable v, Num a)
    => v a
    -> v a
    -> a
dot x y = sum $ zipWith (*) xs ys
    where xs = toList x
          ys = toList y
-- dot x y = getSum . foldMap Sum $ liftA2 (*) x y

Right, I have mostly been using vectors where the Applicative instance does "the right thing". It's however quite wrong to rely on  Applicativehere. You either have to useZipListor any container that has a "zippy"Applicative` for the code to behave correctly at the moment. OTOH, it's a bit unfortunate to convert to list in your proposed definition.
Wasn't there a class in some package to express exactly this zipWith operation? If not, I could provide one along with well-behaved instances for all the standard containers.
Sorry for the inconvenience, this package was initially a bit of an experiment and hasn't seen a lot of love lately.


Add out of repo code reference tags

In this PR:

Add ms_docref_set_auth_provider out of repo code reference tag in Program.cs file
Add ms_docref_get_list_of_user_accounts out of repo code reference tag in UserService.cs file

These tags need to be used to update code in Manage Azure AD B2C with Microsoft Graph. Code snippets used were updated in the repo but not in the doc.

#sign-off


Fix for invalid IPv6 or IPv4 ipaddress and subnet

Implements and closes #28

Pull Request Test Coverage Report for Build 85

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 84:
0.0%

Covered Lines:
222

Relevant Lines:
222

💛  - Coveralls


Hope to support timestamp covert with milliseconds.

What's the Problem?
No response
Solution/Idea
Hope to support timestamp(in milliseconds) covert. Just 3 more number.
Example:<PHONE_NUMBER> -> 2022-05-20 12:35:56 UTC
But<PHONE_NUMBER>458 -> invalid
Alternatives
For timestamp in milliseconds. Maybe you can ignore the last three digits during the conversion
Priorities

Capability
Priority

This proposal will allow developers to accomplish W
Must

This proposal will allow end users to accomplish X
Should

This proposal will allow developers to accomplish Y
Could

This proposal will allow end users to accomplish Z
Won't

DevToys Version
Version <IP_ADDRESS> | X64 | RELEASE | c032ebb | c032ebb
Comments
No response

Did a check, seems like this already implemented in latest version
DevToys Version
Version <IP_ADDRESS> | X64 | RELEASE | 2b57a920 | 2b57a920

Did a check, seems like this already implemented in latest version
DevToys Version Version <IP_ADDRESS> | X64 | RELEASE | 2b57a92 | 2b57a92

Try entering<PHONE_NUMBER>458 , a millisecond timestamp, that's what I need to convert

I think the feature was intended for unix time conversion, that is measured by seconds past epoch (wikipedia https://en.wikipedia.org/wiki/Unix_time)
however in coding, unix timestamps can be in seconds, milliseconds, microseconds and nanoseconds. (reference to https://www.epochconverter.com/)
I guess to make this with more sense. i think it's good to be able to

auto detect whether it is seconds or milliseconds etc..
optionally able to toggle to fix seconds or milliseconds etc..

Does this sound good?

In modern moding, many unix ticks can output to nanoseconds where values are stored with higher granularity.
Maybe consider and support granularity to nanoseconds?
e.g.
https://man7.org/linux/man-pages/man3/timespec.3type.html
https://pkg.go.dev/time#Time.UnixNano


attach GAE labels when available

Module and version drop down boxes in the Trace UI use these labels to allow
filtering by module and version. For GCE, GKE we use the hostname as the module
to allow the same functionality in the UI.
Fixes: #169

@matthewloring PTAL.

LGTM.


feature(Docs): Add react-virtualized to docs.

Show how to use react-virtualized with complex Lists.

That is literally magic.

This library is super cool, I do however think documenting it inside of RMWC would be out of scope. Any thoughts @izakfilmalter

out of scope, closing


multiplayer seed cracking

In new singleplayer worlds this has worked wonders! on multiplayer servers it doesnt seem to work, My working guess as to why is that it logs biomes around spawn based on blocks. Most spawns(unless you start with the world) are covered in all sorts of blocks and can mess that up. Is there any merit to this? I have tried multiple different structures & decorator features and nothing seems to give me a seed. Do certain structures have higher weights? Should i avoid areas that have been highly developed? Do more structures logged equal a higher success rate or does it stop getting more accurate after a certain number? If the seed matches are ranked if none are found could it output the closest couple? or is it all just Boolean?
Sorry for the barrage of questions and Thanks an absolute ton for the work, what a cool program!

Just before we get started, I'd like to say that I have tested it in multiplayer and it worked as well as singleplayer. Your issue is most likely caused by a server-side problem. So here's a few questions: is it a 100% vanilla server? Was part of the map generated in older versions(tons of decorators have changed in 1.15)? Did you try running the program without emeralds and dungeons?

It was definitely made in an older version(1.14), and its a realm so both those could probably break everything. I tried using structures from 1.15 generated areas but spawn is spawn and the end is the end.  It is vanilla otherwise, not sure how you can even make realms anything else. I have run without emerald ore, not dungeons.

Emerald ore, dungeons, end gateways and biomes have all changed in 1.15. So what you wanna do is go to newly generated chunks and relog to reset the cracker.

I can do that. Would it make sense to disable those options and try? I cant really get to the end without going through 1.14 chunks. (tho with the seed i hope to find my own end portal lol)

Yes, disable everything on your way to the end.

Ill try that, and report back. Thanks!

Well I've tried that a few times, doesn't seem to work. I'm chalking it up to realms are weird, and am gonna try it a few more times with different structures / combinations of things later and report back if anything works

Okay, so this is what i did that worked. I went out into new chunks in the overworld. Set my bed spawn. Then went into the end into new chunks. Re logged. Then explored a few end cities and gateways, went to the pillars. It found a bunch of seeds, then when i went to the overworld, it logged those biomes and found the correct seed!

Great news! I guess you still accidentally went through 1.14 chunks. Happy to hear it works now, enjoy!

Thanks for the help!


[BugFix] Fix result sink fragment has multi instance

What type of PR is this：

[x] bug
[ ] feature
[ ] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

As the plan:
union will use all children's node, so union will be multi-params, aggregate(merge finalized) use children's node, then bomb
+-------------------------------------------------------------------------------------+
| Explain String                                                                      |
+-------------------------------------------------------------------------------------+
| PLAN FRAGMENT 0                                                                     |
|  OUTPUT EXPRS:58: k1 | 59: k2 | 60: cast                                            |
|   PARTITION: HASH_PARTITIONED: 58: k1, 59: k2, 60: cast                             |
|                                                                                |
|   RESULT SINK                                                                       |
|                                                                                |
|   9:AGGREGATE (merge finalize)                                                      |
|   |  group by: 58: k1, 59: k2, 60: cast                                             |
|   |                                                                                |
|   8:EXCHANGE                                                                        |
|                                                                                |
| PLAN FRAGMENT 1                                                                     |
|  OUTPUT EXPRS:                                                                      |
|   PARTITION: RANDOM                                                                 |
|                                                                                |
|   STREAM DATA SINK                                                                  |
|     EXCHANGE ID: 08                                                                 |
|     HASH_PARTITIONED: 58: k1, 59: k2, 60: cast                                      |
|                                                                                |
|   7:AGGREGATE (update serialize)                                                    |
|   |  STREAMING                                                                      |
|   |  group by: 58: k1, 59: k2, 60: cast                                             |
|   |                                                                                |
|   0:UNION                                                                           |
|   |                                                                                |
|   |----6:EXCHANGE                                                                   |
|   |                                                                                |
|   3:EXCHANGE                                                                        |
|                                                                                |
| PLAN FRAGMENT 2                                                                     |
|  OUTPUT EXPRS:                                                                      |
|   PARTITION: RANDOM                                                                 |

please link the  issue.

[FE PR Coverage check]
:heart_eyes: pass : 1 / 1 (100.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/qe/Coordinator.java
1
1
100.00%


Uncaught TypeError: Cannot read property 'upgradeElement' of undefined

I have been running a very bare-bones setup with code from the main documentation source (without react-route). I am getting this error in Chrome every single time I run it.

Maybe I am missing something fundamental? I did try following the documentation page's source code.
Source code: minimal-mdl-test.zip

Nevermind. I wasn't including the material.js file assuming that webpack would take care of it.

I'm having the same issue, but the material.js file is being included.
Problems is with the <Drawer> component

You can add material.js in webpack as well, but since it's not a dependency of react-mdl, you have to do it manually.
See the code on our website as an example: https://github.com/tleunen/react-mdl/blob/master/docs/pages/_template.js#L11

Thanks! That fixed the error, now it does not show.
The <Drawer> still not showing. But I guess that is not related to the issue.

If you can share some code, maybe I'll be able to help ;)
Otherwise, make sure react renders it. Use the debugger to help you in this task ;) or breakpoints in the code

That's may code, <App> is the main component and <MainNav> is for now just a wrapper.
I am seeing everything rendered but the <Drawer> as I mentioned.
import React from 'react'
import { Layout, Content } from 'react-mdl'
import CategoriesContainer from '../containers/CategoriesContainer'
import MainNav from './MainNav.jsx'

const App = () => (
  <Layout fixedHeader>
    <MainNav/>
    <Content className='centerItem'>

        <CategoriesContainer />

    </Content>
  </Layout>
)
export default App

import React from 'react'
import { Header, Navigation, Drawer } from 'react-mdl'

const MainNav = () => (

      <Navigation>
        Link
      </Navigation>

    <Drawer title='Title'>
      <Navigation>
        Link
        Link
        Link
        Link
      </Navigation>
    </Drawer>

)
export default MainNav

I think all the elements inside Layout should be the first child :/

Yes, looks like that was the problem :grin:
Glad is solved now :smile:
BTW react-mdl is awesome!

Glad it solves the issue. Thank you :-)

+1 on this issue being helpful. I was seeing weird behavior with ref callbacks not being called. It was due to including the material.js script tag at end of body and with defer attribute. Included material.js file properly and my issue cleared up as well.


Fix NSpec json output

Ref

https://nanopay.atlassian.net/browse/NP-4080

Changes

Reset json formatter after finishing writing to journal

Why does this work? Doesn't getFormatter() reset?

so the issue was when updating a service we invalidate it and during the invalidation we do some loggings, since the update and logging are using the same thread getFormatter() will not be reset.


Trusted publishing: possible race condition related to GH repo move

Describe the bug
So there was a repository initially created at https://github.com/Bluetooth-Devices/propcache with trusted publishing configured and working. We then moved it to https://github.com/aio-libs/propcache, and so I had to create a new trust link. The project also got moved to the PyPI org before the trusted publishing reconfiguration.
What happened was that after these moves and reconfig, the CI pipeline that worked before stopped being able to publish.
I strongly suspect a race condition somewhere in the logic for adding a new trusted publisher.
So let me start with the timeline:

Timestamp (UTC+2)
PyPI Event
GitHub Event

06 Oct 2024, 02:19:24
Project added to aio-libs organization

06 Oct 2024, 03:01:33
Trusted publisher addedPublisher: GitHubURL: https://github.com/aio-libs/propcacheWorkflow: ci-cd.yml

06 Oct 2024, 03:01:38
Trusted publisher removedPublisher: GitHubURL: https://github.com/Bluetooth-Devices/propcacheWorkflow: ci-cd.yml

06 Oct 2024 04:19:17

An upload attempt started, it's the first attempt to publish post-migration (https://github.com/aio-libs/propcache/actions/runs/11197845167/job/31128986852#step:10:25)

06 Oct 2024 04:19:18

The upload attempt failed, claiming the trust link couldn't be found (https://github.com/aio-libs/propcache/actions/runs/11197845167/job/31128986852#step:10:26)

07 Oct 2024 14:19:55

An upload attempt started, it's the first run of the job within the workflow run (https://github.com/aio-libs/propcache/actions/runs/11214274927/job/31172158971#step:10:25)

07 Oct 2024 14:19:56

The upload attempt failed, claiming the trust link couldn't be found (https://github.com/aio-libs/propcache/actions/runs/11197845167/job/31128986852#step:10:26)

07 Oct 2024, 14:46:35
Trusted publisher removedPublisher: GitHubURL: https://github.com/aio-libs/propcacheWorkflow: ci-cd.yml

07 Oct 2024, 14:47:17
Trusted publisher addedPublisher: GitHubURL: https://github.com/aio-libs/propcacheWorkflow: ci-cd.yml

07 Oct 2024 14:53:21

An upload attempt started, it's the second rerun of the job within the workflow run (https://github.com/aio-libs/propcache/actions/runs/11214274927/job/31173940770#step:10:25)

07 Oct 2024, 14:53:23
Short-lived API token created

07 Oct 2024 14:56:37

Publishing succeeded to upload all the dists (https://github.com/aio-libs/propcache/actions/runs/11214274927/job/31173940770#step:10:706)

[!note]
The log does not show this, but in all cased the GitHub Environment was set to pypi.
Perhaps, this should be improved.

Both failures look like this (except for the tag number, which is irrelevant):
Error: Trusted publishing exchange failure:
Token request failed: the server refused the request for the following reasons:

* `invalid-publisher`: valid token, but no corresponding publisher (All lookup strategies exhausted)

This generally indicates a trusted publisher configuration error, but could
also indicate an internal error on GitHub or PyPI's part.

The claims rendered below are **for debugging purposes only**. You should **not**
use them to configure a trusted publisher unless they already match your expectations.

If a claim is not present in the claim set, then it is rendered as `MISSING`.

* `sub`: `repo:aio-libs/propcache:environment:pypi`
* `repository`: `aio-libs/propcache`
* `repository_owner`: `aio-libs`
* `repository_owner_id`: `7049303`
* `job_workflow_ref`<EMAIL_ADDRESS>* `ref`: `refs/tags/v0.2.0`

See https://docs.pypi.org/trusted-publishers/troubleshooting/ for more help.

The trusted publisher configs show up exactly the same before and after re-creation.
My observation is that when I was reconfiguring the trust, I first created the new trust link, and only then deleted the old one. The suspicion is that the old link's properties got somehow transferred to the new trust config, causing PyPI to still expect the old GH repo URL.
But later, when I deleted the trusted publishing right away and created a new one, those properties weren't inherited, and it became possible to look it up with what OIDC includes.
Can this be related to the resurrection prevention logic? Could you check this @woodruffw? Also, perhaps you @di could find anything in the platform logs that isn't surfaced in the common UI?
The above explanation is the only idea I came up with. And if that's the case, this is a bug.
I'm starting to think that something like this might be happening when several GH repos are configured in the same project. This is something to check. But beyond this, I don't know how to narrow this down to a smaller repro...
Expected behavior
Migrating projects, followed by proper reconfiguration, shouldn't let the trust end up in an inconsistent state.
To Reproduce
:man_shrugging: See the ideas above.
My Platform
GHA
Additional context
A few CI jobs are linked in the table above.

Thanks for the detailed timeline @webknjaz!

The suspicion is that the old link's properties got somehow transferred to the new trust config, causing PyPI to still expect the old GH repo URL.

Hmm, this part seems unlikely: there's no logic anywhere in Warehouse for transferring settings between different Trusted Publishers. That includes internal IDs, i.e. there's no copying of the user or repo IDs between publishers connected to the same project.
I'll double check the deletion logic, though, and see if there's anything funky there.
Another potential candidate here is inconsistency on GitHub's side during repo migrations: I'd be very surprised if it was the case, but it's possible that the initial TP registration for aio-libs/propcache was given a different repository_owner_id, which only became 7049303 (i.e. aio-libs) at some later point. I'll try and ping some GH folks to see if they have details/info on owner ID consistency/atomicity during migrations.

I'll double check the deletion logic, though, and see if there's anything funky there.

Just checked, and we always delete trusted publishers by unique ID, meaning that there should be no confusion/cross-contamination between publishers at that stage:
https://github.com/pypi/warehouse/blob/9b82274d540cb8931ec83d2d1ff3353d0b39acc6/warehouse/manage/views/__init__.py#L1890-L1961
Could you check the project's event log on PyPI as well? I'm curious if it has any other hints/possible discrepancies.

Another potential candidate here is inconsistency on GitHub's side during repo migrations: I'd be very surprised if it was the case

That's a good point. I wouldn't be surprised, OTOH, since we're regularly observing GitHub's eventual consistency causing surprising effects in large projects like Ansible.

but it's possible that the initial TP registration for aio-libs/propcache was given a different repository_owner_id, which only became 7049303 (i.e. aio-libs) at some later point. I'll try and ping some GH folks to see if they have details/info on owner ID consistency/atomicity during migrations.

If the owner ID is important to check, perhaps Warehouse could detect such cases and send email notifications to the project owners when such changes happen? And maybe reflect that in the security log?

Could you check the project's event log on PyPI as well? I'm curious if it has any other hints/possible discrepancies.

I was starting at that to compose the table posted above. I didn't include events of users being removed/re-added because of the project to org migration, since TP is bound to projects, not accounts. The last event preceding the move to the PyPI org was the successful sdist upload via TP 3 days prior to the move. And right after the move, there's removal of @bdraco (due to the #13558 bug). And re-adding him as a maintainer after the first TP config attempt (so he'd still show up on the public project page).
I extended the table with the GH repo move time.

Just checked, and we always delete trusted publishers by unique ID, meaning that there should be no confusion/cross-contamination between publishers at that stage:
https://github.com/pypi/warehouse/blob/9b82274d540cb8931ec83d2d1ff3353d0b39acc6/warehouse/manage/views/__init__.py#L1890-L1961

That's the deletion code, though, my concern was about adding a new one while the previous TP exists.

Maybe, it'd be helpful to log https://github.com/pypi/warehouse/blob/9b82274d540cb8931ec83d2d1ff3353d0b39acc6/warehouse/oidc/forms/github.py#L124.

Or extend https://github.com/pypi/warehouse/blob/9b82274d540cb8931ec83d2d1ff3353d0b39acc6/warehouse/manage/views/init.py#L1536-L1545 to mention org+repo ids.

I spent a bit more time trying to figure this out, and my best theory so far is that GitHub took the 'eventual' in 'eventually consistent' a little too literally here, and continued returning the old owner ID in their API ~40 minutes after the repo transfer. That's pretty much the only thing that could explain how the inconsistency happened here without any of the user-controlled TP configuration changing.
I'll look into adding some Sentry or similar alerting, to see if we can catch it happening again.

I would expect that your guess has high probability of being true, based on my experience with GitHub API, Apps, platform in general. In big repos, we observe inconsist states of GitHub that don't clear for weeks sometimes.


Temp

Describe the bug
A clear and concise description of what the bug is.
Steps to reproduce
If possible, provide a recipe for reproducing the error.
What did you expect to see?
A clear and concise description of what you expected to see.
What did you see instead?
A clear and concise description of what you saw instead.
What version did you use?
Version: (e.g., v0.4.0, 1eb551b, etc)
What config did you use?
Config: (e.g. the yaml config file)
Environment
OS: (e.g., "Ubuntu 20.04")
Compiler(if manually compiled): (e.g., "go 14.2")
Additional context
Add any other context about the problem here.

Temp

temp

temp

temp

/help-wanted

/help-wanted

/help-wanted

/good-first-issue

/good-first-issue

/good-first-issue

/good-first-issue

/good-first-issue

/good-first-issue

/good-first-issue

/good-first-issue

/help-wanted

/help-wanted


Enhancement for PUB: browse online packages

This issue was originally filed by<EMAIL_ADDRESS>
Hi all,
In http://pub.dartlang.org, when you're viewing a package there's an option named Versions. In this section you have a link named Archive where you can download the package.
My suggestion is: Could you add new link named Browse or something like that where you can view the package online?
Regards and thanks for hearing me.
Moises Belchin

This issue has been moved to dart-lang/pub-dartlang#313.


Regex DoS check timesout

What is the problem?

https://devina.io/redos-checker
Regex: \.loadUrl\(.{0,48}getExternalStorageDirectory\( works fine - > Safe to use
Regex: \.loadUrl\(.{0,49}getExternalStorageDirectory\( times out. - > Oh no! The checker timed out
How to fix the problem?

Related issues

You can use the official playground instead: https://makenowjust-labs.github.io/recheck/playground/.
This can change parameters. You can use automaton checker in this case. It can check correctly.


Margin insets not changing during zoom when formatter changes output width

I created my own numberformatter for yAxis labels like this:
    var axisFormatter = NSNumberFormatter()
    axisFormatter.locale = NSLocale.currentLocale()
    axisFormatter.numberStyle = NSNumberFormatterStyle.DecimalStyle
    axisFormatter.usesGroupingSeparator = false
    axisFormatter.generatesDecimalNumbers = true

Later then, when I zoom into the data so that the formatter changes output width for example from 49 to 49.5 the margin of the chart doesn't change until I rotate to landscape/portrait. Without rotating there seems to be no chance to get the numbers full visible.

@PhilJay do you think we should recalculate the X axis width for each frame? or can we know that the axis has changed?

@PhilJay maybe we should call calculateOffsets() when done zooming/dragging, so the Y-Axis width will be recalculated according to the visible labels

Yes that could be an option :-)
I hope that the performance overhead is not too big tough

If we're doing it only when finishing a zoom - that would not have a
performance impact, it will work like when zooming in on maps - they zoom
in the original rasterized data, and when finishing zoom they re-render the
vector data
On Fri, May 8, 2015 at 11:07 AM, Philipp Jahoda<EMAIL_ADDRESS>wrote:

Yes that could be an option :-)
I hope that the performance overhead is not too big tough
—
Reply to this email directly or view it on GitHub
https://github.com/danielgindi/ios-charts/issues/72#issuecomment-100144293
.


Unable to specify vpc_security_group_id to while provisioning RDS

Unable to specify the vpc_security_group_id during RDS provisioning. By default only default security will be assigned.

do you have an example and logs where this is failing?   this works for me.
this should probably actually use
  vpc_security_group_ids [  lazy { fzprod_sg.aws_object.id }  ]

but here's an example out of working config:
create_aws_db_instance db_info[:name] do
  aws_account accountname
  region 'us-west-2'
  engine                'mysql'
  engine_version         '5.6.23'
  db_instance_class     'db.t1.micro'
  allocated_storage     5
  username       db_info[:username]
  password  db_info[:password]
  multi_az true
#  auto_minor_version_upgrade false
  db_subnet_group_name "#{accountname}-us-west-2-rds"
  backup_retention_period 7
  preferred_backup_window  "06:50-7:20"
  preferred_maintenance_window "tue:08:00-tue:08:30"
  publicly_accessible false
  vpc_security_group_ids [  fzprod_sg.aws_object.id   ]
end


Projects

This is a header issue for containing discussions about the project module

@dewolfe001, the repo that currently uses the github module is https://github.com/BCDevExchange/BCDevExchange-mini-apps.  Look at /api/services/ProgramService and GithubService.


deps: Update gRPC to v1.39.1

Additional Description:
This is the last easy update of gRPC. Newer versions require changes, which I'm working on.
Risk Level: Low
Testing: Unit Tests
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A
Signed-off-by: Yan Avlasov<EMAIL_ADDRESS>

/retest

/lgtm deps
Thanks for pinning to a release

/lgtm deps


Unable to duplicate a serving runtime

Duplicating a pre-installed serving runtime either doesn't work, or the UX is poor, or both. There are several issues:

When the duplicate modal is opened the title is "Add model server". It should be "Duplicate model server"
The Add button (probably should be Create) is disabled with no explanation or guidance for the user
I'm guessing that I need to either change the display-name or the name (or both) in the YAML file. When I change only the display-name the Add button is enabled, but when I click it I get an error saying the serving runtime already exists. When I change the name in the metadata I get a 403 error, which is meaningless to me. So, I'm stuck.

I moved this from the UX meeting -- this may need some additional information, due to the lack of a template. Triage team will figure that out.

I'm guessing that I need to either change the display-name or the name (or both) in the YAML file. When I change only the display-name the Add button is enabled, but when I click it I get an error saying the serving runtime already exists. When I change the name in the metadata I get a 403 error, which is meaningless to me. So, I'm stuck.
Mmmmm funny that you mention, we tried to fix this here basically adding a -copy suffix. But I didn't realize that this is just a one-shot workaround, since next time you try to duplicate it will fail, that's probably what's happening to you.
As @andrewballantyne noted, we need to improve this with parameters in the near future, but in the meantime not sure what's the best approach here
cc @vconzola

@lucferbux I don't know how far out parameters are, but as an interim solution would it be possible to display a required field above the YAML where the user must enter a new name and/or display name (not sure if both need to be changed) for the duplicate? These values could then be "inserted" into the YAML when the modal is submitted. Is that possible?

Yes, we have https://github.com/opendatahub-io/odh-dashboard/issues/1260, which is part of https://github.com/opendatahub-io/odh-dashboard/issues/1312

Migrated to:  https://issues.redhat.com/browse/RHOAIENG-552


The OAuth use correct parameters to make signature for HTTP PUT/POST.

Thanks! Will run the specs and merge today


Server Implementation Not Working

Hello community,
This might not be the issue with the faceapi but with my implementation, i am trying to do the face recognition in a real time. The frame comes from my webcam via socket as a base 64 string, all i am trying is to get it matched with my preloaded images.
function prepareCanvas(data) {
  return new Promise((resolve, reject) => {
    try {
      const canvas = createCanvas(parseInt(data.width), parseInt(data.height))

      var ctx = canvas.getContext("2d", { pixelFormat: "RGBA24" });
      var image = new Image();

      image.src = data.base64

      ctx.drawImage(image, 0,0, parseInt(data.width), parseInt(data.height));
      resolve(tf.browser.fromPixels(canvas));
    } catch (err) {
      console.log("prepareCanvas error===>", err)
      reject(err)
    }

  })
}

async function matchWithVideoStream(data, classifierType) {
  try {
    let frame = await prepareCanvas(data)
    const detections = await faceapi.detectAllFaces(frame, classifierType).withFaceLandmarks().withFaceExpressions().withFaceDescriptors();
    frame.dispose();
    const resizedDetections = faceapi.resizeResults(detections, { width: 800, height: 800 })

    const results = resizedDetections.map((d) => {
      return faceMatcher.findBestMatch(d.descriptor)
    })
    console.log('resuts', results)
  } catch (err) {
    console.log("matchWithVideoStream error", err)
  }

}

On first sight I can not spot anything obvious causing your example to not work. Did you try to display the image to verify that you are indeed receiving the data / constucting the image tensor correctly?