test: add e2e tests on ACR and AKS

Description
Followed https://github.com/deislabs/ratify/blob/main/docs/reference/oras-auth-provider.md#3-azure-managed-identity to set up tests to use Azure managed identity for ACR and AKS.
Question to reviewers: since I just set up a fixed ACR and AKS on an Azure group, the test might fail if multiple PRs are running the same test case. Maybe we can let action to run ACR/AKS creation and configuration setup for each test to separate the testing resources, but it could make the e2e test take much more time to run.
One more option is that we could just run this test for release process.
Notes: the test is failing due to missing secrets in this repo. It's passed in my private repo: https://github.com/binbin-li/ratify/pull/48 Will need someone with access to help me set up the secrets.
The secrets we need to config:

This pr addresses one test case in: https://github.com/deislabs/ratify/issues/324
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Passed e2e test.
Checklist:

[ ] Does the affected code have corresponding tests?
[ ] Are the changes documented, not just with inline documentation, but also with conceptual documentation such as an overview of a new feature, or task-based documentation like a tutorial? Consider if this change should be announced on your project blog.
[ ] Does this introduce breaking changes that would require an announcement or bumping the major version?
[ ] Do all new files have appropriate license header?

the action job result can be checked on https://github.com/binbin-li/ratify/pull/48


RFC: Memoize functional components by default

Make functional components implement React.memo by default
Add React.always that flags the functional component to be treated as it is currently
Add a warning to React.memo when it is used without defining arePropsEqual

View Rendered Text

This is not a breaking change. Nothing would break. Just would work not as expected, and it would be almost impossible to fix it.

This is not a breaking change. Nothing would break. Just would work not as expected, and it would be almost impossible to fix it.

@theKashey Could you elaborate?

I'm just remembering how many times something went wrong when I used PureComponents here and there. Event propagation got stopped. Old context, which is still here, broken. Something, what was working yesterday, is no longer working.
PureComponents and memo are not only powerful and useful tools - they are dangerous tools.  Cutting an update is a side effect, and sometimes you don't have rights to apply it. It's more about - not every component could understand it's position and a role in the composition.
And it becomes twice more dangerous with a custom arePropsEqual.

In Vue components are pure by default. This is even one of their selling points: "In React, when a component’s state changes, it triggers the re-render of the entire component sub-tree, starting at that component as root." (https://vuejs.org/v2/guide/comparison.html)
This proposed change would break impure components (components that have side effects). Based on the code I've seen, they seem to be the exception. Reasoning about when a component is going to render is something that seems really, really hard.
An example of an impure component: a component that displays the number of times it's been rendered.
Another example: a component that displays the current whether every time it is rendered.
However, in both cases, you could add a prop to the component that gets incremented when it needs to be rerendered or you could explicitly set the shouldComponentUpdate.
I have trouble imagining a useful impure component but I'd like to see an example.

Render props? I dont remember exact case (somewhere in a twitter lands), but it short:
const {variable} = this.state;
return (
 <Layer1>
   <Layer2>
     <Layer3>
       <Something>
         { () => variable } // why my variable is not updated? In which function scope it exists?
      </Something>
    </Layer3>
   </Layer3>
 </Layer3>
)

@theKashey I would argue that examples like that are far from the norm in React. Users who would be using complex patterns such as that would probably recognize whether or not they need a pure or impure component. Providing a React.always would solve that problem. The motivation for this change is that I believe the majority of users would benefit from a functional component being memoized by default, especially with the introduction of hooks.

We are all good developers at day, and even better at night. Your proposal could break the code, I was sure about just yesterday.
The problem is - it would not surface the issues my code had, and help me make an application better - it would put it into undefined behavior and leave me alone with untraceable bugs.
It should be opt-in, like <StrictMode>, or provide some reverce debug information like detecting changes in the React.Tree it would cut off, and helping me to find the reasons behind.

Just my two cents. Two production apps and we don't use memo at all 😎 React is fast on its own. If the day come when some noticeable performance drop occurs, then it's easy to try memo as first band-aid, but it shouldn't be the default. It's really a premature optimization that can kill a mood very quickly when something stops updating and it's hard to debug what and where.
Beside, if everything would be memoized by default, you would inspect every component on the path, possibly throwing some always along to see if it fixes something. I mean it's really hard and I am not aware of proper tools that would allow to spot these issues quickly.
Honestly, why would anyone want to introduce possible bugs into their code in exchange for some theoretical optimization? Proper optimization is hard and should be considered as a next step in the development instead of expecting some magic want to do it for me.

But, I liked my idea to have a <PureMode> component, to explicitly apply forced memoization behavior for all the components below it.

Originally, the reason React didn't do this is because the principle in place was that ideally it should work but be slower if you did things like mutate something. However, in practice we've found a lot of patterns and cases that just break if you mutate. (With new features concurrent mode, streaming rendering and suspense, this risk significantly increases.)
The funny thing is that React already does this, except a level shallower than memo. React already bails out by default if oldProps === newProps. I.e. if the props object itself is the same. This is ofc much less common to match but it's also significantly cheaper to do.
Looping over properties in a JavaScript object, extracting their value and comparing them isn't free. It adds some cost.
However, there is also a cost associated with React memoizing the result. We have to keep some significant bookkeeping in React to do so. Not just the old and new value but we also keep things like the effects computed by the subtree.
When people talk about other systems doing this automatically, they often don't really mean memo. It's not memoizing so much as keeping track of dependencies to mutable values so it knows what must rerender when those changes. That's what lets small changes make updates deep in a tree.
Another approach is also to have a compiler compute more of the dependencies for you.
I think that's more likely what we'd do here. If we turned on auto memoization it would be more of a heuristic and it wouldn't use the naive dynamic comparison but instead let a component compile to an optimized form of itself that knows which prop changes to look for.

When people talk about other systems doing this automatically, they often don't really mean memo. It's not memoizing so much as keeping track of dependencies to mutable values so it knows what must rerender when those changes. That's what lets small changes make updates deep in a tree.

@sebmarkbage  Could you give more details about this?

I had a one more step idea, when react getted a config for always pure components not only it could handle of props but also it can handle changes of state in useState which can not be handled now anyway
with getting a config for change this default reaction there would be many performance optimizations without any breaking changes

I had a one more step idea, when react getted a config for always pure components not only it could handle of props but also it can handle changes of state in useState which can not be handled now anyway
with getting a config for change this default reaction there would be many performance optimizations without any breaking changes

Per https://github.com/reactjs/rfcs/pull/108#issuecomment-468888951, we're not going to do this.


refactor(ast): rename IdentifierReference::new_with_reference_id

#5157  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite


How to go about the installation

@jffernandez I want to try to use this package and contribute to improving it along the way.
Right now I am finding it hard to install because it cannot be found on npm.

@jffernandez Are you up for taking this package and hosting it on NPM to make installation easy?

Hello @mickeymond You can easily install a package from GitHub directly using your package manager (yarn, npm, ...), for example, with npm:
npm install beincrypto/strapi-plugin-web3-login
https://www.geeksforgeeks.org/how-to-install-an-npm-package-directly-from-github/


Window always on top

Hello I'm wondering if it is possible to make the main window topmost and float on top of all other application windows?

This hasn't added yet.
The question is: Is this really something an application should do? I rather think it's an anti-feature.

For me being able to make a window stay on top of others is very import. I'm a graphic designer and I write automation/helper tools for myself and coworkers. We work in Adobe Illustrator primarily but the tools I make need to be accessed and used frequently so it is convenient if the small tool window (which is usually quite small, the size of an Illustrator palette) can float above the Illustrator window at all times so whenever you click back into Illustrator you don't have to go back and find the tool again under your other open windows.  I'm essentially making additional palettes for Illustrator.
The logical follow up question is: why not use Illustrator's built in gui scripting/plugin apis? There are three primary reasons;

The pure javascript gui api that Adobe provides does not allow you to create windows that both remain above other windows and allow interaction with illustrator simultaneously. You can create a window that floats on top of Illustrator, but you cannot interact with Illustrator until you close this window.  Alternatively you can create a window that allows you to interact with Illustrator while it exists, however this window will not remain on top, it will go to the bottom of the window stack after clicking the Illustrator window. These windows do not have dock icons, so to reactivate it you have to click on the window, and if Illustrator is on top of it, that means minimizing or moving Illustrator to the side to be able to click on the window. Neither option is efficient for a tool that is accessed frequently.

Adobe provides two alternative apis that can create native Illustrator palettes, however these require creating dedicated plugins which must be installed in the plugin directory.  For my team this is not a great option because it requires Admin approval for installation, and most of my team members do not have admin rights on their machines due to company policy. In order to install the plugins every designer would have to open an IT Help desk ticket and have the IT guys login remotely and approve the installation. This would also have to be done every time I update the tool, thus I prefer a solution which allows users to install the tools in a folder that do not require Admin approval.

The Adobe apis don't all allow easy access to external processes. For example running and external shell processes is actually impossible using the normal Illustrator javascript api.  File IO is also a huge pain, and it just generally lacks many convenient high level features that Nim offers.  I could use the c++ plugin api which can be mixed with normal c++ code, but, I don't necessarily want to use this api for small tools, because of #2 above, and because of c++'s lack of abstractions which slow down development (that is I want to use a higher level language for productivity).

So, thus far I have been writing tools in Python with Tkinter or PyQt.  Both libraries provide the window always on top feature, but I want to switch to Nim because on top of just preferring the language, distribution is much easier.
Deeper Thoughts answer:
The way Tkinter and PyQt handle it is that all windows that have the always on top flag set float above all windows that do not have this flag. When a window that does not have this flag set is activated, the floating window still floats above but just doesn't have focus. When multiple windows set this flag, the most recently activated application is the top most.
Right now I am using the wxWidgets bindings which allow this feature. However it would be nice to use a smaller library that has a more Nim-like interface which is why I am interested in trying NiGui.  However for me that lack of always on top ability is a deal breaker for my specific use case.  I do of course realize how niche my use case is.

Ok, now I understand your use case.
For Windows it's easy to implement: HWND_TOPMOST or WS_EX_TOPMOST.
For Gtk I found gtk_window_set_keep_above.
I will try it the next days.


HTML Log improvments

Implemented Account Estimated Earnings: https://github.com/Mikadily/poloniexlendingbot/issues/73
Moved javascript code to it's own file, makes development easier.
Reduced Header size (reduced padding, moved timestamp to right side)

Tested and Looks good to me!


Add glTF blocks

As a user I want to be able to use static glTF models directly in my scripts
Should be able to load from:

[ ] Byte stream
[ ] A file

Note: backend code exists only blocks are missing

Hey team! Please add your planning poker estimate with ZenHub @Kryptos-FR @satendrapalsingh


Option Marshalling

Use product of #4 to create a marshalling for Option
fn f(option: Option<String>) { ... }

Make use of null pointers?


When invoked jsformat sometimes ignores the expand tabs to spaces setting and uses tabs

It seems to happen in one particular file in one of my projects which makes it weird and hard to reproduce. My Atom is configures with soft tabs and tab length = to 4.

Same here, even though Atom is set to use spaces, JSFormat reformats all my JS files using tabs.

I suppose that whatever is selected in the preferences, the plugin does just the opposite. I switched it to use tabs and it it uses spaces now :)


