Roll up main to beta

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.5 out of 6 committers have signed the CLA.:white_check_mark: greens:white_check_mark: weihuan1111:white_check_mark: sbkimaqara:white_check_mark: zwave-mke:white_check_mark: dljsjr:x: kdbangYou have signed the CLA already but the status is still pending? Let us recheck it.


Interleaved support with DeckGL

I would like to open a discussion about Interleaved support.
Imagine that you have a DeckGL project where you want to change between MapLibre and Google Maps with interleave control. For MapLibre you would have something like this
<DeckGL
    initialViewState={INITIAL_VIEW_STATE}
    layers={layers}
    controller={true}
    onViewStateChange={...}>
    <MapLibre />
  </DeckGL>

where the camera control is done by Deck but if you change it to Google Maps with interleave support you would have something like this example where the map camera control is done by the Google Maps component instead DeckGL.
It's difficult to maintain and it can also be difficult to integrate with libraries like NebulaGL that interacts directly with the map events. So my question is if there would be a way to support interleave while keeping Deck as a wrapper of the map, for example:
<DeckGL
    initialViewState={INITIAL_VIEW_STATE}
    layers={layers}
    controller={true}
    onViewStateChange={...}>
    <Map interleaved={true} {...GOOGLE_MAPS_MAP_OPTIONS} />
  </DeckGL>

Just to add some implementation thoughts to this:
In order for the interleaving to work, the React wrapper would need to implement the google.maps.WebGLOverlayView in order to allow deck.gl (or other libraries) to draw to the shared WebGL canvas.
This is how it works in the GoogleMapsOverlay in deck.gl, the google.maps.WebGLOverlayView.onDraw method triggers the render of DeckGL:
https://github.com/visgl/deck.gl/blob/master/modules/google-maps/src/google-maps-overlay.ts#L246-248
The React wrapper is already special-casing deck.gl in some places, for example here to update the view state, so it doesn't seem unreasonable to support the render callback

I'm not sure how that would work, and I certainly have to look into how that is done for maplibre and mapbox. My current understanding is that we need to use the GoogleMapsOverlay implementation to be able to do interleaved rendering due to the webgl context-sharing and I'm very curious how it is even possible to do that in map(box|libre) when there's a component boundary between deck.gl and the basemap.

@felixpalmer can you maybe provide some hints how you achieved that in react-map-gl? I can't seem to find any mention of that in the docs, so have to dive into the implementation..

Just curious, is it possible to create a working example right now that supports all basemap variants (maplibre/maplibre interleaved/google maps/google maps interleaved)?
Even if it requires lots of ugly conditional cases, it could be instructive to help us see where simplification/API unification opportunities are.
I am not really up to date on how all the different variants look, hard to weigh in without seeing where we are at today.

The <DeckGL><Map/></DeckGL> pattern does not support interleaving. To use interleaving, deck must be created as a MapboxOverlay/GoogleMapsOverlay, and used as a child of the map. Any pattern otherwise is misleading the user to believe that they can just replace the base map on the fly, which is not true.
Here is an example of how react-map-gl does it: https://github.com/visgl/react-map-gl/blob/master/examples/deckgl-overlay/src/app.tsx

@Pessimistress I'm aware it isn't currently supported in the <DeckGL><Map/></DeckGL> pattern, but would it not be technically possible to use the same integration approach used in the XXXOverlay classes to add the interleave support?

