Code completion not working with tensorflow

Description of your problem
Today i installed spyder from anaconda distribution. It has version 3.2.4. When i started to code in spyder editor, i couldn't found any autocomplete function. I am confused now.
Versions and main components

Spyder Version: 3.2.4
Python Version: 3.6
Qt Version:
PyQt Version:
Operating system: OSX
jedi Version: 0.10.2

i couldn't found any autocomplete function.

What do you mean by this?

I looked at issue #4587, you comfirmed that code completion in the Editor doesn't work for all modules, so i may look for other solution.
The weird thing is i have used vim with jedi or youcompleteme, though it may sometimes work slow, but it works. So i don't know why spyder can't do this.

So what module are you trying to get completions for?

numpy, sys, os, etc.  In general, no module works, even local variable autocomplete.

That means you have a problem with Rope or Jedi. How did you install Spyder and its dependencies?

Through anaconda. I tried different jedi version but it doesn't work at all. Now i have jedi 0.10.2 and rope 0.10.5.

I tried to uninstall anaconda and reinstall it and now it works. I will find out what i have done to disable autocomplete.

I just figured out how things happened. When i fleshly installed anaconda, everything is ok. Then i compiled tensorflow from source and using pip under anaconda to install generated whl file. After that, although i could import and use tensorflow in spyder successfully, but code autocomplete didn't work afterwards.

OK, so what is the solution if I do not want to remove and install anaconda? Thx.

I'm having the same issue, but remove and reinstall spyder doesn't bring the auto-completion back (also, the "Go to definition" is not working as well, quite useful when trying to understand the package).
I am using anaconda installed spyder3.2.4 (from conda-forge), running on win7.
I recently upgraded to tensorflow-gpu1.4 using pip (conda windows version only "supported" 1.1), this could cause the trouble, but I've having trouble with auto-completion from time to time before, I just got super frustrated lately when coding more often with TF.
The same problem happens with similar setup on my win10 laptop. Personally I suspect it's more of a windows problem than tf problem?
Hope some one could figure out a solution soon, many thanks!

What happens if you uninstall the pip version of tensorflow and install the conda one?

As I mentioned, I would not use conda tf, since it's very outdated, but for the sake of debugging, I uninstalled pip tf and installed with conda, unfortunately, it does not resolve the problem.
The following packages are in my env after I installed conda tf, perhaps it could give you some hints about what might went wrong.  Autocomplete stopped.

@ccordoba12
Let me conclude this bug for you. Definitely this problem exists. The package must be installed with Anaconda itself, I mean even if we install the Tensorflow from Anaconda cloud, but with a different owner (such as aaronzs), it will not work either. The reason is unknown for me. it is quite weird.
Also, this problem seems to be for Tensorflow only. I did installed the keras using pip (because Anaconda one is old) and it did not affect the autocomplete.

Exact same thing happened to me, just pip upgraded tensorflow and keras. Reopened spyder and autocomplete didn't work.

Closing as a duplicate of issue #5782. Please read that issue to get the solutions for this problem.


MIXEDARCH-382: use dedicated service accounts for the operator and its operands

Use dedicated RBAC rules following the least-privilege principle for each component (operator, podplacement controller and podplacement webhook).

/lgtm

/approve


Stdlib update

I'm not going to merge this for now because it only adds a "run that exec instead of doing it inside the code" function which IMHO maybe shouldn't even be inside the stdlib

Adding discussion from Discord:
It is useful in case of launchers just as one example, and if it doesn't belong in stdlib, let me know where it should go. Also, something I didn't mention on Discord: A good philosophy of design is "If it's already been done, and there isn't a good reason to redo it, don't." I know Linux follows that.


Move bitflags out of the nursery?

The bitflags crate is now stable and the nursery doesn't seem like the most appropriate home for it anymore.
Would we like to find the crate a new home under a GitHub organisation in the community?

Traditionally, and according to the RFCs, moving it to rust-lang-deprecated is the process here, and then someone can claim it.
Of course, if someone wants to claim it, moving it straight to them seems good!

On Mar 9, 2018, at 4:50 AM, Ashley Mannix<EMAIL_ADDRESS>wrote:
The bitflags crate is now stable and the nursery doesn't seem like the most appropriate home for it anymore.
Would we like to find the crate a new home under a GitHub organisation in the community?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

That's true! We ended up moving uuid straight into a GitHub organisation with everyone that expressed any interest in it and that seems to have gone well. I'm wondering if putting bitflags in the rust-lang-deprecated organisation first might send the wrong kind of message? We don't want to deprecate the crate. It's actually the total opposite! We want the crate to get more dedicated attention. Maybe that's just semantics though :)

Yeah I don't think we should go through deprecation. I think the rust-lang policy RFC is highly outdated at this point.

Hey. I can create the organisation when needed. Just give me a ping :)

Thanks @Dylan-DPC! Let's give folks a chance to express interest and then coordinate setting up an org with them all like we did for uuid.

@KodrAus sure. We need to make a post calling for co-maintainers. That will help move things faster

@Dylan-DPC Good point! The ecosystem post was meant to be that call, but I've put something more specific on the users discourse too.

@IsaacWoods sounds good. Will send you an invite when we create the organisation

Also cc @djg are you still interested in bitflags?

I'm happy to contribute if I can. What do you have in mind @KodrAus?

@djg that depends on what you'd like to do :) Having write access means you could also jump in and help triage/close issues, review/merge PRs, publish new versions to crates.io. There's also new features to consider, like your current iterator API, and over time new idioms in the language that we might want to incorporate somehow. Who knows what the future holds!

yeah to add to what Ashley said, you can check dependent crates and send them PRs to update to the latest version of bitflags when we release one

Have created an organisation and sent invites. If anyone else is interested in joining, leave a message here.

@KodrAus I still don't have a good solution to the iterator API!

would this be considered resolved as bitflags has been moved?

@kinggoesgaming i wanted to keep this issue open for a few days in case anyone else is interested in jumping in as a co-maintainer.

I think enough time's passed now that we can close this one. Thanks to everyone who's stepped up to support bitflags!


Property "SaveHtmlFileForDebugging" is not working

The Property "SaveHtmlFileForDebugging" is not working.
When the property is set to "True" there should be a html file saved in the directory of the application. But the file is not generated anymore.

This is a regression, introduced when we made the html file no longer necessary.

Fixed with version 2.30.02


Different icons and Launch Images assets for each flavor

Hello,
First, thank you for this package which is extremely helpful to gain time when using flavors !
One issue I have and I don't seem to find an answer is :
Is there a possibility to define a folder to take the different icons for the different flavors ? What I mean is, with the current version, it seems that all the flavors use the same launch icons and launch screens.
Do I have to disable the "generateDummyAssets" for android and iOS and manually add the assets in the android folder and Xcode project for each flavor ?
I hope you understand my question, if not just tell me and I can clarify !
Thank you for your time !

The process of customizing each flavor at this time is manual. The generateDummyAssets variable is used to copy the default icon set as a default placeholder, so you can customize them manually later.

Okay, thank you for your answer !
I have another issue that I came across, I don't know if I should open another one or it's okay to ask it here but :
Is there a way to NOT override the files that have already been generated using flutter pub run flutter_flavorizr ? What I mean by that is, if I customize the default icons (or the generated "main" file) but one day I add a new flavor, when I will run the command it will reset everything and put the default icons (and default main file) again on the flavors that were already created, am I right ?

flutter_flavorizr is meant to be run once and only once, after the creation of the flutter project. That's the reason why it overwrites some existing files.
If you want to reuse it, you can customize its process by defining a custom set of instructions. For example you can remove the *:dummyAssets, flutter:flavors (and/or) flutter:app instructions.


FileLoadException in WordCountService Pckg Code

Running the sample out of box, but having to update the JSON stuff, I get this:
An exception of type 'System.IO.FileLoadException' occurred in WordCount.Common.dll but was not handled in user code
The fusion log:
=== Pre-bind state information ===
LOG: DisplayName = Newtonsoft.Json, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed
(Fully-specified)
LOG: Appbase = file:///C:/SfDevCluster/Data/_App/_Node_1/WordCount_App6/WordCountServicePkg.Code.1.0.0/
LOG: Initial PrivatePath = NULL
Calling assembly : System.Net.Http.Formatting, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35.
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\SfDevCluster\Data_App_Node_1\WordCount_App6\WordCountServicePkg.Code.1.0.0\WordCount.Service.exe.Config
LOG: Using host configuration file:
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config.
LOG: Redirect found in application configuration file: <IP_ADDRESS> redirected to <IP_ADDRESS>13.
LOG: Post-policy reference: Newtonsoft.Json, Version=<IP_ADDRESS>13, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed
LOG: Attempting download of new URL file:///C:/SfDevCluster/Data/_App/_Node_1/WordCount_App6/WordCountServicePkg.Code.1.0.0/Newtonsoft.Json.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Revision Number
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.
==============
I've tried serveral changes in the config files, but to no avail.  I haven't been able to understand how things should work, since the sample won't run,.
Any help appreciated.
-e

Sorry for the noise.
Sovled this problem by changing the binding redirects from newVersion=<IP_ADDRESS> to newVersion=<IP_ADDRESS> for Newtonsoft.Json.
For anyone who is new and is getting confused, fileVersion is not the same as AssemblyVersion.  You need to find the Assembly vesrion of the DLL you're trying to use, and it ISN'T the same as the NuGet package version either.
So we don't need <IP_ADDRESS>13, and we don't need <IP_ADDRESS> either.
One sure way to get the AssemblyVersion of a file uses PowerShell:
[System.Reflection.Assembly]::LoadFile("file full path.dll").GetName().Version
One does wonder why NuGet doesn't list the AssemblyVersion.  That would have helped avoid this problem and the lost time.
Enjoy!
-e


Add documentation for Visual Recognition

