auth/internal-error calling generateEmailVerificationLink or generatePasswordResetLink

Describe your environment

Operating System version: Firebase Functions Environment
Firebase SDK version: 7.0.0
Library version: 7.0.0
Firebase Product: auth

Describe the problem
I'm facing internal-error when calling the auth functions to generate Email verification link or password verification link. It throws the error randomly, some time it is successful, but its not consistent. There is no rate limit mentioned for the functions generateEmailVerificationLink and generatePasswordResetLink. Other operations of auth like getUser and setCustomClaims works fine in the same execution where the above mention two functions are failing.
The complete error response is:
{"error":{"code":400,"message":"TOO_MANY_ATTEMPTS_TRY_LATER","errors":[{"message":"TOO_MANY_ATTEMPTS_TRY_LATER","domain":"global","reason":"invalid"}]}}
Steps to reproduce:
The below code captures the flow of auth operation executions in my application.
Relevant Code:
let promises = [];
let auth = admin.auth();
let hrstart = process.hrtime();

async function testAuth(i) {
    let email =<EMAIL_ADDRESS>    let user;
    try {
        user = await auth.createUser({email, password: 'password1234567890'});
    } catch (e) {
        console.log('error creating user', email, e);
        // return Promise.reject(e);
    }

    try {
        await auth.setCustomUserClaims(user.uid, {abc: `testwqa`});
    } catch (e) {
        console.log('error writing user claims', email, e);
        // return Promise.reject(e);
    }

    try {
        user = await auth.getUser(user.uid);
    } catch (e) {
        console.log('error reading user ', email, user.uid, e);
        // return Promise.reject(e);
    }

    let link, plink;
    try {
        link = await auth.generateEmailVerificationLink(user.email, {url: `https://${projectId}.firebaseapp.com/redeem-reward`});
    } catch (e) {
        console.log('error generating email link for ', user.uid, e);
        // return Promise.reject(e);
    }

    try {
        plink = await auth.generatePasswordResetLink(user.email, {url: `https://${projectId}.firebaseapp.com/redeem-reward`});
    } catch (e) {
        console.log('error generating password link for ', user.uid, e);
        // return Promise.reject(e);
    }

    return {user, link, plink};
}

for (let i = 0; i < 3; i++) {
    promises.push(testAuth(i));
}

Promise.all(promises)
    .then(value => {
        let hrend = process.hrtime(hrstart);
        console.log(hrend);
        console.log(value)
    });

Error log:

