MM-T947 When deactivating users in the System Console, email address should not disappear

Summary

Ticket Link

MM-T947 When deactivating users in the System Console, email address should not disappear
Related Pull Requests

Has server changes (please link here)
Has redux changes (please link here)
Has mobile changes (please link here)

Screenshots

Release Note

Hello @M-ZubairAhmed,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.


How works getChatHistory

How works the method getChatHistory ?
How can I use the offset function if I have limit = 50, onlyLocal = false and fromMessageId = chat.lastMessage.Id
I want to get messages from the newest to the oldest using the offset to avoid duplicate messages

You need to specify offset = -51. TDLib currently requires offset + limit > 0 for getChatHistory, so you will usually receive 1 duplicate message.

-51 + 50 does not> 0 anyway, I can not understand why if I make a request with offset = 0 limit = 50 it works, if I do offset = -50 limit = 100 it works but if I do offset = -100 limit = 150 it does not work

Sorry, I've meant offset = -49.
Request with offset = -100 and limit = 150 doesn't work, because limit must be positive and can't be greater than 100.

so how can I get older messages?

You need to adjust from_message_id accordingly on every request.

Ahhh, ok.
Now how can I see how many messages there are in total in the channel?

This number isn't available currently in TDLib.


1.9 Charged Porter cannot re-set targeted receiver

When I set a porter to another receiver, it says target is set to new receiver, but yet the porter description still says the old one, and when used, it still teleport the old receiver.

What version of rftools?

the latest version (for 1.9)

I cannot reproduce this. Exactly how are you doing this? As much details as you can? Also advanced or normal version of the porter?

Advanced was the version I tested.
These are what I did (unsure in what order).
Have 2 receivers

