Example for Piping the Response  to a File

This is not an issue.
Can you please give me example code to pipe response to writable file. ?
Example: How to write this below code in co-request ?
request('http://google.com/doodle.png').pipe(fs.createWriteStream('doodle.png'));

Hi @thiyaga123, please go to https://github.com/leukhin/co-request and Cmd/Ctrl + F "To pipe request you should use small helper". This will solve your question! :)
Good luck!

Hi
Thanks for the reply..
Sorry for noob question.
Could you please give me full example code that read from http and write to file.
I tried below code..  Compiler throwing below error.
error 1 : this.req is uindefined
error 2 : and pipe is undefined.
function pipeRequest( readable, requestThunk )
{
return function ( cb )
{
readable.pipe( requestThunk( cb ) );
}
}
var value = yield pipeRequest( this.req, request(   options ));

@thiyaga123 I think you have missed context of execution. Is it any chance to saw entire file?

Hi Dennis
I have attached the entire file.
Thank you
On 15 April 2015 at 18:52, Dennis Leukhin<EMAIL_ADDRESS>wrote:

@thiyaga123 https://github.com/thiyaga123 I think you have missed
context of execution. Is it any chance to saw entire file?
--
Reply to this email directly or view it on GitHub
https://github.com/leukhin/co-request/issues/16#issuecomment-93394234.

var Appconfig = require( "./config" );
var fs = require( "fs" );
var co = require( "co" );
var request = require( "co-request" );
var getDBObject = require( "./db" );
function DownloadFKData()
{
var dbObj = getDBObject( );
co(
    function*()
    {
        function pipeRequest( readable, requestThunk )
        {
            return function ( cb )
            {
                readable.pipe( requestThunk( cb ) );
            }
        }

        var FKresponse = yield request( Appconfig.Fk_ProductFeedAPI_Level1 );

        var FKResponsejson = JSON.parse( FKresponse.body );
        var ListofCategories = FKResponsejson.rawListings;

        for ( var categoryname in ListofCategories )
        {
            var category = ListofCategories [categoryname];
            //console.log( category.Variant.get );

            //Start Downloading Zip Files

            var options =

{
url: category.Variants.get,
headers: {
'Fk-Affiliate-Token': Appconfig.Fk_Affiliate_Token,
'Fk-Affiliate-Id' : Appconfig.Fk_Affiliate_Id
}
}
console.log( "Downloading :" + category.availableVariants['v0.1.0'].resourceName );
//var j = yield request( options );
var value = yield pipeRequest( this.req, request( options ) );//? how to save this response file ? !!!
            var i;
        }
    }
)
.then(
    function ( value )
    {

    },
function ( err )
    {
        console.log( err.stack );
    }

);

}
DownloadFKData( );

@thiyaga123 in your case you should try something like this:
function pipeRequest(requestThunk, readable) {
  return function (cb) {
    readable.pipe(requestThunk(cb));
  }
}
var availableVariants = fs.createWriteStream('variants.txt'); // For example it is a file
yield pipeRequest(request(options), availableVariants);

After that you should see your response in the file variants.txt.
i'm not sure for 100%, because I didnt tested this. But give it a try. And except of file use your needed destination source to save or process data.

Dear Dennis
Thanks again for the reply. I tried your implementation code..
i got below error:;
Debugger listening on port 5858
Downloading :bags_wallets_belts
Error: Cannot pipe. Not readable.
at WriteStream.Writable.pipe (_stream_writable.js:162:22)
at F:\Personal\Amazier.com\SmartShop\SrvSmartShop\import_fk.js:21:30
at
F:\Personal\Amazier.com\SmartShop\SrvSmartShop\node_modules\co\index.js:1
35:8
at thunkToPromise
(F:\Personal\Amazier.com\SmartShop\SrvSmartShop\node_modul
es\co\index.js:134:10)
at toPromise
(F:\Personal\Amazier.com\SmartShop\SrvSmartShop\node_modules\co
\index.js:118:55)
at next
(F:\Personal\Amazier.com\SmartShop\SrvSmartShop\node_modules\co\inde
x.js:98:29)
at onFulfilled
(F:\Personal\Amazier.com\SmartShop\SrvSmartShop\node_modules
co\index.js:68:7)
at runMicrotasksCallback (node.js:337:7)
at process._tickCallback (node.js:355:11)
On 16 April 2015 at 02:24, Dennis Leukhin<EMAIL_ADDRESS>wrote:

@thiyaga123 https://github.com/thiyaga123 in your case you should try
something like this:
function pipeRequest(requestThunk, readable) {
return function (cb) {
readable.pipe(requestThunk(cb));
}
}var availableVariants = fs.createWriteStream('variants.txt'); // For example it is a fileyield pipeRequest(request(options), availableVariants);
After that you should see your response in the file variants.txt.
i'm not sure for 100%, because I didnt tested this. But give it a try. And
except of file use your needed destination source to save or process data.
--
Reply to this email directly or view it on GitHub
https://github.com/leukhin/co-request/issues/16#issuecomment-93566766.


Istio Operator for Kubernetes

Are there some plans to create an Istio Operator for Kubernetes?
Istio has a very complex deployment scheme with multiple components. I realized from my experience using Helm to deploy/upgrade/manage such complex deployments that Helm has some limits.

Anything to get away from Helm would be great as all it does is add complexity and problems. Helm causes way more problems than it solves.

https://github.com/istio/istio/pull/10015
Early version of an operator for 1.1. Additional work is going on that will hopefully land in 1.2.

For folks following this work, the initial goal is to solve one very simple problem as simply as possible:
https://github.com/istio/istio/issues/9884

We've just released an open-source Istio operator, and would be very happy to receive some feedback. You can check out the repo here.

@martonsereg  This is amazing! Thank you. I'm using Kops to install k8s. The newest version of k8s Kops can install is 1.11, so the newest kubectl I can run in 1.12. Any chance this operator can work with kubectl 1.12?

@mabushey That’s a mistake in the readme I think, there shouldn’t be anything in the code that requires 1.13, so I think it should work with kubectl 1.12 as well, please give it a try.

@mabushey Hi, it should work just fine. We're gonna fix the requirements.

BTW this was created this week https://github.com/istio-ecosystem/istio-operator

Kiali has published an operator as well - so can be integrated when you want to pull in Kiali in your Istio environment. I was planning on incorporated it in the helm install stuff (I think Jaeger is doing this kind of thing, too, with their operator - of they are planning to if it is not done yet). It will be incorporated in the Maistra Istio operator soon as well.
See:
https://www.kiali.io/gettingstarted/
https://quay.io/repository/kiali/kiali-operator?tab=tags
The Kiali operator will be up on OperatorHub.io soon.

That's great - the istio operator will no longer incorporate the full manifests for addons like kiali, prom etc. but rather just pass through opaque config through to these "sub-operators". In most cases, users will probably just interact with the sub-operator directly, the pass-through function will be there for managed Istio cases.

Hi there! I'm confuse about what's the official state of the "Istio Operator" and I was hopping the community could throw some light.
@linsun who is behind the istio-ecosystem project? it's that going to be an "official" repo to support the istio operator?
@ostromart when you say istio operator which istio operator do you refer to? do you have a link you can provide? so far I can only see that PR you share a while back https://github.com/istio/istio/pull/10015#issuecomment-448481680 but that PR have been closed in favor of helm chart that doesn't use operators, or at least I can't find any reference to the operator sdk in here https://github.com/istio/istio/tree/master/install/kubernetes/helm
So far I have only found the banzaicloud operator and the maistra one
ta

The new "official" operator is going to take some code from those (the authors themselves will be merging gradually) and live in istio-ecosystem initially, likely moving into istio when it matures somewhat. So that also answers the "who's behind this" question: @rcernich (Red Hat), @martonsereg, @matyix, @waynz0r (BanzaiCloud) and me (Google), along with design contributions from various folks in environments WG and Istio TOC.
So far there are only internal docs but one of the checkins will be some public docs. Keep in mind it will take a while before the MVP is ready for folks to start playing with, this is something that will also be reflected in the repo docs.
Also the repo will be open for community contributions so we look forward to wider inputs into the project.

This work is being done in istio operator and istio installer if people wish to track it’s progress.

Alpha quality P0 item for 1.3.

Just to clarify, P0 items block a release.  The Istio project has specific guidelines around what blocks a release.  A new feature is not something that can generally block a release.  As a result, all operator work is P1+.

This is shipped! https://istio.io/docs/setup/install/operator/
There is still lots to do though, anyone interested please take a look at https://github.com/istio/operator/ or issues with the label area/environments/operator.


A checkbox can't be toggled with active IScroll