Create HttpDigestService

HTTP requests were using the ng2 http module, which returns an observable and was being converted to a promise.  Because of this, the digest cycle was not firing and elements in the DOM were not updating.
Created an ng2 HTTP interceptor service that will explicitly run a digest cycle after HTTP requests succeed or fail.  Because scope does not exist in ng2, the interceptor was designed to accept scope.applyAsync as a parameter and call it.
Resolves issue: https://renovo.myjetbrains.com/youtrack/issue/MUSIC-700
Paired with @TheOriginalJosh

This service doesn't actually do anything other than null protection.

Good catch.  It started out with the intention of performing the digest actions itself, but ran into the issue of scope not existing in the Angular 2 world.  Then we got hyperfocused on the task of making an ng2 service and downgrading it to use in App.Core.
It was good practice though!

So I removed the HttpDigestService from the equation (see code snippit).  Verified that the interceptor hooks were firing and that the $applyAsync function was correctly retrieved and it was being called, but the DOM did not update.  Unless I am missing something, it appears that the downgraded ng2 HttpDigestService is required for this to properly resolve our issue.
let $applyAsync: Function = null;
let getApplyAsync: Function = () => {
	if ($applyAsync == null) {
		let scope: ng.IScope = angular.element($(".ng-scope")).scope();
		$applyAsync = scope.$root.$applyAsync;
	}
	return $applyAsync;
}

upgradeAdapter.addProvider(new Provider(__http.interceptorToken, {
	useValue: <__http.IHttpInterceptor>{
		handleSuccess: (response) => {
			getApplyAsync();
			return response;
		},
		handleError: (response) => {
			getApplyAsync();
			return Observable.throw(response);
		},
	},
}));


16606 Added invalid NR dialog

Issue #: bcgov/entity#16606
Description of changes:
Commit 1:

app version = 5.9.10
imported latest shared CorrectName component
imported latest shared mixins
renamed NameRequestInvalidErrorDialog -> InvalidIncorpAppDialog
added dialog to ResultingBusinessName
added dialog to BusinessName
added missing parameters to validate method in BusinessName
created NameRequestErrorDialog
created unit test suite
misc cleanup

Commit 2:

imported latest shared correct-name component
import latest shared mixins
renamed InvalidIncorpAppDialog -> InvalidFilingDialog
renamed InvalidFilingDialog -> FilingNotExistDialog
imported misc enums directly from shared repo
cleaned up NR processing in App.vue
added NR action code check in App.vue
moved fetch error logic from service to to components
cleaned up NR processing in Actions.vue
generalized text in File And Pay Invalid Name Request dialog
updated unit tests

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

/gcbrun

Temporary Url for review: https://business-create-dev--pr-670-2rb2r2k2.web.app

/gcbrun

Temporary Url for review: https://business-create-dev--pr-670-2rb2r2k2.web.app

/gcbrun

Temporary Url for review: https://business-create-dev--pr-670-2rb2r2k2.web.app


Unable to push with encrypted SSH key

Hi!
Where can I set the password for SSH private key in Sublime?
Sublime works fine with non-encrypted key but with encrypted key it says:
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

At the same time GitGui works fine with encrypted keys but asks about password with every push request (which is normal).
Thank you!
PS:
"ssh-add" didn't work.

Solved.
Here is an explanation:
https://gist.github.com/danieldogeanu/16c61e9b80345c5837b9e5045a701c99
PS: First part of Step №3 can be omitted. Second part of Step №3 can be omitted if you use default name (id_rsa) for your keys.


Crowd Source Reporter Gallery Template

The Crowd Source Reporter app was used to create an Operations Center Reporter group application template. The Ops Server copies made to the mini servers, does not honor the group share into the application resulting in the following error message when trying to access the operations center report:
"Configured group is invalid or no items have been shared with this group yet."

Please provide a link to the item for the app or the group id.

@elinz
This looks like an issue with the GUID replacement logic. The group id for this app is stored in the data for the item.
https://nsecmini05.esri.com/arcgis/sharing/content/items/cddb71c5da4b4397a062c2ed8ad0cfee/data
This group is the same id as the original group id from the portal. We will need to add logic in the future to change the group id in the item data with the new id for the groups.
@phil7277 This can not be fixed for UC. You need to manually recreate this app on any servers you are accessing.
https://nsecmini05.esri.com/arcgis/home/group.html?owner=phil7277&title=Operations Center Reports
Share using the app.
If @phil7277 had tested this when the test server was up and running we might have been able to address this.

I have recreated the application on nsecmini01, 02 and 03. In order to support UC Demoes, I ill be recreating the app on
nsecmini04.esri.com
nsecmini07.esri.com
nseclt08.esri.com
nseclt09.esri.com
I will not update the backup servers in order to troubleshoot this issue. The link to the item is: https://nsecmini05.esri.com/arcgis/apps/CrowdsourceReporter/index.html?appid=cddb71c5da4b4397a062c2ed8ad0cfee

I created a new issue for post UC to fix the publishing scripts.
#917

@phil7277 Once you have manually resolved this issue on the Tower, Workshop and Demo Theater machines you can close the issue.

Operations Center Reporter has been recreated on all machines with the exception of the back up servers:
nsecmini05.esri.com
nsecmini06.esri.com

@phil7277 Can you please recreate on the backup servers 05 and 06? Without making these same fixes on the backup servers, the backup servers won't be useful if we actually need to use these backup machines since the fixes won't be applied. Thanks.

@elinz, I recreated the Gallery App on the Backup Servers 05 and 06. Great point! Thanks.


fix unocss example

I couldn't build the unocss example - it was because it wasn't bumped to vinxi 0.2.x like the rest of the example. Also set vite consistently to 4.5.x (like vinxi), where currently both 4.4.6 and 4.4.9 are used.

Thanks


connectionTimeout on io.dropwizard.client.JerseyClientConfiguration

Hi, I'm running DropWizard 0.9.1 and have recently looked at the Integration Testing (JUnit) example located at this page:
http://www.dropwizard.io/0.9.1/docs/manual/testing.html#id2
My problem is that the jerseyClient i get from using JerseyClientBuilder defaults to a timeout of 500 ms. This is so short that some of my tests fails.
Looking at io.dropwizard.client.JerseyClientConfiguration, I don't see any connectionTimeout attribute like in io.dropwizard.client.HttpClientConfiguration. Is this on purpose, or could it be updated to contain this attribute?
Cheers,
Terje Andersen

Have you tried setting the properties ClientProperties.READ_TIMEOUT and ClientProperties.CONNECT_TIMEOUT via withProperty?

Ignore my previous comment:
JerseyClientConfiguration derives from HttpClientConfiguration, which contains timeout, and you can set that to the appropriate value


[Bug] Enhance User Feedback on 'Submit Resource' Button

Description
When navigating to the "Submit Resource" page, I observed that there's no hover feedback on the button itself. Unlike other buttons where we typically get a visual indication upon hovering, this one seems to lack that interaction.
While it's a small detail, I believe incorporating hover feedback on this button would enhance user experience and ensure consistency across the platform.
Reproduction

Go to resource archive website
Click on Submit Resource button
See error.

Expectation
Anticipating swift attention to add hover feedback on the 'Submit Resource' button for improved user interaction.

I am willing to work on this issue
@possumbilities


Typo: "though created"

Fixed typo on:
"...steps you though created a machine learning model..."

@alwinv : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Improve reliability

Information about any given task is currently kept in memory for 20 minutes. After this, there is no way to know if a print job was successful.
There are cases when software (web based) cannot receive information about finished task in 20 minutes. Which lead to differences between software and fiscal device.
A customer with 70 workplaces with COM devices have around 10 such cases per month.
We are afraid this can cause software delist from NRA.
How can this be improved?
Two possible ideas:

Keeping finished tasks in file on drive, where they can stay 1 day.
If need to keep file smaller, records can be removed when task information is requested

Give info for the last transaction.
This will work great in cases where one device is used by one workplace.

It is out of the scope of the library. Keeping tracks of payments is your software responsibility. There is also an electronic journal in the fiscal device.


PRI175 : Duplicate Entry

Describe the bug
Installed Prism 9 pre and having the nugets beneath :
  <ItemGroup>
    <PackageReference Include="CommunityToolkit.WinUI" Version="7.1.2" />
    <PackageReference Include="DryIoc.dll" Version="5.4.1" />
    <PackageReference Include="LiveChartsCore.SkiaSharpView.Uno.WinUI" Version="2.0.0-rc1.2" />
    <PackageReference Include="Microsoft.WindowsAppSDK" Version="1.4.230913002" />
    <PackageReference Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.22621.756" />
    <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="7.0.0" />
    <PackageReference Include="PropertyChanged.Fody" Version="4.1.0" />
    <PackageReference Include="Uno.Core.Extensions.Logging.Singleton" Version="4.0.1" />
    <PackageReference Include="Uno.Extensions.Hosting.WinUI" Version="3.0.0-dev.2304" />
    <PackageReference Include="Uno.WinUI" Version="5.0.0-dev.3403" />
    <PackageReference Include="WinUIEx" Version="2.3.1" />
    <PackageReference Include="Prism.DryIoc.Uno.WinUI" Version="9.0.271-pre" />
    <Manifest Include="$(ApplicationManifest)" />
  </ItemGroup>