Summary
The documentation of the Visual Recognition was a copy-paster-version of the Tone Analyzer Service and didn't make sense. I've added some simple text to explain the service and how to use f.e. Face Detection. All in all, nothing special ✌

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.

There are more small copy-paste-errors in the documentation. Should I correct them in this or a separated PR?

There are some issues with Homebrew. Could you fix this please?
Here is the interesting part of the log:
Warning: Failed to delete /Library/Caches/Homebrew.
Please do so manually.

@thomaspaulmann Thanks for the contributions to the repository.  Yes please create a PR for review.  One item to note, the actual documentation generated from jazzy lives in the gh-pages branch.

Awesome! This is great feedback and an excellent fix. Thanks for the updates, @thomaspaulmann! I'll go ahead and merge this PR.
As you noted, if you come across other copy-paste errors in the documentation please feel free to open an issue or a PR. Either one is always very helpful for us, and we really appreciate the input.

@thomaspaulmann: When does that error occur with Homebrew? I know there are some complications that were introduced with permissions on El Capitan. Maybe we can help track down the problem for you if you give us some more information?

Here's a link to the documentation that @vherrin referred to: http://watson-developer-cloud.github.io/ios-sdk/

@glennrfisher: The error occurred on Travis CI. I had no problems on my machine, I guess it's an issue of some homebrew updates. Other open source projects have the same error log. I will have a look for further PRs.

@vherrin: Thanks for the link to the documentation. I noticed only some issues in the README on Github. Generally it's the first touchpoint for developers when they integrate a new SDK, so it would be perfect if everything works out of the box. I noticed also some errors in the QuickStart-Guide. I will contribute my changes in a separated PR. Thanks for having me :P


Affix breaks when snapping to the top of page.

I know this is an edge case, but when you scroll to the bottom of a page with an affix nav, then drag the cursor outside the window and back in toward the top of the page in Chrome, the page 'snaps' back to the top of the page. The affixed nav doesn't re-apply the affix-top class as it hasn't scrolled up.
Here is it happening on the Bootstrap site:

Duplicate of #15847.


[REG2.069] Issue 15781 - Template type deduction failure with same-type variables with different constness

Auto-merge toggled on

Thanks, but the auto-merge is currently blocked by the red of Phobos unittest in stable branch.
See also: https://github.com/D-Programming-Language/phobos/pull/4092

Will this work with immutable, i.e.:
static assert(is(typeof(foo(ms, is)) == const S));

?

@ZombineDev Yes, MODmerge(MODmutable, MODimmutable) returns MODconst.


feat: card component

Created card component

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Feature Dashboard not working

Hi All,
I am working to set team dashboard with Features widget using  latest Hygieia UI (version : 1.0.0-SNAPSHOT) , API module (version : 3.3.2-SNAPSHOT) and hygieia-feature-jira-collector version (  version : 3.2.0-SN1APSHOT).
The hygieia-feature-jira-collector  runs successfully and populate data in Teams, Scope and features table but in collector_items table. My application settings are configured to work in JiraBoard mode.
When I am trying to add Feature widget from UI, It is making an API (/collector/item/type/searchField/{collectorType})call to verify Team & project Name. In CollectorController class, the method collectorItemsByTypeAndSearchField
Tries to match Team & Project information from collector_items table. Which is empty in my case.
Can you please help me to understand what is wrong.
I have noticed that previous to https://github.com/Hygieia/hygieia-feature-jira-collector/commit/82211d39959062bfe0f75a2e216f7faf1a91d447#diff-0f36c61a09364aeec863394ce48ae03a
 this change collection_items table was populated to store team data. This change is done by @Sbrenthughes

Affects: <3.2.0-SN1APSHOT>.

Any update here? I have the same issue.


Fix Integration Test Failures for Databricks 13.3 Support

This pull request fixes some of the integration test failures that were failing due to various reasons. The changes include adding PythonUDAF support to Databricks 13.3
Changes Made:

Added PythonUDFShim to Databricks 13.3
Skipped some failing orc tests due to a missing config in Databricks 13.3

Tests
Fixes some of the failing tests. No new tests were added
Contributes towards 9175

build


supporting LoRA checkpoint?

I only see model_id to be specified. For the model with LoRA checkpoint, how can I specify LoRA checkpoint id(on HF Hub)?

Hello!
This is not supported at the moment but it is something we will be working on in the coming weeks.

Sounds good! Looking forward to it 😀

We tried to merge the LoRA adaptor with the base model and saved the merged standalone model using the merge_and_unload function. But the standalone model cannot be served. Do you have any idea how should the merged standalone be correctly served?

@OlivierDehaene any update on supporting fine-tuned lora matrices along with an llm backbone? I have a small additional feature request which would be to support many lora matrices with the ability to "hot swap" them based on characteristics of the request ie. different clients could be served with different loras.


[enhancement] perhaps add nanptp

another possibility: nancount ?  Right now I'm doing: numpy.count_nonzero(numpy.isnan(row))


Mac git lfs

SM's update on how to deal w/ large files that GitHub will reject

This looks great!


Blank(black) screen on Android

Hi @josephcrowell!
Cannot see any map on Android.
I got an initialization error
<<
E/MethodChannel#flutter_mapbox_turn_by_turn/method(23853): kotlin.UninitializedPropertyAccessException: lateinit property context has not been initialized

And changed the following on FlutterMapboxTurnByTurnPlugin.kt:
private fun isPermissionGranted(): Boolean {
if (!::context.isInitialized) {
Log.e("FlutterMapboxTurnByTurnPlugin", "Context has not been initialized yet.")
return false
}
val coarseResult: Int = ActivityCompat.checkSelfPermission(context, Manifest.permission.ACCESS_COARSE_LOCATION)
val fineResult: Int = ActivityCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION)
return coarseResult == PackageManager.PERMISSION_GRANTED && fineResult == PackageManager.PERMISSION_GRANTED
}

Look at the Manifest section here: https://docs.mapbox.com/android/navigation/guides/get-started/install/
I haven't added the instructions/documentation for adding permissions etc but you haven't added the ACCESS_COARSE_LOCATION and ACCESS_FILE_LOCATION permissions to your manifest.


Train models and test models are diffirent?

python3 VisualizeResults.py --modelType 1 --p 2 --q 8 --weightsDir ./
True
.//decoder/espnet_p_2_q_8.pth
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 514, in load_state_dict
own_state[name].copy_(param)
RuntimeError: invalid argument 2: sizes do not match at /pytorch/torch/lib/THC/generic/THCTensorCopy.c:101
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "VisualizeResults.py", line 194, in
main(args)
File "VisualizeResults.py", line 149, in main
modelA.load_state_dict(torch.load(model_weight_file))
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 519, in load_state_dict
.format(name, own_state[name].size(), param.size()))
RuntimeError: While copying the parameter named conv.conv.weight, whose dimensions in the model are torch.Size([20, 36, 3, 3]) and whose dimensions in the checkpoint are torch.Size([20, 39, 3, 3]).
I have trained my own models.
I found
train model
self.conv = CBR(19 + classes, classes, 3, 1)
test model
self.conv = CBR(16 + classes, classes, 3, 1)
what is it?

The same format as cityscapes

I have found I can replace the test/model.py with train/model.py to solve it. But why you do this?
And my accuracy looks low , Decoder mIOU 0.4864 Encoder mIOU 0.5002, how can l get the mIOU 0.60

See #14 for an explanation about different model files.
How are you evaluating the model? Are you using the CityScapes script or the ones provided in this repo? If you are using the ones provided in this repo, then mIOU will be little less because we do not perform masking operation as done by the CityScapes.


Incompatibility between Loginpass/FastAPI and Authlib

In Loginpass there is a common function used to normalize user information. For example, https://github.com/authlib/loginpass/blob/master/loginpass/twitter.py#L17 Notice that it is not an async function:
def normalize_userinfo(client, data):
However, there is an attempt to call it as async in https://github.com/lepture/authlib/blob/master/authlib/integrations/base_client/async_app.py#L142
The incompatibility triggers an error.
What is the best way to address this? Currently I'm removing the await for my own purpose but I don't know the impact of this

I came across the same error. My workaround is to make these normalize_userinfo functions asynchronous. To do that I'm overwriting my connections like:
from loginpass import Twitter as LPTwitter, normalize_userinfo
from asgiref.sync import sync_to_async

OAUTH_CONFIG = LPTwitter.OAUTH_CONFIG
OAUTH_CONFIG["userinfo_compliance_fix"] = sync_to_async(normalize_userinfo)

class Twitter(LPTwitter):
   OAUTH_CONFIG = OAUTH_CONFIG

I found out about this sync_to_async method in the django docs: https://docs.djangoproject.com/en/3.1/topics/async/#sync-to-async.
You still have to re-define all your connections but at least there is no need to update authlib directly and the connections would still rely on most of loginpass definitions. If you have a lot of connections, I would suggest having a function: Twitter = make_it_asynchronous(loginpass.Twitter) to do the work for you 😄

Awesome, I'll give that a shot, thanks!


Simpler maintenance for versions and software BOM