This is a also posted on stackoverflo:
https://stackoverflow.com/questions/54703649/firebase-admin-sdk-auth-error-too-many-attempts-try-later
As suggested in the stackoverflow post, try to optimize your calls. There is no need to send a password reset and email verification link at the same time. It is also not a good practice (from user's perspective as they will get 2 emails). Password reset should verify the user's email making the verification email unnecessary.
Can you try making this change and report if you stop getting these errors?

I have tried after removing the passwordResetLink call but the issue is still present. The calls are optimized now but still the error is present specifically on these calls.
On a side note I have looped auth.getUser 1000 iterations separately but there was no error in this operation.

I can't tell where exactly you are getting throttled. You are making multiple write calls in parallel and then doing the same thing 3 times. You can definitely optimize further.
If you are batch creating users, then you should consider using importUsers API. This allows you to upload up to a 1000 users and it also supports setting custom attributes on creation. This will improve your performance and avoid getting rate limited.

This is the scenario that my function will be executing in parallel, which I have simulated with Promise.all in my code.  I'm able to create users and write their custom claims in parallel and there is no error, but I get the error when I try to generate the email link.
I have updated my code to have each operation in a try catch to get exactly where the error is. As you can see in logs it fails only when creating email link.

Ok, so you will end up getting throttled at some point as email link generation is not meant to be run in batches as you appear to be doing. You will need to apply some throttling on your end. If you can figure out the number of requests you are able to send before getting throttled, that could help determine whether throttling is excessive or not for this operation.
You are better off opening a support ticket for this. The support team will help connect you directly to the backend engineers in charge of this. The GitHub repo is not the right place for these issues. I can only help diagnose the issue and play middleman but can't look into the usage logs for your project or make changes to fix this.

Ok.
I will contact the firebase support with my issue.
Thanks.

There is a limit to the operation auth.generateEmailLink which is 20 QPS(queires per second)/ i.p address. The limit can be increased by presenting the use case to firebase for approval.
While the operation auth.generatePasswordLink has limits based on paln: quota of 150 emails/day for Spark plan, and 10,000 emails/day for Blaze plan.
Other operations limits are documented in firebase docs.

@bojeil-google should we add this info to ur documentation?

Ok, I will need to confirm these numbers first.

Here's the link to the docs:
https://firebase.google.com/docs/auth/limits

@bojeil-google is there anything we need to do to resolve this?

I wasn't able to verify the QPS limit per IP address. But I can lookup the email link generation limit per day for each operation and document it.

I experience the same error, but even on the first invocation.
Code:
TL;DR operating on firestore and on RTDB, then generating a link on user creation
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
import * as sgMail from '@sendgrid/mail';

const useSg = Boolean(process.env.SENDGRID_API_KEY);

if (useSg) {
  sgMail.setApiKey(process.env.SENDGRID_API_KEY as string);
}

// noinspection JSUnusedGlobalSymbols
export const onUserCreate = functions.auth.user().onCreate(async (user) => {

  const userDoc = admin.firestore().collection('users').doc(user.uid);
  await userDoc.set({
    // ...
  });
  await userDoc.collection('...').doc("...").set({}); // just creating an empty document in Firestore

  const userRef = admin.database().ref('users').child(user.uid);
  await userRef.set({
    // ...
  });

  if (user.emailVerified) throw new Error("User email is already verified"); // impossible

  if (!user.email) throw new Error("User has no email address");

  if (useSg) {
    const link = await admin.auth().generateEmailVerificationLink(user.email); // causes error 400 for some reason

    await sgMail.send({
      to: {name: user.displayName, email: user.email},
      from: {name: "Planemo Team", email<EMAIL_ADDRESS>      subject: "Activate your registration",
      templateId: "...",
      dynamicTemplateData: {
        subject: "Activate your registration",
        name: user.displayName,
        link,
      },
    });
  } else {
    // ...
  }

});

Error shown in function logs:
Error: An internal error has occurred. Raw server response: "{"error":{"code":400,"message":"TOO_MANY_ATTEMPTS_TRY_LATER","errors":[{"message":"TOO_MANY_ATTEMPTS_TRY_LATER","domain":"global","reason":"invalid"}]}}"
    at FirebaseAuthError.FirebaseError [as constructor] (/srv/node_modules/firebase-admin/lib/utils/error.js:42:28)
    at FirebaseAuthError.PrefixedFirebaseError [as constructor] (/srv/node_modules/firebase-admin/lib/utils/error.js:88:28)
    at new FirebaseAuthError (/srv/node_modules/firebase-admin/lib/utils/error.js:147:16)
    at Function.FirebaseAuthError.fromServerError (/srv/node_modules/firebase-admin/lib/utils/error.js:186:16)
    at /srv/node_modules/firebase-admin/lib/auth/auth-api-request.js:1360:49
    at <anonymous>
    at process._tickDomainCallback (internal/process/next_tick.js:229:7)

Tried with multiple projects, same result.

 I suggest you file a ticket with support and provide them details about your project.

No, I am sure that I am sending just one request. Checked the logs and the project is not even public.

Yup, it was an IP block. It's part of an E2E test we run, so we need to figure out a better way to run tests that also happen to touch firebase APIs.

Bump?
{ Error: An internal error has occurred. Raw server response: "{"error":{"code":400,"message":"TOO_MANY_ATTEMPTS_TRY_LATER","errors":[{"message":"TOO_MANY_ATTEMPTS_TRY_LATER","domain":"global","reason":"invalid"}]}}"     at FirebaseAuthError.FirebaseError [as constructor] (/workspace/node_modules/firebase-admin/lib/utils/error.js:43:28)     at FirebaseAuthError.PrefixedFirebaseError [as constructor] (/workspace/node_modules/firebase-admin/lib/utils/error.js:89:28)     at new FirebaseAuthError (/workspace/node_modules/firebase-admin/lib/utils/error.js:148:16)     at Function.FirebaseAuthError.fromServerError (/workspace/node_modules/firebase-admin/lib/utils/error.js:187:16)     at /workspace/node_modules/firebase-admin/lib/auth/auth-api-request.js:1490:49     at process._tickCallback (internal/process/next_tick.js:68:7)   errorInfo:    { code: 'auth/internal-error',      message:       'An internal error has occurred. Raw server response: "{"error":{"code":400,"message":"TOO_MANY_ATTEMPTS_TRY_LATER","errors":[{"message":"TOO_MANY_ATTEMPTS_TRY_LATER","domain":"global","reason":"invalid"}]}}"' },   codePrefix: 'auth' }

Any workaround for avoiding this error?
We have a test case where we check if the api is valid. This returns TOO_MANY_ATTEMPTS_TRY_LATER for a quick consecutive call.

I had the same issue when generateEmailVerificationLink was called in the backend after sendEmailVerification was invoked from the frontend, but it was really under 20 QPS and from 2 different IPs. Removing the call from the frontend fix the problem.

I had the same issue when generateEmailVerificationLink was called in the backend after sendEmailVerification was invoked from the frontend, but it was really under 20 QPS and from 2 different IPs. Removing the call from the frontend fix the problem.

After spending 10+ hours trying to resolve this issue of getting rate limited on the 2nd query, I've had to completely remove Firebase Email Verification from my codebase.

I am also seeing this issue. I have not ran admin.auth().generateEmailVerificationLink in over 24hrs (from anywhere else or any user at all) and called it just now only one time (while deployed in the prod functions environment)  and got this 400 TOO_MANY_ATTEMPTS_TRY_LATER error ...
But, the client did also call the Firebase.auth.currentUser.sendEmailVerification() method around same time (obviously different IP).
Could that be the issue?

https://firebase.google.com/docs/auth/limits

How long does it takes for the user to get enable automatically, if it gets disabled ?

One thing to ensure if you're running into this is that you're not using the same email address across multiple attempts. I found through experimentation that it will only allow a link to be generated once per minute per email address.. Which seems a perfectly reasonable thing to do to avoid spamming someone, but should still be mentioned in the limits documentation. I do not see this issue if I switch addresses between attempts.

For anyone else looking at this where they're getting an error first time, this solved my problem. After several hours trying to work out what was going wrong, calls to sendEmailVerification involve creating a link too so count towards the ~1 call a minute per user limitation.
I'd been creating a link for an app feature, and also sending the link via a different channel at the same time (don't ask!). What this meant was that the first call to sendEmailVerification was effectively blocking the second being generated for 60s for the same email address/user.

Mind if I chime in? I am experiencing the same problem. In my code I retry the email link generation in case of an error. It does 3 attempts before it finally fails. I do this because I receive an error that there is not yet a user record for the given address. Is there any other way to 'wait' for the user record being written? I am using GCIP with firebase auth ui.

If you don't handle that much user you can do a retry e.g.
exports.sendWelcomeEmail = functions.runWith({failurePolicy: true}).auth.user().onCreate(async (user) => {
    functions.logger.log("Running email...");
    const email = user.email;
    const displayName = user.displayName;
    const link = await auth.generateEmailVerificationLink(email, {
      url: 'https://mpj.io',
    });

    await sendWelcomeEmail(email, displayName, link);
});
``

In my case I was calling this method like two times
one time after the user finishes registering in the frontend (angular)

user.sendEmailVerification() // in angular

`
``

and after that, I had a firebase cloud function that will be triggered whenever a user is created

```ts
export const onAuthUserCreated = functions.region('europe-west3')
  .auth.user()
  .onCreate(async (user: UserRecord) => {

// .. some code

const verificationURL = await getAuth()
          .generateEmailVerificationLink(user.email as string,

so removing the code in angular solved the problem!
I hope this could help someone <3

I am unable to see how we can address this on the SDK side. Since this issue hasn't been active recently I will close this for now. Please file a new issue if you are still facing this problem.


Implement fixed sidebar for docs page

This is a first shot on implementing a fixed sidebar for the docs page.
Please, let me know if implementation looks OK.
Closes #400

@SpaceK33z Thanks for the review, this is a good catch! Working on it.

Hey @rafaelrinaldi this looks great, I noticed what @SpaceK33z said as well. There's kind of two problems there -- we should add a catch in the Sidebar stylesheet for text overflow but we should also try to fix some of the extra long titles 😁  as most can probably be rephrased a bit better. The second point obviously doesn't need to be fixed on this PR. Probably adding an ellipsis for extra-long titles would be fine IMO.
Also I noticed it overlaps the footer on at the bottom if you expand it enough:

Probably a quick check on the height of the footer vs. allowed space would do the trick.

Can you rebase against master? The development happens against it now (faster deployments).

Can you rebase against master? The development happens against it now (faster deployments).

@bebraw 👍

@rafaelrinaldi any updates on this? No pressure... just wanted to offer some help if you haven't already figured out solutions.

Closing this in favor of an updated version of this branch. Opening the new PR momentarily...


HOTT-2160: Adds smoke tests for search query parser

Jira link
https://transformuk.atlassian.net/browse/HOTT-2160
What?
I have added/removed/altered:

Adds package script and smoketests for searchQueryParserSmokeTests
Adds smoketests directory for all smoke tests
Update smoketest file references
Removes duplicate name in directory for beta search

Why?
I am doing this because:

This is required to validate changes the get rolled out for the search query parser (see for example: https://github.com/trade-tariff/trade-tariff-search-query-parser/pull/73)

for script in staging-tariff-frontend-smoketests staging-tariff-backend-smoketests staging-tariff-duty-calculator-smoketests dev-tariff-frontend-smoketests dev-tariff-backend-smoketests dev-tariff-duty-calculator-smoketests dev-tariff-search-query-parser-smoketests
  yarn run $script
end

Executing all of the scripts runs clean on my local machine using my .env file

Running here just fine: https://app.circleci.com/pipelines/github/trade-tariff/trade-tariff-search-query-parser/223/workflows/be284196-510d-4f3d-89c2-dd87b206c6a5/jobs/406


TCP input doesn't work with rsyslog

From what I've read, rsyslog should use TCP by default and it seems to have an UDP fallback?
http://pastebin.com/EctYZjCe
Here's a logstash log of 2 startups. First startup there is only TCP enabled, and you can see
Starting tcp input listener {:address=>"<IP_ADDRESS>:5000"}

However ES seemingly never receives anything.
Second startup is both TCP and UDP enabled, you can see
    Starting tcp input listener {:address=>"<IP_ADDRESS>:5000"}
    Starting UDP listener {:address=>"<IP_ADDRESS>:5000"}
    UDP listener started {:address=>"<IP_ADDRESS>:5000", :receive_buffer_bytes=>"106496", :queue_size=>"2000"}

This works.
Comparing these 2 logs makes me think that the TCP listener never gets started?
Not sure if this is a logstash issue, or a logtrail example config issue, or something else.
Using LXC container(Ubuntu 16.04) with OpenJDK and Elastic Stack 5.1.1

In the /etc/rsyslog.conf while configuring syslog server endpoints specifying '@' before the hostname will use UDP. If you specify '@@' before hostname, it will use TCP. So if you change the rsyslog.conf from *.*     @localhost:5000 to *.*     @@localhost:5000, then syslog events will sent using TCP. I tested the same. Please check http://www.rsyslog.com/doc/rsyslog_conf_examples.html for more info

That explains a lot, it now works, thank you!


[BUG] Logo is not displayed on first/second layer on Android (release)

Logo is not displayed neither on first layer, nor on second. Issue is reproducible only on android (release mode). Config is done in the same way as in the examples. Logo is a regular .png file.
First layer setup and show:

Second layer setup and show:

Hey @mihaf70
we have an example on how to set up the logo here. Maybe you can check that out and see if that works for you.
Cheers,
Rui

@userCTest it's done in the same way :c

@mihaf70 can you please try
BannerLogo("logo.png", Image.resolveAssetSource(require('app/assets/images/logo.png')
on creating the Banner logo and see if that works?

@userCTest  I was trying to do it that way but it also didn't work

@mihaf70 I tried
logo: new BannerLogo(         'logo.png',         Image.resolveAssetSource(require('./assets/images/logo.png')),       )
in a sample app and it works:

Can you try that?
Cheers,
Rui

@userCTest No, I don't have any errors. In general it's working on android (debug), iOS (debug/release), the problem occurs only on android release so I'm not sure if the problem is in a path itself.

And image is bundled correctly because I'm able to display it regularly in  component so it's really weird.

@mihaf70 I have managed to replicate the issue and created an internal ticket for our devs to have a look into it.
As soon as we have any updates, I'll let you know.
Best,
Rui

@mihaf70 PR is opened 🎉
https://github.com/Usercentrics/react-native-sdk/pull/63

Released! @mihaf70 if anything goes wrong you can re-open this issue. Thanks


Week-3 : peer to peer code review

Review

You work hard and Did a very well job creating your portfolio.

It is responsive and it looks good.

suggestion

It would be better to use 100% width.
Use some Color contrast on the button.
it would be better to avoid a horizontal scroll bar at the bottom of your website.

Great job 👍 for far I do not see any problem I think you fix your horizontal
scroll bar by adding overflow-x : hidden in your root or reset settings in your css file

Great job so far using all the correct HTML tags and also making the pages responsive
But just like Mr Bilal said you should get rid of the overflow property on the x axis


behavior of alias is defferent from CRuby

# test.rb
class Base
  def start
    p 'Base'
  end
end

class Patch < Base
  def start
    p 'Patch A'
    super
  end
end

class Patch < Base
  alias patch_start start
  def start
    p 'Patch B'
    patch_start
  end
end

a = Patch.new
a.start

In CRuby, it outputs

"Patch B"
"Patch A"
"Base"

On the other hand, In MRuby, it outputs error

"Patch B"
"Patch A"
trace (most recent call last):
[0] test.rb:23
[1] test.rb:18:in start
[2] test.rb:10:in patch_start
test.rb:10: undefined method 'patch_start' (NoMethodError)

I want MRuby to perform same as CRuby as much as possible.
How can I do it?

It's a known issue, e.g. #1457, #1531
Those fixes consume more memory, which is more precious than minor compatibility.


Make the province renaming event triggered in on_startup

I made that event trigger exactly 1 day after start, the most I could without going to mod further files.


install error

Building native extensions. This could take a while...
ERROR:  Error installing fastlane:
ERROR: Failed to build gem native extension.
current directory: /usr/local/lib/ruby/gems/2.5.0/gems/unf_ext-<IP_ADDRESS>/ext/unf_ext

/usr/local/opt/ruby/bin/ruby -r ./siteconf20180524-10246-xs9ghf.rb extconf.rb
checking for -lstdc++... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.
Provided configuration options:
--with-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/local/Cellar/ruby/2.5.1/bin/$(RUBY_BASE_NAME)
--with-static-libstdc++
--without-static-libstdc++
--with-stdc++lib
--without-stdc++lib
/usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:456:in try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first. 	from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:541:in try_link0'
from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:559:in try_link' 	from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:777:in try_func'
from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:1004:in block in have_library' 	from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:947:in block in checking_for'
from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:350:in block (2 levels) in postpone' 	from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:320:in open'
from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:350:in block in postpone' 	from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:320:in open'
from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:346:in postpone' 	from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:946:in checking_for'
from /usr/local/Cellar/ruby/2.5.1/lib/ruby/2.5.0/mkmf.rb:999:in have_library' 	from extconf.rb:6:in '
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/usr/local/lib/ruby/gems/2.5.0/extensions/x86_64-darwin-17/2.5.0/unf_ext-<IP_ADDRESS>/mkmf.log
extconf failed, exit code 1
Gem files will remain installed in /usr/local/lib/ruby/gems/2.5.0/gems/unf_ext-<IP_ADDRESS> for inspection.
Results logged to /usr/local/lib/ruby/gems/2.5.0/extensions/x86_64-darwin-17/2.5.0/unf_ext-<IP_ADDRESS>/gem_make.out

I have same issue when installed via brew (when installed via gem - bundle update never ends).
mkmf.log says that stdio.h not found
I've fixed this error, in my case settings file had
CONFIG["CFLAGS"] = "-mmacosx-version-min=10.10 -isysroot /Applications/Xcode-7.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -pipe"`, no idea why there was `Xcode-7.3.1.app

but that is not related to my system, because I never had xCode 7.3.1 here...
anyway, another error appeared then -
ld: library not found for -lruby-static, seems like mess with pathes...
I expected this setup to be one click, but wasted whole day and did not make it work w/o errors...
I will report more details later, after I cleanup all the mess I did while trying to make it work correctly.

Installation
Step1 - command line tools:
xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

Step2 - fastlane install:
brew cask install fastlane

Step3 - environment (using zsh terminal, so modified ~/.zshrc file):
export PATH="$HOME/.fastlane/bin:$PATH"
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

✅ fastlane environment ✅
Stack

Key
Value

OS
10.13.4

Ruby
2.2.4

Bundler?
false

Git
git version 2.15.1 (Apple Git-101)

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

Host
Mac OS X 10.13.4 (17E202)

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

OpenSSL Version
OpenSSL 1.0.2g  1 Mar 2016

Is contained
false

Is homebrew
true

Is installed via Fabric.app
false

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

Xcode Version
9.3.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE
en_US.UTF-8
✅

fastlane files:
No Fastfile found
No Appfile found
fastlane gems

Gem
Version
Update-Status

fastlane
2.96.1
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

slack-notifier
2.3.2

atomos
0.1.2

CFPropertyList
2.3.5

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.5

xcodeproj
1.5.9

rouge
1.11.1

xcpretty
0.2.6

terminal-notifier
1.7.1

unicode-display_width
1.1.3

terminal-table
1.7.3

plist
3.2.0

public_suffix
2.0.5

addressable
2.5.1

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.6.4

tty-cursor
0.5.0

tty-spinner
0.8.0

babosa
1.0.2

colored
1.2

highline
1.7.8

commander-fastlane
4.4.6

excon
0.55.0

faraday
0.12.1

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.0

gh_inspector
1.1.3

json
1.8.1

mini_magick
4.5.1

multi_json
1.12.1

multi_xml
0.6.0

rubyzip
1.2.1

security
0.1.3

xcpretty-travis-formatter
0.0.4

dotenv
2.2.0

bundler
1.14.6

faraday_middleware
<IP_ADDRESS>

naturally
2.1.0

simctl
1.6.4

uber
0.0.15

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
2.1.0

mime-types-data
3.2016.0521

mime-types
3.1

little-plugger
1.1.4

logging
2.2.2

jwt
1.5.6

memoist
0.15.0

os
0.9.6

signet
0.7.3

googleauth
0.5.1

httpclient
2.8.3

google-api-client
0.21.2

emoji_regex
0.1.1

libxml-ruby
3.0.0

generated on: 2018-05-24

Step4 - fastlane init:
fastlane init

Q: What would you like to use fastlane for?
A: 1. Automate screenshots
Q: Enable automatic upload of localized screenshots to iTunes
Connect?
A: No
finally same error...
An error occurred while installing unf_ext (<IP_ADDRESS>), and Bundler
cannot continue.
Make sure that `gem install unf_ext -v '<IP_ADDRESS>'` succeeds before bundling.
[12:30:41]: Exit status: 5
[12:30:41]: Something went wrong when running `bundle update` for you
[12:30:41]: Please take a look at your Gemfile at path `Gemfile`
[12:30:41]: and make sure you can run `bundle update` on your machine.
[12:30:41]: --------------------------------------------------------
[12:30:41]: --- ✅  Successfully generated fastlane configuration ---
[12:30:41]: --------------------------------------------------------

mkmf.log:
"/usr/bin/clang -o conftest -I/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/x86_64-darwin15 -I/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/backward -I/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0 -I. -I/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/dependencies/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -mmacosx-version-min=10.10 -isysroot /Applications/Xcode-7.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -pipe conftest.c  -L. -L/Users/kirow/.fastlane/bin/bundle/lib -L. -L/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/dependencies/lib -fstack-protector     -lruby-static -framework CoreFoundation  -lpthread -ldl -lobjc "
clang: warning: no such sysroot directory: '/Applications/Xcode-7.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk' [-Wmissing-sysroot]
In file included from conftest.c:1:
In file included from /Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/ruby.h:33:
In file included from /Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/ruby.h:29:
/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/defines.h:26:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
         ^~~~~~~~~
1 error generated.
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5:   return 0;
6: }
/* end */

obviously:
clang: warning: no such sysroot directory: '/Applications/Xcode-7.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk' [-Wmissing-sysroot]

related to
In file included from /Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/ruby.h:29:
/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/defines.h:26:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
         ^~~~~~~~~

so opening config file at /Users/kirow/.fastlane/bin/bundle/lib/ruby/2.2.0/x86_64-darwin15/rbconfig.rb, there we can see:
CONFIG["configure_args"] = " '--prefix' '/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/bundle' '--enable-load-relative' '--disable-shared' '--with-static-linked-ext' '--disable-install-doc' '--without-ext=,dbm,gdbm,sdbm,dl/win32,fiddle/win32,tk/tkutil,tk,win32ole,-test-/win32/dln,-test-/win32/fd_setsize,-test-/win32/dln/empty' 'CC=/usr/bin/clang' 'CFLAGS=-mmacosx-version-min=10.10 -isysroot /Applications/Xcode-7.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk' 'LDFLAGS=-L/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/dependencies/lib' 'CPPFLAGS=-I/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/dependencies/include' 'CXX=/usr/bin/clang++'"
CONFIG["CFLAGS"] = "-mmacosx-version-min=10.10 -isysroot /Applications/Xcode-7.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -pipe"

this is definitely wrong - /Applications/Xcode-7.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk
changed to - /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
/Users/crashlytics/buildAgent/work/2484be8b71880c21/... seems wrong too, but no idea what its purpose, so I did not modified/removed this
re-run fastlane init
mkmf.log:
"/usr/bin/clang -o conftest -I/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/x86_64-darwin15 -I/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/backward -I/Users/kirow/.fastlane/bin/bundle/include/ruby-2.2.0 -I. -I/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/dependencies/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -mmacosx-version-min=10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -pipe conftest.c  -L. -L/Users/kirow/.fastlane/bin/bundle/lib -L. -L/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/dependencies/lib -fstack-protector     -lruby-static -framework CoreFoundation  -lpthread -ldl -lobjc "
ld: warning: directory not found for option '-L/Users/crashlytics/buildAgent/work/2484be8b71880c21/bundle-2.28.3/fastlane_lib/dependencies/lib'
ld: library not found for -lruby-static
clang: error: linker command failed with exit code 1 (use -v to see invocation)
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5:   return 0;
6: }
/* end */

And for now I'm stuck here...

installed via sudo gem install fastlane -NV
and init with sudo - sudo fastlane init, works as expected
if fastlane init -  $ bundle update stays on screen forever, no errors, just stuck

@zhangdongpo It looks like you may be missing the developer tools based upon this line in your output: The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first.
Looks ike @Kirow mentioned this in a comment but have you run: xcode-select --install?

@Kirow Are you using the system version of Ruby? The system version of Ruby usually forces you to use sudo to install a gem but you shouldn't need to use sudo to run fastlane init.
Can you run fastlane init --verbose and paste the output? I'm curious what it is getting stuck on 🤔

Looks ike @Kirow mentioned this in a comment but have you run: xcode-select --install?

when installed via brew cask it doesn't help, because it tired to use wrong SDK path, and even if it changed manually - issue with missing ruby-static appeared and I don't know where it is located...
also fastlane env says that ruby version 2.2.4, but '.fastlane/bin/bundle/lib/ruby' had only 2.2.0
I think that installation via homebrew not working at all...

Are you using the system version of Ruby?

not sure what I am using. ruby -v says ruby 2.3.3p222 (2016-11-21 revision 56859) [universal.x86_64-darwin17]

Can you run fastlane init --verbose and paste the output?

when I launched it second time it worked w/o issue, probably because all dependencies were already installed with sudo.
So I removed some installed gems and reinstall fastlane...and it worked anyway...
Is there is a way to remove fastlane with all dependencies?

@Kirow Two questions for you:

Did you have a Gemfile in the directory where you initially ran fastlane init?
Are things fully working for you now?

Yes, I do. It was created automatically:

source "https://rubygems.org"

gem "fastlane"

no errors during fastlane init, but not fully working for me.
sudo fastlane screenshots

No such file or directory @ rb_sysopen - /Users/kirow/Library/Developer/CoreSimulator/Devices/85FEC9CC-CDCB-42C6-B679-39325A8A931D/data/Library/Preferences/.GlobalPreferences.plist

there is no such folder - 85FEC9CC-CDCB-42C6-B679-39325A8A931D
Anyway I don't think this issue is related...

Can you run fastlane init --verbose and paste the output?

ok, I removed all dependencies manually...
INFO [2018-05-24 16:32:45.24]: ▸ Fetching json 2.1.0
INFO [2018-05-24 16:32:45.59]: ▸ Your user account isn't allowed to install to the system RubyGems.
INFO [2018-05-24 16:32:45.59]: ▸ You can cancel this installation and run:
INFO [2018-05-24 16:32:45.59]: ▸ bundle install --path vendor/bundle
INFO [2018-05-24 16:32:45.59]: ▸ to install the gems into ./vendor/bundle/, or you can enter your password
INFO [2018-05-24 16:32:45.59]: ▸ and install the bundled gems to RubyGems using sudo.

@Kirow So the preferred way to install fastlane is through a Gemfile (instead of gem install fastlane)
I THINK what was going on is that...

You installed fastlane directly into Ruby with sudo gem install fastlane
You had a Gemfile that also had fastlane there (which is why things may have gone 💥 cause it may have had some conflicting stuff going on)
You may have had an update fastlane action in your Fastfile which was trying to update using bundler (Gemfile) but since you installed it via sudo gem install fastlane that it was also getting confused

So I THINK if you would do sudo gem uninstall fastlane and then run bundle install things may have worked? 🤔 😇

bundle install failed with same problem, but at least it is visible by default.
Fetching json 2.1.0

Your user account isn't allowed to install to the system RubyGems.
  You can cancel this installation and run:

input password....and:
Fetching fastlane 2.96.1
Installing fastlane 2.96.1
Gem::FilePermissionError: You don't have write permissions for the
/var/folders/9f/jg5vh8hn7rn20z6j14tgfbgc0000gn/T/bundler20180524-19162-yefdgsfastlane-2.96.1/bin
directory.
An error occurred while installing fastlane (2.96.1), and Bundler cannot
continue.
Make sure that `gem install fastlane -v '2.96.1' --source 'https://rubygems.org/'` succeeds
before bundling.

so I ended with sudo bundle install, but it says -
Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root will
break this application for all non-root users on this

that make me sad :(


Change Dependency to support-db Instead of runtime

Right now, the code depends on RoomSQLiteQuery, as we need to do some reflection to get at a field inside of it. Eventually, with luck, that information will be exposed through a standard SupportSQLiteQuery method. At that point, we can switch from depending on runtime to support-db. This will help any other project wishing to use these classes without Room (e.g., other ORMs).

Addressed (more or less) in v0.1.0


Absolute paths in .cfg file

When use "Select source folder..." and add a folder, the tool adds a line to the .cfg file like this:
<selectedPath>C:\Sandbox\Demo-App\platform\common\bsp\devices\MY9221</selectedPath>
It's an absolute path, which is problematic, because I want to share the project setup across my team.
I would like it to write a relative path like this instead:
<selectedPath>$PROJ_DIR$\..\platform\common\bsp\devices\MY9221</selectedPath>
I tried just writing this directly to the .cfg file, but then rescan doesn't add my new files or throw an error.
Am I doing something wrong?
Thanks

At the moment the tool only can only process absolute path names in <selectedPath>.
Using $PROJ_DIR$ is a good improvement suggestion for a future release.
Thank you very much.


Color shift due to 4:2:0 color subsampling

Version: 0.2.3
Butterflow encodes in 4:2:0, even if -lossless option is enabled.
Strangely it does set the profile to high 4:4:4.
This causes a noticeable color shift, eg. white becomes rgb(251/253/250).
This quick hack improves color accuracy:
--- render.py	2017-04-10 23:32:31.000000000 +0200
+++ render_new.py	2017-04-18 18:46:55.000000000 +0200
@@ -54,7 +54,7 @@

     def mk_render_pipe(self, dest):
         vf = []
-        vf.append('format=yuv420p')
+        vf.append('format=yuv444p')
         call = [
             settings['avutil'],
             '-loglevel', settings['av_loglevel'],

I hacked it further to encode in qtrle (rgb24), same as the source format and similar colorspace as butterflow seems to operate in internally (bgr24).
There was still a slight color shift going on, but only noticeable on a color chart.
Is it possible to change the color subsampling to 4:4:4 in lossless mode?

Also experiencing this on Windows, but as the windows version is compiled, I can't perform this kind of edit without fully rebuilding the project. Kind of frustrating, since it means I can't actually use butterflow as it destroys the output's colors.


Cannot build packer-builder-softlayer (conflicts with multistep)

I cloned the repository per instructions in Readme of this repo, and tried to build.
At first, I ran into these errors:
builder/softlayer/step_create_ssh_key.go:4:2: cannot find package "code.google.com/p/gosshold/ssh" in any of:
    /aspera/usr/builder/packer/go/src/code.google.com/p/gosshold/ssh (from $GOROOT)
    /aspera/usr/builder/packer/gopath/src/code.google.com/p/gosshold/ssh (from $GOPATH)
builder/softlayer/builder.go:6:2: cannot find package "github.com/mitchellh/multistep" in any of:
    /aspera/usr/builder/packer/go/src/github.com/mitchellh/multistep (from $GOROOT)
    /aspera/usr/builder/packer/gopath/src/github.com/mitchellh/multistep (from $GOPATH)
builder/softlayer/ssh.go:7:2: cannot find package "golang.org/x/crypto/ssh" in any of:
    /aspera/usr/builder/packer/go/src/golang.org/x/crypto/ssh (from $GOROOT)
    /aspera/usr/builder/packer/gopath/src/golang.org/x/crypto/ssh (from $GOPATH)
But then I ran these commands:
go get github.com/mitchellh/multistep go build github.com/mitchellh/multistep go get golang.org/x/crypto/ssh go build golang.org/x/crypto/ssh
I also replaced
"code.google.com/p/gosshold/ssh" with "golang.org/x/crypto/ssh" in step_create_ssh_key.go, per instructions here: https://github.com/leonidlm/packer-builder-softlayer/issues/27
However, now I'm running into this issue:
builder/softlayer/builder.go:202: cannot use commHost (type func("github.com/mitchellh/multistep".StateBag) (string, error)) as type func("github.com/mitchellh/packer/vendor/github.com/mitchellh/multistep".StateBag) (string, error) in field value
builder/softlayer/builder.go:203: cannot use sshConfig (type func("github.com/mitchellh/multistep".StateBag) (*"golang.org/x/crypto/ssh".ClientConfig, error)) as type func("github.com/mitchellh/packer/vendor/github.com/mitchellh/multistep".StateBag) (*"github.com/mitchellh/packer/vendor/golang.org/x/crypto/ssh".ClientConfig, error) in field value
builder/softlayer/builder.go:205: cannot use new(common.StepProvision) (type *common.StepProvision) as type "github.com/mitchellh/multistep".Step in array or slice literal:
	*common.StepProvision does not implement "github.com/mitchellh/multistep".Step (wrong type for Cleanup method)
		have Cleanup("github.com/mitchellh/packer/vendor/github.com/mitchellh/multistep".StateBag)
		want Cleanup("github.com/mitchellh/multistep".StateBag)
What should i do to get builds running again?

This is also a problem with https://github.com/watson-platform/packer-builder-softlayer

Was there ever a resolution to this?

I had to downgrade my version of go to 1.6, and it started working.

er, that is, I had to use https://github.com/watson-platform/packer-builder-softlayer, and also downgrade go to 1.6. After that, we were in business.

Rock on, thanks for the answer!


zcommand: Strip the slash in the server side.

As discussed in https://chat.zulip.org/#narrow/stream/127-integrations, with one change: we continue letting the client strip the extra whitespaces (would seem more cleaner if the server received the command without the whitespaces), but the server now strips the leading slash.
This would make client code cleaner in the slash commands which include parameters (/subscribe, /mute_topic).

Merged, thanks @rheaparekh!  I think this is very likely to evolve, as you noted in one of your comments, but this is forward progress. 😄


[External Table]Fix hive partiton prune in hive and hudi exteranl table.

Proposed changes
Issue Number: close #10546
Problem Summary:
The hive ExprBuilder always return the binary Expr with col and value order.
The exprs col >= 1 and 1 <= col  is the same expr, but now  treat it as col >= 1 and col <= 1.
So it will cause this problem in the issue.
Checklist(Required)

Does it affect the original behavior: (Yes/No/I Don't know)
Has unit tests been added: (Yes/No/No Need)
Has document been added or modified: (Yes/No/No Need)
Does it need to update dependencies: (Yes/No)
Are there any changes that cannot be rolled back: (Yes/No)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

It is strange that all exprs should pass the NormalizeBinaryPredicatesRule, and expr like 1 < col should be converted to col > 1 already.

It is strange that all exprs should pass the NormalizeBinaryPredicatesRule, and expr like 1 < col should be converted to col > 1 already.

it get the col,value and op expr one by one, and then compose they by fixed order. so it will cause issue


Changed Index to use Debruijn graphs

Also includes various testing changes and code formatting

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/RNAdam-prb/98/
Test FAILed.

Jenkins, test this please.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/RNAdam-prb/99/
Test FAILed.


Do not add repositories when offline.list exists.

This is specific to debian flavoured machines
docker+kubernetes repositories are not added when
/etc/apt/sources.list.d/offline.list exists

Fixes #654
Allow pre-configuration of debian package repositories.

This PR will be superseded by #670


hc24 pad

Ready to make a PR? Great! Make sure your directory structure looks like this:
├── CAD
│   ├── case.stl
│   └── plate.dxf
├── firmware
│   └── rp2040.bin
└── PCB
├── macropad.pro
└── macropad.sch
(The file names do not matter, just the folders)

lets get this approved!!!

BTW, I want black for the top stl, and white for the bottom one. also, if possible, black keycaps too!

Can u not do it for this one?

ok made a new one here https://github.com/hackclub/hackpad/pull/17

@defihook hello??


kmt: fixes for local macOS VMs

What does this PR do?
Two fixes for macOS local VMs:

Explicitly set dumpCore to on. This is required by newer QEMU versions but libvirt isn't setting the defaults correctly yet. Will likely be needed in Linux too, in any case it just affects behavior of core dumps performed if the VM crashes.
Make network ID depend on the stack name and not on the VMset tag. This might be the cause of the problems seen where the local KMT VMs would lose connection randomly.

Which scenarios this will impact?
Motivation
Additional Notes
Validated in agent pipeline: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/pipelines/46393212

/merge


docs: Update Example, bastion is a required attribute in variable users.

Adding bastion as true as it follows with the rest of the example.
P.S. Please let me know if there are any specific PR standards I need to follow for this change to go through. #newbie

Looks good, thanks for adding the required variable in.


"Reproductions" script fails on Mac

Just an FYI to be addressed by anyone interested...
Attempting to run the "Reproductions" script fails with sh: lerna: command not found
OS X 10.11.6 (up to date)
The reproductions script goes OK until the command npm run bootstrap. The result is:
Dev-Mac-WS:GraphQL-and-React glen$ git clone https://github.com/storybooks/storybook.git
Cloning into 'storybook'...
remote: Counting objects: 39165, done.
remote: Compressing objects: 100% (194/194), done.
remote: Total 39165 (delta 188), reused 190 (delta 109), pack-reused 38862
Receiving objects: 100% (39165/39165), 40.28 MiB | 5.32 MiB/s, done.
Resolving deltas: 100% (22629/22629), done.
Dev-Mac-WS:GraphQL-and-React glen$ cd storybook
Dev-Mac-WS:storybook glen$ npm run bootstrap

><EMAIL_ADDRESS>bootstrap /Users/glen/Documents/JavaScript/Research/GraphQL/GraphQL-and-React/storybook
> lerna bootstrap --concurrency 1 --npm-client="yarn" --hoist && node ./scripts/hoist-internals.js

sh: lerna: command not found

npm ERR! Darwin 15.6.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "bootstrap"
npm ERR! node v7.10.1
npm ERR! npm  v4.2.0
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR<EMAIL_ADDRESS>bootstrap: `lerna bootstrap --concurrency 1 --npm-client="yarn" --hoist && node ./scripts/hoist-internals.js`
npm ERR! spawn ENOENT

You missed the npm install step.
This is why the lerna command cannot be found.
If I'm wrong, or you need further help, please reopen, happy to help 👍


Kadane's Algorithm

💥 Proposal
I would like to implement Kadane's Algorithm in C++
Have you read the Contributing Guidelines on Pull Requests?
Yes

/assign

@HarshCasper Is the issue closed , I wanted to worked on it.


Allow to log system activity without a causer or a null causer

It's not clear from the documentation if this can be done or not.
Sometimes there can be activity triggered on events without a causer. Examples are when an action is taken by an unregistered user, a SYSTEM Cron, or a Bot.
Example log items can be:
'Project 123 was archived by the SYSTEM due to non-activity'
'GithubBot locked this thread on 23/05/2019'
'Anonymous user viewed the phone number'
etc
I think the workaround would be to create users with the names 'SYSTEM', 'Bot' etc, and hardcode that userID. Which can cause problems in production and testing environments.
Is there a better way to log such activities?

Hey,
the causer columns are already nullable if this line returns null https://github.com/spatie/laravel-activitylog/blob/d5fd05eb9edcb2416ada4f1e026d47ee9f8706a3/src/ActivityLogger.php#L196 you won't have a causer.
If you want to log a system activity with a logged in user this could be done by creating the Activity model directly or override the logger service and change some methods.

as explained by @Gummibeer.
If you would want to customize "causedBy" logic then you will need to do following steps to accomplish that:

Create a new ActivityLogger class which will extend "Spatie\Activitylog\ActivityLogger" and add following code in its construct method:
use Illuminate\Auth\AuthManager;
use Illuminate\Contracts\Config\Repository;
use Spatie\Activitylog\ActivityLogStatus;
use Spatie\Activitylog\ActivityLogger as SpatieActivityLogger;

class ActivityLogger extends SpatieActivityLogger
{
   public function __construct(AuthManager $auth, Repository $config, ActivityLogStatus $logStatus)
   {
       parent::__construct($auth, $config, $logStatus);

          // Your logic if the causer is null
          if(empty($this->causedBy)){
              // do something when causer is null.
           }
   }
}

2. Create a new ActivitylogServiceProvider which will extend "Spatie\Activitylog\ActivitylogServiceProvider" and register it in "config/app.php".
Add following code in register method of newly created service provider:

   use App\ActivityLogger;
   use \Spatie\Activitylog\ActivitylogServiceProvider as SpatieActivitylogServiceProvider;

   class ActivitylogServiceProvider extends SpatieActivitylogServiceProvider
   {

       public function register()
       {
           $this->app->alias (ActivityLogger::class, \Spatie\Activitylog\ActivityLogger::class );
       }
   }

This is tested so you should get no issue.

@junaid-A-khan instead of the __construct() I would adjust the getActivity() method https://github.com/spatie/laravel-activitylog/blob/d5fd05eb9edcb2416ada4f1e026d47ee9f8706a3/src/ActivityLogger.php#L189-L200
This does set the init causer - so if you remove this line or adjust the condition when the causer is set yo have a null causer. The construct doesn't have to be executed for every activity log because it's a binded service which you could cache in a variable.

@Gummibeer yes, parent construct call can be removed and I'm sorry, my bad, as I tested it on an old Laravel 5.7 witch has v2.8.
I am going to update previous answer.
Thanks

Because atm it's impossible to set the causer to null and by default it's loaded from the current auth. Is an anonymous() method wanted which forces the activity to have no causer?
activity()
    ->anonymous()
    ->log('my log message');

Doing this for a whole runtime could belong to:

#503
#521
#560

Perhaps we can use,
activity()
    ->causedByAnonymous()
    ->log('my log message');

or
activity()
    ->causedBy('SYSTEM')
    ->log('my log message');

or
activity()
    ->causedBy(ActivityCauserInterface)
    ->log('my log message');

I had a look today at a possible solution introducing an AnonymousCauser model which should function as a "null object". Therefore, I would propose the following PR: #603 , though I have some doubt if this approach is suitable.

https://github.com/spatie/laravel-activitylog/releases/tag/3.9.0


attributes_for returns reference to defined value

I'm not sure if this is the expected behavior or not, but it is possible to manipulate values returned by attributes_for, which will then be returned when calling the method again.
Example
require 'factory_girl'
require 'json'
include FactoryGirl::Syntax::Methods

class Test
end

FactoryGirl.define do
  factory :test do
    body JSON.parse('{"key": "value"}')
  end
end

a = attributes_for(:test)
puts "a: #{a}"

attrs = attributes_for(:test)
attrs[:body].merge!("key" => :other)
b = attrs
puts "b: #{b}"

c = attributes_for(:test)
puts "c: #{c}"

attrs = attributes_for(:test) do |_attrs|
  _attrs[:body].merge!("key" => :whut)
end
d = attrs
puts "d: #{d}"

e = attributes_for(:test)
puts "e: #{e}"

Result
$ ruby fg_test.rb
a: {:body=>{"key"=>"value"}}
b: {:body=>{"key"=>:other}}
c: {:body=>{"key"=>:other}}
d: {:body=>{"key"=>:whut}}
e: {:body=>{"key"=>:whut}}

This can of course be prevented with body {JSON.parse('{"key": "value"}')} but to me it was not expected.

@joenas yes, you're correct - because virtually everything in Ruby is mutable, it's easy to demonstrate this behavior with arrays, hashes, and strings (since those are the easiest to mutate). By wrapping the attribute in a block, it's evaluated every time the factory is run, meaning that the underlying data structure can't be mutated.
I've actually considered disallowing non-lazy attributes so developers aren't bitten by this, but it's a massive (breaking) change that likely also has performance implications.


VS Code Setup for MNE should be more detailed

Proposed documentation enhancement
Proposed Documentation Enhancement
While going through the MNE setup for VS Code, the documentation felt very vague as it just mentions the link to VS code and says the following line: you need to tell the VS Code Python extension where to find the respective Python executable
Which feels this entire process should be divided step by step and a few pictures could be added instead of a line like: Using Python: /some/directory/mne-python_1.0.0_1/bin/python because that some/directory can be confusing for first time user or people that do not use terminal very frequently.
Visual representation for example could be more helpful like:

Can we close as a dup of https://github.com/mne-tools/mne-installers/issues/170#issue-1583813508 ?

Can we close as a dup of mne-tools/mne-installers#170 (comment) ?

Sure!


Merge particule/individual classes

Types of changes

[x] Docs change / refactoring / dependency upgrade
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Motivation and Context / Related issue
Long term aim is to make Individual and Candidate converge

How Has This Been Tested (if it applies)

Checklist

[x] The documentation is up-to-date with the changes I made.
[x] I have read the CONTRIBUTING document and completed the CLA (see CONTRIBUTING).
[x] All tests passed, and additional code has been covered with new tests.

#227


fail() not triggered when runLocally errors

Q
A

Issue Type
Bug

Deployer Version
6.0.3

Local Machine OS
N/A

Remote Machine OS
N/A

task('my:task', function () {
  runLocally('scp my.tar.gz $host:{{release_path}}'); // this fails, e.g. because of permission problems
});
fail('my:task', 'my:failed');

task('my:failed', function() {
    notify_hipchat('(boom) '. gethostname() .': failed');
})->setPrivate();

fail() seem not to be invoked when inner commands fail (reproduced it with runLocally, I guess the same problem exists with invoke()

On 6.0.3 everething working:
dep my:task -vvv
➤ Executing task my:task
[a] > if [ -h ~/Desktop/release ]; then echo 'true'; fi
[a] < ssh multiplexing initialization
[a] < ssh: Could not resolve hostname a: nodename nor servname provided, or not known
➤ Executing task my:failed
(boom) MacBook.local: failed
• done on [a]
✔ Ok [1ms]

  [Deployer\Exception\RuntimeException (-1)]
  The command "if [ -h ~/Desktop/release ]; then echo 'true'; fi" failed.
  Exit Code: -1 (Unknown error)
  Host Name: a
  ================
  ssh: Could not resolve hostname a: nodename nor servname provided, or not known

hmm seems like I reduced the testcase too much.
my real world case is
[localhost] > scp relaunch.tar.gz myuser@ci16:/www/www/apps/relaunch/releases/22
  [Symfony\Component\Process\Exception\ProcessTimedOutException]
  The process "scp relaunch.tar.gz complexit@ci16:/www/www/apps/relaunch/releases/22" exceeded the timeout of 300 seconds.

Exception trace:
 () at phar:///usr/local/bin/dep/vendor/symfony/process/Process.php:1332
 Symfony\Component\Process\Process->checkTimeout() at phar:///usr/local/bin/dep/vendor/symfony/process/Process.php:421
 Symfony\Component\Process\Process->wait() at phar:///usr/local/bin/dep/vendor/symfony/process/Process.php:216
 Symfony\Component\Process\Process->run() at phar:///usr/local/bin/dep/vendor/symfony/process/Process.php:242
 Symfony\Component\Process\Process->mustRun() at phar:///usr/local/bin/dep/src/Utility/ProcessRunner.php:39
 Deployer\Utility\ProcessRunner->run() at phar:///usr/local/bin/dep/src/functions.php:321
 Deployer\runLocally() at /cluster/www/www/www/kunzmann_relaunch/deploy.php:87
 Deployer\Deployer::Deployer\{closure}() at n/a:n/a
 call_user_func() at phar:///usr/local/bin/dep/src/Task/Task.php:105
 Deployer\Task\Task->run() at phar:///usr/local/bin/dep/src/Executor/SeriesExecutor.php:63
 Deployer\Executor\SeriesExecutor->run() at phar:///usr/local/bin/dep/src/Console/TaskCommand.php:142
 Deployer\Console\TaskCommand->execute() at phar:///usr/local/bin/dep/vendor/symfony/console/Command/Command.php:264
 Symfony\Component\Console\Command\Command->run() at phar:///usr/local/bin/dep/vendor/symfony/console/Application.php:869
 Symfony\Component\Console\Application->doRunCommand() at phar:///usr/local/bin/dep/src/Console/Application.php:132
 Deployer\Console\Application->doRunCommand() at phar:///usr/local/bin/dep/vendor/symfony/console/Application.php:223
 Symfony\Component\Console\Application->doRun() at phar:///usr/local/bin/dep/vendor/symfony/console/Application.php:130
 Symfony\Component\Console\Application->run() at phar:///usr/local/bin/dep/src/Deployer.php:324
 Deployer\Deployer::run() at phar:///usr/local/bin/dep/bin/dep:119
 require() at /usr/local/bin/dep:4

clx:deploy [-p|--parallel] [-l|--limit LIMIT] [--no-hooks] [--log LOG] [--roles ROLES] [--hosts HOSTS] [-o|--option OPTION] [--] [<stage>]

maybe its related to the symfony timeout happening

Can you add self containing deploy.php to test?

see
<?php
namespace Deployer;

use Deployer\Task\Context;

require 'recipe/common.php';

host('XX.YY.41.116')
  ->set('deploy_path', '/www/test/relaunch/testdeployer')
  ->user('XXX')
  ->stage('staging');

host('ci16')
  ->set('deploy_path', '/www/apps/relaunch')
  ->user('XXX')
  ->stage('ci')
//  ->addSshFlag('-vv') /*ssh debug mode*/

;

set('allow_anonymous_stats', false);
set('keep_releases', 10);

set('composer_command', 'composer install --verbose --no-progress --no-interaction --no-dev --optimize-autoloader');
set('grunt_command', function() {
    if (Context::get()->getHost()->get('stage', '') == 'production') {
        return 'grunt prod';
    }
    return 'grunt';
});
set('delete_node_modules', function() {
    // delete node_modules/ only when deploying into production.
    // on dev vms node_modules/ contains "grunt" etc. which would otherwise be lost
    if (Context::get()->getHost()->get('stage', '') == 'production') {
        return true;
    }
    return false;
});

desc('Build the project and its dependencies.');
task('clx:build', function() {
    $projectPath = __DIR__;
    $projectName = basename(__DIR__);

    if (!file_exists(__DIR__ .'/composer.json')) {
        throw new \Exception('Build can only be triggered from the project root.');
    }

    runLocally('{{composer_command}}');
    runLocally('npm install');
    runLocally('{{grunt_command}}');
    if (get('delete_node_modules')) {
        runLocally('rm -rf node_modules/');
    }
    // If you really don't want to include top directory in the tarball
    // "." means all files, including hidden ones (.svn,..)
    runLocally('tar -czf ../'.$projectName.'.tar.gz .');
});

desc('Deploys a already built project onto a remote server');
task('clx:release', function () {
    $projectPath = __DIR__;
    $projectName = basename(__DIR__);
    $releaseTar = $projectPath.'/../'. $projectName .'.tar.gz';

    if (!file_exists($releaseTar)) {
        throw new \Exception('Missing release-tar in '. $releaseTar .', did you clx:build successfully beforehand?');
    }

    // create basic folder structure
    invoke('deploy:prepare');
    // make sure only 1 "release process" can run at a time
    invoke('deploy:lock');

    // Clean up unfinished releases and prepare next release.
    invoke('deploy:release');

    // XXX upload() gets stuck sometimes
//    upload($releaseTar, '{{release_path}}');
    $host = Context::get()->getHost();
    runLocally('scp '. $releaseTar ." $host:{{release_path}}");
    cd('{{release_path}}');
    run('tar -xvf '. $projectName .'.tar.gz');
    run('rm '. $projectName .'.tar.gz');

    // activate the uploaded app
    invoke('deploy:symlink');
    // clear php-opcache/apache-apc/memcached/phpwsdl-file-cache
    run('sudo apachectl configtest && sudo apachectl graceful');
    run('sudo service memcached restart');
    run('sudo rm -f /tmp/wsdl*');
    // Cleaning up old releases
    invoke('cleanup');
    // cleanup our temporary stuff
    invoke('clx:cleanup');
    invoke('success');

    notify_hipchat('(goldstar) '. gethostname() .': deployed '.$projectName. ' on '. $host->getHostname());
});

// we dont automatically unlock on errors, as LOCK errors should not occur and need investigation
after('success', 'deploy:unlock');
fail('clx:build', 'clx:failed');
fail('clx:release', 'clx:failed');

// shortcut, do all required steps at once
desc('All in one: Build the project and deploy it onto a remote server');
task('clx:deploy', [
    'clx:build',
    'clx:release',
])->shallow();

desc('Check version/release infos on the remote server');
task('clx:remote_info', function() {
    cd('{{current_path}}');
    run('svn info');
});

// ------------- private helpers

task('clx:failed', function() {
    $projectName = basename(__DIR__);
    $host = Context::get()->getHost();

    notify_hipchat('(boom) '. gethostname() .': failed '.$projectName. ' on '. $host->getHostname());
})->setPrivate();

task('clx:cleanup', function() {
    $projectPath = __DIR__;
    $projectName = basename(__DIR__);

    runLocally('rm -f ../'.$projectName.'.tar.gz');
})->setPrivate();

function notify_hipchat($message) {
    $json = json_encode(array(
       'color' => 'green',
       'message' => $message,
       'notify' => 'false',
       'message_format' => 'text'
    ));

    $curl = array();
    $curl[] = 'curl -d \''. $json .'\'';
    $curl[] = "-H 'Content-Type: application/json'";
    $curl[] = "https://clx.hipchat.com/v2/room/4362149/notification?auth_token=Mmyyyytoken";
    $curl[] = "2>&1";

    shell_exec(implode(' ', $curl));
}

was able to reduce it further:
<?php

namespace Deployer;

require 'recipe/common.php';

task('outer-task', [
    'my:task'
])->shallow();

task('my:task', function () {
    invoke('my:task2');
});
task('my:task2', function () {
    throw new \Exception("boom");
});
fail('my:task', 'my:failed');

task('my:failed', function() {
    echo ('(boom) '. gethostname() .': failed');
})->setPrivate();

even if task fails (because its inner task2 fails) the "failure" handler is not executed
mstaab@mst16:/tools/dev/deploytest$ dep outer-task -vvv
➤ Executing task my:task
➤ Executing task my:task2

  [Exception]
  boom

Exception trace:
 () at /tools/dev/deploytest/deploy.php:16
 Deployer\Deployer::Deployer\{closure}() at n/a:n/a
 call_user_func() at phar:///usr/local/bin/dep/src/Task/Task.php:105
 Deployer\Task\Task->run() at phar:///usr/local/bin/dep/src/Executor/SeriesExecutor.php:63
 Deployer\Executor\SeriesExecutor->run() at phar:///usr/local/bin/dep/src/functions.php:405
 Deployer\invoke() at /cluster/www/www/www/tools/dev/deploytest/deploy.php:13
 Deployer\Deployer::Deployer\{closure}() at n/a:n/a
 call_user_func() at phar:///usr/local/bin/dep/src/Task/Task.php:105
 Deployer\Task\Task->run() at phar:///usr/local/bin/dep/src/Executor/SeriesExecutor.php:63
 Deployer\Executor\SeriesExecutor->run() at phar:///usr/local/bin/dep/src/Console/TaskCommand.php:142
 Deployer\Console\TaskCommand->execute() at phar:///usr/local/bin/dep/vendor/symfony/console/Command/Command.php:264
 Symfony\Component\Console\Command\Command->run() at phar:///usr/local/bin/dep/vendor/symfony/console/Application.php:869
 Symfony\Component\Console\Application->doRunCommand() at phar:///usr/local/bin/dep/src/Console/Application.php:132
 Deployer\Console\Application->doRunCommand() at phar:///usr/local/bin/dep/vendor/symfony/console/Application.php:223
 Symfony\Component\Console\Application->doRun() at phar:///usr/local/bin/dep/vendor/symfony/console/Application.php:130
 Symfony\Component\Console\Application->run() at phar:///usr/local/bin/dep/src/Deployer.php:324
 Deployer\Deployer::run() at phar:///usr/local/bin/dep/bin/dep:119
 require() at /usr/local/bin/dep:4

outer-task [-p|--parallel] [-l|--limit LIMIT] [--no-hooks] [--log LOG] [--roles ROLES] [--hosts HOSTS] [-o|--option OPTION] [--] [<stage>]

I think it's because of invoke('my:task2');
Also note what invoke is an @exparemental:
https://github.com/deployphp/deployer/blob/master/src/functions.php#L399

oh my. the only way to use deployer without invoke is to make all codes a task and call it in series I guess?
like
task('my:task', [
    'my:task1',
    'my:task2',
])->shallow();

etc?
didn't expect such a rough and error prone api, to be honest :-/

oh my. the only way to use deployer without invoke is to make all codes a task and call it in series I guess?
like
task('my:task', [
    'my:task1',
    'my:task2',
])->shallow();

etc?
didn't expect such a rough and error prone api, to be honest :-/.
thx for your time and analysis on this.


[doc][chinese] Update and fix errors in chinese documentation

Tips

Thank you very much for contributing to Apache Hudi.
Please review https://hudi.apache.org/contributing.html before opening a pull request.

What is the purpose of the pull request
Update and fix errors in chinese documentation
Brief change log
Update and fix errors in chinese documentation
Verify this pull request
(Please pick either of the following options)
This pull request is a trivial rework / code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end.
Added HoodieClientWriteTest to verify the change.
Manually verified the change by running a job locally.

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Thanks for opening this PR @SuXingLee ! Looks good overall, only left some minor comments.


Lazy load chunk in FastCompaction

Description
When an aligned chunk can be directly flushed into target file writer, read the data of chunk from disk only when it is necessary

Need talk more before merging

Another version (Lazy load chunk and page): https://github.com/apache/iotdb/compare/master...shuwenwei:iotdb:lazy_load_chunk_and_page_in_fast_compaction?expand=1


I'm creating a bot application for Microsoft Teams which respond to user with adaptive cards. Now when the user is trying to use immersive reader to read the message aloud, the reader is not picking the card text.  Is there any way that will allow immersive reader to read card details?

Thanks for reporting this., we are looking into this .

@ashwinikulk We have a bug for this and we are tracking it internally.


REST API Documentation

I can't find the REST API documentation for Alertmanager. Am I missing something? Is this somewhere documenten?

A minimum document is available at https://prometheus.io/docs/alerting/clients/.
I think it's enough to make client to send alerts.

Thanks for this, but I was actually looking for how to manage "silences".
I want to programmatically silence alerts during the application deployment. For now, I'm figuring this out by looking at the XHR payloads of the GUI.

The current API is not documented as it is subject to change, which
hopefully happens within Q4.
We don't provide any stability guarantees around the current API but will
for the next one.
That said, if you want to add documentation, PRs are more than welcome in
prometheus/docs if decorated with a disclaimer on the instability.
On Wed, Sep 21, 2016 at 5:55 PM Karel Maesen<EMAIL_ADDRESS>wrote:

Thanks for this, but I was actually looking for how to manage "silences".
I want to programmatically silence alerts during the application
deployment. For now, I'm figuring this out by looking at the XHR payloads
of the GUI.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/alertmanager/issues/511#issuecomment-248656567,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEuA8s_3HIo_0QoOhxm9BJcopfkj-rb5ks5qsVNcgaJpZM4KC9Y9
.

Hi
Any update about documentation of AlertManager REST API?

+1

@it-praktyk @wangycc This is still on our road-map but we are too occupied with the current stabilization work and UI rewrite at the moment. In addition it is still subject to change.
I think most of the API can be understood by reading the source code. Feel free to ping us if you have any questions here.
Of course as always we are very happy for PRs. I am sorry for this disappointing reply.

Do you have any standard for describing of REST APIs?
If not is it the OpenAPI Specification/Swagger RESTful API Documentation Specification OK?

@it-praktyk a swagger documentation sounds like a good idea. There were plans to use the GRPC gateway and auto generate a swagger documentation, but this is still to be determined.
Please wait for @fabxc approval.

+1

+1

@mxinden

Please wait for @fabxc approval.

Lack of @fabxc it's a proof (not only one, based on my experience in work with Prometheus) that documentation is not important for the core development team.
I'm not interested to do that work now. I stopped work with Prometheus some times ago.

I really need it. Otherwise, I can not silence everything what I need during deploy by ansible

This isn't currently very high priority, unfortunately. My recommendation is to read the code https://github.com/prometheus/alertmanager/blob/master/api/api.go#L131-L134 (it has been fairly stable), or to use the cli amtool assist you. amtool has its own documentation built in.

+1
Hopefully it has impact on priority :-)

You have to POST to the api to create a silence, which I believe is not technically RESTful.  It also means you have to embed a form in the alert email rather than just providing a link to create a silence.  Anyway, here is an example curl command to create a silence:
curl -H "Content-Type: application/json" -X POST -d '{"comment": "test1","createdBy": "test1","endsAt": "2019-02-20T18:00:59.46418637Z","matchers": [{"isRegex": false,"name": "severity","value": "critical"},{"isRegex": false,"name": "job","value": "prometheus"},{"isRegex": false,"name": "instance","value": "localhost:9090"},{"isRegex": false,"name": "alertname","value": "InstanceDown"}]}' http://alerts.example.org:9093/api/v1/silences

The command from @kylebevans returns a status and silenceId (sid). It can also be found in the silenced alert URL. This can then be used to delete a silence (note v1/silence vs. v1/silences):
curl -X DELETE http://alerts.example.org:9093/api/v1/silence/<silenceId>

+1

Discussion on introducing an OpenAPI generated Alertmanager API v2 with generated documentation: https://groups.google.com/forum/#!topic/prometheus-developers/2CCuFTMbmAg
Respective PR: https://github.com/prometheus/alertmanager/pull/1352
Feedback is very welcome.

@ajayagrawal7 Please do not hijack this thread. In addition this is a usage question. Please open it up on the prometheus-users mailing list.

We use an internal overview tool (amongst other tools) to view data from Prometheus, Icinga2 alerts and other sources. I'd like to be able to pull back data from Alertmanager. Is the plan to keep the current semi-documented API, and develop a new one under /v2? Or will the current one have breaking changes in an update?

@iDemonix I guess that http://alerta.io/ could help you in this case.

@iDemonix yes, the new API v2 will live alongside the old API v1 for now. But we are planning on deprecating v1 in future versions.
I expect https://github.com/prometheus/alertmanager/pull/1352 soon to merge. Have you tried generating a client via the OpenAPI specification? We don't give any stability guarantees on the new API, but given the scope and the autogeneration possibility, adjusting to change in your internal tool should be fairly simple.

Closing as the API v2 is now merged and released.

So where is the documentation?

So where is the documentation?

The README links to a HTML version of the specification.

Many thanks.

curl -X DELETE http://alerts.example.org:9093/api/v1/silence/

is there a way to get the silence ID alone after posting a silence.

@addy3494 API v2 returns the silence ID of the newly created silence: https://github.com/prometheus/alertmanager/blob/master/api/v2/openapi.yaml#L83.
Please use the prometheus-users mailing list for questions of this kind in the future. https://prometheus.io/community/

Is there any API available to add/modify/delete the routes/receivers in the alertmanager.yaml? If not, any suggestions on how to automate it?

@maskayman make a script/program that rewrites alertmanager.yaml and reloads alertmanager?

Alertmanager REST API
Go to https://editor.swagger.io/
File Import File -  (https://github.com/prometheus/alertmanager/blob/master/api/v2/openapi.yaml)
Use raw link for import of openapi.yaml https://raw.githubusercontent.com/prometheus/alertmanager/master/api/v2/openapi.yaml
You will get all the documentation you need and also you can create client codes from the same page.

this: https://github.com/prometheus/alertmanager/blob/master/api/v2/openapi.yaml


Fix Swift Package

Package.swift is not compatible with swift package manifest.
swift tools version declaration must be on top of the file.

thnx

thnx world


Suggestion

Hi there,
Thank you for the good job
I think TypeMill is the faster and easy CMS currently.
It would be awesome if I could assign a style template to each separate page and post like Automad make. (I dont like Automad becasue is complicated, slow and heavy, but I recognize that the option of being able to assign independent style templates to each post separately is its great advantage)
I just wanted to suggest that with that option for my TypeMill it would be perfect :)

Sorry, for late answer (I was busy with version 2 of typemill) and thank you for your feedback!
Yes, you are right, everything has its downsides and upsides. Automad is probably a bit more complicated, but it indeed provides much more flexibility in design and layout than Typemill, that is the "selling point" of Automad I think.
I did not try yet, but it might be possible to assign different styles to individual pages without touching Typemill core. You can probably do that entirely on the theme level, but it requires to develop a new theme. The idea is:

Add a select-box to the meta-tab with some template names (you can easily do it in the yaml-file of a theme).
Then check the choosen template on each page and load the styles for the page accordingly.

I did not test it so far and (again) it requires the development of an individual theme, but that is the way to try it.

All right.
If is easy.... Will be great if TypeMill 2 will include
Thanks :)


add search button in profile page

Signed-off-by: Venkatesh-rengasamy<EMAIL_ADDRESS>:nut_and_bolt: Description: What code changed, and why?
Add search-button in profile page under compliance tab.

:chains: Related Resources
:+1: Definition of Done
Added search-button in profile page.
:athletic_shoe: How to Build and Test the Change
inside the hab studio
[default:/src:0]# build components/automate-ui-devproxy/
[default:/src:0]# start_automate_ui_background
[default:/src:0]# start_all_services
STEP 2
open new window
go to automate UI path
$ cd components/automate-ui
and run the command
npm run serve:hab
Steps for preview screen:
Go To Compliance -> Profiles -> You can see a search-button is added with search box -> type the search text and click the search-button -> you get the filtered list of profiles.
:white_check_mark: Checklist
All PRs must tick these:

[x] I have read the CONTRIBUTING document.
[x] All commits signed-off for the Developer Certification of Origin.

With occasional exceptions, all PRs from Progress employees must tick these:

[x] Is the code clear? (complicated code or lots of comments--subdivide and use well-named methods, meaningful variable names, etc.)
[x] Consistency checked? (user notifications, user prompts, visual patterns, code patterns, variable names)
[x] Repeated code blocks eliminated? (adapt and reuse existing components, blocks, functions, etc.)
[x] Spelling, grammar, typos checked? (at a minimum use make spell in any component directory)
[x] Code well-formatted? (indents, line breaks, etc. improve rather than hinder readability)

All PRs from Progress employees should tick these if appropriate:

[ ] Tests added/updated? (all new code needs new tests)
[ ] Docs added/updated? (all customer-facing changes)

Please add a note next to any checkbox above if you are NOT ticking it.
:camera: Screenshots, if applicable

These changes are already merged into Main branch. Hence closing this PR.


Bug: ImportError of ModelFactory

Description
I am importing ModelFactory and get an error when starting the application about ImportError
URL to code causing the issue
No response
MCVE
# from polyfactory.factories.pydantic_factory import ModelFactory

Steps to reproduce
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

Screenshots

Logs
from polyfactory.factories.pydantic_factory import ModelFactory
  File "/home/user/.cache/pypoetry/virtualenvs/message-proccesor-imlqFjNq-py3.10/lib/python3.10/site-packages/polyfactory/__init__.py", line 2, in <module>
    from .factories import BaseFactory
  File "/home/user/.cache/pypoetry/virtualenvs/message-proccesor-imlqFjNq-py3.10/lib/python3.10/site-packages/polyfactory/factories/__init__.py", line 1, in <module>
    from polyfactory.factories.base import BaseFactory
  File "/home/user/.cache/pypoetry/virtualenvs/message-proccesor-imlqFjNq-py3.10/lib/python3.10/site-packages/polyfactory/factories/base.py", line 859, in <module>
    _register_builtin_factories()
  File "/home/user/.cache/pypoetry/virtualenvs/message-proccesor-imlqFjNq-py3.10/lib/python3.10/site-packages/polyfactory/factories/base.py", line 854, in _register_builtin_factories
    import_module(module)
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/home/user/.cache/pypoetry/virtualenvs/message-proccesor-imlqFjNq-py3.10/lib/python3.10/site-packages/polyfactory/factories/attrs_factory.py", line 20, in <module>
    T = TypeVar("T", bound=attrs.AttrsInstance)
AttributeError: module 'attrs' has no attribute 'AttrsInstance'

Release Version
polyfactory = "^2.8.1"
Platform

[X] Linux
[ ] Mac
[ ] Windows
[ ] Other (Please specify in the description above)

Funding

If you would like to see an issue prioritized, make a pledge towards it!
We receive the pledge once the issue is completed & verified

What version of attrs do you have installed?

What version of attrs do you have installed?

21.4.0

Hm..so we have a minimum version of attrs that is needed for our AttrsFactory implementation to work huh? I'm going to reopen this so that we can find a fix for that. I think there are two options:

pin attrs to a minimum version
change the AttrsFactory implementation to support the older versions

I just checked and it seems the AttrsFactory only works for version 23+. @Goldziher, should we do a release with the minimum requirements for attrs being set to 23.1.0?

I just checked and it seems the AttrsFactory only works for version 22.4+. @Goldziher, should we do a release with the minimum requirements for attrs being set to 22.4.0?
UPDATE: The current tests will fail for 22.4, but that is due to the tests themselves being only suitable for v23+ and not an issue with AttrsFactory. If the tests are changed to use the correct API as per 22.4, then the tests do pass for all versions from 22.4 onwards.

Yes pls

This is still not resolved as stated here.
Quoting it here for reference:

Unfortunately this is not a complete fix. I have project and use polyfactory with pydantic. Attrs package is included, because of other dependencies (I personally don't use it and have no direct dependency). When running unit tests I still get error AttributeError: module 'attrs' has no attribute 'AttrsInstance'. The version is kept low because one of my dependency wants lower version.


Display build status of master branch

Lol, just noticed that we displayed build status of project itself which includes PR branches and actually displays last build status which may not correspond to state of master branch at all!
@vanniktech PTAL

Ups. Nice change! :+1:

:cat2:


⚠ Bofrost.at has degraded performance

In cc81ed4, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 982 ms

Resolved: Bofrost.at performance has improved in 09df87b.


[AMBARI-23177] Yarn-MR separation and minor deployment fixes

Checkstyle failure for RepoDefinitionEntity.java
MR is set as hidden services
py script uses cluster env instead of cluster settings

(Please fill in changes proposed in this fix)
Deploy zookeeper using new mpacks
(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)
Please review Ambari Contributing Guide before opening a pull request.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/1035/
Test FAILed.
Test FAILured.


KafkaJSNumberOfRetriesExceeded: Timeout while acquiring lock at Object.send

KafkaJSNumberOfRetriesExceeded: Timeout while acquiring lock at Object.send

Using KafkaJS v1.3.1.
Upgraded a microservice to use KafkaJS (instead of no-kafka), and after running fine for ~5 days, requests to produce messages are now throwing the error above. Not sure why this is happening.
I saw some other closed issues for the same error when a broker disconnects/reconnects. Could it be the same issue?

We made several improvements on this, can you upgrade to 1.4.1?

Already in progress of updating!

Updated to 1.4.1 and haven't seen any issues yet. I'll re-open if they issues crop back up.


Fix online followers counter

Current online followers counter is completely wrong.
I've tried using m_policy.num_peers() [aka torrent_status::list_peers] but it doesn't work. This number may get really big with all peers that have been known at some point so it is completely unreliable for this application.
A better estimation is needed.
note: torrent::dht_announce() is where the value is passed to m_ses.m_dht->announce.

To fix that, I propose to change the paradigm... I explain myself : I'm not sure the followers counter is the most pertinent value. On twitter, we know that someone can have a lot of followers but not a lot of readers or active followers. It's not a very good indicator.
So maybe we can try to do better and to implement a kind of influence indicator (like Klout). It could be a skilful calculation based on peers number, peers activity, twists number, retwists number, last twist date, etc. This could be updated every 24 hours for example.
I don't know twister very well, so there are probably a better way to do that, but it's just a proposition to think together.
What do you think?


Not working on iOS

Hi,
I have an issue with the latest version of fluid player.
I included the player on our website. There is a preroll video (managed with a proper VAST xml file). But on iOS the player goes into infinite loading when I click on the play-button.
On Android smartphones it works nicely.
When I check firebug I get the following error code in the console:
QuotaExceededError: DOM Exception 22: An attempt was made to add something to storage that exceeded the quota.
(fluidplayer.min.js?ver=4.9.8:1)

Anybody who has an idea what the bugfix could be?
the URL for the website is www.medienmanager.at
Thanks a lot!
BR, George

just update your IOS to latest version or safari to 11 version.
https://stackoverflow.com/questions/21159301/quotaexceedederror-dom-exception-22-an-attempt-was-made-to-add-something-to-st

Hi gibigate, Thanks for your fast answer!
I tried it now with an iPhoneX+Safari11 but the problem is there too. But I have to admit, that I cannot access the console on that device.
Could there be any other solution for this?

To the best of my knowledge there is no fix to this - but I will add test code to check if this bug is present in the browser and bail if so detected.


task2

[ ] Turn on GitHub Pages
[ ] Outline my portfolio
[ ] Introduce myself to the world
[ ] drink some coffee

great work


Splitting changelogs for each minor version

What type of PR is this?
/kind cleanup
/kind documentation
What this PR does / why we need it:
This splits changelogs for each minor version (similar to https://github.com/kubernetes/kubernetes/tree/master/CHANGELOG), and adds the concept of a release team (to be linked from k8s blog posts as authors, similar to https://kubernetes.io/blog/2024/04/17/kubernetes-v1-30-release/). I'm not completely sure about this approach yet, so feedback is very welcome.
Does this PR introduce a user-facing change?:
NONE

/cc @candita @youngnick

/lgtm


Add Spanish locale

Just discovered your project and I love it, I would like to contribute.
At the time being it's just the Spanish translation because I don't really know much about React Native specifically yet but your code is clean so I might try to help adding features/fixes when I have some free time if that's fine to you.
Thanks for your work

Allright! That's awesome. I'll need to make some last changes and do some testing, before merging it. I'll try and finish all of that this week.
Also, feel free to experiment with some changes. Just send me a message if you run into an issue understanding how everything works.

All available now! Thanks for contributing :)


[BUG] Learning rate scheduler and optimizer logical issue

Describe the bug
The lr_scheduler takes effect after optimizer steps. This is a logical error, since the learning rate of the first optimization step is not generated by lr_scheduler. Concretely, if I initialize with both an optimizer with lr = x and a WarmupDecayLR scheduler with warmup_min_lr=y, then the first step learning rate would be x (instead of y), and then the second step learning rate would be y.
Perm link:
https://github.com/microsoft/DeepSpeed/blob/3d347276ce80e1a29e777c839d1d7fabe8e5f034/deepspeed/runtime/engine.py#L2109C28-L2109C64

@zhourunlong try the linked branch.


Constructor Injection Error

Getting an error Generic type 'NgRedux<RootState>' requires 1 type argument(s). when using the angular-cli starter with a simple constructor injection. Angular version 2.0.0-rc.3 and ng2-redux version 3.2.1-beta.1.
Basically same setup @SethDavenport has here. Tried ng2-redux version 3.2.0 but no dice with her either.

Rad, that fixed it, thanks chief!


UX SLDS updates to Schedule Payments page

Critical Changes
Changes
Issues Closed
New Metadata
Deleted Metadata

**lurch: attach W-029474

Tracking W-029474

Looking pretty good @seanpat09. Question though. Is it possible to align the payments picklist field with the interval fields so they're on the same line visually?

I brought this up to @mpusto in W-029474 that I was worried that I would spin my wheels on this too long and she was ok with the alignment as is.
However, since we're at the end of the sprint I have a little time to dig into this a little more to see if I can find a SLDS friendly way of doing that without just using padding/margin. I worry if just throw some padding/margin in there then a change in SLDS could cause it to look even more unaligned.

@force2b I was able to get the alignment working, it looks much better now!

@seanpat09 What's the status on this PR? Is it going to @rponti-sforg for QA?

@force2b ah my mistake, I forgot to tag @rponti-sforg.
@rponti-sforg this is ready for QA!

QE testing is complete for this PR.
For further testing details, see: https://foundation.lightning.force.com/lightning/r/agf__ADM_Work__c/a2x1E000007fPAbQAM/view
Merging PR and deleting branch.


dev setup questions

Getting some warnings from npm during npm install. I'm not familiar with node.js , so not sure if this is some critical issue and what I should do about it:
`D:\Projects\G14Control\electron-G14Control>npm audit
                   === npm audit security report ===

Run  npm install --save-dev<EMAIL_ADDRESS>to resolve 1 vulnerability
SEMVER WARNING: Recommended action is a potentially breaking change
High            Prototype Pollution
Package         object-path
Dependency of   react-scripts [dev]
Path            react-scripts > resolve-url-loader > adjust-sourcemap-loader
> object-path
More info       https://npmjs.com/advisories/1573
                             Manual Review
         Some vulnerabilities require your attention to resolve

      Visit https://go.npm.me/audit-guide for additional guidance

Low             Regular Expression Denial of Service
Package         braces
Patched in      >=2.3.1
Dependency of   babel-cli [dev]
Path            babel-cli > chokidar > anymatch > micromatch > braces
More info       https://npmjs.com/advisories/786
found 2 vulnerabilities (1 low, 1 high) in 2857 scanned packages
1 vulnerability requires semver-major dependency updates.
1 vulnerability requires manual review. See the full report for details.`

The major vulnerability is from babel, which doesn't actually stay a part of the app after compilation, so it's fine. It's just a part of react-scripts. I get those errors as well.


APPS-315 APPS-63 APPS-288 Operations V2

Redesigned and added descriptive models for Operation objects used in the /v1/operation/  and /v1/execute/ endpoint.  The old API is deprecated and replaced with  /v2/operation/ , and /v2/execute/.  The new /v1/batch endpoint will only support the new models for BatchRead and BatchWrite.
The new models accept a list of ctx items to support nested CDTs.
The openAPI externalDocumentation field is now provided for these new models to point to the appropriate java client java doc page.
All java-client classes to support List and Map operations are now defined with their own swagger models.
Documented previously undocumented HLL and BIT operations.
Updated the openapi.json file.  I would like to automate this in the future, but I don't believe I have permission to edit the workflow to update the GitHub page.
https://aerospike.atlassian.net/browse/APPS-25
https://aerospike.atlassian.net/browse/APPS-63
https://aerospike.atlassian.net/browse/APPS-288

@reugn, I appreciate the quick turnaround.  I committed the fixes you asked for, but unfortunately, the copyright updates are also in there

It would be better to have the code review fixes and copyright + indentation in separate commits.

Yes, sorry, it was an accident that was hard to undo . . .

@reugn and @jdogmcsteezy This pull request replaced jdk8 with jdk17 in test-ready. Previously @reugn had merged into master a change in the base image in #70 . Something is getting confused here. Could be test-ready vs merge into master.


Question about Dataset

Hi, Thank you for your impressive work. I am new to NuPlan and i noticed the dataset 1.1 is huge.
I was wondering do we need to download all archives or part of the dataset would enable training process? eg. mini dataset?  I also wonder if we need sensor_blobs at all since they are raw sensor data?

Hi, @hz3014. You can download any part of the dataset to train the model (the mini dataset is fine but I think it is a little small), and we don't need sensor_blobs data.


Release 2.0

@lumoe please add anything you want to have done until 2.0 can be released as todo-items here.

[ ] Update README with contribution, also mentioned in: https://github.com/lumoe/obsidian-rollover-daily-todos/issues/84

The variable normalizedFolder is not used anywhere! The variable and the method can both be removed.
in which branch did I add that method?

The variable normalizedFolder is not used anywhere! The variable and the method can both be removed.
in which branch did I add that method?

I mistakenly added it. Removed the unused function and variable.

[ ] Add setting that allows to disable the automatic rollover of ToDos. https://github.com/lumoe/obsidian-rollover-daily-todos/issues/34

I actually see value in adding such a feature as people, as it leaves the decision to the user.

Considering the frequent issues that are hard to debug and then suddenly resolve or never resolve. @tim-hilt what do you think about adding a debug flag in the settings that enables extensive logging on the console? I checked other plugins and have not yet found one that implements that, so I am not sure if is bad practice.
Also, adding a GitHub template for issues where we describe the information that is required to debug the issue would be very helpful.

@lumoe I would rather write extensive logs by default. They shouldn't harm anyone. For #90, I don't know if it's even our job to resolve this, because other plugins might be at play. I can't reproduce the issue that the two users are describing and I've gone to great lengths in trying that. Maybe we don't even need more logging and can just keep resolving issues as they pop up.

Is there any timeline for this release?

What is the state of this release-2.0 branch? There doesn't seem to be any movement on it recently.
I've been using it for ages since it supports the multiple-headings, although I still have to roll over TODOs manually.

What is the state of this release-2.0 branch? There doesn't seem to be any movement on it recently.
I've been using it for ages since it supports the multiple-headings, although I still have to roll over TODOs manually.

Hey @talios,
I was frustrated with this so I wrote a replacement for this project, see: https://github.com/Newbrict/obsidian-obligator
Hope that helps.


configurable-passwordDB

The enablePasswordDB flag is now configurable
Updated the unit test to cover the new configuration

Hey @alhama7a, thanks for the contribution!
I tried to look up this feature but didn't see a lot of documentation in Dex's docs.  Can you explain how it works?  I understand the way to enable it and that seems good, but I'm not sure how a user interacts with this feature once it is enabled.
ty!

Hey @alhama7a, thanks for the contribution!
I tried to look up this feature but didn't see a lot of documentation in Dex's docs. Can you explain how it works? I understand the way to enable it and that seems good, but I'm not sure how a user interacts with this feature once it is enabled.
ty!

Hi @ca-scribner
AFAIK, the enablePasswordDB option allows dex to store the static-passwords in it's configured data store (e.g. etcd or MySQL).
If the enablePasswordDB is disabled and static-passwords are provided in the config, then dex will complain and raise an error.
 if not enablePasswordDB: then users that are defined under static-passowrds won't be able to authenticate. In this case, a centralized IAM such as LDAP must be configured under the connectors section of dex configuration to authenticate and authorize LDAP users via passwords and group assignment respectively. Many thanks for reviewing this PR. Really appreciated.

Ok makes more sense now.  Adding this lets an admin deploying this charm disable the storing of static passwords.
Whoever reviews this more, pay attention to https://github.com/canonical/dex-auth-operator/blob/cdf0f5e7946ce7e02a09c3a1df7bdf973480b4c8/src/charm.py#L126-L135
I wonder if we need to refactor the charm a little to not send a static user at all if this is disabled?

@ca-scribner @i-chvets
Just checking here. What if we change defaults instead of config options.
What is more secure and what is the best UX?

Ok makes more sense now. Adding this lets an admin deploying this charm disable the storing of static passwords.
Whoever reviews this more, pay attention to
https://github.com/canonical/dex-auth-operator/blob/cdf0f5e7946ce7e02a09c3a1df7bdf973480b4c8/src/charm.py#L126-L135
I wonder if we need to refactor the charm a little to not send a static user at all if this is disabled?

I agree. It'd be a good idea to ignore static user config if the enablePasswordDB flag is disabled

@ca-scribner @i-chvets Just checking here. What if we change defaults instead of config options.
What is more secure and what is the best UX?

Sorry for answering a question not addressed to me, but I can't help it. It's just an opinion :)
Setting the enablePasswordDB option to true by default is necessary for both, casual users and enterprise admins, because this is how they will initially authenticate. Casual users will most likely continue to use the static user config. Admins on the other hand, may at some point choose to disable this option for security reasons. That's just my opinion. Looking forward to hearing from @ca-scribner and @i-chvets

hi @alhama7a, thanks for putting the PR
we will need to perform some manual testing and currently we are under the time pressure due to the end of the cycle. We will come back to you right after the sprint

Thanks @beliaev-maksim. I do appreciate how busy your team is; no pressure and thanks for letting me know. Best of luck everyone :+1:

Hi @alhama7a, thanks for your contribution and providing insights on how this configuration option could be used by different types of users.
The team has analyzed having a charm configuration for enabling or disabling the passwordDB, but since this  can be done through the connector configuration (see Dex connectors), having it as a charm configuration may not be the best approach.
Talking about #76, the proposed fix there will actually work: disabling the passwordDB will automatically disable the static username and password login as Dex won't have a store to save them and act as a "virtual" IdP. Yet again, disabling it can be done from the connector configuration.
Because of this, I propose closing this PR and continue the conversation about configuring Dex in #130. Feel free to re-open this PR if any of the statements above do not suffice.

In my previous comment I mentioned the connectors configuration (a Dex concept) could be passed to the charm as a full yaml file that could include configuration options such as enablePasswordDB.
After dicussing with @kimwnasptd about this, we have agreed that the aforementioned approach goes against the core values of charms and have agreed to enable this configuration option to the charm, thus I'm re-opening this PR again and approving.

Thanks @DnPlas. I have updated the files of this PR and re-uploaded them. Please check the tests status in my repo. and also let me know if there are any additional changes are required.

Closing in favour of #149, thanks @alhama7a