1.0 ROADMAP

Below you can see the plan for this library, the plan starts with creating a very big release, after which API should be more stable. Then releases will be smaller until we reach 1.0. Why is next release so big? Because I did not want to make breaking changes all the time and I designed everything in my head first so that I could fit most/all breaking changes only in the next release, then focusing only on adding stuff.
Tasks for the next release:

[x] simplified action callbacks like getData, revertData, updateDataOptimistic, now they will receive data directly, and no matter whether using FSA or not
[x] removed internal networkReducer state, now it is a pure function, thx to this time travel will work and API can be simplified, we can use closures in request actions and values directly like requestKey
[x] getRequestKey renamed to requestKey, u just pass value not callback anymore, and moved out of mutations to meta directly, it will be also used for queries, not only for mutations
[x] requestsReducer will be removed, only networkReducer will be available, because this will give me powers to create more features plus supporting both ways is very confusing and hard to explain, for instance https://github.com/klis87/redux-saga-requests/issues/305 , networkReducer will be flexible though, u shouldnt miss any of requestsReducer features really
[x] refactor drivers to cancellable promises (with .cancel to support requests aborts)
[x] standardized successful responses, no matter you use driver directly, sendRequest, promiseMiddleware response, reducer, you get the very same response, for now containing data, but headers, status or more will be added in the future, albeit personally I use only response.data anyway most of the time. This had to be done to make it possible to support caching and SSR and in the future data persisting in localStorage all at the same time
[x] added automatic normalisation/denormalisation prototype, similar to Apollo but usable for any API, including REST
[x] getQuery and getMutations refactored from selector creators as optimised selectors, which is needed for good performance for denormalisation, and also using selectors for the same request type in multiple places will reuse the cache, again improving performance and also memory consumption
[x] support requestKey for queries and flatten mutation state in reducer with defined requestKey
[x] add requestSize key to automatically clear more requests of the same type than defined size, this will replace cacheSize
[x] synchronize cache with new API and made it work with mutations
[x] synchronize server side rendering middleware with the new API
[x] add handleRequests helper, which will simplify project usage, it will get config object and return middlewares (no need to document what order of middlewares is required etc), networkReducer and sagas, possibly even hide saga creation if someone doesnt use redux-saga in the app
[x] add some configuration to automatic normalisation, like callback to generate unique entity key etc
[ ] rewrite examples to new API
[ ] rewrite docs to new API

Tasks before 1.0:

[ ] rewrite some normalisation functions from recursive function to function with loops to improve performance and prevent theoretical possibility to run into stackoverflow
[ ] add some actions and/or auto mechanism to clean normalizedData
[ ] add promise driver
[ ] add attachToRequest action, which will return promise of any current request of a given type if it exists
[ ] add loaded prop to query object, as without it it is not possible to know whether data is empty as request was not dispatched yet or because it is truly empty, this will also prevent flickering if requests is dispatched for the 1st time after component is rendered
[ ] React suspence/error support, so u can catch those states any level up in component tree
[ ] reset actions, which will reset a query state and abort pending requests if any
[ ] local persistence support, allowing to create offline apps
[ ] rethink SSR and document it better, sometimes additional SSR middlewares might be even redundant when using with reduxFirstRouter for example
[ ] add config clearDataOnError etc
[ ] add more things to success response,like status, header, maybe even allow it to be extended
[ ] add selector creators helpers, which could merge queries/mutations etc
[ ] add pooling
[ ] add throthling/debouncing support
[ ] simplify interceptors composing
[ ] rething promise middleware response, preferably to handle all cases (success, error, abort) as resolved promise to prevent unhandle rejection promise warning
[ ] bundle UMD with rollup, good for marketing to reduce kbs :)
[ ] add onSuccess, onError, onAbort, onRequest keys to action.meta, this will help collocating all the logic in 1 place, inside actions
[ ] prepare 1 big showcase example, with Material-ui probably to make it look nice and showing real app problems
[ ] update mock driver so mock response will be defined inside action
[ ] fetch driver should be as easy to use as axios (it is not as u need to worry about json responses inside config) and actually recommended by default, as it is standard and doesnt require any additional lib (apart from polyfills for some browsers for now)
[ ] write docs in Docusaurus
[ ] blog series on Medium introducing problems this library tries to solve
[ ] subscriptions, it could be separate lib but graphql driver has subscriptions, so maybe it would be good to have it here built-in too
[ ] extra things for graphql driver, like client-side directives
[ ] before 1.0 ideally remove redux-saga dependency, I hope that all things can be actually implemented quite easily without sagas, with promises and redux middlewares, of course it will still be possible to use sagas with this library thx to promise middleware and putResolve for example

@klis87 would be nice if you will create PRs and mentions people to comment or review. As this will make room for other contributors to understand the code and help.
Also creating simple issues that can be resolved by others will let you think more about the architecture of the packages.
One thing that I noticed while trying to debug some issues is that some functions are very complex and hard to understand. In that case, I think that probably some comments and jsdoc will be useful to keep the codebase clear for others.
Let me know if I or other contributors can help you.

@strdr4605 thx for the feedback
For now this is very hard as first I need to finish next release. Next release will be almost like a new major version and many features will need to be implemented with complete picture which is in my head for now. Later I think it will be possible to do things as quite independent and small tasks. Then I will think how people could help, I really appreciate the offer btw!
Could you please give me some examples of complex functions? I try to write things in the way understandable by others, but I will try to simplify those harder parts of the system but I need to know which are those.
One thing which comes to my mind is that maybe u tried to debug sagas in runtime or without sourcemaps? This is my suspicion as in another issue https://github.com/klis87/redux-saga-requests/issues/311 you pasted below snippet which really is not source code but the code already compiled by Babel.
case 44:
  _context.prev = 44;
  _context.t0 = _context["catch"](28);
  // Here the eror is catched and responseError is a Error Object
  console.log({error: _context.t0});

  responseError = _context.t0;

...
...

case 57:
  // I log here the response and it is an object
  console.log({response});

  // So this "if" will break and call driver.getErrorPayload, will not be triggered
  if (response) {
     _context.next = 65;
     break;
  }

  _context.next = 60;
  return (0, _effects.call)(driver.getErrorPayload, responseError);

@klis87, I was looking at source file in Github to understand where to put logs in the compiled version.
But still functions like https://github.com/klis87/redux-saga-requests/blob/master/packages/redux-saga-requests/src/sagas/send-request.js are way too complex. Probably because it is a generator function it is hard to divide, but a least some "why" and "how" should be provided as comments.

@strdr4605 yes, I agree sendRequest could be a little simplified. I will make it better when trying to get rid of sagas totally, probably by replacing it with several cooperating middlewares. In the meantime after I finish next release, I will try to think of tasks I could delegate to volunteers with some hints etc.
Another way to help is to ask questions about API where it is confusing etc, I designed API so it is perfect for me, but not necessarily to others.

@klis87 As I see at this state. The package is almost ready for the next release. When it is expected? I want to see the new API. Will it be +- stable after v1.0?!

@strdr4605 next release will not be 1.0, but API for 1.0 will probably be mostly the same. It is possible that handleRequests won't contain sagas anymore, but actions api and driver should remain mostly similar. Thats why next release is taking so much time as I wanted this to become stable.
After 1.0 I won't do any breaking changes unless version 2.0.
Regarding time for the next release, I guess no more than 2 weeks, there is no much work to be done but I need to test everything in real apps and I am very busy with daily job.
For now, see https://github.com/klis87/redux-saga-requests/tree/dev/examples as most examples were rewritten to new API. I will let you know once TS types and docs are updated.
After next release, I will tag tasks with some hints which other people could help me with to faster release 1.0.

@strdr4605 new version published. Next tasks divided as help wanted, guidance wanted and others, so this is the way to help me, thx!

I will take a look and see if I have time to work on promise driver.
How about moving docs to Docusaurus. (As for example for my teammates (even I after 4+ months) will be easier to read and understand docs for Docusaurus).
I use v1 for our project and it's really nice. But maybe we can go with v2 as https://reactnavigation.org/ and others are already using alpha version.

@strdr4605 good idea with Docasaurus. If v2 is working, I would prefer that, especially that If I remember correctly it supports MDX
If you need some guidance with promise driver, I will gladly help too

How about also creating an npm org. Not sure about naming as you want to remove redux-saga  but would be better to have:
@redux-saga-requests/core
@redux-saga-requests/axios-driver
@redux-saga-requests/fetch-driver
@redux-saga-requests/promise-driver
@redux-saga-requests/graphql-driver
@redux-saga-requests/react

@strdr4605 I already created redux-requests npm org several months ago :) my next step is an attempt to get rid of sagas, so I could move to @redux-requests/core etc

I would suggest adding some jsdocs that may help contributors to understand the flow of the package and the purpose of some files/functions.
Another great idea is maybe to create a diagram like Redux one. Which will explain to users and contributors how redux-requests works.

@strdr4605 good ideas. What about Typescript instead of jsdocs? Personally I am not fan of types as comments, I just prefer typed language.

jsdocs not for typing but for explanations, (why this function/approach).
Have you thought about moving to TypeScript? Now I work mostly with TypeScript (annotating everything some times is hard) and now hard to work on a big JS codebase.
Also making types during development is easier than after everything is done.
When we will move completely to redux-saga-requests I will try to improve some types but I would still suggest moving to TypeScript.

@strdr4605 Yes I did but for now I am focusing to release 1.0 ASAP, which TS wont help with as I have complete API in my head anyway, we could do that afterwards. The job which is left I split into tasks which could be done in isolation, like promise driver, but others will be just faster for me to finish than explaining the whole library to other people, documenting it and creating internal types. I would like to do everything later though.
Anyway this library has very good tests coverage, so it is quite easy to understand how things work just by looking at tests, at least I hope so :)

@klis87 I asked a friend to create a logo for this package:

@strdr4605 That's look awesome, thx! I cannot wait for removing sagas and changing package name, when I will add it to README.md!

blog series on Medium introducing problems this library tries to solve

why not a separate site under klisiczynski.com or blog.klisiczynski.com?! Own your platform!!!
I created https://strdr4605.github.io/ using gatsbyjs starter in 2 days. + with google analytics, you may track people's interests!

@strdr4605 Thx for the advice. I thought about it, but I wanna kind of advertise this library and I expect huge amount of visitors on medium and close to 0 on my site :)

@strdr4605 Thx for the advice. I thought about it, but I wanna kind of advertise this library and I expect huge amount of visitors on medium and close to 0 on my site :)

You may also try to write a post on https://dev.to/

@klis87 Do you mean "polling" at Tasks after 1.0 > Other tasks:? If not:

What is "pooling"?
What do you think about "polling"? Do you think it could be part of this library or should be managed from the outside?

