infracost-usage.yml | Calculate estimated value based on a formula

Hello! Is it possible to calculate estimated value based on a formula?
For example:
  google_secret_manager_secret:
    monthly_access_operations: $active_secret_versions * 10000

Oh, looks like in my example, monthly_access_operations is already doing that implicitly.
Checking further...

Confirmed that is already the case.

e.g.

infracost-usage.yml
version: 0.1
resource_type_default_usage:
  google_secret_manager_secret:
    monthly_access_operations: 10000
    monthly_rotation_notifications: 1
  google_secret_manager_secret_version:
    monthly_access_operations: 10000

1 of each google_secret_manager_secret and google_secret_manager_secret_version
$ infracost breakdown --path . --show-skipped --no-cache --usage-file infracost-usage.yml
INFO Autodetected 1 Terraform project across 1 root module
INFO Found Terraform project main at directory .

Project: main

 Name                                                          Monthly Qty  Unit                Monthly Cost

 google_secret_manager_secret_version.jantest_estimate[0]
 ├─ Active secret versions                                               1  versions                   $0.06
 └─ Access operations                                                    1  10K requests               $0.03  *

 google_secret_manager_secret.jantest_estimate[0]
 ├─ Active secret versions                                 Monthly cost depends on usage: $0.06 per versions
 ├─ Access operations                                                    1  10K requests               $0.03  *
 └─ Rotation notifications                                               1  rotations                  $0.05  *

 OVERALL TOTAL                                                                                $0.17

*Usage costs were estimated using infracost-usage.yml, see docs for other options.

──────────────────────────────────
2 cloud resources were detected:
∙ 2 were estimated

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Project                                            ┃ Baseline cost ┃ Usage cost* ┃ Total cost ┃
┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━╋━━━━━━━━━━━━┫
┃ main                                               ┃         $0.06 ┃       $0.11 ┃      $0.17 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━┻━━━━━━━━━━━━┛

2 of each google_secret_manager_secret and google_secret_manager_secret_version
INFO Autodetected 1 Terraform project across 1 root module
INFO Found Terraform project main at directory .

Project: main

 Name                                                          Monthly Qty  Unit                Monthly Cost

 google_secret_manager_secret_version.jantest_estimate[0]
 ├─ Active secret versions                                               1  versions                   $0.06
 └─ Access operations                                                    1  10K requests               $0.03  *

 google_secret_manager_secret_version.jantest_estimate[1]
 ├─ Active secret versions                                               1  versions                   $0.06
 └─ Access operations                                                    1  10K requests               $0.03  *

 google_secret_manager_secret.jantest_estimate[0]
 ├─ Active secret versions                                 Monthly cost depends on usage: $0.06 per versions
 ├─ Access operations                                                    1  10K requests               $0.03  *
 └─ Rotation notifications                                               1  rotations                  $0.05  *

 google_secret_manager_secret.jantest_estimate[1]
 ├─ Active secret versions                                 Monthly cost depends on usage: $0.06 per versions
 ├─ Access operations                                                    1  10K requests               $0.03  *
 └─ Rotation notifications                                               1  rotations                  $0.05  *

 OVERALL TOTAL                                                                                $0.34

*Usage costs were estimated using infracost-usage.yml, see docs for other options.

──────────────────────────────────
4 cloud resources were detected:
∙ 4 were estimated

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Project                                            ┃ Baseline cost ┃ Usage cost* ┃ Total cost ┃
┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━╋━━━━━━━━━━━━┫
┃ main                                               ┃         $0.12 ┃       $0.22 ┃      $0.34 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━┻━━━━━━━━━━━━┛


MultiCanvas canvases not filled

I had a chance to take a look and test the MultiCanvas drawer. Great job @chrisparton1991! I really appreciate your effort.
I ran into a problem when peaks were loaded externally. Using fillParent. The issue appears when the waveform per canvas is not filled correctly, which appears to be a scaling issue, which I appear to have fixed, here is the code:
    drawLineToContext: function (ctx, index, peaks, absmax, halfH, scale, offsetY) {
        if (!ctx) { return; }

        var length = ~~(peaks.length / this.canvases.length / 2);
        var first = index * length,
            last = first + length + 1;

        scale = 1;
        if (this.params.fillParent && this.width != length) {
            scale = ctx.canvas.width / length;
        }

       ...

If time permits, I will work on a pull request.

Hi @chinshr, thanks for the feedback :)
I'm a bit busy at the moment myself. I put your code through the tests I added to my original PR (using the latest multicanvas renderer file from the repo, as it changed between the test zip and the accepted PR).
The only case I found an issue with was where I'd set the pixelRatio to 10, there was a gap at the end of the waveform:

As opposed to before:

I'll try to figure it out over the next few days if I get the time.

I've tested the regions plugin example with the MultiCanvas renderer and it has no issues. See http://codepen.io/anon/pen/BKmbLw. I forked the example on http://wavesurfer-js.org/plugins/regions.html, updated the library to 1.1.0 and changed the renderer to MultiCanvas with maxCanvasWidth: 50.

You are right, this example works, since it is not using prerendered peaks. Closest available example is here http://wavesurfer-js.org/example/audio-element/
I have it fixed in my app, and I will post the actual lines of code here that made it work.

Ah right, my bad. I forgot about the pre-rendered peaks. I've raised a PR with your fix, can you please check it out? #693
Of course, if you wanted the fix to be under your name, I'd be happy to close my PR and let you raise one.

Are you happy to have this closed, @chinshr?

This works, fixed in #693.


Option to highlight your own DPS

Would it be possible for you to add a option to have your own DPS highlighted, in a color specified in the themes file?
Kind of like Horizoverlay shows your own DPS in white.
Also maybe the option to display HPS, again like in Horizoverlay.
Loving the overlay so far.

Thanks for the suggestion, I will be finishing this feature soon. 😄
For the HPS display, I'm working on settings for a custom main display prop and sub display prop, which allows you to customize how the data is shown.


SelectionGroup_Item doesn't set a value for Name when constructed

