Every time it says i cant do this but can provide you tips regarding that?

i managed to make it work but every time i ask something it says i can't do this but can provide you tips regarding how to do that, which makes it useless, however, official chatgpt on openai.com is very useful and it does everything we ask it. So seems like this one uses an old model may be, can you fix it?
and Btw how to stop the bot on codespace?

Maybe I'll update it. if you can you're welcome to contribution.
How to stop the bot on codespace?
Simply delete running code spaces

BTW is it fine to keep it running in codespace?

it's up to you to plan you have a limited quota of codespaces usage on GitHub. Of course, GitHub will cut off from this quota. code spaces have a limit of time which is 4 hours after 4 hours codespace will be closed automatically.
instead, you cloud use Heroku, Replit, railway, or another platform

i see, will you add support for all above mentioned free servers deploy using buttons?

sure i'll

@askfriends please recheck again

@askfriends please recheck again

kindly add support for deploying above mentioned servers

@askfriends Already added for Heroku

@askfriends Already added for Heroku

thanks bor for adding heroku support, but im planning to deploy it to some other free server which requires Procfile, so will u add that too?

https://blog.logrocket.com/heroku-alternatives-deploy-node-js-app/#paid-options


Bring Github issues base up to date with existing work (A)

Add to existing issues:

photos of results/output
diagrams or photos of connections
description of tests/what happened/what you did

Updated issues #33, #26, #35. Is there anything else I am missing? @f-0-o


Hope to support adjusting the font size of NavigationItem.Content

Is your feature request related to a problem? Please describe
When using multi-byte text here in NavigationItem.Content, such as Chinese, Korean and Japanese, it will look a bit blurry because it is too small.
Describe the solution you'd like
I hope to add a method to modify the font size.
(Currently, the font size cannot be modified by "FontSize")
Describe alternatives you've considered
No response
Additional context
No response

Problem solved.
          <ui:NavigationItem
                                        Icon="TextBulletListSquare20"
                                        PageTag="home"
                                        PageType="{x:Type view:WkyTaskListView}" Cursor="Hand"  >
                        <Grid>
                            <TextBlock Text="Home"></TextBlock>
                        </Grid>
                    </ui:NavigationItem>


Presentr auto calculate viewController height

Im currently using .top to present my UItableView with no footer. I want Presentr to calculate the height and show all the visible cell instead of me setting the height i would like for Presentr to calculate that. How can i complete this? thank you in advance.

Presentr should not calculate the height. If you properly set  your VC autolayout constraints and use dynamic presentation type you can achieve this.
One approach would be setup a heightConstraint for your VC. then in the scrollview(which is your tableview) delegate, you set the heightContraint value to the contentSize.height.

Sorry. Been really busy with work.
Will get a couple of weeks of for the holidays and will catch up on issues and pull requests. Thanks for your patience.

If you wan't auto layout dynamic sizing you should use the .dynamic PresentationType.
Let me know if that work's out.


PathORAM impl

Dear authors, a small problem in src/PathORAM.cpp confused me. As in the constructor, height represents the height of the tree while n_blocks represents the number of leaf nodes, so I wonder if:
    height = (uint32_t)ceil(log2((double)n)) + 1;

should be:
     height = (uint32_t)ceil(log2((double)n)) - 1;

and
     for (size_t i = 0; i < n_blocks; ++i) pos_map[i] = Util::rand_int(n_blocks);

should be:
     for (size_t i = 0; i < n; ++i) pos_map[i] = Util::rand_int(n_blocks);