@iwan-uschka it was just a typo :) I meant polling, edited already.
It is on the roadmap and this will be declarative short polling. It will work like that, probably new meta.pool: integer will be added, so that request action will be repeated according to passed meta.pool.
Additionally I guess we will have stopPolling action, working like abortRequests but to cancel pollings. Probably also resetRequests will stop relevant pollings automatically (with extra flag to enable/disable this)

Nice! Like that :)
"polling" is part of "other tasks" and not of "Help wanted" or "Advice wanted". If you think that getting support would help in this case, let me know.

@iwan-uschka Actually, when I think about it, this could really be implemented as a totally different middleware, thx for the suggestion! Hence, this is a perfect candidate for Help wanted! See https://github.com/klis87/redux-requests/issues/418 for details


Scope Specific Links

It seems like it's increasingly advised as best practice to authenticate users with minimum permissions upfront, and subsequently request additional permissions within the context of where those permissions will be used (ie maybe you have a page to connect to your friends on your platform - links to request permissions from Facebook, etc should be on that page).
I've searched all over and this does not seem supported in Omniauth and it is driving me nuts. I've started writing my own manual library to do this for the platforms I use, but if I'm going to go through that effort, I figure I may as well build it into omniauth.
Is anyone working on this? Is there a reason it is not supported? Would the community support me if I fork it and send a pull request?

I posted in this in the wrong repo. Moving it to Devise.


Control outlets: "AttributeError: 'bool' object has no attribute 'observe'"

Where are you using pytradfri (eg stand-alone, Home Assistant etc)
Standalone: Both scripted and in CLI mode.
Version of pytradfri
6.3.0
Expected behaviour
Turn sockets on / off
Actual behaviour
I'm getting an error that looks like the one mentioned in #182, trying to run pytradfri to control an outlet, both in CLI mode and in a script I'm getting "AttributeError: 'bool' object has no attribute 'observe'".
Steps to reproduce
Launch CLI mode and execute the following:

sockets = [dev for dev in devices if dev.has_socket_control]
state_command = sockets[0].socket_control.set_state = False
api(state_command)

Generates the error message:
Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "/home/pi/.local/lib/python3.5/site-packages/pytradfri/api/libcoap_api.py", line 96, in request     return self._execute(api_commands, timeout=timeout)   File "/home/pi/.local/lib/python3.5/site-packages/pytradfri/api/libcoap_api.py", line 49, in _execute     if api_command.observe: AttributeError: 'bool' object has no attribute 'observe'
Note
Listing of devices / sockets, as well as their states is working without issue.

state_command = sockets[0].socket_control.set_state = False the command you're passing to api() is the result of the assign - False.


this.context.router undefined in IE10

We're currently running version 0.13.3 and are using the State Mixins to access .getParams() throughout the our app. Specifically we are calling the method in componentDidMount and componentWillReceiveProps.
When running the app in IE10, we get the error Unable to get property 'getCurrentParams' of undefined or null reference, which is being traced back to the getParams method of the State object:

I should also note that we're using Webpack and the Babel loader.

Did a little more digging and it looks like the this.context object doesn't have router defined at all. I was also curious if using the method in componentDidMount or componentWillReceiveProps was the issue. But, I get the same error if it's used in render.

So this only happens in IE? That's very weird. Can you make sure you're testing the exact same code in IE and other browsers?

Yeah, definitely weird. I've verified that the same code is being ran in IE, Chrome, and Firefox. The same code also works fine in IE11.

A failing test case would be great here. @bsbeeks You up for it?

@mjackson would love to. Newbie question...by a "failing test case", are you just looking for some code that you can run in IE10 that produces this error?

that, or an actual test in the tests directory

Thanks Ryan! Told ya it was a newbie question ;). I'll get one written this week.

On Jun 14, 2015, at 9:52 PM, Ryan Florence<EMAIL_ADDRESS>wrote:
that, or an actual test in the tests directory
—
Reply to this email directly or view it on GitHub.