destroyed and re-placed one or both the receivers.
changed names for one or both of the receivers (the ID does not change as I can see from the tooltip when the receiver(s) is in inventory
What happened was I have 1 receiver I named Home (Overworld, id: 5), one receiver I carry with me and named (travel id: 4). Before I leave I set the Advanced porter to target the home receiver (in inventory it says target is set to 4 as expected).
I then went to a nether fortress, I set the travel receiver down near the outside of the fortress, then I used the charged porter to connect to travel receiver (it says connected successfully, and any subsequent attempt messages says porter already connected to 4, even tho its still actually connected to 5(home)). Then I went killing wither skeletons, after a couple of hours, I was loaded and so I used the adv. porter to go back to my travel point (outside the fortress), but then i was immediately teleported back to the home position (5, the receiver i first connected to)
This still happen even after i remove both of the receivers, place both to overworld, and attempted to connect porter to 4 again (it says already connected), but its really still connected to 5 and teleport me to 5.

ok, this is not a bug. the adv. charger can hold multiple destination (this is not documented so only found out after reading this somewhere on the forum, and took sometime to figure out to use shift-click without targeting). Anyhow, closing this.


Missing required module '_AtomicBool'

Description
No response
Steps to Reproduce
Version used: main
Code: import SwiftSyntax

Tracked in Apple’s issue tracker as rdar://126796103

I think it might be a missing dependency declaration on your side because I have never seen this issue before. Could you double-check that you declared a dependency from the target that you’re seeing this issue in to SwiftSyntax (or any other target in the swift-syntax package) as follows
.product(name: "<…>", package: "swift-syntax")

If that’s not the problem, could you share the project that you’re seeing the issue in. If that’s not possible and it’s a SwiftPM project, could you share Package.swift and the name of the target that you are seeing this issue in?


Pattern matching on command line namespaces

Hi,
On larger projects with nested Clojure namespaces being able to have Midje run all tests in a namespace would be a real timesaver:
$ lein midje mypropject.foo.*
$ lein midje myproject.foo.  (meaning the same thing--run all tests in namespaces starting with the string myproject.foo)
Thanks,
Stu

This would be a big boon to us as well.  Particularly as a means of segregating unit tests from functional/integration/high-level tests.

This was contributed recently to lein-midje by, dnaumov .  You can now run all ns's starting with myproject.foo like so: lein midje "myproject.foo.*"

w00t!


Help with trace.getActiveSpan() and startActiveSpan()

Ask for help with trace.getActiveSpan() and startActiveSpan().
I updated the dependencies of examples/worker and switched the config to baselime instead of honeycomb. Able to run locally and get traces and events to appear in baselime. However, I don't see any of the custom attributes set with trace.getActiveSpan()?.setAttribute().
https://github.com/evanderkoogh/otel-cf-workers/blob/6f1c79056776024fd3e816b9e3991527e7217510/examples/worker/src/handler.ts#L17-L29
Adding console.log's and an explicit startActiveSpan() shows that getActiveSpan() seems to return undefined. Also don't know what to make of NonREcordingSpan2 with zeroed traceId and spanId.
const handleRest = async (request: Request, env: Env, ctx: ExecutionContext): Promise<Response> => {
	trace.getActiveSpan()?.setAttribute('http.route', '/*')
	console.log('handleRest: active span: %o', trace.getActiveSpan())

	const tracer = trace.getTracer('my_own_tracer_name')
	tracer.startActiveSpan('name', (span) => {
		span.setAttribute('foo', 'bar')
		console.log('handleRest: start active span: %o', span)
		span.end()
	})

handleRest: active span: undefined
handleRest: start active span: NonRecordingSpan2 {
  _spanContext: {
    traceId: '00000000000000000000000000000000',
    spanId: '0000000000000000',
    traceFlags: 0
  }
}

Would appreciate any guidance on how I can get an actual span from getActiveSpan() and get span within startActiveSpan() to show up in baselime. Thanks.

Duplicate of https://github.com/evanderkoogh/otel-cf-workers/issues/115#issuecomment-2041365703, please make sure your direct opentelemetry dependencies can be satisfied by versions used by the library.

Thanks. That worked for me.


AX - Menu patterns - review roles and interactions

Review current full screen and expandable menu patterns against the latest menu role requirements:
https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/menu_role#example_1_navigation_menu
Also revisit the use of aria-haspopup on the patterns that require it.

Looking into this one a bit more, it seems that the menu role (and menu bar role) are really reserved for application-like menus.  In fact, it is called out that:
When including a "menu" for site navigation, do not use the menu role. Rather, for the main site navigation use the native HTML  element or simply a list of links. The menu role should be reserved for composite widgets requiring focus management.
I think in our case the use of a menu for application-like functions is quite rare, although there may be some situations in bespoke .net solutions where this would be relevant.
Closing this for now, as the nav patterns we have at the moment are acceptable.
cc @mjbp @Nick-StormID @catvine-stormid


Could not obtain flags for: "Setup.hs".

I try to run hie - r . in the root directory of the stack project.I got a mistake：
/home/ggx/Documents/hsProject/Test/app/Main.hs: FAILED
        "cannot satisfy -package-id Test-<IP_ADDRESS>-HK9i1m1pnE35zUxSYHWtx0\n    (use -v for more information)"
/home/ggx/Documents/hsProject/Test/Setup.hs: FAILED
        Fail on initialisation for "/home/ggx/Documents/hsProject/Test/Setup.hs". Could not obtain flags for: "Setup.hs".
/home/ggx/Documents/hsProject/Test/test/Spec.hs: FAILED
        Fail on initialisation for "/home/ggx/Documents/hsProject/Test/test/Spec.hs". Could not obtain flags for: "test/Spec.hs".

I use stack tool version 2.3.1 and GHC version 8.8.3.

Install and use gen-hie to generate a hie.yaml file.  In your project run stack build then gen-hie > hie.yaml(or the windows equivalent of >).
An explicit hie.yaml file should fix everything, except Setup.hs(there is no way to load Setup.hs).

In your project run stack build then

Yes. I am try it.Now there's only one mistake left：
/home/ggx/Documents/stack/Hello/Setup.hs: FAILED
	Fail on initialisation for "/home/ggx/Documents/stack/Hello/Setup.hs". Multi Cradle: No prefixes matched

This is expected nothing can load Setup.hs files.


Filewatcher for config.yaml changes

For any config changes, currently we have to re-load the application.
It would be good to implementation a filewatcher mecanism to catch those changes and reload automatically, i can help with that(If in line with our roadmap).

Hey, we would love to have that. Do raise a PR and tag me once you've started!

Hey, I am new to hactoberfest looking to contribute to my first project. If this is a beginner-friendly issue I would like to contribute with some guidance from your side.


WritableComputed type is lost

Reproduction
https://play.pinia.vuejs.org/#eNqVVctu2kAU/ZUrbwwS2E1ps6BASNpUfUhJlWRT1V0Y+wIT7BlrZmyIEP/e6xnbGBKiFDb23Mc59+EzW+cyy7wiR2fojFQkWaZBoc4zSEK+GAeOVoEzCThLMyE1bCFXeK+FRNjBXIoUXM+PRM41Sk8rN+ABjwRXlMQ4jRv/TjegY3rwZiGnvyLb+4CPfAtKEPSiMc2SUCO9AYxiVkx+i1wSUM60glmoVqiHsN2CTe9Zw5U5h91u5JchdSwUfTanCg5QvQT5Qi9NTUA/A/ItTXvAysIxVfAkcliGBZY4L8USEFGxJ/BFcFdDwlYIeonpxZ4C5Z7lWgsO0yhh0eqYCdXvCklNRpfY3CEVHmGdGNaMgKxZjXybyFZ2UOPkRmhALvLFsg5tUThBoN01L8vVsuPaWLdLTC7juE7VAh75rdk4PcfuQz8NM+9RCU7bsy0Rg8pAS0Nzsm0InIxxFpYngeObZw9V2p9JsVa0No/k3Ktdp7SKfoyFFiJR/TBjNmypdaaGvh/FnPxjTFghPY7a51nqP4uZnnvn3sBP2MwnIJ/xGDeHMBTRjzF9S/badfrOO/vgnb0zaYtBlTU9TvtWvpK+GZZSapFOB95HohszpdvHp5tUxtNhgbIvkWhIlG+FPQprQx+ZnsGX6LuA72j6WtFHPmeLo9lHIs1YgvI204xE4GAHwiQR6x/mTMscm1qiJUarF84f1cbW9EuiYdaqX4dygdqar+9vcEPPjTEVcZ5UYzhhvEMlkrzkaN2uch4T7ZafYfvdrDLjiwd1vdHIVV1USdR0w/ibeXx+pfQ93YE3aHVxr5vUwkZgY5wzfqSx5qMhcW2cJM57ULY71xg3bsTDKDBujJsV4kawx+3UHbdCd3vQ6cJ4YunakANZHZdgnT+1RPTADbMswfJhf1QJ2d/up32Wvc7VRDtVS6gbwwr1QIuKMMlJnlhCvDodY9o7wXhMilkLVTUpuqooE8f119JlSHotaV4nMhOTF+BIwl7HgguoAWBo7RZ+Z6ut74Iaw10ibY8Lvg8P9yBWpY+kK1VyGlybQK9pUbkQdD/+z91JKE81xs9bZ/cPIMmkbA==
Steps to reproduce the bug

check store.ts

Expected behavior
No TS error
Actual behavior
writable computed is coerced to a simple getter
Additional information
This might require some Types refactor

Since yesterday I am not getting any typescript support for store actions and getters. IDE is full of annoying red squiggly lines

I'm having same issue.

confirm issue

This doesn't seem to work when the variable ref is extracted via storeToRefs whereas it was fine before

This bug seems to be solved with the newest pinia version! I am using "vue": "^3.5.9", and "pinia": "^2.2.3",.

This doesn't seem to work when the variable ref is extracted via storeToRefs whereas it was fine before (prior to vue 3.5 I believe), is this expected?

A fix is on the way

Insane speed, kudos to you my man

Works fine but Vue DevTools still coerce WritableComputed to getters


IPython not working after wandb import

Weights and Biases version: 0.10.2
Python version: 3.8.5
Operating System: Linux

Description
After importing wandb, IPython can no longer be embedded. Without import wandb everything works fine.
What I Did
Python 3.8.5 (default, Aug  5 2020, 08:36:46)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import wandb
>>> __import__('IPython').embed()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File ".../conda/envs/ryn/lib/python3.8/site-packages/IPython/__init__.py", line 56, in <module>
from .terminal.embed import embed
File ".../conda/envs/ryn/lib/python3.8/site-packages/IPython/terminal/embed.py", line 16, in <module>
from IPython.terminal.interactiveshell import TerminalInteractiveShell
File ".../conda/envs/ryn/lib/python3.8/site-packages/IPython/terminal/interactiveshell.py", line 21, in <module>
from prompt_toolkit.formatted_text import PygmentsTokens
ModuleNotFoundError: No module named 'prompt_toolkit.formatted_text'

Hi @kantholtz thanks for reporting this. @raubitsj could you please take a look

@kantholtz , thanks for reporting this issue.
Because of a library we are including we use an old version of prompt_toolkit which is vendored at: wandb/vendor/prompt_toolkit/
I am guessing that causing an issue with IPythons preferred prompt_toolkit version.  We will look into a solution to prevent our vendored version from impacting the system library dependancies.

Alright, thank you very much for your quick replies!

Any news on this @raubitsj ? I just wanted to try out wandb but could not due to this issue breaking ipdb.

Latest version of wandb is not working with ipdb for me as well.

Bump - because pdb also uses this old readline and control commands (such as C-a, C-e, C-p, etc.) don't work.

Bump - because pdb also uses this old readline and control commands (such as C-a, C-e, C-p, etc.) don't work.

This issue has been solved in Client Release 0.10.11


Windows Authentication not working?

So I've been trying to get Windows Authentication to work for the past week or so.
I've tried the following:

Add  to web.config
Enable Windows Authentication in IIS
Add site to "Trusted Sites" in browser

However, no matter what I try, I always get presented with the login dialog when I try to access the application. I have found a couple of old threads about the issue but none of them solved my issue. What could I be missing?

I am having this too, looks like the IsAuthenticated checks in thr controllers are looking for a jabbr id claim in the jabbr ide tity type which windows auth never sets

@danda1man Hmm, I'll see if I can find the time to step through and see what it does but I'm a bit pressed for time these days. Unfortunately, it's the only thing stopping me from getting this deployed internally at work.

@graffen I think I figured it out, still going through things to see, but here is the gist:
In Startup.cs, change the handler registration to this:
app.Use(typeof(WindowsPrincipalHandler), kernel.Get<IJabbrRepository>(), kernel.Get<IMembershipService>());

The handler constructor should then look something like this:
public WindowsPrincipalHandler(AppFunc next, IJabbrRepository repo, IMembershipService membership)
{
    _next = next;
    _repo = repo;
    _membership = membership;
}

And then within Invoke, this section changes a bit.  I used mine to do a lookup into AD to grab the users' full name and email address (Also made a tweak the to the user registration repo somewhere to stop it from removing whitespaces from user names):
 // Normalize the claims here
var claims = new List<Claim>();
claims.Add(new Claim(ClaimTypes.NameIdentifier, name));
claims.Add(new Claim(ClaimTypes.AuthenticationMethod, "Windows"));
var identity = new ClaimsIdentity(claims, Constants.JabbRAuthType);

ChatUser user = _repo.GetUserByIdentity("Windows", name);

if (user == null)
{
	using (DirectorySearcher search = new DirectorySearcher(ConfigurationManager.AppSettings["Domain"]))
	using (DirectoryEntry entry = new DirectoryEntry(search.SearchRoot.Path))
	{
		search.Filter = "(sAMAccountName=" + shortName + ")";
		search.PropertiesToLoad.Add("givenName");  //firstname
		search.PropertiesToLoad.Add("sn");  //lastname
		search.PropertiesToLoad.Add("mail");

		SearchResult sr = search.FindOne();

		string email = sr.Properties["mail"] != null && sr.Properties["mail"].Count > 0 ? sr.Properties["mail"][0].ToString() : string.Empty;
		string fullName = sr.Properties["givenName"][0].ToString() + " " + sr.Properties["sn"][0].ToString();

		identity.AddClaim(new Claim(ClaimTypes.Name, fullName));
		identity.AddClaim(new Claim(ClaimTypes.Email, email));
	}

	user = _membership.AddUser(new ClaimsPrincipal(identity));
}
else
{
	identity.AddClaim(new Claim(ClaimTypes.Name, user.Name));
	identity.AddClaim(new Claim(ClaimTypes.Email, user.Identities.FirstOrDefault().Email));
}

identity.AddClaim(new Claim(JabbRClaimTypes.Identifier, user.Id));

context.Authentication.SignIn(identity);

Hope that helps
@davidfowl:  This seems to take care of the windows auth problems, I can try putting together a patch if you would like.  Not sure if there are any conventions you would want followed for thi

@danda1man Wow, thanks! Looks like I'm getting close to having something that works too. In the SetupAuth method, did you have to delete app.Use(type, app, new CookieAuthenticationOptions() { ... }? If I leave that code in there, I still just get redirected to the login form. When I remove that code block, I get a windows auth dialog but I'm not being let in to the app for some reason (I'll dig a little more tomorrow, it might well be an environment setup issue on the server).

Leave it in there.  Havent stepped through to figure out where it is
hitting in there, but it seems like a cookie was getting set.  I'll let you
know later if i figure out why
On May 13, 2015 6:29 AM, "Jesper Hess Nielsen"<EMAIL_ADDRESS>wrote:

@danda1man https://github.com/danda1man Wow, thanks! Looks like I'm
getting close to having something that works too. In the SetupAuth method,
did you have to delete app.Use(type, app, new CookieAuthenticationOptions()
{ ... }? If I leave that code in there, I still just get redirected to the
login form. When I remove that code block, I get a windows auth dialog but
I'm not being let in to the app for some reason (I'll dig a little more
tomorrow, it might well be an environment setup issue on the server).
—
Reply to this email directly or view it on GitHub
https://github.com/JabbR/JabbR/issues/1222#issuecomment-101633271.

@graffen Ok, so after looking in more detail, you can remove the custom auth handler from startup.  You will need to leave the cookie auth pieces since the rest of the app depends on the cookie auth for detecting if the user is logged in.  There is a better way to do this long term if there was a windows auth only version, but for now, you will need to add one more check to the WindowsPrincipalHandler, should look like this now:
if (windowsPrincipal != null && windowsPrincipal.Identity.IsAuthenticated)
{
	//if no cookies set yet to login the user
	if (!context.Request.Cookies.Any(x => x.Key == "jabbr.id"))
	{
		LoginUser(context, windowsPrincipal);
	}

	//Should be ok
	await _next(env);

	//Should hit this if the cookie is stale
	if (context.Response.StatusCode == 401)
	{
		LoginUser(context, windowsPrincipal);
	}

	return;
}

Did you guys get this working?

@davidfowl I did get this working but the solution is not at all generic and quite hacky. I'd argue that the bug is still open ;-)
Based off of @danda1man's suggestions I managed to get it up and running but I did need to tweak the code in different places to get it to support logins from different domains etc.


feat: Visual Feedback and Loading States for AI-Powered Chat

Enhancement: Visual Feedback and Loading States for AI-Powered Chat
Description 📹
The chat interface lacks clear visual feedback for user actions and loading states. Users need better indicators for message sending, processing, and connection status.
Proposed Actions 🛠

Fork and Create Branch:
git checkout -b fix-visual-feedback

Implement Changes:

.message.loading {
  display: flex;
  align-items: center;
  gap: 8px;
}

.loading-dots {
  display: flex;
  gap: 4px;
}

.loading-dots span {
  width: 8px;
  height: 8px;
  background: currentColor;
  border-radius: 50%;
  animation: bounce 1.4s infinite ease-in-out;
}

/* Add different delays for each dot */
.loading-dots span:nth-child(1) {
  animation-delay: -0.32s;
}

.loading-dots span:nth-child(2) {
  animation-delay: -0.16s;
}

/* Add the bounce animation */
@keyframes bounce {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

showLoadingIndicator() {
  const loadingElement = document.createElement("div");
  loadingElement.className = "message loading";
  loadingElement.innerHTML = `
    Thinking

  `;
  document.getElementById("chat-messages").appendChild(loadingElement);
  this.scrollToBottom();
}

You're free to also add any changes that are aligned with this feature request of improving user feedback and global UI.

Run Tests and Commit Changes

Visual tests are enough to ensure this works well. Ask a question and verify the animation is present.
Required 📋
To keep our workflow smooth, please make sure you follow these guidelines:

Assignment: Don't create a pull request if you weren’t assigned to this issue.
Timeframe: Complete the task within 3 business days.
Closing the Issue: In your PR description, close the issue by writing Close #[issue_id].
Review Process:

Once you've submitted your PR, change the label to "ready for review".
If changes are requested, address them and then update the label back to "ready for review" once done.

Testing: Test your PR locally before pushing, and verify that tests and build are working after pushing.

Thank you for your contribution 🙏
⚠ WARNING: Failure to follow the requirements above may result in being added to the OnlyDust blacklist, affecting your ability to receive future rewards.

I’m interested in this one.

@enitrat Can I jump on this

Can I please be assigned to this issue @enitrat


feat: make login more discoverable

Fix #511

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

GitHub release
v6.30.0

Your semantic-release bot :package::rocket:


Add an "Expense Authority" field to the Public Cloud

Describe the issue
As a platform administrator, I want project sets to have a mandatory "Expense Authority" contact field, so that billing emails and cost recovery billing reports can automatically include that contact information.
Rational/Why
This will help automate quarterly billing reports - the current state involves a manual contact retrieval which takes a lot of time and allows for errors - as well as communicate billing information to that contact.
Additional Context
Link to the code repositories
List of technologies that may be expected to be known in order to work on the task
Clear description of where the code change is going, e.g "add the text input to the create request form in components/request.js"
Clearly identify which products are being updated ("Platform Services Registry")
Dependencies
Internal, external, who to talk to if more information is needed
Tests
Definition of done/Acceptance Criteria
When creating a new project set, an "Expense Authority" field must be filled out, similarly to the Product Owner and Technical Lead fields.
That contact can't view nor log into the registry.
That contact is connected to an IDIR.
That contact can't be deleted, only edited (in case the person changed).
Billing emails are NOT sent to that contact (edited to "Not sent).
That field and contact information must be retrievable for automated reporting purposes (Quarterly billing report). Contact info are: First Name, Last Name, Email.

Now the Create page of the Public Cloud has the Expense Authority field. It accepts only the emails which have IDIR.

The field is grayed out if it is in the Active Request. And it is saved in the Product after provisioning.


Update shared and clipboard copy

Closes #387 with a new plug in that does not use flash, Clipboard.js.
It's been on hold for a bit for some ember updates—thanks @rwjblue for the help on getting tests passing on shared: aptible/ember-cli-aptible-shared#64
Got some help from @sandersonet on this too. Thanks. Go team!

Going to go ahead and merge given this has been reviewed, largely removes code, and leverages a tested. Happy to make adjustments if we find anything weird on staging.

:+1:


Express server doesn't run

I follow your instruction step by step everything is ok but express server doesn't run.

Is this in development or production mode?

The steps that worked for me locally (after installation/starting mongod) are:- npm install && bower install && grunt -f (the -f as there are some unit test fails that I cant work out why yet). Then the code is ready for development and production (heroku) mode.


HADOOP-18154. S3A Authentication to support WebIdentity

Description of PR
The PR addresses a requirement to comply with AWS security concept IAM roles for service accounts (IRSA) while operating a service that isn't based on Apache Spark and that runs inside Amazon Elastic Kubernetes Service (EKS).
The code change consists in adding a new credentials provider class org.apache.hadoop.fs.s3a.OIDCTokenCredentialsProvider to the module hadoop-aws.
How was this patch tested?
No new unit-test or integration-test was created on-purpose. The patch was "only" tested based on Hadoop release 2.10.1, as part of our specific use-case based on Delta sharing service v0.4.0 along with the following Hadoop configuration (core-site.xml):
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>fs.s3a.aws.credentials.provider</name>
    <value>org.apache.hadoop.fs.s3a.OIDCTokenCredentialsProvider</value>
  </property>
  <property>
    <name>fs.s3a.jwt.path</name>
    <value>/var/run/secrets/eks.amazonaws.com/serviceaccount/token</value>
  </property>
  <property>
    <name>fs.s3a.assumed.role.arn</name>
    <value>my_iam_role_arn</value>
  </property>
  <property>
    <name>fs.s3a.assumed.role.session.name</name>
    <value>my_iam_session_name</value>
  </property>
  <property>
      <name>fs.s3a.server-side-encryption-algorithm</name>
      <value>SSE-KMS</value>
  </property>
  <property>
      <name>fs.s3a.server-side-encryption.key</name>
      <value>my_kms_key_id</value>
  </property>
</configuration>

For code changes:

[X] The title or this PR starts with the corresponding JIRA issue 'HADOOP-18154'
[ ] Object storage: have the integration tests been executed and the endpoint declared according to the connector-specific documentation?
[X] No new dependency was added to the code.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 56s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
36m 28s

trunk passed

+1 :green_heart:
compile
0m 43s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
0m 36s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
checkstyle
0m 24s

trunk passed

+1 :green_heart:
mvnsite
0m 41s

trunk passed

+1 :green_heart:
javadoc
0m 22s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 30s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m  4s

trunk passed

+1 :green_heart:
shadedclient
23m 54s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 32s

the patch passed

+1 :green_heart:
compile
0m 35s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
0m 35s

the patch passed

+1 :green_heart:
compile
0m 29s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
javac
0m 29s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 18s
/results-checkstyle-hadoop-tools_hadoop-aws.txt
hadoop-tools/hadoop-aws: The patch generated 36 new + 0 unchanged - 0 fixed = 36 total (was 0)

+1 :green_heart:
mvnsite
0m 35s

the patch passed

+1 :green_heart:
javadoc
0m 16s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 23s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m  7s

the patch passed

+1 :green_heart:
shadedclient
23m 11s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
2m 33s

hadoop-aws in the patch passed.

-1 :x:
asflicense
0m 29s
/results-asflicense.txt
The patch generated 1 ASF License warnings.

96m 43s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/4070

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell

uname
Linux 5e56e3e68c47 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / d213b2ce9833bb7e482fbdebc76259713334c70f

Default Java
Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/1/testReport/

Max. process+thread count
521 (vs. ulimit of 5500)

modules
C: hadoop-tools/hadoop-aws U: hadoop-tools/hadoop-aws

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/1/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
1m 29s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
38m  6s

trunk passed

+1 :green_heart:
compile
0m 49s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
0m 41s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
checkstyle
0m 26s

trunk passed

+1 :green_heart:
mvnsite
0m 47s

trunk passed

+1 :green_heart:
javadoc
0m 23s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 32s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m 19s

trunk passed

+1 :green_heart:
shadedclient
24m 12s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 36s

the patch passed

+1 :green_heart:
compile
0m 42s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
0m 42s

the patch passed

+1 :green_heart:
compile
0m 32s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
javac
0m 32s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 19s
/results-checkstyle-hadoop-tools_hadoop-aws.txt
hadoop-tools/hadoop-aws: The patch generated 21 new + 0 unchanged - 0 fixed = 21 total (was 0)

+1 :green_heart:
mvnsite
0m 39s

the patch passed

+1 :green_heart:
javadoc
0m 16s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 27s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m 19s

the patch passed

+1 :green_heart:
shadedclient
23m 22s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
2m 41s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
0m 31s

The patch does not generate ASF License warnings.

100m 34s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/4070

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell

uname
Linux fb302480fe5f 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / f7207421d305b78d47f0b48ab3656b4bede78ac7

Default Java
Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/2/testReport/

Max. process+thread count
525 (vs. ulimit of 5500)

modules
C: hadoop-tools/hadoop-aws U: hadoop-tools/hadoop-aws

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/2/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
1m  3s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
37m 39s

trunk passed

+1 :green_heart:
compile
0m 48s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
0m 39s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
checkstyle
0m 26s

trunk passed

+1 :green_heart:
mvnsite
0m 47s

trunk passed

+1 :green_heart:
javadoc
0m 23s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 33s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m 16s

trunk passed

+1 :green_heart:
shadedclient
24m 12s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 38s

the patch passed

+1 :green_heart:
compile
0m 43s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
0m 43s

the patch passed

+1 :green_heart:
compile
0m 33s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
javac
0m 33s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 19s
/results-checkstyle-hadoop-tools_hadoop-aws.txt
hadoop-tools/hadoop-aws: The patch generated 21 new + 0 unchanged - 0 fixed = 21 total (was 0)

+1 :green_heart:
mvnsite
0m 39s

the patch passed

+1 :green_heart:
javadoc
0m 16s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 26s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m 21s

the patch passed

+1 :green_heart:
shadedclient
23m 46s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
2m 48s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
0m 30s

The patch does not generate ASF License warnings.

100m  7s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/3/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/4070

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell

uname
Linux f4fb3cfaeef7 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / f7207421d305b78d47f0b48ab3656b4bede78ac7

Default Java
Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/3/testReport/

Max. process+thread count
521 (vs. ulimit of 5500)

modules
C: hadoop-tools/hadoop-aws U: hadoop-tools/hadoop-aws

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/3/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 59s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
37m  1s

trunk passed

+1 :green_heart:
compile
0m 43s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
0m 35s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
checkstyle
0m 25s

trunk passed

+1 :green_heart:
mvnsite
0m 43s

trunk passed

+1 :green_heart:
javadoc
0m 23s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 30s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m 18s

trunk passed

+1 :green_heart:
shadedclient
24m 20s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 33s

the patch passed

+1 :green_heart:
compile
0m 38s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
0m 38s

the patch passed

+1 :green_heart:
compile
0m 30s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
javac
0m 30s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 18s
/results-checkstyle-hadoop-tools_hadoop-aws.txt
hadoop-tools/hadoop-aws: The patch generated 21 new + 0 unchanged - 0 fixed = 21 total (was 0)

+1 :green_heart:
mvnsite
0m 34s

the patch passed

+1 :green_heart:
javadoc
0m 16s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 25s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m 11s

the patch passed

+1 :green_heart:
shadedclient
23m 48s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
2m 31s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
0m 30s

The patch does not generate ASF License warnings.

98m 40s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/5/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/4070

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell

uname
Linux 12f0006b81cf 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / e624ea1a7cc9224ac2f23ed69506711b9f52bb88

Default Java
Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/5/testReport/

Max. process+thread count
521 (vs. ulimit of 5500)

modules
C: hadoop-tools/hadoop-aws U: hadoop-tools/hadoop-aws

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/5/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 53s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
36m 59s

trunk passed

+1 :green_heart:
compile
0m 42s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
0m 35s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
checkstyle
0m 24s

trunk passed

+1 :green_heart:
mvnsite
0m 41s

trunk passed

+1 :green_heart:
javadoc
0m 22s

trunk passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 29s

trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m  5s

trunk passed

+1 :green_heart:
shadedclient
23m 18s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 32s

the patch passed

+1 :green_heart:
compile
0m 35s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
0m 35s

the patch passed

+1 :green_heart:
compile
0m 29s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
javac
0m 29s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 17s
/results-checkstyle-hadoop-tools_hadoop-aws.txt
hadoop-tools/hadoop-aws: The patch generated 13 new + 0 unchanged - 0 fixed = 13 total (was 0)

+1 :green_heart:
mvnsite
0m 34s

the patch passed

+1 :green_heart:
javadoc
0m 15s

the patch passed with JDK Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
0m 24s

the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

+1 :green_heart:
spotbugs
1m  6s

the patch passed

+1 :green_heart:
shadedclient
23m 11s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
2m 29s

hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
0m 29s

The patch does not generate ASF License warnings.

96m 34s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/6/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/4070

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell

uname
Linux 7947a5edc92d 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 93773618af72386ae99d37540557715cd46ba160

Default Java
Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.13+8-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/6/testReport/

Max. process+thread count
571 (vs. ulimit of 5500)

modules
C: hadoop-tools/hadoop-aws U: hadoop-tools/hadoop-aws

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4070/6/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

so as well as authing with a webidentidy token, we could use https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html  to get role credentials for up to 12h. which could go into a delegation token.

@mehakmeet

we need this feature, can somebody please help?

Hey @steveloughran. Could you please provide status update on this PR, so you plan to merge it, or it's already outdated?

@jclarysse - I am looking for this same capability - we're deploying trino / hive metastore (on top of Hadoop) in EKS, and of course service account -> iam role mappings do not work as is.
Is this PR merged anyplace where we can build and try out inside of hive metastore?
Thanks.

Trunk is on aws v2 sdk now; it's where features go in. once something is in there a patch for branch-3.3 may be considered; that'd have to be a v1 implementation of the same feature so I'd be reluctant to add it as it would be very different.

Anyone who wants this: please carry on with the PR against hadoop trunk. this may mean restarting from scratch with the v2 sdk -but do reference this PR in the description @jclarysse  deserves credit in the commit comments too


SPI mode must be 1

Hi, i have a problem with using this library. i import opc and usbiss successfully, i even create a spi object as written in documentation, but i have problem with "alpha".
when i write opc.OPCN2(spi), it returns error "assert self.cnxn.mode ==1 "SPI mode must be 1"
i am using python 3.5.3, running OPC-N2 via SPI-USB adapter that was supplied with the device. Trying to run it on Raspberry Pi 3 model B.
Do you have any advice ?:)

Hey @Ny4nmaru, thanks for reaching out. Could you post the exact code you are using to setup the SPI connection? Could you also post the versions of py-opc and pyusbiss that you have installed? You can grab those by issuing the command pip freeze at the terminal.

Hi,, I am the author of pyusbiss library. The library has been suffering from my lack of care with releases. As such the documentation I gave to David about pyusbiss is out of date.
Please give me a few days while I get the library under proper versioning and release a stable version then I will update the documentation. In the meantime try the following code
spi = usbiss.USBISS("/dev/ttyACM0", 'spi', spi_mode = 1, freq = 500000)

Please note that the correct code includes the statement
spi_mode = 1

while the old code is
spi_mode = 2

This change was made to bring pyusbiss in line with the official SPI specification.

Huh. That is strange. Have you had any more issues, or has it been cooperating?

Well, i downloaded both needed libraries again, and i found out, that the "SPI mode must be 1" row is deleted in the fully functional library. nothing else is different. And what is really weird is that i dont remember deleting it. But whatever :D its funny, but without that row its working like a charm. OPC-N2 was with few pauses measuring for 12h, without any problem.

I guess that sometimes science is more art than science

I have been working hard behind the scenes. :). If everything works for you then you can close this issue.
Also I am releasing a minor update soon that changes the interface which will allow more development into other capacities of the USB-SPI adapter.

Hello, I have released a new version of pyusbiss 0.2.0 which you can install via pip install pyusbiss. This version is a major revision and so I have updated the instructions in https://github.com/dhhagan/py-opc/pull/61.


ES6 types not available in property declaration

It would be useful if we could take advantage of ES6 types like Maps & Sets.  I'd like to be able to a declare a property like this:
linkMap: {
                type: Map,
                readonly: true,
                value: [
                    ['pubmed','http://www.ncbi.nlm.nih.gov/pubmed/'],
                    ['gene','http://www.ncbi.nlm.nih.gov/gene/'],
                    ['trial','http://www.clinicaltrials.gov/show/']

                ]
            }

However, when I do that I get an Uncaught TypeError when I try to use linkMap.
polymer-mini.html:2061 Uncaught TypeError: Cannot read property 'get' of undefined
Oddly enough, I can use maps inside of methods, I just can declare them as properties.

For structured data (like objects, arrays and maps) you should instead do a function that returns your value:
linkMap: {
    type: Map,
    readonly: true,
    value: function () {
	    return [
	        ['pubmed','http://www.ncbi.nlm.nih.gov/pubmed/'],
	        ['gene','http://www.ncbi.nlm.nih.gov/gene/'],
	        ['trial','http://www.clinicaltrials.gov/show/']
	    ];
	}
}

The problem with that approach is that it doesn't fit with the model previously established for how Arrays are used.  Map's should be a first-class citizen just as Arrays are.  Wrapping it in a function is counter-intuitive.

Adding ES6 types would be nice but it's really just be a bandaid solution.The real problem is probably the lack of ability to define your own types.
https://github.com/Polymer/polymer/pull/2677

@BLamy: I agree. Adding support for ES6 classes would make a lot of things easier.

it's not counter intuitive in this context. The whole polymer object literal is prototypal so if you don't wrap your structured data in functions all instances of your element would share the same instance of your map (object, array etc). This has nothing to do with Polymer, that's fundamental to javascript.

@noahlaux To me a first class citizen is Array.  You can set it's value with the same type of array declaration that you have in JavaScript. Everything is completely consistent, and therefore intuitive.  To declare a Map should be just as easy as my previous example.
Removing the "readOnly" part of the equation for a minute, the straight map declaration should work.  If something is declared readOnly, then the behind the scenes it should make it a static constant. No extra fiddly bits necessary. :-)

Maybe we are not talking about the same, but in what situation would you do:
linkMap: {
    type: Array,
    value: [
		'http://www.ncbi.nlm.nih.gov/pubmed/',
        'http://www.ncbi.nlm.nih.gov/gene/',
        'http://www.clinicaltrials.gov/show/'
    ]
}

I don't see the use case for that, as I'm most likely to be building a reusable component that has a high chance of being injected multiple times on the page. With this approach it would have unpredictable behavior as my array would be shared among my instances. Maybe you're talking about something else?

@noahlaux The linkMap in this case contains link prefixes.  This makes it easier to specify links without having to remember specific prefixes.
Something like this:
<my-link type="pubmed" id="1234567"></my-link>

Will result in this:
[PMID: 1234567]

A 'computed' url property would take care of the concatenation.
_computeUrl: function(linkMap, type, id){
   var map = new Map(linkMap);
   var url = map.get(type);
   return url + id;
``
assuming that the linkMap was declared as an Array of map entries.

In Java or Groovy, the linkMap would typically be defined as **static** and **final** to insure that only one immutable copy is floating around in memory.  Something similar in a Map declaration (or any other type of declaration) would be useful.

You can initialize the Map in the value property to work with the data-binding system: http://jsbin.com/cucerobuce/edit?html,console,output Polymer poses no limitation of using any arbitrary type as the type and return type of value.

@TimvdLippe although you can do it with a function (as you demonstrate in the jsbin), that wasn't what I was looking for. (see initial request). What I'd like to be able to do is a simple Map declaration as shown in the first comment, and to do Set declarations in a similar manner.
linkSet: {
    type: Set,
    readonly: true,
    value:[
            'http://www.ncbi.nlm.nih.gov/pubmed/',
            'http://www.ncbi.nlm.nih.gov/gene/',
            'trial','http://www.clinicaltrials.gov/show/'
        ];
    }
}

Whatever declaration happens to the right of the colon should be exactly the same as you would if you were just writing a simple declaration.
 const linkSet = new Set([
            'http://www.ncbi.nlm.nih.gov/pubmed/',
            'http://www.ncbi.nlm.nih.gov/gene/',
            'trial','http://www.clinicaltrials.gov/show/'
        ]);

That said, I modified your jsbin and it seems to work properly.  I was able to interrogate the map like this document.querySelector("my-element").map.get('pubmed') and it works.


Proposal: Consolidate all Bicep clients to use one single Bicep installation

Whenever there's a new Bicep version, I'm required to update three distinct Bicep installations on my machine:

Bicep CLI (for PowerShell Bicep support)
Azure Bicep CLI
VSCode Bicep extension

This is very cumbersome, time consuming, error prone, frustrating and a waste of resources.
Please consolidate all clients of Bicep CLI to use only one single, same Bicep implementation. So, updating one of them will update them all.
If appropriate, feel free add a new option to each client to be able to determine a different, distinct Bicep installation path.

We do want to align the Az PowerShell and Az CLI installations so they install to the same location. That is tracked with #3447.
VS Code is actually a different file (a .vsix file), so there is not a way to share an installation the way you describe. In addition, we are worried about the precedent of VS Code managing assets it does not itself need/use.

Thanks for all your efforts, @alex-frankel!
About the VS Code extension: I could see it downloads some .NET 6 library files to a local folder when it's run for the first time.
Isn't it possible for the VS Code extension to also download/contain the Bicep CLI installer and install/update Bicep CLI to the default location?

Hi @SetTrend, the Bicep VS Code extension is not using Bicep CLI. It uses the Bicep Language Server executable instead to support language features like Hover, Go to Definition, etc.

Thanks a bunch for enlightening me, @shenglol!
So, since you're already working on merging all the other tool approaches into using a single Bicep CLI installation, would you want me to close this issue or do you want me to keep it open for later reference? I'll leave it up to you.


basic parts of websocket working

This theoretically does match-making! It accepts commands/messages
sent in the USI format. It can both consume moves and produce state
updates. The default demo showcases the scholar's mate being moved
all at once and then the end state being reflected.
A few things: the producer has a sleep/timer so that one task has
a chance to finish before the other (without locking it into alway
preferring the producer). This is a hacky demo. There's nothing that
forces turns to be taken. It's worth looking at, it's very simple
and includes all the basic components that were initially difficult
to understand.
Hacky demo so far. Not finished.

Aug I made the commit under the wrong person...


Add Procedural Fairings Retexture from SpaceDock

This pull request was automatically generated by SpaceDock on behalf of gilbroth3r, to add Procedural Fairings Retexture to CKAN.
Mod details:
name = /mod/762/Procedural%20Fairings%20Retexture
author = gilbroth3r
abstract = Add new textures to procedural fairings using Stock and Ven´s Revamps style!
license = GPLv3
Homepage =
description = Add new textures to procedural fairings using Stock and Ven´s Revamps style!
Needs Procedural Fairing and Firespitter Plugin to work!
Please direct questions about this pull request to gilbroth3r.

Closing in favour of #4244


Deprecate WavefrontProxyClient

See https://github.com/wavefrontHQ/wavefront-sdk-java/issues/124 for details.

Addressed by #50


Editor - page title size property

Page title size property doesn't seem to do anything
By Julian

is working ok now


[How to guides] Whatsapp section

Could you modify according to the advice I gave in #1098 ? Thank you.

Sure

All changes have been made. Kindly review it @proudofsimin  and @abhishek-iiit

- docusaurus/static/img/docs/howto/IM_platform/deploy-whatsapp.webp
+ docusaurus/static/img/docs/howto/deploy-whatsapp/deploy-whatsapp.webp

All necessary changes have been made. Kindly review it @huan

@vasvi-sood and @abhishek-iiit pls solve the merging conflict, and help yourself in merging the PR


Does not work on Nexus 9

In portrait mode, the blue side bar and 'picture' button aren't visible due to the 4x3 aspect ratio of the Nexus 9.  The blue bar should be semi-transparent like in the native app and overlaid on the camera preview if their bounds overlap.
Tapping 'picture' cause the app to get stuck in the 'STATE_AWAITING_LOCK' state.  I haven't found a way to capture a picture on a Nexus 9 using this sample app.

I was able to get capture working by changing hte lockFocus capture request to use 'mCaptureSession.capture()' rather than 'mCaptureSession.setRepeatingRequest()'  in Camera2BasicFragment.java line 636


ack a delivery on different channel than the one it's received through doesn't return error

In RabbitMQ, delivery tags are scoped per channel. Ack a delivery on different channel than the one it's received through causes precondition_failed  "unknown delivery tag" exception. Although RabbitMQ raises this exception on the server, the return error on the client is nil

It's because channel error notifications are asynchronous in the protocol.


Unique selectors for library styling

Working in a larger codebase, you're likely to have a .flex class already. Libraries like this should user something more unique to ensure that there isn't an unintended inheritance.
I'm partial to [data-*] selectors, but a scoped class like svelte-flex__flex would work.
Ideally, it should be a selector which svelte can mangle into something smaller at compile time.
Taken from this comment.

This is resolved by https://github.com/himynameisdave/svelte-flex/pull/22, since now we just use style directives and no .flex class.


DavidW: Watch mcgrocer.com

DavidW requests the watch of the watch_keyword mcgrocer\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

mcgrocer\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by cocomac in Charcoal HQ


Automatic robot chat mode has been activated

bot error: AssertionError [ERR_ASSERTION]: 400 != 400
at Object.notEqual (/mnt/d/hd/bitai/wechat-bot/node_modules/wechat4u/lib/util/global.js:79:24)
at /mnt/d/hd/bitai/wechat-bot/node_modules/wechat4u/lib/core.js:139:24
at process.processTicksAndRejections (node:internal/process/task_queues:105:5) {
code: 2,
details: 'AssertionError [ERR_ASSERTION]: 400 != 400\n' +
'    at Object.notEqual (/mnt/d/hd/bitai/wechat-bot/node_modules/wechat4u/lib/util/global.js:79:24)\n' +
'    at /mnt/d/hd/bitai/wechat-bot/node_modules/wechat4u/lib/core.js:139:24\n' +
'    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)'
}

Hello, we tried to solve the issue.
This is what we did:
Updated the error handling in the bot.on('error') event to specifically catch and handle the AssertionError. Added a retry mechanism for bot startup and improved logging for better debugging.
You can review changes in this commit: https://github.com/kkpo4553/wangrongding-wechat-bot-241/commit/bef54a0a79225aacef28ae9af2730667fb65b8ba.

[!CAUTION]
Disclaimer: The concept of solution was created by AI and you should never copy paste this code before you check the correctness of generated code. Solution might not be complete, you should use this code as an inspiration only.

If you no longer want Latta AI to attempt solving issues on your repository, you can block this account.


rip --auto-ripenv and rip-find-package

Branch
In a multi-ripenv workflow I've found it handy to have package-centered commands work automatically regardless of the current ripenv. This option does that by finding the package's correct ripenv and setting it. I realize --ripenv exists but this is less typing and would make it easier to use rip's packages in a simpler, global manner.
Examples of commands that would benefit from this:
$ rip -a uninstall ronn
$ rip -a info ronn
$ rip -a readme ronn

# Plugins
$ rip -a open ronn
# From http://github.com/cldwalker/rip-licious
$ rip -a test ronn
$ rip -a git log ronn

Notice I've also added rip-find-package which completes the TODO in rip-uninstall. I can refactor that part and add tests as needed.


Exclude non-supported tests on mr_canhubk3 board

samples/subsys/tracing: the amount of data printed on this test prevents to initialize the on-board watchdog within the expected window, causing a board reset.
tests/kernel/usage/thread_runtime_stats: test_all_stats_usage assumes the CPU was never idle before the test starts but this is not the case for mr_canhubk3 because the off-chip watchdog driver has a thread kicked off during device init that will conflict with the expected usage stats on this test.

Given those explanations, wouldn't it make more sense to disable the watchdog for these tests instead? Seems like you expect the board to pass them except for the interaction with that one device.

Thanks for the feedback. I will close this and come back with an update to the board configuration to disable the conflictive device driver since it's also affecting other tests, and it seems a more reasonable approach.


Django 1.8 throws AttributeError at /admin/zinnia/entry/add/  'str' object has no attribute '_meta'

I'm getting an error when I try to add a new entry in a fresh installation. I have no idea where to even start with this.
Here is the traceback:
Environment:

Request Method: GET
Request URL: http://url.org/admin/zinnia/entry/add/

Django Version: 1.8
Python Version: 2.7.6
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.sites',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django.contrib.contenttypes',
 'django_comments',
 'mptt',
 'tagging',
 'zinnia_bootstrap',
 'zinnia')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware')

Template error:
In template /path/to/.virtualenvs/df/local/lib/python2.7/site-packages/django/contrib/admin/templates/admin/includes/fieldset.html, error at line 19

   'str' object has no attribute '_meta'

   9 :             {% for field in line %}
   10 :

   11 :                     {% if not line.fields|length_is:'1' and not field.is_readonly %}{{ field.errors }}{% endif %}
   12 :                     {% if field.is_checkbox %}
   13 :                         {{ field.field }}{{ field.label_tag }}
   14 :                     {% else %}
   15 :                         {{ field.label_tag }}
   16 :                         {% if field.is_readonly %}
   17 :
{{ field.contents }}

   18 :                         {% else %}
   19 :                              {{ field.field }}
   20 :                         {% endif %}
   21 :                     {% endif %}
   22 :                     {% if field.field.help_text %}
   23 :
{{ field.field.help_text|safe }}

   24 :                     {% endif %}
   25 :

   26 :             {% endfor %}
   27 :

   28 :     {% endfor %}
   29 : </fieldset>

Here's the rest of the error:
`
/path/to/.virtualenvs/df/local/lib/python2.7/site-packages/django/contrib/admin/widgets.py in render
rel_opts = self.rel.to._meta
...
▼ Local vars
Variable 	Value
name	'categories'
self 	<django.contrib.admin.widgets.RelatedFieldWidgetWrapper object at 0xf5b5892c>
args 	()
IS_POPUP_VAR 	'_popup'
value  None
kwargs 	{'attrs': {u'id': u'id_categories'}}
TO_FIELD_VAR  '_to_field'

Variable 	Value
name 	'categories'
self 	<django.contrib.admin.widgets.RelatedFieldWidgetWrapper object at 0xf5b5892c>
args 	()
IS_POPUP_VAR 	'_popup'
value 	None
kwargs 	{'attrs': {u'id': u'id_categories'}}
TO_FIELD_VAR 	'_to_field'

'''
django.contrib.admin.widgets.RelatedFieldWidgetWrapper object at 0xf5b5892c
'''

Sure enough, commenting out lines 72 and 73 in zinnia/admin/forms.py allows the page to render. So we know where the error starts.
55 class EntryAdminForm(forms.ModelForm):
 56     """
 57     Form for Entry's Admin.
 58     """
 59     categories = MPTTModelMultipleChoiceField(
 60         label=_('Categories'), required=False,
 61         queryset=Category.objects.all(),
 62         widget=MPTTFilteredSelectMultiple(_('categories'), False,
 63                                           attrs={'rows': '10'}))
 64
 65     tags = TagField(
 66         label=_('Tags'), required=False,
 67         widget=TagAutoComplete())
 68
 69     def __init__(self, *args, **kwargs):
 70         super(EntryAdminForm, self).__init__(*args, **kwargs)
 71         rel = ManyToManyRel(Category, 'id')
 72         #self.fields['categories'].widget = RelatedFieldWidgetWrapper(
 73          #   self.fields['categories'].widget, rel, self.admin_site)
 74

Does this mean that the underlying MPTTFilteredSelectMultiple widget is returning the object as a str instead of as a model?

Hello, I experienced the same issue with Django 1.8 and Zinnia fresh install.
After delete lines 72-73 the problem doesn't appear anymore.
@Fantomas42
Can you valid this modification doesn't break anything ?

FWIW, I don't think this is a good solution. Those lines of code are useful for representing the categories as trees (because categories can have parents) in the interface.
I merely showed it to be true to help with the debugging process - it was as far as I got before I was out of my depth. I  was reporting back to make @Fantomas42 's job easier :)
So, yes the solution works, but I don't think it is a good solution, just a functional one in the short term.

@datakid: Ok, Thanks for your analysis.

NP, thanks for your work!

I'm treading carefully
but it's the time of night
the snowy light
the subway roar
and the whispered fights
exciting sights
but it's not enough
I thought it was
I wish it was
I thought it was
You name it - The Cannanes with Explosion Robinson.
On 24 April 2015 at 09:03, ZuluPro<EMAIL_ADDRESS>wrote:

@datakid https://github.com/datakid: Ok, Thanks for your analysis.
—
Reply to this email directly or view it on GitHub
https://github.com/Fantomas42/django-blog-zinnia/issues/411#issuecomment-95741430
.

@datakid effectively it works with your correction, but we cannot add categories anymore directly from the entry page.
A correction is planned, but it's not really easy.

A WIP patch, which has the advantage for being compatible for Django 1.7 and 1.8
diff --git i/zinnia/admin/forms.py w/zinnia/admin/forms.py
index 86c2985..5ef202c 100644
--- i/zinnia/admin/forms.py
+++ w/zinnia/admin/forms.py
@@ -63,7 +63,7 @@ class EntryAdminForm(forms.ModelForm):

     def __init__(self, *args, **kwargs):
         super(EntryAdminForm, self).__init__(*args, **kwargs)
-        rel = ManyToManyRel(Category, 'id')
+        rel = Entry.categories.field.rel
         self.fields['categories'].widget = RelatedFieldWidgetWrapper(
             self.fields['categories'].widget, rel, self.admin_site)

What is WIP?

Work In Progress :hourglass:


Port names in @relation macro

This PR extends the @relation macro with optional support for named ports. See the docstring and the unit tests for more info.
@bosonbaas, I hope this will be helpful for querying SQL databases. My own intended use case is conjunctive queries of ACSets (not yet implemented!).

Thanks, I'll take a look at this PR!


Add missing documentation

Add documentation for __dangerous__body_down_if_text_missing and __dangerous__body_degraded_if_text_missing features.

Thanks!

@AnandChowdhary there seems to be a problem with the deployment, it's trying to initialize an empty repository:
https://github.com/upptime/upptime.js.org/actions/runs/2514684500


Fix Cannot read property 'disposeGeometry' of undefined (#5929)

Description of change
Loop through runner items backwards, in case one of the items removes itself from the array.
https://www.pixiplayground.com/#/edit/yjTOm9m7zJN0XMYWMVTCv
Pre-Merge Checklist

[x] Lint process passed (npm run lint)
[ ] Tests passed (npm run test)

Note
Just realizing that I unfortunately cannot run npm run test due to a separate issue which happens from a clean install on my machine with the latest master.

Codecov Report

Merging #5930 into dev will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##              dev    #5930      +/-   ##
==========================================
+ Coverage   70.39%   70.39%   +<.01%
==========================================
  Files         208      208
  Lines       10494    10495       +1
==========================================
+ Hits         7387     7388       +1
  Misses       3107     3107

Impacted Files
Coverage Δ

packages/runner/src/Runner.js
100% <100%> (ø)
:arrow_up:

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 05c5e0e...de047a5. Read the comment docs.

Please make an example for disposeGeometry, thats my method and k thought i've taken into account that thing

Did you achieve that with two renderers?

Oh, right, here it is:
https://github.com/pixijs/pixi.js/blob/dev/packages/core/src/geometry/Geometry.js#L277
https://github.com/pixijs/pixi.js/blob/dev/packages/core/src/geometry/GeometrySystem.js#L464
Runners dont have , maybe mini-signals will be better in that case.
@GoodBoyDigital
@englercj

Demo: https://www.pixiplayground.com/#/edit/0fUXKi8LVTJBLB5JOC~JB

Did you achieve that with two renderers?

Yup, exactly.

My idea is either we add option to reverse ticker order, either we use signal.

My only concern with reverse order is how it might affect things... that's to say, is anything expecting things to be fired in a certain way?
A third option might be to clone the const items = [...ref.items] before looping through it. But that might create necessary garbage?

We need unit test coverage to reflect this change.

Hello! Figured it might actually be quite handy to be able to remove something mid run. This situation is a great example of that!
https://github.com/pixijs/pixi.js/pull/5972

Closing this in favor of #5972 or #5975


Need help with 'Good Old Times'

Okay, I am so utterly confused! I'm trying very hard to figure this lesson out and I felt like I haven't learned anything except how to put parentheses in 'print'. Here is what I am having trouble with:

How do you filter the characters in Part 1?
It says to read the input file. What input file?
Another instruction says to find 25 frequency words in Part 2. What 25 frequency words?
How do you load the list of stop words?
How do you loop over the secondary memory file?
When I ran the lesson in my Python program, the message said that the stop_words.txt is not found. How do I fix this?

Is it a different file from the one on the root of the git respository?
https://github.com/crista/exercises-in-programming-style/blob/master/stop_words.txt

The input file is in the root folder:
https://github.com/crista/exercises-in-programming-style/blob/master/pride-and-prejudice.txt
So is the stopwords file, as pointed out by @gvlx


question: recommended approach to working with large datasets and multiple queries

Hi,
I'm new to akita and state management libraries in general. I'm currently investigating how to add state management to an existing Angular application. My application is a spare time project that is used to manage a list of starts for a gliding club.
Currently, my app gets data from a backend api (asp.net core + SQL Server) that has all kinds of different queries, for example "get all starts for a specific year", "get starts by pilot", "get starts by plane", "get all starts for the current user" and so on. A user can also add new starts and modify / delete starts.
I don't want to download unnecessary starts to the client to avoid large downloads of data that is never needed, so loading all starts for all years/pilots/planes etc. in advance is not an option, I need to download only the minimum required data.
So basically, I have several "query starts by X". If the app already has the results for "query by X", then I would return the version from the akita store, otherwise I would query the server.
As far as I understand akita so far, I will need to duplicate all the queries I already have in my API on the server as akita queries on the client. Is that correct, or is there a better approach that would not require duplication of all my queries? Having to maintain the same queries in two different places that even don't use the same programming language (it's an SQL ... FOR JSON query on the server) might make maintaining the app much more difficult in the long run.
What's the recommended approach for such a scenario?
Thanks,
Mathias

Hey, @oocx I would love to help. First, if you can add a simple demo of the API response, it would be great. Second, please join Akita's Gitter room so we can continue the discussion there. Thanks.


upgrade avatica to 1.12.0

Calcite 1.17.0 uses avatica-1.12.0, however current druid uses avatica-1.10.0. This PR upgrades avatica to 1.12.0 to make it compatile with calcite version and for future sql development.
Avatica-server-1.12.0 uses lower jetty-http version and needs to exclude it to avoid conflict.

Since the avatica version was changed, the LICENSE.BINARY file should have updated in this PR accordingly. This will be automatically checked after #7998.


[Android] Adding 50+ markers dramatically drops JS and UI FPS when panning

I have Android Galaxy S6 running Android 6.0.1
I have about 50 default markers on the map.
However, when I pan around the map, it causes FPS to drop to 10~20 fps for both JS and UI.
I don't have this problem on iOS, having even 500 markers is fine.
On iOS, drop in JS fps does not cause drop in UI fps, but it looks like it does on Android.
Using Circle instead of Marker fixes this issue but I want to use Marker for custom look.
package.json

"react": "15.4.2",
    "react-native": "0.41.2",
    "react-native-maps": "^0.13.0",
    "react-redux": "^5.0.2",
    "redux": "^3.6.0",

Is it release or debug build? Debug seems to suffer a lot when there's a lot of markers but Release build on Nexus 5x works even with hundreds of markers.

Have the same issue, it differs quite a lot between devices.
OnePlus Two and Nexus 5X lags very much for us. Nexus 4 works better.

Have you bound your mapregion to the consuming react component's state? If so, is the consuming component's render function called a lot when you pan the map?
I've experienced such issues where binding the map region to state would cause re-renders that would oversatisfy the RCTBridge

I would recommend use clustering (see #213 react-native-super-cluster) and not to control your region in state as here: https://github.com/react-community/react-native-maps/issues/209#issuecomment-350907665
Let me know if it persists after these changes.


Auto-start on reboot

An auto-start toggle would be nice. My server reboots every night, so having an option to auto-start on reboot would be very nice. Also, is there a way that I can force a save just before the restart? (I'm running ubuntu server with a win10 vm).

Heyy @jordandalby no problem, use this skpt to create a startup job, so you use the same skirpt as for updating
# Set the path to the file to be executed
$psScriptPath = "$env:APPDATA\ARK-Ascended-Server-Manager\AutoUpdateJob.ps1"

# Set the task name
$taskName = "MeinCustomTask"

# Create the trigger for "at startup"
$trigger = New-ScheduledTaskTrigger -AtStartup

# Create the action to run PowerShell with the script path as an argument
$action = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument "-ExecutionPolicy Bypass -File `"$psScriptPath`""

# Register the task in the Task Scheduler
Register-ScheduledTask -TaskName $taskName -Trigger $trigger -Action $action -RunLevel Highest -User "SYSTEM"

where would i add this at, mines reboots also


Default AWS Region to "us-east-1" when creating AmazonOrganizationClient without specifying region

Describe the feature
According to the documentation for the AWS SDK for .NET (found here: https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Organizations/NOrganizations.html), when you create an AmazonOrganizationsClient object you must specify the region of us-east-1 (or cn-northwest-1 if inside China). When no region is provided in the constructor an Exception is thrown (Inner Exception 1: AmazonClientException: No RegionEndpoint or ServiceURL configured).
Since the expected region is "us-east-1", wouldn't it make sense to default the AWS Region if no region is specified in the constructor?
Use Case
I need to use AmazonOrganizationsClient but being forced to include the "us-east-1" region every time I create the object is not needed when a sensible default exists.
Proposed Solution
Update the AmazonOrganizationsClient constructors and don't take a region as a parameter to default the region to "us-east-1" instead of throwing an Exception.
Other Information
No response
Acknowledgements

[ ] I may be able to implement this feature request
[ ] This feature might incur a breaking change

AWS .NET SDK and/or Package version used
AWSSDK.Organizations <IP_ADDRESS>
Targeted .NET Platform
.NET 6
Operating System and version
Windows 10

@pbrinson Thanks for submitting the feature request. Just to mention here that the SDK logic for Organizations service is autogenerated by service models. Without going into implementation details, I'm unsure how this would be implemented.
AWS Organizations API Reference and the above documentation both specify that For the current release of Organizations, specify the us-east-1 region for all Amazon Web Services API and CLI calls made from the commercial Amazon Web Services Regions outside of China.. However, I'm still not sure if we should default region to us-east-1 in case this is not true for future releases (not sure if service model has some attribute that dictates the default region).
This needs review with the team.

Implementing this feature would require a breaking change. As such, we would consider implementing this in the next major version of the .NET SDK.

Newer versions of the SDK (after 3.7.100) use a different logic for constructing endpoints, and I don't see this exception anymore in the latest version of the AWSSDK.Organizations package (3.7.300.53 as of today). This snippet works for me even though my default region is not us-east-1:
[default]
region = us-west-2
output = json

using Amazon.Organizations;
using Amazon.Organizations.Model;

var organizations = new AmazonOrganizationsClient();
var response = await organizations.ListAccountsAsync(new ListAccountsRequest());
Console.WriteLine(response.HttpStatusCode); // Outputs OK

If you still see the problem after updating the service package, please let us know.


Why not use Lazy or Func

MyController(Func<MyDbContext> factory)

MyController(Func factory)

Hi @scott-xu
Thanks for your question. There are few problems with Lazy initialization in multi-thread scenarios, the first one is by default Lazy uses locks to ensure that only a single thread can initialize a Lazy<T> instance in a thread-safe manner, by the other hand if you specify PublicationOnly option, it creates a copy of the lazily initialized object on each thread so all threads use the same instance of the lazily initialized object, therefore this is a problem because you're sharing the DbContext instance. In the end, any of the Lazy options work with DbContext in multi-thread scenarios. Actually, there is a warning with Lazy:

Making the Lazy object thread safe does not protect the lazily initialized object. If multiple threads can access the lazily initialized object, you must make its properties and methods safe for multithreaded access.

Regarding the Func approach, that's actually what the EF.DbContextFactory does behind the scenes, it encapsulates itself the responsibility for the DbContext creation and also manages the way to resolve a factory with different DI frameworks, such as Ninject, Structuremap, Unity, etc each has their own way to inject a factory.
I hope the answer will be helpful.

Why I need DbContextFactory? I think Func<MyDbContext> is enough. I just need to tell my DI container how to resolve Func<> and MyDbContext.

Using Func<MyDbContext> is more generic than your DbContextFactory. Consider aboutb another short lived disposable object.

Of course, you can do it over and over again, but reuse the code is not just copy and paste, the idea is to take advantage of the nuget package to effectively reuse code. EF.DbContextFactory solves a especific problem in a generic and easily way, in the end it's up to you if you want to copy and paste the same solution over the projects or solutions or just download a package and that's it... that's the idea with packages.

Ok, I see. You are providing extension methods to tell DI container how to resolve Func<TDbContect>. However, I think some DI container already knows how to resolve generic Func<>. Also you are not using DI container to resolve TDbContext.

Let’s take Ninject for example, with Ninject.Extendion.Factory, you don’t need to Bind Func<TDbContect>, and if you are using TDbContext with parameterless constructor, you don’t need to Bind TDbContext as well.

Yes you're right, actually I made a test with that extension for Ninject, that's cool, but my point is the same, the idea is to create a generic and easy way for multiple DI containers and everyone has its own way to deal with factories...also I don't remember if with Ninject's Factory extension resolve the connection string when there are multiples in the web.config or with another name that is not the default one.

If you need to specify the connection string when construct the TDbContext, there’s no difference with other service registration with dependencies.
For example, Bind YourDbContext ToSelf with constructor argument YourConnectionString

Cool and thanks for the discussion, I got your point and I hope you got mine with this project, it tries to provide a generic and easy way to deal with factories of DbContext for multiple DI containers, that's the propose. Thanks for taking some time and review it.


Separate filters context, actions, reducers, and state from data

It'd be better not to keep the filters in the global store (i.e. DataStateContext.Provider in app.tsx). This allows us to use the filters data handlers in different components without their states being shared.
After creating the new objects, the mount point for the new FiltersStateContext.Provider (or whatever we name it) should go in Explore/index.tsx.

Resolved in #42


Add Inheritance polymormic parser

Add a new provider that can extract all children of the base class (maybe add a decorator that can track inheritance) and return parser for union of this types. Integrate this feature with #186

There is no need for the decorator, all descendants could be collected via .__subclasses__()


NetMan: Only update known validators on block externalized

Currently we allocate an associative array every time we call discover,
even if nothing has changed, and we call discover quite often.

This is part of #2984 but the other commit fails, however this one should have the most impact on memory usage.

We should probably just store a Ledger in the NetworkManager in the end...

Previous commit was making TimeDrift fail, this one makes NetworkDiscovery fail :)