I've been thinking about this for a bit, and I think there's a viable solution. This is just a rough sketch, so everything is subject to change and there might be a lot of details I glossed over or don't yet know about. Still, maybe worth putting this here for discussion anyway:
In case of DeckGL > MapRenderer (think type MapRenderer = google.maps.Map | mapbox.Map | ...),  the DeckGL is fully in control of rendering and the view data is passed from DeckGL to the map via the viewport / viewState props. This relies on the assumption that all map renderers will instantly update with changes to the view-props. (Tangentially related: those props are historically mapbox-specific and don't necessarily map well to other renderers. A solution for this could also be integrated into what I outlined below.)
For interleaved rendering the control of rendering is the other way around: the MapRenderer has to control rendering, since it has to coordinate rendering the different passes with the overlays being drawn somewhere in the middle.
To get this to work in the DeckGL > MapRenderer structure, a bit more coordination is needed.
The DeckGL component could create the overlay classes needed (GoogleMapsOverlay / MapboxOverlay / (arcGis.DeckRenderer?)), but it needs access to the map-instance to do that. For this, a MapRendererInterface could be defined that would be returned by the basemap-renderer via useImperativeHandle() and forwarded refs. The DeckGL component could then use that interface to create the overlay.
A schematic implementation for this would roughly look like this:
// a class implementing this interface is returned via ref from all
// map-renderers
interface MapRendererInterface<T = any> {
  rendererType: string;
  mapReadyPromise: Promise<T>;
  map?: T; // google.maps.Map | mapbox.Map | maplibre.Map | ...
}

const DeckGL = props => {
  const mapRenderer = findMapRendererComponent(props.children);
  const [rendererApi, setRendererApi] = useState(null);
  const rendererRef = useCallback(api => {
    setRendererType(ref.rendererType);
    setMap(ref.map);
  });

  useEffect(() => {
    if (!rendererApi) return;

    rendererApi.mapReadyPromise.then((map) => {
      createOverlay(rendererApi.rendererType, map);
    });
  }, [rendererType, map]);

  // omitted: handling of all other children
  return <>{React.cloneElement(mapRenderer, {ref: rendererRef})}</>;
};

So what would happen here?

DeckGL component renders,

injects the ref for the map renderer
doesn't yet create the Deck instance, waits for map renderer to initialize

Map component renders

assigns the renderer-api to the imperativeHandle

after mounting the map, the ref-callback in DeckGL is called, making the
"renderer api" available and triggering the effect to create the overlay

A couple of things to note:

the map instance might not be ready to create an overlay right away
(I think in mapbox a layer can only be added after the style was loaded
and with Google Maps we have to wait for the api to load),
so we'd need the mapReadyPromise to signal the map being ready to accept
an overlay.
The typical use-case for <MapRenderer ref={mapRef} /> would be to access
the map instance in the application (although for both react-map-gl and
react-google-maps the same can be achieved with the useMap hook).
If the ref is also used externally, we'd have to somehow combine the refs.
With an implementation like this, the DeckGL component has to know about
all the possible map-implementations. This is probably fine as there are
only 3 supported renderers at the moment, but it would probably be better
to use a common interface and a registry for all overlay types (e.g. the @deck.gl/google-maps registers the GoogleMapsOverlay in a global registtry where the DeckGL component will look for overlay implementations).

What do you think of this approach? I could go ahead and write a very minimalistic implementation of such a DeckGL component to see how those parts would work together.

I like the big ideas here.
Can we make it so that deck.gl core doesn't need to know about the different renderer overlays (its just the applications that needs to know them, import them from their modules etc)? Maybe adding any required import statements to your code snippet could help shed more light on that?
As a total nit, I prefer shorter names:
interface MapRenderer<T = any> {
  type: string;
  mapLoaded: Promise<T>;
  map?: T; // google.maps.Map | mapbox.Map | maplibre.Map | ...
}

I was thinking about having some sort of global registry (effectively a Map<string, OverlayTypeConstructor>) where @deck.gl/mapbox and @deck.gl/google-maps could register their respective XxxOverlay constructors, like this
// in @deck.gl/mapbox
import {registerOverlayType} from<EMAIL_ADDRESS>
registerOverlayType('mapbox', MapboxOverlay);

// in @deck.gl/googlemaps
import {registerOverlayType} from<EMAIL_ADDRESS>
registerOverlayType('google-maps', GoogleMapsOverlay);

This is assuming a common interface for all overlays, but since they are very close already this shouldn't be a huge problem (it looks like map.addControl(overlay); (mapbox) vs. overlay.setMap(map) (google) is the only real difference).
The DeckGL component would then only need the type from the MapRenderer to retrieve the compatible overlay implementation.

I was thinking about having some sort of global registry

We have had a few examples of global registries in the vis.gl frameworks (for instance loaders.gl allows for global loader registration), but usually (like all things global) these end up eventually being more pain than they are worth, and kind of promote debatable coding practices.
The above is not a veto but rather just a soft one vote against it.
Would asking the app pass in an overlays prop to deck.gl work?

Would asking the application to pass in an overlays: [MapboxOverlay, GoogleMapsOverlay] prop to deck.gl work?

Sure, that would work as well.

With this approach, Deck would be responsible for creating the Overly (MapboxOverlay or GoogleMapOverlay) which is a great abstraction but the camera control would be still in the MapRenderer, right? I mean:
<DeckGL>
    < MapRenderer viewState={viewState} />
  </DeckGL>

It could be a bit confusing for the user why sometimes you send the  viewState in the MapRenderer and other times you can send it in the DeckGL component
<DeckGL viewState={viewState}>
    < MapRenderer />
  </DeckGL>

I'm asking this to make sure I understand the approach correctly.

@padawannn I'll keep that in mind, thanks! Which component is actually controlling the rendering should just be an implementation detail, and isn't relevant to the outside. When rendering via Overlay, it can still be the DeckGL component that receives the view-props. In that case the values would only be forwarded to the map-renderer since the Deck instance will receive the values to use via the overlay.

Thanks for taking the time to think about this @usefulthink and the detailed writeup!

What do you think of this approach? I could go ahead and write a very minimalistic implementation of such a DeckGL component to see how those parts would work together.

I would be very interested in seeing such an implementation 👍

I just want to point out that:

@deck.gl/react does not depend on @deck.gl/mapbox ir @deck.gl/google-maps
react-map-gl and react-google-maps do not depend on any deck.gl modules
assuming we want to keep things this way (and I think we should), we will have to ask the user to import the corresponding overlay class themselves and pass that into either DeckGL or the Map component. I'm afraid it will bot be as clean as you imagined.

Having the parent component render after the child is an anti-pattern in React and will lead to all sorts of unexpected problems. What if there are multiple map components in the children? What if the child map is later removed, shouldn't it behave like using DeckGL standalone? The component is already complicated as is, do you really want to sacrifice stability to save a few lines of client code?

Not to downplay the issues you mentioned @Pessimistress but there is value beyond saving lines of code. By having deck control the camera and user input we make it possible to have a consistent experience across the basemaps and enable other libraries that work with deck, like nebula.gl integrating with the interleaved basemaps.
Ideally we would support adding/removing the child map and transitioning to DeckGL standalone, in effect this permits swapping between basemaps. We could use types to limit the number of children to one, and at runtime simply ignore additional children.

Are we still talking about the same problem? Non of the existing interleaved options use Deck's camera control. This is not really up to us.

I think a consistent experience is a great goal to work towards, however its currently not possible.
In my experience interleave implementations are only as good as the least-featured hook for any given integration. Deck tends to have the more feature-ful hook compared to basemap libraries (webgl 2, many view types, multi-view, devicePixelRatio override, to name a few) for reasons ranging from performance to preference. We could encourage basemaps to make public apis and support more features, and until then Deck needs to be conform a bit to interleave properly.
Deck v8 straightened out an ownership model with maplibre/mapbox so that they always control deck through the IControl interface. We removed bug-prone usage of private apis where control was sometimes the other way around at the cost of some small features. It's been a lot more reliable and functional since that change.
I would love to see a similar pattern in place for google maps too, and like a lot of the ideas in here. My main piece of feedback would be to use a basemap -> deck control flow, make consistency a non-goal in the initial implementation, and encourage the basemaps to prioritize a consistent and featureful api for deck to integrate with.
As a sidenote, hubble.gl and nebula.gl have the same challenge in wanting to configure both the deck and basemap integration. I don't think registerOverlayType is a<EMAIL_ADDRESS>module for the same dependency reasons @Pessimistress pointed out, however, I think something along the same lines in a non-core module could make sense. Whatever it is, I think of the integrator as independent of basemap and deck's core.

Lots of deep thoughts here. Just wanted to mention that in the last open governance meeting we floated the idea of setting up an Open Visualization "basemaps working group" - the idea would be similar to the binary data, 3D and widgets working groups - to create more focused collaboration here, perhaps with some meetings where we could discuss in detail, hash out a common roadmap etc.

I would be very interested in joining that working-group once it is formed.

The key enabler is to have someone step up and take the WG lead role, at least temporarily. Currently we have

Widgets - @chrisgervang
3D - @felixpalmer
Binary Data - @ibgreen

If you are interested I could spend some time to help you set up the roadmap and the working group slack channel etc.


Added Due date feature for Dose2

I've added the due date feature for each vaccine. It gives user the option to either search from the week of due date or quit.
Currently I've tested it for partially vaccinated beneficiaries.
Please test it

This problem persists, so check and update the pull request.

@dhhruv the table seems empty, have you registered any beneficiary for the mobile no. your are trying?

@Nakul93 The table is not empty, I've removed the personal details so it's looking empty.
Your Script from the pull request is working for partially vaccinated beneficiaries but fails for a new one as shown in the above screenshot.
The Script from the master branch is currently in use so I request you to create a pull request once it's done for new as well as partially vaccinated beneficiaries. I'll thoroughly test it and merge that if working properly.
Thank You..

I've added the due date feature for each vaccine. It gives user the option to either search from the week of due date or quit.
Currently I've tested it for partially vaccinated beneficiaries.
Please test it

I've created a dev branch specifically for development so send a pull request in that one.


Turn off hover for tooltip desktop

Hi, my app's charts work great on both iOS, Android, and now macOS. However, when I run the macOS version and move my cursor to reposition the app window, the mouse hovers quickly over a chart, and I get all the tooltips. My users need to get the tooltip if they tap with the mouse, not hover. Can I turn the hover off and use just a top for the macOS/desktop use?
Thank you!

Hi.
You need to override LineTouchData to implement your logic.
First, disable the handleBuiltInTouches.  Then try to implement the logic we've used in the LineChart class (to mimic the built-in touches). Then you can change it based on your need.
I tried to implement it here.
Check it out!
https://user-images.githubusercontent.com/7009300/135586177-a1effefb-85fa-41be-92aa-3b15e614b6e7.mov


⚠ dev-deces.matchid.io search API has degraded performance

In 582431b, dev-deces.matchid.io search API (https://dev-deces.matchid.io/deces/api/v1/search?q=pompidou) experienced degraded performance:

HTTP code: 200
Response time: 4499 ms

Resolved: dev-deces.matchid.io search API performance has improved in 563e625 after 6 minutes.


Could not insert post into the database

I have installed and network activated the plugin, however when i try to upload a jpg it shows me the below message
Could not insert post into the database
any ideas? thanks

I investigated this since I had a similar issue - it happens when the default site used for global media storage doesn't exist. I changed the ID to '1' since that site always exists.
i.e. in network-media-library.php, change:
const SITE_ID = 2;
to
const SITE_ID = 1;


Remove unnatural indent in doc

http://facebook.github.io/react-native/docs/animated.html#animatedvalue
before

after

Hi there! This issue is being closed because it has been inactive for a while.
But don't worry, it will live on with Canny! Check out its new home: https://react-native.canny.io/feature-requests/p/remove-unnatural-indent-in-doc


[Crash] Crash on startup.

I'm getting a crash on startup, and can't make head's or tails or the log, it seemed like me to point towards quilt. But if someone could point me in the right direction before i gotta just rip out mods one by one until it works, the help would be much appreciated.
https://mclo.gs/ZZem0UZ

Remove the Chunky extended mod. It is broken.


[SPARK-39135][SQL] DS V2 aggregate partial push-down should supports group by without aggregate functions

What changes were proposed in this pull request?
Currently, the SQL show below not supported by DS V2 aggregate partial push-down.
select key from tab group by key
Why are the changes needed?
Make DS V2 aggregate partial push-down supports group by without aggregate functions.
Does this PR introduce any user-facing change?
'No'.
New feature.
How was this patch tested?
New tests

ping @huaxingao cc @cloud-fan

thanks, merging to master/3.3! (it's kind of a mistake in the agg pushdown)

@cloud-fan Thank you!


[Bug]  gemma2_q4f16_1_batch_prefill_ragged_kv: Expect arg[10] to be int

Why is initialization successful when running on Android using gemma2-2b-it model compression, but shows org.apache.tvm.Base$TVMError: TVMError: Assert fail: rotary_mode_code == 0, gemma2_q4f16_1_ batch_prefill_ragged_kv: Expect arg[10] to be int error, unable to dialog

Hi,
I noticed that this issue has been closed, but I’m curious about how you resolved it. Could you please share the steps you took or any insights that helped you overcome the error related to rotary_mode_code when using the gemma2-2b-it model compression on Android?
Thank you!

Just recompile using the latest code and tools from the mlc-llm repository

What specific "tools" are you referring to? I'm using the latest code. This information would be helpful for me in understanding and resolving the problem

Some of the latest tool packages in https://mlc.ai/wheels, you can try to delete your cache and then start again.

Get, thx.


chore: tweak demo

chore: tweak demo
fix: await allReady on prerender

#479  👈
main

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

Join @hi-ogawa and the rest of your teammates on  Graphite


Keybinding breaks when non-panel div is encountered in list

Could it be set up to simply scroll past the non-panel element to the next panel?
Scrolling behavior becomes erratic when the panels are separated as well.
Thanks!

On Wednesday, January 21, 2015, Guido Bouman<EMAIL_ADDRESS>wrote:

There you go dude. =]
—
Reply to this email directly or view it on GitHub
https://github.com/guidobouman/jquery-panelsnap/issues/70#issuecomment-70903941
.


Cannot select encryption key in Outlook 2013

When I try to send myself an encrypted message, it prompts me to "select recipients" but the list is empty. I have the correct key(s) installed in Kleopatra.
Signing works. I'm using beta 35

Is this still an issue? Are you connected to an exchange server or pop3/imap?

it seems I have a similar problem with latest BETA-44.
I can only select keys from recipients with RSA keys,
Users with DSA/ELG do not show up in the recipient list.

I was able to reproduce the issue using DSA/ELG keys. Fixed in BETA-45.

Hi Meddington,
tried BETA-45 and some more key do show up. But unfortunatly many of my recipient keys do not show up.
All are DSA/ELG. I currenty try to compare and see where is the difference in the keys that show up vs. keys that do not show up.
The only difference I could find so far is: Keys which do not show up have additional key usage "authentication" - but my short tests did not show a difference with newly generated keys (including auth) and DSA/ELG. Only difference I cannot generate "old" keys with 1024bit DSA - only tested with 2048bit DSA - 2048 ELG.
Old keys which do not show up seem to be 1024 bit DSA with additional key usage "authentication"
Any hints how I could debug this issue ?

Could you send me one of the offending keys?  meddington at gmail dot com, or just stick in this issue thread.

Okay this will be fixed in BETA-46. Some keys do not have key usage flags set.

Hi Meddington,
works now for me with BETA-46
many thanks !!!!

@andrewgdotcom - did this solve your issue as well?

I now get "attempted to read past the end of the stream"...

@andrewgdotcom - When does this error occur? Before the select recipients dialog, after or during?

On 31/07/15 01:18, Michael Eddington wrote:

@andrewgdotcom https://github.com/andrewgdotcom - When does this error
occur? Before the select recipients dialog, after or during?

Immediately after I click "send", before any other dialogs. See attached.
Andrew.

Hm. Attachments by email don't seem to work. Trying the web interface...

I upgraded from 2010 32-bit to 2013 64-bit and the error is still here.

Closing as this seems to be a duplicate of existing bugs. Origional issue resolves.


otf font support

pass array of fonts and prevent dir scanning with glob.
e.g. FontsFactory::create(['../font.otf'])

Made some changes, how about now? To be honest, FontsFactory should be removed from this library, because only one font is used at a time. Specific font class should be passed where needed instead of fonts factory. Why should I load all the fonts in the dir if only one is used?

You are still scanning a whole dir, which might be slower than creating a class for each of them. So lazy loading might have 0 impact here.
Though I am not concerned about the performance, I don't like that my font files has to have an extension and that all of them has to be in the same directory. (e.g. valid .ttf font file might be called './hey.tmp'). My solution might not be clean, but it solves this issue.

Sorry I updated my comment above without reading your reply.
With the last commit you can specify a font file or an array of them when creating the factory (use the $isFontPath = false param).
Normally you should be able to specify a file name without extension as long as it exists and Imagine can load it.

Feel free to extend the test I wrote to check if font files without extensions can be loaded :)

Looks great, thanks!


New Kuudra Tiers

In the latest Crimson Isles update, Kuudra was remade and tiers up to 5 were added. Right now, SkyCrypt only supports the first 2 tiers.

Added in #1728


[Improvement] Chain spells should ignore pets of the caster

Currently the chain spell is somewhat limited in use, as it hops to pets of the caster. If you have a horse, or pet wolves, or pet golems, the chain spell is going to kill them, which makes it rather useless. I also think (haven't tested it) that the spell would chain to other players, which would be a problem if playing with a friend.
I suggest the following changes:

Chain spells should always ignore pets if the owner is the caster.
If the gauntlet is shift-right-clicked, it will change mode between PvP (hit all players) to PvE (ignore all players).

Same thing with the elemental sword, hits pets. I also think Pech shouldn't be hit by this unless agro'ed.

Horses and pigs being ridden by a player are already immune to bolts and projectiles.Touch foci don't directly deal damage, but they still inflict secondary effects such as fore and slowness, which is probably a bug.
If you don't want players attacking each other on accident, disable PVP or put them on the same team with friendly fire disabled.
I think something to make foci more selective, like an effect modifier that makes the focus only target hostile mobs, is not a bad idea, but it belongs on thaumcraft-suggestions, not here.

2 days ago in B6 I killed my horse because the chain spell jumps to them and even aims at them, so I don't think they are immune.
The switch for PvP is in regard to public servers that have PvP enabled in general, but then you might still want to play with a friend without killing him or her all the time. This is a very common setup for public Minecraft servers, so I think it is a relevant feature.
Thanks for the hint about the suggestion tracker, I wasn't aware it exists.


Issue #264: Make teardown pod check configurable

KubernetesEnv.Log_Pods_For_Debug was expecting each node
contains vswitch pod. This makes the expectation configurable
so that suites with less nodes work on setups with more nodes.
Signed-off-by: Vratko Polak<EMAIL_ADDRESS>

Coverage increased (+0.06%) to 53.107% when pulling 7d1475058bfd30152da3afaac8ad906cfa776a25 on vrpolakatcisco:contiv264 into 56310f884b362a57108a7f76b0a7e320ed83b654 on contiv:master.


[UI] Can't open the UI in browser

Hi there,
I build the perfetto UI in my WSL, but I can't open the UI via http://localhost:10000 on windows.
I opened the UI successfully before but failed after changing the UI version (git reset to older commit). But I can't open it in any version now which is very strange to me.
I am using WSL2 and ubuntu20.04 now. I also tried ubuntu18.04 and ubuntu22.04, but it doesn't work.
I am sure perfetto has been successfully installed on WSL since curl http://localhost:10000 can get the correct output.
I switched to WSL1, but it always prompts Error: listen EACCES: permission denied <IP_ADDRESS>:10000.
I also thought the reason might be Windows can't access wsl2 via localhost, but I did it before. Also, I can access the jupyter on wsl2 via localhost:8888
I have no idea about this issue now, did anyone have any idea about it? I appreciate any feedback!

Hi @ddrone, @LalitMaganti, @chromy, and @octaviantu, could you please give me some insights to deal with this issue? Thanks so much for your time and consideration!

Sorry none of us use Windows or WSL for UI development so really don't have any insight to share here.
However when you say " But I can't open it in any version now which is very strange to me.", this feels like something went wrong without your specific setup so not sure we can do anything on our side.

Thanks so much for your response, @LalitMaganti! I originally thought it was not something related to perfetto but WSL. But I can use localhost:8888 to access jupyter in WSL. So I am confused about it. Anyway, thanks for your feedback! I have a follow-up question, can I change the TCP port of perfetto and how can I do that?

You can use the --serve-port: this is the script which builds the UI so you can see the arguments there.

Hi @LalitMaganti, I solved this issue now. I just changed the TCP port and it works well now. I am updating it here for those who face this issue later. I guess the problem might be because windows blocked port 10000 on my machine. Thanks for your help!

Oohhhhhh you know what it might be: it might be Windows Defender blocking the port. I've encountered this issue in the past with SSH port forwarding in WSL. I'd check if Defender is blocking 10000 :)

I think so! Thanks for your sharing!


$processModelValue() cannot pass objects through $formatters properly

I'm submitting a ...

[ ] regression from 1.7.0
[X] security issue
[ ] issue caused by a new browser version
[ ] other: .

Current behavior:
Currently, $setViewValue(value) function accepts objects as a value, but requires them to be a angular.copy of the previous object - since otherwise it will not detect the change (no deep comparison). This is expected and documented behaviour. The opposite function, however, $processModelValue() function cannot properly process the $modelValue which is an object (an end result of the $setViewValue(object) function above), even though it implicitly should. It improperly treats it as a simple type, and within the $$format() function makes new $viewValue and $modelValue be the two references to the same object with properties - and therefore all $formatters also affect $modelValue where they should not - which affects $validators and causes them to fail where they should succeed.
This means that $modelValue object is being stored directly from user input, circumventing parsers altogether - which is a security concern.
Expected behavior:
The $processModelValue() and consequently $$format() functions should properly detect if the $modelValue is an object, and ensure that formatters only act on a copy of the original $modelValue object, which copy the $$format() function should return.
Minimal reproduction of the problem with instructions:
AngularJS version: 1.7.9
Browser: should be affecting ALL browsers, explicitly observed in Chrome 81
Anything else:
Can be fixed by replacing the line 1042 of ngModel.js file:
From:
var viewValue = this.$modelValue;
To:
var viewValue = angular.copy(this.$modelValue);

To add possible locations where object handling is broken:
Line 707 of ngModel.js (within commitViewValue() function)
From:
var viewValue = this.$viewValue;
To:
var viewValue = angular.copy(this.$viewValue);
Line 728 of ngModel.js (within $$parseAndValidate() function)
From:
var viewValue = this.$$lastCommittedViewValue;
To:
var viewValue = angular.copy(this.$$lastCommittedViewValue);

Given that AngularJS is in Long-Term Support mode (see here for details), I am afraid we are not going to fix this kind of issues (even if it might be a valid issue).


Track when HMRC webchat is offered to users in analytics

We currently track when users interact with HMRC’s webchat service (eg when they click the ‘accept’ or ‘reject’ buttons). This commit adds in an event to track when the webchat service is offered to users.
This event, alongside other data such as page views, will give us an idea of:

how many people are being presented with webchat but aren’t doing
anything with it
how many people are not being presented with webchat at all

cc @robinwhittleton @dsingleton @davidillsley

Thanks @fofr!


Delete old Alerts plugin.

It doesnt seem like this will ever be used and it represents technical debt whenever we do upgrades or anything else global.
Maybe it should just be moved somewhere else? Anyway, it needs to be maintained to keep up with all of  the changes.
I know @lucasponce  put a lot of work into this and feel bad about deleting (my metrics-console and metrics-explorer have also gone to code heaven).
CC: @jshaughn @pilhuhn

Let's wait to merge until after Lucas has had a chance to respond.

Is this the sample UI Lucas wrote for you guys as an example of the API?  If so it was never anticipated for it to live forever, I think he expects and will be fine with the removal. It's now out of date.

Yes, @jshaughn it is that sample alerts UI.

Hi @mtho11, no problem from my side.
The goal of this code was to help in some way to show you how to call the first API we created for alerts.
I'm happy if it helped so please clean the code as I can see that it has no sense to maintain it.
Thanks !

Merged #300


ENS initializer is inaccessible due to internal protection level

I am unable to use ENS.swift due to access control issues.
Sample code to reproduce error:
let web3 = web3(provider: InfuraProvider(Networks.Mainnet)!)
let ens = ENS(web3: web3)!

Error:
'ENS?' initializer is inaccessible due to 'internal' protection level

I attempted to fix this by adding a public access modifier to the ENS init?(web3: web3) method. Then I was able to initialize ENS, but still ran into access control errors.
Sample code to reproduce error:
let web3 = web3(provider: InfuraProvider(Networks.Mainnet)!)
let ens = ENS(web3: web3)
let domain = "somename.eth"
let address = try ens?.registry.getResolver(forDomain: domain).resolverContractAddress

Error:
'registry' is inaccessible due to 'internal' protection level

Swift 5
Xcode Version 10.2 (10E125)
On the 2.2.0 branch

pod 'web3swift', :git => 'https://github.com/matter-labs/web3swift.git', :branch => '2.2.0'

@barrasso hi. Please, use master branch. Think I've fixed it

@BaldyAsh Just switched back to master 2.1.6
I'm getting an unresolved error: Use of unresolved identifier 'ENS';
I see the code is added to the repo on Github, but the ENS.swift files aren't included in my Pod project within Xcode.

@barrasso yes, strange problem. Folder exists and I added its paths to podspec, but it's missing in pod. I will publish new version with utils files in different folder tomorrow

Works with new update :)
Using:
pod 'web3.swift.pod', '~> 2.2.0'