I finally got some time to dig into this, and it looks like there is already a test written that should capture this use case:
https://github.com/rackt/react-router/blob/4e2ca3c14d077b1b5aa46bda6c66bbd330de03b0/modules/__tests__/URLUtils-test.js#L36
The catch is you have to run the tests in IE10. It looks like Karma has an IE launcher (https://github.com/karma-runner/karma-ie-launcher) where you can specify the version of IE by adding the following to the config:
customLaunchers: {
  IE10: {
    base: 'IE',
    'x-ua-compatible': 'IE=IE10'
  }
}

All the test from 0.13.3  are passing for me with W7 IE10 VM (modern.ie). Are you sure this happens only with IE10, and did you check if the same code gets called in another browser?

@taurose From what I can tell it only happens in IE10 on Windows 7. I've tested the same code in Firefox, Chrome, Safari, and IE11 and don't get the error mentioned above. I'll see if I can get more details on it.

I am having the same issue.

Maybe related to http://babeljs.io/docs/advanced/caveats/#classes-10-and-below-

I'm seeing this as well.
I was able to fix it by specifying the contextTypes attribute in my RouteHandler, described here: https://github.com/rackt/react-router/blob/v0.13.3/docs/guides/overview.md#dynamic-segments
react-router 0.13.3
Webpack + babel-loader
Google Chrome	43.0.2357.124 (Official Build) (64-bit)
Revision	d49eb48dfb64b379fdc61282ceca602acbc9065d-refs/branch-heads/2357@{#467}
OS	Mac OS X
Blink	537.36 (@196519)
JavaScript	V8 <IP_ADDRESS>

Thanks @coryvirok, I'll give that a shot.

Specifying the contextTypes didn't work for me. But, using the approach of passing the params through the RouteHandlers as props DID resolve any issues with using the getParams method. Neither method fixed the errors I was seeing with isActive(). That method is returning the same errors that getParams() did.

To summarize:
getParams()
Defining contextTypes appeared to have fixed any issues in IE10 for @coryvirok. However, it did not work for me. Instead I had to implement the params through the RouteHandler props as outlined in the docs (https://github.com/rackt/react-router/blob/v0.13.3/docs/guides/overview.md#dynamic-segments):
Router.run(routes, function (Handler, state) {
  var params = state.params;
  React.render(<Handler params={params}/>, document.body);
});

// and then pass the params down to every use of `<RouteHandler/>`
<RouteHandler {...this.props}/>

// Inbox ends up looking like this
var Inbox = React.createClass({
  render: function () {
    return (

        <Toolbar/>
        <Messages/>
        <RouteHandler {...this.props}/>

    );
  }
});

// and Message changes to:
var Message = React.createClass({
  render: function () {
    return (

{this.props.params.messageId}

    );
  }
});

isActive()
If you are using this method and need compatibility in IE10, you will need to implement a custom method to handle this. I decided to create a Router Utils that housed this method:
isActive (pathParts) {
  const path = window.location.hash;
  const routes = path.split('/').filter(string => {
    return string.length && string !== '#';
  });

  const isActive = pathParts.filter(route => {
    return routes.indexOf(route) < 0;
  });

  return !isActive.length;
}

Though it's not the best fix, it did resolve any issues with IE10. The downside to this approach is you don't have access to the route names. Instead you have to target parts of the url. This isn't a big issue for me since my route names and paths are consistent. An added bonus to this approach is I can check if a child route belongs to a parent route by passing in the parent route path:
// if my current path is /myparent/children/:id
// then within my children components I can run:
RouterUtils.isActive(['myparent']); // returns true

I haven't tested other methods that utilize this.context.router, but I'm assuming you'll run into similar issues in IE10.

I confirm issue. Please view my screencast https://youtu.be/7X-bEp_M-BA. @gaearon @mjackson @ryanflorence. Thanks!

I want to add that this is caused by Babel classes inheritance not entirely supported in IE<11, and can be fixed by adding an additional Babel transformer.
https://babeljs.io/docs/advanced/caveats/#classes-10-and-below-


text instead of pictures

The pictures of the permissions are fine, but it'd be very helpful to list the roles in selectable text, in JSON format so that we can just copy/past when composing the custom roles
[Enter feedback here]

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

ID: a49847b8-831e-eed9-6f5a-f74d987d1ae5
Version Independent ID: a0881789-2676-8167-d2fd-fdb26bc3716b
Content: How to - Use permissions in Azure Spring Cloud
Content Source: articles/spring-cloud/how-to-permissions.md
Service: spring-cloud
GitHub Login: @MikeDodaro
Microsoft Alias: brendm

@SteveColegrove Thank you for your feedback!  We've assigned this to the document author for them to review.

The pictures of the permissions are fine, but it'd be very helpful to list the roles in selectable text, in JSON format so that we can just copy/past when composing the custom roles
[Enter feedback here]
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: a49847b8-831e-eed9-6f5a-f74d987d1ae5
Version Independent ID: a0881789-2676-8167-d2fd-fdb26bc3716b
Content: How to - Use permissions in Azure Spring Cloud
Content Source: articles/spring-cloud/how-to-permissions.md
Service: spring-cloud
GitHub Login: @MikeDodaro
Microsoft Alias: brendm

This document describes the procedure using the Azure portal.  So far PMs agree that the purpose is satisfied by current format.

#please-close


Common location for copyright text used in *main.c files

The copyright text string that is printed as part of the help text is repeated in multiple files.  This string can be put in a shared location so that it only needs to be updated in one place.

Might want to bundle this work with the implementation of #751


(BKR-1439) Make Solaris 11 use OpenCSW for package installation

Previously Solaris 11 used a built-in repo with the 'pkg' command to
install third-party packages, and the git package provided in that repo
does not support TLS 1.2 and is no longer compatible with GitHub https:
repos. This updates Solaris 11 to behave the same as Solaris 10, which
uses the OpenCSW repo which offers a wide variety of packages, including
a git package which is compatible with GitHub https: clones.

👍 overall. Please add a test to the code & an entry to the CHANGELOG file, then it will be ready to push through the automation towards merging! Thanks for the fix!

@puppetlabs-jenkins retest this please

@ScottGarman is this still on your radar? We'd prefer to not have PRs sitting as reminders in our projects. We'd rather close them & leave this space for things that are in progress.
Would you mind using the ticket to keep this in your mind instead & re-open the PR when you've got the other work ready?


KAFKA-16560: Refactor/cleanup BrokerNode/ControllerNode/ClusterConfig

https://issues.apache.org/jira/browse/KAFKA-16560

Make ClusterConfig immutable and refactor ClusterConfig builder
Make BrokerNode immutable and refactor out build argument
Refactor out ControllerNode build argument
Refactor TestKitNodes

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@brandboat Sorry that I leave more comments below. please take a look. thanks

Thank you for your patience! I appreciate your input. Already addressed all comments as above. Please take another look when you are available :smiley:

Failed tests seems related to this pr, I'll check them later.

@brandboat Could you rebase code to trigger QA again? I run those tests on my local. They pass

@brandboat could you please fix the conflicts?


Allow returning Tuples from instructions

Hi! From looking at the IDL, it seems like returning Tuples from instructions isn't supported yet because the returns section is missing. The program compiles and runs fine, but the client wouldn't be able to get the return value. We are currently using custom structs to get around this, but wondering if there is any plan to support Tuples.
Thanks!

Regular tuples are not supported, not just returning them. It's almost always preferred to use named structs for public data because it makes it easier to understand the type and allows more discoverability.
It's close to impossible to tell what (u64, u64, u32, u32) means without looking at the source code. In contrast, named structs remove a lot of the mental overhead by self-describing the fields.


Update fusion transformer in AutoMM

Issue #, if available:
Description of changes:

Support constant learning rate in polynomial_decay scheduler.
Update [CLS] token in numerical/categorical transformer.
Fix parameters naming in fusion_transformer.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-1712-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1712/1/index.html

Job PR-1712-2 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1712/2/index.html


corrected a few style issues and fixed a few file names in tensorflow…

day-4/part-1-exercise-1 = minor style edit and sub title
day-4/part1-exercise-2 = minor style edit
day-4/part-1-exercise-3 = minor style edit
day-4/part1-exercise-4 = file names are changed in the tutorial example, redefined the tensorflow image path from the OSG, and minor style edit

looks like Bala needs to ignore (not stage changes for) his ci contents?

LGTM!


Allow management of max query billing settings in plugin

Allow management of max query billing settings in plugin
https://cloud.google.com/bigquery/docs/best-practices-costs#limit_query_costs_by_restricting_the_number_of_bytes_billed

Fixed in #700


API to check if there is history

Wondering if there is any API that check if there is history? Something like canGoBack() or hasHistories()?

Let's discuss in https://github.com/rackt/history/issues/89. One issue for the same question is enough :)


Rapid container growth with fresh/barebones install

I've set up a dedicated Ubuntu 18.4 machine that only has docker on it for the purpose of running docker-mailserver.
After a fresh install, the mailserver works well, and is doing some light duty (It currently is only serving as the mailserver for a Jira instance to use for outgoing email notifications... maybe 1000 small notofication emails per day).
Even though the load is light, the server is growing quite quickly, as can be seen in the monitoring below (the mailserver was turned on, after installing basic server elements like docker, somewhere around the red marker line).

Nothing else is running on this machine except docker and the docker-mailserver image.
Space seems to be getting added in bursts on a regular 5 minute cycle. See the bandwidth chart below for what I mean):

What could be causing the rapid/bursty growth?
Your Environment
Ubuntu 18.04 LTS
Docker 18.06.1-ce
Docker-compose 1.22.0
3 GB RAM

You could enter the container and do a du -sh / and after a day or so do it again to see where the data went.

Is this still relevant or can we close? I would guess a combination of logs and e-mails (perhaps unwanted ones).

We would need a lot more details to find out if something is wrong, so in that case I'll close it. If you want to report it again later please check what directories or files that are responsible for the growth. You can enter the container and run find to locate files changed during the recent hour, for example, and du to find disk usage per folder. If you repeat the same du command once per hour it is easy to see the trend.


Nested component not rendered when mounted to document

Suppose we have a PageLayout component that defines the basic layout of an app, and a SamplePage that uses that layout:
var PageLayout = {
  view: function(ctrl, args, content) {
    return m("html", [
      m("link", {rel: "stylesheet", href: "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"}),
      m("body",
        m(".container", content)
      )
    ])
  }
}

var SamplePage = {
  view: function() {
    return m(PageLayout, {}, [
      m("h1", "Hello!")
    ])
  }
}

m.mount(document, SamplePage)

When mounted directly to document, it doesn't render anything. PageLayout.view is in fact never called.
If instead of using a component for the layout i use a plain old function that returns a virtual DOM, it works as expected:
var pageLayout = function(content) {
  return m("html", [
    m("link", {rel: "stylesheet", href: "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"}),
    m("body",
      m(".container", content)
     )
  ])
}

var SamplePage = {
  view: function() {
    return pageLayout([
      m("h1", "Hello!")
    ])
  }
}

m.mount(document, SamplePage)

What is weird is that if i mount the SamplePage component (as defined in the first snippet) in some other element besides document, e.g., document.body, it does render (though it creates a weird DOM structure because i'm rendering an <html> inside the <body>).
Is this a bug?
I'd like to use a component for the layout because there's some page-wide state that i'd like to manage with a controller there. Does that make sense?
The examples are using MIthril 0.2.4.
Thanks for your time, and for this great library! :smiley_cat:

Hiya @epidemian, the thing that immediately stands out is the fact that a component is returning another component as its root node. This is a recipe for trouble in Mithril, since it needs to be able to associate unique live DOM root nodes with components — 2 components sharing the same unique root DOM node immediately creates internal model problems.
Here's a functioning pattern for doing the same thing. Control is inverted — SamplePage is ignorant of its context and is instead simply content passed into pageLayout.

Thanks for the quick response and the working example @barneycarroll!
For my particular case, i'm going to use something similar to your example (some pages need to change some things of the layout, so they cannot be completely ignorant of it). BTW, i didn't know you could use components directly as virtual DOM nodes 😮
For the general case, if having a component's view return m(AnotherComponent, ...) causes trouble on Mithril's internals because it will have two different components to associate to the same DOM root, wouldn't it be better if Mithril could detect this and raise an exception instead of failing silently? If that's the case, i could investigate this a bit more and try to submit a patch for that 🙂
In the weird case where the component was mounted to document.body and the layout was rendered, is that working because the DOM root of SamplePage is document.root and the DOM root of it's nested Layout component is the <html> that gets rendered inside the body?

@epidemian You shouldn't be rendering DOM nodes to the document itself. Throwing an error is probably more informative than nothing (PRs welcome), but it's basic HTML/DOM.
Oh, and in your fiddle, you shouldn't return html or body nodes in your view. HTML says to silently ignore those elements (which Mithril does by deferring to the DOM), and anything to the contrary is unexpected.

@epidemian You shouldn't be rendering DOM nodes to the document itself.

You mean doing stuff like m.mount(document, something)? Because that's what the Getting Started does. And the views there create html and body nodes.
It may be wise not to mount Mithril apps directly onto document though. Today after some fiddling i went back to mounting stuff on the body. Mounting the app on document had other nasty side effects, like requiring the CSS <link>s to be rendered by Mithril, thus deferring the CSS download till after the JS downloaded and executed. I just wanted to have a general layout and be able to change the page <title> within it :sweat_smile:

document.title = "My New Title";

I do a variation of that and haven't ever had any issues. Maybe that helps?

@epidemian

Because that's what the Getting Started does. And the views there create html and body nodes.

That would be a documentation error. I'd welcome a docs fix for that.

A downside to every line of documentation being handwritten and featuring in-depth usage and examples is that things like that can easily slip up. :smile:

I do a variation of that and haven't ever had any issues. Maybe that helps?

Yeah, i like that variation. I was looking for some kind reusable pattern to set up pages on the application (layout, title, some global state like authentication, etc). It's nice to see some other Mithril app for reference :smile_cat:
I'll close this issue then. With the fixes on the docs i think this shouldn't be much of a problem.


BIG-Bench evaluation?

BIG-Bench (paper, code) is a large and diverse collaborative benchmark testing multiple capabilities of LLMs. I think it would be very beneficial to community to see the evaluation of GLM on this benchmark

@Randl Hi,
Thanks for your reminding! We have contacted with the BIG-bench organizers and are evaluating GLM-130B over BIG-Bench (probably on BIG-bench-lite first) under their guidance. The results will be reported and updated in our upcoming technical report!


HIT Message Log Data Class

Change Summary
Overview
This PR creates a data class for the HIT Message Log packet. This is a simple packet containing only Spacecraft time and a variable length text field. This PR includes validation of the test data decommutation. HIT asked for the message text to remain in binary form, so there is no conversion to strings.
New Dependencies
None
New Files

message_log.py
P_HIT_MSGLOG.xml

Deleted Files
None
Updated Files
None
Testing
created test_message_log.py to test the decommutation using validation data delivered by HIT.

Still waiting for confirmation from HIT that they don't need an L1A message log product, but going to close this anyway because I'm expecting they won't.


Cannot allocate memory error

Hi Ryan,  Thanks for your help so far.  Another quick question, largely so I understand what is going on:
Running
import numpy as np
import xarray
import dask.array as daskarray
import xgcm

ddir = '/scr/jklymak/LeeWave3d/lee3dscpuio/_Model/input'
iters = [720,]
ds = xgcm.open_mdsdataset(ddir, iters, deltaT=5.,prefix=['U','V','W','T','PH'],endian='<').chunk()

print ds

I get a memory error on the head node of my cluster.  On a compute node (i.e. if I submit the job) it works fine, so this is more for my curiosity.  If I haven't addressed any of the data yet, why does the memory allocation become a problem?
python testxgcm.py
/u/home/jklymak/anaconda2/lib/python2.7/site-packages/xgcm/mdsxray.py:273: UserWarning: Not sure what to do with rlev = L
  warnings.warn("Not sure what to do with rlev = " + rlev)
Traceback (most recent call last):
  File "testxgcm.py", line 10, in <module>
    ds = xgcm.open_mdsdataset(ddir, iters, deltaT=5.,prefix=['U','V','W','T','PH'],endian='<').chunk()
  File "/u/home/jklymak/anaconda2/lib/python2.7/site-packages/xgcm/mdsxray.py", line 487, in open_mdsdataset
    ignore_pickup, geometry, skip_vars, endian)
  File "/u/home/jklymak/anaconda2/lib/python2.7/site-packages/xgcm/mdsxray.py", line 610, in __init__
    data = _read_mds(f, i, force_dict=True, endian=endian)
  File "/u/home/jklymak/anaconda2/lib/python2.7/site-packages/xgcm/mdsxray.py", line 354, in _read_mds
    d = np.memmap(datafile, dtype, 'r')
  File "/u/home/jklymak/anaconda2/lib/python2.7/site-packages/numpy/core/memmap.py", line 260, in __new__
    mm = mmap.mmap(fid.fileno(), bytes, access=acc, offset=start)
mmap.error: [Errno 12] Cannot allocate memory

This is a limitation of the numpy.memmap approach to reading the data. Although it doesn't actually read the data until you try to access it, the memory for the data still needs to be allocated. I'm guessing that your head node has less memory available to you than the compute node.
This stack overflow issue explains it pretty well:
http://stackoverflow.com/questions/1661986/why-doesnt-pythons-mmap-work-with-large-files
I would like to find a way to overcome this. It's a real issue.

OK, thats interesting.  My head node must have a low ulimit or something.  Checking with free the had node actually has more free memory, so it must be a difference in how they are set.  And I'm pretty sure the data is only something like 12 Gb, so it should fit in memory. I'll follow up w/ the sysadmins, but its likely a way to stop people from doing big things on the head nodes.
Thanks!  Jody

So you can close this - I understand the issue now;  we are only allowed 8 Gb of memory allocation on the login nodes, which presumably includes virtual memory.  So memmap was unable to assign me contiguous memory greater than this, even if said memory was only going to be virtual.

Therefore, only small serial applications requiring less than 15 minutes of compute time and less than 8 GBytes of memory are allowed on the login nodes.

Thanks!

No, it's still an open issue! We should be able to overcome these limitations within xgcm though a better handling of the files.

OK!  Sounds pretty hard though unless someone else has a slick mechanism
Does netcdf have this memory mapping limitation, or does it request memory on an as-needed basis as well as access the disk?
I think my planned workflow is going to be to convert mds files to netcdfs for each timestep with all the variables I want, and then using xray.open_mfdataset to write the processing.
I tried writing netcdf from the MITgcm (which I'd never tried) but it tiles the files and stores each time step in each file.  I far prefer data that is chunked by time because if I bring it over to the local machine, I can choose the time periods I am interested in.  However, other advice on how to organize things is welcome.  Also happy to move this discussion to the MITgcm mailing list if that is more appropriate.

@jklymak: I just wanted to give you a heads up that I have moved all of the mitgcm-specific features of xgcm into a new package called xgcm:
https://github.com/xgcm/xmitgcm
This move also includes a major refactor of the code. I am closing the mitgcm-specific issues here, but I would really appreciate your input on the new package.
xgcm is going back to it's original mission: implementing finite-volume differential and integral operations on GCM grids (which is not specific to mitgcm).


API documentation generation: composer installation problem

What steps will reproduce the problem?

Take composer command to install package from http://www.yiiframework.com/doc-2.0/ext-apidoc-index.html, such as this:

composer require --prefer-dist yiisoft/yii2-apidoc

When installing this package, it fails with error message. Error can be seen in section "What do you get instead?".

What is the expected result?
Install package successfully.
What do you get instead?
This error messag when install package:
root@root /var/www/dev $ sudo composer require yiisoft/yii2-apidoc
[sudo] password for root:
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Using version ^2.1@dev for yiisoft/yii2-apidoc
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Conclusion: don't install yiisoft/yii2-apidoc 2.1.x-dev
    - Conclusion: remove cebe/markdown 1.1.x-dev
    - Installation request for yiisoft/yii2-apidoc ^2.1@dev -> satisfiable by yiisoft/yii2-apidoc[2.1.0, 2.1.x-dev].
    - Conclusion: don't install cebe/markdown 1.1.x-dev
    - yiisoft/yii2-apidoc 2.1.0 requires cebe/markdown-latex ~1.0 -> satisfiable by cebe/markdown-latex[1.0.0, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.0.x-dev].
    - cebe/markdown-latex 1.0.0 requires cebe/markdown ~1.0.0 -> satisfiable by cebe/markdown[1.0.0, 1.0.0-rc, 1.0.1, 1.0.2, 1.0.x-dev].
    - cebe/markdown-latex 1.1.0 requires cebe/markdown ~1.0.0 -> satisfiable by cebe/markdown[1.0.0, 1.0.0-rc, 1.0.1, 1.0.2, 1.0.x-dev].
    - cebe/markdown-latex 1.1.1 requires cebe/markdown ~1.0.0 -> satisfiable by cebe/markdown[1.0.0, 1.0.0-rc, 1.0.1, 1.0.2, 1.0.x-dev].
    - cebe/markdown-latex 1.1.2 requires cebe/markdown ~1.0.0 -> satisfiable by cebe/markdown[1.0.0, 1.0.0-rc, 1.0.1, 1.0.2, 1.0.x-dev].
    - cebe/markdown-latex 1.1.3 requires cebe/markdown ~1.0.0 -> satisfiable by cebe/markdown[1.0.0, 1.0.0-rc, 1.0.1, 1.0.2, 1.0.x-dev].
    - cebe/markdown-latex 1.1.4 requires cebe/markdown ~1.0.0 -> satisfiable by cebe/markdown[1.0.0, 1.0.0-rc, 1.0.1, 1.0.2, 1.0.x-dev].
    - cebe/markdown-latex 1.0.x-dev requires cebe/markdown ~1.0.0 -> satisfiable by cebe/markdown[1.0.0, 1.0.0-rc, 1.0.1, 1.0.2, 1.0.x-dev].
    - Can only install one of: cebe/markdown[1.0.0, 1.1.x-dev].
    - Can only install one of: cebe/markdown[1.0.0-rc, 1.1.x-dev].
    - Can only install one of: cebe/markdown[1.0.1, 1.1.x-dev].
    - Can only install one of: cebe/markdown[1.0.2, 1.1.x-dev].
    - Can only install one of: cebe/markdown[1.0.x-dev, 1.1.x-dev].
    - Installation request for cebe/markdown (locked at 1.1.x-dev) -> satisfiable by cebe/markdown[1.1.x-dev].

Installation failed, reverting ./composer.json to its original content.

Additional info

Q
A

Yii version
2.0.14-dev

PHP version
5.5+

Operating system
Ubuntu 14.04

please read all of the install section on http://www.yiiframework.com/doc-2.0/ext-apidoc-index.html#installation it explains the problem.


💄 UI - Homepage redesign

CC @bradystroud @adamcogan @tiagov8

Hi @JackDevAU
As per my conversation with Adam this design is approved and ready for implementation 🎉
Prototype:
https://www.figma.com/proto/MZsibMztRkZiCQBsKM66d8/SSW-Rules-v2?type=design&node-id=1343-4280&t=a71JGvzMaYPaTJYH-0&scaling=min-zoom&page-id=0%3A1&hide-ui=1
Figma file:
https://www.figma.com/file/MZsibMztRkZiCQBsKM66d8/SSW-Rules-v2?type=design&node-id=0-1&mode=design
Tasks

[ ] Action
(Steps to be refined)

Screenshots

Figure: Mockup - Homepage redesign
Thanks!

Please, please, please do this. The current home page is just not ok.

This is great! I'd highly recommend implementing these new designs when we port SSW Rules to Next.js, which we'll be doing for the TinaCMS migration.

I saw this design from @jaydenalchin about a year ago, and it still looks awesome! :)


Initial support for Cross stack references

Fix for #242
#TODO
Add check to Conditions to ensure Fn::Import is not a member of a condition
Rubocop

Thanks @cmaxwellau, can you fix up the rubocop errors please?

@gergnz Done. Finally got rubocop locally. should be the last time ;)

@cmaxwellau just run bundle and then rake. it does all the tests then.

Are you folks bundling up this along with YAML and Fn::Sub for the next release?  Do you have a rough ETA?  Really eager to get to using the stack outputs feature with some generated CFN templates.  :)