Done in https://github.com/bosagora/agora/pull/3080


COMP: Move #include "itkOpenCLContext.h" from elxElastixMain.h to elxElastixMain.cxx and elxTransformixMain.cxx

Moved the #include "itkOpenCLContext.h" from elxElastixMain.h to elxElastixMain.cxx and elxTransformixMain.cxx, hoping to ease fixing the error:

/work/_skbuild/linux-x86_64-3.5/cmake-build/_deps/elx-src/Core/Kernel/elxElastixMain.h:33:10: fatal error: 'itkOpenCLContext.h' file not found

at https://github.com/InsightSoftwareConsortium/ITKElastix/pull/58/checks?check_run_id=1096122268#step:4:2894
(Pull request https://github.com/InsightSoftwareConsortium/ITKElastix/pull/58 "ENH: Switch to latest version of SuperElastix/elastix (using ITK 5.1.1)")

@dpshamonin Denis, for your information, it seems nicer to move the #include "itkOpenCLContext.h" from elxElastixMain.h to those two CXX files.


How can I use mediapipe FACEMESH tflite model in a flutter applicaiton?

I tried running the mediapipe facemesh tflite model inside a jupyter notebook and I'm getting very weird results. For now I'm plotting only x and y.
Best,
Zelin

@PeterTF656
Couldn't find anything related to it bro  : /

You can refer this code for flutter. But need to change in facemesh solution.

Thanks @sgowroji
I'll try the code and reopen the issue if I get struck somewhere.

@AryanSethi Let's keep in touch as I am also trying to implement this model into flutter. Also, I found out that google ARCORE has facemesh included in argumented face, but that's a whole new story

@PeterTF656 sure thing !!
I'll get back to you if I find anything and you do the same. 😄

@AryanSethi I just found out a repo that implement arcore as a package for both ios and android platform. I'm thinking maybe we can use the argumented face for the face mesh function. I tested both tflite facemesh model and argumented face, and clearly, argumented face is better in almost every aspect, especially in performance.

Heyyy !!
Thanks for the information @PeterTF656
I'll checkout this repo too. 😄

@AryanSethi
I hope this helps :)
https://github.com/JaeHeee/FlutterWithMediaPipe