I've read that the current version of IScroll isn't really maintained anymore and that you (cubiq) work on IScroll TNG, so this is more of a heads up for people with the same issue as me than a request to fix it. I'm sure the next version of IScroll will take care of it anyway.
Version 5.1.3 of IScroll prevents checkboxes to be toggled (example: https://jsfiddle.net/ChristopherBrix/caz20168/).
I think the problem is that the click-end event isn't propagated to the checkbox. This can be fixed in line 1574 of the IScroll file by adding "&& !utils.preventDefaultException(e.target, this.options.preventDefaultException)" to the condition (example: https://jsfiddle.net/ChristopherBrix/9384wow8/).

I had an input (submit) button which wasn't clickable within an iScroll enabled area and this code change fixed the issue.


Navigation bar disappear when presented in a sheet.

If you present a ParchmentView in a NavigationView in a sheet for swiftUI, the navigation bar disappear when the first page title goes off screen.
In the ExampleApp. This is the code a used to reproduced the bug.
struct ExampleApp: App {
  @State var isPresentingDefault: Bool = false
  var body: some Scene {
    WindowGroup {
      NavigationView {
        List {
          Button("Default Sheet") { isPresentingDefault = true }
          NavigationLink("Default", destination: DefaultView())
          NavigationLink("Change selected index", destination: SelectedIndexView())
          NavigationLink("Lifecycle events", destination: LifecycleView())
          NavigationLink("Change items", destination: ChangeItemsView())
        }
        .navigationBarTitleDisplayMode(.inline)
        .sheet(isPresented: $isPresentingDefault, content: {
          NavigationView(content: {
            ChangeItemsView()
              .navigationTitle("Default")
              .navigationBarTitleDisplayMode(.inline)
          })
        })
      }
    }
  }
}

Hi @Scocher! Thanks for reporting the issue. Which iOS and Parchment version are you using? Your example seems to work just fine when I'm running on iOS 17, so maybe it's a SwiftUI bug that has been fixed by Apple?

I will close this, since it seems to be an apple bug.


Create ExternalUserAddedRemovedInTeams.yaml

This detection flags the occurrences of external user accounts that are added to a Team and then removed within
one hour.This data is a part of Office 365 Connector in Azure Sentinel.
More details: https://docs.microsoft.com/en-us/azure/sentinel/connect-office-365

Please make the suggested changes to the query. Additionally, when you did your PR it included the deletion of 2 files. Please re-submit your PR without the deletion of these files - Workbooks/AzureActivity.json and Workbooks/WorkbooksMetadata.json

There is a long pending separate PR on this which came in during this submission.
https://github.com/Azure/Azure-Sentinel/pull/796
Please let me know if that change should be merged in this.

There is a long pending separate PR on this which came in during this submission.
https://github.com/Azure/Azure-Sentinel/pull/796
Please let me know if that change should be merged in this.

Please make the suggested changes to the query. Additionally, when you did your PR it included the deletion of 2 files. Please re-submit your PR without the deletion of these files - Workbooks/AzureActivity.json and Workbooks/WorkbooksMetadata.json

There is a long pending separate PR on this which came in during this submission.
#796
Please let me know if that change should be merged in this.

okay, will have a look

Please make the suggested changes to the query. Additionally, when you did your PR it included the deletion of 2 files. Please re-submit your PR without the deletion of these files - Workbooks/AzureActivity.json and Workbooks/WorkbooksMetadata.json

There is a long pending separate PR on this which came in during this submission.
#796
Please let me know if that change should be merged in this.

okay, will have a look

@samikroy - I completed #796 and so you can remove the file deletion in this PR.

Thank you @shainw , have added back the files from master.
Please have a look and let me know for any changes.


Build ppc64le on azure

The linux-ppc64le build times out occasionally in travis, so we need to build it on azure. It's slower, but should require less manual intervention.

Checklist

[x] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


#181: Added support for reading Parquet INT64 with TIMESTAMP_MICROS logical type

Fixes #181

@morazow thank you!


Make Glide a gradle plugin

Instead of user having to install Glide, it can be made a gradle plugin and which will ease the burden of shipping it.
When originally glide was created, Gradle was not as ubiquitous as it is today. Also gradle can be downloaded by the wrapper script anyways and then which in turn can download glide/gae-sdk if required.

With version 0.9.x, glide is now a gradle plugin. Just add following to build.gradle:
buildscript {
    repositories { maven { url 'http://dl.bintray.com/kdabir/glide' }  }
    dependencies { classpath "io.github.kdabir.glide:glide-gradle-plugin:+" }
}
apply plugin: 'com.appspot.glide-gae'

and create groovlets in /app directory.
Still working on log of refinements.

Now glide is also available in gradle plugins portal.


Can't seem to get this to work in the browser

Hi,
I have a simple html page for now and I wanted to test logging in to a Solid pod and also retrieving the name from the pod to display "Hello Joe" or whatever.
I have added the two scripts to my html
<script src="solid-auth-client.bundle.js"></script>
<script src="solid-query-ldflex.bundle.js"></script>

I can log in and out.
but if I try this in the console,
await solid.data['https://mistermagoo.inrupt.net/profile/card#me'].name
I get the result undefined
If I try without the "card", I get an error
Error: Could not retrieve https://mistermagoo.inrupt.net/profile/ (401)
I think the syntax is correct, because I can enter this in the browser console
await solid.data['https://ruben.verborgh.org/profile/#me'].name
and get this result
h {id: ""Ruben Verborgh"@en", toString: ƒ, toPrimitive: ƒ}
I have tested this using your playground and that can read the name correctly, so it seems I am doing something wrong in my app.

This works for me on https://solid.github.io/ldflex-playground/
Are you sure you have the latest version of solid-query-ldflex.bundle.js?
I think you are probably hitting https://github.com/comunica/comunica/issues/311, which recently got fixed.

Actually, I don't know what went wrong last time, but I just installed it again from npm and it now works.
Thanks for helping.

Great to hear, thanks for testing!

Is there a good place to find the latest bundle?

It is part of the npm package, in the dist/solid-query-ldflex.bundle.js folder. And bleeding edge is at https://solid.github.io/query-ldflex/dist/solid-query-ldflex.bundle.js


Fix/repo path #835

Implemented #835

Hey @shamikakumar , thanks for your effort!
Couple of things:

Handling big repo/branch names. It looks truncated:

The basePath isn't close enough to the filename, which makes it less clear that the 2 forms the lakeFS path.

Requesting for the above changes, once fixed I'll be happy to approve and merge.

Codecov Report

Merging #866 into master will increase coverage by 3.80%.
The diff coverage is 72.38%.

@@            Coverage Diff             @@
##           master     #866      +/-   ##
==========================================
+ Coverage   41.26%   45.07%   +3.80%
==========================================
  Files         131      140       +9
  Lines       10146    10862     +716
==========================================
+ Hits         4187     4896     +709
+ Misses       5403     5333      -70
- Partials      556      633      +77

Impacted Files
Coverage Δ

api/client.go
4.65% <0.00%> (+1.14%)
:arrow_up:

auth/metadata.go
0.00% <0.00%> (ø)

block/adapter.go
0.00% <ø> (ø)

block/gs/adapter.go
0.00% <0.00%> (ø)

block/local/adapter.go
5.71% <0.00%> (-0.74%)
:arrow_down:

block/s3/adapter.go
0.00% <0.00%> (ø)

block/s3/inventory.go
58.00% <0.00%> (ø)

catalog/db.go
81.81% <ø> (+1.58%)
:arrow_up:

catalog/diff.go
18.51% <ø> (ø)

catalog/validate.go
94.44% <ø> (ø)

... and 50 more

Continue to review full report at Codecov.

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

@itaiad200 made a few changes, do review and let me know

Looks much better! Approved.


Synchronization issue with debian jessie

Hi all,
I've a baikal server (v0.2.6) running for several years without any issue.
I suppose since the upgrade of Debian version from wheezy to jessie, I can't synchronize my contacts and my calendars. I've tried to install a new instance (v0.4.5) to debug and same result.
With Sogo Connector, I can connect to baikal (it asks me the user/password) but no synchronization.
I've tried with the thunderbird add-on Cardbook and I have a log with error 500.
I have a return on "php -i  | grep mbstring".
Any idea ?

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/35612197-synchronization-issue-with-debian-jessie?utm_campaign=plugin&utm_content=tracker%2F294006&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F294006&utm_medium=issues&utm_source=github).

Hi @Philppe ,
Is there anything in your error logs?
What happens if you open the webdav endpoint directly in a browser? If there's an error there too it might give you a hint what's wrong.

Hi Evert,
I can see error 500 in apache access.log when I try to connect to an address books :
"PROPFIND /test/dav.php/addressbooks/philippe/default/ HTTP/1.1" 500 644 "-" "Thunderbird Lightning/4.0.8"
What do you mean by "open webdav endpoint" ?
If it means access to the baikal dashboard, I can access to it without error.
Thank you for your help

I've written the url of the address book in a  browser and I get an xml page with error :
<d:error>
<s:sabredav-version>3.1.3</s:sabredav-version>
<s:exception>LogicException</s:exception>
<s:message>Requested uri (/test/dav.php/addressbooks/philippe/default) is out of base uri (/html/dav.php/)</s:message>
</d:error>

Are you using url rewriting? If so, stop doing that!

Because the problem here is that you are accessing your server with :
/test/dav.php/

and the server expects it to be:
/html/dav.php/

I'm really sorry but I don't understand.
If you use the virtualhost given by the example with
"DocumentRoot /var/www/test/html"
I can access with test/dav.php which mean /test/html/dav.php
No ?

sorry for my bad skills with apache but before the upgrade, everything works well.
And even if my config was bad, it worked.

url rewriting means Alias in a apache config file ?

I remove the Alias conf and created a virtualhost as the example.
And it works.
Thank you Evert but I would to understand what is the difference between the two configurations (Alias vs Virtualhost) ?

Hi Philippe,
That question is a little bit too broad for me to give you a useful answer. If you are interested in the subject, I would suggest to sit down and properly learn it. Maybe buy a book or study the apache manual.

Thank you for your help


Refactor CacheControl parser to handle multiple headers.

This commit refactors the CacheControl parsing logic to handle multiple "Cache-Control" headers. The previous implementation treated each header independently, returning an array of CacheControl objects. This caused issues when headers had directives that should be combined into a single CacheControl object. The updated implementation combines all directives from all headers into a single CacheControl object, ensuring accurate representation of the caching directives.

What I'm not yet certain about is how to avoid parsing multiple times during a request's lifecycle. It seems to be a complex change because it involves modifying several classes/methods.


RHIDP-3480 fixes typo

Version(s):

Issue:

Link to docs preview:

Reviews:

[ ] SME: @ mention assignee
[ ] QE: @ mention assignee
[ ] Docs review: @ mention assignee

Additional information:

/cherrypick 1.2.x

/cherrypick 1.2.x


Added sections below image base

Given that gummiboot and other stubs rely on the now-deprecated handover protocol, I'm writing my own little stub loader.
The loader by itself "runs" and can inspect its own PE table to find PE sections (e.g.: the kernel, cmdline, initrd). However, I'm having a hard time assembling a binary which actually contains the stub plus these three.
I'm basically using the following:
efi-mkuki \
  -c /proc/cmdline \
  -o ESP/efi/boot/bootx64.efi \
  -S target/x86_64-unknown-uefi/debug/hello-uefi.efi \
  /efi/vmlinuz-edge \
  /efi/initramfs-edge

Which warns:
objcopy: ESP/efi/boot/bootx64.efi:.osrel: section below image base
objcopy: ESP/efi/boot/bootx64.efi:.cmdline: section below image base
objcopy: ESP/efi/boot/bootx64.efi:.linux: section below image base
objcopy: ESP/efi/boot/bootx64.efi:.initrd: section below image base

Indeed, it seems that the new sections are added to the begging of the file, not to the end of it:
> objdump --section-headers ESP/efi/boot/bootx64.efi

ESP/efi/boot/bootx64.efi:     file format pei-x86-64