@eric-tucker, yes, was just waiting for @cmaxwellau to finish up #244


Gas metering does not handle branches and external calls

The gas metering code currently inserts metering instructions at the beginning of block, if, loop statements but does not correctly handle code that uses br_* to jump to a label. For example, in the following program, gas is charged for instructions after the br_if that are skipped.
(module
	(func $fibonacci_with_break (result i32)
		(local $x i32) (local $y i32)

		(block $unrolled_loop
			(set_local $x (i32.const 0))
			(set_local $y (i32.const 1))

			get_local $x
			get_local $y
			tee_local $x
			i32.add
			set_local $y

			i32.const 1
			br_if $unrolled_loop

			get_local $x
			get_local $y
			tee_local $x
			i32.add
			set_local $y
		)

		get_local $y
	)
)

There may also be imported functions that affect control flow or have more strict requirements on the state of the gas meter. In the Substrate srml-contracts module for example, the imported functions such ext_return and ext_gas_left need more delicate handling. ext_return affects control flow and currently gas is over-deducted if there are any unreachable instructions after the call. In the case of ext_gas_left the caller may see a lower result than expected (though this arguably is not a bug).

I don't see how to know in advance the condition if br_if $unrolled_loop is active in the example..

That's kind of the point. In general that will be impossible to determine, so the correct behavior should be that gas is charged for the instructions between the top of the block and the br_if, then there should be separate gas metering instructions immediately after the br_if accounting for the instructions until the end of the block.

yeah, makes sense


feat: update the john green video in about

Description
Updates the about video to this one: https://www.youtube.com/watch?v=uizFXzSTeVs
Type of change

[x] Updated content (New CTA, updated wording, etc.)

Might want to talk about this with others first


Visual Studio Code fails to start when there's no network connection

VSCode Version: Code 1.10.2 (8076a19fdcab7e1fc1707952d652f0bb6c6db331, 2017-03-08T14:02:52.799Z)
OS Version: Windows_NT ia32 10.0.14393
Extensions:

Extension
Author
Version

CppSnippets
hars
0.0.7

vscode-todo-parser
minhthai
1.8.9

csharp
ms-vscode
1.8.0

Theme-TomorrowKit
ms-vscode
0.1.3

material-icon-theme
PKief
2.0.1

java
redhat
0.0.13

code-settings-sync
Shan
2.6.1

guides
spywhere
0.7.0

unity-debug
Unity
1.1.0

unity-snippets
YclepticStudios
0.1.2

Steps to Reproduce:

Remove network connection;
Try to open a file with VSCode, or simply start the program.

VSCode works fine with internet connection and even in LAN, so I guess there's nothing to require via the internet. But when I try to start VSCode without any network connection, nothing happened. No matter how many times I click on, it won't start and I cannot find the program in task manager.

https://github.com/Microsoft/vscode/issues/7570


🚀 Feature: Better visualization of nested errors

Bug Report Checklist

[X] I have tried restarting my IDE and the issue persists.
[X] I have pulled the latest main branch of the repository.
[X] I have searched for related issues and found none that matched my issue.

Overview
Right now, if something throws an error, the whole error is logged - including nested call stacks. For example, in #735, what's logged is:
Error: Failed initializing GitHub repository
    at withSpinner (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/shared/cli/spinners.js:16:11)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async migrateWithOptions (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/migrate/migrateWithOptions.js:43:5)
    at async run (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/migrate/index.js:11:7)
    at async runOrRestore (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/shared/runOrRestore.js:7:5)
    at async Object.migrate (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/migrate/index.js:9:10)
    at async bin (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/bin/index.js:47:10)
    at async file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/bin/index.js:4:20 {
  [cause]: Error: Command failed with exit code 1: gh label edit documentation --color 0075ca --description Improvements or additions to docs --name area: documentation
  label with name "area: documentation" already exists
      at makeError (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/execa/lib/error.js:60:11)
      at handlePromise (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/execa/index.js:124:26)
      at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
      at async initializeRepositoryLabels (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/steps/initializeGitHubRepository/labels/initializeRepositoryLabels.js:17:7)
      at async initializeGitHubRepository (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/steps/initializeGitHubRepository/index.js:9:3)
      at async file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/migrate/migrateWithOptions.js:44:7
      at async withSpinner (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/shared/cli/spinners.js:11:20)
      at async migrateWithOptions (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/migrate/migrateWithOptions.js:43:5)
      at async run (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/migrate/index.js:11:7)
      at async runOrRestore (file:///Users/josh/.npm/_npx/4aa729db9999bfc4/node_modules/create-typescript-app/lib/shared/runOrRestore.js:7:5) {
    shortMessage: 'Command failed with exit code 1: gh label edit documentation --color 0075ca --description Improvements or additions to docs --name area: documentation',
    command: 'gh label edit documentation --color 0075ca --description Improvements or additions to docs --name area: documentation',
    escapedCommand: 'gh label edit documentation --color 0075ca --description "Improvements or additions to docs" --name "area: documentation"',
    exitCode: 1,
    signal: undefined,
    signalDescription: undefined,
    stdout: '',
    stderr: 'label with name "area: documentation" already exists',
    cwd: '/Users/josh/repos/all-contributors-auto-action',
    failed: true,
    timedOut: false,
    isCanceled: false,
    killed: false
  }
}