@JaeHeee my goodness, route to heaven.
Thanks alot !!

Hello everyone, I am trying to develop an app with flutter that applies face filters and wanted to use the face mesh from mediapipe, any ideas on how can I do so? really appreciate your help

@AmrAbdelghany @prakashsrv you can use this
https://github.com/JaeHeee/FlutterWithMediaPipe

@AryanSethi,
We will be supporting the flutter soon and work is in our roadmap. For now, We are towards available the support Asap possible from our end. Thank you


Chromely opens multiple windows of the main processes

I'm developing a desktop app using WinUI and I'm trying to implement Chromely as a Class Library instead of a Console/Window Application as in the Demos. I can successfully run the Chromely WebView, but as soon as it starts it opens other 4 new windows of the main process that has called Chromely (so 4 windows of my original app) along the one of the Chromely browser (which remains frozen and doesn't load any page). I can't find out why it has such behaviour.
Any suggestions?

@vadd98
CEF is multi-process, and you will require sub-processes to fix that. Chromely depends on CefGlue and CefGlue does not implement sub-process, we used to support sub-process but not anymore.
I will suggest 2 options

Create a sub-process and assign it.

 config.CustomSettings[CefSettingKeys.BROWSERSUBPROCESSPATH] = "path to subprocess";

Use Chromely CefSharp - CefSharp implements subprocess.

Thanks for your answer. I have one question: Chromely CefSharp supports cross-platform development or does it work just for Windows? I was using the CefGlue based version exactly for this reason because I'm developing an app that will run on both Windows and Mac

Chromely CefSharp is only supported on Windows .

So I think I am forced to stay on Ceflgue. May you give me some hint about the subprocess, please?
I don't understand if it is enough to build the subprocess project from the legacy repo you linked (paying attention to the different versions of the chromely.core between my main project and the subprocess one) and put the build in the BROWSERSUBPROCESSPATH or if I have to do something more

On sub-process, I personnaly won't be of much help beyond on Windows. I only tried it once on Windows in the legacy code. Then CEF changed Networking Service processes and that broke. When we moved to v5.0 we decided to go leaner and that was discontinued.
If you are comfortable with development on all platforms, then maybe creating sub-processes will be a way to go - between CefSharp and CEF itself you can get enough info to complete the dev. Developers have tried working around this successfully without sub-processes, though.
Work around without sub-process will be my preferred approach:

Starting Chromely on its own process within your application as a child process.
Incorporate it in your project like what was done in https://github.com/chromelyapps/demo-projects/tree/master/web-chromely

If you check closely..    CreateWebHostBuilder  is only called when the process is of type Browser.. so CreateWebHostBuilder will be equivalent to your main app entry function.
https://github.com/chromelyapps/demo-projects/blob/0ed0bf5a82ec196a9211ccacef85560aecfd11af/web-chromely/web-chromely-mvc/Program.cs#L32
https://github.com/chromelyapps/demo-projects/blob/0ed0bf5a82ec196a9211ccacef85560aecfd11af/web-chromely/web-chromely-bootstrap4/Program.cs#L38

Adopt the single instance approach - https://github.com/chromelyapps/Chromely/issues/213#issuecomment-646890455
This approach is not that different from #2, it is just easier to comprehend if one is not familiar with ASP.NET CORE.

Related, I can remember are:
https://github.com/chromelyapps/Chromely/issues/213
https://github.com/chromelyapps/Chromely/issues/128
https://github.com/chromelyapps/Chromely/issues/165
https://github.com/chromelyapps/Chromely/issues/166


aqueduct create crashes with "Uncaught Error: Bad State "

I can't get aqueduct create to work. The error message is as follows:
$ aqueduct create scoutventory_backend
-- Aqueduct CLI Version: 3.3.0+1
*** Uncaught error
    Bad state: No element
  **** Stacktrace
  * #0      ListMixin.firstWhere (dart:collection/list.dart:150:5)
  * #1      CLIAqueductGlobal.aqueductPackageRef (package:aqueduct/src/cli/commands/create.dart:342:10)
  * #2      CLIAqueductGlobal.templateDirectory (package:aqueduct/src/cli/commands/create.dart:347:12)
  * #3      CLIAqueductGlobal.getTemplateLocation (package:aqueduct/src/cli/commands/create.dart:351:12)
  * #4      CLITemplateCreator.handle (package:aqueduct/src/cli/commands/create.dart:51:27)
  * #5      CLICommand.process (package:aqueduct/src/cli/command.dart:159:20)
  * <asynchronous suspension>
  * #6      CLICommand.process (package:aqueduct/src/cli/command.dart:135:12)
  * #7      main (file:///C:/Users/myuser/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/aqueduct-3.3.0+1/bin/aqueduct.dart:9:27)
  * #8      _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:299:32)
  * #9      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)
  ****

This happens regardless of the project name I enter. Also, a folder for the project is created. However it remains empty and the program crashes.

Same Herer with the same version, using Windows 10, the same if try to create inside VSCode Extension.

What is your PUB_CACHE environment variable?

I don't have it set. I'm on windows.

also experiencing same thing, also on windows 10

I'm also experiencing the same issue.
-- Aqueduct CLI Version: 3.3.0+1
*** Uncaught error
    Bad state: No element
  **** Stacktrace
  * #0      ListMixin.firstWhere (dart:collection/list.dart:150:5)
  * #1      CLIAqueductGlobal.aqueductPackageRef (package:aqueduct/src/cli/commands/create.dart:342:10)
  * #2      CLIAqueductGlobal.templateDirectory (package:aqueduct/src/cli/commands/create.dart:347:12)
  * #3      CLITemplateList.handle (package:aqueduct/src/cli/commands/create.dart:298:53)
  * #4      CLICommand.process (package:aqueduct/src/cli/command.dart:159:20)
  * <asynchronous suspension>
  * #5      CLICommand.process (package:aqueduct/src/cli/command.dart:135:12)
  * #6      CLICommand.process (package:aqueduct/src/cli/command.dart:135:12)
  * #7      main (file:///C:/Users/bett/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/aqueduct-3.3.0+1/bin/aqueduct.dart:9:27)
  * #8      _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:299:32)
  * #9      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)
  ****

Same thing, also on windows 10

I am experiencing the same issue on windows 10

I am experiencing the same issue on windows 10

Hi All,
I added the following ENVIRONMENT VARIABLES and added an entry to the PATH variable, then reinstalled Aqueduct and it suddenly started working. Not sure what happened.
NEW VARIABLES

PATH VARIABLE ENTRIES:

Any idea? same issue here .. :)