The versions which got installed by the scripts are distributed in many files. This means a lot of work do provide newer versions.
A central file for the version would help to have less work to change scripts. It would in addition help for new  minor versions for a distribution
A second benefit would be that such a "config" file could act as a software bill of materials, which is needed to have a secure software supply chain.
The idea is to have all variables, versions, urls and checksums in one file, which gets sourced in install.sh.
I have a working prototype for SLE HPC nearly ready.
Here a small snippet how it could look like
 --snip--
 # SLE Version
 # it can be generated, but better is to go through this file
 # and manual an set the right versions of the various sections
 # #source /etc/os-release
 # #export SLE_DOTV=${VERSION_ID}
 # #export SLE_MAJOR=${VERSION_ID%.*}
 export SLE_DOTV=15.4
 export SLE_MAJOR=15
 ...
 # azcopy
 export AZVERSION="10.16.2"
 RELEASE_TAG="release20221108"
 #
 export AZTARBALL="azcopy_linux_amd64_${AZVERSION}.tar.gz"
 export AZCOPY_DOWNLOAD_URL="https://azcopyvnext.azureedge.net/${RELEASE_TAG}/${AZTARBALL}"

 # HPC-X
 # pls accept the EULA
 export HPCX_VERSION="2.12"
 export HPCX_DOWNLOAD_URL=https://content.mellanox.com/hpc/hpc-x/v${HPCX_VERSION}/hpcx-v${HPCX_VERSION}-gcc-inbox-suse${SLE_DOTV}-cuda11-gdrcopy2-nccl${HPCX_VERSION}-x86_64.tbz
 export HPCX_CHKSUM="bc315d3b485d13c97cd174ef5c9cba5c2fa1fbc3e5175f96f1a406a6c0699bdb"
 ...
 --snip--

@petersatsuse thank you! The development is already in progress and will be tracked as a part of this PR - https://github.com/Azure/azhpc-images/pull/248

Spack development was halted, but the work to move component versioning to a single file was added in #328


Include gallery example of point paths on hover from Vega gallery

I was reviewing the vega examples and think this one is pretty cool and could be useful to include in the Altair gallery as well, possibly with a search box as mentioned in https://github.com/altair-viz/altair/issues/2760#issuecomment-1477186125

I've posted a question on Stack Overflow about how this kind of interaction might be implemented in Vega-Lite.
It wasn't immediately clear to me what capabilities Altair might have for this kind of interaction, which I agree is very cool. I figured that understanding the possibilities and limitations in Vega-Lite would be a good first step to determine potential Altair implementations, whether partial or complete.

I've made progress on porting the Gapminder visualization example from Vega to Altair, focusing on the hover path and adding a search box. I'd like to share my current implementation and discuss the remaining issues.
Progress Made

Implemented a slider for selecting the year
Added a search box for filtering countries
Implemented filtering based on both conditions
Created hover effects for displaying country trajectories and a single country name
Added a large background year label based on the slider selection

Remaining Issues

Hover behavior on invisible points: Currently, hovering over invisible points (i.e., points not selected by the year slider or search box) still results in labels and lines appearing. This is probably not desired.
Color encoding: The current implementation encodes color by country, not by region as specified in the original Vega example. This makes it harder to discern regional patterns in the data. My attempt to encode color by region ended up distorting the lines on hover.
There are likely more direct or efficient ways to implement this than the approach I took.

Next Steps

Address the hover behavior issue to ensure that only visible points respond to hover events.
Modify the color encoding to use regions instead of countries, while maintaining the ability to highlight individual country trajectories.
Add legend back once regional color encoding is fixed.

Current Implementation
Here's the code for the current state of the visualization:

import altair as alt
from vega_datasets import data

# Data source
source = data.gapminder.url

# X-value slider
x_slider = alt.binding_range(min=1955, max=2005, step=5, name='Year: ')
x_select = alt.selection_point(name="x_select", fields=['year'], bind=x_slider, value=1980)

# Search box for country name
search_box = alt.param(
    value='',
    bind=alt.binding(input='search', placeholder="Country", name='Search ')
)

# Base chart
base = alt.Chart(source).encode(
    x=alt.X('fertility:Q', scale=alt.Scale(zero=False), title='Fertility'),
    y=alt.Y('life_expect:Q', scale=alt.Scale(zero=False), title='Life Expectancy'),
    color=alt.Color('country:N', legend=None)
)

# Points that are always visible (filtered by slider and search)
visible_points = base.mark_circle(size=100).encode(
    opacity=alt.condition(x_select | search_box, alt.value(1), alt.value(0))
).add_params(x_select).transform_filter(
    x_select
).transform_filter(
    alt.expr.test(alt.expr.regexp(search_box, 'i'), alt.datum.country)
)

# Hover selection
hover = alt.selection_point(on='mouseover', fields=['country'], empty=False)

# Line that appears on hover
hover_line = base.mark_line(point=True).encode(
    opacity=alt.condition(hover, alt.value(0.3), alt.value(0))
).add_params(hover)

# Year labels
year_labels = base.mark_text(align='left', dx=5, dy=-5).encode(
    text='year:O'
).transform_filter(hover)

# Country labels
country_labels = base.mark_text(align='left', dx=5, dy=-25, fontSize=24).encode(
    text='country:N'
).transform_filter(hover).transform_filter(x_select)

background_year = alt.Chart(source).mark_text(
    align='center',
    baseline='middle',
    fontSize=96,
    opacity=0.2,
    x='width',
    y='height',
    dx=-400,
    dy=-300
).encode(
    text='year:O'
).transform_filter(
    x_select
).transform_aggregate(
    year='max(year)'  # This ensures we only get one label
)

# Combine all layers
chart = alt.layer(
    visible_points, year_labels, country_labels, hover_line, background_year
).properties(
    width=800,
    height=600,
    padding=50  # Padding required to ensure country labels fit
).configure_axis(
    labelFontSize=14,
    titleFontSize=14
).add_params(search_box)

chart

Great progress @dsmedia !

Address the hover behavior issue to ensure that only visible points respond to hover events.

Would it be enough to move .add_params(hover) to the visible points instead of the hover lines?

Modify the color encoding to use regions instead of countries, while maintaining the ability to highlight individual country trajectories.

Would it help to set color to 'region' and then use the detail encoding for the country?
Feel free to open a PR and we can keep iterating there.

I've created a pull request #3459 to address this issue, incorporating suggestions from @joelostblom for addressing problem with hover action over invisible points and encoding colors to regions.
As a side note, while testing the search box (proving its value!) I discovered a discrepancy between the official Gapminder datasets on life expectancy and fertility, and the vega/vega-datasets version of gapminder.json. The North and South Korea labels appear to be reversed in the vega-datasets version, showing e.g. that North Korea has a higher life expectancy in 2005 than South Korea. which may need further investigation. Should I create an issue on that repo?

@dsmedia Great find! Yes please open a PR on the vega-dataset repo swapping the labels of North and South Korea. I will add some comments to #3459 in a few minutes as well

@joelostblom Data quality/sourcing issue raised in vega-datasets.

I believe this issue can now be closed. @joelostblom or another maintainer, could you please review and close this if you agree?
Also, at what point would the new example get pushed to the github.io docs page?

Thank you @dsmedia ! We usually build the docs as part of creating a new release, since there could be new functionality that we don't want to publish until the corresponding version of altair is out.


Text overflow - long self message in fragments

A.m() {
  if(x) {
    m1111111111
  }
}

A message should knows its left, right and width (right - left).
A fragment width should bemax(width_based_on_participants, right_most_of_all_messages - left_of_fragment).


Re-implementation of the pyrenew's BasicRenewlModel using the proposed modularization

Goal
Using the discussed programming patterns, reimplement pyrenew's BasicRenewalModel.
Context
This will serve as a concrete example of the proposed programming patterns ADR.
Required features

Should feature the basic model.
Have an independent observation process.
Have an example using the linkage module for n units.

Specifications

[ ] Port basic renewal to observations.
[ ] Add a test.
[ ] Add a reproducible example under docs.

@dylanhmorris, on the checklist mentions the example of linkage module for n units.

Also, @AFg6K7h4fhy2, @CDC-Shelley, and @amirh357, the new version of pyrenew featuring the proposed structure is now available.


Prometheus Metrics

Description
This pull request marks a shift in development priority. Previously, the goal was to avoid the use of dependancies outside the python standard library to guarantee stability and consistent performance. However myosin is still an experimental piece of software since its viability in real-world production systems is currently undocumented. As this software becomes utilized in a variety of applications it is important to have more points of feedback to improve the performance of the software and reduce bugs.
Support for prometheus metrics will aid troubleshooting of systems using myosin and allow developers to find the optimal way of using it.  Furthermore, with a better understanding of the underlying software, developers may be able to better contribute to the project.
Resolutions

[x] Add prometheus aggregators to myosin source
[x] Update example program to include prometheus scraper and grafana dashboard for visualizing exported myosin metrics.
[ ] Add pypi dependabot
[ ] Update documentation to reflect new design changes

Dependancies

[x] prometheus-client == 0.14.1

Codecov Report

Merging #44 (a1470cf) into master (3999033) will increase coverage by 0.67%.
The diff coverage is 93.75%.

@@            Coverage Diff             @@
##           master      #44      +/-   ##
==========================================
+ Coverage   96.77%   97.44%   +0.67%
==========================================
  Files           7        8       +1
  Lines         217      235      +18
  Branches       30       31       +1
==========================================
+ Hits          210      229      +19
+ Misses          6        5       -1
  Partials        1        1

Impacted Files
Coverage Δ

myosin/state/state.py
95.18% <89.28%> (+0.37%)
:arrow_up:

myosin/models/state.py
100.00% <100.00%> (ø)

myosin/state/ssm.py
98.00% <100.00%> (+2.16%)
:arrow_up:

myosin/utils/metrics.py
100.00% <100.00%> (ø)

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


Tensorboards functionality is still behind an experiment

Not sure why this is still behind an experiment.
Perhaps something forgotten?
// Feature flag for 'Python: Launch TensorBoard' feature
export enum NativeTensorBoard {
    experiment = 'pythonTensorboardExperiment',
}

@joyceerhl @greazer /cc

Jeffrey and I discussed this and did this intentionally because users wanted the ability to disable the TensorBoard codelens entrypoint that this experiment introduces.


Issue with object being nil in action function

I'm not sure what has changed or why this isn't working but I was doing something similar in code about 2 years back.
I have the following sample struct with a Load() method that is a cli.BeforeFunc() (gonna simplify this greatly)
// Options encapsulates run time options coming from the cli and env
type Options struct {
	Host string
}

// Load is a cli before func used to inject cli options into the app context
func (o *Options) Load(app *cli.Context) error {
        o.Host = app.String("host")
	return nil
}

