@ is not working in the PR description editor

Testing Microsoft/vscode#57301
This is a very useful thing in the web.

Closing as a duplicate of https://github.com/Microsoft/vscode-pull-request-github/issues/223


LOG4J2-2427 log4j2 filter for logs with no markers

Related JIRA issue: https://issues.apache.org/jira/browse/LOG4J2-2427

I was about to merge this but then realized I would have to write the documentation for it. Is it possible you could update the PR to add the documentation to the filters section?

@rgoers I have added the documentation. Now the check is giving a build error. Not sure why, because I have not changed any code. Not able to check on local as the build requires java 9 and now java 9 download is not available. Can you please help me out here.

@rgoers I have added the documentation. Now the check is giving a build error. Not sure why, because I have not changed any code. Not able to check on local as the build requires java 9 and now java 9 download is not available. Can you please help me out here.

Merging with latest master resolved the issues.
@rgoers Let me know if I need to make any other change in the PR.

Hi All,
I think NullFilterMarker would be a better class name.
Gary
On Tue, Jun 18, 2019, 23:58 Ralph Goers<EMAIL_ADDRESS>wrote:

Merged #215 https://github.com/apache/logging-log4j2/pull/215 into
master.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/apache/logging-log4j2/pull/215?email_source=notifications&email_token=AAJB6N6LPIUALGBWL6RM3OLP3GVHBA5CNFSM4FSQQJM2YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOSBUYYDQ#event-2422836238,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAJB6N7F62TGKYASWS3Z4XLP3GVHBANCNFSM4FSQQJMQ
.

I have to disagree. NullFilterMarker sounds like it somehow is a marker that represents a null filter, whatever that is, whereas NoMarkerFilter clearly represents a filter for when no marker is present.

Agreed, I could see a case for NullMarkerFilter over NullFilterMarker, but I think the current name NoMarkerFilter makes the functionality very clear.


/forgot and /change REST access?

Looking at the docs: https://docs.stormpath.com/nodejs/express/latest/password_reset.html
There is no mention of resetting password using REST api only (without HTML page).
I currently have disabled HTML views with:
produces: ['application/json']
So, I am left wondering how to use lost password workflow...  Can I selectively enable HTML only on /forgot endpoint?  how?  setting produces: ['application/json', 'text/html'] on /forgot didn't work.

Hey @subatomicglue, if you have 'produces: ['application/json'], no html pages will be rendered. What you'll want to do is manually trigger the password reset email using sendPasswordResetEmail(): https://docs.stormpath.com/nodejs/jsdoc/Application.html#sendPasswordResetEmail

@subatomicglue
The way you use the REST API to reset the password of an account is by doing a POST to the /forgot endpoint:
POST /forgot
Content-Type: application/json
Accept: application/json

{
  "email"<EMAIL_ADDRESS>}

After this request, if the account exists then an email is sent with a link pointing back to your site. This link should contain a query string parameter named sptoken. Using this token, you can then do a POST the /change endpoint to change the password of your account:
POST /change
Content-Type: application/json
Accept: application/json

{
  "sptoken": "SPTOKEN_FROM_LINK_RECEIVED_IN_EMAIL"
  "password": "New account password."
}

I'm sorry for the lack of documentation, but I hope this helped you.
Cheers,
Robin

I'm going to close this. Let me know if you have further questions and want this reopened.

Excellent responses everyone, many thanks.  I'll dig into the REST API in the future when I don't see something in express-stormpath.  I didn't see it, but there isn't a basic javascript wrapper around the REST API is there?   All I see are specializations:  NodeJS, AngularJS, React, etc...   (I'm using Angular2 and it could be useful to have a basic Javascript access wrapper for your REST service, rather than having to write all the POST and GET myself...).

Hi @subatomicglue , our REST API requires authentication with your tenant API Keys, and we don't permit this from the browser because it would be insecure.  We are working on a new "Client API" feature that exposes some common functionality for the browser, and we will be releasing that in our Angular and React SDKs in the next week.

Nice, i'll look forward to that.   Any word on Angular2 support?

@subatomicglue We released a beta version of our Angular 2 support a couple of weeks ago. I updated it a couple days ago to contain support for overriding component templates.


mv "Assign Pods" and "Taints and Tolerations" concepts to "Scheduling and Eviction"

Moved "Assigning Pods to Nodes" article to Concepts -> Scheduling and Eviction
Moved "Taints and Tolerations" article to Concepts -> Scheduling and Eviction
Updated weight of the "Kubernetes Scheduler" article so it appears first
Replaced links to "Assigning Pods to Nodes" and "Taints and Tolerations" articles
to avoid redirects.

Part of proposal #19081

Should there be redirects for any other pages? My concern is bookmarks / external references. Otherwise looks great!

Also @adambkaplan I'm afraid you might need to rebase your changes

/assign @jimangel
Also is there any reason why this has an area/blog label?

Also is there any reason why this has an area/blog label?

@bradtopol I think bot added this because I updated links in a few of the older blog articles. I can keep the blog links in place (or drop the "Update links" commit entirely)

/kind cleanup

@adambkaplan sorry but please rebase your changes again. Feel free to @ me afterwards so we can approve this! Thanks.

Hello @adambkaplan .
Would you rebase your branch and squash your commits? Thanks!

@kbhawkey @jimangel PR has been rebased!

/lgtm

Page previews:
https://deploy-preview-20487--kubernetes-io-master-staging.netlify.app/docs/tutorials/clusters/apparmor/
https://deploy-preview-20487--kubernetes-io-master-staging.netlify.app/docs/concepts/scheduling-eviction/assign-pod-node/


fixed still more missing db.Key and db.Entity calls and caching

fixed still more missing db.Key and db.Entity calls on several placed
fixed (and enabled) caching

I replaced this PR with #54 #55


Fix creating new default storage location

When we adding a new Storage Location that's set as as the default one, we currently end up having two default storage locations in the database.
Let's fix this.
I also fixed an HTML error (an unclosed <label> tag) and some warnings about accessing undefined variables in the view of dashboard/system/files/storage

Ref #4723


Integrate with no dynamic paths

I have a project with the pages folder like this:

So to create dymic routes based on language you used [lang] name for the directory. But how I could integrate the dynamic routing with the existing pages?
Because all of them has its own shape and child components so I can't reuse the same file for all of them.

But how I could integrate the dynamic routing with the existing pages?

Could you clarify that? I don't know what you mean. Please provide a minimal example. Codesandbox example would be great.
https://codesandbox.io/s/github/zeit/next.js/tree/master/examples/hello-world

You're not reusing the same file. You just need to add a top level folder inside pages. So instead of pages/client.js you'd have pages/[lng]/clients.js and so on.
Then in each page you define getStaticPaths as explained in the readme.

But how I could integrate the dynamic routing with the existing pages?

Could you clarify that? I don't know what you mean. Please provide a minimal example. Codesandbox example would be great.
https://codesandbox.io/s/github/zeit/next.js/tree/master/examples/hello-world

Sorry I was trying to recreate it (some issues with codesanbox) but then I saw freddydumont comment and tha is exactly what I meant.

You're not reusing the same file. You just need to add a top level folder inside pages. So instead of pages/client.js you'd have pages/[lng]/clients.js and so on.
Then in each page you define getStaticPaths as explained in the readme.

I will try this way, thank you so much.

Great, thanks @freddydumont for intervening.

@StarpTech

This lib doesn't enforce a specific localization strategy. You can localize based on domain (.de|com) or URL (/de, /en).
Back to your question: Tell Google about localized versions of your page In most of the cases your user will never visit /. In all other cases, you can use a redirect. Redirect doesn't break SEO. This is a myth in present times.


[Feature] alloy-consensus

Component
new component
Describe the feature you would like
contains primitive txn and receipt types, and transaction traits as described in #73 and #77
add to CI components list
Additional context
No response

should be done


Reference Style Links | Re-consider Marked

For some reason marked isn't parsing these correctly (see the markdown spec if you're not familiar with them). I find them very useful to keep paragraphs uncluttered for easy review and editing. This issue says they they should work, however this:
... here's a [link][1] ...

[1]: https://github.com

always gets parsed incorrectly to ...here's a [link][1]...
I'm assigning this to myself for now but anyone's welcome to take a look.

We might want to look into some other parser as marked isn't that maintained. It would have to be possible to customize the alternative, though, as there's certain custom syntax in place.

I have had problems with marked in the past for an app at work, but figured out a workaround. I was unable to find a better solution than marked and curious to know if there is something better.
Is there an example of reference linking already being used somewhere, if not I can play around with this and look into remarkable or common mark?

The problem is that we've extended the parser with some custom syntax. That would need to be ported over to some other solution. That said, replacing marked with something maintained could be a good move.

Yea I was thinking about closing this as it doesn't seem to bother others too much and I haven't had the time to dig into it myself. However, @bdougie if you want to take a stab at using another parser or debugging this, that would be awesome. As @bebraw mentioned though, I would take a look at the markdown utility we've been using and make sure the other parsers you try out can be customized in a similar fashion.

I first tried Remarkable and found it works fine with reference linking, I did have some trouble trying to match the Markdown Utility customizations and did not proceed with it.
I did find the point of failure in Marked and it correctly parses that there are reference links, if just can't parse the reference link list, specifically this.links.length is always 0. I have been tinkering with MarkedJS code to find out why the list is being overlooked. The fix in this issue addresses finding reflinks but not the list of links.
  [1]: http://google.com/
  [2]: http://search.yahoo.com/
  [3]: http://search.msn.com/

I have reached my limit for debugging marked and not sure using marked is not the correct path. I am going to try to add Remarkable again now that I have a better understanding what the Markdown Utility is doing. This is an interesting problem, so I have no problem proceeding.

FYI, I have been a bit busy with the day job and enlisted to @rolfea to help work on this. The basics of markdown is working with the remarkable library, but the overrides and special cases don't have replacements as of yet.

Just a note so I don't forget, I'm starting to play around with markdown-to-react-components in the react-banner documentation and it allows reference links! The weird thing is it uses marked under the hood...
I have a feeling something else we did in our markdown utility file is the root of issue. Anyways, so far MRTC has been working well. I think maybe that'd be a good solution for us here. I think we could do all the same customization we're doing currently with it but in a cleaner fashion via react components.

Closing this for same reason I just closed #301, if someone wants to pick it up sooner feel free to re-open. If not, @bdougie I'll ping you down the road if once we start a real effort on #301 if you're still interested in helping out (I have pretty high hopes for MRTC 😄 ).