Affected Version
3.6.2
Description
Apologies if this is for some reason that I don't understand :)
When you create a SelectionGroup_Item, the constructor doesn't set name property, maybe because SelectionGroup does the actual heavy lifting.
That's all fine until you want to add $AttributesHTML in the template for your group,
at this point every SelectionGroup_Item has the same ID. Since the generated ID is a combination of the form name and the field name you end up with something like id="formName__" :(
Is there a reason we shouldn't set the Name value to something unique, when setting up the Item?
	function __construct($value, $fields = null, $title = null) {
		$this->value = $value;
		$this->name = $value;
		...

Reproduce
Add  $AttributesHTML to the list item in the selectiongroup template
e.g
<ul class="SelectionGroup<% if extraClass %> $extraClass<% end_if %>">
	<% loop $FieldSet %>
		<li$Selected $AttributesHTML>
			{$RadioButton}{$RadioLabel}
			<% if $FieldList %>
				$FieldHolder
			<% end_if %>
		</li>
	<% end_loop %>
	</ul>

Enjoy your malformed IDs :)
Happy to PR if there's no issues updating the class.

Hi @grgcnnr,
I think $AttributesHTML is used improperly here, this is meant for the container element - not the individual items.
If you need an ID for the individual items then you could construct one with the field's ID plus the index - similar to what the $RadioButton receives.
Actual line of code in the SelectionGroup class:
            $itemID = $this->ID() . '_' . (++$count);

Fair enough. I just assumed that anything that was a descendant of a formfield should be able to implement AttributesHTML.


Integration tests added for Application Certificate updates

Tests added for https://github.com/wso2/identity-api-server/pull/304

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/1319830133

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/1319830133
Status: failure

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/1652206066

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/1652206066
Status: failure

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/1738040550

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/1738040550
Status: failure


[FEATURE] Create SystemIndexExtension interface

Is your feature request related to a problem?
Extension points (see #315) will be (optionally) implemented on Extensions. Eventually these points may need to be communicated to OpenSearch to be registered in the appropriate service or module.
Allowing extensions to inherit from appropriate interfaces depending on their type will match the current Plugin implementation.
What solution would you like?
Add a new interface SystemIndexExtension with default implementations for extension points matching SystemIndexPlugin.java.

Done in #572


Remove DataLoader warning for num_workers when using GPU

🐛 Bug
When num_workers is specified as zero on a multicore machine in a DataLoader, you get the following warning:
UserWarning: The dataloader, train dataloader, does not have many workers which may be a bottleneck.
Consider increasing the value of the `num_workers` argument` (try 8 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.

This is fine when the model is being fit using CPUs, but is not sound advice when using GPUs and data are being loaded to the GPU with .to(device). Can this message be turned off when cuda is specified as the device?
Environment

OS: Ubuntu
Python version: 3.7.10
PyTorch version: 1.8
Lightning version: 1.0.8
CUDA/cuDNN version: 11

Additional context

Hi @fonnesbeck
Where did you get that from? Can you name some references? I don't understand how one would reason against using multiple workers per GPU.
Without a doubt, giving a good rule of thumb is difficult as there are many factors that play into the efficiency of loading data with multiprocessing.

OK, I think I have misunderstood what I have read in various places (the pytorch forum appears to be down right now, so I can't reference some of them). I'm getting RunTime errors with this on AWS, but this appears to be related to the multiprocessing settings.
I will close this.


Coupling parameters and priors

This fixes #21

This is just a detail, but I think code is more readable when functions/methods describe what they do. This is why I changed the 'changed'-method in ParameterProperties to 'change'.

when functions/methods describe what they do

Agreed! But the whole point is that this method does not change the object but returns a changed copy. So how about changed_copy?

Agreed! But the whole point is that this method does not change the object but returns a changed copy.
Okay, technically, this is of course correct, although I would have seen that as the way how the instance is changed (even if technically it is not actually changed itself). I don't like the name changed_copy so much, because, again, it does not describe what it does. How about return_changed_copy or return_modified_copy, even though I see that these names are a bit bulky. Btw, I guess now we have reached the current top of detail-discussing xD.

Please not "return_..." :confused:  . I mean likewise, you would call the loglike_contribution method compute_and_return_loglike_contribution or so, because
log_like += noise.loglike_contribution(...)

reads just fine. Even though it does compute and return it...

Still working on it...


Respect file extension in file annotation in templates

Resolves #175
With this you can wrap all template content in sourcery:file annotation to generate file with arbitrary name and extension.
There is yet one thing to be fixed - we always put a comment at the top of generated file, but it can be not valid for non-swift types of files. @krzysztofzablocki any ideas how to handle that?

if the file isn't a .swift file we could drop the generation header, thats probably best we can do.


Add CDNJS version badge in readme

This will add the badge to show its version on CDNJS and also link to its page on CDNJS!

Thanks! :)

My pleasure


StandardTile missing getIcon method

In the documentation  the StandardTile does not have a getIcon method, which breaks the link on the icon property.

Hi,
thanks for reporting. There seems to be some inconsistancy in the API here.
The getter for the icon is overridden and marked as private. That`s why it is not appearing in the JSDOC.
Tracked as<PHONE_NUMBER>


testing cherrypicker tool

Issue #, if available:
Description of changes:
Testing (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/cherrypick release1.1.1


Migrate SMS features from Dynamics to here

ComposeText and MessageSender modules are migrated with #152

MessageStore module is migrated with PR #160

Messages module is migrate with PR #162

Conversation module is migrate with PR #163
ContactSearch module is last one

ContactSearch module is migrate with PR #164

All modules are moved. Close the ticket.


/usr/bin/vendor_perl/youtube-viewer: No such file or directory

Downloaded the latest release, went through the build process as listed on the README, and receive the above error when I try to execute youtube-viewer

reboot fixed...new issue though...


custom data on authenticate result is removed (when token is refreshed?)

Extended OAuth2PasswordGrant, and as per documentation, augmented the response with user_id.
As expected it turns up in session.data.authenticated.
A few moments later, check again and it's gone - just the data from the ancestor authenticator remains. I expect it's being stomped on during a token refresh?

Fixed in PR #1475

and as per documentation, augmented the response with user_id.

What specifically are you referring to here? How do you augment the response?

extend OAuth2PasswordGrant
override authenticate
this._super().then(response => {
response.user_id = got_it_from_somewhere
return response;
}

https://github.com/simplabs/ember-simple-auth/blob/master/guides/managing-current-user.md

This works as intended.


Support for tags

Would it possible to support for tags?

Should be easy enough to do. Sure.
On Thu, Mar 19, 2020 at 5:50 PM mad4633<EMAIL_ADDRESS>wrote:

Would it possible to support for tags?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/MikeSouza/serverless-deployment-bucket/issues/12, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHYLNH42G3C72NCNV2YX7LRIKHT7ANCNFSM4LPWNFKA
.

@MikeSouza If this isn't something you're currently working on, do you mind if I create a PR with the relevant changes for you to review?

@jdrydn Yes please feel free to make a PR. I am quite busy right now and would welcome the help. Please make sure to write unit tests and maintain the 100% coverage.


Fix run functionality for Deis provider

Hi there! I'm not sure if this is v2 specific, since I don't have a v1 service to test it out on, but it seems like the run functionality is currently broken. This is what I got while running on your v2 branch (thanks for putting that together, BTW!):
Running "bundle exec rake db:{migrate,seed}"
sh: 1: deis: not found

Adding a ./ like in the other deis calls in the provider fixed it for me. It would be awesome to get this included in your Deis v2 PR https://github.com/travis-ci/dpl/pull/440.

Good catch! LGTM, I am going to go ahead and merge this. Thanks!


Access leftover text and allow a callback to decide current value will be added

I found this topic:
http://stackoverflow.com/questions/25436267/how-to-access-leftover-text-in-ng-tags-input
Sometime we have to do a lot of validation rules before add value to array.
Please provide an left-over text binding and a callback like this.
<tags-input ....
....
onPostTagAdded = "postTagAdded($tag)">
example:
function postTagAdded(tag){
if(tag === 'blahblah' ){
return false;
}else{
return true;
}
}

Sorry for the late response.
Both features are in the backlog already: #100 and #315.

Can this issue be closed?

Closing due to inactivity.

I'm sorry, this issue should be closed


Unable to handle NACK that uses distinct SSRC

Your environment.

Version: 3.0.7
Browser: Chrome 88.0.4324.150 (Official Build) (x86_64)

What did you do?
A PeerConnection created with NewPeerConnection (not api) logs an error pc ERROR: 2021/02/13 07:35:09 Incoming unhandled RTP ssrc(3537335204), OnTrack will not be fired. mid RTP Extensions required for Simulcast after the browser sends first retransmitted packet. Looks like pion/webrtc confuses the retransmitted packet for another stream/track.
After recreating the code from NewPeerConnection manually, but registering only some codecs showed that adding the codec below triggers the error.
	m.RegisterCodec(webrtc.RTPCodecParameters{
		RTPCodecCapability: webrtc.RTPCodecCapability{"video/rtx", 90000, 0, "apt=96", nil},
		PayloadType:        97,
	}, webrtc.RTPCodecTypeVideo)

The rest of the code:
func NewPeerConnection() (*webrtc.PeerConnection, error) {
	// pc, _ := webrtc.NewPeerConnection(config)
	m := webrtc.MediaEngine{}

	videoRTCPFeedback := []webrtc.RTCPFeedback{{"goog-remb", ""}, {"ccm", "fir"}, {"nack", ""}, {"nack", "pli"}}

	m.RegisterCodec(webrtc.RTPCodecParameters{
		RTPCodecCapability: webrtc.RTPCodecCapability{"video/VP8", 90000, 0, "", videoRTCPFeedback},
		PayloadType: 96,
	}, webrtc.RTPCodecTypeVideo)

	m.RegisterCodec(webrtc.RTPCodecParameters{
		RTPCodecCapability: webrtc.RTPCodecCapability{"video/rtx", 90000, 0, "apt=96", nil},
		PayloadType:        97,
	}, webrtc.RTPCodecTypeVideo)

	m.RegisterCodec(webrtc.RTPCodecParameters{
		RTPCodecCapability: webrtc.RTPCodecCapability{"audio/opus", 48000, 2, "minptime=10;useinbandfec=1", nil},
		PayloadType:        111,
	}, webrtc.RTPCodecTypeAudio)

	// m.RegisterDefaultCodecs()
	i := &interceptor.Registry{}

	generator, _ := nack.NewGeneratorInterceptor()
	responder, _ := nack.NewResponderInterceptor()
	m.RegisterFeedback(webrtc.RTCPFeedback{Type: "nack"}, webrtc.RTPCodecTypeVideo)
	m.RegisterFeedback(webrtc.RTCPFeedback{Type: "nack", Parameter: "pli"}, webrtc.RTPCodecTypeVideo)
	i.Add(generator)
	i.Add(responder)

	api := webrtc.NewAPI(webrtc.WithMediaEngine(&m), webrtc.WithInterceptorRegistry(i))
	pc, _ := api.NewPeerConnection(config)
	return pc, nil
}

What did you expect?
Expected to receive retransmitted packets from the browser
What happened?
Adding the codec above triggers the error and prevents any retransmitted packet from being received.

Yea this is an issue :/
when I am at my desk I will type up some ideas we can do to fix! Thanks for reporting @slavazhil

Currently Pion doesn't support RTX with a distinct SSRC. When we interact with a remote
client that uses a distinct SSRC for RTX we drop those packets. These are the goals/things
that are important when implementing.

RTX should be returned to the user via Read and ReadRTP
Most users don't care if a packet is a RTX, they just want to process packets as they arrive

RTX should be distinguishable by advanced users
Users who do care should be able to distinguish a packet that was an RTX

We need to support RTX for Simulcast and non-Simulcast

Implementation
Allow srtp.ReadStreamSRTP to pull multiple SSRCes
Currently a stream is created for each incoming SSRC. These streams are what Read and ReadRTP
is called upon. I propose we add an additional method to allow multiple SSRCes to a stream.

Add AddSSRC to ReadStreamSRTP
Change GetSSRC -> GetSSRCes on srtp.ReadStreamSRTP
BufferFactory needs to instead take events instead of constructor arguments. We will fire two AddSSRC one for the original, one for the SSRC.

Open RTX Stream in pion/webrtc
Update streamsForSSRC to optionally support opening the RTX Stream as well.
Add a RTCRtpRtxParameters to RTPCodingParameters
Update TrackRemote Read/RTP to detect SSRC
TrackRemote.readRtp will inspect the incoming SSRC. If it is the RTX SSRC it will remove the head off of the buffer to give you the original.
This method will also add isRTX to the Attributes as needed.
Simulcast Support
Simulcast SSRC probing needs to also look for repaired-stream-id. We need to support adding the RTX stream async to the RTP Receiver.
Testing

Assert E2E that a NACK can be sent and received successfully
Assert that a bad RTP packet doesn't break the 'RTX Unwrap' in TrackRemote.readRTP
Assert E2E that a Simulcast NACK can be sent and received successfully

Most users don't care if a packet is a RTX, they just want to process packets as they arrive

In my understanding, the whole point of having a separate RTX track is to distinguish between original and resent packets.  If there is no need to make the distinction, then there is no need for the overhead of a separate RTX track — resent packets can be sent over the main media track.  In the words of RFC 4588 Section 3:
   One approach may be to retransmit the RTP packet with its original
   sequence number and send original and retransmission packets in the
   same RTP stream.  The retransmission packet would then be identical
   to the original RTP packet, i.e., the same header (and thus same
   sequence number) and the same payload.  However, such an approach is
   not acceptable because it would corrupt the RTCP statistics.  As a
   consequence, requirement 1 would not be met.  Correct RTCP statistics
   require that for every RTP packet within the RTP stream, the sequence
   number be increased by one.

Note that retransmitting the packets in the main RTP stream is well supported by current browsers, and is what Galène uses right now.

@jech @Sean-Der So I was trying to find if there was an advantage for getting RTX stream  besides better RTC stats, but I could not find any and as  Julius said that is something it can be done without RTX stream. So  not sure now if It worth  the overhead of getting another  stream.

The same mechanism is used for RED.  Unilke RTX, which is nice to have but not difficult to work around, RED is what allows you to do FEC with audio, which is the secret sauce behind Zoom's audio quality over lossy WiFi.
So while it might not be that critical to implement ancillary tracks for RTX, the work will be reused when somebody implements RED.

Let me explain some more why a separate track is essential for FEC but not strictly required for retransmissions.
Suppose you are doing retransmissions on the same track.  You receive

P1 P2 P4 P5

You NACK P3, so you later receive

P1 P2 P4 P5 P6 P3 P7

In order to maintain proper statistics, you need to determine that P3 is a reemission, which is not too difficult: P3 was NACKed and it arrived out of order, that's a pretty good indication that it was a retransmission.  Having a separate RTX track makes this simpler and more reliable, but it's not essential.
Suppose now you're doing FEC on a single track.  The sender sends

P1 FEC2 P3

and you receive

P1 P3

I don't see a way for the receiver to determine whether the missed packet was FEC or data.  If the receiver is an SFU, for example, if the missed packet was FEC it must renumber P3 before sending it out, while it must not do so if the missed packet was data.
In conclusion, support for ancillary tracks is required:

it's absolutely required if we want to implement FEC; and
it's a nice but nonessential simplification if we implement NACKs.

Sean, I'm therefore enthusiastic about you willing to do the work, just keep in mind that any work you do for RTX must be easy to extend to RED.

@jech  Do you find any advantage on using FEC with RED? On my statics gathered, when network gets congested packets gets dropped in big batches (5+ packets), also the complexity of RED since not all browser supports it makes the SFU to terminate it for some users.
I think that for audio inband-fec offers good performance and you can set a fixed packet loss rate to control the % of FEC.

Do you find any advantage on using FEC with RED?

I haven't done any experiments yet.

On my statics gathered, when network gets congested packets gets dropped in big batches (5+ packets)

That happens if your bottleneck router does tail drop.  Modern routers use AQM and should not drop packets in bursts.  (Or at least a bunch of people much smarter than me are working very hard on getting modern AQMs widely deployed.)
However, the main problem I'm trying to solve is people lecturing behind a poor quality WiFi connection.  This happens a lot in my world, since a lot of lecturers have small children, and they need to move to an isolated room in order to give their lectures.

makes the SFU to terminate it

Exactly.  Opus FEC is great for end-to-end FEC, while ulpfec is the right thing if you want to terminate FEC at the server.  There's no point to negotiate out-of-band FEC if you're not going to reconstruct it at the server, Opus FEC is fine in that case.
Terminating FEC at the server has a number of advantages.  Since the signal is reconstructed at the server, it reduces the amount of loss in the case where loss occurs on both legs of the flow.  It allows you to use different amounts of FEC for different clients, which reduces both overhead and latency.  And, finally, it allows you to use higher FEC rates than what the browsers do, which means that audio can survive on extremely lossy links.
(Opus FEC is limited to 100% FEC.  Given that an Opus flow is on the order of 30kbps, it is quite reasonable to use 200% FEC, i.e. to multiply the amount of traffic by 3.  With suitable interleaving, this should allow acceptable audio quality on even the worst links.)

wait, I need to clarify pc ERROR: 2021/02/13 07:35:09 Incoming unhandled RTP ssrc(3537335204), OnTrack will not be fired. mid RTP Extensions required for Simulcast
OnTrack will not be fired here, means OnTrack will not be fired at all, or only not be fired for FEC track, but can be fired for regular video/audio track, I am confused.

I believe that's correct.

Hi all,
maybe we need to remove "video/rtx" tracks from func (m *MediaEngine) RegisterDefaultCodecs() since rtx doesn't work in anyway ?
Now when we use webrtc.NewPeerConnection to create "default" peerConnection packet re-transmission doesn't work with chrome as chrome offer RTX and pion confirms it supports RTX but it doesn't


Add cf-modals

Adds https://github.com/cfpb/capital-framework/pull/583/ to prerelease-ver-6 branch

@jimmynotjim did we figure out on Friday that the issue here in Travis is that cf-modals is not on npm yet?

@anselmbradford No, I don't think that's the case. I've got a bit of time so I'll see if I can track this down locally.

Figured it out, you used atomic-component in package.json instead of cf-atomic-component. Update that and it'll build fine.

Since this was already approved and is going into the prerelease branch I'm going to merge it. If anyone has comments we can address them in a new PR.


Add ability to use console.log and console.error in charts

I add ability to use console.error in #31


Remove C style for loops

C style for loops will be obsolete in Swift 3.0 [1].
[1] https://lists.swift.org/pipermail/swift-evolution-announce/2015-December/000001.html

Done https://github.com/jathu/UIImageColors/commit/a88f65a49d25af20febbb36ab8ae09665518d734 :+1:


contract multisig implementation

contract multisig - where is the implementation of that one ?

https://github.com/ethereum/dapp-bin/blob/master/wallet/wallet.sol#L282


Fix DoesNotThrow() to fail if exception was thrown

I tested this change by running WAT's own tests in Godot_v3.5-stable_mono_x11_64, and then by using WAT in my own project and verifying that DoesNotThrow() fails if I throw an exception, and passes otherwise.
Thanks for making WAT. :)

Thanks!


Fix CUT_RELEASE_PR eval in ci.yml

Forgot that env.CUT_RELEASE_PR resolves to a 'false' string and not a boolean...
Updater tests are firing up on all commits now instead of just Cut release PRs

Merging as it's only the ci.yml file, fixing my dumb mistake and I don't want other people's builds to be slower because of that


Support add/edit/remove citations on back matter resources

Description
As a catalog author, I want to add, edit, and remove the citation on a back matter resource.
Acceptance Criteria

citation object can be added to a back matter resource (with the supported field(s))
citation can be removed
citation supports editing the text (markup-line, required) and links

Proposed Solution
No response
Additional Notes
No response
Implementation

[ ] I can (or plan to) submit a pull request to implement this
[ ] Implementing this may result in a breaking change

9/21/23 Sprint Planning - Moved from Sprint 55 to Sprint 56


Why is it so?

I created myself website for agar.io
but, I spectate other people will be some question
watch is viedo: https://youtu.be/15Wu2K49eCM
Why is it so?
my english not good, sorry.
I am Taiwanese

This seems like OgarUL Client, not something that you created.

like this ugunz.info/nuotca

you can cooperate with me on agar.io ?

como puedo hacer un server para todos tengo mi agario pero me falta los servidores ayudame y tea ago parte de mi agario

as I can make a server for all I have my agario but I need help me and tea servers ago part of my agario


algorithm: :concurrently is not respected in Rails 4.2

Hey, thanks for the great work on this gem.  SchemaPlus 1.8.7 with Rails 4.2.0 silently ignores algorithm: :concurrently.  This has pretty bad consequences, as indexes you expect to be created concurrently lock tables.

@ankane Thanks for the bug report.  Will try to look into this as soon as I can.

@ankane I've released v1.8.8 with this bug fixed.

Great, thanks for the quick fix @ronen!


⚠ gorzdrav.org has degraded performance

In 20e7251, gorzdrav.org (https://gorzdrav.org) experienced degraded performance:

HTTP code: 200
Response time: 2807 ms

Resolved: gorzdrav.org performance has improved in 3e5314b.


Bump the muddy package version and publish

Hello @orph3usLyre,
Can you please bump the package version and then publish it to the crates.io.
Thank you,
Sergey.

Hi @mrauhu,
I have a few additions planned this week and next, after which I'm going to make a new v0.3.0 release :)
Generally, I want to add some basic CI (strict clippy mostly) as well as some basic testing just to validate when something breaks. I've also had a chat with a couple other devs regarding the expected output for users at build time, so I'll make a few minor changes and open PRs for them. I'd appreciate any input once they're up!

Published!


feat(portal): fallback to 404.html blob if available

Works great overall. Very smooth.
One improvement I'd like: custom 404 blob for a site, something that would be returned for the site if there's nothing found for the path.
Take a look at the sample site I deployed: https://1e1maorotlxkr4feuf7m9jqliu9j12dlr8lxvt28u23f3lur5s.walrus.site/
Everything just works, out of the box, awesome, I was like going to cancel my Heroku plan.
The only thing is that if you navigate to links from the page with history api:
https://1e1maorotlxkr4feuf7m9jqliu9j12dlr8lxvt28u23f3lur5s.walrus.site/ -> https://1e1maorotlxkr4feuf7m9jqliu9j12dlr8lxvt28u23f3lur5s.walrus.site/capsule/0xfd72e8611ed8ebfa2f93acf9640bd8a5096923880feeeae7fabc96d4f6cffab2
it shows the page, but shows 404 if you do refresh. Which is expected, and we can use hash-navigation as a workaround, but would be 100% super if it would support common pattern for SPA - serve specified .html file for any path. (just custom 404 would be great for some cases too).
Adjusted service worker quickly to check if there's '404.html' blob in the root near 'index.html' and serves it on 'Not found' if it's there.

@mlegner Thank you!
@giac-mysten  Thanks! Yeah, possible option would be to cache everything just on the firrst call of fetchPage with specific objectId, so you already know which blobs are there - and it would be blazingly fast. But... invalidation, that's a tough part. Maybe there's some place where Sui Object version just get updated and it may be used for the quick reference to check in a single RPC call.
It's like the new universe you are building here. Huge space for experiments and improvements. Great.


Proper behavior at ingest of list

@waxlamp @nrsyed What is the desired behavior for something like this?

Right now the output is one single config:
{'foo': 3, 'bar': [{'iterate': [4, 5, 6]}, {'iterate': [7, 8]}]}
I think for iterate this is fine (maybe throw a warning), we shouldn't have multiple iterate directives per variable.
However, for other directives, it may make sense to pass multiple instances of it. For example. for smqtk:

Would we want to support the ability to handle list of directives under one key-value pair?
If yes, should this support be handled by each directive (ex: is_iterate or is_smqtk should account for this) or should it be handled at a more general level?

@waxlamp @nrsyed What is the desired behavior for something like this?

Right now the output is one single config:
{'foo': 3, 'bar': [{'iterate': [4, 5, 6]}, {'iterate': [7, 8]}]}
I think for iterate this is fine (maybe throw a warning), we shouldn't have multiple iterate directives per variable.

I think this is the correct behavior, for two reasons. One is what you said, repeating iterate per variable isn't allowed. The other is more general (and maybe more fundamental here): we don't allow iterate directives inside list elements. There, it's interpreted as a literal object instead of a special directive.
If there was demand for it, though, we could interpret this to be generating multiple runs with different lists. In your example, we would get six runs with bar set to [4, 7], [4, 8], [5, 7], etc. But this doesn't seem to be something we need to offer.

However, for other directives, it may make sense to pass multiple instances of it. For example. for smqtk:

Would we want to support the ability to handle list of directives under one key-value pair?
If yes, should this support be handled by each directive (ex: is_iterate or is_smqtk should account for this) or should it be handled at a more general level?

I'm not sure I understand your example (and therefore, your followup questions). If you are saying that we should support smqtk directives appearing in a list, then I agree.
One task here is to collect all of these examples as tests, and then ensure that we are providing the correct semantics for them organically. This is something we can discuss at tomorrow's standup.

Closing the loop on this (from our previous conversation - just wanted to make sure it was documented).
We've decided that it makes sense to have two classes of directives, a "preprocess" class of directives and "process" (naming of these classes could use some work). The "preprocess" directives actually change the config (ex: "iterate") while the "process" directives instead are used to define and direct items (ex: "smqtk"). The "preprocess" directives are handled first, followed by the "process" ones, because we fundamentally expect different interactions between the two.
So in the above example, we'd first go through, roll out all the "iterate" directives, and then let the parser handle all the "smqtk directives"


Accounting entries compiled from incorporation 1 July 2015 to 30 Sept 2016

Available for directors review.

completed.


bug fix

This PR, done in collaboration with Yuefeng Zhang and Carolyn Phillips, is to fix two bugs in the implementation of the Jaro-Winkler similarity metric. One lead to the metric being order dependent JW(a, b) != JW(b, a) and the other lead to multiple counting some common characters.

Thank you! This is excellent work, and very welcome. I'm going to merge it now.
You write that there were two bugs, but you only add one test case. Do you have tests for the other bug? If so, that would be very welcome.


[stable/traefik] Add the possibility to define additional containers

Is your feature request related to a problem? Please describe.
The following proposal would allow remediation to https://github.com/containous/traefik/issues/5502
Currently traefik in HA mode will only read values from kv store and ignore cli arguments.
However, for the datadog integration, you need to push metrics to the datadog agent on the same node as the pod. The only way to do that is using the downward api and specifying the node ip on the command line arguments, but in HA this gets ignored.
Another way would be to use the datadog agent unix socket, but traefik can't seem to do that at the moment.
To bypass this issue, you could use another container in the traefik pod, using something like socat (https://hub.docker.com/r/alpine/socat/), this is recommended by Datadog : https://docs.datadoghq.com/developers/dogstatsd/unix_socket/#using-socat-as-a-proxy
The container would proxy to the socket, and you can then configure traefik to talk to custom-container:8125 in UDP, this will effectively make every pod talk to its local node via proxy.
Describe the solution you'd like
Adding the possibility to define additional containers with the Chart.
Describe alternatives you've considered
The best would be for Traefik to allow using sockets mounted in the container or take precedence for arguments defined in the CLI, but at this point it's unknown how long would that take for them to do, if they decide to do it, and it's even less sure since they juste put out 2.0.
Additional context
For now i'm stuck with Traefik 1.7 HA and I need that for custom metrics, i'll do a PR for this issue, but if you don't want to add that I would also understand and switch to my fork.
Happy to discuss this issue with you :)

Still an issue, PR needs review


yaml-cpp: 0.7.0 -> 0.8.0

Description of changes
https://github.com/jbeder/yaml-cpp/releases/tag/0.8.0
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

Breaks opencolorio, which in turn breaks blender, olive-editor, krita etc:
CMake Error at share/cmake/modules/Findyaml-cpp.cmake:37 (get_target_property):
  get_target_property() called with non-existent target "yaml-cpp".
Call Stack (most recent call first):
  share/cmake/modules/FindExtPackages.cmake:33 (find_package)
  CMakeLists.txt:261 (include)

CMake Error at /nix/store/p6nyqsw5qbg114gprcj4ci8j4nx9nhnb-cmake-3.26.4/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find yaml-cpp (missing: yaml-cpp_LIBRARY) (found suitable version
  "0.8.0", minimum required is "0.7.0")
Call Stack (most recent call first):
  /nix/store/p6nyqsw5qbg114gprcj4ci8j4nx9nhnb-cmake-3.26.4/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  share/cmake/modules/Findyaml-cpp.cmake:114 (find_package_handle_standard_args)
  share/cmake/modules/FindExtPackages.cmake:33 (find_package)
  CMakeLists.txt:261 (include)

I think we should wait for https://github.com/AcademySoftwareFoundation/OpenColorIO/pull/1823 then.

krita, osl, and olive-editor are now fixed.
Mir and sysdig seem to be unrelated build failures.
mivisionx and xfitter don't get built because of other broken dependencies.

Mir: Failing on Hydra after recent staging merge.
[ RUN ] RealKMSOutputTest.drm_set_gamma
/build/source/tests/unit-tests/platforms/gbm-kms/kms/test_real_kms_output.cpp:503: Failure
Actual function call count doesn't match EXPECT_CALL(mock_drm, drmModeCrtcSetGamma(drm_fd, crtc_ids[0], gamma.red.size(), const_cast<uint16_t*>(gamma.red.data()), const_cast<uint16_t*>(gamma.green.data()), const_cast<uint16_t*>(gamma.blue.data())))...
Expected: to be called once
Actual: never called - unsatisfied and active
[ FAILED ] RealKMSOutputTest.drm_set_gamma (0 ms)

Looks to be https://github.com/MirServer/mir/issues/3019, so unrelated.
sysdig on hardened kernels: Failing since checks date 2022-04-17 according to Hydra, wow. Very likely unrelated.
I'll run a nixpkgs-review tonight to verify.

minivisonx fails because rapidjson-unstable doesn't pass it's valgrind test. The attributes that are modified here are not in that closure.
xfitter fails because root seems to have a broken patch. That should also not be caused by this PR.

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

1 package marked as broken and skipped:

redpanda-server

10 packages failed to build:

linuxKernel.packages.linux_4_19_hardened.sysdig
linuxKernel.packages.linux_5_4_hardened.sysdig
mir
mir.dev
mir.doc
miriway
rocmPackages.mivisionx (rocmPackages.mivisionx-hip)
rocmPackages.mivisionx-cpu
rocmPackages.mivisionx-opencl
xfitter

83 packages built:

ashuffle
blender
blender-hip
brise
calamares
calamares-nixos
contour
contour.terminfo
coreboot-configurator
d-seams
dcgm
ebpf-verifier
emacsPackages.rime
embree
embree2
facter
fcitx5-rime
huggle
ibus-engines.rime
interception-tools
ip2unix
jami
krita
librime
linuxKernel.packages.linux_4_19.sysdig
linuxKernel.packages.linux_5_10.sysdig
linuxKernel.packages.linux_5_10_hardened.sysdig
linuxKernel.packages.linux_5_15.sysdig
linuxKernel.packages.linux_5_15_hardened.sysdig
linuxKernel.packages.linux_5_4.sysdig
linuxKernel.packages.linux_6_1.sysdig
linuxKernel.packages.linux_hardened.sysdig (linuxKernel.packages.linux_6_1_hardened.sysdig)
linuxKernel.packages.linux_6_5.sysdig
linuxKernel.packages.linux_6_5_hardened.sysdig
linuxKernel.packages.linux_latest_libre.sysdig
linuxKernel.packages.linux_libre.sysdig
linuxKernel.packages.linux_lqx.sysdig
linuxKernel.packages.linux_testing_bcachefs.sysdig
linuxKernel.packages.linux_xanmod.sysdig
linuxKernel.packages.linux_xanmod_latest.sysdig (linuxKernel.packages.linux_xanmod_stable.sysdig)
linuxKernel.packages.linux_zen.sysdig
lomiri.deviceinfo
lomiri.deviceinfo.bin
lomiri.deviceinfo.dev
luaformatter
micromamba
mongodb (mongodb-6_0)
mongodb-4_4
mongodb-5_0
nnpdf (python311Packages.nnpdf)
olive-editor
opencolorio
openimageio
openimageio.bin
openimageio.dev
openimageio.doc
openloco
openmw
openmw-tes3mp
openxcom
osl
pdns
portmod
portmod.dist
prometheus-dcgm-exporter
python310Packages.nnpdf
python310Packages.validphys2
python310Packages.validphys2.dist
validphys2 (python311Packages.validphys2)
validphys2.dist (python311Packages.validphys2.dist)
qdmr
qtcreator
rime-data
rstudio
rstudio-server
rstudioServerWrapper
rstudioWrapper
sysdig
thinkfan
timeloop
torrenttools
way-displays
yaml-cpp

aarch64-darwin OfBorg says opencolorio-2.3.0 fails because it tries to fetch DLTcollab/sse2neon via CMake FetchContent. Either fetch & link it in a way that CMake is happy with it or disable it with -DOCIO_USE_SSE2NEON=OFF.

Result of nixpkgs-review pr 249947 run on aarch64-darwin 1

15 packages marked as broken and skipped:

contour
contour.terminfo
mongodb-4_4
mongodb-5_0
nnpdf
openmw
python310Packages.nnpdf
python310Packages.validphys2
python310Packages.validphys2.dist
python311Packages.nnpdf
python311Packages.validphys2
python311Packages.validphys2.dist
torrenttools
validphys2
validphys2.dist

2 packages failed to build:

embree
xfitter

12 packages built:

ashuffle
luaformatter
micromamba
mongodb (mongodb-6_0)
opencolorio
openimageio
openimageio.bin
openimageio.dev
openimageio.doc
osl
timeloop
yaml-cpp

Sorry for the review delay, should have more free time for this now. Re-running the review to test everything.
Regarding the changes:

The ones to yaml-cpp look fine to me, as a maintainer of that package.
The patches to krita and olive-editor & fix to openimageio seem minor enough to be okay in principle.

In the case of the olive-editor one, I think it's common practice to at least add a comment linking to the open PR. If you open the commit URL, it's not possible to immediately tell what repo/branch/PR this belongs to.
For the openimageio one, a link to the upstream CMake issue would be nice, like you did for the opencolorio one.

I'd prefer if one of the pinged maintainers had a look over the changes to opencolorio. IMO, on x86_64, it would likely be better to disable all OCIO_USE_* SIMD options not available in the base x86_64-v1 we're still aiming for until https://github.com/NixOS/nixpkgs/pull/202526 or another PR bumps it to something newer. According to https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels, of the available SIMD options, v1 should only guarantee SSE2.

IMO, on x86_64, it would likely be better to disable all OCIO_USE_* SIMD options not available in the base x86_64-v1 we're still aiming for until systems/architecture: bump default architecture to x86-64-v2  #202526 or another PR bumps it to something newer. According to https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels, of the available SIMD options, v1 should only guarantee SSE2.

OpenColorIO checks which extensions are supported by the CPU at runtime, so it should actually be fine to enable all of them. The interface for that is defined in https://github.com/AcademySoftwareFoundation/OpenColorIO/blob/main/src/OpenColorIO/CPUInfo.h.

OpenColorIO checks which extensions are supported by the CPU at runtime, so it should actually be fine to enable all of them.

Was there a reason why you disabled all the AVX ones then? Or just uncertainty about how this worked?
I guess for the SSE2NEON one, a comment about it requiring another download & FetchContent handling would also be good, to explain why we're turning only that one off. If you could still get it working that be great, but it's new functionality so disabling it for now seems fine to me.
(nixpkgs-review still running, has some large - size and time - rebuilds)

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

1 package marked as broken and skipped:

redpanda-server

13 packages failed to build:

linuxPackages_4_19_hardened.sysdig (linuxKernel.packages.linux_4_19_hardened.sysdig)
linuxPackages_5_4_hardened.sysdig (linuxKernel.packages.linux_5_4_hardened.sysdig)
linuxPackages_latest.sysdig (linuxKernel.packages.linux_6_6.sysdig)
linuxPackages_latest-libre.sysdig (linuxKernel.packages.linux_latest_libre.sysdig)
linuxPackages_zen.sysdig (linuxKernel.packages.linux_zen.sysdig)
mir
mir.dev
mir.doc
miriway
rocmPackages.mivisionx (rocmPackages.mivisionx-hip ,rocmPackages_5.mivisionx ,rocmPackages_5.mivisionx-hip)
rocmPackages.mivisionx-cpu (rocmPackages_5.mivisionx-cpu)
rocmPackages.mivisionx-opencl (rocmPackages_5.mivisionx-opencl)
xfitter

86 packages built:

ashuffle
blender
blender-hip
bloom
brise
calamares
calamares-nixos
contour
contour.terminfo
coreboot-configurator
d-seams
dcgm
ebpf-verifier
emacsPackages.rime
embree
embree2
facter
fcitx5-rime
huggle
ibus-engines.rime
interception-tools
ip2unix
jami
krita
librime
linuxKernel.packages.linux_4_19.sysdig
linuxKernel.packages.linux_5_10.sysdig
linuxPackages_5_10_hardened.sysdig (linuxKernel.packages.linux_5_10_hardened.sysdig)
linuxKernel.packages.linux_5_15.sysdig
linuxPackages_5_15_hardened.sysdig (linuxKernel.packages.linux_5_15_hardened.sysdig)
linuxKernel.packages.linux_5_4.sysdig
linuxPackages.sysdig (linuxKernel.packages.linux_6_1.sysdig)
linuxPackages_hardened.sysdig (linuxPackages_6_1_hardened.sysdig)
linuxKernel.packages.linux_6_5.sysdig
linuxPackages_6_5_hardened.sysdig (linuxKernel.packages.linux_6_5_hardened.sysdig)
linuxPackages-libre.sysdig (linuxKernel.packages.linux_libre.sysdig)
linuxPackages_lqx.sysdig (linuxKernel.packages.linux_lqx.sysdig)
linuxPackages_testing_bcachefs.sysdig (linuxKernel.packages.linux_testing_bcachefs.sysdig)
linuxPackages_xanmod.sysdig (linuxKernel.packages.linux_xanmod.sysdig)
linuxPackages_xanmod_latest.sysdig (linuxKernel.packages.linux_xanmod_latest.sysdig ,linuxPackages_xanmod_stable.sysdig)
lomiri.deviceinfo
lomiri.deviceinfo.bin
lomiri.deviceinfo.dev
luaformatter
micromamba
mongodb (mongodb-6_0)
mongodb-4_4
mongodb-5_0
nnpdf (python311Packages.nnpdf)
olive-editor
opencolorio
openimageio
openimageio.bin
openimageio.dev
openimageio.doc
openloco
openmw
openmw-tes3mp
openxcom
osl
pdns
portmod
portmod.dist
prometheus-dcgm-exporter
python310Packages.n3fit
python310Packages.n3fit.dist
python310Packages.nnpdf
python310Packages.validphys2
python310Packages.validphys2.dist
python311Packages.n3fit
python311Packages.n3fit.dist
validphys2 (python311Packages.validphys2)
validphys2.dist (python311Packages.validphys2.dist)
qdmr
qtcreator
rime-data
rstudio
rstudio-server
rstudioServerWrapper
rstudioWrapper
sysdig
thinkfan
timeloop
torrenttools
way-displays
yaml-cpp

Checked failure reasons, saw nothing that would be caused by this PR as you mentioned. Checked mir and miriway by applying #255029 on top to fix the tests, also works. Aside from the question of the SIMD flags, LGTM.

Is there a reason why we disabled all the AVX ones then? Or just uncertainty about how this worked?

Frankly I forgot to take it out again. I only looked in detail after setting the flags. I can remove them in a few hours.


5.7 Coercions

says "a special datatype known as num", and I believe there's an implication that this will be printed as num:
check 123            -- 123 : num

but in fact I see (in today's https://leanprover.github.io/tutorial)
-- Processing...
-- Saved at cookie.
line 7, column 0: information:check result:
123 : ?M_1 a b m n
line 8, column 0: information:check result:
123 : ℕ

@awf Thanks! You are right, this is no longer correct. Numerals are now interpreted directly in any type that has a zero, one, and addition. I have repaired the example and issued a pull request.
There are likely other parts of the tutorial that are not fully up to date. We'll eventually do a full overhaul. In the meanwhile, reports like this are very helpful.


每次打开vs都要下载这些

From @dsc6636926 on January 23, 2017 8:29

这个怎么办，我感觉这些应该都属于全局性的东西，下载一次也就可以了，但是为啥每次打开vscode都要下载这一堆插件，要等他们都下载完才能调试代码
Copied from original issue: Microsoft/vscode#19016

From @dsc6636926 on January 23, 2017 8:33
everytime I start vscode，it will download these tools，so I must wait for a long time to debug my code

Can someone help translating this. We don't speak the language used.

@dsc6636926 thanks !
Moving to OmniShapr then.

This is almost certainly a dupe of #1085


problems getting started on mac os x

Hi, I'm having trouble with the quickstart. Prior to this I did a brew update and brew upgrade npm.
I'm new to node/npm.
Any suggestions as to what is going wrong here?
$ npm install && npm start
npm http GET https://registry.npmjs.org/electron-prebuilt
npm http 304 https://registry.npmjs.org/electron-prebuilt
npm ERR! Error: No compatible version found<EMAIL_ADDRESS>npm ERR! Valid install targets:
npm ERR! ["0.24.0","0.25.0","0.25.1","0.25.1-1","0.25.2","0.25.2-1","0.25.3","0.25.3-1","0.25.3-2","0.26.0","0.26.1","0.27.0","0.27.1","0.27.2","0.27.3","0.28.0","0.28.1","0.28.2","0.28.3","0.29.0","0.29.1","0.29.2","0.30.0","0.30.1","0.30.2","0.30.3","0.30.4","0.30.5","0.31.0","0.30.6","0.31.1","0.31.2","0.32.0","0.32.1","0.32.2","0.32.3","0.33.0","0.33.1","0.30.7","0.33.2","0.30.8","0.33.3","0.33.4","0.33.5","0.33.6","0.33.7","0.33.8","0.33.9","0.34.0","0.34.1","0.34.2","0.34.3","0.35.0","0.35.1","0.34.4","0.34.5","0.35.2","0.35.3","0.35.4","0.36.0","0.36.1","0.36.2","0.35.5","0.36.3","0.35.6","0.36.4","0.36.5","0.36.6","0.36.7","0.36.8","0.36.9","0.36.10","0.36.11","0.37.0","0.37.1","0.37.2","0.36.12","0.37.3","0.37.4","0.37.5","0.37.6","0.37.7","0.37.8"]
npm ERR!     at installTargetsError (/usr/local/lib/node_modules/npm/lib/cache.js:685:10)
npm ERR!     at /usr/local/lib/node_modules/npm/lib/cache.js:607:10
npm ERR!     at saved (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/get.js:138:7)
npm ERR!     at Object.oncomplete (fs.js:107:15)
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR<EMAIL_ADDRESS>
npm ERR! System Darwin 15.4.0
npm ERR! command "node" "/usr/local/bin/npm" "install"
npm ERR! cwd /Users/cpg/work/160508-testing-electron/electron-quick-start
npm ERR! node -v v0.10.5
npm ERR! npm -v 1.2.18
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/cpg/work/160508-testing-electron/electron-quick-start/npm-debug.log
npm ERR! not ok code 0

and the details are
$ cat /Users/cpg/work/160508-testing-electron/electron-quick-start/npm-debug.log
0 info it worked if it ends with ok
1 verbose cli [ 'node', '/usr/local/bin/npm', 'install' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose read json /Users/cpg/work/160508-testing-electron/electron-quick-start/package.json
5 verbose readDependencies using package.json deps
6 verbose install where, deps [ '/Users/cpg/work/160508-testing-electron/electron-quick-start',
6 verbose install   [ 'electron-prebuilt' ] ]
7 verbose from cache /Users/cpg/work/160508-testing-electron/electron-quick-start/package.json
8 info preinstall<EMAIL_ADDRESS>9 verbose from cache /Users/cpg/work/160508-testing-electron/electron-quick-start/package.json
10 verbose readDependencies using package.json deps
11 verbose cache add [<EMAIL_ADDRESS>null ]
12 verbose cache add name=undefined<EMAIL_ADDRESS>args=["electron-prebuilt@^0.37.8",null]
13 verbose parsed url { protocol: null,
13 verbose parsed url   slashes: null,
13 verbose parsed url   auth: null,
13 verbose parsed url   host: null,
13 verbose parsed url   port: null,
13 verbose parsed url   hostname: null,
13 verbose parsed url   hash: null,
13 verbose parsed url   search: null,
13 verbose parsed url   query: null,
13 verbose parsed url   pathname<EMAIL_ADDRESS>13 verbose parsed url   path<EMAIL_ADDRESS>13 verbose parsed url   href<EMAIL_ADDRESS>}
14 verbose cache add name="electron-prebuilt" spec="^0.37.8" args=["electron-prebuilt","^0.37.8"]
15 verbose parsed url { protocol: null,
15 verbose parsed url   slashes: null,
15 verbose parsed url   auth: null,
15 verbose parsed url   host: null,
15 verbose parsed url   port: null,
15 verbose parsed url   hostname: null,
15 verbose parsed url   hash: null,
15 verbose parsed url   search: null,
15 verbose parsed url   query: null,
15 verbose parsed url   pathname: '^0.37.8',
15 verbose parsed url   path: '^0.37.8',
15 verbose parsed url   href: '^0.37.8' }
16 verbose addNamed [ 'electron-prebuilt', '^0.37.8' ]
17 verbose addNamed [ null, null ]
18 silly lockFile b4ec6c31-electron-prebuilt-0-37-8<EMAIL_ADDRESS>19 verbose lock<EMAIL_ADDRESS>/Users/cpg/.npm/b4ec6c31-electron-prebuilt-0-37-8.lock
20 info addNameTag [ 'electron-prebuilt', '^0.37.8' ]
21 verbose url raw electron-prebuilt
22 verbose url resolving [ 'https://registry.npmjs.org/', './electron-prebuilt' ]
23 verbose url resolved https://registry.npmjs.org/electron-prebuilt
24 info trying registry request attempt 1 at 10:24:48
25 verbose etag "3DIBHBR4X0OIT00V4DGTI8X2C"
26 http GET https://registry.npmjs.org/electron-prebuilt
27 http 304 https://registry.npmjs.org/electron-prebuilt
28 silly registry.get cb [ 304,
28 silly registry.get   { date: 'Sun, 08 May 2016 17:24:35 GMT',
28 silly registry.get     via: '1.1 varnish',
28 silly registry.get     'cache-control': 'max-age=300',
28 silly registry.get     etag: '"3DIBHBR4X0OIT00V4DGTI8X2C"',
28 silly registry.get     age: '173',
28 silly registry.get     connection: 'keep-alive',
28 silly registry.get     'x-served-by': 'cache-dfw1831-DFW',
28 silly registry.get     'x-cache': 'HIT',
28 silly registry.get     'x-cache-hits': '1',
28 silly registry.get     'x-timer': 'S1462728275.635401,VS0,VE0',
28 silly registry.get     vary: 'Accept-Encoding' } ]
29 verbose etag electron-prebuilt from cache
30 silly lockFile b4ec6c31-electron-prebuilt-0-37-8<EMAIL_ADDRESS>31 silly lockFile b4ec6c31-electron-prebuilt-0-37-8<EMAIL_ADDRESS>32 error Error: No compatible version found<EMAIL_ADDRESS>32 error Valid install targets:
32 error ["0.24.0","0.25.0","0.25.1","0.25.1-1","0.25.2","0.25.2-1","0.25.3","0.25.3-1","0.25.3-2","0.26.0","0.26.1","0.27.0","0.27.1","0.27.2","0.27.3","0.28.0","0.28.1","0.28.2","0.28.3","0.29.0","0.29.1","0.29.2","0.30.0","0.30.1","0.30.2","0.30.3","0.30.4","0.30.5","0.31.0","0.30.6","0.31.1","0.31.2","0.32.0","0.32.1","0.32.2","0.32.3","0.33.0","0.33.1","0.30.7","0.33.2","0.30.8","0.33.3","0.33.4","0.33.5","0.33.6","0.33.7","0.33.8","0.33.9","0.34.0","0.34.1","0.34.2","0.34.3","0.35.0","0.35.1","0.34.4","0.34.5","0.35.2","0.35.3","0.35.4","0.36.0","0.36.1","0.36.2","0.35.5","0.36.3","0.35.6","0.36.4","0.36.5","0.36.6","0.36.7","0.36.8","0.36.9","0.36.10","0.36.11","0.37.0","0.37.1","0.37.2","0.36.12","0.37.3","0.37.4","0.37.5","0.37.6","0.37.7","0.37.8"]
32 error     at installTargetsError (/usr/local/lib/node_modules/npm/lib/cache.js:685:10)
32 error     at /usr/local/lib/node_modules/npm/lib/cache.js:607:10
32 error     at saved (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/get.js:138:7)
32 error     at Object.oncomplete (fs.js:107:15)
33 error If you need help, you may report this log at:
33 error     <http://github.com/isaacs/npm/issues>
33 error or email it to:
33 error<EMAIL_ADDRESS>34 error System Darwin 15.4.0
35 error command "node" "/usr/local/bin/npm" "install"
36 error cwd /Users/cpg/work/160508-testing-electron/electron-quick-start
37 error node -v v0.10.5
38 error npm -v 1.2.18
39 verbose exit [ 1, true ]

I might be wrong, but getting started page and .node-version file from the repository suggest that 5.10.0 might be the currently used one.
These logs clearly indicate that you are running an ancient version of node. Consider using nvm or anything else you like to make sure you have the correct version to get the job done.

Yep, your versions of Node and npm are very out of date and don't support things like the ^ being used in the package.json in this project.
Closing out, upgrading Node should fix this 👍


Property Getters in State

What are your thoughts on property getters on the state?
Some examples:
val isLoading: Boolean
    get() = data is Incomplete

val canSubmit: Boolean
    get() = !isPerformingAction && error == null && !note.isNullOrEmpty() && deliveryDate != null && hasOneOrMoreItems

This is a fine pattern - just make sure that it depends only on primary constructor properties.
We use this approach commonly ourselves.

@LimeByte Same, super useful pattern, we use this a ton at Tonal too.


[BUGFIX] fixed issues which come up when integrating the "unsaved changes"-handler

Tasks:

[x] correct update of product after save
[ ] got feedback

Informations:

Q
A

Bug fix?
yes

New feature?
no

Tests pass?
none

Fixed tickets
none

Doc
none

Requires:

https://github.com/sulu-cmf/sulu/pull/730

@michaelzangerle ACK!


ffpyplayer video: better video seek

Right now changing position of video with ffpyplayer is a bit buggy. Audio stream will seek correctly, while video stream will be slowed or speeded for few seconds before both streams became synchronized.
This PR fixes it making seeking much nicer. While ffpyplayer doc says this method is "inaccurate", on practice it works better given us very close position to wanted and synchronized streams momentarily.
I tested it on Windows and Android on different videos for a long time.

The problem with this is that some videos only have I-frames at regular intervals of e.g. 5 or 10 seconds. When accurate is False, it'll only seek to the closest I-frame which means that you may be as much as 5s or 10s away from your seek point. Try it with videos with large distances between their I-frames.

@matham, yes, I know it, but I think it's better to use inaccurate seek on practice. When we seek accurately we will wait same 5-10 second seeing slowed/speeded video stream. It's confusing, I'm not sure it worth it.
It's debatable issue, but I can notice that gstreamer also uses inaccurate seeking and we'll will at least get similar behavior for different providers.
Long story short, I like inaccurate seeking much more. Feel free to accept or reject this PR.
P.S. Sorry if I'm being annoying, couldn't you also take a look when you have time at this ffpyplayer-related PR? I use it for a long time and it works fine for me.

Ok, a better solution then is to add a def seek(self, percent, precise=True): and save the precise flag in the queue as a tuple along with percent and use that. That way, the current behavior remains default but you can overwrite it.
Remember to add docs for the meaning and implication of using the precise flag though.

precise flag added.


[DO NOT MERGE] Test CI fail in Eventgrid

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Eventgrid

Closed. Redirected to #17434


windows 10 cant install wechaty

Provide Your Network Information

Where is the location of your server? (i.e. City, or In/Out China)
just local development in china
Which cloud platform(AliYun/Qcloud/DigitalOcean/etc) are you using?
none

Run npm run doctor or wechaty run doctor(for docker user), paste output here
Expected behavior
just expects wechaty to install
Actual behavior
yarn add wechaty
yarn add v1.1.0
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
error C:\Users\Francis\Documents\REACT-JS-SUMMER-17\wechat-bots\node_modules\puppeteer: Command failed.
Exit code: 1
Command: node install.js
Arguments:
Directory: C:\Users\Francis\Documents\REACT-JS-SUMMER-17\wechat-bots\node_modules\puppeteer
Output:
ERROR: Failed to download Chromium r499413! Set "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD" env variable to skip download.
{ Error: read ECONNRESET
at _errnoException (util.js:1026:11)
at TLSWrap.onread (net.js:606:25) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'read' }
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.
Steps to reproduce the behavior (and fixes, if any)
windows 10 machine
mkdir folder-for-project
cd folder-for-project
yarn init
yarn add wechaty
Full Output Logs
$ WECHATY_LOG=silly npm run ts-node mybot.ts

# or

$ WECHATY_LOG=silly node dist/mybot.js

Show Logs

### Paste the full output logs here with `WECHATY_LOG=silly` set
# PASTE FULL LOG OUTPUT AT HERE:

yarn add v1.1.0
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
[1/1] ⠈ puppeteer:     at TLSWrap.onread (net.js:606:25) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'rea
[-/1] ⠈ waiting...
[-/1] ⠈ waiting...
[-/1] ⠁ waiting...
error c:\Users\Francis\Documents\REACT-JS-SUMMER-17\wechat-bots\node_modules\puppeteer: Command failed.
Exit code: 1
Command: node install.js
Arguments:
Directory: c:\Users\Francis\Documents\REACT-JS-SUMMER-17\wechat-bots\node_modules\puppeteer
Output:
ERROR: Failed to download Chromium r499413! Set "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD" env variable to skip download.

It was because of the GFW:
[1/1] ⠈ puppeteer:     at TLSWrap.onread (net.js:606:25) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'rea

Wechaty needs to download puppeteer from a google server.
You need to make sure your box can connect to Google in order to prevent errno: 'ECONNRESET' error.

But am using a VPN and can use gmail now to reply and also use google
On 10 October 2017 at 09:13, Huan LI<EMAIL_ADDRESS>wrote:

It was because of the GFW:
[1/1] ⠈ puppeteer:     at TLSWrap.onread (net.js:606:25) code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'rea
Wechaty needs to download puppeteer from a google server.
You need to make sure your box can connect to Google in order to prevent errno:
'ECONNRESET' error.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Chatie/wechaty/issues/867#issuecomment-335544182, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AP1GpXL9nXHdUlGQDR2a2kEHVh7H6eciks5sq6XEgaJpZM4P0RcO
.

"ECONNRESET" means the other side of the TCP conversation abruptly closed its end of the connection. This is most probably due to one or more application protocol errors. You could look at the API server logs to see if it complains about something.

There must be something wrong with your network.
I suggest you try to install puppeteer and see if you could success by:
$ npm install puppeteer

This is an NPM module from google chrome team.
I guess you will still get fail. If so, then this issue is not related with Wechaty.

ooh yes it fails to install puppeter.
On 10 October 2017 at 10:13, Huan LI<EMAIL_ADDRESS>wrote:

"ECONNRESET" means the other side of the TCP conversation abruptly closed
its end of the connection. This is most probably due to one or more
application protocol errors. You could look at the API server logs to see
if it complains about something.
There must be something wrong with your network.
I suggest you try to install puppeteer and see if you could success by:
$ npm install puppeteer
This is an NPM module from google chrome team.
I guess you will still get fail. If so, then this issue is not related
with Wechaty.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Chatie/wechaty/issues/867#issuecomment-335560847, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AP1GpehxWlcQTNaLvJuk9fjn8j3Q_cL5ks5sq7OsgaJpZM4P0RcO
.

Ok, so it's confirmed this issue is not related with Wechaty but your local network.
Could you close this issue for now?

@lijiarui Could you please add this Q/A to our FAQ? Thanks.

sure
On 10 October 2017 at 19:27, Huan LI<EMAIL_ADDRESS>wrote:

Ok, so it's confirmed this issue is not related with Wechaty but your
local network.
Could you close this issue for now?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Chatie/wechaty/issues/867#issuecomment-335671427, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AP1GpZjJL-Paw0DRqHMKyuLw1oMZ-M5Bks5srDWQgaJpZM4P0RcO
.

When using ssr for vpn connection, change the mode from "Auto Mode by PAC" to "White List Mode" could possibly solve it.


Does the max level limit of 5 still apply?

I've just added the following to the desired properties and saved successfully. The Twin Update was received by the Device fine too;
"systemSettings": {
"systemMode": "day",
"environmentSettings": {
"powerMode": "high",
"climateSettings": {
"climeateMode": "summer",
"acSettings": {
"acPower": "on",
"acParamaters": {
"fanSpeed": 201,
"thresholds": {
"minimum": 50,
"maximum": 100,
"alerts": {
"global": "on",
"highLevel": {
"enabled": "yes",
"action": "email",
"test": {
"test2": 1
}
}
}
}
}
}
}
}

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

ID: 8ff6fbb2-5679-a9e7-b9f3-40d638cadae8
Version Independent ID: fa51c99a-0df6-cebf-aecc-b08df5f85454
Content: Understand Azure IoT Hub device twins
Content Source: articles/iot-hub/iot-hub-devguide-device-twins.md
Service: iot-hub
GitHub Login: @wesmc7777
Microsoft Alias: wesmc

@pjgpetecodes Thanks for the feedback! We are currently investigating and will update you shortly.

Thanks Alberto!

@pjgpetecodes Okay so you catched this before being documented, there is an update for  IoT Hub, DPS and Edge runtime version <IP_ADDRESS> or newer (to be also released on 11/13) –
•	Twin depth increase to 10 (previously 5)
•	Twin property key size increase to 1KB (previously 64B)
•	Twin property value size increase to 4KB (previously 256B)
•	Twin desired and reported properties section size increase to 32KB (previously 8KB)
Note: Non-edge customers can start using these features. IoT Edge runtime release is planned for 11/13
Closing this issue now.
There is an update coming for the docs.


Exchange Online Module

Exchange Modules Added to PowerShell Module Browser
Is it possible to add the Exchange Online module into the module browser.

@EdisonDa Can you take a look this suggestion?

Thank you Malcolm for your great suggestion. Yes, we already planned it and it is already in progress. You can try it soon.

@Sims1990 Thank you Malcolm for your great suggestion. Yes, we already in progress, and we will let you know once we release it.

Hello - reviewing and cleaning up some older feedback/issues. Thanks!


Allow building with external tools with CMakePresets.json

Brief Issue Summary
cmake-tools can make it easier to build with external tools when CMakePresets.json is enabled. This includes:

Adding an option to select an "Unspecified" Configure Preset. This option should not create a CMakePresets.json in the root of the open folder.
Read from CMake settings in settings.json (e.g. cmake.generator, cmake.buildDirectory) when CMake Presets integration is enabled if no CMakePresets.json exists.

This will allow users to invoke CMake from the CLI, and then run a trivial configure and build command from inside the extension for better IntelliSense/debugging support.

1. Adding an option to select an "Unspecified" Configure Preset. This option should not create a CMakePresets.json in the root of the open folder.

+1


Adding missing attributes

This is an automated message:
You can preview this docs PR at http://504.docs-pr.validatedpatterns.io
Note that they get generated every five minutes, so please wait a bit.


InteractiveMessage Header

Bro you forget to implement header in InteractiveMessage

Hello @Jobians
Thank you for reporting this missing feature.
I will implement the header in interactive message as soon as possible. Till then if you may wish to give it a try, you can check this function here.


Discounts

Loved your accompanying articles to this project. Very helpful.
I had a question about how you're handling discounts (and coupons).
At the moment, they are part of the Product object. How would you deal with a discount that should be applied to the basket and not directly related to a product.

I was wondering this too. Since there is a 'discounts' property on the last example of the readme, I guessed there was a way to do this.

Part 6 of the series leads me to think that I could calculate any order-specific discounts inside my implementation of DiscountsMetaData.

Thank you Jason, I'm glad you found them helpful :smile:
Yeah that is something that I was thinking about when I was initially writing this package. I only had the requirement for product specific discounts. I decided to not have order wide discounts to keep things simple and then see if there was actually a need for them. I guess there is actually a demand for them haha :smile:
I'll have a think about how to add order specific discounts.

I'm trying to implement something so discounts can be added on the basket.
Sadly, the 2 discount class (+interface) are currently tightly coupled to a Product. Ideally, those would not be coupled.
I don't think it's the Discount responsibility to calculate the discount on a product.
I probably will have to create 2 new discount classes.

I think, this is a possible quick solution: https://github.com/ennosol/basket/pull/6

Oh, nice.
How's that used client-side. Can't see a test which describes the usage.
Thanks!

public function should_add_a_discount()
{
    $this->basket->discount(new PercentageDiscount(20));
    $this->assertEquals(20, $this->basket->discount->rate()->int());
}

https://github.com/ennosol/basket/blob/2b3e552857975ab018018a29624e7578fad20c1f/tests/BasketTest.php#L88-L93

Awesome :+1: !

Thanks. Be careful:
Basket:

The basket discount will be overwrite the product discounts.

Product:

There is a limitation at discounts, only one discount allowed for a product, if there was another discount in the Collection, that it will be overwritten. So the $product->discount always will be return with only one discount.

Hey @philipbrown! Any progress on implementing basket discounts?

@juukie No, to be honest I haven't used this since I made it open source. If you want to work on it I'll make you a contributor (or you can just fork it if you want) as I have no plans to work on it.

Thanks @philipbrown, I'll fork and see if I can make it fit the projects needs. I'll push valuable changes to the repo.


extraDirectories directory that doesn't exist locally:  in command-line(-Djib.extraDirectories.paths)

Environment:

Jib version: 3.4.0
Build tool: Gradle
OS: macos

Description of the issue:
I get an error when I try to build with the command line.  Parameter -Djib.extraDirectories.paths parse incorrectly.
This code  only receiving as from. Value of into always  is '/'
Command:

./gradlew jibDockerBuild --image=poc-jib:latest  -Djib.from.image=openjdk:21-slim -Djib.extraDirectories.paths='extra, /var/temp'

discussed here
Expected behavior:
should have copied the files in the extra  to /var/temp
Steps to reproduce:

I created a sample project (https://github.com/cebrailinanc/jib-demo)

Log output:

What went wrong:
Execution failed for task ':jibDockerBuild'.
extraDirectories.paths contain "from" directory that doesn't exist locally:  /var/temp

Hey I want to support this issue, given this comment I think we should be able to set to from the CLI too, currently it's not possible, e.g.
What I tried (all below not working), any option I'd expect to work to set both from and to from the CLI parameter:
# expect /app/config is in the image

./gradlew jibDockerBuild  -Djib.extraDirectories.paths='/Users/artemptushkin/foo/config,/app/config'

./gradlew jibDockerBuild  -Djib.extraDirectories.paths.path.from='/Users/artemptushkin/foo/config' -Djib.extraDirectories.paths.path.to='/app/config'

./gradlew jibDockerBuild -Djib.extraDirectories.paths=['/Users/artemptushkin/gitlab/IptiQ/dx/kotlin-app-example/config','/app/config']


Default deployer name to local_user capistrano config value

Had issue where when using gitlab CI, neither USER nor USERNAME persists into the slackistrano code. Capistrano already provides a local_user config for this, so am making it use that, and fall back to what it was before.

Nice. It’s been awhile since I’ve used Capistrano. Is local user new? Wonder if we should move to prefer that? If you happen to have a link to it’s documentation...

@phallstrom  https://capistranorb.com/documentation/getting-started/configuration/ .  <-   search for "local_user". It's capistranos way of identifying who did the deploy, and defaults to the system account name. In our case, we override this with the git user.name value, and would be great if slackistrano used this value also. We've got this change running on production with no issues.

Interesting. I just opened https://github.com/capistrano/capistrano/pull/2003 to update their docs.
Given the true default value of capistrano's local_user do you think we even need the default? I suppose it doesn't hurt in case they've set it to nil... thoughts?

@phallstrom I kept the slackistrano use of ENV vars for backwards compatibility, incases where (like you mentioned) local_user is nil, and they were previously relying on the USER or USERNAME values.

@KieranP Thanks!  3.8.3 is on it's way to Rubygems.


dbrestore runs out of memory on large compressed backups

Trying to restore a db backup that's about 200MB compressed and running out of memory.
Is it possible to modfy utils.uncompress_file to avoid reading the whole file into memory, like http://stackoverflow.com/questions/339053/how-do-you-unzip-very-large-files-in-python ?
Stack trace:
Reading file xxx-xxx-2015-10-25-180000.psql.gz
Traceback (most recent call last):
  File "./manage.py", line 11, in <module>
    execute_from_command_line(sys.argv)
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
    utility.execute()
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 377, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 288, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/raven/contrib/django/management/__init__.py", line 41, in new_execute
    return original_func(self, *args, **kwargs)
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 338, in execute
    output = self.handle(*args, **options)
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/dbbackup/management/commands/dbrestore.py", line 58, in handle
    self.restore_backup()
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/dbbackup/management/commands/dbrestore.py", line 94, in restore_backup
    uncompressed_file, input_filename = utils.uncompress_file(inputfile, input_filename)
  File "/srv/apps/staging/env/local/lib/python2.7/site-packages/dbbackup/utils.py", line 249, in uncompress_file
    outputfile.write(zipfile.read())
  File "/usr/lib/python2.7/gzip.py", line 249, in read
    self._read(readsize)
  File "/usr/lib/python2.7/gzip.py", line 308, in _read
    self._add_read_data( uncompress )
  File "/usr/lib/python2.7/gzip.py", line 326, in _add_read_data
    self.extrabuf = self.extrabuf[offset:] + data
MemoryError

Does compression work have the same trouble ?

Finally got around to testing this.
Compression seems to work fine in terms of memory, but I'm having some problems with running out of disk space.
The dbbackup command creates an uncompressed temp file, then compresses it if --compress is set, then encrypts it if --encrypt is set.
In my case the uncompressed file is 3+ GB, and the compressed file is ~400MB, so if I do something like pg_dump mydb | gzip > mydb.psql.gz I can compress it on the fly and save it, but dbbackup runs out of disk space (the server instances only have ~7GB of HDD space each).

Ok, thanks a lot for the troubleshooting,
I study how to improve and make it as soon as possible.

Hello @MattFisher,
Could you test this branch make the work for you: https://github.com/ZuluPro/django-dbbackup/tree/gzip
?

Hello, @MattFisher,
With PR #178 merged you should not have MemoryError anymore.
Code is now supposed to use SpooledTemporaryFile which uses your filesystem if memory isn't big enough.


UVI Request

--- UVI JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v3.12 to before v5.4.157",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=3f4ff561bc88b074d5e868dde4012d89cbb06c87",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=1cead23c1c0bc766dacb900a3b0269f651ad596f"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "3f4ff561bc88b074d5e868dde4012d89cbb06c87",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "1cead23c1c0bc766dacb900a3b0269f651ad596f",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "regmap: Fix possible double-free in regcache_rbtree_exit()\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.4.157 by commit 1cead23c1c0bc766dacb900a3b0269f651ad596f, it was introduced in version v3.12 by commit 3f4ff561bc88b074d5e868dde4012d89cbb06c87. For more details please see the references link."
}
--- UVI JSON ---

This issue has been assigned UVI-2021-1002019


Error starting margo

I switched to the development build of GoSublime and reinstalled it. Now I'm getting this error:
** 2019-11-29 17:29:55.021246 **:
agent#010: GoSublime: Traceback (most recent call last):
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\margo_agent.py", line 176, in _handle_send_ipc
    ipc_enc(rq.data(), self.proc.stdin)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 527, in _pack3
    _pack_map(obj, fp, options)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 395, in _pack_map
    pack(v, fp, **options)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 527, in _pack3
    _pack_map(obj, fp, options)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 395, in _pack_map
    pack(v, fp, **options)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 527, in _pack3
    _pack_map(obj, fp, options)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 395, in _pack_map
    pack(v, fp, **options)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 521, in _pack3
    _pack_string(obj, fp, options)
  File "C:\Users\User\AppData\Roaming\Sublime Text 3\Packages\GoSublime\gosubl\vendor\umsgpack.py", line 289, in _pack_string
    fp.write(struct.pack("B", 0xa0 | len(obj)) + obj)
OSError: [Errno 22] Invalid argument
--------------------------------

SublimeText version is 3.2.2 (Build 3211) , Go version is 1.13.4 and Python version is 2.7.17
I've tried reinstalling GoSublime several times but I'm still getting the same error.

@jdelk What version of Windows are you using, maybe I Microsoft supplies a VM I can use to reproduce this. Subime Text ships with its own version of Python so I don't think it's related to the one you have installed.


test: store soft deleted schema

About this change - What it does
When _schemas topic has been compacted and only soft deleted version of the schema is present the schema must be stored in the in memory database.
Fixes #170.

@jjaakola-aiven some conflicts have to be resolved first


Use num_traits.

Oooh, nice, they split num crate in parts. Thanks!

Want to release to crates.io?

Probably a bit later.

Ping? :)

Oh, I'm very sorry! I'm on it right now.

Done, v0.3.3 is on crates.io.


fix(json-schema): move add validator into ngAfterViewInit

Issue
na
Description
... to hard
Additional context

🧪  Gravitee.io Automatic Prerelease @gravitee/ui-policy-studio-angular
npm install<EMAIL_ADDRESS>
yarn add<EMAIL_ADDRESS>

📚  View the storybook of this branch here

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

npm package (@latest dist-tag)
npm package (@latest dist-tag)
npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


anatCompCor compartment selection

Hi,
Think this is a really valuable project, thanks for putting it together! However, when loading the acompcor components, there should be a way to select either those from the individual WM and CSF masks, or the combined WM+CSF mask. Using both of them would doubly regress signal, which may introduce noise. I did not see this addressed in the parser script. In the confounds.json file there is a "Mask" field associated with each component which denotes the compartment. If you'd want me to try implementing this myself (I have already in a custom script, but would have to adapt it for this), let me know!
Best,
Steven

Hi Steven,
Sorry for the delay.
Thanks for bringing that up, you are 100% right, this needs to be added.
I am not sure when I will have time to work on this.
If you can open a PR I will look at it quickly though.
Even if it's incomplete, we can iterate together.
I have added some pointers on where to begin.
I guess the compcor mask argument should be added in the following method, something like mask_compcor (with a default to WM+CSF?)
https://github.com/SIMEXP/load_confounds/blob/master/load_confounds/parser.py#L94-L108
It will be necessary to add a new helper function to load the confounds.json file in parser.py
It can wait, but it will be necessary to update the test data to add the json and incorporate the json file in the tests
https://github.com/SIMEXP/load_confounds/blob/master/load_confounds/data/test_desc-confounds_regressors.tsv
I wanted to re-generate a new test file anyway using the LTS release and all of fimriprep's options (inc AROMA), see issue #41.
Finally, the new mask_compcor argument will need to be added in the AnatCompCor strategy
https://github.com/SIMEXP/load_confounds/blob/master/load_confounds/strategies.py#L205-L236
and TempCompCor strategy:
https://github.com/SIMEXP/load_confounds/blob/master/load_confounds/strategies.py#L205-L236
We'll need to add tests to cover the different types of masks (and find sensible conditions to check that the right subset of covariates is pulled):
https://github.com/SIMEXP/load_confounds/blob/master/load_confounds/strategies.py#L205-L236
I think that covers it :)

@all-contributors please add @smeisler for bug

Thanks for the add! This somehow slipped my mind

btw we're working on fmriprep denoising as a  brainhack MTL project
You can join the fun in channel ~fmriprep_denoising on brainhack mattermost

In addition, we should allow compcor components to be unspecified and load all compcor components for the given modality. fMRIPrep will by default only save out the component set that explains 50% variance, which is a popular alternative to using only the top 10 components.

sorry for the delay in response. I am closing this issue with the merge of PR #115
Again huge thanks @smeisler your contribution to the project is highly appreciated!!
I have created a separate issue to discuss the defaults for the number of components: https://www.biorxiv.org/content/10.1101/2<IP_ADDRESS>964v1
I have also created a separate thread to monitor a change of behavior in fmriprep for compcor components https://github.com/nipreps/fmriprep/issues/2384


Support for @odata.draft.enabled

In the branch gregorwolf/cds-pg/tree/draft-support I've added a new entity in the service which I've annotated with @odata.draft.enabled unfortuantely already the first simple READ / GET request to the entity fails with this error:

nsole.error
[2020-09-29T20:18:44.234Z | ERROR | 1310454]: Error stacktrace: error: syntax error at or near "."     at Parser.parseErrorMessage (/home/gwolf/projects/cds-pg/node_modules/pg-protocol/src/parser.ts:357:11)     at Parser.handlePacket (/home/gwolf/projects/cds-pg/node_modules/pg-protocol/src/parser.ts:186:21)     at Parser.parse (/home/gwolf/projects/cds-pg/node_modules/pg-protocol/src/parser.ts:101:30)     at Socket. (/home/gwolf/projects/cds-pg/node_modules/pg-protocol/src/index.ts:7:48)     at Socket.emit (events.js:315:20)     at addChunk (_stream_readable.js:295:12)     at readableAddChunk (_stream_readable.js:271:9)     at Socket.Readable.push (_stream_readable.js:212:10)     at TCP.onStreamRead (internal/stream_base_commons.js:186:23)

The generated SQL is:

SELECT active AS "active" .ID AS "ID" , active AS "active" .type_Boolean AS "type_Boolean" , active AS "active" .type_Int32 AS "type_Int32" , active AS "active" .type_Int64 AS "type_Int64" , active AS "active" .type_Decimal AS "type_Decimal" , active AS "active" .type_Double AS "type_Double" , active AS "active" .type_Date AS "type_Date" , active AS "active" .type_Time AS "type_Time" , active AS "active" .type_DateTime AS "type_DateTime" , active AS "active" .type_Timestamp AS "type_Timestamp" , active AS "active" .type_String AS "type_String" , active AS "active" .type_Binary AS "type_Binary" , active AS "active" .type_LargeBinary AS "type_LargeBinary" , active AS "active" .type_LargeString AS "type_LargeString" , true AS "IsActiveEntity", false AS "HasActiveEntity", null AS "DraftAdministrativeData_DraftUUID", CASE WHEN DRAFTS.DRAFTADMINISTRATIVEDATA_DRAFTUUID IS NOT NULL THEN TRUE ELSE FALSE END AS "HasDraftEntity" FROM BeershopService_TypeChecksWithDraft active LEFT JOIN BeershopService_TypeChecksWithDraft_drafts drafts ON active.ID = drafts.ID ORDER BY active.ID ASC LIMIT $1

Looks like the "active AS " which is added to every column must be removed. Also the space betwen i.e. "active" .ID must be removed. "active".ID should work.

When switching to the edit mode of an existing entity the lib/pg/execute.js#L84 is executed:
results = results.map((result) => remapColumnNames(model.definitions[cqn.INSERT.into], result))
The value of cqn.INSERT.into that is: 'BeershopAdminService.Breweries_drafts' is not found in the model.definitions. It returns an undefined. So maybe adding a check here can provide a first workaround.

Quite some progress with draft support today. The read doesn't cause an exit anymore. PR #50 containes the adjustments I've made so far. @mikezaschka do you see a way that we can create the fields in table BeershopService_TypeChecksWithDraft_drafts respecting CASE? See my comment here.

I've tested the create and change with draft in the pg-beershop. Seems to work so far.


Repositories Categories

Can you add repository categories or tags?

Same as https://github.com/klaussilveira/gitlist/issues/380


Optimize ScalarValue list variant using Array trait object

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
This comes out from the arrow2 PR started by @jorgecarleitao. Here is a discussion on why it would be more efficient to model ScalarValue as dyn Array: https://github.com/apache/arrow-datafusion/pull/68#discussion_r706565686
Describe the solution you'd like
Change ScalarValue's List variant to:
List(Option<Arc<dyn Array>>, DataType),

Describe alternatives you've considered
Current way of warping every list value with a ScalarValue enum has a lot of overhead on read/write.
Additional context
We should probably wait for the arrow2 PR merge before starting to work on this.
https://github.com/apache/arrow-datafusion/pull/68#discussion_r707044869 has more discussion on how we can handle this in ballista's protobuf ser/de.

Closing in favor of   https://github.com/apache/arrow-datafusion/issues/7352 whihc offers a more modern proposal for this same idea. Otherwise known as "its happening!"


Mobile friendly css

Let’s get the CSS working for mobile users now before it gets too heavy

I have added stylings to hide the scrolly layout on screens < 900px


Code Readability Overhaul

The code needs to be overhauled and patched up with comments to allow easier refractoring and updates.

hey can I help?

Sure, you can just make a pull request. If you have any further questions: feel free to ask.

which code file should i excatly fill with comments?..

Code Readability in this case not only refers to adding comments, but also to overhaul some functions. Because some functions were written hastily to have a working prototype some parts need to be cleaned up and then pinned with comments.