What an awfully verbose way to log things! Most of those lines are useless, such as the node_modules/ logs.
I want to:

See if someone's written a good error visualization package already
Write my own if not

Additional Info
No response

Looking at existing packages in the wild:

https://www.npmjs.com/package/human-error: super old so I'd assume doesn't handle cause, and is super verbose
https://github.com/ehmicky/handle-cli-error: I like the visualization a bit?
https://www.npmjs.com/package/pretty-error: nice, but I'd also want to filter out unrelated call stack bits
https://www.npmjs.com/package/stacktracey: just formats the columns, doesn't remove excess lines I think
https://github.com/xpl/panic-overlay: I don't want a full browser render, that's overkill for this case


Fixed syntax error in escalate_tickets.py

Codecov Report

Merging #793 into master will decrease coverage by 1.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #793      +/-   ##
==========================================
- Coverage   71.98%   70.94%   -1.04%
==========================================
  Files          47       48       +1
  Lines        4373     4437      +64
  Branches      508      519      +11
==========================================
  Hits         3148     3148
- Misses       1076     1140      +64
  Partials      149      149

Impacted Files
Coverage Δ

helpdesk/management/commands/escalate_tickets.py
0% <ø> (ø)

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 c143cb3...84456ac. Read the comment docs.


BBVA has restricted access to company users

So far company users of BBVA used to login into the mobile app (Android & iOS) and the mobile version with a 7 digits user id, the same they use for accessing BBVA Net Office (the web app for companies).
Recently we have found that BBVA has decided (without prior warning) to restrict access to those company users to the mobile apps and the web mobile version, which are the only ones consuming the JSON API that the BankScrap adapter uses. To be precise, they've restricted the access on the JSON API, not in the apps. Login with company credentials to the JSON API still works, but after that all requests return this:
{
  "result": {
    "code": "error",
    "errors": [
      {
        "code": "ENPP0000",
        "description": "Servicio temporalmente no disponible"
      }
    ],
    "timeBeforeHiding": 4000,
    "severityLevel": 3
  }
}

As an alternative they're offering companies signing up for a different platform, called BBVA Net Cash, which has a web and a different mobile app. I haven't had the time to test this app, but it looks like probably it uses a different API (maybe the old stateful XML API).
On the phone, BBVA told me that the mobile app (the one with the JSON API) was never intended to be used by companies, but only for individuals. Despite of the fact that this is not adverted in any of the descriptions on the Play Store nor the App store.
While BBVA is selling themselves as a "developer friendly bank", they're screwing actual developers who are trying to do something useful with their systems.
In our company, after this sudden change, we are considering leaving BBVA.
Please note that BankScrap won't work for BBVA company users anymore until we find a workaround for this. The only thing companies users can do is to fallback to the old bbva gem which uses the old stateful XML API.

Fortunately BBVA decided to restore access for company users, so forget about this :)


HOW TO RUN DEEP DAZE ON WINDOWS

I figured out a way to run deep daze as many of us people are having problems.
First step is to install ubuntu from windows store.
Next is to install wsl2 (search google how to do that)
open ubuntu and set it up
next delete and re install python (using the installer not using ubuntu)
use pip install deep_daze
then use the imagine command
AND BOOM.
(btw idk if this works but it worked for me)

what pip version

I did latest

...
You can run deep-daze without using WSL

Just install Anaconda
Lancuh Anaconda from the windows start menu
Create a new env conda create --name deep-haze
Activate your new conda env conda activate deep-haze
If you plan on using a CUDA capable GPU (Must be CUDA 11.3 or previous), install pytorch using conda conda install -c pytorch torchvision cudatoolkit=11.3 pytorch
Install deep-daze pip install deep-daze
Run deep-daze imagine "a deer drinking from a river"

lmao he only needs to just do pip install torch==1.7.1

also need gpu made by the people who made gforce now


I have a porblem with export.

I have an error:
Traceback (most recent call last):
File "", line 189, in run_module_as_main
File "", line 112, in get_module_details
File "C:\Users\tymon\VNEV\Lib\site-packages\pystage\convert_init.py", line 1, in
from .code_writer import CodeWriter
File "C:\Users\tymon\VNEV\Lib\site-packages\pystage\convert\code_writer.py", line 11, in
from pystage.core.sprite import CoreSprite
File "C:\Users\tymon\VNEV\Lib\site-packages\pystage\core_init.py", line 1, in
from .sprite import CoreSprite
File "C:\Users\tymon\VNEV\Lib\site-packages\pystage\core\sprite.py", line 2, in
import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'
Please for help.
Thank you.

pip install setuptools should fix this. We seem to miss a dependency on it.


Permissions for Neo4j Docker image on macOS

Neo4j 4.4.3+ results in a message asking the following on macOS:
Consider unsetting SECURE_FILE_PERMISSIONS environment variable, to enable docker to write to /data.

Try using this env var: https://github.com/neo4j/docker-neo4j/blob/master/docker-image-src/4.4/docker-entrypoint.sh#L10-L13

Fixed

The fix didn't work

Related Neo4j community thread:
https://community.neo4j.com/t5/neo4j-graph-platform/helm-kubernetes-error-while-following-standalone-install-process/td-p/56528

Related Neo4j issue: https://github.com/neo4j/docker-neo4j/issues/351

Will upgrade to 4.4.13 once it's out: https://github.com/neo4j/docker-neo4j/issues/351#issuecomment-1293318633


How to get text  from a div using css selector

What versions are you running?
$ go list -m github.com/chromedp/chromedp
github.com/chromedp/chromedp v0.8.6
$ google-chrome --version
108.0.5359.71
$ go version
1.19.3

What did you do? Include clear steps.

ctx, cancel := chromedp.NewContext(
		context.Background(),
		// chromedp.WithDebugf(log.Printf),
	)
	defer cancel()

	// create a timeout
	ctx, cancel = context.WithTimeout(ctx, 15*time.Second)
	defer cancel()
	var res string
	// navigate to a page, wait for an element, click
	var example string
	err := chromedp.Run(ctx,
		chromedp.Navigate(`https://play.google.com/store/apps/details?id=com.chess.chesscoach`),
		// wait for footer element is visible (ie, page is loaded)
		chromedp.WaitVisible(`body > footer`),
		// find and click "Example" link
		chromedp.Text(`//div[@class="TT9eCd"]`, &res, chromedp.NodeVisible, chromedp.BySearch),
	)
	fmt.Println(res)
	if err != nil {
		log.Fatal(err)
	}
	log.Printf("Go's time.After example:\n%s", example)

What did you expect to see?
4.4rating
What did you see instead?
context deadline exceeded

I can not find body > footer in the page. But there is body > c-wiz > footer in the page.
chromedp.WaitVisible(`body > c-wiz > footer`, chromedp.ByQuery),

ok thank you.
can you also tell how can i click on arrow button(see the pic)
https://i.imgur.com/dKy5c83.png
and access dev[@class="reAt0"] tag to get the app version(see the pic)
https://i.imgur.com/RDrENyd.png
i tried doing

	ctx, cancel := chromedp.NewContext(
		context.Background(),
		//chromedp.WithDebugf(log.Printf),
	)
	defer cancel()

	// create a timeout
	ctx, cancel = context.WithTimeout(ctx, 15*time.Second)
	defer cancel()
	var res string
	// navigate to a page, wait for an element, click
	err := chromedp.Run(ctx,
		chromedp.Navigate(`https://play.google.com/store/apps/details?id=com.chess.chesscoach`),
		chromedp.WaitVisible(`body > c-wiz > footer`, chromedp.ByQuery),
		// find and click "Example" link
		//chromedp.Text(`//div[@class="xg1aie"]`, &res, chromedp.NodeVisible, chromedp.BySearch),
		chromedp.Click(`//i[@class="google-material-icons VfPpkd-kBDsod W7A5Qb"]`),
		chromedp.Text(`//dev[@class="reAt0"]`, &res, chromedp.NodeVisible, chromedp.BySearch),
	)
	fmt.Println(res)
	if err != nil {
		log.Fatal(err)
	}

chromedp.Click(`button[aria-label="See more information on About this game"]`, chromedp.ByQuery),
chromedp.Text(`(//div[.="Version"])[1]//following-sibling::div`, &res, chromedp.BySearch),

well the query does not works.
One query how to do you know that you need to put //div[.="Version"])[1]//following-sibling::div) as query selector.

it did be nice to know  the type of lang it taks as args(is it js?) for query selection.
i did be nice if you guys can add something related to in read me

This is a working demo.
It seems that the dialog takes a little long to load, so I replace chromedp.Text with chromedp.Poll:
package main

import (
	"context"
	"fmt"
	"log"
	"time"

	"github.com/chromedp/chromedp"
)

func main() {

	ctx, cancel := chromedp.NewContext(
		context.Background(),
		chromedp.WithDebugf(log.Printf),
	)
	defer cancel()

	ctx, cancel = context.WithTimeout(ctx, 250*time.Second)
	defer cancel()

	var res string
	err := chromedp.Run(ctx,
		chromedp.Navigate(`https://play.google.com/store/apps/details?id=com.chess.chesscoach`),
		chromedp.WaitVisible(`body > c-wiz > footer`, chromedp.ByQuery),
		chromedp.Click(`button[aria-label="See more information on About this game"]`, chromedp.ByQuery),
		chromedp.Poll(`document.evaluate('(//div[.="Version"])[1]//following-sibling::div', document, null, XPathResult.STRING_TYPE, null).stringValue`, &res, chromedp.WithPollingMutation()),
	)
	fmt.Println(res)
	if err != nil {
		log.Fatal(err)
	}
}

nvm i got it working by using chromedp.NodeVisible

btw i tried to copy xpath and the selector query form chrome. it did not work when i pasted it in

Nvm was using wrong Function. Thanks for your help. I did not know we had something other than query selector

The copied selector should work. But avoid using the copied selector directly because it's complicated most of the time. And it is not sustainable when the page is changed.