Sections:
Idx Name          Size      VMA               LMA               File off  Algn
  0 .osrel        000000bc<PHONE_NUMBER>020000<PHONE_NUMBER>020000  00000400  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  1 .cmdline      000000c2<PHONE_NUMBER>030000<PHONE_NUMBER>030000  00000600  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  2 .linux        0061ed60<PHONE_NUMBER>000000<PHONE_NUMBER>000000  00000800  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  3 .initrd       02bdccec<PHONE_NUMBER>000000<PHONE_NUMBER>000000  0061f600  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  4 .text         00017bf5<PHONE_NUMBER>001000<PHONE_NUMBER>001000  031fc400  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  5 .rdata        0000423a<PHONE_NUMBER>019000<PHONE_NUMBER>019000  03214000  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  6 .data         00000068<PHONE_NUMBER>01e000<PHONE_NUMBER>01e000  03218400  2**4
                  CONTENTS, ALLOC, LOAD, DATA
  7 .eh_fram      00000040<PHONE_NUMBER>01f000<PHONE_NUMBER>01f000  03218600  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  8 .reloc        00000314<PHONE_NUMBER>020000<PHONE_NUMBER>020000  03218800  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA

For reference, this is by stub before running mkuki:
> objdump --section-headers target/x86_64-unknown-uefi/debug/hello-uefi.efi

target/x86_64-unknown-uefi/debug/hello-uefi.efi:     file format pei-x86-64

Sections:
Idx Name          Size      VMA               LMA               File off  Algn
  0 .text         00017bf5<PHONE_NUMBER>001000<PHONE_NUMBER>001000  00000400  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .rdata        0000423a<PHONE_NUMBER>019000<PHONE_NUMBER>019000  00018000  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  2 .data         00000068<PHONE_NUMBER>01e000<PHONE_NUMBER>01e000  0001c400  2**4
                  CONTENTS, ALLOC, LOAD, DATA
  3 .eh_fram      00000040<PHONE_NUMBER>01f000<PHONE_NUMBER>01f000  0001c600  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  4 .reloc        00000314<PHONE_NUMBER>020000<PHONE_NUMBER>020000  0001c800  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA

The resulting binary doesn't run. I'm pretty sure that it is not valid due to the order of the sections (e.g.: the image base should be at the beginning). However, I can't figure out how to force a different order.
For reference, using mkuki with gummiboot's stub results in a different ordering:
> objdump --section-headers EFI/Linux/alpine-edge-6.1.11-0.efi

EFI/Linux/alpine-edge-6.1.11-0.efi:     file format pei-x86-64

Sections:
Idx Name          Size      VMA               LMA               File off  Algn
  0 .text         00005e90<PHONE_NUMBER>003000<PHONE_NUMBER>003000  00000400  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .reloc        0000000c<PHONE_NUMBER>009000<PHONE_NUMBER>009000  00006400  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  2 .data         00001e88<PHONE_NUMBER>00a000<PHONE_NUMBER>00a000  00006600  2**4
                  CONTENTS, ALLOC, LOAD, DATA
  3 .dynamic      000000f0<PHONE_NUMBER>00c000<PHONE_NUMBER>00c000  00008600  2**2
                  CONTENTS, ALLOC, LOAD, DATA
  4 .rela         00000e58<PHONE_NUMBER>00d000<PHONE_NUMBER>00d000  00008800  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  5 .dynsym       000003a8<PHONE_NUMBER>00e000<PHONE_NUMBER>00e000  00009800  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  6 .osrel        000000c7<PHONE_NUMBER>020000<PHONE_NUMBER>020000  00009c00  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  7 .cmdline      000000c2<PHONE_NUMBER>030000<PHONE_NUMBER>030000  00009e00  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  8 .linux        005d41a0<PHONE_NUMBER>000000<PHONE_NUMBER>000000  0000a000  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
  9 .initrd       02b44cd0<PHONE_NUMBER>000000<PHONE_NUMBER>000000  005de200  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA

I tried using objcopy manually, but ended up having the same issue. Any ideas how to address this?

FWIW, I also tried using objcopy directly like this:
objcopy \
  --preserve-dates \
  --enable-deterministic-archives \
  --add-section ".kernel=$KERNEL" --set-section-flags .kernel=code,readonly \
  --add-section ".cmdline=$CMDLINE" --set-section-flags .cmdline=data,readonly \
  --add-section ".initrd=$INITRD" --set-section-flags .initrd=data,readonly \
  target/x86_64-unknown-uefi/debug/hello-uefi.efi \
  ESP/efi/boot/bootx64.efi

But the result in the same.

@WhyNotHugo -- did you ever figure out how to resolve or work around this problem?
I was successfully using efi-mkuki until changing the kernel that I'm using from 5.15 to 6.8, and my base OS image from Ubuntu 22.04LTS to Ubuntu 24.04LTS.
I now have the object loaded below base error too.

I couldn't figure out how to make this work with efi-mkuki; I still don't fully understand all the parts in play here.
At the time, I wrote my own custom code using a library that handled PE for this.  I can't seem to find any of it now, sorry.