I think there is no problem here. Take an example when n = 4, the height of the tree should be 3, which matches log_2(4) + 1. While the position map is not an issue since when we are building a path-oram for capacity n, we are actually building a path-oram of capacity of its nearest power of 2.
Dong
On 9/5/2018 12:05:40 AM, Alan Shen<EMAIL_ADDRESS>wrote:
Dear authors, a small problem in src/PathORAM.cpp confused me. As in the constructor, height represents the height of the tree while n_blocks represents the number of leaf nodes, so I wonder if:
height = (uint32_t)ceil(log2((double)n)) + 1;
should be:
height = (uint32_t)ceil(log2((double)n)) - 1;
and
for (size_t i = 0; i < n_blocks; ++i) pos_map[i] = Util::rand_int(n_blocks);
should be:
for (size_t i = 0; i < n; ++i) pos_map[i] = Util::rand_int(n_blocks);
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub [https://github.com/InitialDLab/SEAL-ORAM/issues/2], or mute the thread [https://github.com/notifications/unsubscribe-auth/AAu4JjETy7Ks5a2_70q_XkSdkkvqe5tcks5uX2mygaJpZM4WaPIl].

But when n = 7, the height of the tree becomes 4,so I guess if you count root node in level 1, ceil function should be floor.

Tree heights are iterate through:
for (uint32_t i = 0; i < height; ++i)
When n = 7, leaf level has 8 nodes, which indicates the tree has 4 levels.
Dong
On 9/5/2018 12:44:55 AM, Alan Shen<EMAIL_ADDRESS>wrote:
But when n = 7, the height of the tree becomes 4,so I guess if you count root node in level 1, ceil function should be floor.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub [https://github.com/InitialDLab/SEAL-ORAM/issues/2#issuecomment-418617482], or mute the thread [https://github.com/notifications/unsubscribe-auth/AAu4JkRbaZI3W1sRFApAZxRNMMqrxJPkks5uX3LlgaJpZM4WaPIl].

Got it. Thank you for your kind reply!


Geocoder Batch API v1

Create an API for geocoding of tables
Requirements:

REST
Consistent with other api’s we have (see import api, sql api)
Internally consistent

https://docs.google.com/a/cartodb.com/document/d/1uHjnyizzys-5rOHgdkdQqv1AITZGCBusi-CfXlfvcNg/edit

closing for the moment, will reopen if needed


[Feature Request] Is it possible to create a richtext editor in component generator.

I was trying to create a richtext editor using component generator, in that i am adding type as richtext in component generator while in crx/de the sling resource type field is showing as empty

RTE dialog fields are not yet supported by the code generator, since inline RTE editor on the page can generally be used for these use cases.  That said, there are times where a RTE editor in the dialog does make sense, and it would be great if the generator supported it.
Thank you for the feature request.  Please feel free to submit a pull request if you are able to add the feature yourself.  Otherwise, hopefully someone else can do the same.


How to customize the download address of the image？

In the process of starting the longhorn service, in the yaml file, I want the images to use their own docker repository addresses, but some mirrors cannot customize the docker repository?For example this：
longhorn-csi-plugin-5ngxc                  1/2     ImagePullBackOff   0          8d
longhorn-csi-plugin-74ngr                  2/2     Running            0          8d
longhorn-csi-plugin-88ndm                  1/2     ImagePullBackOff   0          8d
longhorn-csi-plugin-cfnn2                  1/2     ImagePullBackOff   0          8d
longhorn-csi-plugin-jxjpk                  1/2     ImagePullBackOff   0          8d
longhorn-csi-plugin-nvpq5                  2/2     Running            0          8d
longhorn-csi-plugin-qnt26                  1/2     ImagePullBackOff   0          8d
longhorn-csi-plugin-tn4jq                  1/2     ImagePullBackOff   0          8d

If you want to customize the image for csi related Longhorn workloads, you can modify the longhorn-driver-deployer in the longhorn deployment yaml file. e.g.:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: longhorn-driver-deployer
  namespace: longhorn-system
spec:
  replicas: 1
  selector:
    matchLabels:
      app: longhorn-driver-deployer
  template:
    metadata:
      labels:
        app: longhorn-driver-deployer
    spec:
      initContainers:
        - name: wait-longhorn-manager
          image: <Your longhorn manager image>
          command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" http://longhorn-backend:9500/v1) != "200" ]; do echo waiting; sleep 2; done']
      containers:
        - name: longhorn-driver-deployer
          image: <Your longhorn manager image>
          imagePullPolicy: Always
          command:
          - longhorn-manager
          - -d
          - deploy-driver
          - --manager-image
          - <Your longhorn manager image>
          - --manager-url
          - http://longhorn-backend:9500/v1
          - --csi-attacher-image
          - <Your csi attacher image>
          - --csi-provisioner-image
          - <Your csi provisioner image>
          - --csi-node-driver-registrar-image
          - <Your node driver registrar image>
...

For Longhorn v0.7.0, the default images are quay.io/k8scsi/csi-attacher:v2.0.0, quay.io/k8scsi/csi-provisioner:v1.4.0, and quay.io/k8scsi/csi-node-driver-registrar:v1.2.0.

thank you


Prepare release 0.15.0

Summary
Details and comments
Fixes #

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
We've detected an issue with your CI configuration that might affect the accuracy of this pull request's coverage report.
To ensure accuracy in future PRs, please see these guidelines.
A quick fix for this PR: rebase it; your next report should be accurate.

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2494

Relevant Lines:
5421

💛  - Coveralls


produce an RSS / Atom feed

We can currently produce application/xml and text/calendar. However, an RSS / Atom feed might also be useful in some cases. Perhaps we can consider adding application/rss+xml and / or application/atom+xml as allowed Accept headers, and add logic to handle producing such feeds.

Or perhaps this should be more of a "Liturgy of the Day" feed, so a separate service similar to the Alexa newsbrief feed.


Outdated google auth causing local issues

https://github.com/GoogleCloudPlatform/composer-local-dev/blob/89c54a5728964678f87e6570a2c4d7eed7eff8f1/setup.py#L28
Needs to be upgraded. 2.27.* works

Issue raised in #32 already :wink:

Would renovatebot / dependabot / google equivalent be a simple long term solution to the outdated dependencies?

https://github.com/GoogleCloudPlatform/composer-local-dev/blob/89c54a5728964678f87e6570a2c4d7eed7eff8f1/setup.py#L28
Needs to be upgraded. 2.27.* works

Indeed, it worked for me with this version.

Fixed in version 0.9.2


Build instructions ...

This is more a request than an issue. Can you provide a short documentation on how to build this ?

./gradlew clean build did the trick.

Hey @maroparo,
you are right, just run a gradle build. This is mentioned in the readme.md in the section "developers".
If you have further questions or remarks about my plugin, just ask.
Regards,
Dominik


Add note for hardware keyboard in simulator

Closes my issue at https://github.com/facebook/react-native/issues/306

We should have a troubleshooting page to include things and other hiccups like the port issue.

Good idea, adding it now.

Thanks, that would be great. This way we can have the quick start be sweet and short. With a link to a troubleshooting page.

This is great! I like the screenshots

But where is this linked from? I can't find in the left hand side menu.
cc @vjeux

Wasn't sure if I should do that or you guys need to.


Thank you for giving,this software is very user friendly

I am truly grateful to you for what you have done

Kudos! I just saw your work used in airbnb's design tool, called Lottie. Without your work, I'm not sure if Lottie much to offer.
Link:
http://airbnb.design/lottie

@Jeremy-Knudsen Lottie would NOT exist without Hernans fantastic work on Bodymovin ❤


Replace String.substr() with simpler functions where possible

substr(0, len) can be simplified to left(len) if len >= 0. In fact, this alternative is 10% faster.
While this is mostly about code style, I expect the performance improvement to be subtle, but non-negligible. Since String also used substr() in a few places when it could use left(), this should optimize other String functions too, and those are used all over the codebase, too.
And a couple of other code simplifications.

I'll proof-read it now and leave comments to make the job of reviewers easier.

While this is mostly about code style, I expect the performance improvement to be subtle, but non-negligible.

I think performances would be the main reason to approve this here. I'm not convinced that this change improves style. While, yes, we do have a dedicated method just for this, substr is just way more universal and easier to understand by anyone with a bit of programming experience. What left (or right) does is not obvious from just the name.

Gotchu, I personally find it more readable because it's shorter and I always forget if substr() is  from-to or from-len.

I've self-reviewed this so extensively I don't think a second major review would be needed P:  I'll finish this soon and comment on which changes I'm still skeptical about.

Will go about this differently soon.


Splash Wall

Describe the problem you are trying to solve
This is the key feature of the project and has to be done correctly. We have 2 sides to this challenge

Front end
Model design

Describe the solution you'd like
Front end is as simple as enhancing the html canvas frame in the 3d world. Some issues are still present (currently the feature is in the develop branch)
Model is as simple as making sure the canvas is being updated in a efficient way. Can complexity be imporved? Right now we are using throttle to limit update rate( maybe this won't be great if we want to demonstrate how real time the CRO is)
Describe alternatives you've considered
Describe why the solution is optimal
Additional context

Solved


fix 404 at: /opensource/make-a-contribution/

Describe the proposed changes

fix missing link at: /opensource/make-a-contribution/
Unreleased project version

Related issue

Fixes #501
Related issue or PR in another project

Please take a look

Fixes #501
Signed-off-by: kurochan<EMAIL_ADDRESS>

Deploy preview processing.
Built with commit a97ba96a7fa0b0f790fb2837f74e6538fed38c72
https://app.netlify.com/sites/docker-docs/deploys/582421b86686746be754d8d7

Thanks, @kurochan :)


Bump Zivid SDK version to 2.4.2

Have not actually pushed to AUR yet. Will do that after approval but before merge.


Feature Request: Sparse Vector Support for LIME

I am trying to explain the predictions made by my XGboost model using MMLSparks Lime package for scala. This is my first time using LIME library, I am able to perform a fit operation on the dataset and when I am trying to perform the transform operation, the program stops with an exception, "Caused by: java.lang.ClassCastException: org.apache.spark.ml.linalg.SparseVector cannot be cast to org.apache.spark.ml.linalg.DenseVector"Link to Error Log -1

The latest LIME implementation in the explainers package should support explaining sparse vector output.


Porting changes from

Added new tenable screen
fixed Titles of Compliance Trend and Trend Of Total And Compliant Assets alignment
Calendars and graph plots are getting refreshed when switched between Asset Groups
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also
list any relevant details for your test configuration

[ ] Test A
[ ] Test B

Checklist:

[x] My code follows the style guidelines of this project
[x] My commit message/PR follows the contribution guidelines of this project
[x] I have performed a self-review of my code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

Other information:
List any documentation updates that are needed for the Wiki

@ranadheer-b can we have a list of porting PRs here? Just for history and better understanding why this big PR is created.

@ranadheer-b can we have a list of porting PRs here? Just for history and better understanding why this big PR is created.

I have added ported PR's in the description.
Can you please review


Add Tidal icon support to now playing

Describe the Pull request
This added Tidal icon support to the Now Playing widget.
Screenshots
I haven't setup Pock in development mode but my understanding of the code makes me confident in this. Here is the Info.plist for Tidal:

Fixes
A comma-separated list of issues that can be closed with this PR.
Closes #213.
Pull request type

[X] New feature (non-breaking change which adds functionality)

Tested?
Nope.
Checklist
Use this list to keep track of your progress:

[X] I have performed a self-review of my own code
[X] I have commented my code, particularly in hard-to-understand areas
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works

I'll happily complete the checklist when possible though currently do not do any MacOS development so that might cause some issues and it might be quicker for someone else to validate.


Update website docs to reflect renaming the client generation docs

Pushing changes to the website package to reflect the changes made to the client generation documentation in this PR: https://github.com/Azure/typespec-azure/pull/1294

No changes needing a change description found.

You can try these changes here

🛝 Playground
🌐 Website
📚 Next docs


Inclusion of Matte to BINDINGS.md

Following what was mentioned in BINDINGS.md for new listings, I'm putting in a PR for the inclusion of Matte bindings for raylib 4.6-dev to the main listing.

@jcorks Very nice! Thanks for the addition!


Do not create accounts before a transaction is known to succeed

In transaction_logic.ml, we use get_or_create before we know that the transaction will succeed. This may cause the node's ledger to fall out of sync with the rest of the network.

This was fixed as part of the tokens work. Closing.


new rule: leave descriptions empty

as it goes into the abapGit XML, and would like it as small as possible
plus changing a description does not flux down to existing descriptions

method descriptions
parameter descriptions
attribute descriptions


Need to delete components and readd to reorder on page but wrong components get deleted.

Describe the bug
When I need to reorder components I have to delete the one in the wrong place to add it again after. I open the one I want to delete, click delete then it goes back to my page and the one I said to delete is still there and the other one is gone.
To Reproduce
Steps to reproduce the behavior:

Click on component on page I want to delete
Click delete at bottom of page
return to page, see error
Deleted component still there, unopened component beneath is gone

Expected behavior
I expected the one that I deleted to be the one to disappear.
Screenshots
If applicable, add screenshots to help explain your problem.
Repository

designer

Desktop (please complete the following information):

OS: windows 11
Browser: microsoft edge
Version 98.0.1108.50

Additional context
Add any other context about the problem here.

Which component failed to delete? Does this behaviour persist for all components?

Hi James,
I don't think it is related to the components. I just made a new page to
check and it happens where there are 3 components (or more maybe, I only
tested 3) and you try to delete the one in the middle. Then it
automatically deletes the one at the bottom (the most recent component
added) rather than the one in the middle (2nd component added).
Hope that makes sense.
Cheers,
Delayne
On Mon, Feb 28, 2022 at 10:24 AM JamesBoadi @.***>
wrote:

Which component failed to delete? Does this behaviour persist for all
components?
—
Reply to this email directly, view it on GitHub
https://github.com/XGovFormBuilder/digital-form-builder/issues/758#issuecomment-1054107493,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXZQVVEUPMZ2KAKB5NPKWGLU5NEPNANCNFSM5ORWKEGQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Yes I can see the issue now, currently components can only be deleted post order, not inorder. Probably a bug we will address in the future


Key 'supported_architectures' should be an array and not only a string

To work properly with munkiadmin according to @hjuutilainen:
https://macadmins.slack.com/archives/C0D7FU2Q1/p1647623269525709
https://macadmins.slack.com/archives/C0D7FU2Q1/p1647632972333489
Plus a cleanup of the name variable according to @gregneagle Munki will handle the different architectures

Please note that if you change the pkg recipe to just NAME for the pkg-name it will fail for those that use e.g. Jamf and not Munki and require unique pkg names

Please note that if you change the pkg recipe to just NAME for the pkg-name it will fail for those that use e.g. Jamf and not Munki and require unique pkg names

Sure, but this PR was directed specifically towards a Munki recipe...

@jby
I understand, though I was thinking about your comment above (second from the top) where you say that the pkg-recipe also needs to be changed.

@jby @eithor I'm probably going to close this PR as I've created a new set of Universal recipes that pkg both Intel and Arm versions into the one pkg. Yes, it's significantly larger because it's packaging both installers, but also a lot simpler for admins.


Fix RichTextLabel character line and paragraph index getters

Fix conditions for returning the character line and paragraph index for RichTextLabel.
Fixes #76758.

@Nidjo123 @Calinou Would you mind checking if visible_character is similarly affected?

Let's merge what we have. Thanks!
But it would be great to look into the possible remaining issue and at least confirm in case it doesn't exist.

@YuriSizov, sorry, I somehow missed the previous notifications. Will check and open an issue/PR if visible_character is also affected.

Sounds great!

Cherry-picked for 4.1.2.


Vetur Recommends using Vue Official Extension But Vue Official Extension Does Not Support Emmet.

The Vue Official Plugin Does Not Support Emmet.

The Vue Official Plugin Does Not Support Emmet.↳

add this in settings.json, then it works
"emmet.includeLanguages": {
    "vue-html": "html",
    "vue": "html"
}

The Vue Official Plugin Does Not Support Emmet.↳

add this in settings.json, then it works
"emmet.includeLanguages": {
    "vue-html": "html",
    "vue": "html"
}

This is not a solution. If you do so type-checking will be lost.

@cannot-hero Please confirm that this setting requires installation of additional package (which one?) and is only relevant for vscode (is it?).↳

only relevant for vscode, but as @so1ve has mentioned, the type-checking will be lost. So it just works for the emmet

Hi. Is Emmet supposed to work in Emacs with Vue Official Extension? Or does it work in VS Code only?

Hi. Is Emmet supposed to work in Emacs with Vue Official Extension? Or does it work in VS Code only?↳

@so1ve This contributor may know the details

If your emacs is configured to use Volar as the language server for vue files, then it should provide emmet completions for emacs.


Improve performance of automatic discovery re-index after database changes

Description
Use hibernate READ_ONLY mode when a reindex of discovery is triggered after database changes. The performance of this reindex actions improve a lot using the readonly mode.
Instructions for Reviewers
This reindex is triggered when a file in [dspace-dir]/solr/search/conf/reindex.flag exists (be careful, it uses dspace installation directory)
Create this file, restart tomcat and execute tail dspace.log to watch the index messages. The process should finish sooner.
Include guidance for how to test or review your PR. This may include: steps to reproduce a bug, screenshots or description of a new feature, or reasons behind specific changes.
Checklist
This checklist provides a reminder of what we are going to look for when reviewing your PR. You need not complete this checklist prior to creating your PR (draft PRs are always welcome). If you are unsure about an item in the checklist, don't hesitate to ask. We're here to help!

[x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.
[x] My PR passes Checkstyle validation based on the Code Style Guide.
[x] My PR includes Javadoc for all new (or modified) public methods and classes. It also includes Javadoc for large or complex private methods.
[x] My PR passes all tests and includes new/updated Unit or Integration Tests based on the Code Testing Guide.
[x] If my PR includes new libraries/dependencies (in any pom.xml), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
[x] If my PR modifies REST API endpoints, I've opened a separate REST Contract PR related to this change.
[x] If my PR includes new configurations, I've provided basic technical documentation in the PR itself.
[x] If my PR fixes an issue ticket, I've linked them together.

We have tried this improvement in our test 7.6 instance and we haven't managed to get it to finish. In the two attempts that we have performed we have seen the indexing stopping without leaving any message in the logs at all. Both times we've run it it has abruptly stopped after having processing similar number of items (~40,000 items)


Others# Cannot parse MultivaluedMap in restful service

From org.jboss.resteasy.core.MessageBodyParameterInjector.inject(HttpRequest, HttpResponse, boolean)
it call HttpServletInputMessage.formParametersRead before calling HttpServletInputMessage.getDecodedFormParameters, but the first value assigment of variable decodedFormParameters is in method HttpServletInputMessage.getDecodedFormParameters.
The resteasy would not parse the MultivaluedMap parameter because the parameter check without parameter initialization

Change-Id: I5dc2ccaf9bb070b185645ea780079bb1fb0574f3

Thank you for the contribution. We are cleaning up older PR's that seem to be stale. If you feel this is still an issue please feel free to re-open.


How to use brave apache http interceptor

The current apache http interceptor is talking about creating http client with an example but the example is not clear. This is a spring boot application where I have to intercept apache http client calls to add tracing information. Any help is appreciated.
Looks like the constructor has changed for the request interceptor. I have added a brave singleton for the app and used it to created a http client bean which is used in other parts of the project.However when spring tries to create a final response, I get an illegalaccessexception. This is a bit weird and might be due to conflicting dependencies? Will research more...

did you come up with clarity on this topic (sharing your thoughts might help others)

It turned out fairly easy. However I left my prior workplace and it has been a while. The solution for spring boot is to expose a simple apacheHttpClient bean which then during creation will use the custom code to inject zipkin into the http headers. Spring already exposes zipkin where you can extract the existing trace info or create new one. For my purpose I just needed to pass the trace info when we were calling since our end points where we receive were written in spring so that worked out of the box for spring with zipkin integration.

gotcha, so you ended up using spring-cloud-sleuth instead. thx for the feedback


class level mocks and inheritance

Looking for some help.  I am trying to mock a class level method but seem to be doing something wrong.
require "spec"
require "mocks/spec"

class Base
  def self.hello
    puts "Hello"
  end
end

class Say < Base
  # def self.hello
  #   puts "Hello"
  # end
end

Mocks.create_mock Say do
  mock self.hello
end

describe Say do
  allow(Say).to receive(self.hello()).and_return("Hello")
  it "says Hello" do
    Say.hello.should eq "Hello"
  end
end

If the self.hello method is in the base class, I get the following error:
there is no previous definition of 'hello'

Removed second issue since it was unrelated to inheritance issue.

Oh. I think mocks.cr simply does not account for inherited methods at the moment. There is a quite a chance that the only way to account for that is to have some option to tell macro, that it is inherited, i.e.:
Mocks.create_mock Say do
  mock :inherited, self.hello
end

I will take a look into the code and see if it can be done simply.

Thanks @waterlink.  I also tried to mock the base class but hit a different error.  Appreciate the help.

What was the different error and code to reproduce?
--
Best Regards,
Oleksii Fedorov,
Competent Programmer,
TDD, Microservices, Ruby, Clojure, Go and more,
+49 15757 486 476
On Wed, Mar 2, 2016 at 8:46 PM, Dru Jensen<EMAIL_ADDRESS>wrote:

Thanks @waterlink https://github.com/waterlink. I also tried to mock
the base class but hit a different error. Appreciate the help.
—
Reply to this email directly or view it on GitHub
https://github.com/waterlink/mocks.cr/issues/17#issuecomment-191395431.

require "spec"
require "mocks/spec"

class Base
  def self.hello
    puts "Hello"
    "Hello"
  end
end

class Say < Base
end

Mocks.create_mock Base do
  mock self.hello
end

describe Say do
  it "says Hello" do
    allow(Base).to receive(self.hello()).and_return("World")
    Say.hello.should eq "World"
  end
end

Results:
E

Failures:

  1) Say says Hello

       Assertion failed (mocks.cr): @@__mocks_name can not be nil
       [4546725474] *CallStack::unwind:Array(Pointer(Void)) +82
       [4546725377] *CallStack#initialize<CallStack>:Array(Pointer(Void)) +17
       [4546725336] *CallStack::new:CallStack +40
       [4546728801] *Exception#initialize<Exception, String, Nil>:CallStack +33
       [4546728737] *Exception::new<String>:Exception +97
       [4546684569] *raise<String>:NoReturn +9
       [4546884375] *Say@Base::hello:NoReturn +23
       [4546696692] ~proc( -> Void)@./spec/test_spec.cr:19 +84
       [4546695790] *it<String, String, Int32, &( -> Void)>:(Nil | Bool | Array(Spec::Result)) +366
       [4546695404] ~proc( -> Void)@./spec/test_spec.cr:18 +60
       [4546831507] *Spec::RootContext::describe<String, String, Int32, &( -> Void)>:Spec::Context+ +195
       [4546695331] *describe<Say:Class, String, Int32, &( -> Void)>:Spec::Context+ +51
       [4546683585] __crystal_main +45969
       [4546692328] main +40

Finished in 0.63 milliseconds
1 examples, 0 failures, 1 errors, 0 pending

Oh. I see. That is actually reaching a code I was considering being "Dead Code". Apparently it is not.
Could you try adding this:
  Mocks.create_mock Base do
    mock self.hello
  end

+
+ Mocks.create_mock Say do
+ end
+
  describe Say do
    it "says Hello" do
      allow(Base).to receive(self.hello()).and_return("World")

It actually might work..

Well, the error went away but the test failed:
require "spec"
require "mocks/spec"

class Base
  def self.hello
    puts "Hello"
    "Hello"
  end
end

class Say < Base
end

Mocks.create_mock Base do
  mock self.hello
end

Mocks.create_mock Say do
end

describe Say do
  it "says Hello" do
    allow(Base).to receive(self.hello()).and_return("World")
    Say.hello.should eq "World"
  end
end

Results:
Hello
F

Failures:

  1) Say says Hello
     Failure/Error: Say.hello.should eq "World"

       expected: "World"
            got: "Hello"

     # ./spec/test_spec.cr:24

Finished in 0.7 milliseconds
1 examples, 1 failures, 0 errors, 0 pending

Failed examples:

crystal spec ./spec/test_spec.cr:22 # Say says Hello

This works though!
require "spec"
require "mocks/spec"

class Base
  def self.hello
    puts "Hello"
    "Hello"
  end
end

class Say < Base
end

Mocks.create_mock Base do
  mock self.hello
end

Mocks.create_mock Say do
end

describe Say do
  it "says Hello" do
    allow(Say).to receive(self.hello()).and_return("World")
    Say.hello.should eq "World"
  end
end

Results:
.

Finished in 0.7 milliseconds
1 examples, 0 failures, 0 errors, 0 pending


Fixed dark mode styles on index

Closing for now not a main priority and will update with global style changes.


Not reliable getFirstExternalNetworkInterface function

Hi, I'm reading the code of your library and I think you are using the getFirstExternalNetworkInterface function to get the current active interface in the system to start monitoring the data transfer speed.
If I'm correct about this, there's a problem with that function and is not reliable.
Note: I'm using OS X
If I have my WiFi connection active and I'm also connected to wired using the thunderbolt port the os.networkInterfaces() execution will return this:
{
  lo0: [
    {
      address: '::1',
      netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      scopeid: 0,
      internal: true
    },
    {
      address: '<IP_ADDRESS>',
      netmask: '<IP_ADDRESS>',
      family: 'IPv4',
      mac: '00:00:00:00:00:00',
      internal: true
    },
    {
      address: 'fe80::1',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      scopeid: 1,
      internal: true
    }
  ],
  en0: [
    {
      address: 'fe80::bae8:56ff:fe44:f972',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: 'b8:e8:56:44:f9:72',
      scopeid: 4,
      internal: false
    },
    {
      address: '<IP_ADDRESS>',
      netmask: '<IP_ADDRESS>',
      family: 'IPv4',
      mac: 'b8:e8:56:44:f9:72',
      internal: false
    }
  ],
  awdl0: [
    {
      address: 'fe80::c4ff:94ff:feae:e2e2',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: 'c6:ff:94:ae:e2:e2',
      scopeid: 8,
      internal: false
    }
  ],
  utun1: [
    {
      address: 'fe80::d006:2732:5299:2715',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      scopeid: 11,
      internal: false
    }
  ],
  en5: [
    {
      address: 'fe80::ca2a:14ff:fe4c:1543',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: 'c8:2a:14:4c:15:43',
      scopeid: 12,
      internal: false
    },
    {
      address: '<IP_ADDRESS>',
      netmask: '<IP_ADDRESS>',
      family: 'IPv4',
      mac: 'c8:2a:14:4c:15:43',
      internal: false
    }
  ]
}

With this data, the getFirstExternalNetworkInterface will return en0 as the active interface which is correct, but if I turn off my WiFi device and and execute the os.networkInterfaces() method again the output will be this:
{
  lo0: [
    {
      address: '::1',
      netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      scopeid: 0,
      internal: true
    },
    {
      address: '<IP_ADDRESS>',
      netmask: '<IP_ADDRESS>',
      family: 'IPv4',
      mac: '00:00:00:00:00:00',
      internal: true
    },
    {
      address: 'fe80::1',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      scopeid: 1,
      internal: true
    }
  ],
  utun1: [
    {
      address: 'fe80::d006:2732:5299:2715',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      scopeid: 11,
      internal: false
    }
  ],
  en5: [
    {
      address: 'fe80::ca2a:14ff:fe4c:1543',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: 'c8:2a:14:4c:15:43',
      scopeid: 12,
      internal: false
    },
    {
      address: '<IP_ADDRESS>',
      netmask: '<IP_ADDRESS>',
      family: 'IPv4',
      mac: 'c8:2a:14:4c:15:43',
      internal: false
    }
  ]
}

And the getFirstExternalNetworkInterface will return utun1 as the active interface which is incorrect, since the current active interface is en5.
I see two problems here...

You are relaying in the internal === false value to determine which is the active interface
You are trying to get the first value of an object which is a non-ordered structure

Hi Dave,
thank you for your comment! Yes, you are completely right! Let me try to give some details:

order: well yes, but I am not really sure how I should determine an order. I guess also ordering by name would not give better results, right? Any idea about that??
internal === false: this is what I found in the docs:
true if the network interface is a loopback or similar interface that is not remotely accessible; otherwise false. So therefore I thought that this would make sense ...

The general idea for this function was to at lease get one "valid" external network interface if the user does not provide one ...
Any ideas (hint) to improve it ? Thank you in advance!

Ha, I guess I already have an idea ... will implement it tomorrow. And I will change the name of the function (which is anyway not exposed) to getDefaultNetworkInterface()
Thank you again for pointing this out!

Just published a fix (incl. fallback)


Fix Parser.new to load content from file

When using Parser.new(path_to_file, path_to_schema), path_to_file was handled verbatim as string, and not as a file path. Spec tests were not catching this. Both issues are fixed.
Additionally, parsing was giving a warning about deprecation of BigDecimal.new(), which was taken care of, too.

Sorry about the late reply!
So, basically it appeared as a regression to me because:

I upgraded from 1.2 to 2.0 and the code stopped working (in 1.2 you could pass path and it got expanded: https://github.com/lumoslabs/paxmex/blob/1.2.0/lib/paxmex/parser.rb#L17)
README says you can use Parser.new with path: parser = Parser.new(path_to_raw_file, path_to_schema_file)

@kamenlitchev ah ok, I understand. Can we add a method like Parser.open or Parser.from_file to handle the path case then?

Sure. I will see to adding it


Upgrade your

use HEAD for reference, keep your work in a separate branch, see GitFlow workflow and GitHub Guides for reference). After you do this — feel free to poke around with the branches, maybe learn something new.

Use GitHub Desktop to clone the repository on your PC and update your . Push it to the remote, check the changes and create your first Pull Request. Meanwhile, it's safe to delete the feature/head branch, because it was successfully merged into develop.


Parser does not like the column name "of"

With the following sql
CCJSqlParserUtil.parse("select feeentity0_.of from vw_fee feeentity0_")
I get this error. For some reason it does not like the "of" column. Is there anyway to fix this without altering the sql?
net.sf.jsqlparser.parser.ParseException: Encountered " "." ". "" at line 1, column 19.
Was expecting one of:
    <EOF>
    "AS" ...
    "DO" ...
    "ANY" ...
    "KEY" ...
    "PERCENT" ...
    "END" ...
    "INTO" ...
    "FROM" ...
    "OPEN" ...
    "TABLE" ...
    "WHERE" ...
    "FOR" ...
    "XML" ...
    "UNION" ...
    "GROUP" ...
    "ORDER" ...
    "VALUE" ...
    "HAVING" ...
    "INSERT" ...
    "VALUES" ...
    "REPLACE" ...
    "TRUNCATE" ...
    "INTERSECT" ...
    "CAST" ...
    "EXCEPT" ...
    "MINUS" ...
    "OVER" ...
    "PARTITION" ...
    "EXTRACT" ...
    "MATERIALIZED" ...
    "START" ...
    "CONNECT" ...
    "PRIOR" ...
    "SIBLINGS" ...
    "COLUMN" ...
    "NULLS" ...
    "FIRST" ...
    "LAST" ...
    "ROWS" ...
    "RANGE" ...
    "FOLLOWING" ...
    "ROW" ...
    "COMMIT" ...
    "SEPARATOR" ...
    "CASCADE" ...
    "NO" ...
    "ACTION" ...
    <K_DATETIMELITERAL> ...

    "::" ...
    "ORDER" ...
    "ORDER" ...
    ```

It does not "like" it because of is a reserved word in standard SQL (http://developer.mimer.se/validator/sql-reserved-words.tml) and in this parser. You cannot use reserved words as database object names unless they are in double quotes or square brackets.
As you specifically mentioned that you don't want to modify the sql. Then you would have to modify the parser. Which means removing of from the list of keywords. So that "of" could be matched by the identifier rule.

That is not quite true. JSqlParser supports keywords as identifiers. You have to adapt RegObjName rule and add there your keyword.

ok fair enough it is a reserved word. Doesn't seem to be any easy way to ignore reserved words :(. I'll go down the path of updating the sql then.

it was easy enough for me to alter the sql to have quotes around of and that fixed the issue.


Change server update loop from NoWait to Default

Change reduces idle CPU usage by a large amount. (100% to 0%)
Needs testing.
I have confirmed only that POST and GET requests with plain text still work.

One issue is that LoopRunMode.Default prevents users from returning from the listen method (param blocking:Bool):
function main() {
	new weblink.Weblink().listen(2000, false);
	trace("hello!"); // isn't called with this patch
}

Also, because MainLoop/Thread.events are not integrated with the libuv loop, I do not expect any timers will be ran either.

One issue is that LoopRunMode.Default prevents users from returning from the listen method (param blocking:Bool):
function main() {
	new weblink.Weblink().listen(2000, false);
	trace("hello!"); // isn't called with this patch
}

Also, because MainLoop/Thread.events are not integrated with the libuv loop, I do not expect any timers will be ran either.

Maybe we could build out a system to run the timers using a background thread for the Haxe std. I know for example Heaps.io has to handle the haxe.Timer system as well as openFL instead of the std, where as targets such as JS work out of the box.


Get-MSIntuneAuthToken fail saying it cannot find a dll

Hello,
The AzureAD powershell module removed the DLL Microsoft.IdentityModel.Clients.ActiveDirectory.dll in latest version. Because of that, when the psintune powershell module is install and the get-msintuneauthtoken is used, it failed saying it cannot find the required dll. I think this method is deprecated and a new way must be used to get the token.

Yeah, it seems modern driver management is dying

Actually, there is nothing wrong with the MDM script itself, the problem lies in the module PSIntuneAuth (Nickolaj Andersen) which is used to authenticate with and which relies on the AzureAD module being on the device.
The PSIntuneAuth module downloads the latest AzureAD module which no longer contains the files (Microsoft.IdentityModel.Clients.ActiveDirectory.dll, Microsoft.IdentityModel.Clients.ActiveDirectory.Platform.dll, Microsoft.IdentityModel.Clients.ActiveDirectory.Platform.xml and Microsoft. IdentityModel.Clients.ActiveDirectory.xml) which are expected to be in that module.
It would work if the PSIntuneAuth module was scripted to use a specific version of the AzureAD module that contained the files or updated to support Microsoft's latest AzureAD module.
I added a step in the task-sequence before the MDM script runs that checks if the computer is on the Internet and if so, downloads the AzureAD module and copies in the missing files that are expected to be there. Not the prettiest but it works!

Yeah I already opened a ticket on the PSIntuneAuth because it's using deprecated content, but I don't think it will be updated unfortunatly.


updated dist files to reflect all changes of the source files

@joaom182 I just ran gulp to update the files in the dist folder to reflect all changes of the source files to fix #11
Please review and merge and update the npm repo.


[60] Update Contributing.MD with New Merge, Branch & Squash Policies

Added new guidelines for:

creating new branches
squashing before merging
generic merging and contributing details

Codecov Report

Merging #103 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #103   +/-   ##
=======================================
  Coverage   70.41%   70.41%
=======================================
  Files          77       77
  Lines        6166     6166
=======================================
  Hits         4342     4342
  Misses       1824     1824

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 28fab2e...b7ba537. Read the comment docs.


ENH: add create_diagonal

Closes gh-15

any comments appreciated @j-bowhay @mdhaber !

rendered docs look good to me, thanks for the review Jake!


Change authentication method to use OIDC identity tokens

What this PR does / why we need it:
As of present, authentication is performed by the Merlin and Turing SDKs using Google OAuth 2.0 access tokens (generated after authentication with Google's OAuth server) that are added to the headers of requests sent to the Turing API server. These tokens are then used by an internal proxy which will validate the access token and then retrieve the user profile information from the Google API.
However, in keeping with the move of the Google Identity Services client library from OAuth 2.0 access tokens to Google OpenID Connect (OIDC) identity tokens, we are similarly replacing the use of the former for the latter. These tokens generated would similarly be added to the headers of requests sent to the Turing API server to be validated internally.
A utils module caraml_auth in the package caraml-auth-google has been created in the CaraML SDK repository to provide this new method of authentication.
This PR serves to update the existing authentication method used by the Turing SDK.
Which issue(s) this PR fixes:
The Merlin SDK will import and use the function get_default_id_token_credentials provided by the caraml-auth-google package:
from caraml_auth.id_token_credentials import get_default_id_token_credentials

credentials = get_default_id_token_credentials(target_audience="sdk.caraml")
credentials.refresh(Request())

Does this PR introduce a user-facing change?:

NONE

Checklist

[ ] Added unit test, integration, and/or e2e tests
[ ] Tested locally
[ ] Updated documentation
[ ] Update Swagger spec if the PR introduce API changes
[ ] Regenerated Golang and Python client if the PR introduce API changes

Thanks a lot for the quick review! Will be merging this once the pipeline succeeds!


compositor.updateSize() does not handle nested scenes

compositor.updateSize() does not correctly handle a case with nested scenes (example described here) where the size of a scene depends on another scene.
There's a workaround that involves manually calling compositor.updateSize() again on nested scene's size change, but it'd be nice if the engine somehow handles this case as well, if possible.

I think there is something we can do with the initial mount but updating the inner scene whenever the DOM element that it is mounted into changes size is something that is a bit trickier.  Since the DOM does not give resize events for non body elements, we would have to bake this pretty deep into the implementation.  I think for now, the fact that is is possible is good enough while we talk about how cleanly we could implement this.
One question I have is what usecase are you using nested scenes for?  Where do you see the benefits besides just adding a new subtree to the scene?

@michaelobriena The linked example is the use case. I'd like to render a React component to a DOM element managed by famous but this React component can contain one or more famous scenes. It allows me to reuse existing React components. It also provides developers an option for progressive enhancement with famous.

What's the status on this issue and PR?
It appears a fix was made for the events, but curious whether a solution was also put forth regarding this issue.
@michaelobriena @DnMllr

@pilwon @FarhadG, @alexanderGugel is working on a solution for the ability to get the DOM element associated with a Famous Node.  This will be done via event hooks in the DOM renderer, not as a method on the component itself.
We cannot have nested compositors update their size for free since an html element resizing does not trigger an event and it is not something we want application side since it is a use case we do not want to support for a variety of reasons (Breaks in worker code, breaks in server side code, DOMElements are pooled so it isn't guaranteed to be correct forever, multiple scenes breaks the compositing abstraction).  The event hooks I mentioned will give users the knowledge needed so they can trigger actions to occur when appropriate for their particular integration.
I would like to close this for now because any special casing of nested scenes is not something we are looking to handle at the rendering engine level.


Remove need for [FIRApp configure] in Messaging unit tests

#1902 added an implicit dependency on the host app calling [FIRApp configure]
This PR removes that requirement.
Also fix testSubscribeWithoutStart which wasn't being executed properly before and only passing as a side effect of other tests.

Nice cleanup and catch with the failing test!

More commits coming. Still a few failures running internal tests.


Inconsistent info about adding secure cluster connectivity to an existing workspace

Hi there,
First of all, thanks for the good documentation.
But I noticed something that seems to be wrong, there's a line in this page saying

You cannot add secure cluster connectivity to an existing workspace. For information about migrating your resources to the new workspaces, contact your Microsoft or Databricks account team for details.

but then, down below, there is a whole section talking about Add secure cluster connectivity to an existing workspace

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

ID: 7c595fbe-0951-4553-2999-0f563ac2726a
Version Independent ID: 7c595fbe-0951-4553-2999-0f563ac2726a
Content: Secure cluster connectivity (No Public IP / NPIP) - Azure Databricks
Content Source: databricks/security/network/secure-cluster-connectivity.md
Service: azure-databricks
GitHub Login: @mssaperla
Microsoft Alias: saperla

@garylirocks
Thanks for your feedback! We will investigate and update as appropriate.

Thanks for providing feedback that helps improve our documentation. We've created an internal work item (DOC-#9483) to address your feedback. The timeline for resolution varies based on resourcing.
#please-close


renderer/Scene: Scene paints modifications

For now, the only ways to modify scene paints are Result Scene::push(Paint* paint) and Result Scene::clear(bool free) methods. It is still possible to get scene paints via list<Paint*>& Scene::paints() and modify the list directly, but this is probably not the best way to do it because it breaks the reference counting.
My suggestion is to add some methods for more control over the paints in the scene, for example:

Result Scene::remove(Paint* paint) - removes paint from scene
Result Scene::insert(size_t index, Paint* paint) - inserts paint into scene at index

See also: https://github.com/thorvg/thorvg/issues/2598

@lpogic Hello, this is my suggestion. Please let me know if this doesn't compatible with you. Thanks.
Addition
Result Scene::remove(Paint* paint);   //Remove the paint
Paint* Scene::remove(size_t idx);  //Remove the paint associated with the idx
size_t Scene::count();  //Return the current paint count
const Paint* Scene::get(size_t idx) const;   //Temporary access to the paint associated with the idx.
size_t Scene::insert(Paint* paint, size_t idx  = SIZE_MAX);  //SIZE_MAX will append to the end of the paint list and return the paint idx.

Remove
Result Scene::push(Paint* paint);
std::list<Paint*>& Scene::paints();
Result Scene::clear(bool free = true);

@hermet Such an API would be enough for me. Only thing is will there be control over paint free during remove? I manage memory externally and it's important to me that there is a way to disable automatic free.

@lpogic Please check:
    /**
     * @brief Increment the reference count for the Paint instance.
     *
     * This method increases the reference count of the Paint object, allowing shared ownership and control over its lifetime.
     *
     * @return The updated reference count after the increment by 1.
     *
     * @warning Please ensure that each call to ref() is paired with a corresponding call to unref() to prevent a dangling instance.
     *
     * @see Paint::unref()
     * @see Paint::refCnt()
     *
     * @since 1.0
     */
    uint8_t ref() noexcept;

    /**
     * @brief Decrement the reference count for the Paint instance.
     *
     * This method decreases the reference count of the Paint object by 1.
     * If the reference count reaches zero and the @p free flag is set to true, the Paint instance is automatically deleted.
     *
     * @param[in] free Flag indicating whether to delete the Paint instance when the reference count reaches zero.
     *
     * @return The updated reference count after the decrement.
     *
     * @see Paint::ref()
     * @see Paint::refCnt()
     *
     * @since 1.0
     */
    uint8_t unref(bool free = true) noexcept;

    /**
     * @brief Retrieve the current reference count of the Paint instance.
     *
     * This method provides the current reference count, allowing the user to check the shared ownership state of the Paint object.
     *
     * @return The current reference count of the Paint instance.
     *
     * @see Paint::ref()
     * @see Paint::unref()
     *
     * @since 1.0
     */
    uint8_t refCnt() const noexcept;

@lpogic Hello, some ideas have been updated. Please review the revised APIs and let me know if they don’t work for you. Thank you.
    /**
     * @brief Adds a paint object to the scene.
     *
     * This function appends a paint object to the scene. If the optional @p at
     * is provided, the new paint object will be inserted immediately before the specified
     * paint object in the scene. If @p at is @c nullptr, the paint object will be added
     * to the end of the scene.
     *
     * @param[in] target A pointer to the Paint object to be added into the scene.
     *                   This parameter must not be @c nullptr.
     * @param[in] at A pointer to an existing Paint object in the scene before which
     *               the new paint object will be added. If @c nullptr, the new
     *               paint object is added to the end of the scene. The default is @c nullptr.
     *
     * @note The ownership of the @p paint object is transferred to the scene upon addition.
     * @note The rendering order of the paints is the same as the order as they were pushed. Consider sorting the paints before pushing them if you intend to use layering.
     * @see Scene::paints()
     * @see Scene::clear()
     */
    Result Scene::push(Paint* target, Paint* at = nullptr);

    /**
     * @brief Returns the list of paints currently held by the Scene.
     *
     * This function provides a list of paint nodes, allowing users to access scene-graph information.
     *
     * @see Scene::push()
     * @see Scene::clear()
     *
     * @warning This is read-only. Do not modify the list.
     * @since 1.0
     */
    const std::list<Paint*>& Scene::paints() const;

    /**
     * @brief Removes a paint object from the scene.
     *
     * This function removes a specified paint object from the scene. If no paint
     * object is specified (i.e., the default @c nullptr is used), the function
     * performs to clear all paints from the scene.
     *
     * @param[in] paint A pointer to the Paint object to be removed from the scene. If @c nullptr, remove all the paints from the scene.
     *
     * @retval Result::InsufficientCondition If the specified @p paint does not belong to the scene.
     *
     * @see Scene::push()
     */
    Result Scene::clear(Paint* paint = nullptr)

@hermet Hi, such an API will also suit my use case.


Is there any way to simulate our own scheduler developed based on Scheduling Framework

We have a scheduler developed based on k8s Scheduling Framework。Is it possible to use this simulator to simulate our customized scheduler?

I guess you can simulate your scheduler by changing here to initialize your scheduler.
https://github.com/kubernetes-sigs/kube-scheduler-simulator/blob/f22c7414fe7e1c293f45c558180b16443b482149/scheduler/scheduler.go#L86
We know that support for custom schedulers and custom plugins can be very valuable, and we have some ideas for them.
https://github.com/kubernetes-sigs/kube-scheduler-simulator/issues/35
https://github.com/kubernetes-sigs/kube-scheduler-simulator/issues/8

/kind support
/kind feature

@lggeor We'll have the feature external scheduler. See the progress in https://github.com/kubernetes-sigs/kube-scheduler-simulator/issues/182
I'll close it. If you have any further question, please feel free to reopen it.
/close


Update elastic4s-client-esjava, ... to 7.12.0

Updates

com.sksamuel.elastic4s:elastic4s-client-esjava
com.sksamuel.elastic4s:elastic4s-effect-cats
com.sksamuel.elastic4s:elastic4s-json-circe

from 7.8.1 to 7.12.0.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.sksamuel.elastic4s" } ]

labels: library-update, semver-minor

Superseded by #171.


Impossible to delete defunctional VM

I'm trying to remove my defunct Linux VM using az,
but it does not work, and the command just hangs or better to say it continues forever:
$ az vm delete -n NAME -g RESOURCE_GROUP --yes

Is there any method to forcedly remove a VM?

vm delete is a long running operation that can take some time. You can run the delete with --debug to see the networking traces for the polling events. If these are happening, then the delete is still ongoing.
If that does not help, please provide the information requested when a new issue is created for us to be able to assist you further.

Should I reopen the Issue or create a new one?
I've started the command more than 50 hours ago and it is still running;
I suppose something is going wrong. Other VMs are being deleted without any problems.
It is the only strange one

You can provide the following and reopen the issue:

Environment summary
Install Method (e.g. pip, interactive script, apt-get, Docker, MSI, edge build) / CLI version (az --version) / OS version / Shell Type (e.g. bash, cmd.exe, Bash on Windows)
<your data here>

Installation method:
curl -L https://aka.ms/InstallAzureCli | bash

az --version:
az --version
azure-cli (2.0.13)

acr (2.0.10)
acs (2.0.12)
appservice (0.1.12)
batch (3.1.1)
billing (0.1.3)
cdn (0.0.6)
cloud (2.0.7)
cognitiveservices (0.1.6)
command-modules-nspkg (2.0.1)
component (2.0.7)
configure (2.0.10)
consumption (0.1.3)
container (0.1.8)
core (2.0.13)
cosmosdb (0.1.11)
dla (0.0.10)
dls (0.0.12)
eventgrid (0.1.1)
feedback (2.0.6)
find (0.2.6)
interactive (0.3.7)
iot (0.1.10)
keyvault (2.0.8)
lab (0.0.9)
monitor (0.0.8)
network (2.0.12)
nspkg (3.0.1)
profile (2.0.10)
rdbms (0.0.5)
redis (0.2.7)
resource (2.0.12)
role (2.0.10)
sf (1.0.6)
sql (2.0.9)
storage (2.0.12)
vm (2.0.12)

Python (Linux) 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4]

Python location '/home/ic/azure-cli/bin/python'

OS version:
$ cat /etc/issue.net
Ubuntu 14.04.5 LTS

Shell Type:
bash

How does it look like:
$ az vm delete -n XXX -g YYY --yes
(50 hours later pressed ^C)
Long running operation wait cancelled.

Please reopen the issue.

Your CLI is over a dozen versions out of date.  The latest release is 2.0.27 (with 2.0.28 releasing this week).  Please update your CLI.  If the problem persists we'll gladly reopen the issue.


Resumable - working towards completely resumable parser+lexer (from puppet)

This is the first refactoring in order to allow a resumable lexer in addition to the parser.
To support it, I had to completely change and refactor the interface between them (or it would end up pretty ugly). That's because the parser must have access to the lexer, so it can request its state, and later recreate a new LexerThread with the saved state.
I think I also improved a few things on the way, but it's not perfect yet.
But I want some input before I continue. Did I miss anything important? Maybe I should use different architecture or better names?
Notes:
The puppet mechanism is currently broken. Later on I will fix it, and it will be much shorter, because it will be able to reuse most of the code from lalr_parser.py.
It breaks the custom lexer interface, so maybe it will have to go into v1.0
I managed to keep the postlexer interface the same with a hack, but maybe it's better to change it too.
Despite the changes, it seems that performance hasn't suffered noticeably.

Hmm how would you simplify it? It seems to me like these distinctions are necessary.

@MegaIng Added more changes.
I think the only tasks left are to:

Resume each parse with a new copy of lexer_state

Add some interface to puppet to let users control the lexer position

Fix compatibility with old CustomLexer interface

Refactor and cleanup in the aftermath (not sure if there's much left to clean up)


Support Angular6 - Cannot redeclare block-scoped variable 'ngDevMode'

When using library in a Angular6 project the compilation fails on the following error:
ERROR in node_modules/@angular/core/src/render3/ng_dev_mode.d.ts(9,11): error TS2451: Cannot redeclare block-scoped variable 'ngDevMode'.
Root cause:
The Angular npm packages are read twice.

First the projects Angular 6 packages
Second angular-inline-editor's dependency (5.2.11)

Please release a new version which supports Angular6

Late to the party but I was able to get this to work with Angular7 with one exception.
Adding this to your tsconfig.json under compilerOptions will prevent the Angular npm package from being read twice.
"paths": {
      "@angular/*": [
           "../node_modules/@angular/*"
        ]
    }

The only exception is that it will not work with the AoT enabled, have not dug into the why but disabling AoT / build optimizer under in the angular.json file made it work.
 "configurations": {
     "production": {
               ...
              "aot": false,
              "buildOptimizer": false,
               ...
            }
          }

Same problem here with angular 7.2.2.
Your solution didn't worked.


Eslint recently stopped displaying and underlining errors properly (Node)

The extension has recently stopped correctly underlining and displaying error messages for errors. It still indicates that an error is happening with a tiny bit of underlining, but no message.
This occurs in a "raw" Node project with "eslint-config-rallycoding": "^3.2.0" as a devDependency and no other packages and a local .eslintrc file. Latest version of VSCode on Windows 10.
This error does not occur in Next.js or React projects.
The only thing of note in the "Output" tab under "Eslint" is a series of these:
(node:7388) Warning: Accessing non-existent property 'cd' of module exports inside circular dependency
(node:7388) Warning: Accessing non-existent property 'chmod' of module exports inside circular dependency
(node:7388) Warning: Accessing non-existent property 'cp' of module exports inside circular dependency
(node:7388) Warning: Accessing non-existent property 'dirs' of module exports inside circular dependency
(node:7388) Warning: Accessing non-existent property 'pushd' of module exports inside circular dependency
(node:7388) Warning: Accessing non-existent property 'popd' of module exports inside circular dependency
(node:7388) Warning: Accessing non-existent property 'echo' of module exports inside circular dependency
(node:7388) Warning: Accessing non-existent property 'tempdir' of module exports inside circular dependency
...

@dancherb  does the validation happen correctly when you use eslint in the terminal. If this is the case can you please provide me with a GitHub repository I can clone that demos what you are experiencing.

This issue has been closed because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Transport section in config file

Hi @yyuu
I'm trying to use the transport directive and modify the message_length_limit for udp:
<transport udp>
  message_length_limit 4096
</transport>

Unfortunately the following Chef code won't work:
td_agent_source 'syslog_docker_input' do
  type 'syslog'
  parameters(
    port: 5140,
    protocol_type: 'udp',
    parse: {
      message_format: 'rfc5424',
    },
    'transport udp' => {
      message_length_limit: 4096,
    },
    '@log_level': 'info'
  )
end

The end result config is messed up as it tries to add transport udp:
<source>
  @type syslog
  port 5140
  protocol_type udp
  <parse>
    message_format rfc5424
  </parse>
  <transport udp>
    message_length_limit 1000000
  </transport udp>   # <=== This is wrong

Any clues how to work around this?
Thanks in advance!

@yyuu I'm seeing the same issue too. Is there any workaround we could use?


How to use it with windows firewall block enabled?

Hi!
I use windows 10 firewall with all default rules removed and with only my apps allowed.
If I run opera-proxy there no internet for it and I don't see any tries of it's exe that dropped by firewall.
How to give internet access to it?
Thank you.

hi! I have no idea. Maybe you should create allowing rule based on executable name?

Thank you for the reply! I found out that the service dnscache must be enabled for the app to work.

@vvkdev vvkdev
I personally recommend this application for dealing with Windows firewall: https://www.sordum.org/8125/firewall-app-blocker-fab-v1-9/
You can add entire folders with hundreds of apps with some clicks.


params: document --targets option

Related to iterative/dvc#4446 and iterative/dvc#5122.
Introduce description for new params option: --targets.

Hey @pared will iterative/dvc/pull/5122 be part of 1.x or 2.x? To know whether to put this in our v1 branch too or not. Thanks

@jorgeorpinel we have to track, ask the team about the backport PRs and do backport on the DVC.org end accordingly. They are designated as far as I know with a label?

OK. There's no special labels in iterative/dvc/issues/4446 or iterative/dvc/pull/5122 though. And that PR isn't merged yet.

There's no special labels in iterative/dvc/issues/4446 or iterative/dvc/pull/5122

So I will assume that this is NOT 2.0 and can go into our v1 branch.

✔ Backported to v1 in 28f46ee4.


Assignment 7 unittests

Hey @joshuanovak - your code looks good, but it looks like you accidentally opened this pull request into Bloc's main ios-exercises repo instead of your fork of the repo. :)


fix: Event Screen Full Size

Fixes #606
Changes:ActionBar and Bottom Navigation bar hidden
Screenshots for the change:

@iamareebjamal Made the changes.

@nikit19 Edited the title as per semantic PR

@nikit19 @GOVINDDIXIT  Removed the wildcard imports.
Also i found a logical error in code (The ActionBar and BottomNavigationBar used to hide even when invalid email address is entered.) Hence, fixed that as well.

@liveHarshit

PR title is wrong, it's frogot password screen. And learn git well, every problem has a solution.

@liveHarshit I am really sorry about the git issue, I have the knowledge of git but this time I messed up the commands. Will not happen in future for sure.

@iamareebjamal @nikit19 Kindly review this PR.

Please review this PR.


Updates to 404 page

Update 404 page to match what's on https://maestro.maark.com/rrr

Can I get assigned? let me know how to start.


Fix triple press in Aqara button

Fixed the triple press in Aqara sensor that won't work.

Pull Request Test Coverage Report for Build 747976757

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

Totals

Change from base Build 738492481:
0.0%

Covered Lines:
3707

Relevant Lines:
4457

💛  - Coveralls

I have changed the file in my HA instance, in this path:
/usr/local/lib/python3.8/site-packages/zhaquirks/xiaomi/aqara/switch_aq2.py
And now works very well :-D


[AST] Abort execution instead of entering an endless loop in lookupVisibleMemberDeclsImpl(…)

Abort execution instead of entering an endless loop in lookupVisibleMemberDeclsImpl(…).
Before this commit the endless loop could be entered using:
$ echo 'protocol A{class A:A{{{{}}}var f{if#^A^#' > /tmp/test.swift
$ swift-ide-test -code-completion -code-completion-token=A -source-filename=/tmp/test.swift

We shouldn't be adding assertions that we know will trigger. Before we assert here, we need to fix this case upstream somewhere so that this invalid situation can't happen at all.  In the meantime, you could do something like this:
// FIXME: This should be an assertion, we shouldn't ever have a type that is its own superclass.
if (BaseTy.getPointer() == CurClass->getSuperclass().getPointer())
  return;

(also, assert() will be compiled out in release builds, so this wouldn't be sufficient anyway)

This also doesn't help the case where the types are the same class, but with different generic parameters. (…though maybe that can't even get here.)

@benlangmuir Makes sense! :-)  Change committed, squashed and pushed. Please let me know if any further changes are needed.

I'd like to add a test case for this endless case, but doing so now might be a bit problematic since it will put the test suite in an endless loop for everybody with swift-ide-test compiled prior to this fix.
What is the best way to handle that?
Is there a way to add a test case with a maximum running time (say 1 second) to avoid giving the test suite an infinite running time? If not, should I add one? :-)

I think adding an assertion is fine as long as existing tests don't regress. We need to fix the circularity detection code if its not doing its job correctly.

@benlangmuir @jrose-apple @slavapestov You decide: assert or return + FIXME? Given a decision I'll adjust accordingly :-)

my vote is an assert.


Characters are Invisible in Widescreen Mode

Objects dont get rendered correctly (not at all, actually) in 1920x1080 widescreen mode.

Tested on 1680x1050 (which is 16:10 aspect ratio) in windowed mode and it worked.

On 1920x1080 (full HD, 16:9), it works on Hommlet, but not on the Moathouse map.
Interestingly enoug the fog also doesn't render there, but static meshes do.

So ToEE only supports 1680x1050 for now since the fog of war implementation will outright overwrite other memory if one goes higher. Until we replace fog of war, we can close this issue.


duffle push should also push all referenced images

#681 adds initial support for pushing and pulling bundles to OCI registries, using docker/cnab-to-oci.
However, the current implementation of docker/cnab-to-oci only copies the referenced images to the new repository, and does not also push them if they are only local.
Now, the question is: should duffle build, duffle push, or other tooling be responsible for pushing all referenced images?

I think duffle push should do this, and handle updating the bundle.json with appropriate digests. #690 says to do this during duffle build but I think this really should only happen when a bundle is published. I'd be in favor of making that happen here.

@jeremyrickard I'd like to understand why this is in the Duffle 1.0 milestone as we won't know what the spec for duffle push should be until the CNAB registries spec is complete.

I agree that this is not a requirement for 1.0, but at the same time, given the WIP in cnab-to-oci related to adding a relocation map and storing the entire bundle (see https://github.com/docker/cnab-to-oci/tree/relocation-map), I'd prefer to keep a close eye on this.
If you have a strong preference towards removing this from the milestone, feel free to.

Sorry, overzealous on my milestone applying.  I meant to just comment on this and add test. Removed the milestone.

Thanks. (I don't mind if this happens to go into the milestone so long as we don't hold the milestone up waiting for this.)

I think it would be cool if we got the assorted push related enhancements in for 1.0, but I also want to be realistic.  I hadn't added the others, but I agree with @radu-matei that I'd like to keep an eye on them. He and @silvin-lubecki have been hacking away on cnab-to-oci to hopefully figure out what the spec should look like. We implemented a push like capability in Porter with the current state of cnab-to-oci and it's quite useful to be able to share bundles so hopefully we get there sooner, rather than later.

Ref: https://github.com/docker/cnab-to-oci/pull/76


cc license mismatch

just stumbled over your pdf's...amazing work!
just a quick question: on the pdf itself, you state cc-by-nc (non-commercial) license,
while in the github repository you give "cc 0" as license.
What license is correct (for the files uploaded to github) ?

Greetings Horst, you can not copy and sell my work. You can print and use it privately. You can distribute it in a legitimate educational setting as long as you do not remove the copyright and give me credit if you reference an outtake in an educational setting.  If you have a specific situation, describe it to me and we can discuss it.  I let a local Python group raffle off 10 copies - they got about $8 a piece for them. Its entirely possible I confused the nature of the copyright consents but that was/is my intent.  Do you think that is unreasonable?  I hope you find the toolboxes of some help.  The files on GitHub are identical to those on wikipython except they are stored at 600 dpi for printing a great copy - necessary since type is small and info dense.
Stay safe and good coding.  I appreciate you message.
John
On Sunday, September 6, 2020, 04:05:38 PM EDT, Horst JENS<EMAIL_ADDRESS>wrote:
just stumbled over your pdf's...amazing work!
just a quick question: on the pdf itself, you state cc-by-nc (non-commercial) license,
while in the github repository you give "cc 0" as license.
What license is correct (for the files uploaded to github) ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Hello John,
i tried to but struggle to understand the current copyright policy of
github myself (since it is aquired by microsoft).
Originally, Github allowed only open-source licenses.
Now they state that you are not enforced any more to choose any license at
all, but recommend choosing an (open-source) license.
Anyway, your project (the very cool pyhton tables) is not code but more
art, having other license specifications than code.
What i can say for sure is that the license of your github project (CC0) is
not compatible with the license of  printed in the topleft corner of your
tables (CC-BY-NC).
The CC-BY-NC (=non-commercial) license has a huge mountain of it's very own
legal problems (beginning with the question of what exactly is a commercial
use) but this is another topic.
IF you want to stick with this licese, i suggest you change the license of
the github project from CC0 to CC-BY-NC, to avoid confusion.
On a personal note, i think you are far better served by licensing your
work under a CC-BY-SA licenses than under CC-BY-NC, because the cc-by-sa
license is a proper "open-source" license (allows upload of content to
wikipedia among others, give legal security etc). However, this is another
topic, if interested, see
https://stallman.org/articles/online-education.html
greetings from Vienna, Austria,
-Horst
On Mon, 7 Sep 2020 at 01:46, John Oakey<EMAIL_ADDRESS>wrote:

Greetings Horst, you can not copy and sell my work. You can print and use
it privately. You can distribute it in a legitimate educational setting as
long as you do not remove the copyright and give me credit if you reference
an outtake in an educational setting.  If you have a specific situation,
describe it to me and we can discuss it.  I let a local Python group raffle
off 10 copies - they got about $8 a piece for them. Its entirely possible I
confused the nature of the copyright consents but that was/is my intent.
Do you think that is unreasonable?  I hope you find the toolboxes of some
help.  The files on GitHub are identical to those on wikipython except they
are stored at 600 dpi for printing a great copy - necessary since type is
small and info dense.
Stay safe and good coding.  I appreciate you message.
John
On Sunday, September 6, 2020, 04:05:38 PM EDT, Horst JENS <
<EMAIL_ADDRESS>wrote:
just stumbled over your pdf's...amazing work!
just a quick question: on the pdf itself, you state cc-by-nc
(non-commercial) license,
while in the github repository you give "cc 0" as license.
What license is correct (for the files uploaded to github) ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/GitHubJohn2/TB1-Python-General-Toolbox/issues/1#issuecomment-687936429,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABBU7IVWAYNA6PVMXOQNOTSEQNMJANCNFSM4Q43BAJQ
.

--
First name:   Horst     tel:+43-660-52.65.377
Last  name:   JENS
Email:   horstj horst.jens<EMAIL_ADDRESS>Web:     http://www.spielend-programmieren.at

Horst, your kind words are very much appreciated.  Oddly, you are the second comment in two weeks to call my toolboxes "art". Certainly that was not their intention.
More importantly, thank you for the primer on copyrights. I have put on my task list to try and implement your suggestions sometime in the next couple of weeks.  I read your article and can not help but be impressed by the clarity of your perspective.  I have to say your home page is - ummmm - interesting.  I actually agree with some of your viewpoints. Among other things I operate a small timber farm - I have a hunch that over a couple of beers (I hear they have some decent beer in Vienna) we could have some interesting environmental discussions.
Thanks again.
John
On Wednesday, September 9, 2020, 04:24:47 AM EDT, Horst JENS<EMAIL_ADDRESS>wrote:
Hello John,
i tried to but struggle to understand the current copyright policy of
github myself (since it is aquired by microsoft).
Originally, Github allowed only open-source licenses.
Now they state that you are not enforced any more to choose any license at
all, but recommend choosing an (open-source) license.
Anyway, your project (the very cool pyhton tables) is not code but more
art, having other license specifications than code.
What i can say for sure is that the license of your github project (CC0) is
not compatible with the license of printed in the topleft corner of your
tables (CC-BY-NC).
The CC-BY-NC (=non-commercial) license has a huge mountain of it's very own
legal problems (beginning with the question of what exactly is a commercial
use) but this is another topic.
IF you want to stick with this licese, i suggest you change the license of
the github project from CC0 to CC-BY-NC, to avoid confusion.
On a personal note, i think you are far better served by licensing your
work under a CC-BY-SA licenses than under CC-BY-NC, because the cc-by-sa
license is a proper "open-source" license (allows upload of content to
wikipedia among others, give legal security etc). However, this is another
topic, if interested, see
https://stallman.org/articles/online-education.html
greetings from Vienna, Austria,
-Horst
On Mon, 7 Sep 2020 at 01:46, John Oakey<EMAIL_ADDRESS>wrote:

Greetings Horst, you can not copy and sell my work. You can print and use
it privately. You can distribute it in a legitimate educational setting as
long as you do not remove the copyright and give me credit if you reference
an outtake in an educational setting. If you have a specific situation,
describe it to me and we can discuss it. I let a local Python group raffle
off 10 copies - they got about $8 a piece for them. Its entirely possible I
confused the nature of the copyright consents but that was/is my intent.
Do you think that is unreasonable? I hope you find the toolboxes of some
help. The files on GitHub are identical to those on wikipython except they
are stored at 600 dpi for printing a great copy - necessary since type is
small and info dense.
Stay safe and good coding. I appreciate you message.
John
On Sunday, September 6, 2020, 04:05:38 PM EDT, Horst JENS <
<EMAIL_ADDRESS>wrote:
just stumbled over your pdf's...amazing work!
just a quick question: on the pdf itself, you state cc-by-nc
(non-commercial) license,
while in the github repository you give "cc 0" as license.
What license is correct (for the files uploaded to github) ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/GitHubJohn2/TB1-Python-General-Toolbox/issues/1#issuecomment-687936429,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABBU7IVWAYNA6PVMXOQNOTSEQNMJANCNFSM4Q43BAJQ
.

--
First name: Horst tel:+43-660-52.65.377
Last name: JENS
Email: horstj horst.jens<EMAIL_ADDRESS>Web: http://www.spielend-programmieren.at
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

Hello true artist GitHubJohn2,
sorry for reacting so late, i have troubles with the github notification system. I would love to continue this conversation outside of Github, do you have an email address? Mine is<EMAIL_ADDRESS>i will try to write you on the email linked on your github profile.
The quoted Article is not from my own Homepage, it's from Richard Stallman's and his site!

please see seperate email reply, sent by email to<EMAIL_ADDRESS>from
<EMAIL_ADDRESS>On Wed, 9 Sep 2020 at 16:22, John Oakey<EMAIL_ADDRESS>wrote:

Horst, your kind words are very much appreciated.  Oddly, you are the
second comment in two weeks to call my toolboxes "art". Certainly that was
not their intention.
More importantly, thank you for the primer on copyrights. I have put on my
task list to try and implement your suggestions sometime in the next couple
of weeks.  I read your article and can not help but be impressed by the
clarity of your perspective.  I have to say your home page is - ummmm -
interesting.  I actually agree with some of your viewpoints. Among other
things I operate a small timber farm - I have a hunch that over a couple of
beers (I hear they have some decent beer in Vienna) we could have some
interesting environmental discussions.
Thanks again.
John
On Wednesday, September 9, 2020, 04:24:47 AM EDT, Horst JENS <
<EMAIL_ADDRESS>wrote:
Hello John,
i tried to but struggle to understand the current copyright policy of
github myself (since it is aquired by microsoft).
Originally, Github allowed only open-source licenses.
Now they state that you are not enforced any more to choose any license at
all, but recommend choosing an (open-source) license.
Anyway, your project (the very cool pyhton tables) is not code but more
art, having other license specifications than code.
What i can say for sure is that the license of your github project (CC0) is
not compatible with the license of printed in the topleft corner of your
tables (CC-BY-NC).
The CC-BY-NC (=non-commercial) license has a huge mountain of it's very own
legal problems (beginning with the question of what exactly is a commercial
use) but this is another topic.
IF you want to stick with this licese, i suggest you change the license of
the github project from CC0 to CC-BY-NC, to avoid confusion.
On a personal note, i think you are far better served by licensing your
work under a CC-BY-SA licenses than under CC-BY-NC, because the cc-by-sa
license is a proper "open-source" license (allows upload of content to
wikipedia among others, give legal security etc). However, this is another
topic, if interested, see
https://stallman.org/articles/online-education.html
greetings from Vienna, Austria,
-Horst
On Mon, 7 Sep 2020 at 01:46, John Oakey<EMAIL_ADDRESS>wrote:

Greetings Horst, you can not copy and sell my work. You can print and use
it privately. You can distribute it in a legitimate educational setting
as
long as you do not remove the copyright and give me credit if you
reference
an outtake in an educational setting. If you have a specific situation,
describe it to me and we can discuss it. I let a local Python group
raffle
off 10 copies - they got about $8 a piece for them. Its entirely
possible I
confused the nature of the copyright consents but that was/is my intent.
Do you think that is unreasonable? I hope you find the toolboxes of some
help. The files on GitHub are identical to those on wikipython except
they
are stored at 600 dpi for printing a great copy - necessary since type is
small and info dense.
Stay safe and good coding. I appreciate you message.
John
On Sunday, September 6, 2020, 04:05:38 PM EDT, Horst JENS <
<EMAIL_ADDRESS>wrote:
just stumbled over your pdf's...amazing work!
just a quick question: on the pdf itself, you state cc-by-nc
(non-commercial) license,
while in the github repository you give "cc 0" as license.
What license is correct (for the files uploaded to github) ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<
https://github.com/GitHubJohn2/TB1-Python-General-Toolbox/issues/1#issuecomment-687936429
,
or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AABBU7IVWAYNA6PVMXOQNOTSEQNMJANCNFSM4Q43BAJQ
.

--
First name: Horst tel:+43-660-52.65.377
Last name: JENS
Email: horstj horst.jens<EMAIL_ADDRESS>Web: http://www.spielend-programmieren.at
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/GitHubJohn2/TB1-Python-General-Toolbox/issues/1#issuecomment-689595899,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABBU7NUNPZ27BKIUIQ4YPTSE6FRLANCNFSM4Q43BAJQ
.

--
First name:   Horst     tel:+43-660-52.65.377
Last  name:   JENS
Email:   horstj horst.jens<EMAIL_ADDRESS>Web:     http://www.spielend-programmieren.at


Edge linestyles not always working

tl;dr: Using edge_attr = (; linestyle = [...]) requires setting edge_plottype = :beziersegments too.
I was trying to use the linestyle edge attribute to represent edge types, but passing a Vector{Symbol} of line styles per edge sometimes caused plotting to fail:
ERROR: LoadError: MethodError: no method matching *(::Symbol, ::Float64)
[...]
Stacktrace:
  [1] _broadcast_getindex_evalf
    @ ./broadcast.jl:670 [inlined]
  [2] _broadcast_getindex
    @ ./broadcast.jl:643 [inlined]
  [3] getindex
    @ ./broadcast.jl:597 [inlined]
  [4] copy
    @ ./broadcast.jl:899 [inlined]
  [5] materialize(bc::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1}, Nothing, typeof(*), Tuple{Vector{Symbol}, Float64}})
    @ Base.Broadcast ./broadcast.jl:860
  [6] (::GLMakie.var"#189#190"{GLMakie.Screen{GLFW.Window}, Makie.Scene, MakieCore.LineSegments{Tuple{Vector{GeometryBasics.Point{2, Float32}}}}})(gl_attributes::Dict{Symbol, Any})
    @ GLMakie ~/.julia/packages/GLMakie/x68HK/src/drawing_primitives.jl:278
[...]

After investigating, I noticed that this only happens if there are no double- or self-edges in the graph. The reason is that in these cases (or if the graph is too large), edge_plottype = Makie.automatic makes GraphMakie choose Makie.linesegments! to plot the edges, which interprets the Vector as defining a single linestyle pattern to be used for all the edges. (That behavior is undocumented for Makie.linesegments, though the Makie.lines documentation has an example.) The GraphMakie beziersegments! recipe, on the other hand, works as expected because it lifts the properties itself. Therefore, a workaround (for smaller graphs) is to explicitly set edge_plottype = :beziersegments.
Example:
using GraphMakie, GLMakie, Graphs

graphplot(
    DiGraph([Edge(1 => 2), Edge(2 => 1)]),
    edge_attr = (; linestyle = [:dot, :dash]),
)
# works

graphplot(
    DiGraph([Edge(1 => 2), Edge(2 => 3)]),
    edge_attr = (; linestyle = [:dot, :dash]),
)
# MethodError: no method matching *(::Symbol, ::Float64)

graphplot(
    DiGraph([Edge(1 => 2), Edge(2 => 3)]),
    edge_attr = (; linestyle = [:dot, :dash]),
    edge_plottype = :beziersegments,
)
# works

Conversely, using the Float64[] linestyle variant (defining a custom pattern) works in the :linesegments case, while for :beziersegments it depends on the number of nodes in the graph: if the pattern length is equal to Graphs.nv, the error is "Pattern needs to be a Vector of floats. Found: Float64", otherwise it seems to work.
This is not strictly a bug, because nothing promises that this should work (so feel free to close this), but I wanted to file this anyway because the behavior surprised me and it took me a while to understand what's going on.
My preferred solution would be Makie.linesegments accepting a vector of linestyles, but otherwise maybe GraphMakie should plot individual Makie.lines and lift the properties like in the bezier case to ensure consistency?

You think the proposed solutions are sufficient?
I don't like auto promoting to beziersegments because of performance reasons. I think it is a bit different for curvy edges, because there both options (beziersegments and linesegments) have a clear usecase. I figured in this case it would be better to just provide a better error message which tells the user to specify the plottype.

I think that the specific graph being plotted should not influence whether this gets thrown for otherwise equal properties. More generally, that is probably the case for other vector-valued per-item properties too if there are any that Makie does not itself support. (?)
I'm not sure what makes the bezier case slow, is it the interpolation or is it the fact that every edge then has its own lines? Because if it's only the former, maybe the right solution would be to do Graphs.ne many lines plots instead of a single linesegments, and lift all properties in the same way that beziersegments uses? Or even to make beziersegments use zero interpolated points if the curvature is zero, subsuming the whole linearsegments case (and explicitly forcing zero curvature should it be required to straighten the lines), thus eliminating the distinction? Or am I missing something?
Otherwise if the performance issues come from using many lines, one per edge, I think that the better error message should get thrown if linestyle (or any property that Makie does not support per-item vector definitions for) is a Vector and edge_plottype is not :beziersegments. In the proposed solution, even with the better error, it is not obvious for somebody setting the linestyle vector that this issue might occur because they may not have tried with a graph that would trigger it.

Or even to make beziersegments use zero interpolated points if the curvature is zero

Thats what happens in the moment. BezierPath <: AbstractPath can be an arbitrary path, that one gets discretized. If there is no curvature, the path for the edge is a Line <: AbstractPath with trivial discretization of just start end endpoint. In mixed graphs (some Lines some BezierPaths) this means the edge pathes array gets typeunstable with dynamic dispatch (at some point someone should investigate whether the type instability is worth the elided discretization). For just Lines it should be relatively fast. However if you plot graphs with a few thousand nodes it used to be quite slow, presumably because of all the individual plots. Thats why I don't want to give up the linesegments path which should be fine for most of the plotted graphs. Even though it would be much nicer to not have that distinction.
I am not aware of any other properties where this happens in the moment. So if I understand you correctly you'd prefer the combination of edge_plottype = automatic => becomes beziersegments to fail in combination with a vector of linestyles, forcing the user to always set edge_plottype explicitly? I'm fine with taht.

In mixed graphs (some Lines some BezierPaths) this means the edge pathes array gets typeunstable with dynamic dispatch

it used to be quite slow, presumably because of all the individual plots

Are you saying the slowdown is mostly due to the former, the latter, or both?

So if I understand you correctly you'd prefer the combination of edge_plottype = automatic => becomes beziersegments to fail in combination with a vector of linestyles, forcing the user to always set edge_plottype explicitly?

Yes, I'd like any use of per-edge (vector) linestyle to fail with the new error unless edge_plottype = :beziersegments is set explicitly, to prevent the surprise of this error occurring inconsistently only for some graphs. (This would solve the issue for me.)

Are you saying the slowdown is mostly due to the former, the latter, or both?

In mixed graphs (curvy and straight lines) probably both. In graphs without curvy lines where everything is just a line it is slow because of individual plot objects per edge.


Advantages over dict.parse_json()?

Hi!
I'm just wondering, awesome though it is, what advantages this library gives a developer over the built in dict.parse_json()? Am I completely missing the aim of this library?
Thanks!
Sanchit

dict.parse_json() is not available in Godot 3.0, which this plugin is made for.

Okay I understand your question a bit better.
The question is that this is an easy, visual means of writing a JSON file. If you're happy with writing JSON files yourself, by all means, keep doing it.

Nope, your first answer is what I wanted - I didn't realise dict.parse_json() was removed in 3.0!
I'm still on 2.x right now...
Thanks!


Crypt remotes not shown?

Crypt remotes not shown in list?  Please keep RcloneTray updated, excellent start.

Fixed in 2.0.0-beta


Flatten json output for tcp-connection delete command

Current behavior
The json output format for tcp-connection delete is not correct because it has an unnecessary nested level.
Desired behavior
The tcp-connection key should be removed so that the command outputs a flat object.
Implementation details
The following line should be modified to produce the described output:
https://github.com/build-trust/ockam/blob/9c49e470a574d91854aa24628584eda4554aaad0/implementations/rust/ockam/ockam_command/src/tcp/connection/delete.rs#L55

Some tips for newcomers:

Create a new branch for the issue you are working on (don't push directly to your fork's develop branch)
Run cargo fmt. You can configure the editor to run it automatically everytime a file is saved
Run cargo clippy to make sure the code compiles + follows rust standards/best practices
You don't need to keep your branch updated with develop until there is a merge conflict. If you still want to update it, use git rebase develop instead of gir merge develop

We love helping new contributors! ❤
If you have questions or need help as you explore, please join us on Discord. If you're looking for other issues to contribute to, please checkout our good first issues.

@adrianbenavides I would like to work on this issue, Kindly assign this to me.

Can I work on this?

@nabeel001 That's awesome, this is all yours. Please let us know if you have any questions as you explore. You can also ask questions on the contributors discord https://discord.gg/RAbjRr3kds

@nazmulidris I have raised the PR for this issue through #6610 and also added my name to CONTRIBUTORS.md through #6616


Screenshot or animation missing

README misses screenshot or animation showing your code in action

Just added a gif of the boardview in action!


[GFX-945] Merge artist branch into Shapr3D master

Jira ticket URL (Why?)
GFX-945
Short description (What? How?) 📖
Merge changes from the artist branch into the master branch of our Google Filament fork. We made temporary modifications to glTF viewer (and the Filament renderer) to enable our artists to author materials, and up the default rendering quality offered by Filament. Meanwhile, Shapr has been using a newer upstream version of Filament. This will merge our changes into the Filament version used by Shapr.
These changes should be temporary, because we plan to move material authoring inside Shapr. Once done, we will discard a lot of these changes, and get closer to an unmodified Filament fork, thus enabling us to bump our fork easier to higher upstream versions.
Testing
Design review 🎨
N/A
Affected areas 🧭
Filament engine and glTF viewer app
Special use-cases to test 🧷
Everything Filament-related, and the glTF viewer app
How did you test it? 🤔
Manual 💁♂
Tried glTF viewer with a bunch of options and settings.

By the way, I think you may squash merge this PR, as it doesn't contain Google changes. I mean it is 135 commits according to Github...