Make Kiota Graph client compatible with current service lib Graph client

[ ] consider PageIterator design as it accepts a Graph client

Not relevant anymore. Graph service client will be passed to the page iterator.


Question about the dataset size

Hello, thanks for your great work.
I have some question about the dataset used in table6 of BitDistiller:

LLM-QAT is datafree method, and from A.3 I get to know that BitDistiller only use "a small portion of the involved
datasets", so what is 100k and 2k data mean in table6?

100K and 2K represent the amount of data. LLM-QAT generates 100K data for training, while BitDistiller only requires 2K for training.


Refactor to use builder pattern for Event payload models.

There were a lot of constructor arguments for the payload models that made reviewing the EventBuilder code difficult to parse. I've converted them all over to builders to help with readability and maintainability going forward.
I also renamed EventBuilder to EventFactory, I think that is more semantically correct (at least to me). Unfortunately, in the overall diff github isn't rendering it as a rename. If you look at the individual commits it does.

Pull Request Test Coverage Report for Build 563

197 of 201 (98.01%)  changed or added relevant lines in 8 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+5.8%) to 89.399%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core-api/src/main/java/com/optimizely/ab/event/internal/payload/Event.java
23
25
92.0%

core-api/src/main/java/com/optimizely/ab/event/internal/payload/Visitor.java
11
13
84.62%

Totals

Change from base Build 551:
5.8%

Covered Lines:
2336

Relevant Lines:
2613

💛  - Coveralls


Get a proper announcer for Discord

i based this code on one of the discord.py examples
import praw
import discord

client = discord.Client()
types = {'t1':'comment', 't2':'account', 't3':'link', 't4':'message', 't5':'subreddit', 't6':'award', 't8':'promocampaign'}
r = praw.Reddit('new mail by amici_ursi')
channel = client.get_channel('183018837883617280')