Then I have a top level command:
func Cmd(ctx context.Context) *cli.Command {
	return &cli.Command{
		Name:  "mycommand",
		Subcommands: []*cli.Command{
			MyCmd(ctx),
		},
	}
}

Then I have a subcommand that will be using the options.

func MyCmd(ctx context.Context) *cli.Command {
        // here I instantiate my options struct
	options := &common.Options{}
	return &cli.Command{
		Name:   "foo",
		Before: options.Load,   // cli beforeFunc that loads cli options into my struct
		Action: MyCmdAction(ctx, options),   // pass options to action function
		Flags:  myCommandFlags,
	}
}

func MyCmdAction(ctx context.Context, o *common.Options) func(app *cli.Context) error {
	return func(app *cli.Context) error {
		fmt.Printf("OPTIONS=%+v\n", o) // nil here
		return nil
	}
}

I have no idea why options is nil when passed to MyCmdAction(). Any ideas? I was doing stuff similar to this before.

@rhugga Your sample code looks ok. I believe it should work. We've done some optimizations in urfave/cli since 2 years however all unit tests before those changes still pass. My guess is its the way the App.Run is called. Can you provide a complete sample with App initialization and when App.Run() is called ?

@rhugga The following code based on your sample works as intended
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/urfave/cli/v2"
)

// Options encapsulates run time options coming from the cli and env
type Options struct {
	Host string
}

// Load is a cli before func used to inject cli options into the app context
func (o *Options) Load(app *cli.Context) error {
	o.Host = app.String("host")
	return nil
}

func Cmd(ctx context.Context) *cli.Command {
	return &cli.Command{
		Name: "mycommand",
		Subcommands: []*cli.Command{
			MyCmd(ctx),
		},
	}
}

func MyCmd(ctx context.Context) *cli.Command {
	// here I instantiate my options struct
	options := &Options{}
	return &cli.Command{
		Name:   "foo",
		Before: options.Load,              // cli beforeFunc that loads cli options into my struct
		Action: MyCmdAction(ctx, options), // pass options to action function
	}
}

func MyCmdAction(ctx context.Context, o *Options) func(app *cli.Context) error {
	return func(app *cli.Context) error {
		fmt.Printf("OPTIONS=%+v\n", o) // nil here
		return nil
	}
}

func main() {
	a := &cli.App{
		Commands: []*cli.Command{
			Cmd(context.TODO()),
		},
		Flags: []cli.Flag{
			&cli.StringFlag{
				Name: "host",
			},
		},
	}

	a.Run(os.Args)
}

$ go run main.go --host hello mycommand foo
OPTIONS=&{Host:hello}

I moved the flags to within the subcommand and that worked as well
$ go run main.go mycommand foo --host hello
OPTIONS=&{Host:hello}

So when you say it doesnt work is it possible you didnt specify the host flag on cmdline or maybe it was defined to pickup from the env ?


Use multi-year reporting in single report year to check values

There are some FERC tables, like the f1_elc_op_mnt_expn table, that report two years of data in one table. There is a "current year" value, and a "previous year" value.
The current transformations remove the data from non-report year years. However, that data may be interesting to compare against previous years. Is the "previous year" data the same as the "current year" data from last year?
We should build a check that not only retains this data but uses it to check other years.

This isn't necessarily the best way to go about this, but here are some of my thoughts pertaining to the f1_elc_op_mnt_expn table.
We built the unstack_balance_from_report_year function to handle tables with starting balance and ending balance values reported in different rows. Here we're dealing with the same concept except with "current year" and "previous year". If we modify the unstack_balance_from_report_year to work with both instant and duration tables, it could be a good starting place for A) retaining both the current and previous year values and B) using the previous year values to compare against last years' data.
Here is a suggested modification of unstack_balance_from_report_year:
class UnstackValuesToReportYear(TransformParams):
    """Parameters for :func:`unstack_values_to_report_year`."""

    date_col: str
    """The name of the column used to extract year from and compare to report year."""

    unstack_label_older_year: str
    """The name of the label given to values from the year before the report year."""

    unstack_label_newer_year: str
    """The name of the label given to values from the report year."""

class UnstackValuesToReportYearXBRL(TransformParams):
    """Parameters for unstacking values for eiter instant or duration table."""

    xbrl_instant: UnstackValuesToReportYear()
    xbrl_duration: UnstackValuesToReportYear()

def unstack_values_to_report_year(
    df: pd.DataFrame, params: UnstackValuesToReportYear
) -> pd.DataFrame:
    """Turn start year end year rows into columns for each value type.

    This function is utilized in :func:`process_instant_xbrl`.

    There are some instant tables that report the start-of-year data and the
    end-of-year data on seperate rows. The dbf version of the table has a column for the
    starting data, a column for the ending data, and a row number that cooresponds with
    the row literal that data represents: i.e., cost, etc.

    This function unstacks that table and adds the suffixes of your choice to each of the columns. These may then be used as
    ``value_types`` in the :func:`wide_to_tody` function to normalize the table.

    There are two checks in place:

    First, it will make sure that there are not multiple entries per year for the same
    entiity_id. Ex: a row for 2020-12-31 and 2020-06-30 for entitiy_id X means that
    there's more data here than is getting reported. We could just drop these mid-year
    values, but we might want to keep them or at least check that there is no funny
    business with the data.

    It will also check that there are no mid-year dates period. If an entity reports
    a value from the middle of the year, there is no telling whether that actually
    represents the start or end balance and requires a closer look.
    """
    df["year"] = pd.to_datetime(df[params.date_col]).dt.year
    if df.duplicated(["entity_id", "year"]).any():
        raise AssertionError(
            "Looks like there are multiple entries per year--not sure which to use "
            "for the start/end balance."
        )
    if not pd.to_datetime(df[params.date_col]).dt.is_year_end.all():
        raise AssertionError(
            "Looks like there are some values in here that aren't from the end of "
            "the year. We can't use those to calculate start and end balances."
        )
    df.loc[
        df.report_year == (df.year + 1), "value_type"
    ] = params.unstack_label_older_year
    df.loc[df.report_year == df.year, "value_type"] = params.unstack_label_newer_year
    if not df.value_type.notna().all():
        # Remove rows from years that are not representative of start/end dates
        # for a given report year (i.e., the report year and one year prior).
        logger.warning(
            f"Dropping unexpected years: "
            f"{df.loc[df.value_type.isna(), 'year'].unique()}"
        )
        df = df[df["value_type"].notna()].copy()
    df = (
        df.drop(["year", params.date_col], axis="columns")
        .set_index(["entity_id", "report_year", "value_type"])
        .unstack("value_type")
    )
    # This turns a multi-index into a single-level index with tuples of strings
    # as the keys, and then converts the tuples of strings into a single string
    # by joining their values with an underscore. This results in column labels
    # like boiler_plant_equipment_steam_production_starting_balance
    df.columns = ["_".join(items) for items in df.columns.to_flat_index()]
    df = df.reset_index()
    return df

I also used the following code to check the previous year values against last year's previous values without altering the structure of the table:
processed_dbf = processed_dbf.sort_values(
     ["utility_id_ferc1", "start_date", "report_year"]
)

group = processed_dbf.groupby(
     ["utility_id_ferc1", "oandm_expense_type"]
)

processed_dbf["prev_match_current_year_values"] = group.apply(
     lambda x: (
          x.prev_yr_amt.shift(-1) == x.annual_oandm_expense
     )
)

processed_dbf["last_year"] = group.apply(
     lambda x: (x.report_year.max()==x.report_year)
)

We don't expect any of the most recent ("last year") values to have any values to compare against (because there is no previous year that equals the most recent year of data!) , so we'll want to filter those out when comparing previous/current year values.

using previous year values to supplement and correct current year values would certainly be nice. The instances when the previous year was not a reporting year, it adds an extra year of data, which is mostly valuable for new respondents (over getting some 1993 data). Correcting data for sign errors would also be nice. And I'd rather have the extended/corrected data in a single column for the output tables in general, knowing that we can reference the raw data tables to check specific errors we're seeing.
previous/current year seems the same as starting/end of year balances to me.


Add potential identity assertion to MatrixHttpApi

This is a more minimal change than #108 (conflicts with #108) and I think better fits the structure of this project. Also begins to address #36.

ok to test


[QUOTA] Add basic interfaces and config for quota in Ambry.

This PR implements common interfaces for quota in Ambry.
QuotaManager class is going to be the overall quota manager in Ambry, and will be initialized in AmbryMain/AmbryFrontendMain/AmbryVcrMain etc. There will be only one instance of QuotaManager for an ambry instance. On its instantiation, QuotaManager will create HostQuotaEnforcer and RequestQuotaEnforcer classes based on config values in QuotaConfig.
The actual enforcement of each type of quota (CapacityUnit/Storage/Host level) lies with the individual QuotaEnforcers. Its the enforcers responsibility to calculate the cost of the request for the quota values that it enforces, to talk to the QuotaSource to get the quota limits, to save and retrieve quota values from the QuotaSource, and to recommend throttling of the requests.
Note that all the enforcement decisions and quota charging decisions for Ambry cannot be both made at the same point. Here are the reasons for that and some details about how the interfaces have been structured to meet that use case:

We can do request based throttling only when we have deserialized the request. But we want to do the host level throttling much earlier in the stack, because if the host is under high load, we don’t want to waste resources on decrypting and deserialization etc. This is the reason why we have different methods in QuotaManager class for shouldThrottleOnHost and shouldThrottleOnRequest. shouldThrottleOnHost is called in the first Netty Channel Handler as soon as a request arrives. shouldThrottleOnHost is called when the request has been deserialized and we are ready to process it. This is also the reason why we have RequestQuotaEnforcer that makes decision based on the actual request, and HostQuotaEnforcer that makes decision based on load on the host machine, irrespective of the request.
In Ambry there are POST and GET requests for which the actual amount resources used is known only after the request has been processed. Once the request has processed, the resources would have already been used by then, and hence there is no point of throttling after processing the request. But the charging against quota can only happen after the request has been processed. Hence the QuotaManager has two methods -- shouldThrottleOnRequest and charge. Before processing a request, we check if the quota is already over the limit. If yes we don't process the request and throttle. This is achieved by called shouldThrottleOnRequest. If the quota limit is not crossed yet, we process the request and call the method charge before sending the response, so that request cost is added to the quota usage.