Add server-side threading for metals that affect a radius

Changes proposed in this pull request:

Zinc, brass, cadmium, and bendalloy all have threaded effects

Also sorry for the one big commit

Oh, meant to say unused imports. I should sleep more :)


fix: use dbt macro get_limit_subquery_sql for limit query if available

Overview

This PR enables adding limit to queries based on dbt macro get_limit_subquery_sql (ex: https://github.com/oracle/dbt-oracle/blob/5c6816b5058f6d6ed76e3362eafccf9501f92c37/dbt/include/oracle/macros/show.sql#L17-L23)
also removed queryTemplate usage from frontend (query panel) and handled the logic in dbtcoreintegration.

Conditions:

if dbt version is>= 1.5 then get the query template using dbt get_limit_subquery_sql macro
if above step didnt return any macro, check if user has provided query template, we will use the same
if any failure happened, use default query template

resolves: #745
Checklist

[x] I have run this code and it appears to resolve the stated issue
[ ] README.md updated and added information about my change

@saravmajestic Please update the docs also

@saravmajestic : can you also take care of the codeQL errors?


Federated Modules: Dynamic Remotes

Feature request

What is the expected behavior?
It seems that although dynamic imports are supported in federated modules, and it is possible to obtain remoteEntry.js on runtime, the remotes are still statically defined in webpack config.
new ModuleFederationPlugin({
      name: 'application_b',
      library: { type: 'var', name: 'application_b' },
      filename: 'remoteEntry.js',
      exposes: {
        'SayHelloFromB': './src/app',
      },
      remotes: {
        'application_a': 'application_a',
      },
      shared: ['react', 'react-dom'],
    }),

Here, application_b is statically defining application_a as a remote.
Is there a way that remotes can be defined dynamically instead?
What is motivation or use case for adding/changing the behavior?
A plugin system that spreads its plugins over many microservices.
How should this be implemented in your opinion?
Similar to lazy loading in code splitting, could dynamic imports (remotes) be preemptively prepared?
Are you willing to work on this yourself?
I am not very well-versed in webpack's internals, unfortunately.

You can dynamically load remote modules using this:
// Initializes the share scope.
// This fills it with known provided modules from this build and all remotes
await __webpack_initialize_sharing__("default");
// TODO: load the script tag somehow. e. g. with a script loader
const container = window.application_a;
// Initialize the container, it may provide shared modules
await container.init(__webpack_share_scopes__.default);
const module = await container.get("./module");

@sokra how I can get __webpack_initialize_sharing__ and __webpack_share_scopes__? I haven't them in global context.

await __webpack_init_sharing__("default"); not initialize

Thanks fixed

In the actual project, services in remote host, and we may be exposed multiple module, can we do this?
const { Routes, Button } = await __webpack_init_module_federation_remote('https://localhost/order/remoteEntry.js');

@shaodahong It's completely possible to dynamically import modules; we use the following code to load the compiled code into the window object dynamically:
   await new Promise((resolve, reject) => {
      const element = document.createElement('script');

      element.src = url;
      element.type = 'text/javascript';
      element.async = true;

      element.onload = () => {
        element.parentElement.removeChild(element);
        resolve();
      };
      element.onerror = (error) => {        element.parentElement.removeChild(element);
        reject(error);
      };

      document.head.appendChild(element);
    });

  const factory = await window[webpackModuleName].get(component);
  return factory();

Note this doesn't seem to work properly when you have multiple plugins with identical component names running in development mode with HMR.

yup, it's broken when using dev hmr

HMR and MF do not work currently.

HMR and MF do not work currently.

@ScriptedAlchemy https://github.com/webpack/webpack-dev-server/issues/2692 Any plan?

hi @ScriptedAlchemy and @sokra
Just wanted to confirm if it is actually possible to load dynamically federated modules from a dynamically loaded remote. It seems it is possible. I will give it a try to the code @sokra put above, but would be nice to get a confirmation from you that it is actually possible.

@royriojas check my code above: https://github.com/webpack/webpack/issues/11033#issuecomment-711693729. We have this working fine in dev loading federated modules just using a URL.

I've not looked into webpack dev server or this issue further. A workaround you could apply is to add startup code and manually define the container to the window. Since WDS adds a module to the end, we can use startup code to add our own module and basically set it ourselves.
https://link.medium.com/ierojo0DKab

Hi @ScriptedAlchemy based on all that I've found I came with this for dynamic loading modules from remotes (without hardcoding them in the webpack config)
https://github.com/royriojas/mfe-webpack-demo/tree/attempt_dynamic
But here is something very weird I noticed:
React from app_03 is resolved to the same React in that remote if not loaded before executing any code from the app_01.  Not sure if it is a bug or it is intended to be like that. But since what I want is to load arbitrary code without caring about the order, this might be a deal breaker. Well not really, but it will force us to think of a workaround (like preload certain dependencies in a vendors.js file maybe?
If you comment this line here: https://github.com/royriojas/mfe-webpack-demo/blob/attempt_dynamic/packages/app-01/src/index.jsx#L8 you will see that the app fails to load the app_03
For now preloading it solves my issue, but it would be really nice to not need that.
The error that I get when I don't preload that given remote is that there are 2 React versions in the page :(

react.development.js:1465 Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://fb.me/react-invalid-hook-call for tips about how to debug and fix this problem.
    at resolveDispatcher (react.development.js:1465)
    at useDebugValue (react.development.js:1529)
    at styled-components.browser.esm.js:1
    at styled.button (styled-components.browser.esm.js:1)
    at renderWithHooks (react-dom.development.js:14825)
    at updateForwardRef (react-dom.development.js:16840)
    at mountLazyComponent (react-dom.development.js:17392)
    at beginWork (react-dom.development.js:18635)
    at HTMLUnknownElement.callCallback (react-dom.development.js:188)
    at Object.invokeGuardedCallbackDev (react-dom.development.js:237)
resolveDispatcher @ react.development.js:1465
useDebugValue @ react.development.js:1529
(anonymous) @ styled-components.browser.esm.js:1
styled.button @ styled-components.browser.esm.js:1
renderWithHooks @ react-dom.development.js:14825
updateForwardRef @ react-dom.development.js:16840
mountLazyComponent @ react-dom.development.js:17392
beginWork @ react-dom.development.js:18635
callCallback @ react-dom.development.js:188
invokeGuardedCallbackDev @ react-dom.development.js:237
invokeGuardedCallback @ react-dom.development.js:292
beginWork$1 @ react-dom.development.js:23234
performUnitOfWork @ react-dom.development.js:22185
workLoopSync @ react-dom.development.js:22161
performSyncWorkOnRoot @ react-dom.development.js:21787
(anonymous) @ react-dom.development.js:11111
unstable_runWithPriority @ scheduler.development.js:653
runWithPriority$1 @ react-dom.development.js:11061
flushSyncCallbackQueueImpl @ react-dom.development.js:11106
workLoop @ scheduler.development.js:597
flushWork @ scheduler.development.js:552
performWorkUntilDeadline @ scheduler.development.js:164
react_devtools_backend.js:2273 The above error occurred in the <styled.button> component:
    in styled.button (created by UiLibraryPage)
    in Suspense (created by UiLibraryPage)
    in div (created by Page)
    in div (created by Page)
    in Page (created by UiLibraryPage)
    in UiLibraryPage (created by Context.Consumer)
    in Route (created by Routes)
    in Switch (created by Routes)
    in Routes (created by App)
    in div (created by App)
    in Router (created by HashRouter)
    in HashRouter (created by App)
    in App

Consider adding an error boundary to your tree to customize error handling behavior.
 Webpack can only negotiate versions sharing of singletons upfront.
Only use module-federation-examples for configuring. Your webpack config is old and you're sharing api isn't right for what you're trying to do.
Please refer to my repos under the MF organization.

@ScriptedAlchemy I don't want to load two versions of react. I actually want to share the same React version across the board. I will check the webpack config, but I was sure I recently upgraded it.
I'm not trying to share anything yet. I was just trying to understand what was possible to do with module federation. I will take a look a semver sharing.
Thank you for your feedback.

Thanks for your feedback @ScriptedAlchemy. Using a shared singleton fixed all the issues I had. Thank u.

Yeeeeee!!! 🥳
Thrilled it resolved the problem.
Where did you read about the old config? Or is this just an old copy from beta 16 that you've been using.
Need to know if I should actually update my articles or not 😂😂

@ScriptedAlchemy Old example forked from https://github.com/mizx/mfe-webpack-demo which was using the beta version

Ahhh yep. He helped me build out some examples, he was the first outside user. Module federation examples was actually based on his initial effort to help us make example projects. Will DM and see if he wants to drop a link or update some examples

Reading this conversation as I am implementing dynamic module loading at the moment. I don't understand why react and react-dom have to be declared as singletons. Isn't the idea of "shared" exactly having only a single instance of all libraries loaded at all times? Why should this be set manually and how do I decide for which libraries it's necessary?

For anyone googling into this the module federation documentation has been updated and a example added:

https://webpack.js.org/concepts/module-federation/#dynamic-remote-containers
https://github.com/module-federation/module-federation-examples/tree/7930cd5452555928801e1550f836ffe3d438a66b/advanced-api/dynamic-remotes

So I have issue, I have code loading in modules 'synchronously' so something like:
import urls from "remoteModule/constants";

async function getSomething(params) {
  // ...other processing
  return fetch(urls.aThing);
}

Unless I'm misunderstanding something, the technique used in the example wouldn't work for what I'm trying to do?
Or I would have to restructure my code to be something like:
async function getSomething(params) {
  const { aThing } = await someKindOfDynamicLoading("remoteModule/constants");
  return fetch(urls.aThing);
}

The thing is I really don't want to do that, I guess the argument could be made that it should be explicit whether a module is being loaded externally via a function like someKindOfDynamicLoading, but for 'middleware'/non-jsx code it seems out of place?
Is there a way to modify the example(s) given so that I could load my modules synchronously? Or am I'm using federated modules in a 'unintended'/bad way?

@shaodahong It's completely possible to dynamically import modules; we use the following code to load the compiled code into the window object dynamically:
   await new Promise((resolve, reject) => {
      const element = document.createElement('script');

      element.src = url;
      element.type = 'text/javascript';
      element.async = true;

      element.onload = () => {
        element.parentElement.removeChild(element);
        resolve();
      };
      element.onerror = (error) => {
        element.parentElement.removeChild(element);
        reject(error);
      };

      document.head.appendChild(element);
    });

  const factory = await window[webpackModuleName].get(component);
  return factory();

Note this doesn't seem to work properly when you have multiple plugins with identical component names running in development mode with HMR.

This seems only load <script/>s, how about <style/>s?

You can dynamically load remote modules using this:
// Initializes the share scope.
// This fills it with known provided modules from this build and all remotes
await __webpack_init_sharing__("default");
// TODO: load the script tag somehow. e. g. with a script loader
const container = window.application_a;
// Initialize the container, it may provide shared modules
await container.init(__webpack_share_scopes__.default);
const module = await container.get("./module");

I am able to load remote module dynamically with the above approach. Just curious if I can pass props to the remote component? If yes, refer some sample code please!

const factory = await container.get(moduleToLoad); // where moduleToLoad is the path to the module (including a `/.` if I recall correctly
const Module = factory();

const Comp = Module.default(/* pass props here*/);

return Comp;

const factory = await container.get(moduleToLoad); // where moduleToLoad is the path to the module (including a `/.` if I recall correctly
const Module = factory();

Module.default(/* pass props here*/); // this is the function, or component or whatever that is being federated

@royriojas  thank you for your reply. I was trying the follow the steps you mentioned. But now luck. In my component I have a property called 'name' with a type of string I was trying to pass the data like Module.default({name:'abcd'}) which did not work Also I tried with Module.default(name='abcd') which is also not working. Can you please help me here.

How are you exporting your component? is that the default? otherwise you
might not need the default keyword
Roy Ronald Riojas Montenegro
On Mon, Apr 12, 2021 at 5:04 PM Somnath @.***> wrote:

const factory = await container.get(moduleToLoad); // where moduleToLoad is the path to the module (including a /. if I recall correctlyconst Module = factory();
Module.default(/* pass props here*/); // this is the function, or component or whatever that is being federated
@royriojas https://github.com/royriojas thank you for your reply. I was
trying the follow the steps you mentioned. But now luck. In my component I
have a property called 'name' with a type of string I was trying to pass
the data like Module.default({name:'abcd'}) which did not work Also I tried
with Module.default(name='abcd') which is also not working. Can you please
help me here.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/webpack/webpack/issues/11033#issuecomment-818320826,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABABWSINU5VQRE6Z2QPYSTTIODCXANCNFSM4N5DZLIA
.

How are you exporting your component? is that the default? otherwise you might not need the default keyword Roy Ronald Riojas Montenegro
…
On Mon, Apr 12, 2021 at 5:04 PM Somnath @.*> wrote: const factory = await container.get(moduleToLoad); // where moduleToLoad is the path to the module (including a /. if I recall correctlyconst Module = factory(); Module.default(/ pass props here/); // this is the function, or component or whatever that is being federated @royriojas https://github.com/royriojas thank you for your reply. I was trying the follow the steps you mentioned. But now luck. In my component I have a property called 'name' with a type of string I was trying to pass the data like Module.default({name:'abcd'}) which did not work Also I tried with Module.default(name='abcd') which is also not working. Can you please help me here. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#11033 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABABWSINU5VQRE6Z2QPYSTTIODCXANCNFSM4N5DZLIA .

I am exporting as default. Here is the snippet :
import * as React from "react";
interface OwnProps {
name: string;
}
const Widget: (React.FC) = props => {
const renderMain = (): JSX.Element => {
return (
<div
// my additional implementation goes here
{props.children}

);
}
return renderMain();
}
export default Widget;
I am loading the above component from my host app port 3001 and remote component is running in port 3002

Could you share your webpack config for remotes?
Roy Ronald Riojas Montenegro
On Mon, Apr 12, 2021 at 5:22 PM Somnath @.***> wrote:

How are you exporting your component? is that the default? otherwise you
might not need the default keyword Roy Ronald Riojas Montenegro
… <#m_2640954308268869088_>
On Mon, Apr 12, 2021 at 5:04 PM Somnath @.**> wrote: const factory =
await container.get(moduleToLoad); // where moduleToLoad is the path to the
module (including a /. if I recall correctlyconst Module = factory();
Module.default(/ pass props here*/); // this is the function, or
component or whatever that is being federated @royriojas
https://github.com/royriojas https://github.com/royriojas thank you for
your reply. I was trying the follow the steps you mentioned. But now luck.
In my component I have a property called 'name' with a type of string I was
trying to pass the data like Module.default({name:'abcd'}) which did not
work Also I tried with Module.default(name='abcd') which is also not
working. Can you please help me here. — You are receiving this because you
were mentioned. Reply to this email directly, view it on GitHub <#11033
(comment)
https://github.com/webpack/webpack/issues/11033#issuecomment-818320826>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABABWSINU5VQRE6Z2QPYSTTIODCXANCNFSM4N5DZLIA
.
I am exporting as default. Here is the snippet :
import * as React from "react";
interface OwnProps {
name: string;
}
const Widget: (React.FC) = props => {
const renderMain = (): JSX.Element => {
return (
);
}
return renderMain();
}
export default Widget;
I am loading the above component from my host app port 3001 and remote
component is running in port 3002
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/webpack/webpack/issues/11033#issuecomment-818327792,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABABWRZMCU7N3GFD7RA3ZLTIOFGBANCNFSM4N5DZLIA
.

Could you share your webpack config for remotes? Roy Ronald Riojas Montenegro
…
On Mon, Apr 12, 2021 at 5:22 PM Somnath @.> wrote: How are you exporting your component? is that the default? otherwise you might not need the default keyword Roy Ronald Riojas Montenegro … <#m_2640954308268869088_> On Mon, Apr 12, 2021 at 5:04 PM Somnath @.> wrote: const factory = await container.get(moduleToLoad); // where moduleToLoad is the path to the module (including a /. if I recall correctlyconst Module = factory(); Module.default(/ pass props here/); // this is the function, or component or whatever that is being federated @royriojas https://github.com/royriojas https://github.com/royriojas thank you for your reply. I was trying the follow the steps you mentioned. But now luck. In my component I have a property called 'name' with a type of string I was trying to pass the data like Module.default({name:'abcd'}) which did not work Also I tried with Module.default(name='abcd') which is also not working. Can you please help me here. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#11033 (comment) <#11033 (comment)>>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABABWSINU5VQRE6Z2QPYSTTIODCXANCNFSM4N5DZLIA . I am exporting as default. Here is the snippet : import * as React from "react"; interface OwnProps { name: string; } const Widget: (React.FC) = props => { const renderMain = (): JSX.Element => { return ( <div // my additional implementation goes here {props.children} ); } return renderMain(); } export default Widget; I am loading the above component from my host app port 3001 and remote component is running in port 3002 — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#11033 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABABWRZMCU7N3GFD7RA3ZLTIOFGBANCNFSM4N5DZLIA .

const HtmlWebpackPlugin = require("html-webpack-plugin");
const ModuleFederationPlugin = require("webpack").container
.ModuleFederationPlugin;
const path = require("path");
module.exports = {
entry: "./src/index",
mode: "development",
devServer: {
contentBase: path.join(__dirname, "dist"),
port: 3002,
},
output: {
publicPath: "auto",
},
resolve: {
extensions: [".ts", ".tsx", ".js"],
},
module: {
rules: [
{
test: /bootstrap.tsx$/,
loader: "bundle-loader",
options: {
lazy: true,
},
},
{
test: /.tsx?$/,
loader: "babel-loader",
exclude: /node_modules/,
options: {
presets: ["@babel/preset-react", "@babel/preset-typescript"],
},
},
],
},
plugins: [
new ModuleFederationPlugin({
name: "app2",
filename: "remoteEntry.js",
exposes: {
"./Button": "./src/Button",
"./Widget": "./src/Widget",
},
shared: ["react", "react-dom"],
}),
new HtmlWebpackPlugin({
template: "./public/index.html",
}),
],
};

I'm able to load the component dynamically, however, it seems like host container cannot share the React Context with the Remove container. Any idea why?

It should work. Is more than one copy of react getting loaded? If not then I don't see a reason why it wouldn't work.
Are you perhaps not sharing something that depends on react context. Like a node module

Thank you @ScriptedAlchemy for your reply. Really appreciate it!

Is more than one copy of react getting loaded?
I'm loading just one copy of react, I'm setting the webpack config for both host and remote containers to be

react: { singleton: true, requiredVersion: deps['react'] }
If I understand correctly, singleton would ensure that only one copy of react is loaded

Are you perhaps not sharing something that depends on react context. Like a node module
May I clarify what do you mean by this?

For people not sure how to implement this for React lazy loaded components, assuming you have the following config available (hardcode it, preload it, add using SSR, or whatever other method of choice):
/* This is basically the same object you'd have in webpack config */
window.__remotes__ = {
    'myapp': 'myapp@http://localhost:9001/remoteEntry.js'
};

do:
declare global {
    interface Window {
        __remotes__: Record<string, string>;
    }

    const __webpack_init_sharing__: any;
    const __webpack_share_scopes__: any;
}

async function dynamicImport (path: string) {
    const [ remoteName, remoteUrl ] = Object.entries(window.__remotes__).find(([ r ]) => path.startsWith(r));

    if (!remoteName) throw new Error(`URL not configured for remote '${path}'.`);
    if (remoteUrl.split('@').length !== 2) throw new Error(`URL misconfigured for remote '${path}'`);

    const [ moduleName, moduleUrl ] = remoteUrl.split('@');

    await __webpack_init_sharing__('default');

    await new Promise<void>((resolve, reject) => {
        const element = document.createElement('script');

        element.src = moduleUrl;
        element.type = 'text/javascript';
        element.async = true;

        element.onload = () => {
            element.parentElement.removeChild(element);
            resolve();
        };

        element.onerror = (err) => {
            element.parentElement.removeChild(element);
            reject(err);
        };

        document.head.appendChild(element);
    });

    const container = window[moduleName];
    await container.init(__webpack_share_scopes__.default);

    const component = `.${path.replace(remoteName, '')}`;
    const factory = await container.get(component);

    return factory();
}

and then just replace import(...) with dynamicImport:
const MyComponent = React.lazy(() => dynamicImport('myapp/MyComponent'));

is there any way to do this with a non UI component ? i am trying to federate my redux store and some helper function

Regarding dynamic remotes. They might be getting initialized too late or early, a remote can only be initialized once so if it depends on something from another remotes share scope as a singleton, the scare scopes cannot be reinitialized with more modules at a later stage.

I have tried the mentioned by @grzegorzjudas, but I can't get past this error
TypeError: __webpack_init_sharing__ is not a function
Is there something else I am needing to expose these values?

That won't work if your consuming app doesn't have anything shared. If you're not planning to share any modules from the consuming app then you don't want to init sharing since there's nothing to share.

I created a library that abstracts some of the business logic and works for suspense, loadable or others https://github.com/MichaelDurfey/mf-dynamic-remote-component

@ScriptedAlchemy Sounds good to me!

@ScriptedAlchemy  I Want to know how we can dynamically fetch remotes on server-side (in node server)
also If we are able to fetch remote components on server then I believe it's async process
then how we can make it synchronous process as we can't add 'await' to renderToString() ?

The node technology is currently proprietary.
There's a package on npm called node-mf, it's the least buggy option.
I do plan to release module-federation/node in the near future.
Our internal technology is the the most stable and powers many enterprise clients. It's also what's powering SSR support on next.js and is the core tech running module-federation/aegis (hexagonal backend architecture that enables federation for any language on any compute primitive)

For people not sure how to implement this for React lazy loaded components, assuming you have the following config available (hardcode it, preload it, add using SSR, or whatever other method of choice):
/* This is basically the same object you'd have in webpack config */
window.__remotes__ = {
    'myapp': 'myapp@http://localhost:9001/remoteEntry.js'
};

do:
declare global {
    interface Window {
        __remotes__: Record<string, string>;
    }

    const __webpack_init_sharing__: any;
    const __webpack_share_scopes__: any;
}

async function dynamicImport (path: string) {
    const [ remoteName, remoteUrl ] = Object.entries(window.__remotes__).find(([ r ]) => path.startsWith(r));

    if (!remoteName) throw new Error(`URL not configured for remote '${path}'.`);
    if (remoteUrl.split('@').length !== 2) throw new Error(`URL misconfigured for remote '${path}'`);

    const [ moduleName, moduleUrl ] = remoteUrl.split('@');

    await __webpack_init_sharing__('default');

    await new Promise<void>((resolve, reject) => {
        const element = document.createElement('script');

        element.src = moduleUrl;
        element.type = 'text/javascript';
        element.async = true;

        element.onload = () => {
            element.parentElement.removeChild(element);
            resolve();
        };

        element.onerror = (err) => {
            element.parentElement.removeChild(element);
            reject(err);
        };

        document.head.appendChild(element);
    });

    const container = window[moduleName];
    await container.init(__webpack_share_scopes__.default);

    const component = `.${path.replace(remoteName, '')}`;
    const factory = await container.get(component);

    return factory();
}

and then just replace import(...) with dynamicImport:
const MyComponent = React.lazy(() => dynamicImport('myapp/MyComponent'));

How do you handle errors from the script tag?
For example, there was an issue loading the remote entry because of a missing chunk.

For people not sure how to implement this for React lazy loaded components, assuming you have the following config available (hardcode it, preload it, add using SSR, or whatever other method of choice):
/* This is basically the same object you'd have in webpack config */
window.__remotes__ = {
    'myapp': 'myapp@http://localhost:9001/remoteEntry.js'
};

do:
declare global {
    interface Window {
        __remotes__: Record<string, string>;
    }

    const __webpack_init_sharing__: any;
    const __webpack_share_scopes__: any;
}

async function dynamicImport (path: string) {
    const [ remoteName, remoteUrl ] = Object.entries(window.__remotes__).find(([ r ]) => path.startsWith(r));

    if (!remoteName) throw new Error(`URL not configured for remote '${path}'.`);
    if (remoteUrl.split('@').length !== 2) throw new Error(`URL misconfigured for remote '${path}'`);

    const [ moduleName, moduleUrl ] = remoteUrl.split('@');

    await __webpack_init_sharing__('default');

    await new Promise<void>((resolve, reject) => {
        const element = document.createElement('script');

        element.src = moduleUrl;
        element.type = 'text/javascript';
        element.async = true;

        element.onload = () => {
            element.parentElement.removeChild(element);
            resolve();
        };

        element.onerror = (err) => {
            element.parentElement.removeChild(element);
            reject(err);
        };

        document.head.appendChild(element);
    });

    const container = window[moduleName];
    await container.init(__webpack_share_scopes__.default);

    const component = `.${path.replace(remoteName, '')}`;
    const factory = await container.get(component);

    return factory();
}

and then just replace import(...) with dynamicImport:
const MyComponent = React.lazy(() => dynamicImport('myapp/MyComponent'));

How do you handle errors from the script tag? For example, there was an issue loading the remote entry because of a missing chunk.

Try this, In the remote's Webpack config, define the following
output {
    publicPath: 'auto'
}

Your issue could be that the remote is trying to fetch its resources on the host and not it's own server. Webpack is clever enough to resolve this for you. See here

If you only need dynamic connection code, im working on delegate modules - have just released it for next.js and will work on normal support.
This lets you use static imports, but can dynamically resolve the location of the remote container as needed.
https://github.com/module-federation/module-federation-examples/pull/2756
https://github.com/module-federation/universe/tree/main/packages/nextjs-mf#beta-delegate-modules

@tzachbon You could return a custom function that wraps factory() in try/catch clause. Haven't tried it, but something along this should work:
return () => {
    try {
        factory();
    } catch (err) {
        // handle the error somehow
    }
};

I got stuck with Vite for few days https://github.com/originjs/vite-plugin-federation/issues/518 until I found this issue @MichaelDurfey library.
This library was a gem to me :+1:
Thanks again!

Currently, I have a solution to the problem of dynamic remote: The general effect is as follows:
`
// You can pull the remote url configuration here through code or requests
window.remote_urls = {
app: 'http://localhost:3000/',
}
import('./bootstrap')
`
And you can use it as follows:
// Suppose./Button is exported in the app import Button from 'remote:app/Button' function Demo() {     return <Button />; }
I have currently implemented this pattern in my own scaffolding, and if you are interested, I will take the time to introduce it completely as above.

We have released official vite support now


Bump vm-builder v0.29.3 -> v0.35.0

We haven't updated it for a while. Now I need the update to add quotas support to compute images (https://github.com/neondatabase/cloud/issues/13127).
Previous update: https://github.com/neondatabase/neon/pull/7849

For the future: We could have used #9158 instead; I would have rather used that one, as it has a better PR description.


Forward X-Forwarded-proto header

Hi,
If I want to use only the port 80 as proxy (default) behind an ELB the forwarded proto should be pass, be cause some application can require this proto.
Example :
ELB 80,443,4433--> 80 Haproxy --> 80 router --> my app
If I query https://mydomain.com the ELB will give the https as forwarder-proto but haproxy still send http, my app is expecting https so I will send a redirect to https .... so I will loop.

PR https://github.com/cloudfoundry-community/cf-haproxy-boshrelease/pull/4

Merged.


Hotfix to PR #981

This resolve a rocBLAS build issue complaining resource overflow when built for all supported archs. The culprit is I forgot to reset the state of kernel writer before writing each new kernel so the state of writing ISA908 kernels could be wrongly carried over to ISA900/906. Now rocBLAS build/test can finish without any error.
$ ./install.sh -dc -t /Local/Tensile --hip-clang 2>&1 > log_install.txt
$ ./build/release/clients/staging/rocblas-test --gtest_filter=-*known_bug* > log_test.txt

...
[----------] Global test environment tear-down
[==========] 1135586 tests from 491 test cases ran. (21168473 ms total)
[  PASSED  ] 1135586 tests.
rocBLAS version: <IP_ADDRESS>9-44384ac

compiling with hcc has passed. merging


CAMEL-19566 fixed type of metrics for te doc

fixes https://issues.apache.org/jira/browse/CAMEL-19566
Description
PR changes name of the component's url parameter value to the correct value. (to be shown correctly in the doc)
Target

[ ] I checked that the commit is targeting the correct branch (note that Camel 3 uses camel-3.x, whereas Camel 4 uses the main branch)

Tracking

[ ] If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

[ ] I checked that each commit in the pull request has a meaningful subject line and body.

[ ] I have run mvn clean install -DskipTests locally and I have committed all auto-generated changes

I rebased to main (forgot to do that before) and rebuild whole camel to get all generated files.


[FEATURE] Add Python notebook examples for Non accuracy based metrics

Description
Please add notebook examples demonstrating the use of Non accuracy based metrics (diversity, novelty, etc.) in Python
Expected behavior with the suggested feature
Similar to the following PySpark notebook: https://github.com/recommenders-team/recommenders/blob/main/examples/03_evaluate/als_movielens_diversity_metrics.ipynb

The notebook you linked has these metrics:

    metrics = {
        "catalog_coverage":diversity_eval.catalog_coverage(),
        "distributional_coverage":diversity_eval.distributional_coverage(),
        "novelty": diversity_eval.novelty(),
        "diversity": diversity_eval.diversity(),
        "serendipity": diversity_eval.serendipity()
    }

This is an example

I am asking if it possible to add an example notebook for calculating these metrics in Python (the notebook i linked is in PySpark).


(v3) Date adapter options are not updated properly.

Expected Behavior
this.options in the context of a DateAdapter instance should always reflect the most recent value of  chart.options.scales.x.adapters.date (or whichever scale is applicable).
Current Behavior
The initial options are passed to the DateAdapter constructor, and they can be updated once (and only once). Subsequent updates are not propagated. I believe this to be because after the initial render, chart.options.scales.x.adapters.date still references the same object passed to the DateAdapter constructor. After the first update,  chart.options.scales.x.adapters.date is replaced with a new object (as a result of config merging).
Possible Solution
I'm not sure if this is the perfect location for this fix, but I was able to fix it by adding:
// update adapter options
me._adapter.options = options.adapters.date;

to TimeScale.buildTicks at scale.time.js line 671
See this CodePen with the change above implemented.
Happy to submit a PR if this is a valid fix.
Steps to Reproduce (for bugs)

Pass options including adapters.date for a time scale.
Change those options, and update the graph (changes are reflected properly).
Change those options again, and update the graph (changes are not reflected after the first update).

In the example, notice that you can switch the timezone from UTC to LST, but you cannot change it back: CodePen
Context
In working to find a solution to #7340, I came across this issue.
Environment

Chart.js version: 3.0.0-alpha
Browser name and version: 81.0.4044.129
Link to your project: N/A

Yeah, the adapter gets created in the constructor, which only happens once:
https://github.com/chartjs/Chart.js/blob/00f726b0eaeeaad177ded228a00cb4c4e0c9e529/src/scales/scale.time.js#L560
The tricky thing here is the order of operations in core.controller:

build the scales
build the elements, which does parsing using the scales
layout, which calls scale.update

A couple options:

Can we build the elements after updating the layout? Then we could just override update to update the adapter
We could add a new scale.init method which happens in buildOrUpdateScales
Just always throw away the scales and rebuild them when updating. I think it'd be cleaner in some ways and reduce the amount of overall code. But maybe there are plugins that rely on doing some expensive one time setup? It'd be a larger migration effort if we change the way it works and it's probably not the easiest to implement

Thoughts @etimberg @kurkle ?

I sent a PR going the init route since that cleans up some other stuff as well


[gui error report] Error: Initializing daemon...

👉 Please describe what you were doing when this error happened.
Specifications

OS: darwin 21.6.0
IPFS Desktop Version: 0.35.1
Electron Version: 19.1.9
Chrome Version: 102.0.5005.167

Error
Error: Initializing daemon...
Kubo version: 0.28.0
Repo version: 15
System version: amd64/darwin
Golang version: go1.22.2

Error: directory missing SHARDING file: /Users/Saadmac/.ipfs/blocks

    at errorTemplate (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/daemon/migration-prompt.js:78:49)
    at loadWindow (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/daemon/migration-prompt.js:129:26)
    at showMigrationPrompt (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/daemon/migration-prompt.js:134:3)
    at startIpfsWithLogs (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/daemon/daemon.js:193:9)
    at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async startDaemon (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/daemon/daemon.js:216:27)
    at async startIpfs (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/daemon/index.js:49:17)
    at async setupDaemon (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/daemon/index.js:116:3)
    at async Promise.all (index 1)
    at async run (/Applications/IPFS Desktop.app/Contents/Resources/app.asar/src/index.js:68:5)

See https://github.com/ipfs/ipfs-desktop/issues/2037#issuecomment-1074464701


Add eks-anywhere-packages

Build the package controller

/hold
Need tests and repository

/lgtm

/unhold
test passed! Needs a fresh lgtm


Zond 7K-L1 CO2 Scrubber not working

Zond 7K-L1 from RN-SovietSpacecraft CO2 Scrubber not working

Could you give a little more info? What is the name of the part, and why is it not working? Is it missing completely, or not scrubbing enough, or just not activating?

TY for prompt reply.
I'll try to give more info: Part -  Zond 7K-L1 capsule, from Rider Nick SovietSpacecraft mod.
On part management dropout tab scrubber appear to be running. CO2 Tank for the capsule remain at 0 amount. After several orbits crue get increased CO2 poisoning and death
Beforehand on Kerbalism warning Background processes was uninstalled (not shure if it related or no)

I'll need you to perform a few tests, since I can't do them myself at the moment:
First, don't check the CO2 tanks in the resources tab, those are not indicative of the internal composition of the cabin's atmosphere. You should watch for the "co2 level" indicator in the kerbalism "INFO" tab, in the habitat section:

Then, you should test if the CO2 level also rises with less crew (down to 1), and if it rises any slower with the scrubber active rather than off.
Lastly (but you should probably do this first), can you check what type of scrubber the Zond has? In the "Configure life support" button in the editor PAW you should have its name and characteristics. It should be KO2 scrubber, in which case you also need to include KO2, potassium superoxide, in the capsule. A screenshot of that window would be ideal.

Resolved: no potassium superoxide was loaded by default in capsule for KO2, no LiOH for Li scrubber in orbital module and no nitrogen fo pressure control as well. Should be loaded manually, replacing CO2 tanks


Document recommendations for adding diagrams

As discussed in the community meeting, recommendations for adding diagrams to the documentation needs to be documented.
The recommendations are as follows:

Create diagrams using Mermaid  or Excalidraw
If using Excalidraw, make sure to using the "embed scene" option when saving the image. That will allow others to edit the image in the future.

FYI, @moredip

Add to style guide section on the main readme.


add sort-comp transform into compliance with eslint react/sort-comp

Reorders React component methods to match the ESLint react/sort-comp rule, specifically with the tighter constraints of the Airbnb style guide:
 'react/sort-comp': [2, {
   'order': [
     'lifecycle',
     '/^on.+$/',
     '/^(get|set)(?!(InitialState$|DefaultProps$|ChildContext$)).+$/',
     'everything-else',
     '/^render.+$/',
     'render'
   ]
 }],

NOTE: only works on React.createClass() syntax, not ES6 class.

Cool! Would you mind adding a test and making the change for the inline-comment? :)

awesome! Seems good to me. Thanks for the contribution and keep it up! Feel free to join us on #codemod on reactiflux: www.reactiflux.com


Adding parameters to the powershell

Hi Cesar, I made a change to the powershell script just for execute it dynamically, because there are any message indicating the change of the hostname in the file.

@licjapodaca Please, check the documentation at the Wiki: https://github.com/dotnet-architecture/eShopModernizing/wiki/03.-How-to-deploy-your-Windows-Containers-based-app-into-Azure-VMs-(Including-CI-CD)
And update it with another PR so the new parameters are shown in the documentation at the Wiki, as well. ok?
Thanks,


Update the README

aI've been pushing to master for a bit to handle all the lib paths stuff, I've pushed a new tag and an updated to the homebrew reference.
This updates the README to reflect the "actually works now" status, and gives a clue to long-term projects.

OK, that's Danger running again and this bring the repo back all together. Can merge on next green. The warning on the CHANGELOG.


Cannot install Taskcat

I am trying to install Taskcat on my Macbook, but I am getting this error each time I try to run the installation script.
Traceback (most recent call last):
File "/usr/local/bin/taskcat", line 13, in <module>
from taskcat import TaskCat
ImportError: No module named taskcat

The instructions in the readme for installing do not work, and I have had to try and curl the pip3-install-master file manually and run using my python install.

Thank you reporting this!
Do you have python3 on your MacBook?

@jmcguire23  I was able to recreate this issue by setting my default python back to python v2
Installing the module using pip2 should solve the issue are seeing. Please give it a try.
If that indeed fixes this issue I will update the installer.
pip2 install taskcat --no-cache-dir --upgrade
or
pip install taskcat --no-cache-dir --upgrade

Hmm trying this I can see taskcat under my /usr/local/bin directory now, as previously this wouldn't appear, however I am still getting the same error.

what is the output of pip show taskcat

pip show taskcat returns the following:
Name: taskcat
Version: 2017.615.201742
Summary: An OpenSource Cloudformation Deployment Framework
Home-page: https://aws-quickstart.github.io/taskcat/
Author: Tony Vattathil, Santiago Cardenas, Shivansh Singh
Author-email<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>License: Apache License 2.0
Location: /usr/local/lib/python3.6/site-packages
Requires: boto3, pyfiglet, pyyaml, tabulate, yattag

and python --version returns python 2.7.10

Ok, so you should have the module installed now try:
curl https://raw.githubusercontent.com/aws-quickstart/taskcat/master/taskcat_test.py -o taskcat && chmod 755 taskcat
then
./taskcat
If you are still having trouble maybe the docker version would be a better option?
Step 1. Install stable docker version from here:  https://docs.docker.com/docker-for-mac/install/
Step 2.curl -s https://raw.githubusercontent.com/aws-quickstart/taskcat/master/installer/docker-install-master| sudo python -E
Please do let me know that it solves your issues.

Ok, I think installing the docker version is working. I am running into another issue when I run my test I get botocore.exceptions.ClientError: An error occurred (IllegalLocationConstraintException) when calling the CreateBucket operation: The unspecified location constraint is incompatible for the region specific endpoint this request was sent to.

Try setting your default region tous-east-1
If you are using a boto profile set the default to us-east-1
[profile default]
output = json
region = us-east-1

Seems whatever region I put in the config.yml I get an error.
My new error looks like this:
Hint: The name specfied as value of qsname (quickstart-ibm-mq)                     must match the root directory of your project

Change the value of qsname: from ibm-mq-aws-quickstart to the quickstart-ibm-mq (git repo name) The value of qsname has to match the folder name, taskcat looks for this folder in your pwd.
So if you want to kick off the test cd to the directory where you cloned the repo.
from there make sure your the config.yml exists
ls -l quickstart-ibm-mq/ci/config.yml
from the same dir run:
taskcat -c quickstart-ibm-mq/ci/config.yml
I will add a section to the docs page with the errors encountered to provide better guidance and also make a few updates in the next version.

I have updated taskcat and now I get the error which you detail in your FAQ page.
botocore.exceptions.ClientError: An error occurred (IllegalLocationConstraintException) when calling the CreateBucket operation: The unspecified location constraint is incompatible for the region specific endpoint this request was sent to.

Changing the region default in ~/.aws/config to us-east-1 does not resolve this, as you have suggested.

Can you paste the logs here so I can see the debug output?
Cut and paste is fine

Here is the full console output.
[dockerize]
 _            _             _
| |_ __ _ ___| | _____ __ _| |_
| __/ _` / __| |/ / __/ _` | __|
| || (_| \__ \   < (_| (_| | |_
 \__\__,_|___/_|\_\___\__,_|\__|

version 2017.627.23425

[taskcat] :AWS AccountNumber: 	 [299743145002]
[taskcat] :Authenticated via: 	 [role]
[TASKCAT ] :Reading Config form: ./ci/config.yml

[taskcat] :Reading Config form: ./ci/config.yml
[taskcat] |Queing test => quickstart-ibm-mqt1

[taskcat] |CONTENTS OF  S3 BUCKET
[INFO   ] :Staging Bucket => taskcat-ibm-mq-aws-quickstart-1adf0349
Traceback (most recent call last):
  File "/usr/local/bin/taskcat", line 54, in <module>
    main()
  File "/usr/local/bin/taskcat", line 43, in main
    tcat_instance.stage_in_s3(taskcat_cfg)
  File "/usr/lib/python3.5/site-packages/taskcat/taskcat.py", line 310, in stage_in_s3
    s3.create_bucket(Bucket=auto_bucket)
  File "/usr/lib/python3.5/site-packages/boto3/resources/factory.py", line 520, in do_action
    response = action(self, *args, **kwargs)
  File "/usr/lib/python3.5/site-packages/boto3/resources/action.py", line 83, in __call__
    response = getattr(parent.meta.client, operation_name)(**params)
  File "/usr/lib/python3.5/site-packages/botocore/client.py", line 310, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/usr/lib/python3.5/site-packages/botocore/client.py", line 599, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (IllegalLocationConstraintException) when calling the CreateBucket operation: The unspecified location constraint is incompatible for the region specific endpoint this request was sent to.

Ok, I think I know what is going on (please try this so I can narrow it down)
Create a bucket in us-east-1 something like -> taskcat-ibm-mq-stage
then add this key to your config.yml
[global]
s3bucket: taskcat-ibm-mq-stage
One more slight change (during this test)
Make sure to run from outside your repo
cd .. #to change to the folder where your clone resides (assuming that you are in the repo dir from the logs above)
then run:
taskcat -c sample-project/ci/config.yml
cli output will:
change from -> [taskcat] :Reading Config form: ./ci/config.yml
change to -> [taskcat] :Reading Config form: sample-project/ci/config.yml
rerun and let me know if that fixes the issues

@jmcguire23, let me know if you have any further issues.


"Failed to flush" "timed out while waiting for producer to flush"  & "Failed to commit offsets"  error with SSL setup

Hello,
I am trying to setup SSL between :

This connector and MQ (One way SSL.)
This connector and Kafka Server (To begin with One Way SSL)

I have made the necessary changes in the connect-standalone.properties(for worker) and  server.properties(for Kafka Server).  The connector is successfully able to make SSL connections with IBM MQ. The corresponding channel is getting started in SSL mode once we configure the SSL configurations.  The adapter is also able to connect with Kafka (I don't see any errors while starting the connector)
Connector_error.log
To verify the Kafka Server SSL setup , I tested with kafka-console-consumer.sh and kafka-console-producer.sh in SSL mode and it worked fine. I am able to make SSL connections and push/consume messages using  console-producer.sh & kafka-console-consumer.sh.
The issue however comes when I use the connector in SSL mode. When a message is placed to the input queue, its not getting delivered to the Kafka Server Topic. The message remains in Uncommitted state on the queue and I keep getting below entry in the connector log. No such error comes if I start the adapter in SSL disabled mode. The message is successfully delivered to the Topic in SSL disabled mode. Log entry :
[2019-07-16 12:15:22,315] INFO WorkerSourceTask{id=mq-source-0} flushing 1 outstanding messages for offset commit (org.apache.kafka.connect.runtime.WorkerSourceTask:414)
[2019-07-16 12:15:27,316] ERROR WorkerSourceTask{id=mq-source-0} Failed to flush, timed out while waiting for producer to flush outstanding 1 messages (org.apache.kafka.connect.runtime.WorkerSourceTask:419)
[2019-07-16 12:15:27,316] ERROR WorkerSourceTask{id=mq-source-0} Failed to commit offsets (org.apache.kafka.connect.runtime.SourceTaskOffsetCommitter:111)
Below are the SSL configuration details from the connect_standalone.properties and server.properties files
connect-standalone.properties
security.protocol=SSL
ssl.truststore.location=new_connector_ts.jks
ssl.keystore.location=new_connector_ks.jks
ssl.truststore.password=XXXXXXX
ssl.keystore.password=XXXXXXX
ssl.endpoint.identification.algorithm=
server.properties
listeners=PLAINTEXT://<IP_ADDRESS>:9092,SSL://<IP_ADDRESS>:9093
advertised.listeners=PLAINTEXT://<IP_ADDRESS>:9092,SSL://<IP_ADDRESS>:9093
listener.security.protocol.map=SSL:SSL,PLAINTEXT:PLAINTEXT
inter.broker.listener.name=PLAINTEXT
ssl.truststore.location=new_kafka_ts.jks
ssl.truststore.password=XXXXXX
ssl.keystore.location=new_kafka_ks.jks
ssl.keystore.password=XXXXX
ssl.key.password=XXXXX
ssl.client.auth=none
ssl.enabled.protocols=TLSv1.2,TLSv1.1,TLSv1
ssl.keystore.type=JKS
ssl.truststore.type=JKS
ssl.endpoint.identification.algorithm=
Could you please assist. Attaching the connector log. Kindly let me know if any further info is required on this.
Thanks & Regards

I think your configuration for connecting to Kafka is incorrect. You need to duplicate all of the SASL and SSL configuration in the connect-standalone.properties with producer on the front too. So something like:
security.protocol=SSL
ssl.truststore.location=new_connector_ts.jks
ssl.keystore.location=new_connector_ks.jks
ssl.truststore.password=XXXXXXX
ssl.keystore.password=XXXXXXX
ssl.endpoint.identification.algorithm=
producer.security.protocol=SSL
producer.ssl.truststore.location=new_connector_ts.jks
producer.ssl.keystore.location=new_connector_ks.jks
producer.ssl.truststore.password=XXXXXXX
producer.ssl.keystore.password=XXXXXXX
producer.ssl.endpoint.identification.algorithm=

Thanks Andrew.The solution worked for me perfectly.
Regards

Resolving the open issue


Using ActiveRecord enum column in overlap scope option

Hey @robinbortlik, just discovered a possible bug. It occurs, when one of the columns specified in the scope option is an ActiveRecord enum. Value from the model (which is a string/symbol) is not being converted to the corresponding integer, so SQL casts that string into integer, which will always be zero, so validations are invalid. Here is the setup code:
class ObjectParameterValue < ActiveRecord::Base
  enum kind: [:contract, :fact, :draft]

  validates :valid_from, :valid_until, overlap: {
    exclude_edges: ['valid_from', 'valid_until'],
    scope: ['object_parameter_id', 'resource_id', 'resource_type', 'kind']
  }
end

Here is the generated SQL, when kind: :fact
SELECT  1 AS one FROM `object_parameter_values`
WHERE ((object_parameter_values.valid_until IS NULL OR object_parameter_values.valid_until > '2002-11-05')
AND (object_parameter_values.valid_from IS NULL OR object_parameter_values.valid_from < '2003-12-01')
AND object_parameter_values.object_parameter_id  = 1
AND object_parameter_values.resource_id  = 613
AND object_parameter_values.resource_type  = 'Place'
AND object_parameter_values.kind  = 'fact')

In the last line, you can see that condition is object_parameter_values.kind  = 'fact', when it should be object_parameter_values.kind  = 1
There are none configuration options for this, so I suspect this must be a bug either in ActiveRecord itself, or somewhere in this library. What do you think?

Hello @simonasdev ,
first, thanks for nice report. I think you really found a bug. The tricky part is that when you ask enum attribute for value it will return you the value from array and not the value which comes to database.
I will try to look on it. For now you can use a workaround that you will define some getter for kind method which will return you real king value. Something like this
def kind_value
  read_attribute(:kind)
end

and in you validation definition you will change kind to kind_value

Ok,
so I changed the send method to read_attribute if you will now set gem source from github then everything should start work with the validation definition as you had.
Let me please know if it helped

Try to update to 0.5.2 .

I updated the Gemfile and it did start working, thanks a lot. This should be sufficient, since we can always use lambdas to overwrite the default read_attribute. Hopefully it didn't break anyone else's code.

Hi @robinbortlik, This bug fix is not working in Rails 5. read_attribute is returning values of enum after typecast. Only way i found to get the integer value is to use "read_attribute_before_typecast", but this breaks other columns like date.
Currently, I am using the passing the following proc to scope in my model as a workaround. My enum is named day.
:scope => {"day" => proc{|object| object.class.days[object.day] } }
As an aside, I am unable to declare procs when passing an array to the scope.
For instance, this is not working
:scope => ["attr1", attr2: => proc{|obj| obj.some_value}]
This is the workaround i am using to use regular scope along with proc
:scope => {"attr1" => 'false', attr2: => proc{|obj| obj.some_value}}
Is this the expected behaviour? If yes, I think the readme needs to better reflect it. Let me know what you think and i will update the readme.
Code in the gem dealing with arrays and hashes in scope
 def add_attributes(record, attrs)
 if attrs.is_a?(Array)
 attrs.each { |attr| add_attribute(record, attr) }
 elsif attrs.is_a?(Hash)
attrs.each do |attr_name, value|
 add_attribute(record, attr_name, value)
  end
else
 add_attribute(record, attrs)
 end
 end

Hi @tejamedasani I can take a look, but I' pretty busy at this moment, so it will not be earlier then next week or maybe week after. The PRs are always welcome.

Hi @tejamedasani the bug should be fixed by #38 . You can update gem version to 0.8.1 and everything should work.

Thanks Robin.
Teja medasani

On 03-Jan-2017, at 00:10, Robin Bortlík<EMAIL_ADDRESS>wrote:
Closed #26.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Hello, @robinbortlik i'v just found this bug again.
class Lession < ApplicationRecord
  enum day: {
    monday: 0,
    tuesday: 1,
    wednesday: 2,
    thursday: 3,
    friday: 4,
    saturday: 5,
    sunday: 6
  }
  validates :start_at, :end_at, overlap: { exclude_edges: ["starts_at", "ends_at"], scope: [:day]}
end

in that case function is_enum_attribute? will return false, because record.class.defined_enums[attr_name.to_s].present? return false.
But, if use  scope: ['day'] methods above will return true.
Rails 5.1.4
validates_overlap at master@7be2f5e
PR Attached


Fixed ARM UWP Build with Visual Studio 2017

With Visual Studio 2017 build tools/IDE, the current build.ps1 script always throws "error MSB8022: Building Desktop applications for the ARM platform is not supported" every time that cmake tries to generate project files for arm architecture.
Build tools seem to not recognize the "arm" architecture or they are trying to build non-UWP projects because of lower case architecture name (with the same tools and SDK, the build configuration only succed when "arm" is written in upper case).

Thanks, @thunderluca!


[BUG] Select Language Functionality is not working

Description
Under Blog Section Select Language is not working
Screenshots

Please assign this to me under GSSoc

Go for it!!


Adding Navigation bar to the website

I would like to add a navbar to the website. @QAZIMAAZARSHAD Can you please assign me this issue?

@Aiswarika can you elaborate your idea because I don't see what is the use of the navigation bar on this website.
This is just an online demo version of an application form.

I would like to work on this issue !!

I would like to work on this issue !!

@V-Yeshwanth this issue will be dealt in issue number https://github.com/QAZIMAAZARSHAD/Voters-Registration-Portal/issues/20.


nPrint Passive OS Detection Reproducibility - Training/Testing Split

Hi,
Thanks for this great initiative for collecting benchmarks within this field of study.
We have read the documentation on the pcapml project website and if we understand the task correctly, the first 100 packet samples of each device (or IP) is used for testing the classifier, but which packets are used to training the classifier? Are the remaning samples used for training the classifier?
Best regards,
Lukas

The first 100,000 packets for each device are broken up into 1, 10, and 100 packet sequences. Those packet samples are then used for training and testing using a 70/30 or 80/20 split (so around 70,000 packets for training, and 30,000 packets for testing). The dataset linked in the benchmarking repository represents one of the exact scenarios from the original paper.
Hopefully this helps, I am on vacation until July 1 and will be slow to respond.


px4cannode-v1: libuavcan pool should be enlarged

@davids5 Pool size in px4cannode-v1 is insufficient. When the node receives concurrent GetNodeInfo requests, it fails to properly enqueue the responses due to insufficient pool memory available. The issue manifests itself on the bus as outgoing transfers that lack frames in the middle, here's an annotated dump of CAN traffic:
(1436992770.657995)  can0  1E3081FD   [8]  23 0D 00 7B 01 00 00 9B   '#..{....' LAST FILE READ REQUEST
(1436992770.657997)  can0  1E3081FD   [8]  2F 66 73 2F 6D 69 63 3B   '/fs/mic;'
(1436992770.657999)  can0  1E3081FD   [8]  72 6F 73 64 2F 66 77 1B   'rosd/fw.'
(1436992770.658000)  can0  1E3081FD   [8]  2F 63 2F 62 33 34 32 3B   '/c/b342;'
(1436992770.658001)  can0  1E3081FD   [8]  31 63 31 34 2E 62 69 1B   '1c14.bi.'
(1436992770.658002)  can0  1E3081FD   [8]  6E 2E 76 61 6C 69 64 7B   'n.valid{'

(1436992770.668997)  can0  1E307D81   [8]  A4 03 00 00 00 00 00 9B   '........'  FIRST NODE STATUS AFTER UPDATE

(1436992771.223994)  can0  1E01FDE4   [1]  C1                        '.'        GNI REQUEST  100 -> 125
(1436992771.236993)  can0  1E0164FD   [8]  DF 3A 00 00 00 00 00 81   '.:......' GNI RESPONSE 125 -> 100
(1436992771.236995)  can0  1E0164FD   [8]  00 00 00 01 01 7A 80 21   '.....z.!' ...
(1436992771.238006)  can0  1E01FD81   [1]  C1                        '.'        GNI REQUEST  1   -> 125
(1436992771.238009)  can0  1E0164FD   [8]  4B E5 E1 F8 D0 43 BC 01   'K....C..' GNI RESPONSE 125 -> 100
(1436992771.238010)  can0  1E0101FD   [8]  DF 3A 00 00 00 00 00 81   '.:......' GNI RESPONSE 125 -> 1
(1436992771.238011)  can0  1E0101FD   [8]  00 00 00 01 01 7A 80 21   '.....z.!' ...
(1436992771.296997)  can0  1E0101FD   [8]  4B E5 E1 F8 D0 43 BC 01   'K....C..' ...
(1436992771.297000)  can0  1E0101FD   [8]  C6 DF 8E 01 00 06 6C 21   '......l!' ...
(1436992771.297001)  can0  1E0101FD   [8]  FF 54 53 49 89 48 87 01   '.TSI.H..' ...
(1436992771.297996)  can0  1E0101FD   [8]  07 46 22 00 00 00 00 21   '.F"....!' ...
(1436992771.297999)  can0  1E0101FD   [8]  00 6F 72 67 2E 70 69 01   '.org.pi.' ...
(1436992771.298000)  can0  1E0101FD   [8]  78 68 61 77 6B 2E 70 21   'xhawk.p!' ...
(1436992771.298001)  can0  1E0101FD   [8]  78 34 63 61 6E 6E 6F 01   'x4canno.' ...
(1436992771.298002)  can0  1E0101FD   [6]  64 65 2D 76 31 61         'de-v1a'   ...
(1436992771.298004)  can0  1E0164FD   [8]  78 68 61 77 6B 2E 70 21   'xhawk.p!' GNI RESPONSE 125 -> 100
(missing 4 frames)
(1436992771.298997)  can0  1E0164FD   [8]  78 34 63 61 6E 6E 6F 01   'x4canno.' ...
(1436992771.299000)  can0  1E0164FD   [6]  64 65 2D 76 31 61         'de-v1a'   ...

(1436992771.356964)  can0  10040A7D   [8]  B2 2E 00 00 00 00 9A 80   '........'         GNI REQUEST  100 -> 125
(1436992772.224353)  can0  1E0164FD   [8]  40 76 01 00 00 00 00 82<EMAIL_ADDRESS>GNI RESPONSE 125 -> 100
(1436992772.224356)  can0  1E0164FD   [8]  00 00 00 01 01 7A 80 22   '.....z."'
(1436992772.276950)  can0  1E0164FD   [8]  4B E5 E1 F8 D0 43 BC 02   'K....C..'
(1436992772.276953)  can0  10040A7D   [8]  B2 2E 00 00 00 00 9A 89   '........'
(1436992772.386960)  can0  1E0164FD   [8]  C6 DF 8E 01 00 06 6C 22   '......l"'
(1436992772.386963)  can0  10040A7D   [8]  B2 2E 00 00 00 00 9A 8A   '........'
(1436992772.386964)  can0  10040A7D   [8]  42 19 14 00 4E 00 00 2A   'B...N..*'
(1436992772.387964)  can0  10040A7D   [3]  19 00 4A                  '..J'
(1436992772.387965)  can0  1E0164FD   [8]  FF 54 53 49 89 48 87 02   '.TSI.H..'
(1436992772.387966)  can0  1E0164FD   [8]  07 46 22 00 00 00 00 22   '.F"...."'
(1436992772.387967)  can0  1E0164FD   [8]  00 6F 72 67 2E 70 69 02   '.org.pi.'
(1436992772.387968)  can0  1E0164FD   [8]  78 68 61 77 6B 2E 70 22   'xhawk.p"'
(1436992772.388945)  can0  1E0164FD   [8]  78 34 63 61 6E 6E 6F 02   'x4canno.'
(1436992772.388947)  can0  1E0164FD   [6]  64 65 2D 76 31 62         'de-v1b'

Increasing the pool size to 4K fixes the issue:
 Udate:
UAVCAN  getNumFreeBlocks in bytes 3984
              total       used       free    largest
Data:         16000      12600       3400       1808
Prog:        132096     107520      24576      24576
   2 uavcan            532  2044/ 2084 240 (240)  RUN

Also, there's now a better way to monitor pool usage than getNumFreeBlocks() - consider getPeakNumUsedBlocks().

Testing has been performed on uavcan_timing_fix #2567

@pavel-kirienko
What is the minimum it can be?
The purpose of this app it to showcase UAVCAN, to help with adoption.
It does provide the uavcan ESC and Indication (albeit hacked for Hz)
There is no real user code other than the LED driver. The goal is to show there will be adequate Flash and RAM resources available to implement the User functionality.
If all the free ram is used by UAVCAN then adoption will be difficult.
If the maximum Transfer is ~0.5K What should this be?

What is the minimum it can be?

Depends on the application. For this particular case the minimum should be approx:
16 TX frames * 48 bytes per block * 2 = 1536 bytes

Multiplication by 2 is necessary because the library does not allow the TX queue to take more than half of the whole pool.
Since we're talking about a demo app that's better be able to work with the user's logic without any fine-tuning, it makes sense to err towards greater pool size, hence I propose 4K. There's still 3400 bytes left, and note that this is not a bare-bone application - it's running some logic too, which when removed will free some extra memory. I think 4K should be acceptable for a demo.

If all the free ram is used by UAVCAN then adoption will be difficult.

I want to make a point once again that UAVCAN != libuavcan. Hopefully we'll have libcanard soon, which caters specifically for low-end systems.

Ok based on our conversation I set it to 2048 I tested with retriver
 Udate:
UAVCAN  getPeakNumUsedBlocks() in bytes 480
              total       used       free    largest
Data:         16000      10952       5048       3240
Prog:        132096     107520      24576      24576
   2 uavcan         299991  1984/ 2484 240 (240)  RUN


add support for tagged integer type to $class-id-type-choice

Align Class-id to reflect the correct CDDL Schema as per:
https://github.com/ietf-rats/ietf-corim-cddl/blob/main/concise-mid-tag.cddl

This issue is already addressed by:
https://github.com/veraison/corim/commit/64e8c5f1fb17ca7fc3f2a160a317e3745fd228c4#diff-b2f231d4ed8e4cdf65536bdd0501d31adee4e9552f0fc51b7d54da80300be4b7


DynamoDB - error when persisting item with wrong type

Closes #3231
Throws an error when trying to persist an item with the wrong item type, i.e. storing Strings if the table expects Numbers etc.

Codecov Report

Merging #4557 (b15e3e3) into master (669e704) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #4557      +/-   ##
==========================================
+ Coverage   95.15%   95.17%   +0.01%
==========================================
  Files         515      515
  Lines       58490    58590     +100
==========================================
+ Hits        55659    55761     +102
+ Misses       2831     2829       -2

Flag
Coverage Δ

servertests
47.94% <71.42%> (+0.92%)
:arrow_up:

test_responses
32.40% <28.57%> (+0.11%)
:arrow_up:

unittests
95.07% <100.00%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

moto/dynamodb2/exceptions.py
100.00% <100.00%> (ø)

moto/dynamodb2/models/__init__.py
95.91% <100.00%> (+0.01%)
:arrow_up:

moto/core/__init__.py
100.00% <0.00%> (ø)

moto/cloudtrail/models.py
99.34% <0.00%> (+<0.01%)
:arrow_up:

moto/s3/models.py
94.49% <0.00%> (+<0.01%)
:arrow_up:

moto/cloudformation/parsing.py
97.21% <0.00%> (+0.01%)
:arrow_up:

moto/s3/responses.py
95.70% <0.00%> (+0.01%)
:arrow_up:

moto/core/models.py
96.71% <0.00%> (+0.06%)
:arrow_up:

moto/ssm/responses.py
99.17% <0.00%> (+0.09%)
:arrow_up:

moto/__init__.py
98.59% <0.00%> (+0.09%)
:arrow_up:

... and 3 more

Continue to review full report at Codecov.

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


Hot Module Replacement  (HMR) not working correctly, not reflecting   changes in component class file

Environment

CLI: 6.1.2
Cross-platform modules:  6.0.0
NativeScript-Angular: 8.2.1
Angular: 8.2.0
Android
(HMR) not working correctly
in debug/run mode any change in component class code not updating app refresh with file update change detection but not update code. But with --no-hmr its works perfectly fine.

Expected behavior
tns debug android  should work as tns debug android --no-hmr

Having similar issues with IOS, I see hot module file in yellow in console, but entire app restarts but no changes are applied, used --no-hmr flag to get updates right even without hmr. strange

@acharyaks90, @davorpeic,
It'll be really appreciated if you send us the exact steps so we can reproduce the issue on our side. Also we'll need the content of your package.json file as well.

I recently updated from NS 5.4.2
{
  "description": "desc",
  "license": "SEE LICENSE IN <your-license-filename>",
  "readme": "xx",
  "repository": "<fill-your-repository-here>",
  "nativescript": {
    "id": "xxx",
    "tns-android": {
      "version": "6.1.2"
    },
    "tns-ios": {
      "version": "6.1.1"
    }
  },
  "dependencies": {
    "@angular/animations": "~8.2.0",
    "@angular/common": "~8.2.0",
    "@angular/compiler": "~8.2.0",
    "@angular/core": "~8.2.0",
    "@angular/forms": "~8.2.0",
    "@angular/http": "8.0.0-beta.10",
    "@angular/platform-browser": "~8.2.0",
    "@angular/platform-browser-dynamic": "~8.2.0",
    "@angular/router": "~8.2.0",
    "@ngx-translate/core": "^11.0.1",
    "@ngx-translate/http-loader": "^4.0.0",
    "allow-publish": "^1.0.4",
    "angular2-uuid": "^1.1.1",
    "angular5-csv2": "^0.2.6",
    "moment": "^2.24.0",
    "nativescript-angular": "^8.2.1",
    "nativescript-appversion": "^1.4.2",
    "nativescript-checkbox": "^3.0.3",
    "nativescript-email": "^1.5.4",
    "nativescript-feedback": "^1.3.9",
    "nativescript-iqkeyboardmanager": "^1.5.1",
    "nativescript-loading-indicator": "^2.5.2",
    "nativescript-material-icons": "^1.0.3",
    "nativescript-ngx-fonticon": "^4.2.1",
    "nativescript-share-file": "^1.0.6",
    "nativescript-sqlite": "^2.3.3",
    "nativescript-theme-core": "^1.0.6",
    "nativescript-ui-dataform": "^5.1.1",
    "nativescript-ui-listview": "^7.1.0",
    "nativescript-ui-sidedrawer": "^7.0.2",
    "ngx-moment": "^3.4.0",
    "reflect-metadata": "~0.1.13",
    "rxjs": "^6.4.0",
    "tns-core-modules": "^6.1.1",
    "zone.js": "^0.9.1"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^0.803.6",
    "@angular/cli": "8.0.0",
    "@angular/compiler-cli": "~8.2.0",
    "@ngtools/webpack": "~8.2.0",
    "babel-traverse": "6.26.0",
    "babel-types": "6.26.0",
    "babylon": "6.18.0",
    "extract-text-webpack-plugin": "~3.0.2",
    "lazy": "1.0.11",
    "nativescript-dev-webpack": "~1.2.0",
    "nativescript-worker-loader": "^0.9.6-next-2019-07-25-105954-01",
    "node-sass": "4.12.0",
    "ts-loader": "^4.5.0",
    "typescript": "~3.5.3"
  }
}

Can also confirm I am experiencing similar issues. It will say "refreshed application on XXXX" but nothing happens on screen.


[Improve] StreamPark Platform configuration files improvements

Search before asking

[X] I had searched in the feature and found no similar feature requirement.

Description
Currently, the streampark platform provides multiple configuration files for user configuration, such as: application.yml, application-pgsql.yml, application-mysql.yml, kerberos.yml... , We can improve these configuration files. Many config files are internal system configurations, for example, in application.yml, a large number of configurations are internal platform configurations, such as jackson config for integration Spring Boot, swagger-ui config. the 'allow-circular-references' parameter for Spring... These do not need user configuration and should not be exposed to users.
application.yml:

server:
  port: 10000
  undertow:
    buffer-size: 1024
    direct-buffers: true
    threads:
      io: 4
      worker: 20

logging:
  level:
    root: info

knife4j:
  enable: true
  basic:
    # basic authentication, used to access swagger-ui and doc
    enable: false
    username: admin
    password: streampark

springdoc:
  api-docs:
    enabled: true
  swagger-ui:
    path: /swagger-ui.html
  packages-to-scan: org.apache.streampark.console

spring:
  profiles.active: h2 #[h2,pgsql,mysql]
  application.name: StreamPark
  devtools.restart.enabled: false
  mvc.pathmatch.matching-strategy: ant_path_matcher
  servlet:
    multipart:
      enabled: true
      max-file-size: 500MB
      max-request-size: 500MB
  aop.proxy-target-class: true
  messages.encoding: utf-8
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8
    deserialization:
      fail-on-unknown-properties: false
  main:
    allow-circular-references: true
    banner-mode: off
  mvc:
    converters:
      preferred-json-mapper: jackson

management:
  endpoints:
    web:
      exposure:
        include: [ 'health', 'httptrace', 'metrics' ]
  endpoint:
    health:
      enabled: true
      show-details: always
      probes:
        enabled: true
  health:
    ldap:
      enabled: false

streampark:
  proxy:
    # knox process address https://cdpsit02.example.cn:8443/gateway/cdp-proxy/yarn
    yarn-url:
    # lark alert proxy,default https://open.feishu.cn
    lark-url:
  yarn:
      # default simple, or kerberos
    http-auth: simple

  # HADOOP_USER_NAME
  hadoop-user-name: hdfs
  # local workspace, used to store source code and build dir etc.
  workspace:
    local: /opt/streampark_workspace
    remote: hdfs:///streampark   # support hdfs:///streampark/ 、 /streampark 、hdfs://host:ip/streampark/

  # remote docker register namespace for streampark
  docker:
    # instantiating DockerHttpClient
    http-client:
      max-connections: 10000
      connection-timeout-sec: 10000
      response-timeout-sec: 12000
      docker-host: ""

  # flink-k8s tracking configuration
  flink-k8s:
    tracking:
      silent-state-keep-sec: 10
      polling-task-timeout-sec:
        job-status: 120
        cluster-metric: 120
      polling-interval-sec:
        job-status: 2
        cluster-metric: 3
    # If you need to specify an ingress controller, you can use this.
    ingress:
      class: nginx

  # packer garbage resources collection configuration
  packer-gc:
    # maximum retention time for temporary build resources
    max-resource-expired-hours: 120
    # gc task running interval hours
    exec-cron: 0 0 0/6 * * ?

  shiro:
    # token timeout, unit second
    jwtTimeOut: 86400
    # backend authentication-free resources url
    anonUrl: >

ldap:
  # Is ldap enabled? If so, please modify the urls
  enable: false
  ## AD server IP, default port 389
  urls: ldap://<IP_ADDRESS>:389
  ## Login Account
  base-dn: dc=streampark,dc=com
  username: cn=Manager,dc=streampark,dc=com
  password: streampark
  user:
    identity-attribute: uid
    email-attribute: mail

So, I propose that we improve these configurations by providing users with only one configuration file(only one). The configurations in this file should be completely user-focused, clear, and core configurations.
e.g:

# logging level
logging.level.root: info
# server port
server.port: 10000
# The user's login session has a validity period. If it exceeds this time, the user will be automatically logout
# unit: s|m|h|d, s: second, m:minute, h:hour, d: day
server.session.ttl: 2h # unit[s|m|h|d], e.g: 24h, 2d....

# see: https://github.com/undertow-io/undertow/blob/master/core/src/main/java/io/undertow/Undertow.java
server.undertow.direct-buffers: true
server.undertow.buffer-size: 1024
server.undertow.threads.io: 16
server.undertow.threads.worker: 256

# system database, default h2, mysql|pgsql|h2
datasource.dialect: h2 # h2, pgsql
#-------if datasource.dialect is mysql or pgsql, it is necessary to set-------
datasource.username:
datasource.password:
# mysql jdbc url example:
# datasource.url: jdbc:mysql://localhost:3306/streampark?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
# postgresql jdbc url example:
# datasource.url: jdbc:postgresql://localhost:5432/streampark?stringtype=unspecified
datasource.url:
#---------------------------------------------------------------------------------

# Directory for storing locally built project
streampark.workspace.local: /tmp/streampark
# The root hdfs path of the jars, Same as yarn.provided.lib.dirs for flink on yarn-application
# and Same as --jars for spark on yarn
streampark.workspace.remote: hdfs:///streampark/
# hadoop yarn proxy path, e.g: knox process address https://streampark.com:8443/proxy/yarn
streampark.proxy.yarn-url:
# lark proxy address, default https://open.feishu.cn
streampark.proxy.lark-url:
# flink on yarn or spark on yarn, monitoring job status from yarn, it is necessary to set hadoop.http.authentication.type
streampark.yarn.http-auth: simple  # default simple, or kerberos
# flink on yarn or spark on yarn, it is necessary to set
streampark.hadoop-user-name: hdfs
# flink on k8s ingress setting, If an ingress controller is specified in the configuration, the ingress class
#  kubernetes.io/ingress.class must be specified when creating the ingress, since there are often
#  multiple ingress controllers in a production environment.
streampark.flink-k8s.ingress.class: nginx

# sign streampark with ldap.
ldap.enable: false  # ldap enabled
ldap.urls: ldap://<IP_ADDRESS>:389 #AD server IP, default port 389
ldap.base-dn: dc=streampark,dc=com  # Login Account
ldap.username: cn=Manager,dc=streampark,dc=com
ldap.password: streampark
ldap.user.identity-attribute: uid
ldap.user.email-attribute: mail

# flink on yarn or spark on yarn, when the hadoop cluster enable kerberos authentication,
# it is necessary to set up Kerberos authentication related parameters.
security.kerberos.login.enable: false
security.kerberos.login.debug: false
# kerberos principal path
security.kerberos.login.principal:
security.kerberos.login.krb5:
security.kerberos.login.keytab:
security.kerberos.ttl: 2h # unit [s|m|h|d]

Usage Scenario
No response
Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

It seems more convenient.


1.0.0 calls send with a callback

https://github.com/ethereum/web3.js/blob/1.0/packages/web3-core-requestmanager/src/index.js#L129

Why is this not merged? This supports Web3 1.0.0 without breaking backwards compat.

Hi @formula1! Thanks for submitting this, but I'm afraid that it conflicts with some changes I have in the mix for websockets. The good news is, once those changes are merged, you'll have this fixed, as all of our tests will be updated to run against web3 1.0


Very large data issue

Hi
My data to be populated into options is an array with >80,000 objects. It takes like a minute to open the dropdown. The search and scroll is also very slow.
Do we have a way to increase the efficiency to the multiselect for very large data?
Thanks

Have you tried using the Lazy Loading feature described in the Readme?

Lazy loading worked perfectly. Thanks.