well, how do you write them?

I don't understand your question, but this document https://developer.mozilla.org/en-US/docs/Web/XPath may help.


New version: GAMS v0.3.0

Registering package: GAMS
Repository: https://github.com/GAMS-dev/gams.jl
Created by: @renkekuhlmann
Version: v0.3.0
Commit: e816d922c3585c210827685a3a40326dce91879d
Git reference: HEAD
Description: A MathOptInterface Optimizer to solve JuMP models using GAMS
Release notes:

adapt to MathOptInterface 0.10.7
support variable and constraint names in generated GAMS model
fix repeated update of bounds
fix empty row

don't merge, just discovered an issue


#6448: re-enable all-gather bidir for dim 0,1

post_commit: https://github.com/tenstorrent/tt-metal/actions/runs/9369803932
t3000 unit tests: https://github.com/tenstorrent/tt-metal/actions/runs/9369814264
t3000 perf tests: https://github.com/tenstorrent/tt-metal/actions/runs/9369824456


Large number of generic parameters on interface/class causes transpiler to slow to a crawl

Hi,
ran into the following issue: when adding classes/interfaces with a large number (e.g. ~15) generic parameters explodes transpilation time... Going from 10 seconds before to 55 MINUTES after. A little bit of investigating and profiling shows that the slow down is in eclipse's JDT code that had a similar issue way back when...
https://bugs.eclipse.org/bugs/show_bug.cgi?id=434326
Which they fixed in 4.5 and back-ported to 4.4.
The j2objc source shows we are using:
org.eclipse.jdt.compiler.apt-1.1.0.v20140509-1235.jar
org.eclipse.jdt.core-3.10.0.v20140604-1726.jar
Which look to be from before the patches were applied, but not sure how eclipse numbering scheme works.
Are we using the JDT from a few Eclipse major releases ago? In which case i believe we should look at upgrading those, if not i will do some more debugging to see why we trigger this issue.
--
Michel

Yes, we're using an older Eclipse, but no, we won't be updating to a newer
version since the very latest still has Java 8 bugs. We've been instead
converting to use javac as our front-end, and hope to be done in a month or
so. It's definitely not been a trivial conversion, but we're excited to
have fewer front-end bugs, slightly better performance, and a jump on Java
9 when it releases next year.
On Sun, Dec 11, 2016 at 7:59 PM phobe77<EMAIL_ADDRESS>wrote:

Hi,
ran into the following issue. When adding classes with a large number
(e.g. ~15) generic parameters to a class or interface explodes
transpilation time... Going from 10 seconds before to 55 MINUTES after. A
little bit of investigating and profiling shows that the slow down is in
eclipse's JDT code that had a similar issue way back when...
https://bugs.eclipse.org/bugs/show_bug.cgi?id=434326 http://url
Which they fixed in 4.5 and back-ported to 4.4.
The j2objc source shows we are using:
org.eclipse.jdt.compiler.apt-1.1.0.v20140509-1235.jar
org.eclipse.jdt.core-3.10.0.v20140604-1726.jar
Which look to be from before the patches were applied, but not sure how
eclipse numbering scheme works.
Are we using the JDT from a few Eclipse major releases ago? In which case
i believe we should look at upgrading those, if not i will do some more
debugging to see why we trigger this issue.
--
Michel
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/j2objc/issues/823, or mute the thread
https://github.com/notifications/unsubscribe-auth/AC2kr2FYH4i6KHYU6OjBcJ0XRnrJMRTEks5rHMapgaJpZM4LKKje
.

Thanks Tom for the swift reply. I don't think there is anything i can do to help you on that one?
As an FYI a similar issue still exists in Eclipse which gives me a good incentive to final put some effort into moving away from Eclipse.
--
Michel

The javac front-end is almost ready for extended testing (hopefully before
the end of the month), and we'd appreciate developers to check it out then
before it becomes the default. However, here's almost 100 unit test
failures to clean up first, and then the jre_emul and Guava builds are
likely to find other issues. Once those all pass, we'll send out an appeal
for test help, so developers with complex projects like yours can try
building with it.
On Mon, Dec 12, 2016 at 5:58 PM phobe77<EMAIL_ADDRESS>wrote:

Thanks Tom for the swift reply. I don't think there is anything i can do
to help you on that one?
As an FYI a similar issue still exists in Eclipse which gives me a good
incentive to final put some effort into moving away from Eclipse.
--
Michel
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/j2objc/issues/823#issuecomment-266612876, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AC2kr-FffcHHkcPX8b-FPug-zs-5bmZYks5rHfvBgaJpZM4LKKje
.

The javac front-end is now the default in the current source (not in the 1.3.1 release, though). Would you please try building your project with the latest?


should new artifacts created from public ones be public?

Currently, if you generate a new artifact from a public artifact, the new one is private. IMOO it should be public -- the artifact is being generated from a public one using a plugin available systemwide.

We agreed on implementing.


Add Shutdown Hook to remove h2 lock file

Fixes Issue #1000 & #1027
Updated console output if a lock file exists and added a shutdown hook to ensure that the custom h2 db lock file gets removed when the JVM exits.

Can one of the admins verify this patch?

Is this also expected to work with the Gradle Daemon? I'm not 100% sure if the current approach will work when the Gradle daemon process survives the build.

@stefanneuhaus I've tested the shutdown hook with gradle and it appears to work as expected (i.e. it gracefully shutdowns and removes the lock file).

@jeremylong I just also tested the shutdown hook. When not using the Gralde daemon the shutdown hook works as expected. But when using the daemon I am left with a lock file:

Remove H2 DB (in "~/.gradle/caches/dependency-check-data/3.0/")
./gradlew --daemon dCAn ("--daemon" is the default since quite some time)
Once the H2 update is in progress press CTRL+C
Observe that "dc.update.lock" exists

Run "jps" to get the PID of the "GradleDaemon" process and kill it. Observe that the lock file gets properly deleted.
Running builds with the Maven plugin or CLI client in this state should be no problem in most cases, as the Gradle build store the DB in a different location per default.
Each time I started a new build my old daemon could not be reused and has been stopped (for whatever reason; I did not dig into this), thereby triggering the shutdown hook again. But of course this is not the default behavior. In fact there can be even multiple instances of the daemon running, each having different configurations.
Though I did not manage to run into issues, I would expect that this is at least possible. Nevertheless even if this solution is not 100% bullet proof, it is at least a big step forward and prevents issues in most cases.


Incubator/cassandra

PR for Cassandra. This Chart is pushed into incubator because StatefulSet is a beta feature which is available in Kubernetes 1.5

I signed it!


update from 3 to 4 service tiers

The text was referring to 3 tiers, not 4. I also added 'Azure' add the beginning of the sentence.

@rafamarrara,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

@rafamarrara : Thanks for your contribution to the Azure documentation! The author, @shontnew, has been notified to review your proposed change.

#shontnew
Thanks for the review. I'm merging this pull request. For other reviews, please add an appropriate comment so that automation can take appropriate action. Thanks.


zipkin plugin

This PR adds the zipkin plugin to the Kong installation. The plugin itself is external, see https://github.com/Kong/kong-plugin-zipkin
The plugin has not tagged a release yet; when it does we should update the rockspec with the released version.
You may want to merge this on top of #3428
Full changelog

Add ngx.ctx.KONG_BODY_FILTER_ENDED_AT
Don't nil out balancer_start
Add zipkin plugin
Update nginx time cache in each phase

Issues resolved
Fixes #1330

Docs need updating too - start here https://github.com/Kong/getkong.org/tree/docs-0.32-tracing

We're missing the plugin order test - see https://github.com/Kong/kong/blob/master/spec/01-unit/014-plugins_order_spec.lua#L51

Added :)

Rebased on top of next now that #3428 is merged.

Manually merged to next!


[Bug]: Please update to Laravel 11

What happened?
Please update the dependencies to support Laravel 11, thanks.
How to reproduce the bug
Packages are old.
Package Version
1.1.1
PHP Version
8.3
Laravel Version
11.0
Which operating systems does with happen with?
No response
Notes
No response

Same request here. Please, is the package I'm using that I need to update to Laravel 11.
Thank you


when switching between popover fields, sometimes previous shows up again

plunker copied from previous issue (1k ms delay), just changed version to latest.
http://plnkr.co/edit/8iQPE1DRSRGQjriGbjRm?p=preview
When mouse is hanging for a while at one popover-having div, after going directly to the other, previous popover shows as well as new one ( previous one hides but instantly appears again). It doesn't happen always.

Thank you for reporting this issue.
I have fixed this bug now and just published the fix to NPM, please let me know if you have any more problems.


Replaced bootstrap-tour by introJs in calligra activity

Fixes: #1090
Replaced bootstrap-tour by introJs in calligra activity
screen-recorder-tue-jan-03-2023-00-08-37.webm

Thanks @disha1202 but the help no longer work on detailed view (neither in play mode and in edit mode)

Thanks @disha1202 but the help no longer work on detailed view (neither in play mode and in edit mode)

Fixed it. Please review again.

It's fixed. Thanks @disha1202 .
Could you share your experience for other contributors: why you've done this error on first PR?

Could you share your experience for other contributors: why you've done this error on first PR?
I had to update the condition for filtering steps because the element property of the step object contains the HTML element instead of a selector, and while updating the condition I forgot to add check whether the step contains an elemnt property before accessing its display property.


[RFC] make: strip symbol tables from all binaries by default

Marked RFC because I'm not sure this is something we want or should do by default. While it doesn't break panic backtraces it makes debugging of production systems harder or even impossible.
Feedback appreciated @tgraf @aanm @joestringer @raybejjani

Strip the symbol tables and debug information from all binaries by
default. This will not remove annotations needed for stack traces, so
panic backtraces will still be readable.
If debug information and symbol tables are needed during debugging, use
make NOSTRIP=1 to compile.
This reduces the binary sizes (and thus the base memory consumption) as
follows:
before:
-rwxr-xr-x 1 tklauser tklauser 46M Feb 12 16:00 cilium/cilium
-rwxr-xr-x 1 tklauser tklauser 21M Feb 12 16:00 cilium-health/cilium-health
-rwxr-xr-x 1 tklauser tklauser 74M Feb 12 16:00 daemon/cilium-agent
-rwxr-xr-x 1 tklauser tklauser 75M Feb 12 16:00 operator/cilium-operator
-rwxr-xr-x 1 tklauser tklauser 47M Feb 12 16:00 plugins/cilium-cni/cilium-cni

after:
-rwxr-xr-x 1 tklauser tklauser 46M Feb 12 15:57 cilium/cilium
-rwxr-xr-x 1 tklauser tklauser 15M Feb 12 15:57 cilium-health/cilium-health
-rwxr-xr-x 1 tklauser tklauser 55M Feb 12 15:57 daemon/cilium-agent
-rwxr-xr-x 1 tklauser tklauser 55M Feb 12 15:57 operator/cilium-operator
-rwxr-xr-x 1 tklauser tklauser 35M Feb 12 15:57 plugins/cilium-cni/cilium-cni