QuotaSource is an interface whose implementations will be used to get the quota and save and retrieve quota usage. QuotaSource implementations will be used by QuotaEnforcers.
EnforcementRecommendation is the recommendation made by a QuotaEnforcer, for each request made to it. For now, the only thing caller does with the recommendation is an AND of all the quotaThrottle flags of all the recommendations. But we might need richer recommendation for future. For example, on each request, we might also want to send out the request cost, and usage percentage to the users as http response headers. Also going forward, we might want to add the concept of something like QuotaPolicy (not implemented yet). Using quota policy we can specify more complex throttling mechanisms like maybe throttle only for CAPACITY_UNIT and not storage, or throttle for certain containers while don't throttle for certain other high priority containers etc. This is the reason EnforcementRecommendation defines other methods to get RequestCost, Usage Percentage etc.
RequestCost is the cost of each request as calculated by QuotaEnforcer for each charge request.
All this fits easily in the AmbryLi implementation as well. In AmbryLI, we will create instances for QuotaSource and QuotaEnforcer. These will encapsulate UTTR's QuotaLoader and QuotaEnforcement classes respectively. The AmbryLI's QuotaEnforcement will be injected into QuotaManagerFactory via its constructor arguments. This way when QuotaManager object is created from QuotaManagerFactory, it will have all the enforcers to make enforcement decisions for requests or based on host load.

Codecov Report

Merging #1727 (f3f2b58) into master (36edb94) will decrease coverage by 58.36%.
The diff coverage is 0.00%.

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

Closing this as I split this PR into smaller onces.
The new PRs are under review or in progress.

Closing this as I split this PR into smaller onces.
The new PRs are under review or in progress.


Property forbiddenStores also excludes a store from appearing in mall searches

We have an existing property "forbiddenStores". The contains a list of shopIds separated by commas.
Currently, it is only checked in MallPurchaseRequest.run() to abort the request if you try to purchase from such a store.
This submit also uses that property to exclude such stores from appearing in the results of MallSearchRequests, as well, so its items do not figure into mall price calculations; since we will not buy from the store, its inventory is irrelevant to finding the "5th least expensive price".

@Veracity0 ideally you need to check out a new branch before making a PR, rather than committing to your own main branch. That'll allow you to submit multiple unrelated PRs


docs: add PR template

Why?
As the company is now unifying engineering practices, we are developing a common template that will allow us to simply and quickly describe PR in a consistent way.
What?
A markdown template for new PRs
How?

The template itself is as simple as possible and doesn't require any big descriptions. It simply allows to unify questions that may arise among contributors to the repository, as well as among observers.
The github-template mechanism described in the documentation is used

Why is this change necessary?

What does this PR do?

How have these changes been implemented?

How have these changes been tested?

Good idea to experiement with the template. Overall I think the structure looks good except that how could be marked as optional as when the change is small like a simple bug fix, the what part should be straightforward and include all the necessary information like "fix xxx by xxx"

And if this project is fully issue-driven I think the template could be simplified as:
issue:
summary: description of what has been changed at high level, [optional] with any information to help reviewers do a better job
test plan: unit tests / integration tests / manual tests with detailed procedures or screenshots / etc.

And if this project is fully issue-driven I think the template could be simplified as:
issue: link to the issue summary: description of what has been changed at high level, [optional] with any information to help reviewers do a better job test plan: unit tests / integration tests / manual tests with detailed procedures or screenshots / etc.

I like this one which is flexible enough, except that the issue and test plan can be optional.

And if this project is fully issue-driven I think the template could be simplified as:

I may have misunderstood the intent, but the request was for unified practices at the company level.

summary

It's actually a complete lack of a template for review, where again we'll have to discuss at every PR

Here is my version. What do you guys think?

style

We have git-user-hook on pre-push on cargo-fmt, so a separate commit type on style probably won't be used

**test**

For a project in the active development phase, "testing" will always be low-information. We can add it, but most often it will be either 'unit-test' or 'will be tested in future'.
Fot template I used 5w, this is the simplest template I know of for PR, which allows you to structure the description.

Agree that "style" is not needed with cargo fmt.
Indeed, "test plan" is mostly "unit test". It may be more helpful for teams with many junior engineers. Not quite effective for us.
5W can be used as a guideline within Summary?

5W can be used as a guideline within Summary?

Body of PR - is summary by itself, I don't understand idea of use summary

Will leave to @Gigatron to make the final call.
But "Summary + Test Plan" was the Facebook template. My intention to use it here is to use a documentation as guideline, instead of enforcing the "Why, What, How" template since it may be an overkill for simpler changes.

For a project in the active development phase, "testing" will always be low-information. We can add it, but most often it will be either 'unit-test' or 'will be tested in future'.
Agree that it may not be informational for most of the time with unit tests as the common practice. However it's effective in practice to remind the author to think thouroughly about his test plans when unit tests are not sufficient, and providing more value when the testing is non-trivial (e.g. integration tests).

5W can be used as a guideline within Summary?

Body of PR - is summary by itself, I don't understand idea of use summary

Not gonna to disagree on that, but the name is less important than the content itself as long as it doesn't confuse you, whether you call this part summary or 'why-what-how'. I think the idea is that we want a lightweight template which give you enough flexibility to move fast with small changes.

Do we have a documentation about our current consensus @Gigatron @cyphersnake

I put the link to the google pr guidance in the template. There is no extra document.


Task: Meet with interns to discuss batch processing of examples

Description:

I met with @otieno-juma on Tuesday and we walked through using Llama3-70b on a T4 4x to do batch processing of example generation. He put together a branch on his fork that we've shared with Chuck Harris.
I'd like to meet with both @ogidig5 and @jud-sdev to walk through the process as well. We'll start a batch job running, and then use Groq to create some examples very quickly to practice the rest of the process.
Could both of you message me in Zulip with a time that would be good to meet up. I'd love to visit individually with each of you.
Acceptance Criteria:

[ ] Meet with @ogidig5
[ ] Meet with @jud-sdev

@bmwoodruff I am available to meet today after the wwekly sync. Will that be okay?

@ogidig5 that will work!

I am also available today, as soon as you're done @ogidig5

Thanks for meeting up! Hopefully we get the build issue figured out before you work tomorrow.


Replace "Infrastructure cost" switch to cost type selector

User Story
As User, I want to select the cost type from a select box so that I can select the cost type instead of checking whether I want this rate to be infrastructure cost or not.
This change required to update the rate table to replace "Use infrastructure cost" and "Yes/No" to "Cost type" and "Infrastructure/Supplementary" respectively.
Impacts
UI

verified


2 more tools

Signed-off-by: Alexandre ZANNI<EMAIL_ADDRESS>Read the contribution guidelines
Why is this entry awesome?
Quickly describe why this entry is awesome.

Hey @noraj,
These dependencies looks like they are not mainted anymore.


#60 - provide jstl dependency

JSTL is required to have Eclipse resolving dependency on jsp pages. Set
it as provided as Widlfly is providing an implementation.
I used taglibs instead of jstl because it was simply not working in Eclipse, don't know why but as latest wildfly is using taglibs I think that it is is fine.
I provided the property version number in parent pom to avoid repeating it in all children, should I move it inside each children?

@jamesnetherton effectively better to use the artefacts from managed dependencies. I updated the PR

ok to test


necessary JSON header for parity

You can test it your self by calling any JSON RPC method to any parity client.

@izelnakri thank you for the contribution!


2017 and 2016 layouts dont automatically change profile pictures to be unrounded

title says it all, small issue.

2017

2016

Its just the topbar profile picture. It was already rounded in 2016 and 2017. You can unround it by enabling "unround profile pictures" in tweaks.


adds price to OrderFilled event

Description

Checklist

[x] Linter status: 100% pass
[x] Changes don't break existing behavior
[x] Tests coverage hasn't decreased

Affected core subsystem(s)

Testing

Refers/Fixes

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Pull Request Test Coverage Report for Build 439

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 85.683%

Totals

Change from base Build 437:
0.0%

Covered Lines:
285

Relevant Lines:
311

💛  - Coveralls


Add pre-commit execution option

Added pre-commit-hooks.yaml to enable inclusion as a pre-commit hook for https://pre-commit.com/

I thought I'd bump this PR. This would be a great addition to the pre-commit arsenal

@asottile made the adjustments, thanks for the review.


CI: enable testing with coming PT 2.2

What does this PR do?

[x] building images for new PT
[x] upload the new images
[x] use these images in CI
[ ] if all pass ad it to GC

Before submitting

Was this discussed/agreed via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
Did you make sure to update the documentation with your changes? (if necessary)
Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
Did you list all the breaking changes introduced by this pull request?
Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

Reviewer checklist

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

📚 Documentation preview 📚: https://pytorch-lightning--19289.org.readthedocs.build/en/19289/

@awaelchli what is your suggestion about
E       ValueError: Does not validate against any of the Union subtypes
E       Subtypes: (<class 'torch.optim.lr_scheduler.StepLR'>, <class 'torch.optim.lr_scheduler.ExponentialLR'>)
E       Errors:
E         - Problem with given class_path 'torch.optim.lr_scheduler.StepLR':
E             Parser key "verbose":
E               Expected a <class 'bool'>. Got value: deprecated
E         - Import path torch.optim.lr_scheduler.StepLR does not correspond to a subclass of <class 'torch.optim.lr_scheduler.ExponentialLR'>
E       Given value type: <class 'jsonargparse._namespace.Namespace'>
E       Given value: Namespace(class_path='torch.optim.lr_scheduler.StepLR', init_args=Namespace(step_size=50))