I found the problem to be /usr/lib/systemd/boot/efi/linuxx64.efi.stub that is included in Ubuntu 24.04LTS's systemd-efi-bin package.  Using this stub to produce the unified kernel image results in the following warning from objcopy:
objcopy:/tmp/NEW_ROOT1224/boot/efi/EFI/ubuntu/vmlinuz.efi:.osrel:sectionbelowimagebase
objcopy:/tmp/NEW_ROOT1224/boot/efi/EFI/ubuntu/vmlinuz.efi:.cmdline:sectionbelowimagebase
objcopy: /tmp/NEW_ROOT1224/boot/efi/EFI/ubuntu/vmlinuz.efi:.linux: section below image base
objcopy:/*mp/NEW_ROOT1224/boot/efi/EFI/ubuntu/vmlinuz.efi:.initrd:section below image base
And the resulting EFI binary will not boot.
If I copied the same file from an Ubuntu 22.04LTS system (in systemd package) and used that instead, I got an EFI binary that boots.
So, at least for now, that is my work-around.


[feat/v2] allow custom prefix in baseStyles

Closes #
📝 Description

Add a brief description

⛳ Current behavior (updates)

Please describe the current behavior that you are modifying

🚀 New behavior

Please describe the behavior or changes this PR adds

💣 Is this a breaking change (Yes/No):

📝 Additional Information

Hey @camcam2605 , NextUI semantic values are already prefixed by the plugin https://github.com/nextui-org/nextui/blob/feat/v2/packages/core/theme/src/plugin.ts#L137C1-L138


bpy.ops.object.select_by_layer could not be found

While calling most of the utility functions I get errors like the following. I use NixOS so it might be due to unusual libraries locations, but shouldn't really.
Any ideas?
Traceback (most recent call last):
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/code.py", line 90, in runcode
    exec(code, self.locals)
  File "<blender_console>", line 1, in <module>
  File "/home/mix/repos/blender-scripting/scripts/utils/__init__.py", line 129, in removeAll
  File "/nix/store/lbd3a6hzkjkljyy03y5rsfaf9ih325dp-blender-2.80/share/blender/2.80/scripts/modules/bpy/ops.py", line 201, in __call__
    ret = op_call(self.idname_py(), None, kw)
AttributeError: Calling operator "bpy.ops.object.select_by_layer" error, could not be found

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/nix/store/lbd3a6hzkjkljyy03y5rsfaf9ih325dp-blender-2.80/share/blender/2.80/scripts/modules/console_python.py", line 168, in execute
    is_multiline = console.push(line_exec)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/code.py", line 258, in push
    more = self.runsource(source, self.filename)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/code.py", line 74, in runsource
    self.runcode(code)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/code.py", line 94, in runcode
    self.showtraceback()
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/code.py", line 142, in showtraceback
    lines = traceback.format_exception(ei[0], ei[1], last_tb.tb_next)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 121, in format_exception
    type(value), value, tb, limit=limit).format(chain=chain))
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 508, in __init__
    capture_locals=capture_locals)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 363, in extract
    f.line
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 285, in line
    self._line = linecache.getline(self.filename, self.lineno).strip()
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/linecache.py", line 16, in getline
    lines = getlines(filename, module_globals)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/linecache.py", line 47, in getlines
    return updatecache(filename, module_globals)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/linecache.py", line 137, in updatecache
    lines = fp.readlines()
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x91 in position 3495: invalid start byte

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/nix/store/lbd3a6hzkjkljyy03y5rsfaf9ih325dp-blender-2.80/share/blender/2.80/scripts/startup/bl_operators/console.py", line 55, in execute
    return execute(context, self.interactive)
  File "/nix/store/lbd3a6hzkjkljyy03y5rsfaf9ih325dp-blender-2.80/share/blender/2.80/scripts/modules/console_python.py", line 172, in execute
    stderr.write(traceback.format_exc())
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 167, in format_exc
    return "".join(format_exception(*sys.exc_info(), limit=limit, chain=chain))
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 121, in format_exception
    type(value), value, tb, limit=limit).format(chain=chain))
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 521, in __init__
    self._load_lines()
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 533, in _load_lines
    self.__context__._load_lines()
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 531, in _load_lines
    frame.line
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/traceback.py", line 285, in line
    self._line = linecache.getline(self.filename, self.lineno).strip()
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/linecache.py", line 16, in getline
    lines = getlines(filename, module_globals)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/linecache.py", line 47, in getlines
    return updatecache(filename, module_globals)
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/linecache.py", line 137, in updatecache
    lines = fp.readlines()
  File "/nix/store/k5rdcbcwwpvj7l9f1yvd5mfggcfz16kk-python3-3.7.5/lib/python3.7/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x91 in position 3495: invalid start byte

location: <unknown location>:-1

Reproduced with blender 2.81

your "SELECT" line solved it
now ao_blend_type has been removed in blender 2.80 https://docs.blender.org/api/current/change_log.html#id332 (when running fisher_iris_visualization.py)

Also getting this error.  I guess a "breaking change" in later Blenders.

The scripts are updated now for Blender 2.8+, all of the scripts should be working again.


"Install GitHub Copilot" button cannot be removed

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.95.3 (Universal)
OS Version: Darwin arm64 24.1.0

Steps to Reproduce:

Open a blank VSCode profile that does not have any extension - including the "GitHub Copilot" extension - installed.
Check the space to the right of the search bar.
Notice the GitHub Copilot button prompting you to install it:

I have no interest in using GitHub Copilot, and I have no desire seeing this button. This button was not there in the September release, but it is there in the October release. There is no preference to disable this button, so this is a regression.

Oh, you can actually remove it.
"chat.commandCenter.enabled": false

and that's exposed to the right-click customize UI thingie as "Chat Controls", too. Well, nevermind then.


Finetune also suffers "one of the variables needed for gradient computation has been modified by an inplace operation"

I'm using the command as specified in the README (python train_finetune.py --config_path ./Configs/config_top19.yml), and got this error (which seems related to the DDP bug?):
Epochs: 12
Validation loss: 0.341, Dur loss: 0.620, F0 loss: 3.076

Saving..
Traceback (most recent call last):
  File "/home/ck/git/StyleTTS2/train_finetune.py", line 714, in <module>
    main()
  File "/opt/conda/lib/python3.10/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/opt/conda/lib/python3.10/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/opt/conda/lib/python3.10/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/opt/conda/lib/python3.10/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/home/ck/git/StyleTTS2/train_finetune.py", line 509, in main
    loss_gen_lm.backward()
  File "/opt/conda/lib/python3.10/site-packages/torch/_tensor.py", line 492, in backward
    torch.autograd.backward(
  File "/opt/conda/lib/python3.10/site-packages/torch/autograd/__init__.py", line 251, in backward
    Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation:
torch.cuda.FloatTensor [1, 1, 1]] is at version 3; expected version 1 instead. Hint: enable anomaly detection to find the operation that failed to compute its gradient, with torch.autograd.set_detect_anomaly(True).

The only changes made to the config shouldn't be significant:
...
5,6c5,6
< epochs: 20
< batch_size: 16
---
> epochs: 50 # number of finetuning epoch (1 hour of data)
> batch_size: 8
95,96c95,96
<     diff_epoch: 4 # style diffusion starting epoch
<     joint_epoch: 12 # joint training starting epoch
---
>     diff_epoch: 10 # style diffusion starting epoch
>     joint_epoch: 30 # joint training starting epoch
...

Since the arose at the 12th epoch, wonder if it has something to do with joint training.

Duplicate issue: https://github.com/yl4579/StyleTTS2/issues/72


flutter web how to use package and plugin?

Skipping compiling  xx_web_entrypoint.dart with ddc because some of tis transitive libraries have sdk dependencies that not supported on this platform

Do you import dart:io?

Not clear what you you want to know? Please provide more information.
Please also add the output of flutter doctor - v here.

Thank you for response!
If pacakes or plugin  don't support the web, how do skip these compilations when compiling the web。

The underlying issue is covered in https://github.com/flutter/flutter/issues/39998. The TLDR is that there is currently no way to do so. Longer-term TBD


Retrieve not visible selectedNodes

I am trying to retrieve selected nodes in a tree that can be open or closed :

The goal is to display the number of selected leafs independently of whether the tree is opened or closed

I couldn't find a way of getting this info using the available API because selectedNodes are filtered based on visibleNodes. If I use the selectedIds the issue I encounter is filtering out the ids that don't correspond to leafs

Hello @sandragjacinto, thank you for the screenshots. I understand your issue. As a work around for today, you'll need to use the tree.root property and the tree.selectedIds property.
First make a function that flattens the nodes in the tree based on the root node. Here's a modified version of the flattenTree(root) function found in src/data/create-list.ts.
function flattenTree<T>(root: NodeApi<T>): NodeApi<T>[] {
  const list: NodeApi<T>[] = [];
  function collect(node: NodeApi<T>) {
    if (node.level >= 0) list.push(node);
    node.children?.forEach(collect);
  }
  collect(root);
  return list;
}

So your code would looks something like this:
function getAllSelectedNodes(tree: TreeApi<any>) {
  const list = flattenTree(tree.root);
  return list.filter(node => tree.selectedIds.has(node.id))
}

Hello @sandragjacinto, thank you for the screenshots. I understand your issue. As a work around for today, you'll need to use the tree.root property and the tree.selectedIds property.
First make a function that flattens the nodes in the tree based on the root node. Here's a modified version of the flattenTree(root) function found in src/data/create-list.ts.
function flattenTree<T>(root: NodeApi<T>): NodeApi<T>[] {
  const list: NodeApi<T>[] = [];
  function collect(node: NodeApi<T>) {
    if (node.level >= 0) list.push(node);
    node.children?.forEach(collect);
  }
  collect(root);
  return list;
}

So your code would looks something like this:
function getAllSelectedNodes(tree: TreeApi<any>) {
  const list = flattenTree(tree.root);
  return list.filter(node => tree.selectedIds.has(node.id))
}

thanks ! this worked well I just had to adapt the flattenTree code so the condition pushes to list when node has not children (AKA is a leaf) instead of node.level (since i don't know beforehand the number of levels my tree will have) 👌
thanks for the reply

hi @jameskerr  thanks ! this worked well I just had to adapt the flattenTree code so the condition pushes to list when node has not children (AKA is a leaf) instead of node.level (since i don't know beforehand the number of levels my tree will have) 👌
thanks for the reply

Awesome, glad it worked!


how can i get current route name in dingo?

how can i get current route name in dingo?

You have to use laravel/lumen own api.  I am not sure if you can get courent route name when you are in a middleware .
What error do you have?

this issue is related with laravel. with simple google search, you can find how to get name.
for example; keyword: "laravel get current route name"
feeling lucky: http://stackoverflow.com/questions/30046691/how-to-get-current-route-name-in-laravel-5
:)

thank you


nixos/no-x-libs: add gst-plugins-bad, gst-plugins-rs

Description of changes

Things done

Built on platform(s)

[ ] 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.05 Release Notes (or backporting 22.11 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.

The gst-plugins-base hack is very similar to https://github.com/NixOS/nixpkgs/pull/231185/files#diff-bd924545a322bae41a5f57f50113281417c8ea50fec7801f606840410f492164R169


Initial support for Pico 2 (squashed version of PR 77368)

In the interest of getting the work from PR #77368 finally merged into upstream main, this PR proposes the exact same change set with the only difference being:
The following commits have been squashed together. As per our contribution guidelines, sign-off entry of the original author has been kept intact, and I've added mine as well:
SoC:

Relevant part of "rp2350: Define and implement a cpucluster of Cortex-M33s" squashed into:
soc: rp2350: Add initial support for the Raspberry Pi RP2350

Board:

Relevant part of "rp2350: Define and implement a cpucluster of Cortex-M33s" and
"doc: rpi_pico2: Document Raspberry Pi Pico 2 and related changes" squashed into:
"boards: Add initial support for the Raspberry Pi Pico 2"

5c39bb2 looks like it's both authored by and committed by kartben.
This, maintainers (@soburi @carlescufi @nordicjm), is why I really really really tried so many times to discourage futzing around and rebasing code. It's such an easy mistake to fall into exactly this, where as far as git's history will record (and gitlens et al will show when people are reviewing this), all of the work in that commit was done by @kartben .
It's really late in the evening in my timezone. I understand and am grateful kartben has put the effort it and actually did something in front of a keyboard., but man am I pretty blue that the finale of this was a rush-job approval that ended up with this artefact.

That's why the repeated requests were made "in good faith of reviewers."
It was clear from the beginning that the terms you agreed to when you committed this code allowed you to do this. As explained before, editing by committers is a common practice in OSS, including Linux development, and there is nothing to prevent this.
When the vote result was announced, you had no choice but to fix it yourself or accept it if someone else fixes it. However, by not following the instructions of the vote, you refused to reach a consensus. And by refusing even yesterday's update by the maintainer, you also refused the last chance to merge in your name.
Escalation is provided for when consensus cannot be reached, and refusing to accept the result of the vote can only be interpreted as a refusal to reach a consensus with this project and the community.
If consensus cannot be reached, it is clear that the only option is to proceed based on the terms and written agreement. That is what the terms and agreement are for.

the last chance to merge in your name.

@soburi , that's not what I'm talking about.  I am talking about the difference between a committer and an author within git. Please take this as constructive feedback: quite often when I try and raise a question about one topic you confidently reply about something else, often at great length. This makes it quite challenging to move the conversation forward.
Please go and look at https://github.com/zephyrproject-rtos/zephyr/commit/5c39bb22a0caff1ace4d360a9e0f2f7066c55dfc . In the process of squashing, both the author (which should be me), and the committer have changed. IMHO former is not correct, the latter is. I really don't think kartben meant to do that: they didn't do it in their previous version of the PR, but post-review feedback they did.

Hi @ajf58

Please go and look at 5c39bb2 . In the process of squashing, both the author (which should be me), and the committer have changed. IMHO former is not correct, the latter is. I really don't think kartben meant to do that: they didn't do it in their previous version of the PR, but post-review feedback they did.

Let me try to explain the thought process here.
You initially asked me to drop your sign-off from the squashed commits as a way to express your discontent regarding how this was in your opinion not needed. So initially, when I pushed to your branch, squashed commit was "author: Benjamin, sign-off: Benjamin, Co-authored-by: Andrew". The fact your sign-off had been dropped was an OK thing to do as per my interpretation of the DCO, in particular clause (b). However, our guidelines require require to not remove existing sign-off.
So the second iteration, in this PR and what ended up being merged, I tried to convey the same thing you'd asked me to, by also taking into account your sign-off had to be there. So I put myself as author of the commit (arguably I did some, albeit a very very small portion, work on it, so it's hopefully not incorrect) as a way to not be in a situation where you'd be both author and sign-off (as you probably know, our compliance checks require that the git author appears in the list of sign-offs), as you'd explicitly told me you didn't want that.
So in the end it's "Author: Benjamin, Sign-off: Benjamin, Sign-off: Andrew". What's arguably missing is Co-authored-by: Andrew but 1/ like you mentioned, it's not really a git "native" thing, and in Zephyr sign-off typically implies (co-)authorship and 2/ it doesn't look like tools like Gitlens care about Co-authored-by anyway, although apparently GitHub does https://github.com/zephyrproject-rtos/zephyr/commit/e58dfac3742c4d7c675ebe92a0992619c957702d.
So yes you're right, perhaps it was rushed in that you would have in fact been happy with both being git author and sign-off entry in the squashed commit in the end (I'd reached to you about that, and I should have probably waited longer to hear back from you, as you'd maybe change your mind, so I'm sorry I didn't), or that I should have added Co-authored-by in addition to Sign-off even if it felt redundant to me -- looks like maybe it wasn't.

Edit: I don't think there's any practical[1] way to change this after the fact. I do feel it's reasonable to recognise (for my self) and state (to others) my thoughts and feelings about this.

Yep, that's perfectly reasonable and understandable.

I really don't think kartben meant to do that: they didn't do it in their previous version of the PR, but post-review feedback they did.

And to be extra clear: yes, I of course had no intention to come across as claiming authorship in any way, and would have been happy for my name to not even appear on the commits at all had it been an option :)

This, maintainers (@soburi @carlescufi @nordicjm), is why I really really really tried so many times to discourage futzing around and rebasing code. It's such an easy mistake to fall into exactly this, where as far as git's history will record (and gitlens et al will show when people are reviewing this), all of the work in that commit was done by @kartben .

@ajf58 just a quick note here: the rebasing/squashing that was originally requested in your PR was to be done and signed off entirely by you, so at that point I don't think there was any risk of mismatching authorship in commits. Of course, the moment a second person got involved then this "issue" suddenly appeared and creative usage of Git commit author, signed-off-by and co-authored-by was required in order to try and reflect the reality of things in the commits.

the last chance to merge in your name.

@soburi , that's not what I'm talking about. I am talking about the difference between a committer and an author within git. Please take this as constructive feedback: quite often when I try and raise a question about one topic you confidently reply about something else, often at great length. This makes it quite challenging to move the conversation forward.
Please go and look at 5c39bb2 . In the process of squashing, both the author (which should be me), and the committer have changed. IMHO former is not correct, the latter is. I really don't think kartben meant to do that: they didn't do it in their previous version of the PR, but post-review feedback they did.
Edit: I don't think there's any practical[1] way to change this after the fact. I do feel it's reasonable to recognise (for my self) and state (to others) my thoughts and feelings about this.
[1] No one is going to force-push to main to change this, for many reasons, and I don't expect them to.

I apologize if that was an inappropriate comment.
I appreciate your point and advice.


COR-480: add missing text styles

COR-470 / COR-480
while writing the theme for the text areas, I noticed several missing text styles

added the missing text styles
adjusted text story in storybook
used correct styles in input & formcontrols and buttons

/lgtm


python312Packages.enocean: remove enum-compat

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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/)
24.11 Release Notes (or backporting 23.11 and 24.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.

Add a :+1: reaction to pull requests you find important.

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

5 packages built:

home-assistant-component-tests.enocean
python311Packages.enocean
python311Packages.enocean.dist
python312Packages.enocean
python312Packages.enocean.dist

Can you explain the rationale in the commit message?


Add RibbonPanel.addCheckBox method for adding check boxes

xref: #85

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.02%) to 73.906%

Files with Coverage Reduction
New Missed Lines
%

pyqtribbon/panel.py
1
81.92%

Totals

Change from base Build<PHONE_NUMBER>1:
0.02%

Covered Lines:
980

Relevant Lines:
1326

💛  - Coveralls


Update trust domain proto messages to support static federation relationships

This PR updates the trustdomain proto messages to support static federation relationships according to the discussion in: #2260
Signed-off-by: Marcos Yedro<EMAIL_ADDRESS>

We talked about this IRL during the contributor sync meeting. @evan2645 suggested we punt on if/how static relationships are reflected in the API for the first release. The group agreed on that course of action.

Closing this PR according to what we discussed in contributor sync meeting. The current API design seems to cover well the dynamic federation relationships use case and also leaves enough room for introducing the static federation relationship management in the future in a back-compatible way.
I don’t think any other change is needed at this point.


⚠ Science Web Services - QState has degraded performance

In 0cc043c, Science Web Services - QState (https://sws.labbricks.com/qstate/) experienced degraded performance:

HTTP code: 523
Response time: 3157 ms

Resolved: Science Web Services - QState performance has improved in 928d080 after 12 minutes.


chore(deps) bump lua_system_constants to 0.1.2

@thefosk yes, because of the Travis cache. The dep update fails because the cache contains the old shared object, and that obj is referenced when running the tests, testing the 0.1.2 Lua file against the 0.1.1 .so. Updating this rock in master resolves this travis cache conflict.
Would you like me to flush the cache to re-run tests?

@p0pr0ck5 yes please, let's flush the cache

Running now, but the make dep failure is no longer manifest (as expected).


Disable PDF generation

Thank you @KonradSzwarc for such a nice tool.
Is your feature request related to a problem? Please describe.
I have a PDF version of my resume created using LaTeX. I don't need to create a pdf version using zenit.
Describe the solution you'd like
Would it be possible to disable the PDF generation and only keep the web versioin?
Describe alternatives you've considered
I can ignore the pdf generation but it take effort to maintain both the web version and the pdf version.
Additional context
As an example, if I can just disable the pdf generation, I don't need to deal with errors like the following.
[og] npm run generate:og exited with code 0
24:01:16 [200] /pdf/ 6ms
[pdf] /Users/leima/git/github/emptymalei/leima/node_modules/puppeteer-core/src/cdp/ExecutionContext.ts:531
[pdf]     throw new Error(
[pdf]           ^
[pdf]
[pdf]
[pdf] Error: Execution context was destroyed, most likely because of a navigation.
[pdf]     at rewriteError (/Users/leima/git/github/emptymalei/leima/node_modules/puppeteer-core/src/cdp/ExecutionContext.ts:531:11)
[pdf]     at async ExecutionContext.#evaluate (/Users/leima/git/github/emptymalei/leima/node_modules/puppeteer-core/src/cdp/ExecutionContext.ts:447:7)
[pdf]     at async ExecutionContext.evaluate (/Users/leima/git/github/emptymalei/leima/node_modules/puppeteer-core/src/cdp/ExecutionContext.ts:292:12)
[pdf]     at async IsolatedWorld.evaluate (/Users/leima/git/github/emptymalei/leima/node_modules/puppeteer-core/src/cdp/IsolatedWorld.ts:194:12)
[pdf]     at async CdpFrame.evaluate (/Users/leima/git/github/emptymalei/leima/node_modules/puppeteer-core/src/api/Frame.ts:472:12)
[pdf]     at async CdpPage.evaluate (/Users/leima/git/github/emptymalei/leima/node_modules/puppeteer-core/src/api/Page.ts:2219:12)
[pdf]     at async removeAstroToolbar (/Users/leima/git/github/emptymalei/leima/cli/helpers.ts:79:3)
[pdf]     at async visitPage (/Users/leima/git/github/emptymalei/leima/cli/helpers.ts:69:3)
[pdf]     at async generatePdf (/Users/leima/git/github/emptymalei/leima/cli/commands/pdf.ts:29:3)
[pdf]     at async forAllPages (/Users/leima/git/github/emptymalei/leima/cli/helpers.ts:55:7)
[pdf]
[pdf] Node.js v20.17.0
[pdf] npm run generate:pdf exited with code 1
file:///Users/leima/git/github/emptymalei/leima/node_modules/execa/lib/return/final-error.js:6
        return new ErrorClass(message, options);
               ^

I think removing the generate:pdf command from your package.json should solve the problem of automatic PDF creation. If you're sure you won't need PDF generation, you can also delete the src/pages/pdf and src/pdf directories. Let me know if that solves your issue.

It worked. Thanks @KonradSzwarc


google-map-react supports Polygons?

Does it supports Polygons? If don't, will it support in the future or is there another way to draw polygons?

I have locally working examples like this example.
This examples are based on current version of google-map-react.
So it supports polygon and even vector tiles drawing,
but I need a time to publish all of this.
And looks like next month or two almost all my time is taken by the other projects.

Could you explain just a little how you did it or give me a direction please?

You could convert by yourself any point from lat-lng coordinates to screen pixels coordinates.
So you could place svg object as like as any other object inside GoogleMap, and calculate polygon path points something like in below pseudocode.
Lets North West corner of SVG has coords svgNW
Get this two functions
function latLng2World({lat, lng}) {
  const sin = Math.sin(lat * Math.PI / 180);
  const x = (lng / 360 + 0.5);
  let y = (0.5 - 0.25 * Math.log((1 + sin) / (1 - sin)) / Math.PI);

  y = y < -1 // eslint-disable-line
    ? -1
    : y > 1
      ? 1
      : y;
  return {x, y};
}

function world2Screen({x, y}, zoom) {
   const scale = Math.pow(2, zoom);
   return {
      x: x * scale * TILE_SIZE // TILE_SIZE = 256,
      y: y * scale * TILE_SIZE
   }
}

and convert
const pt = {lat: SOME_LAT, lng: SOME_LNG);
const ptScreen =  world2Screen(latLng2World(pt), zoom)
const ptCorner = world2Screen(latLng2World(svgNW), zoom)

result = { // YOU GOT THE PIXEL COORDINATES OF LAT-LNG POINT pt INSIDE SVG IN px
  x: ptScreen.x - ptCorner.x,
  y: ptScreen.y - ptCorner.y,
}

just add some minimal checks on borders and all fine.
Is it clear?

Also if you need for some reasons conversion from world coord into lat lng this
will be helpful
function world2LatLng({x, y}) {
  const n = Math.PI - 2 * Math.PI * y;

  return {
    lat: (180 / Math.PI * Math.atan(0.5 * (Math.exp(n) - Math.exp(-n)))),
    lng: x * 360 - 180,
  };
}

I did it in other way - I precompute world coords of polygons on server side, and place svg on tile offsets position, so my math more simple at client than above

I think I got it. Thank you!

Ok, I solved some of my questions. I just don't know if this is the best way.
First I listen to onGoogleApiLoaded. When its loaded, I fetch the coordinates and zoom and center the map with this:
var bounds = new google.maps.LatLngBounds();
for (var i = 0; i < ids.length; i++) {
  const latLng = new google.maps.LatLng(coordenates[i].lat, coordenates[i].lng);
  bounds.extend(latLng);
}
map.fitBounds(bounds);

This trigger the onBoundsChange and I get the bounds, center and zoom.
Now I'm stuck in another problem. I used those functions to create the points, but its not returning all the points. I plotted in red the Google Maps Polygon and in blue the svg. Do you have any idea whats is wrong? I'm using topLat, leftLng to generate the points and to insert the svg component.
const ptCorner = world2Screen(latLng2World({lat: bounds[0], lng: bounds[1]}), zoom);

  {polylines}

Ok, I found the problem. I had to set width and height for the svg component:
var width = this.refs.map.offsetWidth;

How do I hover over a svg? I tried the x_distance_hover example with the props.$hover. Also tried using ommouseover on  and in css using polyline:hover. But none of this worked.

onMouseEnter onMouseLeave on svg path should work.

@lucasmogari thanks for sharing your progress. If you were able to document a simple example for the README once you get done, that would be a great help!

onMouseEnter and onMouseLeave works, but it only receives the DOM element. How do I know what react component had the mouse over?
@mbrookes I will do that when I finish this.

onMouseEnter={(e) => this.onMouseEnter(e, anyPropOrKeyOrAnyIdYouWant)}

@istarkov Thanks for the work on this library! Is there an example of polygons somewhere public?
Best,
Jon

@mbrookes @jontonsoup I've pushed an example of using this lib with polygons:
https://github.com/lucasmogari/google-map-react-example

@istarkov, does it support polygons now natively? Or is this support still fringe, as given by #62, etc?
Also: what are the risks of using the google api internals?

does it support polygons now natively

@finetype No, this library will always be just allows you to render any React component on the Google Map,
so even I'll publish polygon drawing it will be not a part of this library, but just a standalone child component (like a marker).

what are the risks of using the google api internals
The more API you can use, the more issues you will have.
Now native Api is hided under warning and boolean property yesIWantToUseGoogleMapApiInternals mostly to avoid any questions about google api here.
As I'm not an expert in google api.

Hey @istarkov. Im using google-map-react and It's been so convenient. Like many others I want to run polygons, and see that there are two options, between SVG and api internals.
I would also much prefer it to be a marker than use google api internals. LucasMogari's solution however still uses api internals, and if thats necessary (or expensive server rendering is) I would directly use google api internals.

so even I'll publish polygon drawing it will be not a part of this library, but just a standalone child component (like a marker).

Do you intend to work on this? Being able to pass in an array to lat/lng to draw polygons would be fantastic.

I ended up switching to google-maps-react over just this issue, actually.
Fwiw.
On Dec 5, 2016 5:54 AM, "Gabriel Benmergui"<EMAIL_ADDRESS>wrote:

Hey @istarkov https://github.com/istarkov. Im using google-map-react
and It's been so convenient. Like many others I want to run polygons, and
see that there are two options, between SVG and api internals.
I would also much prefer it to be a marker than use google api internals.
LucasMogari's solution however still uses api internals, and if thats
necessary (or expensive server rendering is) I would directly use google
api internals.
so even I'll publish polygon drawing it will be not a part of this
library, but just a standalone child component (like a marker).
Do you intend to work on this? Being able to pass in an array to lat/lng
to draw polygons would be fantastic.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istarkov/google-map-react/issues/62#issuecomment-264836030,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGGFcO03fzeI9IFzwUQUiwbuIKMCk6-Pks5rE_thgaJpZM4GjQrm
.

Do you intend to work on this? Being able to pass in an array to lat/lng to draw polygons would be fantastic.

No for now, may be when will have some work activity on similar task, have no time do it just for fun ;-)

This issue should be bookmarked on the readme — super useful! Thanks for sharing your work all 👍

@istarkov
I'm trying to understand how latLng2World works and I don't understand why the returned x is in the range 0,-1 and y is in the range -1,1. In what situation would you get negative pixels for y?

@epiqueras what is the bounds for lat lng having limits of mercator projection? What results you see for that bounds. It is the answer.

Thank you for providing the world2Screen function. Does anyone know how to extend this to account for the maps tilt as well?
const world2Screen = ({ x, y }, zoom, tilt) => {
...
}


WikiFile: generalize property getters for revisions

See proposal (no, I hadn't forgotten, just been busy with other projects and real life :wink:). The first commit updates code and Doxygen comments of all get methods, the other updates the documentation files.

Great work, @Xymph, as always. I've went through the changes, and have nothing to point out (I do feel some of the docstrings could be slightly clearer, e.g. "of this image, or of its specified revision", but I couldn't come up with anything better, and that's pretty minor anyway). Feel free to merge whenever you're ready.


options.getChildBindings remove default value to avoid duplicate req …

https://github.com/pinojs/hapi-pino/issues/91
Didn't update version. Also tests should be reviewed because in my opinion they don't do what they are meant to do.
//test
experiment('ignore request.log logs for paths in ignorePaths', () => {
  test('when path matches entry in ignorePaths, nothing should be logged', async () => {

server.route({
      path: '/foo',
      method: 'GET',
      handler: (req, h) => {
        req.log([level], 'foo')
        return 'foo'
      }
})

//It didn't test against route, but 2 log entries are created. One with req.log and second is default route logging.

-expect(data.data).to.equal('foo')
+expect(data.data).to.equal('foo from handler')

Coverage decreased (-0.2%) to 98.841% when pulling 82c40e8a2ee22e2882a7afbf37bdfd82550cccd1 on indreek:master into 9b84037e3140c5d642774480a5d596c8addc21db on pinojs:master.

I don't really understand this fix.
See https://github.com/pinojs/hapi-pino/pull/87 for the full discussion on that option.

Idea behind this fix is that element req gets added twice to each log entry.
1s time in getChildBindings with default options.
2nd time in server.ext('onRequest', OR tryAddEvent(server, options, 'on', 'response'.
In my opinion we shouldn't add it twice because

We don't know what is the next processor, and what it does actually. Is it getting the correct element?
For example if I modify remote address (reverse proxy, etc), first req element is with default api provided, but 2nd one is correct.
If whole log is 1483 chars, then req element of it is 521. Over 1/3 is rubbish.
If you enable logRequestStart. Req element is in both log entries. From readme: Note: when logRequestStart is enabled and getChildBindings is configured to omit the req field, then the req field will be omitted from the "request complete" log event. This behavior is useful if you want to separate requests from responses

Indrek

Why cannot just pass a getChildBindings() function that returns an empty object?

You can do this also, but I think that it should be default behaviour then.
On Fri, 15 Nov 2019, 10:07 Matteo Collina<EMAIL_ADDRESS>wrote:

Why cannot just pass a getChildBindings() function that returns an empty
object?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/pinojs/hapi-pino/pull/92?email_source=notifications&email_token=ABJZCJ6HJJD4PRZG2ADCHBDQTZRFJA5CNFSM4JM3RWTKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEEZEUY#issuecomment-554275411,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABJZCJ7F6QB5DZFMG52YS5TQTZRFJANCNFSM4JM3RWTA
.


[PIP-63] Readonly-Topic-Ownership-Support

Implementation of PIP-63
User manual
Here is the manual for admin and consumer to use this feature. This part is actually missing in PIP-63.

For example, given a cluster called "my-cluster" with 2 brokers, <IP_ADDRESS> and <IP_ADDRESS>.
It has namespace called "my-tenant/writer-namespace".And consumers are consuming with service url "pulsar://<IP_ADDRESS>:6550,<IP_ADDRESS>:6650".
Here is the steps to set up readonly namespace on a new broker <IP_ADDRESS>.

set up namespace isolation policy "writer-ns-policy" to avoid assigning new broker <IP_ADDRESS> to writer-namespace.

bin/pulsar-admin ns-isolation-policy set \
--auto-failover-policy-type min_available \
--auto-failover-policy-params min_limit=1,usage_threshold=80 \
--namespaces my-tenant/writer-namespace \
--primary <IP_ADDRESS>,<IP_ADDRESS> my-cluster writer-ns-policy

Create a namespaces "my-tenant/reader-namespace" and set up writerNamespace=my-tenant/writer-namespace

pulsar-admin namespaces create my-tenant/reader-namespace
# This is a new admin command to be added.
pulsar-admin namespaces set-writer-namespace my-tenant/writer-namespace my-tenant/reader-namespace

set up namespace isolation policy to assign <IP_ADDRESS> to reader-namespace.

bin/pulsar-admin ns-isolation-policy set \
--auto-failover-policy-type min_available \
--auto-failover-policy-params min_limit=1,usage_threshold=80 \
--namespaces my-tenant/reader-namespace \
--primary <IP_ADDRESS> my-cluster reader-ns-policy

Update serviceUrl of some of the consumer clients to "pulsar://<IP_ADDRESS>:6550", and these consumers will consume messages from the readonly-namespace in <IP_ADDRESS>Further more, the serviceUrl can be updated online with org.apache.pulsar.client.api.ServiceUrlProvider.
Most importantly, we will not expose the readonly-namespace to consumer users, and no other configuration is needed to achieve this.  So it's transparent to consumers. Here is image showing the new cluster state.

Motivation
See PIP-63
Modifications
As described in PIP-63. This pr comes with the key changes.
A) Readonly namespace lookup
The following figure show the lookup procedure with some pre-settings.

Broker-1 is the current leader and all brokers uses the default centralized load manager, so that all bundle assignment will go through it.
Two ns isolation policies are set, for the convenience of explanation, all bundles of writer-namespace will be assigned to broker-2 and all bundles of reader-namespace will be assigned to broker-3.
The consumer client is consuming topic "persistent://my-tenant/writer-namespace/topic" with serviceUrl of "pulsar://<IP_ADDRESS>:6650"

A new string field redirectTopic needs to be added  to CommandLookupTopicResponse.
In step 1, broker-3 have the info that the writerNamespace of "my-tenant/reader-namespace" is "my-tenant/writer-namespace" and broker-3 itself is in the isolation-policy of "my-tenant/reader-namespace". So when it receive lookup request of "my-tenant/writer-namespace", it will redirect the lookup to the leader and change the namespace of the lookup topic to "my-tenant/reader-namespace". So in the following steps(3-6), "persistent://my-tenant/reader-namespace/topic" is used to finish the lookup request.
B) How readonly topic owner read data
Related logic is mostly handled in org.apache.bookkeeper.mledger.impl.RemoteManagedLedgerImpl which extends ManagedLedgerImpl for readonly topics, and changed some key behaviors, including

Forbid all entry modification ops, like 'addEntry' and 'truncate'.
Read all ledger info from zk, and update LAC by call org.apache.bookkeeper.client.api.ReadHandle#readLastAddConfirmedAsync of the last ledger in the ledger list. See method RemoteManagedLedgerImpl#asyncUpdateLastConfirmedEntry() for details.
Using a org.apache.pulsar.client.api.CursorClient for managing cursors in writer topic. And it's RemoteManagedCursorImpl which extends ManagedCursorImpl used for cursor management in readonly topic.
For consumers, each time RemoteManagedCursorImpl#checkForNewEntries will trigger asyncUpdateLastConfirmedEntry to update LAC from bookies. It's not quite efficient for now, but I look forward to optimize this to a long polling way from broker (or bookie) in the following PRs, since this PR is already quite big for reviewers.

C) How does readonly topic owner keep metadata in-sync
Add a method watchManagedLedgerInfo in org.apache.bookkeeper.mledger.impl.MetaStore.
Every RemoteManagedLedgerImpl will watch its ManagedLedgerInfo to see if there is a new ledger rolled.
D) How does readonly topic owner handle acknowledgment
As described in PIP-63, A set of “cursor” related RPCs between writable topic owner and readonly topic owners is introduced for the acknowledgment. Here is the details.

CursorData GET_CURSOR(topic, subscription). Get cursor persisted state data, including persisted markdelete info of the giving persistent subscription from writable topic owner.
CursorData CREATE_CURSOR(topic, subscription, CursorData). Creating a new cursor for the giving subscription in writable topic owner, a cursor state data after creating is return. The cursor data in parameter is used for indicating initial consuming position and properties.
DELETE_CURSOR(topic, subscription). Delete a cursor when unsubscribe is called.
UPDATE_CURSOR(topic, subscription, CursorData). Update persisted cursor data for acknowledgment.
User docs can be find in "pulsar-client-api/src/main/java/org/apache/pulsar/client/api/CursorClient.java"

A CursorClient is added for readonly topic owners to use these apis. A little different from PIP-63 in Topic Loading and Ack.

Topic Loading: when the readonly topic owner is loading the topic, CREATE_CURSOR is used to get the persisted data from writable topic owner.
Subscribe : calls CREATE_CURSOR to forward the subscribe request to writable topic owner if this topic is not already initialized in this broker. Upon successfully subscribe, readonly topic owner caches the corresponding cursor using returned cursor data.
Unsubscribe: remove cursor from cursor cache, and forward the unsubscribe request to writable topic owner with DELETE_CURSOR.
Ack: Process the ack same as writable topic owner, but instead of persist data to its managed ledger, readonly topic owner use UPDATE_CURSOR to persist the data through writable topic owner.

Verifying this change

[x] Make sure that the change passes the CI checks.

This change added tests and can be verified as follows:

RemoteManagedCursorImplTest.java
RemoteManagedLedgerImplTest.java
CursorClientTest.java
ReadonlyTopicOwnerTest.java

Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

Documentation
Check the box below and label this PR (if you have committer privilege).

[x] doc
(If this PR contains doc changes)

You can apply following diff to fix C++ client build failure.
diff --git a/pulsar-client-cpp/lib/Commands.cc b/pulsar-client-cpp/lib/Commands.cc
index 87c149c5b87..760549aaa31 100644
--- a/pulsar-client-cpp/lib/Commands.cc
+++ b/pulsar-client-cpp/lib/Commands.cc
@@ -642,6 +642,18 @@ std::string Commands::messageType(BaseCommand_Type type) {
         case BaseCommand::END_TXN_ON_SUBSCRIPTION_RESPONSE:
             return "END_TXN_ON_SUBSCRIPTION_RESPONSE";
             break;
+        case BaseCommand::GET_CURSOR:
+            return "GET_CURSOR";
+        case BaseCommand::GET_CURSOR_RESPONSE:
+            return "GET_CURSOR_RESPONSE";
+        case BaseCommand::CREATE_CURSOR:
+            return "CREATE_CURSOR";
+        case BaseCommand::CREATE_CURSOR_RESPONSE:
+            return "CREATE_CURSOR_RESPONSE";
+        case BaseCommand::DELETE_CURSOR:
+            return "DELETE_CURSOR";
+        case BaseCommand::UPDATE_CURSOR:
+            return "UPDATE_CURSOR";
     };
     BOOST_THROW_EXCEPTION(std::logic_error("Invalid BaseCommand enumeration value"));
 }

/pulsarbot run-failure-checks

You can apply following diff to fix C++ client build failure.
diff --git a/pulsar-client-cpp/lib/Commands.cc b/pulsar-client-cpp/lib/Commands.cc
index 87c149c5b87..760549aaa31 100644
--- a/pulsar-client-cpp/lib/Commands.cc
+++ b/pulsar-client-cpp/lib/Commands.cc
@@ -642,6 +642,18 @@ std::string Commands::messageType(BaseCommand_Type type) {
         case BaseCommand::END_TXN_ON_SUBSCRIPTION_RESPONSE:
             return "END_TXN_ON_SUBSCRIPTION_RESPONSE";
             break;
+        case BaseCommand::GET_CURSOR:
+            return "GET_CURSOR";
+        case BaseCommand::GET_CURSOR_RESPONSE:
+            return "GET_CURSOR_RESPONSE";
+        case BaseCommand::CREATE_CURSOR:
+            return "CREATE_CURSOR";
+        case BaseCommand::CREATE_CURSOR_RESPONSE:
+            return "CREATE_CURSOR_RESPONSE";
+        case BaseCommand::DELETE_CURSOR:
+            return "DELETE_CURSOR";
+        case BaseCommand::UPDATE_CURSOR:
+            return "UPDATE_CURSOR";
     };
     BOOST_THROW_EXCEPTION(std::logic_error("Invalid BaseCommand enumeration value"));
 }

Thanks for your patch. :)

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

@Jason918 Thanks for your contribution. For this PR, do we need to update docs?
(The PR template contains info about doc, which helps others know more about the changes. Can you provide doc-related info in this and future PR descriptions? Thanks)

@Jason918 Thanks for your contribution. For this PR, do we need to update docs?
(The PR template contains info about doc, which helps others know more about the changes. Can you provide doc-related info in this and future PR descriptions? Thanks)

The PR template says that if you have committer privilege, maybe I didn't get that right. I thought it's for committers ( with write access to the project ) to decide about the docs.
About user doc, This PR is not ready for end users to use this feature in a very convenient way. For example, some parameters is added in namespace policies, but it is not covered in pulsar-admin or REST admin interface.
I would like to add these admin tools and user docs in the following PRs.

@Jason918 Thanks for your contribution. For this PR, do we need to update docs?
(The PR template contains info about doc, which helps others know more about the changes. Can you provide doc-related info in this and future PR descriptions? Thanks)

Sorry for that, the PR template says that if you have committer privilege, maybe I didn't get that right. I thought it's for committers ( with write access to the project ) to decide about the docs.
About user doc, This PR is not ready for end users to use this feature in a very convenient way. For example, some parameters is added in namespace policies, but it is not covered in pulsar-admin or REST admin interface.
I would like to add these admin tools and user docs in the following PRs.

@Jason918 thanks for your info!
I see you've already added some how-to instructions, so I label this PR with doc.
Please do not forget to add docs later to allow users to know your great code changes. And you can ping me to review the docs, thanks.

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

@codelipenghui @linlinnn Hi, can you please take a look at this PR?

This PR is too large, and very hard to review throughly.
Plan to do some rework and split this apart with PRs.


feat: haveI and letI syntax

haveI := inst; val simulates the by haveI := inst; exact val syntax from Lean 3.
While the Lean 4 have always introduces a local instance, it creates a let_fun term even when in tactic mode.  The Lean 3 have tactic however inlined the value.  The new haveI and letI syntax always inlines the value.
See https://github.com/leanprover/lean4/issues/1313

bors merge


Schemes detections seems broken

New Issue Checklist

[X] Updated fastlane to the latest version
[X] I read the Contribution Guidelines
[X] I read docs.fastlane.tools
[X] I searched for existing GitHub issues

Issue Description
I'm trying to build a end to end automatic delivery for cocos2d-x projects, that is, get it to work without ever opening the Xcode GUI. Goal is to be able to reproduce on CI server (Travis).
Problem is, the scheme I'm trying to build is missing untill I fire up XCode and build it through the GUI, which doesn't work with the idea of automatic end to end CI.
The interresting bit is : If I comment out some code in project.rb (L134-137), everything works nicely.
        # Verify the scheme is available
        unless schemes.include?(options[:scheme].to_s)
          UI.error("Couldn't find specified scheme '#{options[:scheme]}'. Please make sure that the scheme is shared, see https://developer.apple.com/library/content/documentation/IDEs/Conceptual/xcode_g\
uide-continuous_integration/ConfigureBots.html#//apple_ref/doc/uid/TP40013292-CH9-SW3")
          options[:scheme] = nil
        end

My guess is that the method schemes (project.rb L119) is not looking in the right place to find the schemes available for build.
I printed out the value of schemes on line 135 and got '["COCOS"]'
Whereas xcodebuild -list returns
    Targets:
        COCOS-mobile
        COCOS-desktop

    Build Configurations:
        Debug
        Release

    If no build configuration is specified and -scheme is not passed then "Debug" is used.

    Schemes:
        COCOS-desktop
        COCOS-mobile
        libcocos2d iOS
        libcocos2d Mac
        libcocos2d tvOS

Command executed
cocos new COCOS -l cpp
cd COCOS/proj.ios_mac
COPY MY FASTLANE CONFIG IN THAT FOLDER (CONTENT IN THE ENV SECTION)
fastlane beta

Complete output when running fastlane, including the stack trace and command used

 proj.ios_mac git:(master) ✗ fastlane beta
[19:39:41]: Get started using a Gemfile for fastlane https://docs.fastlane.tools/getting-started/ios/setup/#use-a-gemfile
[19:39:43]: ------------------------------
[19:39:43]: --- Step: default_platform ---
[19:39:43]: ------------------------------
[19:39:43]: Driving the lane 'ios beta' 🚀
[19:39:43]: ---------------------------------
[19:39:43]: --- Step: update_project_team ---
[19:39:43]: ---------------------------------
[19:39:44]: Updating development team (#########) for target `COCOS-mobile` in the project 'COCOS.xcodeproj'
[19:39:44]: Successfully updated project settings to use Developer Team ID '########' for target `COCOS-mobile`
[19:39:44]: Updating development team (########) for target `COCOS-desktop` in the project 'COCOS.xcodeproj'
[19:39:44]: Successfully updated project settings to use Developer Team ID '#######' for target `COCOS-desktop`
[19:39:44]: -----------------------
[19:39:44]: --- Step: build_app ---
[19:39:44]: -----------------------
[19:39:44]: Couldn't find specified scheme 'COCOS-mobile'. Please make sure that the scheme is shared, see https://developer.apple.com/library/content/documentation/IDEs/Conceptual/xcode_guide-continuous_integration/ConfigureBots.html#//apple_ref/doc/uid/TP40013292-CH9-SW3
[19:39:44]: $ xcodebuild -showBuildSettings -scheme COCOS -project ./COCOS.xcodeproj
xcodebuild: error: The project named "COCOS" does not contain a scheme named "COCOS". The "-list" option can be used to find the names of the schemes in the project.
[19:39:46]: Could not read build settings. Make sure that the scheme "COCOS" is configured for running by going to Product → Scheme → Edit Scheme…, selecting the "Build" section, checking the "Run" checkbox and closing the scheme window.
[19:39:46]: Could not read the "SUPPORTED_PLATFORMS" build setting, assuming that the project supports iOS only.
[19:39:46]: Could not read the "SUPPORTED_PLATFORMS" build setting, assuming that the project supports iOS only.
+------------------------+--------------------------------------+
|                    Summary for gym 2.126.0                    |
+------------------------+--------------------------------------+
| scheme                 | COCOS                                |
| project                | ./COCOS.xcodeproj                    |
| destination            | generic/platform=iOS                 |
| output_name            | App                                  |
| build_path             | /Users/wilmot_p/Library/Developer/X  |
|                        | code/Archives/2019-07-07             |
| clean                  | false                                |
| output_directory       | .                                    |
| silent                 | false                                |
| skip_package_ipa       | false                                |
| result_bundle          | false                                |
| buildlog_path          | ~/Library/Logs/gym                   |
| skip_profile_detection | false                                |
| xcode_path             | /Applications/Xcode.app              |
+------------------------+--------------------------------------+
[19:39:47]: $ set -o pipefail && xcodebuild -scheme COCOS -project ./COCOS.xcodeproj -destination 'generic/platform=iOS' -archivePath /Users/wilmot_p/Library/Developer/Xcode/Archives/2019-07-07/App\ 2019-07-07\ 19.39.47.xcarchive archive | tee /Users/wilmot_p/Library/Logs/gym/App-COCOS.log | xcpretty
[19:39:49]: ▸ xcodebuild: error: The project named "COCOS" does not contain a scheme named "COCOS". The "-list" option can be used to find the names of the schemes in the project.
xcodebuild: error: The project named "COCOS" does not contain a scheme named "COCOS". The "-list" option can be used to find the names of the schemes in the project.
[19:39:49]: Exit status: 65
+-------------+-------------------------+
|           Build environment           |
+-------------+-------------------------+
| xcode_path  | /Applications/Xcode.app |
| gym_version | 2.126.0                 |
+-------------+-------------------------+
+------------------+----------+
|        Lane Context         |
+------------------+----------+
| DEFAULT_PLATFORM | ios      |
| PLATFORM_NAME    | ios      |
| LANE_NAME        | ios beta |
+------------------+----------+
+------+---------------------+-------------+
|             fastlane summary             |
+------+---------------------+-------------+
| Step | Action              | Time (in s) |
+------+---------------------+-------------+
| 1    | default_platform    | 0           |
| 2    | update_project_team | 0           |
| 💥   | build_app           | 4           |
+------+---------------------+-------------+
[19:39:49]: fastlane finished with errors
Looking for related GitHub issues on fastlane/fastlane...
➡  Error "undefined method `[]' for nil:NilClass" when trying to use command "fastlane frameit"
https://github.com/fastlane/fastlane/issues/14876 [open] 4 💬
2 weeks ago
➡  upload_to_testflight: fails with nil in pilot/build_manager.rb:449:in update_build_beta_details
https://github.com/fastlane/fastlane/issues/14977 [open] 13 💬
3 days ago
➡   undefined method `each' for nil:NilClass
https://github.com/fastlane/fastlane/issues/13959 [closed] 19 💬
3 weeks ago
and 152 more at: https://github.com/fastlane/fastlane/search?q=undefined method `each' for nil&type=Issues&utf8=✓
🔗  You can ⌘ + double-click on links to open them directly in your browser.
/Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/gym/lib/gym/error_handler.rb:147:in print_full_log_path': [!] undefined method each' for nil:NilClass (NoMethodError)
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/gym/lib/gym/error_handler.rb:59:in handle_build_error' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/gym/lib/gym/runner.rb:97:in block in build_app'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane_core/lib/fastlane_core/command_executor.rb:89:in call' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane_core/lib/fastlane_core/command_executor.rb:89:in execute'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/gym/lib/gym/runner.rb:93:in build_app' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/gym/lib/gym/runner.rb:18:in run'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/gym/lib/gym/manager.rb:19:in work' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/actions/build_ios_app.rb:64:in run'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:256:in block (2 levels) in execute_action' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/actions/actions_helper.rb:50:in execute_action'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:235:in block in execute_action' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:227:in chdir'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:227:in execute_action' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:157:in trigger_action_by_name'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/fast_file.rb:154:in method_missing' 	from Fastfile:22:in block (2 levels) in parsing_binding'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/lane.rb:33:in call' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/lane.rb:33:in call'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:49:in block in execute' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:45:in chdir'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/runner.rb:45:in execute' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/lane_manager.rb:56:in cruise_lane'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/command_line_handler.rb:36:in handle' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/commands_generator.rb:108:in block (2 levels) in run'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:178:in call' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:178:in call'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:153:in run' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.6/lib/commander/runner.rb:476:in run_active_command'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:76:in run!' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.6/lib/commander/delegates.rb:15:in run!'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/commands_generator.rb:333:in run' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/commands_generator.rb:41:in start'
from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/fastlane/lib/fastlane/cli_tools_distributor.rb:119:in take_off' 	from /Users/wilmot_p/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.126.0/bin/fastlane:23:in <top (required)>'
from /Users/wilmot_p/.fastlane/bin/bundle/bin/fastlane:22:in load' 	from /Users/wilmot_p/.fastlane/bin/bundle/bin/fastlane:22:in '

Environment

 ✅ fastlane environment ✅
Stack

Key
Value

OS
10.14.3

Ruby
2.2.4

Bundler?
false

Git
git version 2.20.1 (Apple Git-117)

Installation Source
~/.fastlane/bin/bundle/bin/fastlane

Host
Mac OS X 10.14.3 (18D109)

Ruby Lib Dir
~/.fastlane/bin/bundle/lib

OpenSSL Version
OpenSSL 1.0.2g  1 Mar 2016

Is contained
false

Is homebrew
true

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
10.2.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE
en_US.UTF-8
✅

fastlane files:
`./fastlane/Fastfile`
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
#     https://docs.fastlane.tools/plugins/available-plugins
#

# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane

default_platform(:ios)

platform :ios do
  desc "Push a new beta build to TestFlight"
  lane :beta do
    update_project_team(path: "COCOS.xcodeproj", teamid: "#########")
    build_app(scheme: "COCOS-mobile")
    upload_to_testflight
  end
end

`./fastlane/Appfile`
app_identifier("#########") # The bundle identifier of your app
apple_id("########") # Your Apple email address

itc_team_id("#######") # App Store Connect Team ID
team_id("########") # Developer Portal Team ID

# For more information about the Appfile, see:
#     https://docs.fastlane.tools/advanced/#appfile

fastlane gems

Gem
Version
Update-Status

fastlane
2.126.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

slack-notifier
2.3.2

atomos
0.1.3

CFPropertyList
3.0.0

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.6

xcodeproj
1.8.1

rouge
2.0.7

xcpretty
0.3.0

terminal-notifier
2.0.0

unicode-display_width
1.1.3

terminal-table
1.7.3

plist
3.5.0

public_suffix
2.0.5

addressable
2.6.0

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.7.0

tty-cursor
0.6.1

tty-spinner
0.9.0

babosa
1.0.2

colored
1.2

highline
1.7.10

commander-fastlane
4.4.6

excon
0.64.0

faraday
0.12.1

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.5

gh_inspector
1.1.3

json
1.8.1

mini_magick
4.5.1

multi_xml
0.6.0

rubyzip
1.2.3

security
0.1.3

xcpretty-travis-formatter
0.0.4

dotenv
2.7.4

bundler
1.14.6

faraday_middleware
<IP_ADDRESS>

naturally
2.2.0

simctl
1.6.5

jwt
2.1.0

uber
0.1.0

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.2

mime-types-data
3.2019.0331

mime-types
3.1

multi_json
1.13.1

signet
0.11.0

memoist
0.16.0

os
1.0.1

googleauth
0.6.7

httpclient
2.8.3

google-api-client
0.23.9

google-cloud-env
1.0.5

google-cloud-core
1.3.0

digest-crc
0.4.1

google-cloud-storage
1.16.0

emoji_regex
1.0.1

libxml-ruby
3.0.0

psych
2.0.8

generated on: 2019-07-07

Having digged into it a bit more, problem seems to be comming from XCodeproj. There is some work currently being done on schemes detection (https://github.com/CocoaPods/Xcodeproj/pull/680). Hope they'll fix it, and problem should get fixed here too.


Design update

[ ] ephios mannequin icons (may do that in a later PR)

[ ] get figma colors in scss
[ ] get the files

[ ] render missing/free indicator

[ ] section-based
[ ] min-max-common

[ ] check how emails look
[x] shift card columns
[x] user profiles
[x] grid layout for event list (requires rebase on #511)

Coverage decreased (-0.1%) to 89.129% when pulling 0fe6d3c88db04c2dedc4fbc8ab112456188f8628 on design into 29a54b15a27556d6a8200e78ad3555d49b56a437 on main.


Why Kubernetes v1.12+.

Why required  kubernetes v1.12+ when deploying a local-path-provisioner?

I want to deploy local-path-provisioner on kubernetes v1.9

The feature used by local path provisioner is only introduced to Kubernetes as a beta feature in v1.10. For v1.9, you can try to enable the Local Volume feature gate and to see if it works. We still cannot officially support the Kubernetes version before v1.12 though.