summary:
cilium           0MB (already stripped previously, see 8596bd9c)
cilium-agent    ~19MB
cilium-health   ~6MB
cilium-operator ~20MB
cilium-cni      ~12MB

Also see https://blog.filippo.io/shrink-your-go-binaries-with-this-one-weird-trick/
Updates #10056
Signed-off-by: Tobias Klauser<EMAIL_ADDRESS>

This change is

Coverage decreased (-0.01%) to 44.535% when pulling c55e911c203d191902d62e1c21579e187878b079 on pr/tklauser/strip-symbols-tables-by-default into da2e6526b8da79ce8948399fca23691ef0b62be2 on master.

test-me-please

Does this have an impact on the memory consumption of cilium-agent or only on binary size?

Does this have an impact on the memory consumption of cilium-agent or only on binary size?

AFAICS it only affects binary size. Memory consumption is more or less the same.

it makes debugging of production systems harder or even impossible

panic backtraces will still be readable.

Do you have example production debug workflows that you're concerned we will be unable to follow if we merge this PR? I think that these would help us to make a decision.
Most debugging workflows I've used involve the cilium-sysdump and the information you gather there; panic backtraces would be an exception, but as you note these should continue to work.
For instance, does this break gops?

Do you have example production debug workflows that you're concerned we will be unable to follow if we merge this PR? I think that these would help us to make a decision.

I don't have a lot of experience of debugging Cilium in production yet, so I cannot really name an example where debug symbols would be useful. AFAICT panic backtraces, gops and cilium-sysdump would probably be enough for me to get a first idea.
I just wanted to raise this in order to make others aware that e.g. debugging using gdb or delve would no longer work on production binaries.

For instance, does this break gops?

gops will still work AFAICS, e.g. the stackcommand, the top10 and even the list <symbol> command in pprof-heap still resolve the function names.

Do you have example production debug workflows that you're concerned we will be unable to follow if we merge this PR? I think that these would help us to make a decision.

I don't have a lot of experience of debugging Cilium in production yet, so I cannot really name an example where debug symbols would be useful. AFAICT panic backtraces, gops and cilium-sysdump would probably be enough for me to get a first idea.
I just wanted to raise this in order to make others aware that e.g. debugging using gdb or delve would no longer work on production binaries.

Why? Wouldn't it work even if ship the unstripped binary and have it available to be used whenever we need to use delve and / or gdb? AFAIK, delve allows to pass a binary for a running process.

For instance, does this break gops?

gops will still work AFAICS, e.g. the stackcommand, the top10 and even the list <symbol> command in pprof-heap still resolve the function names.

test-me-please

Why? Wouldn't it work even if ship the unstripped binary and have it available to be used whenever we need to use delve and / or gdb? AFAIK, delve allows to pass a binary for a running process.

True. And I think the same is possible in gdb with the symbol-file command.

@tklauser are you waiting on us to merge this or are you following up on some feedback?