@carmocca @mauvilsa PyTorch changed the default value of the "verbose" argument of LRSchedulers to the string "deprecated" but didn't update the type (bool). Now jsonargparse can't validate the schedulers. Do you know a way around this or is the only option to fix it in PyTorch?

One change that could be done in jsonargparse that kind of makes sense is: when validating if the given value is the same as the default, then don't mind the invalid type. Would be better if people don't set invalid defaults. But since it is the default, then not bad considering it as valid.

jsonargparse v4.27.2 is now available including this change. You can try it out here.

Not sure what is happening but seeing with Fabric some torch.distributed.DistNetworkError: Unknown error

@mauvilsa Thanks for making the change so quickly. We've pulled in the latest release here but the tests still fail. I looked into it for a while and tried changing the definitions here because it looks like it's not able to infer that the default comes from the super class, but to no avail. Is there a way to give jsonargparse "fake" classes to validate against, where we could provide the updated scheduler type annotation?
I'm considering sending a PR to PyTorch, but at the same time we need to find a workaround for the current version 2.2.

@awaelchli I underestimated the required changes. Since pytorch 2.2 isn't out yet, I didn't test with the actual code. I only updated the logic related to parsing, but now I see it is also required to update the instantiation and the serialization. I will look into it.

I implemented a fix in https://github.com/omni-us/jsonargparse/pull/435. I tested manually by modifying my pytorch installation. If you like, before creating a jsonargparse release, it could be tested here by temporarily changing the requirement to jsonargparse[signatures] @ https://github.com/omni-us/jsonargparse/zipball/main.

It still doesn't work, doesn't it? How can I install a pre-release of pytorch 2.2?

Hey @mauvilsa Yes it seems so. Here are the instructions for different platforms to install the 2.2 rc:

PyTorch Release 2.2.0 - Final RC is available
PyTorch core and Domain Libraries are available for download from pytorch-test channel.
Reminder of key dates:

M5: External-Facing Content Finalized (1/26/24)
M6: Release Day (1/30/24)

Following are instructions on how to download different versions of RC for testing.
CONDA CPU:
Windows/LInux:
conda install pytorch torchvision torchaudio cpuonly -c pytorch-test
MacOS:
conda install pytorch torchvision torchaudio -c pytorch-test
CUDA 11.8, 12.1
Windows/Linux:
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch-test -c nvidia
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch-test -c nvidia
PIP CPU:
Windows/Linux/MacOS:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/test/cpu
PIP CUDA 11.8, 12.1
Windows/Linux:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/test/cu118
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/test/cu121
PIP ROCM 5.7:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/test/rocm5.7/
PIP Linux Aarch64:
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/test/cpu

I am kind of lost. The tests run fine for me locally. What I did was, first checkout this branch and then:
pip3 install -r requirements/pytorch/base.txt
pip3 install -r requirements/pytorch/test.txt
export PACKAGE_NAME=pytorch; pip3 install -e .
pip3 install torch-2.2.0.dev20231206+cpu.cxx11.abi-cp310-cp310-linux_x86_64.whl
pytest -v tests/tests_pytorch/test_cli.py

All tests passed. Only one skipped because torchvision is not installed. But the tests related to schedulers are run.

@mauvilsa You are right, I did the same locally installing jsonargparse from main branch and the tests passed. I must have messed up something installing jsonargparse from main here in the PR.

I'm also lost. What's the difference local vs here in the CI 🤔 Tested in clean env with Python 3.10, PyTorch 2.2 and jsonargparse from main, no issues.

 I did what @carmocca said and logged in via SSH into the job. Running the tests there failed, but when I manually cloned jsonargparse and ran pip install -e .[signatures] then the tests started passing. So I think as soon as @mauvilsa will release the next version, we should be fine.

Thank you very much @mauvilsa! Everything is working now 🎉


Support for excluding pattern inside scss

Hello,
I see that we can define "ignorePaths" in plugins options but that works for all files. It would be nice if we could add excluding patterns per file.
So for example we could do that:
style.scss
@import "../components/**/*.scss";
@import "!../components/**/*-admin.scss";

admin.scss
@import "../components/**/*-admin.scss";

Thanks!

Since this project uses glob you should already have that option.
Glob allows you to specify a variety of patterns including ignore patterns see the primer on the glob repo.
For easier globbing patterns it might be best to move the namespace to the front of the file name: admin-...scss instead of -...-admin.scss
Then, in your example, you could do:
style.scss
// import all scss files in components except files that start with admin.
@import "../components/**/!(admin)*.scss";

admin.scss
// import all scss files in components that start with admin.
@import "../components/**/admin*.scss;

Going to close this since the suggested approach (a second glob that cancels out the first) is pretty non-standard for globs and hopefully the approach suggested by @kryp71c will work for you.


Enable scoped variables in Zabbix datasource

As seen in alexanderzobnin/grafana-zabbix#66, repeat panel and row does not work with Zabbix datasource.
This comes from Host and items filters which does not support it.
I think I found a way to enable them. Not sure it'll cover all cases, but at least my dashboard works now :)

@jbfavre Thanks! This is new feature in Grafana 2.1 that I haven't tried.

Fixed #66


'newly' discovered troubleshooting / zingtree export PDFs to the server

Since ZingTree is a paid SaaS product, it's life is on a life support and will go away. These are direct exports from ZingTree prior to pulling the plug.
https://picobrew.com/Members/Support/Products?fbclid=IwAR2YOkzO3GCCg7mRSaxfZQTf47iSolSBhJpyWX0YykLnbAM-zkq87zeXVpA
cc/ @Intecpsp we were chatting about this tonight.

Nice find with these! I guess I need to check back periodically to see what else they change or add.
Side note: I see you're one of those 'Dangling Comma' types 😉

@Intecpsp in python yes .. so much easier to add entries to a dict that way (no need to make sure each prior line has a comma and last doesn't...)


Tower

PR Description 📜
Tower Blocks Game
Fixes #26

Place blocks one upon another to form tower.
Color of blocks keeps on changing for better effect.
Score adds as soon as tile is placed on other.
Tile size keeps on decreasing.

Click R to restart the game.

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
[x] I have added entries for my game in main README.md
[x] I have added README.md in my folder
[x] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @SimranLahrani842 ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

Thank you  @SimranLahrani842 , 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🚀


Allows setting the maximum number of issues being reported in a PR

Resolves #64.

@ashfurrow Could you take a look? Thanks.

Cool, thanks! I released this to Rubygems as 0.11.0.


Add ability to reset individual inputs back to default

If the user has modified a value from a preset, we should give the ability to reset back to the original value.
If the user removes a preset, we'll also preserve the values from the preset. We should let the user reset these back to a default state as well.
Option click or alt click the badge to reset.

https://www.figma.com/file/5AGV86CpsgTvc33CtGQQLR/Aerie-Activity-Creation-%2F-CRUD?node-id=728%3A115137&t=xh1nu7cSvSmfD9x0-4

thank you chris for always cleaning up my ticket names 🧹

haha! Thanks for labeling and adding to the project 🥇

done with preset functionality


[client] not possible to build market even though enough resources/pop

I think this is due to the way the check is done on the building. Small fix


Error order

Hi great lib :)
There is an issue with the order returned by the func validationFailed
func validationFailed(errors:[UITextField:ValidationError]) {
// turn the fields to red
for (field, error) in validator.errors {
field.layer.borderColor = UIColor.redColor().CGColor
field.layer.borderWidth = 1.0
error.errorLabel?.text = error.errorMessage // works if you added labels
error.errorLabel?.hidden = false
}
}
For example if a register this fields:
FirsName
LastName
Email
Phone
Age
I expect the order of the errors in the same way, but it does not return in the same order, so the first error could be Email, and after FirstName, etc..
Is there any quick fix for this?

From the Swift docs:

Swift’s Dictionary type does not have a defined ordering. To iterate over the keys or values of a dictionary in a specific order, use the sort() method on its keys or values property.

As far as I can see this is a Swift language issue. Thanks for the help @leodasvacas


Decouple the MessageId enum from translation key

During the implementation of pull request #806, I should show the same message for two different cases. In the case of a v2 epub the message should be a WARNING and in case of v3, it should be INFO.
When doing this I got to the conclusion that decoupling the translation keys from the MessageId enums could give us the opportunity to reuse messages with different error levels and we could also move messages around so they could be grouped into similar messages. In my case, I created a new message for PKG in the number 24. It's the same as 17 and maybe the number 18 would be more appropriate because they handle the same thing and could be grouped even if the message differs slightly.
As the implementation is today it would be large refactoring to insert a new message close to another older message.

Hi Daniel,
thanks for your suggestion. I've never stumbled upon this requirement before, but I think Romain did. @rdeltour didn't you implement some kind of severity switch somewhere before? There's something in my head which tells me we spoke about it before, but I may be wrong.

While I think this is a good idea in general, I hestitate to shout "go on and implement it" as it would most likely super-break the (already little broken) PR #650 which I would have liked to merge in 4.1 but am missing time to review at the moment... :-/

I agree with Tobias. We should wait for #650 and then maybe think about a more ambitious and global messaging API overhaul, which this should be part of.
After 4.1 sounds safer.


ERRO[0000] Failed to create a file for article titled

I tested some RSS feeds. The feed https://blog.fefe.de/rss.xml is mostly failing.
Maybe to long or wrong encoding? Didn't dive into the code yet :smile: .

Thanks for reporting. I'll look into it sometime within this week.

I've raised an MR to fix this, and included some simple tests with it too.


Make input/output CLI more normal

Make the new CLI:
./authorization_logic <input_file_path> -o <output_file_path>