Any solve ? I face the same issue .

Any idea? same issue here .. :)

Have you tried what i did?

@kamaribedwarddev
this solution did not work for me .

The Solution as @kamaribedwarddev said but it works for me when I changed PUB_HOSTED_URL to https://pub.dev .
Thank You @kamaribedwarddev  !

Thank you for your comments and suggestions @kamaribedwarddev @OmarBakry-eg it helped me a lot.

Thank you for your comments and suggestions @kamaribedwarddev @OmarBakry-eg  you helped me a lot.

The Solution as @kamaribedwarddev said but it works for me when I changed PUB_HOSTED_URL to https://pub.dev . Thanks @OmarBakry-eg
For Flutter people, set PUB_CACHE to "Flutter_Directory.pub-cache". In my computer it is C:\flutter.pub-cache

You are all welcome !
@bahadurvaibhav , @javierxnora

I am experiencing the same issue on windows 10

Hi All,
I added the following ENVIRONMENT VARIABLES and added an entry to the PATH variable, then reinstalled Aqueduct and it suddenly started working. Not sure what happened.
NEW VARIABLES

PATH VARIABLE ENTRIES:

worked for me!

I'm also experiencing the same issue.
-- Aqueduct CLI Version: 3.3.0+1
*** Uncaught error
    Bad state: No element
  **** Stacktrace
  * #0      ListMixin.firstWhere (dart:collection/list.dart:150:5)
  * #1      CLIAqueductGlobal.aqueductPackageRef (package:aqueduct/src/cli/commands/create.dart:342:10)
  * #2      CLIAqueductGlobal.templateDirectory (package:aqueduct/src/cli/commands/create.dart:347:12)
  * #3      CLITemplateList.handle (package:aqueduct/src/cli/commands/create.dart:298:53)
  * #4      CLICommand.process (package:aqueduct/src/cli/command.dart:159:20)
  * <asynchronous suspension>
  * #5      CLICommand.process (package:aqueduct/src/cli/command.dart:135:12)
  * #6      CLICommand.process (package:aqueduct/src/cli/command.dart:135:12)
  * #7      main (file:///C:/Users/bett/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/aqueduct-3.3.0+1/bin/aqueduct.dart:9:27)
  * #8      _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:299:32)
  * #9      _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)
  ****