@client.event
async def on_ready():
    r.login('username', 'password', disable_warning=True)
    print('Logged in as {}'.format(client.user.name)
    print(channel)
    for message in r.get_unread(limit=None):
        notification = "New {}: {}".format(types[message.name[:2]], message.body)
        print(notification)
        await client.send_message(channel, notification)
#        message.mark_as_read()

client.run('my_token')

it fails for discord.errors.InvalidArgument: Destination must be Channel, PrivateChannel, User, or Object

announce non-trivial unread reddit messages to #mailbox
announce github changes #dev
announce OC content to #OC
announce add/remove moderators (modlog actions) to #moderator


Documentation Outdate

This documentation seems outdated because the FirebaseInstanceIdService class is deprecated is deprecated.
The FirebaseMessagingService class now exposes a virtual method named "OnNewToken".

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

ID: 2a03ab5f-3dda-f469-33e0-9504c90d468c
Version Independent ID: 4f8e4309-cd06-f09f-00f0-d978b3d16777
Content: Push notifications to Xamarin.Android apps using Azure Notification Hubs
Content Source: articles/notification-hubs/xamarin-notification-hubs-push-notifications-android-gcm.md
Service: notification-hubs
GitHub Login: @jwargo
Microsoft Alias: jowargo

Hi @fperreaultnv , thanks for your feedback! We will review and update this doc accordingly.

@jwargo  can you please verify this?

@Grace-MacJones-MSFT we’re planning an update. Customers can use this doc in the meantime: https://docs.microsoft.com/en-us/xamarin/xamarin-forms/data-cloud/azure-services/azure-notification-hub.

@jwargo I think this documentation is also outdated. The FirebaseRegistrationService  code example leads to a FirebaseInstanceIdService is obsolete error.
Should I move the FirebaseRegistrationService's [IntentFilter(new [] { "com.google.firebase.INSTANCE_ID_EVENT" })] to the FirebaseMessagingService?

@fperreaultnv we refreshed the doc back in April and there were some warnings but it still worked. We’ve not yet implemented full FCM support, so the SDK uses GCM compatibility mode Described in this blog post.
I have someone looking at the doc tomorrow and will update as needed.

Thanks!

The updated article is live now.
#please-close


Plentey Security Vulnerabilities in the OpenSSL from the Wallet 2.0

I had already addressed it here once.
https://github.com/deeponion/deeponion-legacy/issues/176
Nothing's happened in the last two months.
Instead of installing a current secure ssl version you have installed an older one in the Wallet 2.0
https://www.cvedetails.com/vulnerability-list/vendor_id-217/product_id-383/version_id-180645/Openssl-Openssl-1.0.1k.html

There is no dependancy on a vulnerable SSL version, if you have serious concern with the security of some the code, then please create a new issue with details of how you have managed to exploit the vulnerability along with which area of the code is affected.
If this is just an informational issue, then you should raise a support ticket in our forums.


Rework expandable code example boxes

Accessibility improvements:

controls now accessible by pressing tab
WAI-ARIA attributes added
still has graceful degradation without JavaScript

Other improvements:

boxes now open with quick sliding animation
(subjective) less work in the macro means easier maintainability by
web developers new to D

I've tested this with Firefox (38), Chromium (48) and Midori (0.5.10).  Judging by http://caniuse.com/ it should be usable even in very old browsers.  You might want to try it out in other browsers if you have them, though.

Nice, LGTM


Unable to use Component in sub-modules - 'unknown element' / 'already imported'

Hi,
I'm currently not able to import and use this component inside sub components inside my Angular 7 project.
After adding NgxDatetimeRangePickerModule.forRoot() to the import-section of app.module.ts, the component is only available on the top-level AppComponent, but not on any child components such like sub-pages. (error message from Angular compiler: 'ngx-datetime-range-picker' is not a known element
By importing the NgxDatetimeRangePickerModule inside a custom lazy-loaded sub-module for handling date range picker on multiple places, the NgxDatetimeRangePickerModule throws an error: NgxDatetimeRangePickerModule is already loaded. Import it in the AppModule only.
What is needed here to properly use NgxDatetimeRangePickerModule inside a custom lazy-loaded component?
Thanks,
Martin

@mmolle-nelo
1st issue: Is there any way that I can take a look at the repo?
2nd issue:
You can create a small wrapper module in application code-base (example: ngx-datetime-range-picker-wrapper.module) and then import it using ./ngx-datetime-range-picker-wrapper.module#NgxDatetimeRangePickerModule. I didn't get enough time to try this myself but please let me know if this works for you.

Closing it due to inactivity. Please feel free to reopen it.

reopening bcoz it does not work in submodules


Change SketchFab uploads to upload as Open Brush

It looks like you're sending source: "tilt-brush" and tags tags: ["tiltbrush"] in the upload POST. If you change those to open-brush or openbrush, I'll take care of the rest on my end. Just let me know which you choose for each. - James Green, SketchFab
Let me do some more testing before merging.

I can see both tags, but not the source. Do Sketchfab need to approve the source name from their side? I also tried changing the source name to Open Brush as per our original application for API keys, but that didn't show either

@mikeskydev I am yet to test this actually works, after writing it I needed secrets then got sidetracked by the Quest crashing bug. Sketchfab says it should work using a custom source but I wanted an example Sketchfab upload to post before merging. Apologies for the delay!

We don't do secrets in PR builds from forks (because they rely on secrets and forks are not guaranteed to be safe from credential leakage), but after #71 is merged, if you want to open a PR from a branch of this repo rather than a fork (and I believe you have write permissions), you can get the sketchfab secrets built in to your CI build!

Rebased and retested.
Here are two examples: (Don't judge my lack of artistry 😉)
PCVR Upload Test
Oculus Quest 1 Upload Test
I can now send these to SketchFab to use as examples of what uploads from Open Brush will look like and what the source tag will be. So after merging this PR, the source tag will be  "open-brush" and new uploads will be given tags: "openbrush" and "tiltbrush".  Before I sent these to SketchFab, can I confirm we want to use these tags?


Swapping to another tab while creating an .ipynb file throws an error

VSCode version 1.70.0-insider
Interactive CI build 20220712.4 using dotnet-interactive-vscode-1.0.3362041.vsix

Start with an empty text file open in VSCode
Ctrl+Shift+P => ".NET Interactive: Create new blank notebook"
Select "Create as .ipynb"
Select "F#"
While it's creating, quickly navigate back to the text file tab.
Expected: The file creates without issues.
Actual: This error is thrown. Doesn't occur if you stay on the page.

Good find!  I've traced the issue to VS Code and filed microsoft/vscode#155778.

External bug closed as won't fix.


[chore] Make CRoaring use AVX instructions

Proposed changes
Make CRoaring use AVX instructions.
Problem Summary:
Describe the overview of changes.
Checklist(Required)

Does it affect the original behavior: (Yes/No/I Don't know)
Has unit tests been added: (Yes/No/No Need)
Has document been added or modified: (Yes/No/No Need)
Does it need to update dependencies: (Yes/No)
Are there any changes that cannot be rolled back: (Yes/No)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

We need to provide no-avx version

let me seesee

Cmake uses the -march=native parameter by default, so don't need to specify the avx parameter, close this PR


remove description which not makes sense

A task contains a core::future::Futures tree. Future returns Pull::Ready (defined by the core lib). "Task returns Pull::Ready" is not an defined semantic. You may just say: after the last Future in a task returns Pull::Ready, an executor may mark the task as 'finished' and will not schedule it any more.

I see. IMO the fact that tasks can exit is important enough that we should keep it. Other than that, feel free to reword to clarify.

I've pushed a new commit, please review. @Dirbaio


Confusing items on Voyager web pages

On https://pds-rings.seti.org/voyager/ck/

"To date, we have generated C kernels for the Voyager 1 flyby of Saturn. Other C kernels will follow shortly."
And yet below there are many other kernels available for download.

If you are looking for raw images, you will likely click on the "Raw Images" tab. This tab gives you access to the superseded files without telling you they have been superseded. In contrast, the "Calibrated Images" tab tells you they have been superseded, and also gives you access to the new raw files. So if you're looking for raw images, you need to look at the calibrated images tab, but there's no way to know this!

Is this issue properly assigned to @dstopp at this time?  I only ask because I saved this notification in my email inbox, which is one way that I sometimes track action items needing action from myself.
If this issue is ripe for action by @dstopp, and if she is simply looking for the time when she will get to it, then that is totally fine with me.  However, if this issue is waiting for action from myself, then please assign it to me.


Unit Testing Stubs for Vue Components

unit test for vue components should be added, like karma i.e 'https://vuejs.org/v2/guide/unit-testing.html'

ready to merge

good


is it possible to change an image to monochromatic?

is it possible to change an image to monochromatic using jimp?

Yes, use image.greyscale()

I was gonna make this into a plugin. But I found I could do it in one line. If you first convert the image to greyscale you can then uses the color function to mix in whatever color your want.
const Jimp = require('jimp');

test();

async function test() {
    const image = await Jimp.read('./exampleImages/cops.jpg');

    image.greyscale().color([{ apply: 'mix', params: ['#90b6ff'] }]);

    image
         .greyscale()
         .color([{ apply: 'mix', params: ['#90b6ff'] }]);
         .writeAsync('test.png');
}


CORE-5940: (ledger-common) Encode CPK metadata in transaction metadata

When persisting transactions, we'll need to store information about the CPKs used to generate them, to facilitate backchain resolution later. This PR adds some basic CPK information to the transaction:

CPK name
File checksum

(We might need more than this)

Just noticed the integration tests fail with this:
TEST net.corda.ledger.consensual.impl.test.ConsensualLedgerServiceTest <<< ERROR: 1/1 services (objectClass=net.corda.v5.ledger.consensual.ConsensualLedgerService) didn't arrive within 1000ms
java.lang.AssertionError: 1/1 services (objectClass=net.corda.v5.ledger.consensual.ConsensualLedgerService) didn't arrive within 1000ms

Which is odd. Last time I saw that, it was due to a dependency being missing from test.bndrun, but that doesn't look likely here. Maybe some of the newly-added service dependencies needs to be added to test.bndrun, but I'm curious as to why it would mention ConsensualLedgerService with no clues beyond that. Debugging OSGi issues can be like searching for the right piece of paper while wearing a blindfold...


Maximize uses settings of primary display

Describe the bug
When maximizing the runelite client on my second display (which has the taskbar on the left), it uses the settings of my primary monitor (which has the taskbar on the right of the screen)
To Reproduce
Steps to reproduce the behavior:
Set up two displays with differing locations for the taskbar
Maximize Runelite in primary display
Restore runelite window
move to second display
maximize in secondary display
observe that the size is now fitted to the primary display, but on the second display
Expected behavior
The display should fill the second display using its taskbar location
Screenshots
https://imgur.com/nz4iuEJ
Environment (please complete the following information):

OS: [Windows 10]
RuneLite version: [1.4.16]

What if you disable custom window chrome? In "RuneLite" settings

I disabled the setting, and now the client behaves as expected, but what is "custom window chrome?"

The custom window decorations that we have around the window. It mostly only causes problems like this and many more and its not even pretty :d

duplicate of https://github.com/runelite/runelite/issues/5153


[BEAM-14523] Add a retry code to insertall retry policy

Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

LGTM from insertall team.

R: @chamikaramj

R: @johnjcasey


add codeception BDD testing

in favor of #78 that behat is quite hard to implement, I prefer to use codeception as the BDD testing framework.

I created PR #98 for it.


Create Hash algorithm 💇

The academic paper does not seem to have a hashing algorithm defined. We are going to ask Pinar about it next lecture (Wednesday 14/02/24)


Shuffling/ Reordering axis in progressive rendering parallel coordinate d3 V4?

Hello,
I have been referring to https://bl.ocks.org/syntagmatic/482706e0638c67836d94b20f0cb37122
for progressive rendering in parallel coordinate d3 v4. Do we have an example where we can reorder the axis; like drag and put the axis from one end to other.
Any help or suggested examples will be highly appreciated.
Thanks

Hi Abhijeet,
brushing.html shows the usage of reordering.
To make a parcoords reorder-able (this code is from brushing.html):
      d3.csv('data/cars.csv').then(function(data) {
            parcoords
                .data(data)
                .hideAxis(["name"])
                .composite("darker")
                .render()
                .shadows()
                .reorderable() // make parcoords reorderable
                .brushMode("1D-axes");  // enable brushing

Is this what you are looking for?

Hello,
Thanks for your prompt reply.
Yes exactly like that, but since I was referring to simpler progressive rendering like that https://bl.ocks.org/syntagmatic/482706e0638c67836d94b20f0cb37122
So I was wondering is there an option to add reorder/shuffle axis code to this. Would you suggest any method that I can directly apply in order to get axis shuffling !
Thanks again for your time.

I'm confused. Are you asking how to reorder axes in the chart that you provided?
Or requesting a feature that should be implemented in parcoords-es?
Both progressive rendering and reorder functions are supported by parcoords-es and can be enabled in the same chart.

Hello ,
Yes, I was actually asking how to reorder the axes in the chart provided. Sorry if my question created confusion.
Thanks and Regards

Never mind. The original parallel coordinates does have reorderable api

closed due to inactivity


The checkpatch C checker doesn't show up the first time

In a linux repository, vim net/dsa/dsa.c then :SyntasticInfo shows:
Syntastic version: 3.7.0-168 (Vim 704, Linux)
Info for filetype: c
Global mode: active
Filetype c is active
The current file will be checked automatically
Available checkers: clang_check gcc make
Currently enabled checker: gcc

Running :SyntasticInfo a second time shows:
Syntastic version: 3.7.0-168 (Vim 704, Linux)
Info for filetype: c
Global mode: active
Filetype c is active
The current file will be checked automatically
Available checkers: checkpatch clang_check gcc make
Currently enabled checker: gcc

And checkpatch shows up.
Cc: @daniel-walker @d-k-c

I can't reproduce this, and I can't really imagine any non-catastrophic scenario of how it could happen.  Either way, setting g:syntastic_c_checkpatch_exec explicitly to the full path of checkpatch or checkpatch.pl should fix the problem.

Setting g:syntastic_c_checkpatch_exec indeed fixes the checker detection. However the dynamic detection of ./scripts/checkpatch.pl is still broken. It doesn't seem like a special case to me, it happens for @d-k-c as well.

What do you mean by "dynamic"?  What exactly did you do, what did you expect to happen, and what happened instead?

What do you mean by "dynamic"?

I mean what SyntaxCheckers_c_checkpatch_IsAvailable() does if g:syntastic_c_checkpatch_exec doesn't exist.

What exactly did you do, what did you expect to happen, and what happened instead?

You're basically asking to repeat my first comment. Clone a Linux repo, or do something like:
$ mkdir -p /tmp/test/scripts
$ touch /tmp/test/scripts/checkpatch.pl
$ chmod +x /tmp/test/scripts/checkpatch.pl
$ cd /tmp/test
$ vim test.c

I expect checkpatch to show up in the "Available checkers" list the first time I run :SyntasticInfo, but it doesn't.

I mean what  SyntaxCheckers_c_checkpatch_IsAvailable()  does if  g:syntastic_c_checkpatch_exec  doesn't exist.

It caches the first result until the exec changes. shrug

You're basically asking to repeat my first comment.

No, I was asking you to give more details about what you did, so I could make sense of what you're seeing.  I suppose we were both wrong though, so I'll stop here.


Add Profiles/History feature to VS extension

Add possibility to create multiple profiles for different devices (like history)

it would be nice to make comments for the IP (device name, Phone XYZ) so that I can remember what IP is used by which device

Implementing https://github.com/AndreiMisiukevich/HotReload/issues/43 would make this obsolete. I would prefer the automatic discovery option from the other issue.

@AndreiMisiukevich I think we can close it and concentrate on https://github.com/AndreiMisiukevich/HotReload/issues/43.

@stanbav I agree with this.


Add codecov.io integration (collect and report code coverage from Travis-CI builds)

[x] .travis.yml updated to collect and report code coverage;
[x] requirements-text.txt updated to include pytest-cov and latest versions of deps;
[x] tox.ini updated with coverage settings

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@4ce6b46). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #44   +/-   ##
=========================================
  Coverage          ?   90.03%
=========================================
  Files             ?       62
  Lines             ?     4596
  Branches          ?      582
=========================================
  Hits              ?     4138
  Misses            ?      369
  Partials          ?       89

Continue to review full report at Codecov.

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

With this codecov integration it is now easier to find untested code.
While having overall coverage around 90% is ok, there is some modules that are not tested at all:
https://codecov.io/gh/popravich/hiku/branch/travis_coverage

aiopg tests require postgres in docker, and I was lazy to setup travis with docker support, because aiopg source reuses as much as possible from sqlalchemy source.

@popravich Can you check that pip cache actually works? I reran py36 build for several times and keep seeing that pip still downloads packages from PyPI.


Support flexible patch version syntax to allow for automatic Python updates

Pinning Python runtime on Heroku prevents it from getting security updates.
remote: -----> Python app detected
remote:  !     Python has released a security update! Please consider upgrading to python-3.6.10
remote:        Learn More: https://devcenter.heroku.com/articles/python-runtimes

The secure way is to allow any newer patch version to be installed. Proposed syntax.
python-3.6.x

Heckin yes. Not the next thing on my list, but on the list.

I could probably help you with a patch given the exact place where Python selection happens.

@abitrolly Hi! Thank you for filing this. I 100% agree this is something we should support. Whilst some projects will always want to specify an exact Python version to ensure determinism/allow control of when the upgrade occurs, there are likely many more that would like to not have to think about patch updates and have them be performed automatically.
Some thoughts that came to mind:

What syntax(s) should we support? (eg python-3.6 vs python-3.6.x vs python-3.6.*, or even variants without the python- prefix)
Longer term do we see runtime.txt being superceded by something else (eg #932)? If so, does that affect whether we add support for this feature to runtime.txt (vs adding only to the new thing), or should we just go ahead with this anyway?

To try and answer these, I took a look at what other tools/services use currently:
Pyenv

The .python-version file can contain one or more Python versions (separated by newlines)
Valid version names are those here - ie: X.Y.Z form for CPython (though python-X.Y.Z also supported), and PREFIX-X.Y.X for other build types.
No support for flexible patch versions (ref pyenv/pyenv/issues/1349 and pyenv/pyenv/issues/723)

Python Poetry

https://python-poetry.org/docs/pyproject/#dependencies-and-dev-dependencies + https://python-poetry.org/docs/dependency-specification/
Typically doesn't track exact Python version to be used for a project, but more the semver range of supported versions, via a [tool.poetry.dependencies] field in pyproject.toml
Example python = "^3.6"

Pipenv

https://pipenv.pypa.io/en/latest/basics/#specifying-versions-of-python + https://pipenv.pypa.io/en/latest/advanced/#automatic-python-installation
Pipfile supports optional python_version and python_full_version (which is then copied to Pipfile.lock)
These use PEP-508 style syntax - ie: X.Y or X.Y.Z respectively

Travis CI Python

https://docs.travis-ci.com/user/languages/python/
Version can only be specified via .travis.yml
Valid versions formats are X.Y or X.Y.Z for CPython and eg pypy3.6-7.3.1 or pypy3 for PyPY

Circle CI Python

https://circleci.com/docs/2.0/circleci-images/#python + https://circleci.com/docs/2.0/docker-image-tags.json
Version is specified via the Docker tag in the Circle CI config.yml
Valid version formats are latest, X, X.Y, X.Y.Z

Azure Pipelines

https://docs.microsoft.com/en-us/azure/devops/pipelines/ecosystems/python?view=azure-devops#use-a-specific-python-version + https://github.com/microsoft/azure-pipelines-tasks/tree/master/Tasks/UsePythonVersionV0
The docs don't mention valid formats, but from reading the source it appears any semver style format is supported, eg: X.Y, 3.x etc

Netlify

https://docs.netlify.com/configure-builds/manage-dependencies/#python + https://github.com/netlify/build-image/blob/xenial/run-build-functions.sh
Supports both runtime.txt and Pipfile (the latter taking precedence)
Valid runtime.txt formats are X.Y only
The runtime.txt syntax conflicts with Heroku's causing things like netlify/build-image/issues/141
For pipenv the version handling is left entirely to pipenv's venv management

Docker Hub Official Python images

https://hub.docker.com/_/python
Valid version formats are of form latest, X, X.Y, X.Y.Z (plus all the suffix variants)

Given the above, I think it's best if we:

support a python-X.Y style syntax (not python-X.Y.* or python-X.Y.x)
consider also supporting the version without the python- prefix, given most other platforms don't use it, plus there have been support tickets about builds failing due to use of the non-prefixed version form (we should just support it out of the box)
support this in runtime.txt since whilst we will likely want to support .python-version in the future, it doesn't support flexible versions anyway so likely couldn't be used by people wanting that feature

What syntax(s) should we support? (eg python-3.6 vs python-3.6.x vs python-3.6.*, or even variants without the python- prefix)

I see not problem to support them all, but I would leave python- prefix intact, because there are also alternative interpreters like pypy.

python-3.6
python-3.6.*
python-3.6.x

On the second thought a separate component that can parse the requirements from all these platforms and autodetect best Python version given priority list (also explaining its process and selection logic) would be beneficial not only for Heroku.

Tracked internally at W-7671453.

Longer term do we see runtime.txt being superceded by something else (eg #932)?

Yes, please! pyproject.toml is the blessed place to do stuff like this. I think https://github.com/heroku/heroku-buildpack-python/issues/932#issuecomment-697216718 is the right path. Heroku can help drive adoption here. Moving towards it as the singular configuration place a'la package.json for the Node buildpacks would be great.

So I've been revisiting this topic (ways in which the Python version could/should be specified for Heroku apps) as part of the CNB for Python work, and unfortunately all of the options have drawbacks:
A) Use pyproject.toml's project.requires-python

Pros:

Is not Heroku-specific.
Uses pyproject.toml, which is the ~recommended direction for Python tooling moving forwards.
Uses an existing pyproject.toml field rather than adding another that users have to learn.
Supports both version ranges (for flexible patch updates) and exact version pinning.

Cons:

The requires-python field is typically intended to convey the range of Python versions supported by a library. Using it to specify a more exact version/versions of Python to be used for application deployment is a bit of a stretch of the definition of the field.
For libraries, it's very much considered bad practice to constrain requires-python too much (some say not to set an upper bound at all, eg https://iscinumpy.dev/post/bound-version-constraints/). Encouraging usage of the requires-python field in this way for applications may lead to users also doing the same for libraries. In addition, what if a repo is both an app and a library? (I guess we could support this by having something else such as .python-version override this field, so they could have both a wide range in python-requires but still deterministic version for their app deploy?)
The field supports any valid PEP440 version specifier syntax. We would either have to only support a subset of the syntax (most likely), or else have a full PEP440 version specifiers parser (for which there currently isn't a Rust crate; the crate pep440 only supports the versions themselves, not the full version specifiers including the operator).
The PEP440 version specifier syntax is IMO slightly counter-intuitive when it comes to version ranges. eg ~=3.9 and ~=3.9.0 are not equivalent (the former means you'll be given 3.10+, which is not ideal for ~deterministic application deploys), which may confuse users who are more used to semver's ~3.9 and ~3.9.0 being equivalent (as used by Poetry).

Reference:

https://www.python.org/dev/peps/pep-0621/#requires-python
https://packaging.python.org/en/latest/specifications/core-metadata/#requires-python
https://www.python.org/dev/peps/pep-0440/#version-specifiers

B) Add a new pyproject.toml table/property

Pros:

It could be made to not be Heroku-specific (depending on naming).
Uses pyproject.toml, which is the ~recommended direction for Python tooling moving forwards.
Could be made to support both version ranges (for flexible patch updates) and exact version pinning.
A much simpler syntax could be used (eg just support X.Y.Z or X.Y) to avoid the pep440/semver parsing hassle and potential for user confusion.
This table could hold other Python buildpack related config options too, meaning everything is in one place.

Cons:

Will require users to learn/use a new concept.
Won't be supported by existing tooling (eg pyenv, Dependabot) for some time (if ever; unless we get ecosystem buy-in).
Unclear what naming might be best, since:

PEP518 says namespaces inside the [tools] table should only be used if the equivalent package name on PyPI is owned, which makes it awkward for non-vendor specific namespace choices. We own heroku on PyPI already, buildpack seems to be blocked as a package name (so presumably safe to use; though would be nice to not make this deployment option buildpack-specific?), deployment seems to be owned by someone else.
PEP518 says any other table names outside of [tools] are reserved and could be defined by future PEPs (so presumably we should avoid using such tables, unless we propose an addition via a PEP ourselves).

Reference:

https://www.python.org/dev/peps/pep-0518/#tool-table

C) Use the existing .python-version

Pros:

Is not Heroku-specific.
Is a well known concept / reasonably commonly used (for local development), so less for users to learn.
Helps ensure local-prod parity of Python version, for users using pyenv locally.
Simpler syntax than full pep440/semver.

Cons:

Doesn't support version ranges (for flexible patch updates) natively (though basic support with this plugin).
Doesn't make use of pyproject.toml (though less of an issue if .python-version as a concept ends up staying around).

Reference:

https://github.com/pyenv/pyenv/issues/1946

D) For Poetry users, use the existing tool.poetry.dependencies.python in pyproject.toml

Pros:

Is not Heroku-specific.
Uses pyproject.toml, which is the ~recommended direction for Python tooling moving forwards.
Is an existing concept for Poetry users (and Poetry adds the field by default when doing a poetry new), so less for users to learn.
Supports both version ranges (for flexible patch updates) and exact version pinning.

Cons:

poetry new defaults the field to a very wide range (eg ^3.9), which means users will pull in new major versions of Python when they are released, unless we forbid those wide version ranges or they read our docs.
The field supports any semver style version range. We would either have to only support a subset of the syntax, or else fully handle via eg the semver crate.
Poetry doesn't actually enforce the Python version correctly in an existing environment, meaning the benefit of local-prod parity isn't yet realised (https://github.com/python-poetry/poetry/issues/3426).

Reference:

https://python-poetry.org/docs/pyproject/#dependencies-and-dev-dependencies
https://python-poetry.org/docs/dependency-specification/

E) Use the existing runtime.txt

Pros:

Existing Heroku users will understand the concept and require no changes to their apps.
Could be made to support both version ranges (for flexible patch updates) and exact version pinning.
Simpler syntax than full pep440/semver.

Cons:

Requires users new to Heroku to learn/use a new concept.
Whilst the naming of the file isn't Heroku-specific, it's still a concept that Heroku introduced and hasn't really been adopted by much else in the ecosystem (other than Netlify, though they borrowed the filename but changed the syntax to something that's not compatible with the Heroku syntax).
Doesn't make use of pyproject.toml.
Doesn't work with local tooling, eg pyenv / Poetry.

F) Use the CNB project.toml file

Pros:

It could be made to not be Heroku-specific (depending on naming).
Could be made to support both version ranges (for flexible patch updates) and exact version pinning.
A much simpler syntax could be used (eg just support X.Y.Z or X.Y) to avoid the pep440/semver parsing hassle and potential for user confusion.
If it ends up being common that CNB based apps have a project.toml (to specify other metadata / custom buildpacks / build env vars etc), at least all buildpack related config would be in one place.

Cons:

Is buildpack-specific.
Will require users to learn/use a new concept.
Doesn't make use of pyproject.toml.
Doesn't work with local tooling, eg pyenv / Poetry.

Reference:

https://github.com/buildpacks/spec/blob/main/extensions/project-descriptor.md#metadata

Use an environment variable

Pros:

It could be made to not be Heroku-specific (depending on naming).
Existing concept/easy to understand.
Could be made to support both version ranges (for flexible patch updates) and exact version pinning.
A much simpler syntax could be used (eg just support X.Y.Z or X.Y) to avoid the pep440/semver parsing hassle and potential for user confusion.

Cons:

Goes against infrastructure as code (so I would say is an anti-pattern for this use-case).
Will mean drift between environments (eg: Review Apps vs CI vs production).

We are, of course, for D - Poetry :-)

So I think it's inevitable that we support package-manager specific constructs (eg Poetry's), the decision here is more:

what else do we support?
which should the order of precedence be, if multiple ways of specifying the version are found?

I don't think that one chosen way will work. It should be a priority list. The promise of buildpack is that it can build you project automatically. Otherwise it is not really different from going Docker/Kubernetes/OpenShift way.

The requires-python field is typically intended to convey the range of Python versions supported by a library. Using it to specify a more exact version/versions of Python to be used for application deployment is a bit of a stretch of the definition of the field.

If there is a priority list, then I don't see any problem to use latest available version that fits requires-python. If somebody needs an exact version, it could be done with higher priority override. The version selector tool just needs to be overly transparent which version it chooses and why.
For the spec it would help dividing A-G into priority groups.

@abitrolly From the OP:

The options that we may want to consider (we'd likely need to support several from this list):

@abitrolly Yes, that's exactly the intention - to support several options and to have an ordering of precedence.
The point (as discussed above) is:

what options should we support?
which options should we recommend over the others? (to at least guide those unsure)
what should the order of precedence be? (as you say, which can help with the narrow vs wide version range issue)

This is a good list. My first choice would be to support B only. Having a cascading list of places to try is clever/convenient, but I think makes things more confusing for users. The way Node/npm/yarn is handled with engines in package.json is really nice. This route feels more "Pythonic" to me. From the Zen of Python:

There should be one-- and preferably only one --obvious way to do it.

I can see runtime.txt continuing to be supported for legacy apps, but with a deprecation warning when found and a link with documentation to move to the new way.
Another benefit of B is that it can be used to not only specify the Python version, but also, pip, setuptools, Poetry, etc. (same as the Node CNB with yarn and npm).

Naming is always hard. That shouldn't be a deterrent for the best solution

I'll update the list above to make this clearer - but my main concern about the naming if adding a [tools] table, was that we would either have to:

make it vendor-specific (eg tools.heroku), in which case it's basically moved runtime.txt somewhere else,
use something non-vendor-specific (eg buildpack), in which case we're potentially violating PEP518 on ownership (but maybe that's acceptable).

ie: The way PEP518 is written, it doesn't allow tools from different vendors to share the same namespace. And avoiding yet another Heroku-ism was something I was hoping to avoid this time around :-)
However since trying to publish a package called buildpack on PyPI gives the "name not allowed" (implying it's on the disallowed names list), perhaps it's safe to just use that even though we don't own the package. Though that name is still buildpack-specific, when ideally if we're trying to drive a new standard, then it would be ideal for it to be generic to any deployment types.

In the time since the analysis in https://github.com/heroku/heroku-buildpack-python/issues/913#issuecomment-696655767 occurred:

The GitHub Actions actions/setup-python action supports putting an X.Y style version alias in .python-version
pyenv similarly has just added support for X.Y style version aliases in .python-version

As such, this resolves a number of the issues with the .python-version option in https://github.com/heroku/heroku-buildpack-python/issues/913#issuecomment-1031468659, making it a string contender for as the package-manager-independent replacement for runtime.txt, given that the issues with pyproject.toml and version-pinning are still unresolved. (There will of course still need to be package manager specific file support, such as parsing poetry.lock).

@edmorley I appreciate the amount of thought you put in this issue, but I still don't see any actionable items since I opened it. It is about time for me to stop licking this cookie and go find a job.
If, however, Heroku has a process to hire me as a contractor (which is doesn't), I could spent a few week to collaborate on a use case test book. Which, QA-style, will allow anybody to quickly go through the cases to validate what we are not breaking anything by switching from runtime.txt to .python-version.
If you've already decided it will be more beneficial to deprecate runtime.txt in favor of .python-version (which can be deprecated too as time passes), let me know the number of the issue so I can close this one.

@abitrolly Hi! This issue is not blocked on you, and I'm not expecting you to work on it. Whilst this issue was initially filed about runtime.txt, I've been treating it as a general "support flexible versions" issue (that is considering all potential solutions) - I've morphed the title to reflect this.
The reason for my most recent comment was that I received an email notification for the pyenv issue being closed as implemented, and I wanted all context about Python versions to be contained here ready for when I revisit the topic. The discussion/comments here will feed into the design of the Python Cloud Native Buildpack, which I'll (finally) be able to have time for again soon.

There are already a couple of buildpacks supporting Python, some supporting runtime.txt https://docs.cloudfoundry.org/buildpacks/python/index.html and some are not https://paketo.io/docs/howto/python/ for specifying Python version.
Buildpacks based systems can use runtime.txt not only for choosing the Python version, but also for detecting which buildpack to apply. So the topic becomes broader, worthy writing an RFC https://github.com/buildpacks/rfcs/tree/main/text
Maybe it is not the role of the buildpack to choose Python version at all, because package authors know better, and they most likely don't be too pleased to have yet another place to configure Python.

Sorry for the delay in getting to this!
Our focus has been on creating our next generation buildpacks, Cloud Native Buildpacks (aka CNBs), which include support for new features like this one. (For more details on our CNBs see this overview and to follow along with the in-development Python CNB's progress see the heroku/buildpacks-python repo.)
However, as of #1664 this (non-CNB, aka "classic") buildpack now supports the .python-version file too.
Notably, the .python-version file optionally supports specifying a Python version using only the major version (such as 3.13), which means that your app will use the latest Python patch version each time it builds - saving you from having to manually track new security updates.
See:

https://github.com/heroku/heroku-buildpack-python/releases/tag/v261
https://devcenter.heroku.com/changelog-items/3005
https://devcenter.heroku.com/articles/python-runtimes

I've since moved on from the company, and the company has moved on from Heroku... The Poetry buildpack I developed back in the days is up for grabs:
https://github.com/moneymeets/python-poetry-buildpack

@zyv Hi! I'm just wrapping up native Poetry support (pretty much everything but the docs are complete). After that's released I'd love to work on migrating users of that buildpack to the native support 😄


hask.js.org

JS.ORG CLEANUP
Hello, it seems a js.org subdomain that was requested to target this repository (or another on this user/organisation) no longer works.
The subdomain requested was hask.js.org and had the target of janbiasi.github.io/hask.
To keep the js.org subdomain you should add a page with reasonable content within a month so the subdomain doesn't resolve to a 404 any longer.
Otherwise the requested subdomain will be removed from JS.ORGs zonefile and the list of active subdomains.
If you are wanting to keep the js.org subdomain and have added reasonable content, YOU MUST reply to the main cleanup issue with the response format detailed at the top to keep the requested subdomain.

The js.org cleanup has now been completed. Please see https://github.com/js-org/js.org/pull/2545 for further information.


lxd/storage/drivers/driver/zfs/volumes: Delete volume on error in CreateVolumeFromCopy

This was previously relying on the backend_lxd revert logic, but now we need CreateVolumeFromCopy to correctly revert on error so we can call it again if needed.
Signed-off-by: Thomas Parrott<EMAIL_ADDRESS>

@stgraber I noticed this issue when testing the cached image volume regeneration feature when the ErrCannotBeShrunk error is returned by CreateVolumeFromCopy. The backend LXD then deletes the cached image volume and re-calls CreateVolumeFromCopy, however as the previous call to it had not cleaned up fully it then failed with:
Error: Failed instance creation: Create instance from image: Failed to run: zfs clone default/images/9e90b7b9ccdd7a671a987fadcf07ab92363be57e7f056d18d42af452cdaf95bb.block@readonly default/virtual-machines/v2.block -o volmode=none: cannot create 'default/virtual-machines/v2.block': dataset already exists

This PR fixes that particular issue, however the overall issue still remains for ZFS that changing the volume.size setting on a pool to smaller than the existing cached image volume for a VM now results in the error on next VM create:
Error: Failed instance creation: Create instance from image: You cannot shrink block volumes: Cannot be shrunk

This is because the 2nd call to EnsureImage after deleting the cached image volume, is then just restoring the old cached volume from deleted ones that ZFS keeps.
What is the reason that the ZFS driver keeps the cached image volumes around under "deleted" when they are removed? I think you mentioned in the past that you cannot actually remove these volumes because they are the basis for any instances that are using them.
In which case, could we update EnsureImage to not un-delete the deleted cached volumes and instead make sure that when the volume(s) that are using the deleted cached volume are deleted that we also remove the deleted cached volume?
This would allow image volume regeneration to occur like it does for the LVM driver.

Testsuite passed

That would waste a lot of space though. Being able to resurrect an image is very useful for speed and space usage.
When re-generating to go to a smaller size, we should delete the image but instead of its normal deleted/ name, have it use a uuid so it can't be reused.

@stgraber ok thanks I'll look into that


module update: 'defaultPassword'

Hi graniet!
commit: Update module: core/modules/defaultPassword.py

Now the results table is a little more readable

commit: Update file: core/load.py (export_data)

I had an error while trying to export results in a dictionary

$ operative (core/modules/linkedin_search) > export
operative (export file name ?) > linkedin
Writing linkedin file
[...]
TypeError: cannot concatenate 'str' and 'dict' objects

Thanks @qwartz !

Thanks to you @graniet


fix(dashboard|chart): use correct url for favorite_status and change …

…request type to rison
SUMMARY

The url for favorite status does not match the actual server url, so .../favorite_status was getting redirected by flask to .../favorite_status/, since flask doesn't know about SSL config (when it's done at the load balancer/proxy level) flask returns a 308 using the http protocol. This PR updates the endpoint to match the one on the server, as well as converts the request type to rison which should make the request query params more readable.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

N/A
TEST PLAN

Manual testing (local):

confirm favorite status is fetched without errors
confirm that the response is not 308

ADDITIONAL INFORMATION

[x] Has associated issue: fixes #13327 fixes #13072 fixes #12592
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

Is it possible (or correct) to configure the redirect to use relative path?


Sharing API basic operations implementation

Just a few comments. Thanks for the PR.
But I got a bit confused because this has other things not related to the sharing API (probably because the other PR is not approved).
Hi, thanks for comments. The changes will be made soon. Some of the changes included in this PR are in fact the result of the other unmerged PR. However this PR also cover commits regarding file API. While working on the sharing API it was necessary to change the project structure and extract common logic to different classes and it was difficult to seperate from specific sharing API tasks. However the logic regarding files did not change, what changed are logic location and variables names.

Tomorrow we should have the other PR merged and I'll do a quick look again and merge this.
Good thing that the filters worked! :) I just betted that it had a better way of retrieving shares and went looking in the API spec, but wasn't sure it would work.

@mateusz-garlacz Please let me know when this is ready to be reviewed and merged. Cannot promise I'll do it this week, though.


Github => GitHub :smile:

This PR fixes the name of the company Github to it's proper usage GitHub
/cc @danielmall

@pmarsceill


Error when adding dependency

I'm developing a Kotlin/Native app on Windows and, after adding the Kommand version 2.0.1 dependency to my project, I get an error running the tests:
command 'C:\path-to-project\jenv-mp\build\bin\native\debugTest\test.exe' exited with errors (exit code: -1073741515)
This happens even when I don't use Kommand on my code.
This problem doesn't happen with version 1.2.0.

@rcsilva83
Thanks for your feedback.
It's fixed now.

@BppleMan it worked! Thank you very much!


Update Freddys BBQ to .NET 5

Freddy's BBQ is still on .NET Core 2.1, it needs to be updated. Now that .NET 5 is out we might as well skip 3.1 entirely for this sample

#182

#182


Multiplayer Server issue

I've just downloaded the new 1.16.1 patch for this mod and tested it on a multiplayer server that started vanilla but switched to spigot and the mod seems to function normally, however when i enter the end dimension the mod does not recognise the bedrock on top of the obsidian pillars. however when i went into singleplayer and immediately went into the end dimension the mod highlighted the bedrock.

That doesn't happen in vanilla, the pillars are probably modified.

I asked on the spigot discord server and they claim they don't modify any of the pillars.. is there any chance i can manually input the bedrock positions?

Hi, you could simply use the dungeons by enabling them in /seed finder type DUNGEON ON
You will then not be limited by the end.

Also i would recommend to generate the pillar again by respawning a dragon, if they dont respawn like the old (remaining) ones then its definetly modified

I did try respawning the dragon but it still did not work, however the dungeon finder did work, thank you soo much!


kong ingress duplicate CRD installation

When using ArgoCD and the ingress helm chart you will get the following error
RepeatedResourceWarning Resource apiextensions.k8s.io/CustomResourceDefinition//ingressclassparameterses.configuration.konghq.com appeared 2 times among application resources.

I think this is because currently, ingress uses the kong helm chart as a subChart twice, but don't disable the CRD installation in the gateway.
See:
https://github.com/Kong/charts/blob/e09fd7a54ba99466328ccf9a581e50a3d516f58c/charts/ingress/values.yaml#L41-L42
and
https://github.com/Kong/charts/blob/e09fd7a54ba99466328ccf9a581e50a3d516f58c/charts/kong/templates/custom-resource-definitions.yaml#L1-L4
I'm unsure if this actually works since we also have the folder called CRDs https://helm.sh/docs/chart_best_practices/custom_resource_definitions/#method-1-let-helm-do-it-for-you, but I'm a bit unsure on how helm/argocd works in this case.

In the end, I solved this locally by setting skipCRDs on my helm chat. And I created a separate ArgoCD application that applies https://raw.githubusercontent.com/Kong/charts/6c1421bf2f4ccbd96d14eb49ed9438bbf9bef800/charts/kong/crds/custom-resource-definitions.yaml which matches the version of the CRDs in the helm chart

Yeah, don't know if there's anything we can do here--AFAIK there is no way to selectively disable CRDs for only one of the subcharts, and the attached issue supports that.
We want to ultimately consolidate back into a single chart, which would clear the problem. Your current workaround is what I'd suggest, with the slight difference that you should use the KIC URL for your particular controller version, which will be easier than picking out a particular chart commit.

@rainest is there any issue opened about changing back in to a single chart that I can follow along in?

https://github.com/Kong/charts/pull/976 and https://github.com/Kong/charts/issues/921, effectively.


Final cleanup for devel

WIP: Do not merge.

 <1> [tandem] final driver clean-up; remove absurd logging and be more choosy about what to log; use bows

Tests look pretty good - some comments in there. No 'event interplay' simulator tests yet, and I think there's one candidate: we do have event interplay happening to determine how the 'new day' basals are utilized. So tests showing what happens when a new day event follows a basal that results in currStatus of suspended versus when it doesn't would be good. (See 'event interplay' simulator tests elsewhere for examples.)


build error:threadediter.h:326:37: error: no matching function for call to ‘std::condition_variable::notify_all() const’

After execute  make on terminal, such error happens:
g++ -std=c++0x -c -DMSHADOW_FORCE_STREAM -Wall -O3 -I./mshadow/ -I/usr/local/opt/openblas/include -I./dmlc-core/include -fPIC -Iinclude -msse3 -funroll-loops -Wno-unused-parameter -Wno-unknown-pragmas -DMSHADOW_USE_CUDA=0 -DMSHADOW_USE_CBLAS=1 -DMSHADOW_USE_MKL=0 -DMSHADOW_RABIT_PS=0 -DMSHADOW_DIST_PS=0 -DMXNET_USE_OPENCV=1 `pkg-config --cflags opencv` -fopenmp  -c src/io/io.cc -o build/io/io.o
In file included from src/io/./iter_prefetcher.h:13:0,
                 from src/io/io.cc:8:
./dmlc-core/include/dmlc/threadediter.h: In lambda function:
./dmlc-core/include/dmlc/threadediter.h:326:37: error: no matching function for call to ‘std::condition_variable::notify_all() const’
           consumer_cond_.notify_all();
                                     ^
./dmlc-core/include/dmlc/threadediter.h:326:37: note: candidate is:
In file included from ./dmlc-core/include/dmlc/threadediter.h:15:0,
                 from src/io/./iter_prefetcher.h:13,
                 from src/io/io.cc:8:
/home/rescape/lib/include/c++/4.8.0/condition_variable:83:5: note: void std::condition_variable::notify_all() <near match>
     notify_all() noexcept;
     ^
/home/rescape/lib/include/c++/4.8.0/condition_variable:83:5: note:   no known conversion for implicit ‘this’ parameter from ‘const std::condition_variable*’ to ‘std::condition_variable*’
In file included from src/io/./iter_prefetcher.h:13:0,
                 from src/io/io.cc:8:
./dmlc-core/include/dmlc/threadediter.h:333:37: error: no matching function for call to ‘std::condition_variable::notify_all() const’
           consumer_cond_.notify_all();
                                     ^
./dmlc-core/include/dmlc/threadediter.h:333:37: note: candidate is:
In file included from ./dmlc-core/include/dmlc/threadediter.h:15:0,
                 from src/io/./iter_prefetcher.h:13,
                 from src/io/io.cc:8:
/home/rescape/lib/include/c++/4.8.0/condition_variable:83:5: note: void std::condition_variable::notify_all() <near match>
     notify_all() noexcept;
     ^
/home/rescape/lib/include/c++/4.8.0/condition_variable:83:5: note:   no known conversion for implicit ‘this’ parameter from ‘const std::condition_variable*’ to ‘std::condition_variable*’
In file included from src/io/./iter_prefetcher.h:13:0,
                 from src/io/io.cc:8:
./dmlc-core/include/dmlc/threadediter.h:352:45: error: no matching function for call to ‘std::condition_variable::notify_all() const’
       if (notify) consumer_cond_.notify_all();

Any suggestions of how to solve this? Thanks!

Perhaps my gcc versions causes? my gcc version is gcc version 4.8.0 (GCC)

A similar issue is reported in previous project with GCC 4.8.0: https://github.com/dmlc/cxxnet/issues/221 Could you please try to upgrade it? At least 4.8.4 is good to go.

Yes, I upgrade gcc version and this message disappear, perhaps the minimum version of gcc of the requirement to build mxnet should be updated on the doc site.

Happy to hear that. Thanks for the advice.


It does not work when use the AlertView in the present ViewController

When i use the SCLAlertView in the presented ViewController it will  not work.
And then i change the code from:
let rv = UIApplication.sharedApplication().keyWindow.subviews.first as UIView

to
let rv = UIApplication.sharedApplication().keyWindow.subviews.last as UIView

then it works!

My sight is not so good, but the statements look identical.
On Jan 18, 2015, at 8:45 AM, wenjiez<EMAIL_ADDRESS>wrote:
When i use the SCLAlertView in the presented ViewController it will not work.
And then i change the code from:
let rv = UIApplication.sharedApplication().keyWindow.subviews.last as UIView
to
let rv = UIApplication.sharedApplication().keyWindow.subviews.last as UIView
then it works!
—
Reply to this email directly or view it on GitHub https://github.com/vikmeup/SCLAlertView-Swift/issues/38.

Sorry, i have updated the comment. Thanks!

This occurs for me as well. But only when using a transition manager.

@cloud-hot I had the same issue as you did and your fix works perfectly for me, thank you!

@vikmeup , could you help check whether this is a bug or has it been fixed on the new version? Thanks!

I still have same problem
Tried to fix but nothing help...


Migrate models from loglizer fork to ml4logs

We have found that most loglizer methods need serious parameter tuning to truly compare their strengths and weaknesses. This will be done in #13.


Document what OpenStack authorizations are needed for the account specified in cloud config

Ability to run openstack endpoint list
Ability to run openstack service list

( the above 2 are from https://github.com/kubernetes/cloud-provider-openstack/issues/169#issuecomment-388476937 )

@dims I am intrested to work on this.


Fix line endings in the Nuget packages descriptions

Thanks, but how can this change possibly fail the build?

The Travis build failing on master as well. No idea why.

A quick look shows it fails on Linux and Mac. It seems to have trouble with locating MicroBuild.Core.Sentinel, but doesn't break / fail on that. Later it fails with NuGet.

It seems NuGet can't find a path:

@abelbraaksma I replaced the slashed to the linux ones in https://github.com/fsharp/FSharp.Compiler.Service/pull/812, waiting for results...

@abelbraaksma how did you manage to see the Travis build logs?

@abelbraaksma how did you manage to see the Travis build logs?

@vasily-kirichenko,  by clicking on Details:

And in the next window, clicking on whatever line I though interesting, this gave me a screen with colored log lines:

16.0.2 released


Catastrophic failure

Hi,
Thanks for creating this api.  I am experimenting with the example code that was provided below:
using (TaskService ts = new TaskService())
            {
                // Display version and server state
                Version ver = ts.HighestSupportedVersion;
                bool newVer = (ver >= new Version(1, 2));
                Console.WriteLine("Highest version: " + ver);
                Console.WriteLine("Server: {0} ({1})", ts.TargetServer, ts.Connected ? "Connected" : "Disconnected");
// Output all of the running tasks
                Console.WriteLine("Running tasks:");
                foreach (RunningTask rt in ts.GetRunningTasks(true))
                {
                    if (rt != null)
                    {
                        Console.WriteLine("+ {0}, {1} ({2})", rt.Name, rt.Path, rt.State);
                        if (ver.Minor > 0)
                            Console.WriteLine("  Current Action: " + rt.CurrentAction);
                    }
                }
...
and I get an error on this line:
foreach (RunningTask rt in ts.GetRunningTasks(true))
the ts.GetRunningTasks(true)) function throws this error:
Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED))
I am using Visual Studio 2010 with .NET Framework 4.0 and I used Nuget to reference the files in my Windows Form project.

Task Scheduler Managed Wrapper UI Library

Task Scheduler Managed Wrapper

Is there another reference I am not setting?  Any help would be appreciated.
Thanks.
Originally posted: 2011-12-01T14:59:21

Which OS are you running this on? I doubt this is a configuration problem. It is more likely an operating system conflict.
Originally posted: 2011-12-02T08:47:01

Hi,
Thanks for getting back to me.
It's Windows 7 Enterprise. Version 6.1 on a 32-bit system
Thanks,
Mike
Originally posted: 2011-12-02T10:31:13

Here's something interesting, and offers a new clue.
I created a new project, and added a reference to the tasksched.dll that is found in my system32 directory.  Essentially, the code I run is this:
TaskSchedulerClass sched = new TaskSchedulerClass();
            sched.Connect(null, null, null, null);
            if (sched.Connected)
            {
                foreach (IRunningTask rt in sched.GetRunningTasks(1))
                {
                    if (rt != null)
                    {
                        Console.WriteLine("+ {0}, {1} ({2})", rt.Name, rt.Path, rt.State);
                        Console.WriteLine("  Current Action: " + rt.CurrentAction);
                    }
                }
            }
the same line fails with the error
Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED))
when executing the line
"foreach (IRunningTask rt in sched.GetRunningTasks(1))"
So this problem exists with the native dll as well. Do you know where I should look for the operating system conflict?
thanks.
Originally posted: 2011-12-05T11:43:13