instead of the fully ridiculous
./authorization_logic <filename> <input_file_path_except_filename> <output_file_path_except_filename> (and .dl gets magically added to output filename)

This should also make the bazel rules for running this thing a bit easier to write because bazel better handles programs where the complete paths of generated outputs are verbatim in the command invocation somewhere.
A followup PR will allow accepting multiple files as inputs (without checking cryptographic signatures) from the CLI which we need for binary transparency.

Right now another command line argument specifies the directory in which to store each of the separate CSV files that contains a result for a query. Another PR might change the way query results are generated so that a single CSV is outputted to contain all the results and another command line option specifies the output path of this one CSV.


Switch to static RegEx method calls

This is a follow up to #9, which was closed because it was supposedly superseded by #10, but that PR only removed the Regex from Range.cs, not the one from Hash.cs.
This is a rebase with only the Hash.cs from my previous PR.

My bad, mixed the two up, thanks!


Builds failing for projects using the "typing" package

Details

Read the Docs project URL: https://readthedocs.org/projects/pyrogram/
Build URL (if applicable): https://readthedocs.org/projects/pyrogram/builds/8338798/
Read the Docs username (if applicable): delivrance

Expected Result
Build expected to succeed.
Actual Result
Build fails.
Description
Hi. I suspect there's a bug in the typing package shipped as built-in package in Python 3.5.2 -- which I think is the version used by CPython 3.x in readthedocs. Because of this, builds for projects using it will fail.
I successfully reproduced the issue locally with Python 3.5.2 (newer versions starting from 3.5.3 are not affected).
I also tried to force typing as external dependency, but it seems to be ignored by Python itself.
I finally took the updated typing.py module from https://raw.githubusercontent.com/python/typing/master/src/typing.py and manually replaced the file shipped with 3.5.2. The errors vanished.
Is there any chance to see an interpreter update in your build instances?

Typing is supported with python 3.6, you need to use a config file, soon 3.6 (or 3.7) will be the default interpreter.

@humitos Thanks, it worked: https://readthedocs.org/projects/pyrogram/builds/8342227/
@stsewd Nice to hear that, thanks again.


feat(DAT-19013): Enhance History Command to filter changesets by tags

Added new command arguments tags and tag to filter changesets by tags
Refactored HistoryCommandStep to use getOrUpdateReportPrinter method for better code reuse
Updated HistoryCommandStepTest to include tests for the new tag filtering functionality

Impact

[ ] Bug fix (non-breaking change which fixes expected existing functionality)
[X] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description

Things to be aware of

Things to worry about

Additional Context

@filipelautert when there are multiple tagged changesets, the output shows each one in a different table instead of all of them in one table.
showTags:

tagFilter=first,third:


RPM Build error on centos 7.2 (WHM 11.58.20)(EA4)

Hi
i'm trying to install mod pagespeed on centos7 for Cpanel (EA4), i see the following error. how i can resolved this issue ?
`root@server [~]# rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm
Installing ea-apache24-mod_pagespeed-latest-stable.src.rpm
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.AeXLU1

umask 022
cd /root/rpmbuild/BUILD
wget -q -N -O mod-pagespeed-stable.rpm https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.mvORuq
umask 022
cd /root/rpmbuild/BUILD
rpm2cpio mod-pagespeed-stable.rpm
cpio -idmv
argument is not an RPM package
cpio: premature end of archive
error: Bad exit status from /var/tmp/rpm-tmp.mvORuq (%build)

RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.mvORuq (%build)`
https://i.imgsafe.org/5a0776fc53.png

Problem solved with https://github.com/pagespeed/cpanel/issues/50#issuecomment-244112084


How to use?

installed with Vundle, can you pls explain what commands are available to navigate through tags?

Navigating through tags is done with the normal Vim commands for that -- Gutentags doesn't add anything there, as its goal is only to generate the tags file and keep it up to date.
Navigating through tags is mostly done with CTRL+], and jump back with CTRL+T. See :help tags to get all the info.


R.clone: deep copy including constructor to use instanceof

Is there possibility in Ramda to copy object to save constructor and use instanceof?
For example lodash has cloneDeep which returns true for instanceof:
class Point {
  constructor(title) {
    this.title = title;
  }
}
const source = new Point('example');
const copy = _.cloneDeep(source);
console.log(copy instanceof Point); // true

Ramda clone returns false for instanceof:
class Point {
  constructor(title) {
    this.title = title;
  }
}
const source = new Point('example');
const copy = R.clone(source);
console.log(copy instanceof Point); // false

R.map(R.clone, source) doesn't work.
Thanks.