I too couldn't solve the issue by implementing the above-quoted solutions.. can anybody help?

Make sure you are on a writable directory.
The default cmd path on win 10 is "C:\WINDOWS\system32>"
Changing directory worked for me (with the above solution)

I am experiencing the same issue on windows 10

Hi All,
I added the following ENVIRONMENT VARIABLES and added an entry to the PATH variable, then reinstalled Aqueduct and it suddenly started working. Not sure what happened.
NEW VARIABLES

PATH VARIABLE ENTRIES:

worked for me!
thank you so much!

The error still occuring even after tried with above ways

@yhhCh405-CS yea, i guess they have stopped the support only.. or maybe the community is really small. Anyways, i started using django(node too) for backend... Firebase is pretty powerful too along with firebase cloud functions... Just lemme know if anybody can find the Solution.

I am experiencing the same issue on windows 10

Hi All,
I added the following ENVIRONMENT VARIABLES and added an entry to the PATH variable, then reinstalled Aqueduct and it suddenly started working. Not sure what happened.
NEW VARIABLES

PATH VARIABLE ENTRIES:

worked for me!
thank you so much!

Worked for me aswell, thank you!!!
IMPORTANT STEP, REINSTALL AQUEDUCT AFTER THE ENTRIES
The first time i tried, i didn't see that.