The only guess I have is that it may be a permissions problem. When you run the "Task Scheduler" app from "Start Menu | Accessories | System Tools" and select the "Display All Running Tasks" item on the right, do you get the error or do you see the list or running tasks? If you're not an Administrator, try running that same app under that account and see if you get the error. Thanks for verifying that the problem is a system problem.
Originally posted: 2011-12-05T18:14:23

Thanks for the reply.  That was a good idea to try the Task Scheduler app.  You are probably right about the permissions since our workstations have been recently rolled out and we have already seen some issues with permissions on other projects already.
I ran Task Scheduler as me, and then opened Task Scheduler as administrator, and it failed with the same error for both accounts.  So I cleared out my event viewer error log, and then reran the application with this API and looked at the event viewer for errors and found this:
Activation context generation failed for "C:\Windows\system32\conhost.exe". Dependent Assembly Microsoft.Windows.SystemCompatible,processorArchitecture="x86",publicKeyToken="6595b64144ccf1df",type="win32",version="6.0.7600.16816" could not be found. Please use sxstrace.exe for detailed diagnosis.
I don't know if this is the issue, but the conhost.exe file on my machine is version="6.1.7600.16816".  I wonder if this is the problem.  Why would a newer file not work?
Originally posted: 2011-12-06T09:42:51


Automate download of OHIF files and configuration of storage for static site hosting

Updates the ARM template for automated deployment and configuration of the OHIF site.
CONSIDERATION: Configures the Storage Account to accept key-based auth. In prior script, key-based auth was not allowed.
TODO:

OHIF files are now hosted in GitHub as a Zip and added to this pull request. ARM template needs to be updated to point to the microsoft repo, not the stevenborg repo. (But can't do this until the PR is accepted.)
Deploy to Azure button in readme.md points to deployment script in stevenborg repo. Need to update to point to the microsoft repo.

@smithago, thought I'd take a crack at updating the ARM template for deployment.


Add new GeoPack format for VecTiles

GeoPack is a small adjustment to TopoJSON encoded with binary MessagePack for parsing speed and intended for use with larger, metatile payloads and potential whole-world renders. This pull is in-progress.
Todo:

[ ] Add unit tests.
[ ] Decide whether to stick with geographic coordinates (see commit 6baaa0bc7612)
[ ] Benchmark encoding speed.

@migurski  does tileStache support create vector tiles a bit larger in order to avoid the problem of border rendering?