For reasons I discussed last week (https://github.com/ramda/ramda/issues/2775#issuecomment-458190103), I am not much interested in this.  Note that the same example used there would have the similar issues with lodash's cloneDeep as well.
lodash is a general-purpose library, meant to help with any of your programming needs.  Ramda is more specialized, focused strictly on making it easier to use some of the techniques found in Functional Programming languages.  While we have done some small work over the years to work with OOP, it has never been central, and I think we're slowly removing that.  It just doesn't fit with the design goals.

@CrossEye sorry but your argument in https://github.com/ramda/ramda/issues/2775#issuecomment-458190103 is a bit narrow minded.
Of course you can't clone deep in ALL situation, but to just create a copy that completely ignore everything from ES6 (the last 7 years of development of the language) just because you cannot guarantee it will create a perfect copy 100% of the times you instead decide to basically NEVER create an actual copy for whoever is using features introduced 7 years ago.
No one doing something like you described in https://github.com/ramda/ramda/issues/2775#issuecomment-458190103 would be surprised that a library cannot deep clone the object they created once you show him that you just cannot.
I also completely reject the argument of flexibility: flexibility means I should be able to use language features, which include OOP since 7 years ago.
Nowhere I saw in your homepage readme something that said "hey we do not support ES6 and forward", which is why I'm here posting this.

@danielsegato:
This really has nothing to do with ES6.  Classes introduced there are mostly syntactic sugar atop the existing prototypal inheritance model.  The problem I was trying to describe is that objects can be complex.  ES6 classes don't change this fundamental complexity.  Moreover, there are many other viable ways in JS to make objects.

No one doing something like you described in https://github.com/ramda/ramda/issues/2775#issuecomment-458190103 would be surprised that a library cannot deep clone the object they created.

But do they know all the object creation details of every function in every library they use, of the code from every teammate on their project and from sister teams deep within the bowels of their large company?  Probably not.  If someone else on their project  created this:
const ConstrainedRectangle = (w, h) => {
  const ratio = h / w // todo: deal with division by zero
  return {
    get width () {return w},
    set width (width) {w = width; h = width * ratio; return this;},
    get height () {return h},
    set height (height) {h = height; w = height / ratio; return this;},
    area () {return h * w},
    perimeter () {return 2 * h + 2 * w}
  }
}

const r1 = ConstrainedRectangle (5, 3)
console .log (r1 .area ())  //=> 15  (5 * 3)
r1.height = 6
console .log (r1 .area ())  //=> 60  (10 * 6)

and your code cloned such rectangles, the clones would not properly capture the constraining ratio.
And if there's a real possibility that the user doesn't know such things, then it's far worse for Ramda, which knows nothing at all about your construction techniques.  This is the real worry.  If we start down that rabbit hole, where do we stop?
That is not to say I'm entirely opposed to going further, to do what we can with the prototype chain.  But it would have to come with few downsides, as it doesn't fundamentally solve the underlying problem.
Yes, lodash has its solution to this.  It won't fix the example above or those described in the linked issue, but it does offer some additional capability.  Should Ramda do the same?  Certainly not just because lodash does.  lodash is designed to be a general-purpose utility library.  Ramda focuses more narrowly on FP concerns.  Although Ramda in its early days tried to help bridge the OOP/FP gap, we've mostly given up on that.  Only very old functions even attempt to keep the this context.
So what lodash does is not much of a motivation.
But there is also absolutely nothing to prevent users to pick and choose functions they want from different libraries.  Just because one is using Ramda in a project, there is no reason for her not to also use lodash.clone.

I also completely reject the argument of flexibility: flexibility means I should be able to use language features, which include OOP since 7 years ago.

The point about flexibility was not that Ramda was flexible but that the underlying language techniques were so varied that we could never be able to cover them all.

Nowhere I saw in your homepage readme something that said "hey we do not support ES6 and forward", which is why I'm here posting this.

Again, this is not about ES6.  This is about FP versus OOP.  Ramda's functions support simple data structures, but we don't try to extend this to more complex ones involving local closures or the prototype chain.
Think for a minute about assoc.  We could very easily write a version of assoc like this:
const assoc = curry ((name, value, object) => {
  const newObj = deepClone (object)
  newObj [name] = value
  return newObj
})

If we were to fix clone to handle prototypes, then presumably users would expect assoc to have the same behavior.  We could do that, but we would break another contract that assoc offers: structural sharing, that is, for instance, assoc ('a', val, obj) .b is reference-equal to obj .b.  This is important in FP to avoid bloating memory usage.  Would we have to give up that guarantee?
It's these sorts of concerns that make us able to mostly punt on any further OOP integration.
However, if you feel strongly about this and want to create a PR for it, I can promise that we'll give it serious consideration.

@CrossEye thank you for your answer.
I completely understand the added complexity of handling classes.

If we start down that rabbit hole, where do we stop?

I believe it should be clearly stated in the homepage where do you stop.
Right now it's plain objects. And I'd have love to find it in the README of this project something along the line of "Rambda doesn't support classes".
I believe immutability is a must for any functional programming library and thus you can set some constraints like that classes must not be mutable and explicitly state that you are not gonna support mutations.
I was really surprised when an immutable class I had become a plain object with a simple clone.
I firmly believe that if you take a strong stance like this in a library it should be explained in the library homepage, or at least briefly mentioned.

However, if you feel strongly about this and want to create a PR for it, I can promise that we'll give it serious consideration.

I wouldn't be able to do this. But kudos for the proposal.

@danielesegato:

I firmly believe that if you take a strong stance like this in a library it should be explained in the library homepage, or at least briefly mentioned.

If you have some suggested wording for this, please share it, either here or in a PR for Ramda.md.  I certainly have no objection to including such a warning, but I'm not really sure what to say or whether it belongs in the README or in clone documentation or in some other place.

@CrossEye

If you have some suggested wording for this, please share it,

something along the line of:
If you use classes or other prototypal inheritance models (OOP) be aware that Ramda does not support it. You'll have to serialize and deserialize your classes before and after using Ramda functions. You can read more information on the rationale for this design decision here and here. (links you think better describe the reasons for your design decision)
I'm sure you can come up with a better wording for the same concepts. I'm relatively new to the javascript / typescript world.

@danielesegato

If you use classes or other prototypal inheritance models (OOP) be aware that Ramda does not support it. You'll have to serialize and deserialize your classes before and after using Ramda functions.

The trouble is that this isn't really true.  You can use many Ramda functions -- probably most -- with prototypal objects.  It's those that return altered versions of structures, things like assoc, assocPath, evolve, set, and over, and of course clone, that have this restriction.  That's why I have a hard time seeing this as a README change, although if we can find an appropriate warning, this would be a good place for it.
Perhaps what we need is a note in the relevant functions of something more like:

This function does not maintain the prototype chain of input objects.

You also have gotten me thinking about how much it would take to maintain the chain better than we do currently.  I will take some time to look into it, but I'm not particularly hopeful that it will be worth doing in Ramda, as Ramda's goals are to help with FP programming and not to be a multi-paradigm utility library.  Still I will try to spend some time this week.


Setup Guide Document, the first 2 images for the LINK and the LANDING PAGE are OUT OF DATE

On page 1 of this Setup Guide Document, the first 2 images for the LINK and the LANDING PAGE are OUT OF DATE
Excerpt from DOC::
How to access setup guides in the Microsoft 365 admin center
The setup guides are accessible from the Setup guidance page in the Microsoft 365 admin center. You can keep track of the status of your progress and return at any time to complete a guide. To reach the Setup guidance page:

In the Microsoft 365 admin center, go to the Home page.

Find the Training & guides card.

Training & guides card in the Microsoft 365 admin center [THIS IMAGE IS OUT OF DATE]

Select Advanced deployment guides and then select All guides.

Screenshot of the Setup guidance page in the Microsoft 365 admin center [THIS IMAGE IS OUT OF DATE]
[Enter feedback here]

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

ID: 9e0e0337-ad80-74c2-07df-1164a0641feb
Version Independent ID: 7f19f87a-79cf-33b6-c64f-4449b1add0d9
Content: Setup guides for Microsoft 365 and Office 365 services - Microsoft 365 Enterprise
Content Source: microsoft-365/enterprise/setup-guides-for-microsoft-365.md
Service: o365-administration
GitHub Login: @kelleyvice-msft
Microsoft Alias: kvice

NOTE: based on the NEW images and content, the content might be stale as well
Setup Guide - Github Feeback - Images and Content are Out of Date #8106.docx

@chasman157 Thank you for your feedback. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/8200
Once the author approves, the changes will be live.
Thanks
Sri

@msbemba Thank you very much for the contribution and updating the documentation with PR. @chasman157 Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Exclude sub-tests that use SecurityManager

Related https://github.com/AdoptOpenJDK/openjdk-systemtest/issues/271
Signed-off-by<EMAIL_ADDRESS><EMAIL_ADDRESS>

I'm not familiar with system tests framework. Looks like mauve_all.xml (test on one thread, could also comment out non-working testcase), mauvu_all_exclude.xml( exclude problematic testcase). Same to multi-thread tests. Should those tests be also excluded in one thread tests?

I'm not familiar with system tests framework. Looks like mauve_all.xml (test on one thread, could also comment out non-working testcase), mauvu_all_exclude.xml( exclude problematic testcase). Same to multi-thread tests. Should those tests be also excluded in one thread tests?

No. The reason why this exclusion is happening only occurs in a multi-threaded scenario; as plained by Pete here: https://github.com/AdoptOpenJDK/openjdk-systemtest/issues/271#issuecomment-500621760


[1.20.1] Block entities have weird/inconsistent shadows

From 1.19 geckolib 3 using EntityCutout rendertype:

1.20 geckolib 4 using EntityCutout rendertype:

1.20 but from below, the lighting actually does look correct.

Tried various render types, nothing is unchagned.
It looks like the lighting is baked in from the wrong rotation? As if it were upside down?
possibly related to #448?

Looks like this also applies to models held in the hand, for items as well (including the latest fix for GUI lighting

Very interesting
Can you join the discord so it's easier to communicate lol

@baileyholl You'll be happy to know I finally fixed this lol


Make all Velocity & Broadening maps available

Save velocity and broadening maps for each line and save them in their own folders. These are already calculated -- just need to save them!

Done :)


Allow Generation of Self Assessment Link

Blocked by impactasaurus/server#27. When starting a meeting (aka assessment) add an additional button to allow the user to generate a self assessment link instead of conducting the assessment.

When starting a meeting offer a second button which reads "Self Assessment"
When clicking, request the link from the server
Take the user to a new page showing the link

 Self assessment (via link)


Some minor fixes and additions to the README

Fixes #150

thanks!
/approve

Actually would you mind rewrite the commit message to have brief imperative wording and use Fixes #150 as the commit description? Thanks!

@enxebre - that look better?

I appreciate that, thanks!

/lgtm


Set Policy Driven Update path's are wrong

All Updates SetPolicyDrivenUpdateSource path's are wrong - there needs an "Updates" added to the settings name.
Verified under 21H2 -> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Update

https://github.com/MicrosoftDocs/windows-itpro-docs/issues/10617


Add service mesh discussion community forum to menu

Current State of the Meshery.io site
Menu is missing a link to the service mesh discussion community forum

Desired State of the Meshery.io site
"Discuss" with an external link icon pointing to https://discuss.layer5.io

Contributor Resources
The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

See the Contributing to Meshery.io Website section of the readme.md and other contributing instructions, too.
See Meshery site designs in this Figma designfile. Fill-in the Layer5 Community Member Form and join the Layer5 Community Slack for access.

On it @leecalcote boss😃


figure out how to expose settings in Tectonic Console UI

feel free to ping me about this & we'll work on getting something figured out

Right now the UI has code that shows information-only data ("update available, updating" type stuff)
More fine grained settings aren't available yet, pending on adding an "UpdateGroup" TPR with configuration and such around that.

Sounds good for now.
The "UpdateGroup" thing seems less useful after an discussion we had. Let's discuss that further before pursuing it.


Type 'undefined' is not assignable to type 'RouterState' in strict mode.

I am using version 2.0 and "strict": true in tsconfig.json.
Code:
import { RouterState } from 'react-router-redux';
import { routerReducer } from 'react-router-redux';
import { combineReducers } from 'redux';
import { RootAction } from './actions';

export interface IRootState {
  router: RouterState;
}

export const rootReducer = combineReducers<IRootState, RootAction>({
  router: routerReducer,
});

Error:
Argument of type '{ router: Reducer<RouterState>; }' is not assignable to parameter of type 'ReducersMapObject<IRootState, RootAction>'.
  Types of property 'router' are incompatible.
    Type 'Reducer<RouterState>' is not assignable to type 'Reducer<RouterState, RootAction>'.
      Types of parameters 'state' and 'state' are incompatible.
        Type 'RouterState | undefined' is not assignable to type 'RouterState'.
          Type 'undefined' is not assignable to type 'RouterState'.

Workaround is to set "strictFunctionTypes": false in tsconfig.json (found it in https://github.com/ngrx/platform/issues/709).

Sorry but following the error message this issue clearly has nothing to do with this library.

Could you help me how to modyfy my code to not to need "strictFunctionTypes": false. I'll appreciate also if you forward me to better place for support. Thanks in advance.

It seems you have mismatched type definitions of react-router-redux and redux, you should investigate closely version you're using, I suspect you're using yarn which is very bugged in this regard and introduces a lot of duplicated packages, with JS you'll get away but with types there will be issues with compatibility of different versions

Thanks. I am using npm but I'll investigate according your suggestions.

Please check if you are using redux@4 or even redux@4 types, this will clash because I think is still using redux@3

Relevant lines from our package.json:
"react": "16.3.2",
"react-dom": "16.3.2",
"react-redux": "5.0.7",
"react-router": "4.2.0",
"react-router-dom": "4.2.2",
"react-router-redux": "5.0.0-alpha.9",
"redux": "4.0.0",
"typesafe-actions": "2.0.0-1",
"@types/react": "16.3.14",
"@types/react-dom": "16.0.5",
"@types/react-redux": "6.0.0",
"@types/react-router-dom": "4.2.6",
"@types/react-router-redux": "5.0.14",

@zdila I'm having same issue - did you manage to resolve this? Thanks in advance.

@pdaddyo I am still using workaround mentioned in the issue description.


Supported Fansite Workstream and preparation

To do before becoming a supported fansite:

It has to be stated on your site that Tibia is made by CipSoft and that all content from the official Tibia website or which has been provided by CipSoft, for example any graphics that you may use, is copyrighted by CipSoft. The references to our company and Tibia should be presented as links on your site.
Your fansite needs a section with contact details, for example the name of the site's creator and a contact address.

To do after becoming a supported fansite:

We need a reliable contact person who should be one of the responsible administrators of the fansite. We need this person's name, his Tibia character and an email address at which we can contact him. This person has to be able to communicate in English at an acceptable level. The contact person needs to check his emails regularly, and also needs to check the internal fansite board regularly.
We ask you to inform us about your site traffic on a monthly basis, statistics need to be sent to<EMAIL_ADDRESS>until the 3rd of each month.

done