@joestringer sorry, this PR somehow fell between the cracks on my side. As per @aanm's feedback I tried to build 2 docker images for stripped and unstripped binaries but this will need a bit more work (also to provide both images on quay.io). Thus, I'd propose to merge this as is (like the linked cilium/proxy#16 PR) and provide an image with unstripped binaries once the need arises.
Would that be OK with you both?

One more note, shouldn't we have 2 docker images (one for the non-stripped and the other with the stripped) created from the same binary? Similar to what it is being proposed here cilium/proxy#16 (comment)

Why do we need unstripped container images?  If so, why?

Merging this. We can resolve the unstripped binary images separately.

One more note, shouldn't we have 2 docker images (one for the non-stripped and the other with the stripped) created from the same binary? Similar to what it is being proposed here cilium/proxy#16 (comment)

Why do we need unstripped container images?  If so, why?

@tgraf we need an unstripped binary in case we want to debug a live cilium process. If that live process is running the stripped binary we should have the unstripped binary also available.

@tgraf we need an unstripped binary in case we want to debug a live cilium process. If that live process is running the stripped binary we should have the unstripped binary also available.

What exact operation is to debug? Are you talking about running a debugger? Are you talking about gops debugging? How commonly do we need this information available right now?
I assume users will typically run the unstripped version and we would require them to run a different image and reproduce?


Add qualcomm DragonBoard 410c support

[GDP-226] Support qualcomm DragonBoard 410c

This PR should be merged with https://github.com/GENIVI/genivi-dev-platform/pull/22

For some builds we get this error:
Patch keyutils-arm-remove-m32-m64.patch is already applied; check your series file
I commented on the fix also to ask if this is the right way or not.

Are we sure 8dc657da7f63cfe84cd6c821cf1eec290960465a will not affect the HMI on other targets if applied? If it's a fix for dragonboard, maybe apply it as a target specific override the the append @chbae ? I only say this because resolution on different monitors across the targets is an issue that is reported frequently

The keyutils patch has now been upstreamed into meta-ivi 31f05de9c4cd04b3ff9bb6b3030d24be3be837d4 (included in 10.0.1 tag) which we are currently testing the integration of. It may be worth merging ivi10.0.1 and dropping this patch here

Apart from my previous comment, +1 from me (I can't test deployment, I'm sure you've tested it :) )

@tom--pollard
Ok. I'll remove the keyutil patch and rebase this after merging meta-ivi 10.0.1.
Thanks for your comment.

A nice thing in Go - you can rerun jobs with the same inputs as before.
I adjusted the build script for Porter (there was a bug) and ran it again - all checks are now successful.

Review comment:
What I don't like about this PR is that there are so many repeated patches for HMI.  One patch is repeated 3 times.  I understand this is because of the way the HMI is at the moment and we should try to do something about it.  I am just saying, the bad HMI arrangement causes the problem to get bigger and bigger when we have to add things...
Maybe it's worth the price, to get the Dragonboard support in, or maybe we should try to fix the HMI better first?   What do the other GDP maintainers think?

@gunnarx
Thanks for your comments. In my opinion, HMI apps should use seprated repo.

I support the idea of separating HMI and apps in different repos. From the delivery management perspective is the right thing to do in the future. Is it worth it at this point?

Dear all
HMI separation is good for me but it will be handled on another jira ticket and PR.
Thanks.


Import official publication keywords from Crossref and include them on ScholarSphere deposits

Title says it all, but Ana needs to check if Crossref (or another source?) has these.
This will help the ScholarSphere curators, who would otherwise add these manually.

I don't believe Crossref currently includes keywords in its Works endpoint.
Here is an example from the Works endpoint. This publication has official keywords from the publisher, which have been entered manually on the ScholarSphere deposit.
Here's an April 2020 forum post suggesting Crossref add keywords.


no response when click UI max amount sometimes

In the scene above, no response when click Max: 2,676, refresh the page does not fix.
I input the number manually, it works.

It seems the same for all numbers greater than 1000, which have , in the number.
Should be a bug.

fix in : https://github.com/nervosnetwork/force-bridge-ui/pull/60


Constraint Core code facelift

Constraint Core is a really cool extension, but there were a few opportunities for improvement in the source that I took advantage of.
What started as investigation into a constraint ownership issue turned into a larger code rework.
Motivation
When I discovered the ownership issue, I wanted to implement a "good" solution that would make the file easier to modify later.
In doing so, I found a lot of little issues and potential errors in the code. I also discovered some pretty severe exploits, and decided I'd take on the task of modernizing and fully adopting Constraint Core into E2.
This is mostly a code change that fixes bugs, improves performance, and helps mitigate misuse.
This PR is entirely backwards-compatible - no API changes were made (though, I would argue it could be dramatically improved if we did a full rework...)
Outline of Changes
Functional changes
* All convars are off-by-default, so they don't change any behavior until a server operator configures their value

Added multiple convars to control limits for:

The total constraints any player can make with e2
The total constraints of each type any player can make with a e2
The total constraints any player can make on any given entity

Added a convar to completely prevent new edict-producing constraints after the configured threshold (default 7500) to prevent players from using Constraint Core to quickly exhaust the server's Edict limit
Added a convar to make the E2 clean up all created constraints on destruct
Added a validator that the makes sure the constraints were actually created, and breaks out of the function if something went wrong
Fixed a bug where Ropes, Elastic, etc. weren't being picked up by most Prop Protection addons (refactored the undo/cleanup function to also include the created Rope-y entity)
In Entity:constraintBreak( Entity ) (and similar), stopped checking ownership of the other Entity (i.e. so you can clear constraints between your prop and the world, for example - can't think of any reason that the target Entity has to be owned by you)

Code changes

Made spacing consistent within each method:

If the method already had code with spaces inside parens, I changed the rest of the method to follow the same pattern
Top-level function definitions remain without spaces inside parens
New functions use space inside parens

Removed Garry operators (// -> --, ! -> not) (yes, I can see the irony of making this change in an e2 file, lol)
Extracted ent setup functions (like setting up the "Ropes" table) into their own helper functions
General code simplification
Reduced indentation, mostly by negating and returning early
Created a new postCreate function that takes care of the counting, undo/cleanup, and constraint tracking
Made casing of constraint types consistent
Localized a few frequently used functions to save a handful of microseconds every execution
Segmented each section with comments
Improved consistency in some variable names

This is a lot of wordy buzzword B.S; Basically I just tried to make the file a little less painful to work with and add some much-needed restrictions.
Testing
I'll run this branch on CFC for a few days and fix any issues that come up. During that time I'll tend to this PR and your lovely comments.
As a sanity check, I ran this E2 on both master and my branch:
@strict
Ent1 = entity(124)
Ent2 = entity(56)
Vec = vec(0)

axis(Ent1, Vec, Ent2, Vec)
axis(Ent1, Vec, Ent2, Vec, 1)
axis(Ent1, Vec, Ent2, Vec, 1, vec(1,1,1))

ballsocket(Ent1, Vec, Ent2)
ballsocket(Ent1, Vec, Ent2, 1)
ballsocket(Ent1, Vec, Ent2, vec(1), vec(2), vec(1))
ballsocket(Ent1, Vec, Ent2, vec(1), vec(2), vec(1), 1)

weldAng(Ent1, Vec, Ent2)

winch(1, Ent1, Vec, Ent2, Vec, 1)

hydraulic(2, Ent1, Vec, Ent2, Vec, 1)
hydraulic(3, Ent1, Vec, Ent2, Vec, 1, 1, "mat", 1, 1)
hydraulic(4, Ent1, Vec, Ent2, Vec, 1, 1, 1, "mat", 1, 1)

rope(5, Ent1, Vec, Ent2, Vec)
rope(6, Ent1, Vec, Ent2, Vec, 1, 1, "mat")
rope(7, Ent1, Vec, Ent2, Vec, 1, 1, "mat", 1)

Ent1:setLength(5, 2)

Ent1:setConstant(2, 1)
Ent1:setConstant(3, 1, 1)

Ent1:setDamping(4, 0)

slider(Ent1, Vec, Ent2, Vec)
slider(Ent1, Vec, Ent2, Vec, 1)

noCollide(Ent1, Ent2)
noCollideAll(Ent2, 0)

weld(Ent1, Ent2)

Ent1:constraintBreak("rope")
Ent1:constraintBreak("slider", Ent2)
Ent1:constraintBreak(world())
Ent1:constraintBreak()

interval(100)

I believe it uses every function. There were no errors, and running each chunk individually seems to work 👍

"Made the E2 clean up all created constraints on destruct"
Is this necessary? In my community there's quite a few people I know who use constraint core to make suspension for their vehicles, with the chip not being necessary after it's done creating them.

Great point - that would indeed be a regression.
Since opening the PR, I've placed that behavior behind an off-by-default convar, so off-the-bat it should still behave the same way it currently does.
I'll update my PR body to better explain that

I don't think this should be doing this E2Data stuff on the player object, it should just be in a local table created with WireLib.RegisterPlayerTable().

I don't think this should be doing this E2Data stuff on the player object, it should just be in a local table created with WireLib.RegisterPlayerTable().

Sure, I'll implement that real quick.

WireLib.RegisterPlayerTable already makes a table with the playerdisconnect for you

Perfect! I used that instead 👍


"Compare Selected" doesn't work if the new title bar style is enabled

Issue Type: Bug
1-User Settings
{
"window.titleBarStyle": "custom"
}
2-Select 2 files.
3-"Compare Selected".
4-Expected behavior : the files are compared with each other.
5-Actual result : nothing happens.
6-If the setting is removed, the comparison works.
VS Code version: Code 1.26.0 (4e9361845dc28659923a300945f84731393e210d, 2018-08-13T16:29:31.933Z)
OS version: Windows_NT x64 6.1.7601

duplicate of #56225


Debugging Pod->Node->Actual Machine Very Onerous

There is no easy correlation between a kubernetes Node and the actual EC2 instance it represents.
When debugging a Pod issue that requires validating items directly on the EC2 instance (and docker running there)...it is extremely onerous to determine the actual ssh values needed to check that machine.

would a combination of making sure the generated ssh config file is complete with node tagging be sufficient?  that way you could do a 'get nodes' and see the k2 tag 'clusterNode-2' and ssh to it.

As a temporary stash of my utility script...
https://github.com/samba/k2-tools/blob/util/cluster_interrogate_nodes/util/list_pod_nodes_status.sh
@mikeln @coffeepac What adaptation is necessary to make this usable for our work?

The arguments to the script positional only.
Requires coreutils package.

(It was a hack...)

hmm... maybe none?  if it works (haven't tried it yet).

there is a PR incoming that introduces a bastion-elb node type #759, this script (specifically the external DNS function) may need to be updated to deal with this.


Switch to Fluent::BufferedOutput and TCP+TLS

We were experiencing packet loss when sending logs at a high volume to Papertrail with this plugin. Based on Papertrail's documentation this was expected with high volume UDP connections. This pull request converts the plugin to be "backpressure aware" through two mechanisms, leveraging Fluent's BufferedOutput plugin as the base and converting our connection method with Papertrail to TCP.
Along the way I've also added:

built-in TLS encryption for Papertrail connections
timestamp forwarding from Fluent to Papertrail (if available)
error logging in case of plugin failure

All tests are passing:
-------------------------------------------------------------------------------
6 tests, 11 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
100% passed
-------------------------------------------------------------------------------

Alright. Tested on minikube and Zeus. Should be good to go.


Dump server stops responding to gRPC calls

There is nothing of notice in dump server logs. Restart fixes the issue.

Also, failure to communicate with the dump server should not cause errors returned to IMAP/POP/SMTP clients

Closing since the issue has not recurred.


Example doesn't work in "Tutorial: Using Preload Scripts"

I set up my project according to the "Using Preload Scripts" tutorial. But it doesn't print out "pong" as expected.
Expected behavior:

Actual behavior:

Versions and Platform

OS: macOS Ventura 13.2.21
Node version: v16.17.0
Electron version: 23.1.3

@unfode, I'm going to close this as it's the wrong repo, and also because I believe it is working as expected.
The "pong" is logged using console.log in the renderer process - if you open dev tools in the renderer, you should see it there. It is not logged to the terminal.


Update documentation https://docs.hugoblox.com/reference/extend/

Prerequisites

[X] I have searched for duplicate or closed feature requests
[X] I am mindful of the project scope

Proposal
I do not easily find a way to create a custom block.
The best descriptions are in:

https://bootstrap.hugoblox.com/blocks/custom/
https://github.com/HugoBlox/create-blox
https://discord.com/channels/722225264733716590/738924038881148948/1036728674965262397

My feature request is to update the documentation https://docs.hugoblox.com/reference/extend/ with this information.
# Example
For example, say we wish to add some HTML code to the navigation bar.

Let’s copy the relevant file blox-tailwind/layouts/partials/components/headers/navbar.html to layouts/partials/components/headers/navbar.html at the root of your site, creating the layouts/partials/components/headers/ folders if they do not already exist.

Now you can make changes to your copy of the file, which will override Hugo Blox’s version.

# Example 1
For example, say we wish to add some HTML code to the navigation bar.

Let’s copy the relevant file blox-tailwind/layouts/partials/components/headers/navbar.html to layouts/partials/components/headers/navbar.html at the root of your site, creating the layouts/partials/components/headers/ folders if they do not already exist.

Now you can make changes to your copy of the file, which will override Hugo Blox’s version.

# Example 2
For example, say we wish to create a new block.

Let’s copy the relevant file blox-tailwind/layouts/partials/blocks/features.html to layouts/partials/blocks/features.html at the root of your site, creating the layouts/partials/blocks/ folders if they do not already exist.

Now you can make changes to your copy of the file, which will override Hugo Blox’s version.

Motivation and context
Lacks of information in the documentation

Thanks the tutorial to create a new blox (at https://github.com/HugoBlox/create-blox ) has now been updated to migrate from Bootstrap to Tailwind.


Update forkdiffs generation based on new repository setup

Some components have moved to different repositories:

https://github.com/chainbound/bolt-mev-boost
https://github.com/chainbound/bolt-mev-boost-relay
https://github.com/chainbound/bolt-builder

We should update the forkdiffs generation here: https://github.com/chainbound/bolt-forkdiffs
to reflect this new setup. Additionally, forkdiffs for helix should be added against Gattaca's upstream.

Done for bolt-builder and bolt-mev-boost in https://github.com/chainbound/bolt-forkdiffs/commit/861a366436b0d2988e102342721433ef0c897aa3
Still have to do it for helix


[Docs]: Write Documentation for stack Data Structure

install the library on your machine
study the code and write a wiki doc for Stack(Arrays)
use this format

Docs


num_env   problem

Hello, I have read the code carefully, and I have some doubts about num_env.
1: If this parameter equal to 4,  is it equivalent to training four models? Or is it something like accelerated training?
2: I used openai baseline  and  get one summary when using 8 num_envs to train one model  but  I get 4 summaries when the num envs is 4  and  using your code . I read the loger code of openAI and your code , I found that openAI add all infos of all envs to one summary but your code add  info to its own FileWriter summary . is it right ? If  I only want one summary , can  i  simply add all infos ? is this right ?  if not , How can i get only one summry when i use multiply envs to train one model ?
3: when I test pong  using A2C , it cost about 8k to coverage , but when I use openAI baseline ,it only costs about 500 steps to coverage , this makes me very confused .
Any suggestions ?
Bests.

any updates on your Q3?


remove unnecessary gate

Type of PR (feature, enhancement, bug fix, etc.)
"Enhancement"
Description
Back in #45 (aka callbacks) we introduced a gate around the bottom-half of the main stimulus_reflex.js to make sure it was only executed once. The thing is, I cannot for the life of me see what purpose this serves. Presumably, with or without Turbolinks, this code is only going to be executed once per page - or else the const initialize immediately above it would already be complaining loudly, right?
This PR just removes the gate. There could be a very good reason to keep it! I just don't know what we were guarding against.
Why should this be added
Code clarity
Checklist

[x] My code follows the style guidelines of this project
[x] Checks (StandardRB & Prettier-Standard) are passing
[x] This is not a documentation update

Note that the file view on this PR looks intimidating, but it's literally just removing lines 494-496, 604.
The changeset is the result of the indentation formatting moving everything two spaces to the left.


UIExplorer: fix navigation animation by using props passed to renderTitleComponent

The animation shown in the UIExplorer example for NavigationExperimental's NavigationHeader is not working correctly. Due to an incomplete use of the renderTitleComponent() callback, interpolation is not working correctly in this example.
Even if the animation error is subtle, since the examples are followed by developers quite closely, the bug may multiply if not corrected in the sample code.
This is a really tiny modification that fixes that particular animation.

By analyzing the blame information on this pull request, we identified @hedgerwang to be a potential reviewer.

@facebook-github-bot shipit

Thanks for importing.If you are an FB employee go to Phabricator to review internal test results.


registry viewer should support multiple stack/sample versions

Which area/kind this issue is related to?

/area registry
Issue Description

Since https://github.com/devfile/api/issues/735 has been done, we need to think of how registry-viewer should show multiple stack versions.

viewer's main page should top-level information from index.json

viewer's devfile page should have a drop list to select stack/sample versions.
by default, show latest stack/sample version (or do we want to should the default stack version?)

each stack/sample version should show it's own information, including the devfile, tags/arch, starter project etc.

dup of https://github.com/devfile/api/issues/950


Nix Flake PoC

This is a quick PoC in relation to #317
After nix develop, I am able to do cargo build just fine. rust-analyzer works fine too. Though I don't have a Mac to try if any of the extra SSL paths, etc. are still needed. If so, you can add them as they were, and please add a comment that they are Darwni-fixups or something.

If you're OK with this, I can follow up with other stuff described in https://github.com/rustshop/rustshop/discussions/17 :

fast CI github workflows
auto-setup for github hooks and templates


TACGRP.MOBSU.OBST.ATO.ATD.ATDC COMPLETE is incorrect

TACGRP.MOBSU.OBST.ATO.ATD.ATDUC UNDER CONSTRUCTION	G * M * OA DU -- ** ** X
TACGRP.MOBSU.OBST.ATO.ATD.ATDC COMPLETE	G * M * OA DC -- ** ** X
For COMPLETE the triangles should filled.

One is supposed to be UNDER CONSTRUCTION and other is supposed to be COMPLETE. There is no difference in the display.

Works on the renderer test app.  I'll take a look in the eml-android tester

Generated kml and json have no issue either.  I think it's an issue with interpretation on the EMP-Android side.

[Uploading Screenshot_20170711-162951[1].png...]

Reintegrate