Followed those instructions with the environment and pub_cache still get the error.

The Solution as @kamaribedwarddev said but it works for me when I changed PUB_HOSTED_URL to https://pub.dev . Thanks @OmarBakry-eg
For Flutter people, set PUB_CACHE to "Flutter_Directory.pub-cache". In my computer it is C:\flutter.pub-cache
Logout from your account so that environment variables get updated. After that activate aqueduct again
pub global activate aqueduct
For Flutter folks: flutter pub global activate aqueduct

This worked for me, Thank You!

i have no pub_cache folder inside pub_dartlang.org folder any help plz

Does anyone have a solution for this same error but on the Mac system?

Does anyone have a solution for this same error but on the Mac system?

I have the as problem. I using a Mac and I have DART and FLUTTER installed! Any solution for Mac users?

" By default, this directory is located under .pub-cache in your home directory (on Mac and Linux), or in %LOCALAPPDATA%\Pub\Cache (on Windows)." - https://dart.dev/tools/pub/environment-variables

11/21/2020 , Same thing, also on windows 10.

https://halcyonit.co.uk/bad-state-no-element-error-when-creating-aqueduct-project/
This worked for me!

I am experiencing the same issue on windows 10

Hi All,
I added the following ENVIRONMENT VARIABLES and added an entry to the PATH variable, then reinstalled Aqueduct and it suddenly started working. Not sure what happened.
NEW VARIABLES

PATH VARIABLE ENTRIES:

This Works for me


Added Leanplum support

Yep, looks good to go on green, 👍

awesome, thanks! :)

Shipped to trunk too 👍

Super! :)