Steps to reproduce the bug
F5
Expected behavior
No response
Screenshots
No response
NuGet package version
WinUI 3 - Windows App SDK 1.4.1: 1.4.230913002
Windows version
Windows 11 (22H2): Build 22621
Additional context
Perhaps it is an UNO issue ?

WINAPPSDKGENERATEPROJECTPRIFILE : error : PRI277: 0x80073b0f - Conflicting values for resource 'Files/Uno.UI.Toolkit/Themes/Generic.xbf'

I'm seeing this issue with UWP app trying to upgrade WinUI versions - see https://github.com/microsoft/microsoft-ui-xaml/issues/3672#issuecomment-1906878702 - I'm already on VS 17.8.4 though.
Trying the <DisableEmbeddedXbf>false</DisableEmbeddedXbf> mentioned in the VS thread... though not sure the ramifications of this; however, it didn't work. So back to the original issue where I can't upgrade from 2.7.3 (as I'm seeing a catastophic failure with AnimatedIcon unloading, so wanted to check against latest).

Very likely same as #8857


[WIP] Made hvplot API dynamic by accepting parameter/widget instances

NEW: Replacing #279 and updating to accept widgets as well as parameters.
This PR makes it possible to build GUIs by passing parameters instances directly into the hvPlot methods. Combined with Panel this makes it very easy to build complex GUIs.
import panel as pn
import hvplot.pandas

from bokeh.sampledata.iris import flowers

cols = list(flowers.columns[:-1])
x = pn.widgets.Select(name='x', value='sepal_length', options=cols)
y = pn.widgets.Select(name='y', value='sepal_width', options=cols)
kind = pn.widgets.Select(name='kind', value='scatter', options=['bivariate', 'scatter'])
by_species = pn.widgets.Checkbox(name='By species')
color = pn.widgets.ColorPicker(value='#ff0000')

@pn.depends(by_species, color)
def by_species_fn(by_species, color):
    return 'species' if by_species else color

plot = flowers.hvplot(x=x, y=y, kind=kind, c=by_species_fn)

pn.Row(pn.WidgetBox(x, y, kind, color, by_species), plot)

This examples demonstrate how both parameters and functions that depend on some parameter(s) can be used to dynamically update a plot. In this case the by_species_fn returns either the 'species' column or the ColorPicker depending on whether the checkbox is ticked, making it simple to specify even complex behaviors.
Currently this re-renders the plot every time a parameter changes. A future exercise can be to optimize this by handling certain parameters internally using DynamicMaps.

[x] Clean up code
[ ] Add docs
[x] Add tests

I am exposing this as well:
import panel as pn
import hvplot.pandas

from bokeh.sampledata.iris import flowers

flowers.hvplot.scatter(groupby='species', legend='top_right',
                       widgets={'species': pn.widgets.DiscreteSlider})


Passing rootElement option regresses display

Describe the bug
When passing the new rootElement option to try and scope event listeners it introduces two problems:

There is a green (+) cursor that didn't previously appear
When releasing out of bounds the dragged item does not animate back to position as before

Screenshots
The only difference between these two videos is passing the rootElement option
Before
https://user-images.githubusercontent.com/380914/109253441-ae724b80-77a4-11eb-95f5-f35109743901.mp4
After
https://user-images.githubusercontent.com/380914/109253439-ad411e80-77a4-11eb-8152-5e411d6ec69e.mp4
Desktop (please complete the following information):

OS: macOS Big Sur
Browser Chrome 88
Version 13.1.1

Additional context
Add any other context about the problem here.

It looks like the docs site was updated to use the rootElement prop and I'm not seeing the issue there, the mystery deepens…


dbeaver/pro#2515 import config from MySql Workbench

Added import from MySql Workbench (the icon will be changed)

Please use @2x suffix for x32 icons. this way this icon will be taken automatically instead of the smaller one for high-resolution screen.

connection with Kerberos imported as default connection


[feature] Create export as svg command in vscode

Right now it's awkward in vscode to save the file as an svg, I think the only way is to copy as svg (which has problems https://github.com/tldraw/tldraw-v1/issues/268) and then paste it into a new file, and then save it and make sure it ends with .svg

Any news about this issue ?


Intregrate INK File Upload service

https://www.inkfilepicker.com/

https://github.com/mardix/flask-cloudy


numpy 2: deprecations in n-dimensional fft functions

Part of #10593
XREF https://github.com/numpy/numpy/issues/25605

Note that there were two other behaviour changes in https://github.com/numpy/numpy/pull/25495:

A deprecation of s containing None values (it should only contain ints.
s[i] = -1 is now allowed, using the whole input (previously would raise an exception).

thx @crusaderky


fix issue tachyon-200  If master gets restarted, workers never reregister

Remove the throws exception logic  from worker heartbeat thread when master get down .  The master's reponsibilty is store meta data and coordinate workers. I think when master down. client can continue read from work if it has already connect to the worker. but write should throws Exception.
by the way when master use Zookeeper as HA solution. this kind of case is rarely happened.

@xbkaishui This change will prevent the heartbeat thread from dying. Are we just relying on the communication to master failing to prevent read/write requests when the master cannot be reached? Also, after a certain number of failures (user configurable), the worker probably should just kill itself?


chore: Remove Python 3.11 upper bound

Description
In order to allow Python versions newer than 3.10 we need to remove the upper bound.
This PR allows Orquestra VQA to work on 3.11 and later.
Please verify that you have completed the following steps

[x] I have self-reviewed my code.
[x] I have included test cases validating introduced feature/fix.
[x] I have updated documentation.

Codecov Report
All modified lines are covered by tests :white_check_mark:
:loudspeaker: Thoughts on this report? Let us know!.


You get:remove duplicate definition

Motivation for this change
A duplicate definition of you-get in python-packaages.nix causes every build to fail.This commit removes the second definition
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

You have added some extra commits that do not belong in this PR.


No method to receive Firebase Message / Notification

Firebase Messaging does not provide any method to receive the incoming message / notification.
Do not have any method like override fun onMessageReceived(message: RemoteMessage) provided by FirebaseMessagingService
Is there any other way to receive the messages/notifications.

I use platform specific code for that. See #467

Yes, I have used the same [https://search.maven.org/artifact/dev.gitlive/firebase-messaging/2.1.0/pom](Firebase Messaging library), but this lib only contains methods for fetching token, subscribe/unsubscribe topics.
But there is method to receive message. Am i missing anything.

I am now not sure if I understood the question correctly.
What i meant is that you can obtain the native firebase messaging inside you iosMain (for example) by doing:
val messaging = Firebase.messaging.ios

// You can then proceed to handle the notifications as you would do in swift.

messaging.delegate = this

But this library (even in its native form) is not meant to receive notifications directly. You are just meant to register your app to receive notifications from Firebase. The receiving & displaying itself is handled by the respective os (that means in iosApp).

thanks @mr-kew for the guidance. Yes in the native layer it can be done,
but it would have been great for one stop solution if this library can provide the message receive part as well.


fix group could not be deleted

Description

解决文档中几处错误
解决draw demo中group无法被删除问题

Motivation and Context

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Enhancement (changes that improvement of current feature or performance)
[ ] Refactoring (changes that neither fixes a bug nor adds a feature)
[ ] Test Case (changes that add missing tests or correct existing tests)
[ ] Code style optimization (changes that do not affect the meaning of the code)
[ ] Docs (changes that only update documentation)
[ ] Chore (changes that don't modify src or test files)

Self Check before Merge

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Pull Request Test Coverage Report for Build 429506606

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 0.0%

Totals

Change from base Build 429451156:
0.0%

Covered Lines:
0

Relevant Lines:
0

💛  - Coveralls


MPCal models with failures

Writing the following models in MPCal and compiling them into working Go implementation. Using crash failure model.

Proxy server
Primary-backup key-value store
Consensus using strong failure detector

Related to #134.

Proxy server spec has been implemented.

Primary-backup key-value store has been implemented in #160. We decided to skip consensus using strong failure detector for now.


This code will not work properly with this input: [9, 0, 3, 5, 7]

This code will not work properly with this input: [9, 0, 3, 5, 7]
Subsets_test.go
https://github.com/hoanhan101/algo/blob/46d524ff83ff5fc2f4c6d2a63daa1f7b11a883ae/gtci/subsets_test.go#L47

func subsets(nums []int) [][]int {
var result [][]int
result = append(result, []int{})
for j := 0; j < len(nums); j++ {
	l := len(result)
	for i := 0; i < l; i++ {
		var dst []int
		dst = append(dst, result[i]...)
		dst = append(dst, nums[j])
		result = append(result, dst)
	}
}

return result

}

Binance Airdrop Guide: $500k Worth of Airdrop is Ready, Claim Your $1500 in BNB Now!
Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.
Winners: @


Fix: Duplicating Dockerfile and .dockerignore when generating the project

Issue
We're facing two duplicating errors when generating the project from our template that should be fixed ASAP👷

Expected
The template can generate a project successfully and there are no duplications or errors caused to the user
Steps to reproduce
Both ways to generate the project faced the same issue.
1. Run `rails new app_name -m https://raw.githubusercontent.com/nimblehq/rails-templates/main/template.rb` as documented.

Or

1. Clone our rails template locally
2. Run `rails new app_name -m ./template.rb`

It seems that it's a conflict between the Heroku and the Docker add-ons 🤔 Let me check that!

Can be fixed with simple
remove_file 'Dockerfile'
remove_file '.dockerignore'

Later we might want to reuse these default dockerfiles but that's in research for the current sprint 👍


Push notification doesn't work cosistently

Potential issue with background tasks on iOS?
Test results Timeline:
2PM eastern July 7 - Emily's friends download the app onto their iPhones
6:45PM July 7 - Emily arrives at their house with "positive diagnosed" state on her Pixel
10PM July 7 - Emily leaves friends house
Night of July 7 - friends charge phone
Morning/Afternoon of July 8 - friends do not open app, do not recieve notification
4:37 pm July 8 - friends open app and see the app go to an exposed state
Exposure log:

Updating experiment details and timelines:
July 9 - 3:45PM - Friend receives an exposure notification, logs were checked throughout the day, without Jeff opening the app, some logs had matched keys
July 9 - 5:30PM - Friend clears the logs, deletes the log and then reinstalls the app
July 10 - 12:08AM - Received another exposure notification

Close as resolved by https://github.com/cds-snc/covid-shield-mobile/issues/642 and we know iOS implementation is correct. It's recommended for iOS to minimize the app instead of terminating. cc @jeberhardt


Hide inside of math does not hide

Consider the code $x^2 #hide[$y^2$] z^2$. Expected behaviour is that we should see the x^2, then some empty space (corresponding to the y^2), and then the z^2.
However, this is the output we get (note also the weird spacing!):

This is a regression -- a while ago this worked fine. A git bisect points towards bb30911282a44dd00def88190055d7637c6382d7 as the commit that introduced the regression.

Fixed.

Looks great now!
In fact, it looks like you just fixed another "issue" (which I had not reported yet), where $#[$xz &= y$] \ #[$x &= y$]$ would not align (now it does).

Yeah, that was part of the same regression that resulted in nested equations being treated as black boxes instead of being sort of "inlined" into the parent equation.


Neutral button stops firing (iOS)

Hello again Gustavo,
I've been noticing an odd behavior on iOS with the neutral button you added in #48. Sometimes, after I've been using my app for a while, the button just stops firing the NEUTRAL_ACTION event. Unfortunately I don't have a code snippet to show you to replicate the problem, but it happens quite regularly and I'm still trying to figure out why. I'll keep you posted on the matter.
Cheers.

Hey @apgsn ! How's it going?
That's some weird behavior you have there. Let me check. I think I might know why this is happening.

@apgsn I tried the component for about 15 min, and the neutral action is firing as expected. Please update with the steps to reproduce it once you have them. 👋🏼 👋🏼 👋🏼

Thanks for looking into it! Next week I'll see if I can find a way to replicate the bug consistently.

Closed due to inactivity. Reopen if needed.

This is still happening in v.1.6.4. After a while of use (multiple month/year) combinations being selected, the neutral button click stops triggering any event at all. I think the above code would fix this issue. Is it possible to make that change in the module?

@gusparis Hi Gustavo, why was this closed? This issue is still happening in v. 1.6.4. Neutral button randomly stops firing on iOS (I'm on 14.6). SmirnovM91 solution works but needs to be included in the library as a PR.

:tada: This issue has been resolved in version 1.7.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


skip deserialize list if value doesn't exist in EditorPrefs #2

Related issue : #2
Cause

At first run, there is no this._editorPrefKey + "._compileTimeHistory" in EditorPrefs.
EditorPrefs.GetString(this._editorPrefKey + "._compileTimeHistory") returns null
Cannot deserialize null. It make error message, Failed to deserialize CompileTimeKeyframe because splitting by @ did not result in 3 tokens!

My solution
If key exists in EditorPrefs, deserialize it. else, create empty list

I still have this issue on first run. I either need to cleanup my preferences or start a new project so that I can debug the issue properly and tell you where the problem is exactly. Basically the error is how you described it, and the first token is missing, but I need to find out why the error still occurs with the patch.
I'll try to patch this if it happens again.


Change add to cart icon

Suggestion is to make cart icon green if available, and gray/unclickable if not in stock

see phenotype tab for example http://dictybase.org/gene/DDB_G0288511


Speedup topp by sorting less elements for each token.

I set up an arbitrary threshold to ignore probabilities lower than 0.1%.
I don't know if there is another, more specific, criteria for this, but reducing the elements to sort seems the way to go to get back to the former speed.

I'm not sure how top-k and top-p would interact, I mean to get the top-k you should have the probabilities sorted right?
My patch tries to keep the set of probabilities to sort, smaller.
Looking at the logs of my tests (but I don't know how general they are) there are few tokens with high probability and many many more token with low probability.
But I understand that @karpathy wants to be sure before accepting PR, let's see what he thinks about it.

Another option is to parallelize the sorting, either with OpenMP or pthreads
Here is an example:
https://mcbeukman.medium.com/parallel-quicksort-using-openmp-9d18d7468cac
The loop before qsort can also be parallelized with OpenMP

I'll sleep on this but I think I'll merge it. Thank you. Does 1e-5 make it so with and without topp is more equal?

I noticed a degradation of performance starting at 1e-8. I would stay around 1-e5 or 1e-6.
This could be made parametric with an option on the command line, say, -e 1e-4. At least to allow experimenting with different values.

Followint the indication of PR#276 and PR#274, I changed the limit from 1E-5 to (1-topp)/(n-1).
For a vocab size of 32000, this is equal to 3.12E-6 and I can still see the benefits.

Merged https://github.com/karpathy/llama2.c/pull/276 ty


Creating a support ticket advice is wrong

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
https://docs.github.com/en/support/contacting-github-support/creating-a-support-ticket
What part(s) of the article would you like to see updated?

Navigate to the GitHub Support portal.
In the bottom-left corner of the page, click Contact us.
Select the Select personal account, enterprise account or organization dropdown menu and click the name of the account your support ticket is regarding.

Additional information
After 2, there is nothing that resembles the instructions for 3:

If you click:

Then that stuff is available.

Thanks for the issue @jsoref, I'll get this triaged for review! ⚡

hi @jsoref,
I'm checking internally about the expected behaviour and will update shortly ✨

Cross-linking that this was also raised in https://github.com/github/docs/issues/30337, though with the Report a Bug option not available.

Closing this in favour of the internal issue I have opened to track the docs updates.


Suggestion: Automatically download the lexicon if it doesn't exist

Super cool project @bjesus! 🚀
I found the setup can be easier. Especially the link provided  (https://folkets-lexikon.csc.kth.se/folkets/folkets_sv_en_public.xml) doesn't start downloading directly (in my browser at least).
It was possible to wget https://folkets-lexikon.csc.kth.se/folkets/folkets_sv_en_public.xml to download the file and I think it'll make the script easier to use.
On distribution suggestion, I would also recommend publishing it in Homebrew or PyPI so it'll be easier to distribute and install.
Good luck! 🌟

And oh, since the dictionary is "living" (updating over time), would be nice to update the file if it's been downloaded more than 1 month ago or something. (plus having flags to fetch the latest version).

swe now features a full Textual-based TUI, is installable with pipx install swe and automatically downloads the required dictionary file if it doesn't exist.


Honor passed seq

This keeps the original seq from the insert in crsql_changes. Gaps are allowed.

weird that it doesn't run the whole set of test suites for your pr 🤔 Let me see if I can kick those off.

ah, it ran them in your repo since it runs on commit not on pr -- https://github.com/jeromegn/cr-sqlite/actions. Will change to run on both actions

working on fixing some tests based on your changes here: https://github.com/vlcn-io/cr-sqlite/compare/main...honor-seq


Support module/package/interface/block scope for typedef names.

Addresses @davesha1 comments about edge cases.

It is a personal style thing.  IMO inline productions make it difficult to see the components of the rule.
I will change it to your suggestion.

Updated


Develop transit

What existing problem does the pull request solve and why should we include it?
Adding updated transit assignment and skims implementation.
Basic (essential) documentation with typehints in place, additional documentation to follow by MTC / future task order.
Testing plan

[  ] Code for this PR is covered in tests
[X] Basic "does it run" test added, more testing to follow by MTC / future task order
[ ] Code passes all existing tests
Note that the mkdocs is not working on develop so doesn't pass on this branch either.
[X] Code linted

Closes #35

All tests passing locally with Emme, except for make docs and household model.


Dockerfile usage

Hello everybody!
So I run the container like so:
docker run mailhog/mailhog

2016/01/03 15:52:32 Using in-memory storage
[HTTP] Binding to address: <IP_ADDRESS>:8025
2016/01/03 15:52:32 [SMTP] Binding to address: <IP_ADDRESS>:1025
Creating API v1
Creating API v2

but localhost:8025 not locahost:1025 are not responding.
Ports should be exposed, no?
Thank you

had to do something like that
docker run -d -p 1025:1025 -p 8025:8025 mailhog/mailhog


Button to show image

Hi label-studio,
I'm trying to create a link between a label and an image. When I choose that option, the image will show up as I want. Sorry, I'm not a front-end developer so a code suggestion would be great for me.
For example:
Before labeling:

After labeling the eyes image (02) I would like to see an image like:

Sorry if my English is too bad.
Thank you!!!

Try this example:
<View>
  <Text name="text" value="$text"/>
  <Choices name="sentiment" toName="text" choice="single" value="$options">
  </Choices>
</View>

You should place choice options in task data.


Authentication when downloading package from private registry using oauth2accesstoken fails with 401 Unauthorized

Thanks a lot for this project, happy to see the so much progress in the python packaging ecosystem!
I tried to use uv with a private pip repository hosted in Google artifact registry:
> uv pip compile --extra-index-url https://oauth2accesstoken:$(gcloud auth<EMAIL_ADDRESS>requirements.in

error: Failed to download: my-package==0.7.1
  Caused by: HTTP status client error (401 Unauthorized) for url (https://my-region-python.pkg.dev/my-project/my-repo/my-package/my-package-0.7.1-cp38-abi3-manylinux_2_28_x86_64.whl#sha256=my-sha)

This is the same both for uv pip install and uv pip compile.
It seems like the authentication for listing works (version 0.7.1 is read from the repo, I did not provide it), but the token is not used when downloading.

FWIW, I am seeing something very similar for a gitlab-hosted artifact registry. Same error.

Probably related to #1458

Should be resolved in the latest version ref #1886

Thanks, I can confirm it works now :+1:


Consoles are randomly not appearing

So I was on beta 3 for a long while and everything was working fine. Then I decided I should probably update so I went to beta 7. Now, my consoles do not show. So I thought okay, maybe an issue with beta 7, I goto beta 5- still nothing. Finally, I went back to beta 3 (which I was on before and worked fine), and now my consoles don't even show on there! I don't know why this could be happening. I've used remote play before as well.
Would appreciate any help!

Somehow Xbox deactivated remote play. Make sure to check that if anyone else has this issue.


Declare three windows specific functions as static

fixes https://github.com/lunarmodules/luafilesystem/issues/168
Declaring these three functions as static ensures that every function which is fully local to lfs.c and doesn't have a prototype in lfs.h is being declared as static. This way, it's sure that there aren't any compiler warnings about missing prototypes, even if the OS is Windows and the compiler is MSVC, gcc or clang.

@FractalU I've added Windows runs to the CI, can you rebase this PR? Thank you!

@hishamhm Rebased this PR.

LGTM! Thank you!


Table is rendered incorrectly in Electron

Hi (-:
I am trying to draw a basic table using react-virtualized inside an Electron app (created by electron-react-boilerplate), but it gets rendered incorrectly.
I've cloned the electron-react-boilerplate, installed react-virtualized, and added some basic code to show a table:
import React from 'react';
import { Column, Table } from 'react-virtualized';

const list = [
  { name: 'brian', description: 'dog' },
  { name: 'garfield', description: 'cat' }
];

export default function Home() {
  return (
    <div>
      <Table
        width={500}
        height={500}
        headerHeight={50}
        rowHeight={50}
        rowCount={list.length}
        rowGetter={({ index }) => list[index]}>
        <Column label="Name" dataKey="name" width={200} />
        <Column width={200} label="Description" dataKey="description" />
      </Table>
    </div>
  );
}

The resulting table looks like this:

Just to make sure, I've also removed any CSS from the boilerplate that might cause this.
I've created a repo to easily show the bug.
Just clone it, hit "yarn" and then "yarn dev"
Any help on issue would much appreciated 🙏

I know some time has gone by, but I think you're missing this on top:
import 'react-virtualized/styles.css';


Hi! Boss!

As I am a personal developer, Open AI recharge is not supported in my area, and my personal free API account has been banned recently, so this project is of great help to me! I hope it can survive for a long time. As a student, I don't have a lot of money, but I have contributed some small money to you, hoping to help this project. If you can't stick to this free project, I hope I can pay for it. Please let me know before you finish this project. Thank you. Sincerely Ming-XF.

Thank you so much for your generous contribution and kind words of support. It means a lot to me to hear how my work is making a positive impact in the lives of personal developers like you. I am committed to keeping this project available for as long as possible. I will make sure to keep you informed if anything changes.

免费的白嫖太多了
我希望能增加签名机制。付费使用

方便那些不支持 不方便使用接口的开发者。


ESP32 Compilation without Bluetooth

Describe the bug
Compilation of the aws_demos app using Espressif's SDK
System information

Which hardware board or part numbers? [ESP32]
IDE used [Editor- VSCode]
Operating System [MacOS]
Version of Amazon FreeRTOS (run git describe --tags to find it) - 201906.00_Major-496-g22a1744b
Project [amazon-freertos/vendors/espressif/boards/esp32/aws_demos]

Expected behavior
The amazon-freertos/vendors/espressif/boards/esp32/aws_demos application should compile even with bluetooth disabled.
Screenshots or console output
In file included from /Users/supreetdeshpande/Desktop/Repositories/amazon-freertos/vendors/espressif/boards/esp32/ports/ble/iot_ble_hal_common_gap.c:31:0:
/Users/supreetdeshpande/Desktop/Repositories/amazon-freertos/vendors/espressif/boards/esp32/ports/ble/bluedroid/iot_ble_hal_common_gap.c:33:29: fatal error: esp_gap_ble_api.h: No such file or directory
compilation terminated.
To reproduce
Steps to reproduce the behavior:

cd amazon-freertos/vendors/espressif/boards/esp32/aws_demos
make menuconfig
Go to Component Config -> Bluetooth. Disable Bluetooth.
make

Thank you!

Hello @supreetd21,
Were you able to give the CMake build a try?  Please feel free to reopen this ticket if you have further questions.


Query existing tags?

Summary
I've been creating tags and uploading files with those tag UIDs, but is there a way to query what tags actually exist?  If my upload process doesn't complete cleanly, I'd need to be able to query the tags to delete them as no longer needed.
And can tag creation specify a name so that my client can recognize a queried tag as one that it created?
Steps to reproduce

Create a tag
Upload a file using that tag
loop 1 and 2 for a while resulting in lots of existing tags

How to know what tags were created in the event that the 1/2 loop fails?
Expected behavior
Ability to query existing tags so that they can be checked and/or cleaned up (deleted).
Actual behavior
Created tag UIDs seem to be invisible once created.

@ldeffenb , you must have been creating a lot of tags.
Just so that I understand your issue clearly;
First issue: the probability of collision in the createTag function is big. Solution: increase the length of the tag.
Second issue: No possibility to query existing tags. You would like to call to the bee node and request all existing tag-uids, potentially filtering on name

This one is completed: https://docs.ethswarm.org/api/#tag/Tag/paths/~1tags/get


Create parcel, add contractId is not possible

When we have multiple contracts of the same carrier, we need to add the Id of the contract in the CreateParcel Request.
At this moment it's not a property in the CreateParcel object.
https://api.sendcloud.dev/docs/sendcloud-public-api/parcels/operations/create-a-parcel
Could this be added ?
Thanks

I added contract as a property


Lb/allow support users to remove users from organisations

Context
Support users in the placements service should be able to remove users from organisations.
Changes proposed in this pull request

Styling from the prototype for the Remove link
Views, routes, controllers and mailers for removing the user from an organisation

Guidance to review

Sign in to the placements service as a support user
Go to an organisation with users
Remove a user
Check Notify that an email has been sent

Link to Trello card
https://trello.com/c/RmON2bbZ
Things to check

[ ] If the code removes any existing feature flags, a data migration has also been added to delete the entry from the database
[ ] This code does not rely on migrations in the same Pull Request
[ ] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[ ] If this code adds a column to the DB, decide whether it needs to be in analytics yml file or analytics blocklist
[ ] API release notes have been updated if necessary
[ ] If it adds a significant user-facing change, is it documented in the CHANGELOG?
[ ] Required environment variables have been updated or added to the Azure KeyVault

Screenshots
https://github.com/DFE-Digital/itt-mentor-services/assets/44073106/96561d38-1e97-43ff-9db3-ad13f40628de

 Allow support user to remove users from organisations


feat: 🎸 make 22-patch a prerelease

Description
Attempt to get around this restriction: https://github.com/PolymeshAssociation/polymesh-sdk/issues/1103#issue-2032715327
Breaking Changes

JIRA Link

Checklist

[ ] Updated the Readme.md (if required) ?

:tada: This PR is included in version 22.1.0 :tada:
The release is available on:

npm package (@patch dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


implements the stop_game call

This PR implements the stop_game call that will reset the devices to the state prior to sending a game command, instead of having to wait for the heartbeat to stop.

Looks good


Manual approval required for workflow run<PHONE_NUMBER>9

Workflow is pending manual review.
URL: https://api.github.com/pushpendrasingh3/manual-approval/actions/runs/12160493929
Required approvers: [pushpendrasingh3]
Respond "approved", "approve", "lgtm", "yes" to continue workflow or "denied", "deny", "no" to cancel.

approved

All approvers have approved, continuing workflow and closing this issue.


Add release and architecture fields to the package listing output for os packages

Add the release and architecture fields from the package metadata the analyzers extract to the API response for GET /images/<digest>/content/os. Values may be empty or null if not supported for a specific package type.

This can be supported for RPMs via adding it to the existing 'version' field (where debs have it) or via other fields. I think that approach makes the most sense so version is a fully qualified version for all package types.


Poor performance compared to cppsort::verge_sort()

Hello Morwenn,
First, thank you for your excellent work on these sort implementations.
For some reason, when I populate a vector with 100 million random uint32_t values, and sort it using
vergesort::vergesort(data.begin(), data.end(), std::less<uint32_t>())
the runtime is about 3x greater than with
cppsort::verge_sort(data, std::less<uint32_t>())
(10.2 seconds vs 3.4 seconds, gcc version 9.3.0, -O3). At a first glance, the two implementations should be very similar.
Is there a reason for the large discrepancy? The standalone vergesort would be preferable in my case as it comes in a single .h file and would be easier to integrate with my project.
Thanks!

The difference surely comes from the fact that cpp-sort reimplements a bunch of standard library algorithms, has a lot of additional micro-optimizations that might improve integer sorting, and takes advantage of C++11 and C++14 features, and even newer standard features when possible — I would have a hard time .
It could be possible to do it for the standalone version of vergesort, it would add a significant amount of code which I didn't feel was worth it for a standalone project: if you at the cpp-sort source code you will see that almost every standard library algorithm used is reimplemented. To be honest this standalone version is more of a demonstrator with different goals: I always try to  maximize the execution speed in cpp-sort, while the standalone sorting algorithm projects tend to favour a reasonable code size and some backward compatibility, sometimes up to C++03.
What kind of pattern does you data have prior to sorting? Depending on the answer, the speed difference can be explained differently.

 So obviously the random-access vergesort was never called, and the bidirectional version was used instead. The bidirectional overload can't "jump" through the collection like the random-access overload does, which might explain most of the speed difference you experienced.

The data was populated with random integers:  data.push_back(rand());
The new version now also runs in about 3.5 seconds, or 3x faster than before! Thank you very much for the quick fix.

Ok, I'm glad it was just that :)
It somehow slipped under my radar because it was correct on my computer but otherwise acted as if correctly synchronized with the GitHub version for some reason, despite them being different.
I'm closing this issue, thanks a lot for the catch!

By the way if you want more trivia about the speed difference: basically the random-access vergesort skips O(log n) elements when it finds sorted runs that aren't big enough to be considered (sorted or reverse-sorted runs with fewer than log n elements), but the bidirectional vergesort has to scan linearly. When the collection is truly shuffled you can expect the random-access vergesort to notice really fast that there aren't enough sorted elements and basically to perform log n jumps really fast, which means that it only considers O(log n) elements before switching to pdqsort, while the bidirectional vergesort has to consider O(n) elements either way then falls back to a quicksort which isn't as optimized as pdqsort can be.
This roughly explains your speed difference: more time spent in the pre-sorting phase before switching to a slower algorithm.


taints/tolerations documentation for 1.6

This is a...

[ ] Feature Request
[ ] Bug Report

Problem:
Please refer to https://groups.google.com/forum/#!search/taints$2Ftolerations$20documentation$20effort$20for$201.6/kubernetes-sig-scheduling/MFt4zjtaRuI/NrOOaSULEgAJ for detail.
Proposed Solution:
Page to Update:
http://kubernetes.io/...

/assign @gyliu513

@gyliu513 I'd recommend to add milestone 1.6 to these PR's. It seems 03/17 is last date for documentation changes.

Seems I donot have permission to add labels for those PRs, can you please help @ravisantoshgudimetla

@gyliu513 I don't have either.
/cc @aveshagarwal @timothysc @davidopp

cc @kubernetes/sig-docs-maintainers I think that this needs to catch 1.6 release, can anyone help? Thanks!

I found out that it is possible to change the branch after the PR is created (go to "edit" in the PR on Github, and change the base branch). So, I have modified your PRs to now point to the release-1.6 branch.

@aveshagarwal @davidopp shall we close this issue?

@davidopp @aveshagarwal do you know when we need to merge this to master branch or it will be merged automatically?

Yes the docs team will take care of that.


Large Sum

Describe your problem and how to reproduce it:
The challenge reader does not accept my code which, apparently, is correct. How to solve?
function largeSum(arr) {
  const sum = arr.reduce((t, el) => Number(t) + Number(el)).toString();
  const firts10dDigits = Number(sum.substring(0, 11).split(".").join(''));

  return firts10dDigits + '.';
}

const testNums = [
  '37107287533902102798797998220837590246510135740250',
  '46376937677490009712648124896970078050417018260538'
];

 console.log(largeSum(testNums));

Result of Console
// running tests
largeSum(testNums) should return<PHONE_NUMBER>.
largeSum(fiftyDigitNums) should return<PHONE_NUMBER>.
// tests completed

Add a Link to the page with the problem:
https://learn.freecodecamp.org/coding-interview-prep/project-euler/problem-13-large-sum/
Tell us about your browser and operating system:

Browser Name: Google Chrome
Browser Version: Versão 74.0.3729.169
Operating System: Windows 10 64 bits

@DavidWesley These kinds of questions should be asked on the forum.  If the forum members indicate there is a bug in the tests, then feel free to ask for this issue to be reopened.
There is nothing wrong with the tests.  You have a simply bug you need to fix in your return statement.


fixes 183

added default arguments and changed name of variable n to quantity

Stale, closing. Feel free to open again.


SignalXY: Add support for MaximumMarkerSize like Signal has

to customize the size of point markers when zooming in

Oh, I see why this is not a thing. Without even horizontal spacing it's not possible to estimate what a good density is to show vs. hide markers.


Proper system requirements

What is system requirements for that? I can't export Blasphemous data.unity3d file; 99% memory used on import phase.

It is difficult to give system requirements for software. How much RAM do you have?

4 GB

That's a little low. I normally use about 6 GB of ram when I rip a large game.

Ooff. The game I ripping is Blasphemous, so I don't it would consume much resources


Android Studio - Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'. What do I need to change?

I have used the most recent build of LibGDX to create a project that will only be for mobile devices. When I try to open the file that gdx.setup fileproduces it generates in Android Studio I get the message that compile is obsolete and should be replaced. It says the problem is in the 'android' module.
I've looked on this site and others and the advice is to change all cases of compile to Implementation but I cannot work out what needs to change in this module or what needs to stay as it is. I've tried changing items where it says 'compile' to 'implemention' but I end up with more errors. Can someone tell me exactly which parts of this need changing.
The module is:
android {
buildToolsVersion "28.0.3"
compileSdkVersion 28
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs = ['libs']
}
}
packagingOptions {
    exclude 'META-INF/robovm/ios/robovm.xml'
}
defaultConfig {
    applicationId "com.mygdx.game"
    minSdkVersion 9
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

}
// called every time gradle gets executed, takes the native dependencies of
// the natives configuration, and extracts them to the proper libs/ folders
// so they get packed with the APK.
task copyAndroidNatives {
doFirst {
file("libs/armeabi/").mkdirs()
file("libs/armeabi-v7a/").mkdirs()
file("libs/arm64-v8a/").mkdirs()
file("libs/x86_64/").mkdirs()
file("libs/x86/").mkdirs()
    configurations.natives.files.each { jar ->
        def outputDir = null
        if (jar.name.endsWith("natives-arm64-v8a.jar")) outputDir = file("libs/arm64-v8a")
        if (jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")
        if(jar.name.endsWith("natives-armeabi.jar")) outputDir = file("libs/armeabi")
        if(jar.name.endsWith("natives-x86_64.jar")) outputDir = file("libs/x86_64")
        if(jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86")
        if(outputDir != null) {
            copy {
                from zipTree(jar)
                into outputDir
                include "*.so"
            }
        }
    }
}

}
tasks.whenTaskAdded { packageTask ->
if (packageTask.name.contains("package")) {
packageTask.dependsOn 'copyAndroidNatives'
}
}
task run(type: Exec) {
def path
def localProperties = project.file("../local.properties")
if (localProperties.exists()) {
Properties properties = new Properties()
localProperties.withInputStream { instr ->
properties.load(instr)
}
def sdkDir = properties.getProperty('sdk.dir')
if (sdkDir) {
path = sdkDir
} else {
path = "$System.env.ANDROID_HOME"
}
} else {
path = "$System.env.ANDROID_HOME"
}
def adb = path + "/platform-tools/adb"
commandLine "$adb", 'shell', 'am', 'start', '-n', 'com.mygdx.game/com.mygdx.game.AndroidLauncher'

}
// sets up the Android Eclipse project, using the old Ant based build.
eclipse {
// need to specify Java source sets explicitly, SpringSource Gradle Eclipse plugin
// ignores any nodes added in classpath.file.withXml
sourceSets {
main {
java.srcDirs "src", 'gen'
}
}
jdt {
    sourceCompatibility = 1.6
    targetCompatibility = 1.6
}

classpath {
    plusConfigurations += [ project.configurations.compile ]
    containers 'com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', 'com.android.ide.eclipse.adt.LIBRARIES'
}

project {
    name = appName + "-android"
    natures 'com.android.ide.eclipse.adt.AndroidNature'
    buildCommands.clear();
    buildCommand "com.android.ide.eclipse.adt.ResourceManagerBuilder"
    buildCommand "com.android.ide.eclipse.adt.PreCompilerBuilder"
    buildCommand "org.eclipse.jdt.core.javabuilder"
    buildCommand "com.android.ide.eclipse.adt.ApkBuilder"
}

}
// sets up the Android Idea project, using the old Ant based build.
idea {
module {
sourceDirs += file("src");
scopes = [ COMPILE: [plus:[project.configurations.compile]]]
    iml {
        withXml {
            def node = it.asNode()
            def builder = NodeBuilder.newInstance();
            builder.current = node;
            builder.component(name: "FacetManager") {
                facet(type: "android", name: "Android") {
                    configuration {
                        option(name: "UPDATE_PROPERTY_FILES", value:"true")
                    }
                }
            }
        }
    }
}

}

See #5491 #5232

Android Studio, unfortunately, is not suitable for libgdx projects, because it allows you to create projects for Android. Standard Java projects are not supported and it is not clear if this will ever be available.
The cross-platform nature does not give in Libgdx with Android Studio. This shouldn't be a big hindrance, as libgdx projects benefit little from Android Studios capabilities. For example. the layout preview does not matter for libgdx because they do not use native Android UI widgets. Built-in documentation support for Android APIs is also not required for libgdx app.
However, we will try to make libgdx application development a new Android Cradle system possible in the near future.

Alternatively, you can use Intellij IDEA with libgdx, potentially with Maven.

This is a warning, not an error.
I use Android Studio and latest LibGDX version with my games, including the one in developement Shooter and I deploy to iOS / Android without problem.

This is a warning, not an error.
I use Android Studio and latest LibGDX version with my games, including the one in developement Shooter and I deploy to iOS / Android without problem.

The fact is that libgdx even the gradle collector itself and then an outdated version , if you use an Android Studio then please let us know how you deploy the project in the Studio

@DevAnlim if you have trouble using libgdx with Android Studio, please use libgdx forum, IRC or discord.

@DevAnlim if you have trouble using libgdx with Android Studio, please use libgdx forum, IRC or discord.

Well, I use Intellij IDEA to work with libgdx

A new Gradle Script System for LibGDX would be really nice to stay up to date

Yup. I have been working on produciton with latest updates, and will update our setup before next release. Seems to be Ok for the most part, but there are still some problems with IDE integration. And AS is almost non functional to use in any sensible way.


Adds flask modules.

Since we already copy the Lib folder during load_python, we can just add flask and deps inside the Lib folder.


[Musl] [Clang]: Double definition of prctl_mm_map

Hello! Today on my Gentoo I tried to compile electron, which pulls in perfetto via chromium, and it seems that clang doesn't like these two imports, since they contain duplicate identical structures prctl_mm_map
https://github.com/google/perfetto/blob/5a10c63885c6a5a3825f1c15a08d4fff5ec41906/src/base/utils.cc#L43-L44

https://man7.org/linux/man-pages/man2/prctl.2.html according to the man page for prctl though, both of those includes needs to be specified. Feels like some bug in the compiler or musl more than in Perfetto?

My pure coincidence, seems like someone hit this internally and sent https://r.android.com/3252813 to fix. Closing this out.


pre hook into subfolder is not supported?

Hi,
First thanks for making husky available for hg !
I am currently working on a setup with a hg repository holding two apps in each its folder. The setup structure is shortly like
/
  package.json
  .hg
  App1/
    package.json
  App2/
   package.json

App2 is running eslint and I want to prevent hg commits and hg push to be prevented if the linting fails.
I have installed husky-hg in the root "/" of the repository where my .hg folder is, and made script in package.json there for "precommit" and "prepush" as follows "cd ./App2 && npm run lint". The "lint" command in "App2" is "eslint src -c .eslintrc.json --ext js --max-warnings=0".
When I "npm run precommit" from root "/" i receive the errors from "App2" linting I am however able to go through with the commit ?
The error from "npm run precommit" prints
  7:42  error  'intendedToFail' is assigned a value but never used  no-unused-vars
  7:72  error  Replace `AppContext` with `⏎····AppContext⏎··`       prettier/prettier

✖ 2 problems (2 errors, 0 warnings)
  1 error and 0 warnings potentially fixable with the `--fix` option.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>lint: `eslint src -c .eslintrc.json --ext js --max-warnings=0`
npm ERR! Exit status 1
...

admin-toolbox-widget would be the actual name of App2 if you haven't figured :)
In the Readme file in this repo I have noticed that in the "Trick details" section it is stated

Git submodule and subtree support
Yes
Mercurial subrepo support
No

I am however not sure if this means that what I am trying to do is not supported, given that it is not really a subrepo but just a subfolder to my repo with yet another node project inside.
Hopefully it is doable an able to be resolved one way or another -- Thanks :)

@kraniebrud sorry for the late answer! Mercurial subrepo isn't your use-case.
Is this still an active issue? I will setup a test for that use case at the weekend otherwise

Hi @tobiastimm ,
No problem! I am not in a hurry.
I have now removed 'husky-hg' after awhile trying to make it work. So last time it was still an issue, and suppose it still is :) -- hopefully it can be reproduced.


hi  Questions about minSize

// Set the annular determinate mode to show task progress.
hud.mode = MBProgressHUDModeText;
hud.label.text = NSLocalizedString(@"Message here!", @"HUD message title");
// Move to bottm center.
hud.offset = CGPointMake(0.f, MBProgressMaxOffset);
// Will look best, if we set a minimum size.
hud.minSize = CGSizeMake(50.f, 50.f);
why？I set the size of the minsize But the size of the display does not change Don't the size of the hud can change?Or has a default minimum can not be set smaller

Not sure if I understand the question. The HUD will fit is size to the content you set. If the minSize is smaller then the fitting size then the fitting size is used.


Add new extender to enforce configuration of shoot seed within the same region as the shoot

Implementation
When EnforceSeedLocation flag is enabled in Runtime CR
Setting Shoot seedSelector.matchLabels field to the value
seed.gardener.cloud/region : <Shoot region>
Related issue(s)
https://github.com/kyma-project/infrastructure-manager/issues/241
https://github.com/kyma-project/kyma/issues/18182
Additional info
There are some cases for HA dedicated seeds - please make sure this solution will work in case of HA clusters
https://github.com/kyma-project/kyma/issues/18182#issuecomment-2133446254

Added #511 to add missing check of lastOperation message


NA started to appear in upload_date, release_date and timestamp for BBC World News

[X] I've verified and I assure that I'm running youtube-dl 2017.04.17

Before submitting an issue make sure you have:

[X] At least skimmed through README and most notably FAQ and BUGS sections
[X] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[X] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
$/usr/local/bin/youtube-dl -c http://www.bbc.com/news/10462520 -o "%(upload_date)s %(timestamp)s %(title)s (%(id)s).mp4" --verbose

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-c', 'http://www.bbc.com/news/10462520', '-o', '%(upload_date)s %(timestamp)s %(title)s (%(id)s).mp4', '--verbose']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.04.17
[debug] Python version 3.5.2 - Linux-4.4.0-72-generic-x86_64-with-Ubuntu-16.04-xenial
[debug] exe versions: avconv 2.8.11-0ubuntu<IP_ADDRESS>, avprobe 2.8.11-0ubuntu<IP_ADDRESS>, ffmpeg 2.8.11-0ubuntu<IP_ADDRESS>, ffprobe 2.8.11-0ubuntu<IP_ADDRESS>
[debug] Proxy map: {}
[bbc] 10462520: Downloading webpage
[bbc] p050ds2n: Downloading media selection XML
[bbc] p050ds2n: Downloading m3u8 information
[download] Downloading playlist: One-minute World News
[bbc] playlist One-minute World News: Collected 1 video ids (downloading 1 of them)
[download] Downloading video 1 of 1
[debug] Invoking downloader on 'http://cp401491-vh.akamaihd.net/i/mps_h264_hi/public/news_bulletins/news_heads_world/1279000/1279640_h264_1500k.mp4/index_0_av.m3u8'
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 7
[download] Destination: NA NA One-Minute World News (p050ds2n).mp4
[download] 100% of 11.71MiB in 05:14
[debug] avconv command line: avprobe -show_streams 'file:NA NA One-Minute World News (p050ds2n).mp4'
[ffmpeg] Fixing malformated aac bitstream in "NA NA One-Minute World News (p050ds2n).mp4"
[debug] ffmpeg command line: avconv -y -i 'file:NA NA One-Minute World News (p050ds2n).mp4' -c copy -f mp4 -bsf:a aac_adtstoasc 'file:NA NA One-Minute World News (p050ds2n).temp.mp4'
[download] Finished downloading playlist: One-minute World News

I used to have video names that included the release_date and the timestamp for the same invocation of the youtube-dl, like this: 20170405<PHONE_NUMBER> One-Minute World News (p04z39pp).mp4
If that information is still available from the web scraper/parser, I would be grateful if you reintroduced it.

Having installed the latest version with sudo pip install git+https://github.com/rg3/youtube-dl/@master -U , so that
youtube-dl --version
2017.09.24

I still face the problem on the vArtAvalI playlist:
youtube-dl --extract-audio --audio-format mp3 -o "vArtAvalI-upl-%(release_date)s-%(title)s.%(ext)s" https://www.youtube.com/watch?v=mXWm_pm03_Y
[youtube] mXWm_pm03_Y: Downloading webpage
[youtube] mXWm_pm03_Y: Downloading video info webpage
[youtube] mXWm_pm03_Y: Extracting video information
[youtube] mXWm_pm03_Y: Downloading MPD manifest
[download] Resuming download at byte 1657925
[download] Destination: vArtAvalI-upl-NA-Vaartavali - Weekly Sanskrit Magazine _ 23_09_2017.m4a
[download]   7.6% of 23.43MiB at 59.89KiB/s ETA 06:10^C

Could you reopen and fix?

Youtube videos have no release date.

Thank you for clarifying.
Separately: It might be useful to include sudo pip install git+https://github.com/rg3/youtube-dl/@master -U in the readme as well so that folks can easily get the bleeding edge version of the tool

Also, it might be a good idea to fix the man page to include the fact that Youtube videos have no release date. It currently reads:
       · release_date (string): The date (YYYYMMDD) when the video was released

And if you bother to read it further it reads:

Note that some of the sequences are not guaranteed to be present since they depend on the metadata obtained by a particular extractor. Such sequences will be replaced with NA.

I did read that - but did not deduce that this applies to YouTube. It feels that being more explicit would avoid futile attempts by users..

There are about 1k extractors apart from YouTube. It's technically infeasible and pointless to try documenting every meta field availability for every extractor.

Ah - I didn't realize that. Would it be possible to make youtube-dl print all valid tags that can be extracted from a given website? (Or has it already been proposed and implemented?)

There is no such thing as tags that can be extracted from a particular website as it depends on extraction of a particular URL and can't be guessed beforehand.

Upload_Date used to actually show the date the video was uploaded to YouTube.  This stopped working as well, being replaced by NA.
If that's something that YouTube changed, fine, but to just dismiss it as "not our problem because multiple websites" seems like your not testing the issue before coming up with a reason.


add-rep-balance-component

https://github.com/AugurProject/augur/issues/1643

There are a few reporting changes we need to migrate from master.
master's trading page changes we don't want,
market creation changes we don't want.
I'll re-create the reporting changes on new-trading-page-layout.


Add weak constraints to make rects closer to each other in size

This PR adds the following constraints optionally:

    // prefer equal chunks if other constraints are all satisfied
    if layout.prefer_equal_chunks {
        for i in 0..elements.len() {
            for j in (i + 1)..elements.len() {
                solver.add_constraint(elements[j].size() | EQ(WEAK) | (elements[i].size()))?;
            }
        }
    }

This makes chunks similar in size to each other if other constraints are satisfied.

i know this a bit unrelated, but this change causes some side-effects, please test against #404 with this change applied, see #370 (comment) for more context

The main blocker for this PR right now is that it results in non-deterministic splits more often, which is makes it difficult to reason about how space will be allocated for users.

I did some testing with this and wrote a integer optimization program (in Julia) to simulate "ideal" behavior to compare. I think we are never going to be able to guarantee that there won't be gaps with cassowary.
For example, take a constraints Percent(33), Percent(33), Percent(33) in a Horizontal layout of area whose width is 100. The "ideal" result is going to be 33.3333, 33.3333 and 33.3333 for each Rect, and rounded you are going to get 33, 33, 33 which will leave a gap of 1.
I implemented this using integer variables in Julia and I get a solution that we would expect, i.e. 33, 34 and 33.
    area = Rect(0, 0, 100, 1)
    constraints = [Percent(33), Percent(33), Percent(33)]
    r1, r2, r3 = split(Horizontal(constraints), area; kwargs...)
    @test r1.width == 33
    @test r2.width == 34
    @test r3.width == 33

Unfortunately, this behavior is not guaranteed with cassowary because cassowary uses floating point values.

Adding the weak constraints to make the widths (or heights) similar did have the intended effect (imo). Take this test for example:
    area = Rect(0, 0, 100, 1)
    constraints = [Percent(50), HardMin(10), Percent(50)]
    r1, r2, r3 = split(Horizontal(constraints), area; kwargs...)
    @test r1.width == 45
    @test r2.width == 10
    @test r3.width == 45

Without the weak constraints, I was getting results like this:
    area = Rect(0, 0, 100, 1)
    constraints = [Percent(50), HardMin(10), Percent(50)]
    r1, r2, r3 = split(Horizontal(constraints), area; kwargs...)
    @test r1.width == 50
    @test r2.width == 10
    @test r3.width == 40

I think we are never going to be able to guarantee that there won't be gaps with cassowary.

The approach that makes this round without gaps is to use the left/right position rather than the widths to work out how to round.
Thus instead of thinking of [33.33, 33.33, 33.33] => [33, 33, 33], think instead of [0.00, 33.33, 66.66, 100.00] => [0, 33, 67, 100]
This works pretty nicely as far as I can tell and is my intended change as soon as the refactor in #405 lands.

Interesting idea! I think there are some corner cases there as well (I'll have to test to come up with examples), but maybe fewer issues than what we have at the moment, so it should be good!

Interesting idea! I think there are some corner cases there as well (I'll have to test to come up with examples), but maybe fewer issues than what we have at the moment, so it should be good!

Perhaps something that evaluates to (positions): [0.0, 0.51, 1.49, 2] => [0, 1, 1, 2]. The widths would be [0.51, 0.98, 0.51], but become [1, 0, 1] after rounding.

I added tests for Max and Length too. Open to better suggestions for the test for Max.

i know this a bit unrelated, but this change causes some side-effects, please test against #404 with this change applied, see #370 (comment) for more context

I had to fix some tests after #404 was merged and after I rebased on top of it.

I renamed it to SegmentSize and made it pub(crate) so that we can finalize the name later with more feedback.

I pushed a rebase on the fix in #419 - happy for this to be approved and merged now @kdheepak. We can work out the public name for the API at some point later. I lean towards using Allocation as the name and communicating that this is a preference not a requirement in the enum variant itself, and also using an imperative tone that says what the allocation will do (e.g. PreferEvenWidths, FillLastArea, etc.)

I did the rebase locally as well, you are faster than me :) I'll discard my changes.
Yes, let's merge and figure out the right names for it later. I'm not tied to any names here.


Working on B450M Mortar Titanium

Works on an MSI B450M Mortar Titanium but colors are inverted.

I just tried it, but it seems like in my case it isn't working as expected: it seems to be stuck to white with some pulsating effect that gives it some vague colour, but I can't make it stick to a single colour. I'm using KDE neon on Linux 5.7.
This is the output when using the verbose option:
sudo msi-rgb 00000000 00000000 00000000 -b 0 -d 0 --verbose
Bank 12 (d0...100):
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
e1 08 00 00 00 00 00 00 ff ff 11 00 00 20 01 40
00 00 00 00 00 00 00 00 00 00 00 00 0e 07 ff e2
Bank 09 (20...40):
d4 51 ff 00 00 00 40 10 00 ff 40 00 11 00 00 01
0f ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
Bank 0b (60...70):
0a 20 0a 30 00 00 ff ff ff ff ff ff ff ff ff ff
Chip identifier is: d451

Ok, so it seems this was already found and fixed in #92:
"It doesn't really, it only reacts if you invert the colours, and It pulses if you invert all 3, so here's a fudge:
msi-rgb 0 0 0 -ig -ib # gives red
msi-rgb 0 0 0 -ir -ig # gives blue
msi-rgb 0 0 0 -ir -ig # gives green
Just inverting two values causes it to set max for the other and doesn't then pulse."
I can confirm it works.


Tileset Edit unavailable if shader present in a tile

Godot version: v3.2.stable.official (Standard 64-bit for Windows)
OS/device including version: Windows 7 Home Premium, 64 bit
Issue description: TileSet editing window, normally present at the bottom center of the editor becomes unavailable if any of the tiles in the tileset uses a material with a shader that was opened through inspector of a tile. For lack of better wording there will be screenshots included.
Steps to reproduce:

Create a TileMap node [1] and add a new TileSet [2] to it, then click on it to enter tileset editor. (Screen_1.png)
2, Create at least one tile for that tileset.
In any of the tiles add a new material. Right now everything should be normal (Screen_2.png)
Add a new shader to that material[1]. The Shader editor will now appear[2]. (Screen_3.png)
If you were to click away to exit inspector for the tileset, for instance focus a different node on your scene, and then came back to the tileset, instead of the TileMap editor you will see the shader editor. It will not go away if you don't do one of two things.
A) Restart the editor and reenter the TileSet editor.
B) Find the tile where you edited the shader and click the blue name of the shader to close the shader editor. Then unfocus the tileset in inspector and go back into it so that TileMap appears. (Screen_4.png)

Minimal reproduction project:
Attached BugReport.zip
(though I doubt its usefulness because restarting fixes it)

Related to #32002 probably.

Related to #32002 probably.

Sounds the same, aside from restarting godot not fixing it. Might be another issue underneath defining whether it persists or not.

Duplicate of #32002.


Fix ability to disable IPv6 in datapath

This change is

test-me-please

Coverage decreased (-0.01%) to 43.723% when pulling 6c59fa1548b250af0f8625e97b6ed8027734d6e4 on pr/tgraf/map-init into ceaa7ed85f6c574c097c571dd213bff5b4ad6147 on master.

test-me-please

test-me-please

The runtime tests are exposing a bug in the datapath:
Dec 20 21:40:11 runtime cilium-agent[9228]: level=info msg="Serving cilium health at http://[::]:4240" subsys=health-server
Dec 20 21:40:11 runtime cilium-agent[9228]: level=error msg="Failed to compile bpf_lxc.o: exit status 1" compiler-pid=9818 linker-pid=9820 subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="In file included from /var/lib/cilium/bpf/bpf_lxc.c:39:" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="In file included from /var/lib/cilium/bpf/lib/l3.h:24:" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="/var/lib/cilium/bpf/lib/eps.h:124:59: error: use of undeclared identifier 'IPCACHE6_PREFIXES'" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="LPM_LOOKUP_FN(lookup_ip6_remote_endpoint, union v6addr *, IPCACHE6_PREFIXES," subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="                                                          ^" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="/var/lib/cilium/bpf/lib/eps.h:124:1: error: invalid application of 'sizeof' to an incomplete type 'int []'" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="LPM_LOOKUP_FN(lookup_ip6_remote_endpoint, union v6addr *, IPCACHE6_PREFIXES," subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="/var/lib/cilium/bpf/lib/eps.h:111:26: note: expanded from macro 'LPM_LOOKUP_FN'" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="        const int size = (sizeof(prefixes) / sizeof(prefixes[0]));      \\" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="                                ^~~~~~~~~~" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="/var/lib/cilium/bpf/lib/eps.h:126:51: error: use of undeclared identifier 'IPCACHE4_PREFIXES'" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="LPM_LOOKUP_FN(lookup_ip4_remote_endpoint, __be32, IPCACHE4_PREFIXES," subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="                                                  ^" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="/var/lib/cilium/bpf/lib/eps.h:126:1: error: invalid application of 'sizeof' to an incomplete type 'int []'" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="LPM_LOOKUP_FN(lookup_ip4_remote_endpoint, __be32, IPCACHE4_PREFIXES," subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="/var/lib/cilium/bpf/lib/eps.h:111:26: note: expanded from macro 'LPM_LOOKUP_FN'" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="        const int size = (sizeof(prefixes) / sizeof(prefixes[0]));      \\" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="                                ^~~~~~~~~~" subsys=datapath-loader
Dec 20 21:40:11 runtime cilium-agent[9228]: level=warning msg="4 errors generated." subsys=datapath-loader

The runtime test breakage is caused by the removal of OpenAfterMount(). Removing that commit and limiting this PR to fixing the disable IPv6 feature in the datapath.

test-me-please

@joestringer I've changed the way bpf/Makefile handles the compilation of various option combinations and added various combinations. Please have a look.

This is why I've been trying to push the makefile and bpf code to use "disable XXX"-style #defines, so that the default options if nothing is specified will have the maximum complexity. Perhaps a more natural alternative would be to define an ALL_OPTIONS or MAX_COMPLEXITY option in the Makefile which will be used on lines like 61 to ensure that the most complex program will be compiled and left on the filesystem for later tests to consume.

Then why do we have all the combinations before if only the last invocation triggers the complexity barrier? I'm a bit lost now.
I absolutely dislike having a mix of both ENABLE_IPV6 and DISABLE_IPV6.

Then why do we have all the combinations before if only the last invocation triggers the complexity barrier? I'm a bit lost now.

The earlier combinations test that those option combinations compile, which I think is still a useful check. If we also test that the most complex set of options can load into any kernel, then we get a fairly strong guarantee that we can compile and load the datapath with any set of options.

The earlier combinations test that those option combinations compile, which I think is still a useful check. If we also test that the most complex set of options can load into any kernel, then we get a fairly strong guarantee that we can compile and load the datapath with any set of options. That's why we leave the most complex version on the filesystem for usage in the ginkgo tests.

OK. It would have been great to document this a bit. It was not obvious to me at all.
I've fixed it up and also fixed the LB tests

OK. It would have been great to document this a bit. It was not obvious to me at all.

Anywhere you'd prefer this to be? Inline in the Makefile or in the docs or the ginkgo test?

test-me-please


Adding option of disabling extra HEAD request

Coverage remained the same at 99.091% when pulling 3fd9d28e1567d1b6a6e1fc9b6436753ec091f994 on feat/opt_out_checkConnectivity into a76e8af7a2e872f24482daae8c07593edd9affba on master.

Coverage remained the same at 99.091% when pulling 3fd9d28e1567d1b6a6e1fc9b6436753ec091f994 on feat/opt_out_checkConnectivity into a76e8af7a2e872f24482daae8c07593edd9affba on master.

Coverage remained the same at 99.091% when pulling e63d12e11197320bd1164e7ce4c45caabb58d1a1 on feat/opt_out_checkConnectivity into a76e8af7a2e872f24482daae8c07593edd9affba on master.


Go LIFO and FIFO program

💥 Proposal
(A clear and concise description of what the proposal is.)
Have you read the Contributing Guidelines on Pull Requests?
Yes.
I want to contribute by adding LIFO(Stack) and FIFO(Queue) programs using Go.

@DeepNinja07x ## This issue is already present.

@siddharth25pandey so can I create pull request

@siddharth25pandey so can I create pull request

@DeepNinja07x  you can check the relevant issue. You have not to send the PR for this issue


Save open tabs between sessions

Following the premise of this applications, I often use the same set of pages containing documentation, test cases, an open communication. I don't think it's necessary to build in a full favorites feature or anything like that, but if it could save my open tabs between sessions (after being closed and opened again)

This is such a good idea. Thank you.