How to implement multiple views in the one file?

Hello, I've just got a question.
I've noticed this piece of code at the top of the file, which sets the view and template:
use Phoenix.Swoosh, view: Sample.EmailView, layout: {Sample.LayoutView, :email}
However what if I want to use multiple views and layouts in the same file?
Any help is appreciated :)

https://github.com/swoosh/phoenix_swoosh/blob/master/lib/phoenix_swoosh.ex#L54-L59
You could call put_view and put_layout


docs(toh-5): Fix lack of declaring in a sample code

Fixes https://github.com/angular/angular.io/issues/2096.
HeroDetailComponent was missing in a sample code ( app/app.module.ts (v1) ), so the app didn't work.

@googlebot I signed it!

closed by #2137


YAML Front Matter Support

According to the documentation, the on the configuration has to be in TOML, and page files also have to use TOML front matter.
I understand Gutengerg is an "opinionated static site generator", but I think it would be really helpful to have YAML front matter support in Gutenberg. For a lot of people coming from other systems, YAML might be more familiar and comfortable. They are also put through less hassle while migrating to Gutenberg.
I'm new to Rust, but I'd be happy to learn Rust, and implement this feature and create a PR for it. The yaml-rust library seems like the best fit for the job. What do you think, @Keats?

Hey,
TOML-only is definitely one of the opinion of the opinionated static site generator as you mention.
I only want one language to configure things and YAML/JSON are definitely not suited for that imo (and I'm still unsure what YAML is good for, certainly not being human readable).
So while this won't be acceptd in Gutenberg, you should definitely learn Rust, it's a great experience!

Are you sure YAML is less readable? I find that there are more extraneous characters I need to type.
Just a quick example.
In TOML:
name = "Arjun Menon"

In YAML:
name: Arjun

For strings fields, YAML seems more natural and clean. The absence of the string " quotes and the choice of :  over = is nice. TOML is a bit more reminiscent of code.
And we should keep in mind that most front matter is composed of string fields.
What do you think?

If Gutenberg is really only going to support TOML it might be good to provide a migration that tool that converts YAML to TOML. (If one doesn't exist already.) I could whip one up in Python very quickly.
Another idea I would throw out there is supporting external transformation plugins. If users can keep all their Markdown files changes, and configure a tool that converts YAML to TOML to be transparently run before the file is passed on for processing by Tera & Gutenberg, that would be cool.

Coming from a Ruby background, I have to respectfully disagree.  YAML and TOML used in these situations are so similar that it isn't difficult to learn a new syntax.  While I might like YAML, I think TOML is just fine, and I think it's preferable since it's used elsewhere in Rust.

They are indeed both very similar. One significant issue (which I forgot to mention) is that certain Markdown word processors (like Texts) only supports YAML front matter. This obviously isn't Gutenberg's fault, but people using these word processors would have to wait until they're updated to support TOML before considering the switch to Gutenberg.

Are you sure YAML is less readable?

Definitely. I was working on syntect this week, trying to make some new features of the sublime format work and the Sublime syntaxes use YAML: https://github.com/sublimehq/Packages/blob/master/LaTeX/LaTeX.sublime-syntax for example.
As soon as you have non-trivial objects, it becomes very hard to write correctly. We spent a good 1h trying to debug something in syntect that was actually working but it was just missing some space in the testcase.


Support interval parameter for OHLC request

Default to current default of 1m

Closing this since it should probably be done with an args map like the others

Closing this since it should probably be done with an args map like the others


daily backup ingest chart is not grouping by day

The chart titled "Daily Total Data Protected" is supposed to be grouping for the last 24 hours, but instead is listing multiple data points per day.  Also, the label in the chart legend is not displaying correctly.  Ideally, the daily backup and replication charts will be rolled up into a single chart showing the graphs side by side.

One other improvement to make for the catalog backup history chart.  Split backup and replication of the catalog backup to separate lines.

Committed a new dashboard export to the develop branch which implements the points discussed above.


DisassemblyTextRenderer.get_instruction_annotations is broken

It was a victim of a refactor and now always returns an empty list

Here is a workaround that appears to work:
r = DisassemblyTextRenderer(current_function)
tokens = list(r.get_disassembly_text(here))[0][0].tokens
in_annotation = False
out = ""
for i in tokens:
	if i.type == InstructionTextTokenType.AnnotationToken:
		in_annotation = True
		continue
	if in_annotation:
		out += i.text
print(out)

We should still fix the API, though.


[Dan Dojo] Specific 9_End sections for dan passes

Dan_Fail
Dan_Red_Pass
Dan_Red_FullCombo
Dan_Red_Perfect
Dan_Gold_Pass
Dan_Gold_FullCombo
Dan_Gold_Perfect

Added by #443


Complete story on user and group ids

Northstar uses a hardcoded UID and GID for spawning process and setting file system permissions etc. The goal is to have each application run with a dedicated user (in best case). This requires some thoughts about

Squashfs generation: UIDs/GIDs of the fs image need to be known when creating the image
How does this related to PID namespaces?
Permissions when accessing e.g /dev
Permissions of the rw data dirs provided to applications
Lots of things missing here

Closing this because with static uid/gid settings from the manifest the file ownership question is clear and sextant uses the values defined in the manifest.


localhost:8080/ipfs/ redirects to .ipfs.localhost:8080 which fails on Windows.

OS: Windows
Version of IPFS Desktop: 0.12.2

Describe the bug
Navigating to localhost:8080/ipfs/<CID> redirects me to <CID>.ipfs.localhost:8080 (this is a very good thing for security!), but that address doesn't actually work in my browser.
To Reproduce
Steps to reproduce the behavior:

Install IPFS Desktop on Windows 10.
Navigate to http://localhost:8080/ipfs/QmQy6xmJhrcC5QLboAcGFcAE1tC8CrwDVkrHdEYJkLscrQ
Notice that you were redirected to http://bafybeibhbx3y6tnn7q4gpsous6apnobft5jybvroiepdsmvps2lmycjjxu.ipfs.localhost:8080/
Be sad that you are getting a DNS error in your browser.

Expected behavior
The redirect is expected and desired as it greatly improves the security of running a web application via IPFS.  However, I expected that the domain would resolve correctly.
Additional context
I am aware that I can browser via http://<IP_ADDRESS>:8080/ipfs/<CID>, but that is not secure for running web apps that have important data saved in cookies/local storage.  I very much want to use the subdomains, and the automatic redirect is great.  However, it currently redirects me to a site that doesn't resolve.

@lidel and/or @rafaelramalho19 -- are you able to triage? Thank you!

It appears this works correctly in Chrome, but not in Firefox.

Closing this, as we already have upstream issue (more details there): https://github.com/ipfs/go-ipfs/issues/7527
Workaround for Firefox users is to install IPFS Companion: https://addons.mozilla.org/en-US/firefox/addon/ipfs-companion/ → @MicahZoltu give it a try!


[nlp_data] Add OSCAR Corpus

Description
OSCAR Corpus: https://oscar-corpus.com/
@inproceedings{ortiz-suarez-etal-2020-monolingual,
    title = "A Monolingual Approach to Contextualized Word Embeddings for Mid-Resource Languages",
    author = "Ortiz Su{\'a}rez, Pedro Javier  and
      Romary, Laurent  and
      Sagot, Beno{\^\i}t",
    booktitle = "Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics",
    month = jul,
    year = "2020",
    address = "Online",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/2020.acl-main.156",
    pages = "1703--1714",
    abstract = "We use the multilingual OSCAR corpus, extracted from Common Crawl via language classification, filtering and cleaning, to train monolingual contextualized word embeddings (ELMo) for five mid-resource languages. We then compare the performance of OSCAR-based and Wikipedia-based ELMo embeddings for these languages on the part-of-speech tagging and parsing tasks. We show that, despite the noise in the Common-Crawl-based OSCAR data, embeddings trained on OSCAR perform much better than monolingual embeddings trained on Wikipedia. They actually equal or improve the current state of the art in tagging and parsing for all five languages. In particular, they also improve over multilingual Wikipedia-based contextual embeddings (multilingual BERT), which almost always constitutes the previous state of the art, thereby showing that the benefit of a larger, more diverse corpus surpasses the cross-lingual benefit of multilingual embedding architectures.",
}

Marked it as a good first issue because we have the documentation about how to add a new dataset in https://github.com/dmlc/gluon-nlp/tree/master/scripts/datasets

Hello,
The author of the OSCAR corpus here. After an increased amount of downloads in recent weeks, and continuous abuse by some users I had to take the corpus down (since the server was not capable of handling all that traffic).
We're currently working on transferring all the data to a new infrastructure, but in the meantime, could you wait some weeks in order to add OSCAR to GluonNLP ? All the corpus "distribution" is going to change, so you might loose some work if you add it right now.
Best,
Pedro

@pjox thanks for letting us know, Pedro. Is there anything we can help with in terms of distribution? Let us know!

Hello once again!
We have managed to bring the corpus back online but we had to cut each subcorpora into smaller files and we had to put everything behind a login, however creating an account is free and you can actually use your existing accounts to login.
We're already working on some collaborations to make the corpus even more accessible.
Thank you for your patience.
Best,
Pedro.

Hello @szha and @sxjscience I would like to work on this issue. For starters, I'll first add only 3 languages from the OSCAR Corpus as a prototype and then gradually move to the whole corpus once I get it fully from @pjox.

@utkarshsharma00 thanks for picking it up. Let us know if you need any help.


README.md needs more information

The README.md template doesn't provide enough basic information about the project and what it does.
An example of a format to follow with this is in this README.md template

The basic outline from this template has been applied to the README. Separate and more specific tickets can be applied when needed, such as "Installation needs a detailed description of how to get this up and running". As such, I'm going to close this now.


recommended shared config

Seems to be a common pattern amongst plugins.
Probably should be a combo of errors and warnings?
Also: see #416, probably want the following parser options, too:
  parserOptions: {
    sourceType: 'module',
    ecmaVersion: 6,
    ecmaFeatures: { experimentalObjectRestSpread: true, jsx: true },
  },

@jfmengels this is probably another way to steer users towards static analysis. I have felt like the errors and warnings shared configs were not named clearly, anyway. Probably will keep them since it doesn't hurt, but merge them (or maybe just take errors) for the recommended version.

@jfmengels would love your feedback on what I put together for this

I left some comments in the commit. I'd be happy to discuss it more if you want to. Either in a new issue or in the commit.


feat(firestore-stripe-subscriptions): add Stripe Tax support

Version 0.1.14 - 2021-07-08
[feat] Automatic tax calculation with Stripe Tax - Closes #206
Stripe Tax lets you calculate and collect sales tax, VAT, and GST.

Request access: https://stripe.com/tax#request-access
Set up Stripe Tax in the Dashboard: https://stripe.com/docs/tax/set-up
Enable automatic tax calculation when creating your checkout_sessions docs:

const docRef = await db
  .collection("customers")
  .doc(currentUser.uid)
  .collection("checkout_sessions")
  .add({
    automatic_tax: true, // Automatically calculate tax based on the customer's address
    tax_id_collection: true, // Collect the customer's tax ID (important for B2B transactions)
    price: "price_1GqIC8HYgolSBA35zoTTN2Zl",
    success_url: window.location.origin,
    cancel_url: window.location.origin,
  });

[feat] Redirect to Stripe Checkout via URL instead of Stripe.js - Closes #212
Stripe Checkout now returns a URL which means Stripe.js is no longer needed to redirect to checkout:
const docRef = await db
  .collection("${param:CUSTOMERS_COLLECTION}")
  .doc(currentUser.uid)
  .collection("checkout_sessions")
  .add({
    price: "price_1GqIC8HYgolSBA35zoTTN2Zl",
    success_url: window.location.origin,
    cancel_url: window.location.origin,
  });
// Wait for the CheckoutSession to get attached by the extension
docRef.onSnapshot((snap) => {
  const { error, url } = snap.data();
  if (error) {
    // Show an error to your customer and
    // inspect your Cloud Function logs in the Firebase console.
    alert(`An error occured: ${error.message}`);
  }
  if (url) {
    // We have a Stripe Checkout URL, let's redirect.
    window.location.assign(url);
  }
});

[fix] Add checkout session metadata to one time payments -  Fixes #203

Hi @thorsten-stripe , thanks for all you support. Adding metadata to one time payments is possible. I wanted to know how you could access them when creating user roles? for example with recurring payments, stripeRole : premium is visible in the claims object. But not in one time payments.

Do you need to do anything besides updating the extension and creating links in the dashboard to make it work?

Do you need to do anything besides update the extension and create checkout links in the dashboard to make it work?

Hi @cvoadmin thanks for your reply. I don't mind, as long as it works. I would love it if when a user makes a purchase, the metadata added to the product in stripe (refer to image below):

would be added to firebase, then added to custom claims so that when I run a this function:
`export default async function isUserPremium(): Promise {
await firebase.auth().currentUser?.getIdToken(true);
const decodedToken = await firebase.auth().currentUser?.getIdTokenResult();
return decodedToken?.claims?.stripeRole ? true : false;

}
`
I could give users who have paid (i.e. have a stripeRole) would be able to access parts of my app that only paid users should have access to.

@hesamalavi Sorry, my question was intended for thorsten.

Of course, just realised :)


Adds a StreamInterceptor interface to allow users to plug in custom interceptors for formats like Zstd.

Description of changes:
This library has always had auto-detection of GZIP streams built in, meaning that when users attempt to construct an IonReader from an InputStream or byte[], the given input is checked for the GZIP format header and wrapped in a GZIPInputStream if the header is present.
Now that many users are replacing GZIP with other compression formats like Zstd, we have to decide how to make this library as user-friendly as possible for users making that transition while limiting the amount of special-case code and dependencies that we add to the library.
This PR sketches out one possibility: to define an interface (provisionally named StreamInterceptor) that can be implemented either by users directly, or by external libraries that we vend, to plug in support for any desired format. The PR demonstrates how this mechanism is used by replacing the existing GZIP detection support with support that is delivered via a new GZIPStreamInterceptor implementation.
The  ZstdStreamInterceptorTest demonstrates how a StreamInterceptor that recognizes Zstd streams can be plugged into the IonReaderBuilder and IonSystem. In summary, users that wish to support Zstd would change existing code that looks like
IonReaderBuilder readerBuilder = IonReaderBuilder.standard();

to
IonReaderBuilder readerBuilder = IonReaderBuilder.standard().addStreamInterceptor(ZstdStreamInterceptor.INSTANCE);

and code that looks like
IonSystem ION_SYSTEM = IonSystemBuilder.standard().build();

to
IonSystem ION_SYSTEM = IonSystemBuilder.standard()
    .withReaderBuilder(IonReaderBuilder.standard().addStreamInterceptor(ZstdStreamInterceptor.INSTANCE))
    .build();

Critically, this does not require code changes in every location that an IonReader is constructed, and works with all methods of constructing readers (e.g. IonSystem.newReader variants, IonSystem.singleValue, IonSystem.iterate, IonLoader.load, IonReaderBuilder.build variants, etc.).
Comments on the approach are welcomed.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

I think a bit of working backwards would help inform your design. Thinking out loud, for a customer migrating to new formats, the desired experience would be, in order of preference:

No-op.
Configuration change.
Trivial code change.
Non-trivial code change.

#1 is out due to the desire to limit this library's dependencies and scope.
An example of #2 would be someone else building a new library that wraps ion-java and injects new functionality in a completely transparent way. This could be done with intercepting proxies using an AOP library or java.lang.reflect.Proxy. Customer would add the new library as a dependency without having to make any code changes. While that's cool in theory, ion-java has multiple places where IonReader is constructed, as you mention, so this might be challenging to implement.
#3 is potentially a good tradeoff: if customers are willing to make a small configuration change, they might as well agree to a trivial code change. I think your proposal works well to enable this approach: they add the new library that provides custom ion-java interceptors and they make a low-risk code change where their reader is constructed.
The other aspect of migration is being able to handle both the old gzip format and the new zstd/whatever format. Your proposed design addresses that by supporting multiple interceptors and using the first one that claims a header match. One can think of use cases where chaining more than one interceptor would be beneficial, but I don't know if that's stepping into overengineering territory. Just make sure to avoid a one-way door and leave the opening for future extension.
Another possibly-overengineering point is that not all format detection logic fits into the "fixed header" mold. Sometimes headers are not fixed length, and sometimes they are not headers at all. This works 99% of the time though, so the same comment about avoiding one-way doors.

Please consider discovering interceptors via the services API to make integration as easy as dropping them on the classpath.  It's going to be annoying if one needs to configure these all over, when I expect most of the time a customer will want to enable something for the entire application or application suite.

Revision 2:

Incorporates feedback from @toddjonker about naming, documentation, and class locations.
Allows users to add InputStreamInterceptor implementations by registering service providers on the classpath (as suggested by @toddjonker and @artemkach's suggestion to consider making this available via configuration change), as an alternative to adding them manually using IonReaderBuilder.addInputStreamInterceptor. In addition to the added unit tests, I tried this out in a separate project and was able to register a stream interceptor by simply adding a file named com.amazon.ion.util.InputStreamInterceptor, containing the fully qualified class name of my custom implementation, to the project's META-INF/services/. More information about service providers can be found at https://docs.oracle.com/javase/9/docs/api/java/util/ServiceLoader.html


METRON-1662: Adding download button

Contributor Comments
PR contains the implementation of the PCAP download button.

The download button refers to and makes a GET request to the page file which selected by the pagination.
Pull Request Checklist
Thank you for submitting a contribution to Apache Metron.
Please refer to our Development Guidelines for the complete guide to follow for contributions.
Please refer also to our Build Verification Guidelines for complete smoke testing guides.
In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following:
For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?

[x] Have you included steps or a guide to how the change may be verified and tested manually?

[x] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
mvn -q clean integration-test install && dev-utilities/build-utils/verify_licenses.sh

[x] Have you written or updated unit tests and or integration tests to verify your changes?

[x] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

[x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:
cd site-book
mvn site

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
It is also recommended that travis-ci is set up for your personal repository such that your branches are built there before submitting a pull request.

Due to a bug in apache rat, our license checking component, it's ignoring all license checks on typescript files.  I have submitted a PR to up the rat plugin version and have fixed it in master #1126, let's make sure to add license headers here for new typescript files added in this PR though.

Have you included steps to reproduce the behavior or problem that is being changed or addressed?
Have you included steps or a guide to how the change may be verified and tested manually?

Can you submit or link to the test script/instructions for this?

@cestella license headers added.

@mmiklavc I updated the JIRA ticket with instructions for testing.
https://issues.apache.org/jira/browse/METRON-1662

Thanks @tiborm looks good.  +1

Thanks Guys!


bug: aapt finished with non-zero exit value 2

From @andreluiz93 on July 15, 2016 2:41
Type: bug
Ionic Version: 1.x
Platform: android 6.0 webview
When I build the android with command.
What I do wrong?
The log:
root@Andre-notebook:/home/andre/Pessoal/Devlopment/todo# ionic build android
Running command: /home/andre/Pessoal/Devlopment/todo/hooks/after_prepare/010_add_platform_class.js /home/andre/Pessoal/Devlopment/todo
add to body class: platform-android
ANDROID_HOME=/root/Android/Sdk
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386
:preBuild UP-TO-DATE
:preDebugBuild UP-TO-DATE
:checkDebugManifest
:CordovaLib:preBuild UP-TO-DATE
:CordovaLib:preDebugBuild UP-TO-DATE
:CordovaLib:compileDebugNdk UP-TO-DATE
:CordovaLib:compileLint
:CordovaLib:copyDebugLint UP-TO-DATE
:CordovaLib:mergeDebugProguardFiles UP-TO-DATE
:CordovaLib:packageDebugRenderscript UP-TO-DATE
:CordovaLib:checkDebugManifest
:CordovaLib:prepareDebugDependencies
:CordovaLib:compileDebugRenderscript UP-TO-DATE
:CordovaLib:generateDebugResValues UP-TO-DATE
:CordovaLib:generateDebugResources UP-TO-DATE
:CordovaLib:packageDebugResources UP-TO-DATE
:CordovaLib:compileDebugAidl UP-TO-DATE
:CordovaLib:generateDebugBuildConfig UP-TO-DATE
:CordovaLib:generateDebugAssets UP-TO-DATE
:CordovaLib:mergeDebugAssets UP-TO-DATE
:CordovaLib:processDebugManifest UP-TO-DATE
:CordovaLib:processDebugResources FAILED
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':CordovaLib:processDebugResources'.

com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/root/Android/Sdk/build-tools/24.0.0/aapt'' finished with non-zero exit value 2

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED
Total time: 7.659 secs
Error: Error code 1 for command: /home/andre/Pessoal/Devlopment/todo/platforms/android/gradlew with args: cdvBuildDebug,-b,/home/andre/Pessoal/Devlopment/todo/platforms/android/build.gradle,-Dorg.gradle.daemon=true,-Pandroid.useDeprecatedNdk=true

Copied from original issue: driftyco/ionic#7325

+1

I have the same problem, solutions?

Hello all!
I Find de solution!
I see that version of platform-build(build-tools) it is so much to my notebook and O.S. (Debian 8 i386). So I find the version 23.0.1 and got build it.

Mmm I am using the API 24 but i have Ubuntu 12.0 i think should not be a problem!
Anyway i have dowloaded 23.0.1 how can i change in my project to use this version?

I Think that you need to reload the ambient variable.
I changed in exactly path are called by "ionic build".
Look: In my computer the that path contains the build-tools is in "/root/Android/Sdk/build-tools/". I put the new version there and in the Android SDK Packpages I deleted the 24.
Shoud you have to download other packpages related in the version 23.0.1 too to avoid issues

Hello! Thanks for opening an issue with us! As this seems like more of a support question i will urge that you ask this question on our forum (forum.ionicframework.com). Thanks for using Ionic!

it really worked @andreluiz93

it really worked, you saved my day.. @andreluiz93


Need support mobile device for better UI/UX

Need support mobile devices for better UI/UX

Hey @jianan1104 Could you please share what you mean by better UI/UX for mobile, and what issues you're particularly finding on mobile?


Raise exception for ddp_cpu not supported for TPUs

What does this PR do?

Fixes #7810
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[x] Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)
[ ] Did you list all the breaking changes introduced by this pull request?

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

@kaushikb11 still draft?

Hello @kaushikb11! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file pytorch_lightning/trainer/connectors/accelerator_connector.py:

Line 747:22: E126 continuation line over-indented for hanging indent


docs(behavior_velocity): organize traffic light color action

Description
organize the traffic color handling in behavior_velocity_planner
Tests performed

Not applicable.
Effects on system behavior

Not applicable.
Interface changes
none
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[X] I've confirmed the contribution guidelines.
[X] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[X] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[X] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@takayuki5168 Can you approve this ?


Unable to Test Bot, Keep reloading

Can't Test Bot , it keeps reloading over and over

@bushdav Could you share more info ? eg. the root level directory for dialog files ?
could you check whether you hit similar issue to https://github.com/microsoft/BotFramework-Composer/issues/3428

It has worked for me After, thanks for the help.
For any documentation about the Bot framework, please share with me.
Regards,
David B.
On Mon, 22 Jun 2020 at 05:01 Brenda Bai<EMAIL_ADDRESS>wrote:

@bushdav https://github.com/bushdav Could you share more info ? eg. the
root level directory for dialog files ?
could you check whether you hit similar issue to #3428
https://github.com/microsoft/BotFramework-Composer/issues/3428
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/BotFramework-Composer/issues/3445#issuecomment-647242211,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK7JFW5MFUHVTM5IQGXDNO3RX3CRXANCNFSM4ODXPD2Q
.

so should I close this issue ?

Yes
On Tue, 23 Jun 2020 at 03:43 Brenda Bai<EMAIL_ADDRESS>wrote:

so should I close this issue ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/BotFramework-Composer/issues/3445#issuecomment-647856142,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK7JFW7F35OU7H6XWQISE7LRYACD3ANCNFSM4ODXPD2Q
.


Add the ability to break out of multiple loops

Catspeak currently supports break and continue control flow structures, but only for a single loop.
This could be enhanced either by adding goto and labels, or by allowing break and continue to accept an optional argument that indicates how many loops to exit:
while true {
    while true {
        break 2
    }
}

break would then be equivalent to break 1.

I have a feeling that break 2 will be relatively simple to parse in comparison to goto + labels, so I'm going to try that and see how it goes.

Added this ability in this commit: 150bbccc2de51c71d3955ab7721ebf3b5103463f


raspibolt_balance

I found that the way I used RaspiBolt was that I was always checking my channels I had open - with the local & remote balances. This is especially interesting when someone else opens a channel with me.
So I wrote the code below. I am not sure how to do a pull request with only 1 (of the many) files I have been working on. So I have included here. Not elegant ...but...
A few notes:

As written there are 2 versions of the channel balance display. Naturally only one is needed. Rather than delete Version 1 - it is in the code ... easy to delete or comment out V1 or V2 as needed.
/bin/bash compatible  (As you can guess this is based on the original raspibolt which uses /bin/sh)
Has a command line switch (--testnet) which is optional ... and allows it to display either the default or alternative lnd info. (.... I have both running on my RaspiBolt ... so for me the default = mainnet, and alternate = testnet)

:-)
Rob

#!/bin/bash
# RaspiBolt channel balance display
# /usr/local/bin/raspibolt_balance
# root must be able to execute bitcoin-cli and lncli

# Usage
# $ raspibolt_balance            to display lnd mainnet status
# $ raspibolt_balance --testnet  to display lnd testnet status

# Set Default (mainnet)
lncli='/usr/local/bin/lncli'
lnd_pid=$(systemctl show -p MainPID lnd | awk -F"=" '{print $2}')
chain='main'

# read cli args
for i in "$@"
do
case $i in
    --testnet*)
    lncli="/usr/local/bin/lncli  --rpcserver=localhost:11009"
    lnd_pid=$(systemctl show -p MainPID lnd_testnet | awk -F"=" '{print $2}')
    chain='test'
    shift # past argument=value
    ;;
esac
done

# set colors
color_red='\033[0;31m'
color_green='\033[0;32m'
color_yellow='\033[0;33m'
color_gray='\033[0;37m'

# get LND info
wallet_color="${color_yellow}"
if [ "$lnd_pid" -ne "0" ]; then
 ${lncli} getinfo 2>&1 | grep "Please unlock" >/dev/null
 wallet_unlocked=$?
 if [ "$wallet_unlocked" -eq 0 ] ; then
  wallet_color="${color_red}"
  ln_walletbalance="Locked"
 else
  ln_walletbalance="$(${lncli} walletbalance | jq -r '.confirmed_balance')" 2>/dev/null
  ln_channelbalance="$(${lncli} channelbalance | jq -r '.balance')" 2>/dev/null
  ln_channels_active="$(${lncli} listchannels --active_only| jq '.[] | length')" 2>/dev/null
  ln_channels_inactive="$(${lncli} listchannels --inactive_only| jq '.[] | length')" 2>/dev/null
  active_remote="$(${lncli} listchannels --active_only | jq -r '.channels |.[] | .remote_balance ' | jq -s 'add')"
  active_local="$(${lncli} listchannels --active_only | jq -r '.channels |.[] | .local_balance ' | jq -s 'add')"
  inactive_remote="$(${lncli} listchannels --inactive_only | jq -r '.channels |.[] | .remote_balance ' | jq -s 'add')"
  active_fees="$(${lncli} listchannels --active_only | jq -r '.channels |.[] | .commit_fee ' | jq -s 'add')"
  inactive_fees="$(${lncli} listchannels --inactive_only | jq -r '.channels |.[] | .commit_fee ' | jq -s 'add')"
  inactive_local="$(${lncli} listchannels --inactive_only | jq -r '.channels |.[] | .local_balance ' | jq -s 'add')"
 if [ "${active_local}" = 'null' ];then active_local=0;fi
 if [ "${active_remote}" = 'null' ];then active_remote=0;fi
 if [ "${inactive_local}" = 'null' ];then inactive_local=0;fi
 if [ "${active_fees}" = 'null' ];then active_fees=0;fi
 if [ "${inactive_fees}" = 'null' ];then inactive_fees=0;fi
 if [ "${inactive_remote}" = 'null' ];then inactive_remote=0;fi
 if [ "${ln_walletbalance}" = 'null' ];then ln_walletbalance=0;fi
 if [ "${ln_walletbalance}" = 'Locked' ];then ln_walletbalance=0;fi
 total_local=$(( ${ln_walletbalance} + ${active_local} + ${inactive_local} ))
 total_remote=$(( ${active_remote} + ${inactive_remote} ))
 total_fees=$(( ${active_fees} + ${inactive_fees} ))
 ln_channels=$(( ${ln_channels_active} + ${ln_channels_inactive} ))
 fi
else
 wallet_color="${color_red}"
 ln_walletbalance="Not Running"
fi

#### VERSION 1  ####
margin='                    '
printf "
${margin}${color_red}|    Inactive Channels    ${color_yellow}|   %7s   |${color_green}     Active Channels     |
${margin}${color_red}|Remote              Local${color_yellow}|    Wallet   |${color_green}Local              Remote|
${margin}${color_red}|%-12s %12s${color_yellow}|${wallet_color}%12s ${color_yellow}|${color_green}%-12s %12s|
" \
"${chain}net" \
"${inactive_remote}" "${inactive_local}"  "${ln_walletbalance}" "${active_local}" "${active_remote}"

#### VERSION 2  ####
margin=''
printf "
${margin}${color_yellow}%-21s${color_gray}|       ${color_yellow}Local${color_gray}|      ${color_yellow}Remote${color_gray}|${color_yellow}Commitment Fees${color_gray}|
${margin}${color_gray}%-21s|${color_green}%12s${color_gray}|%12s|%15s|
${margin}${color_gray}%-18s%3s|${color_green}%12s${color_gray}|${color_yellow}%12s${color_gray}|${color_red}%15s${color_gray}|
${margin}${color_gray}%-18s%3s|${color_red}%12s${color_gray}|${color_red}%12s${color_gray}|${color_red}%15s${color_gray}|
${margin}${color_gray}%-18s%3s|%12s|%12s|${color_red}%15s${color_gray}|
" \
"${chain}net (sat)" \
"Wallet" "${ln_walletbalance}" "" "" \
"Active Channels" "${ln_channels_active}" "${active_local}" "${active_remote}" "${active_fees}" \
"Inactive Channels" "${ln_channels_inactive}" "${inactive_local}"  "${inactive_remote}" "${inactive_fees}" \
"Total" "${ln_channels}" "${total_local}" "${total_remote}" "${total_fees}"

echo "$(tput -T xterm sgr0)"

Wow, that's really cool. Will check it out, looks like a great addition to the Bonus section!

Btw: you can create a new "branch" in your repository, commit this one file to it, and then create a PR for this branch.

Included the script here:
https://github.com/Stadicus/guides/blob/master/raspibolt/raspibolt_67_additional-scripts.md


OSError:mxnet/python/mxnet/../../lib/libmxnet.so: undefined symbol: ATL_ssyreflect

I installed the latest mxnet following http://mxnet.io/get_started/ubuntu_setup.html,  I compiled mxnet with atlas and there is no compilation error, and libmxnet.so was generated. Then I executed python setup.py install --user in the python directory, when I wanted to import mxnet, the error was reported

OSError:mxnet/python/mxnet/../../lib/libmxnet.so: undefined symbol: ATL_ssyreflect
I have tried

make clean_all and make again
remove the whole directory and git clone a new one

Thanks

try openblas instead of atlas

I also tried openblas, a similar error was reported,
Finally mkl works.
Thanks!


Feature: Get markdown content for selection

Description
I'm working with the markdown module of lexical and I realized there's no way to get the markdown string from only the selection of the text. I mean, If I use $convertToMarkdownString method, it only takes the full content of the editor and returns all the text in markdown, but in case of only being interested in the markdown string for the selection, it is not possible.
Would it be possible to change the signature/method or add a new one to allow that functionality? Or is there any possibility to do it currently with some workaround?
Thnaks!

I tried using $convertToMarkdownString and it worked fine. The second parameter of this method is the custom node that needs to be passed in.

The way that function works is a bit awkward because it expects the given node to be like the RootNode - it's really just a container for its children, and it won't be serialized itself. A workaround you could use is to copy the nodes in the selection ($generateJSONFromSelectedNodes then $generateNodesFromSerializedNodes), create an ElementNode, and append the copied nodes into that node which will be used as the argument to $convertToMarkdownString. It can only be done in an update since you're creating nodes, but the update will be cheap since you're not modifying any nodes that remain in the document.

Can you elaborate a bit more on it? I tried the same approach that you mention and I wasn't able to succeed on it without execution errors.

Are you using TypeScript to help guide your implementation? Not sure what problem you're having because you're not specific about the errors you're getting. Something like this (untested) will likely work:
let output: string;
editor.update(() => {
  const el = $createParagraphNode();
  el.splice(0, 0, $generateJSONFromSelectedNodes(editor, $getSelection()).nodes);
  output = $convertToMarkdownString(transformers, el);
});

@etrepum  I would like to work on this. please assign it to me

No need for assignment, if you're interested just submit a PR when you have a PR

genereateJSONFromSelectedNodes does not exist anymore, right?

https://lexical.dev/docs/api/modules/lexical_clipboard#generatejsonfromselectednodes


Fix overall design

Changed design of the buttons
Changed button and links animation on hover
Added padding

This is a spam PR

Screenshots after changes

You just took old assets from a redesign branch.


Slack needs retry

Slack needs to have the retry decorator added to it to prevent workers from failing even though they are successful.

Sample stacktrace:
Traceback (most recent call last):
  File "/var/task/starfleet/worker_ships/plugins/aws_config/ship.py", line 94, in lambda_handler
    worker.execute(commit=commit)
  File "/var/task/starfleet/worker_ships/plugins/aws_config/ship.py", line 55, in execute
    self.send_alert(
  File "/var/task/starfleet/worker_ships/ship_schematics.py", line 187, in send_alert
    SLACK_CLIENT.post_success(self.alert_channel, title, body_markdown)
  File "/var/task/starfleet/utils/slack.py", line 108, in post_success
    if not self._post_message(channel_id, message):
  File "/var/task/starfleet/utils/slack.py", line 62, in _post_message
    result = self._web_client.chat_postMessage(channel=channel_id, blocks=blocks, text=blocks[0]["text"]["text"])
  File "/var/task/slack_sdk/web/client.py", line 2220, in chat_postMessage
    return self.api_call("chat.postMessage", json=kwargs)
  File "/var/task/slack_sdk/web/base_client.py", line 156, in api_call
    return self._sync_send(api_url=api_url, req_args=req_args)
  File "/var/task/slack_sdk/web/base_client.py", line 187, in _sync_send
    return self._urllib_api_call(
  File "/var/task/slack_sdk/web/base_client.py", line 317, in _urllib_api_call
    ).validate()
  File "/var/task/slack_sdk/web/slack_response.py", line 199, in validate
    raise e.SlackApiError(message=msg, response=self)
slack_sdk.errors.SlackApiError: The request to the Slack API failed. (url: https://www.slack.com/api/chat.postMessage)
The server responded with: {'ok': False, 'error': 'ratelimited'}

In addition to this, Slack also needs to have a try...except in the _post_message function. Upon a caught exception, it should return False.

Addressed the exception handling in #62. I would like to also detect if a message is bigger than 3001 characters and alert a note that it was too big.


Styled v2

Note: This PR is a work in progress. Can be safely merged over v2 branch but not on master.
It is already in use at the instances below, both pointing to the same repo:

http://template-super.readthedocs.io/en/latest/
http://template-sub.readthedocs.io/en/latest/

Contains

Most of the styling. Layout partials had to be heavily amended as per design direction.
Three page templates: top tier template page_home, second tier super-project template page_project and a classic documentation template default.
Removed git submodule and other unused files.

TODO

Some styling/html has to be refined (search, version badges, few sidebar details).
Some textual content is unfinished/missing.
I10N

Examples
A sample repo using this theme can be seen here, few examples of its usage can be seen here:

http://template-docs.readthedocs.io/en/latest/
http://template-sub.readthedocs.io/en/latest/
http://template-super.readthedocs.io/en/latest/

Out-of date


feat(protocol-designer): create container for all tipracks

closes AUTH-313
Overview
Now, all tipracks are auto generated on the deck after initial protocol creation. And the tiprack option dropdown is modified to only include tipracks for that specific pipette that are on the deck.

Test Plan
Create a flex or ot-2 protocol. Perhaps flex might be better to add the max of 6 tipracks to the deck. For the pipette select both p1000s and selecting the first 3 tipracks for one and the other 3 tipracks for the 2nd pipette (this is so you select all 6 different tipracks)
Go to the deck map and see that all 6 tipracks are placed, starting with filling up the center column 2. (this is a Product decision since modules are by default placed in the outside slots with magnetic Block going in slot D2). Then the rest of the tipracks should fill up the next available slots.
Add a pipetting step and see that the dropdown menu for the tipracks shows only the pipette's default tipracks that you selected. Now delete the step and delete a tiprack. Create the step again and one pipette should only have 2 dropdown items now. If you hover over the dropdown field, a tooltip should show up saying that you are missing a tiprack.
Changelog

fix logic for auto-generating the tipracks
fix which tipracks are displayed in the tiprack options selector
add a test to tiprackField

Review requests
see test plan
Risk assessment
low

the sandbox worked as expected without the case I sent.

@koji thanks! I made this ticket to address the bug you found https://opentrons.atlassian.net/browse/AUTH-319


[HUDI-6009] Let the jetty server in TimelineService create daemon threads

Change Logs
Let the jetty server in TimelineService create daemon threads
Impact
When hudi is integrated with spark, sometimes the spark driver cannot exit normally, because the jetty server started by TimelineService is a non-daemon thread, and the jetty ui started by spark is a daemon thread.
Risk level (write none, low medium or high below)
none
Documentation Update
Describe any necessary documentation update if there is any new feature, config, or user-facing change

The config description must be updated if new configs are added or the default value of the configs are changed
Any new feature or user-facing change requires updating the Hudi website. Please create a Jira ticket, attach the
ticket number here and follow the instruction to make
changes to the website.

Contributor's checklist

[ ] Read through contributor's guide
[ ] Change Logs and Impact were stated clearly
[ ] Adequate tests were added if applicable
[ ] CI passed

@hudi-bot run azure

@hudi-bot run azure


tried all but 1 working

first of all thanks a lot for the efforts , you did a great job
ı followed your direcitons, and i can monitor lots of staff with influx and grafana,but when it comes to sql
there are issues,
ı imported your dashboards by copy and paste the JSON file ,and got the following error
"Templating init failed Datasource named was not found"
Do you have any idea regarding it?
regards

Check that your datasource name matches the pattern of the variable Influxdb-XX or just name is the same as the direction if you didn't InfluxDB-01.  If that is not the issue put a print screen of the datasource you are using in the issue.  Or email to me.  My email is my website.

Hi again tboggiano,
i followed your advice, and changed the influxdb-XX with my datasource name ,and they started to work
much regards and thanks
and also for the fast responce back ,i appriciate much


Help with server

I have installed letsencrypt-win-simple on a local exchange-server (SBS2008), and it seems to be working fine from the “outside” when ppl are not connecting to the server through the dns. But when
ppl are connected to the local network new mails, caledar etc isn’t syncing properly. I’m assuming thats pretty normal since the certificate is only applied to the dns…
Is there any fix for this? I would love as detailed help as possible since i’m very new to this.

Let's Encrypt doesn't issue certificates to non-public host names, so I think you'll have to make your internal users connect through your public host name to make it work. I'm not an Exchange expert though, so perhaps the [[wiki||Microsoft-Exchange]] will provide better guidance.

yes exchange should only ever connect via an FQDN. Typically one would split dns for your setup


Skin effetcs dont work if you have battle queen kata already

If you have battle queen kata and change your skin, the daggers and the ability effects stay, while the skin itself changes.

#1


Copy Indexer Languages Folder during instalation

Do to recent changes in master Powertoys run Indexer needs languages files that are not being copied by the installer.
Powertoys run was writing a lot of logs (because of the lack of language files) every time a letter has written which made antimalware Service Executable spike for some reason.
Validation Steps Performed
Manual Verification by building the installer, install it and verifying that the languages folder of the indexer plugin were there.
Open Powertoys write anything and see antimalware Service Executable running normal.

have ja.xaml

[nit] We have ja.xaml markup file as well. Would be nice if that could be included as well.

Done 😉


Pseudo-inverse of symmetric matrices using SVD / Utility for moving least squares

In an attempt to break-up #946, this PR focuses only on the pseudo inverse used in the moving least squares algorithm. It includes the pseudo inverse itself in src/interpolation folder, tests and an iterator for multi-dimensional views (for use in boost tests) a macro to test equality on md views

Windows CI is reporting
LINK : fatal error LNK1104: cannot open file 'D:\a\ArborX\ArborX\build\test\headers_self_contained\Debug\ArborX_HeaderSelfContained_interpolation_details_ArborX_InterpDetailsSymmetricPseudoInverseSVD_hpp.exe' [D:\a\ArborX\ArborX\build\test\headers_self_contained\ArborX_HeaderSelfContained_interpolation_details_ArborX_InterpDetailsSymmetricPseudoInverseSVD_hpp.vcxproj]

and all GPU builds seem to be stuck in ArborX_Test_InterpDetailsSVD.

It seems more likely that, in job 12, only cuda 11.0.3 + clang stopped on that test due to the job time limit (3h) and the others copied the logs of that test.

I'm confused about what's going on with the testing.

The windows CI fails because of the location of the added header (two folder deep from src). Jenkins passes with no issues.

The windows CI fails because of the location of the added header (two folder deep from src). Jenkins passes with no issues.

There are still some warnings to fix, see https://cloud.cees.ornl.gov/jenkins-ci/job/ArborX/job/PR-950/19/gcc/.

We need to deal with the failing Windows CI one way or the other. As I said earlier, I think it's OK to disable the header self-containment test for that CI build and open an issue for it.

I have remove the self-containment test from the Windows CI and it does passes, and made an issue #953. CUDA 11.5 + MPI pipeline did not start but all other succeeded.


Fix definition of z_size_t to match documentation of legacy zlib API.

Legacy zlib changed definition of z_size_t to smallest unsigned type that can hold a pointer value after we forked, but this was never merged in.
We currently avoid including standard headers in our own headers as some standard headers must be included in specific order, otherwise we could just include stddef.h in zbuild.h.
Some of the function parameters and return types, and struct members are still limited to unsigned long when ZLIB_COMPAT is defined.
Blocks: #1356

This strikes me as complicating the code a bit.
Would it be worth it to instead introduce a new type with the required behavior?
We could call it zng_size_t perhaps, if that is a close enough description to its real sizes?

This strikes me as complicating the code a bit. Would it be worth it to instead introduce a new type with the required behavior? We could call it zng_size_t perhaps, if that is a close enough description to its real sizes?

I'm trying to get Mark Adler to fix this in legacy zlib... The best would be to add _z version in legacy zlib (and when using ZLIB_COMPAT for zlib-ng) that use size_t instead of unsigned long like other similar functions already have. When not using ZLIB_COMPAT we (in zlib-ng) would eventually have only one version, the one that use size_t "directly".

@nmoinvaz Any comments? Still can't ask reviews on my own pull requests, eh...

I think we should see what Mark Adler says about the issue on zlib side. I do like the name zng_size_t rather than z_ulong_t.

I think we should see what Mark Adler says about the issue on zlib side. I do like the name zng_size_t rather than z_ulong_t.

I agree... I just made this PR so I have something to show about how I would fix this myself... With previous PRs I created for legacy zlib, Mark Adler did use parts of the PRs but rewrote it to be more compatible with older compilers. Of course, zlib-ng doesn't need to support 16-bit platforms or compilers that support them.

https://github.com/madler/zlib/commit/fa8cd50ada68b873c754766bc73b12080b7b309e

I'm not sure if the need since the descriptions says we cannot add stddef.h to zbuild.h but we can..

I'm not sure of the need since the description says we cannot add stddef.h to zbuild.h but we can..

We can do whatever we want when ZLIB_COMPAT isn't defined, but this whole PR is about making sure everything is correct when it is defined. Each new clang or gcc version tries to break more circular dependencies, but we still need to make sure our code compiles correctly on older compiler versions. Like I have implied earlier, specific header versions are not tied to specific Visual C++ version as it can target individual Windows builds using different Windows SDKs.
Legacy zlib predates standard headers and standard types, so some of the types it use conflict with types from stddef.h and stdint.h. This is why we still have and need types with prefix z_.

Each new clang or gcc version tries to break more circular dependencies

What are you referring to here?

specific header versions are not tied to specific Visual C++ version as it can target individual Windows builds using different Windows SDKs.

I wouldn't expect that Visual C++ would ship new headers for each version of Visual C++.

Legacy zlib predates standard headers and standard types, so some of the types it use conflict with types from stddef.h and stdint.h. This is why we still have and need types with prefix z_.

That sounds like a compiler toolchain bug. Why are we trying to fix that in zlib-ng? I thought we were supporting/recommending only Visual C++ 2013 or higher.
Which compiler version and Windows SDK exhibits the problem? Let me know so I can download that specific version and try to reproduce the error. I would rather us not trying to fix something that only "in theory" is a problem without first reproducing it.

That sounds like a compiler toolchain bug. Why are we trying to fix that in zlib-ng? I thought we were supporting/recommending only Visual C++ 2013 or higher.
Which compiler version and Windows SDK exhibits the problem? Let me know so I can download that specific version and try to reproduce the error. I would rather us not trying to fix something that only "in theory" is a problem without first reproducing it.

unsigned long has been 32 bits since very first 32-bit Windows version. I asked few days ago how long we want to support legacy zlib API and hell froze solid... Apparently people still think we should support buggy code that was created when 16-bit processors were popular.
There is a few closed issues in this repository that deal with not using standard integer types for ZLIB_COMPAT. Even if compiler can generate code using size_t, C++ runtime library of Windows doesn't understand it, so passing the type to functions like printf can result in garbage output.
Visual C++ 2015 was first version that had more comprehensive support for C99 standard. Visual C++ 2017.9 is first usable version that supports the new C++ runtime library (UCRT) that Windows 10 ships with. Visual C++ 2017 broke backwards compatibility with older versions and caused a lot of programs to stop working due to using same filename as Visual C++ 2015, so basically was a dud release.


Scope?

What is the scope of this? Server? Database? User? Connection? Batch? Transaction? or what?
It say: "Causes SQL Server to stop processing the query after the specified number of rows are returned.", which kind of indicate this is a server wide setting....

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

ID: f02b86d1-c201-42b5-dd7e-f0f005f44a1c
Version Independent ID: eb2a5771-f952-b7f5-1f56-cffff1f7e5ac
Content: SET ROWCOUNT (Transact-SQL) - SQL Server
Content Source: docs/t-sql/statements/set-rowcount-transact-sql.md
Product: sql
Technology: t-sql
GitHub Login: @CarlRabeler
Microsoft Alias: carlrab

@Bartolomeus-649 -- thank you for your question.  You may find an answer here:

DBA Stack Exchange
Stack Overflow

@CarlRabeler -- please look into this issue #4220.

scope is statement

@CarlRabeler SET ROWCOUNT is a statement, right?  So do you mean the following statement?

"Setting the SET ROWCOUNT option causes most Transact-SQL statements to stop processing when they have been affected by the specified number of rows."

So for the entire server, all databases, all users, all connections and until you turn it off?

@Bartolomeus-649 I do not understand your response. If you execute a statement, such as a SELECT query and use SET ROWCOUNT - it will count the rows returned by the statement - if the SELECT statement is returning rows from multiple tables in multiple databases and possibly on multiple servers, that will be the rows returned by the SELECT statement

So, what is the scope then?

@Bartolomeus-649
If you provide me an example, I can tell you the scope of your example. I do not know how else to answer your question. I feel like we are talking in circles. The scope is defined by what is included in the query.

@Bartolomeus-649 thank you for contacting Microsoft. We have reviewed all the questions and responses. The documentation you are referring to is based on t-sql which is executed in SQL Server. The documentation clearly defines what it is applicable to so that it is clear.  You can find that at the top of any documentation on our site. For example, SQL Server has its own database engine, whereas Windows Server is an Operation System. It may be helpful to do a product level search to determine the context of what words are being used. https://docs.microsoft.com/en-us/sql/sql-server

#please-close


[Errno 13] Permission denied: '/temp'

when I run the code I get the following error. I've tried to trouble shoot and I believe it has something to do with my file permissions which are read and write as far as I can tell. I'm using a mac.
I'm a novice. I'm running this within the terminal environment in pycharm

remove the / before '/temp' and it works

Thanks for the feedback @cestevens1987 - I hadn't run it on a mac before so it's valuable to know it fails.
I'll keep the issue open while I address it, but in the mean time did @cophth's workaround do the trick?

it did!

I've updated the application quite substantially now and have run my own tests on a Mac to check for compatibility, all seems to work fine but do let me know if you still have 'out-of-the-box' issues.


operator [O] seldon-operator (1.15.0)

Currently the 1.15 version of Seldon is not available on ocp 4.12 so only the 1.14.2 version is installable.
Thanks for submitting your Operator. Please check the below list before you create your Pull Request.
New Submissions

[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?

[ ] Have you tested your Operator in all supported installation modes?
[ ] Have you considered whether you want to use semantic versioning order?
[ ] Is your submission signed?
[ ] Is operator icon set?

Updates to existing Operators

[ ] Did you create a ci.yaml file according to the update instructions?
[ ] Is your new CSV pointing to the previous version with the replaces property if you chose replaces-mode via the updateGraph property in ci.yaml?
[ ] Is your new CSV referenced in the appropriate channel defined in the package.yaml or annotations.yaml ?
[ ] Have you tested an update to your Operator when deployed via OLM?
[ ] Is your submission signed?

Your submission should not

[ ] Modify more than one operator
[ ] Modify an Operator you don't own
[ ] Rename an operator - please remove and add with a different name instead
[ ] Modify any files outside the above mentioned folders
[ ] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[ ] Description of the managed Application and where to find more information
[ ] Features and capabilities of your Operator and how to use it
[ ] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[ ] Human readable name and 1-liner description about your Operator
[ ] Valid category name1
[ ] One of the pre-defined capability levels2
[ ] Links to the maintainer, source code and documentation
[ ] Example templates for all Custom Resource Definitions intended to be used
[ ] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

@RafalSkolasinski Any issue with this.

Actually that may be indeed not the best idea. If I see it right, Openshift 4.12 ships K8s 1.25 and support for it will only come in Seldon Core 1.16

That is correct.  OCP 4.12 is k8s 1.25.
I do see now that it only supports 1.25 in 1.16:
https://github.com/SeldonIO/seldon-core/blob/master/doc/source/reference/upgrading.md#upgrading-to-116
Just a heads up the 1.14.2 operator is available on 4.12 since it does not have the upper limit set on that version.  It does install successfully but I haven't tested any functionality with it yet.
I will go ahead and close this PR for now and wait for the 1.16 operator to become available.
Thanks for the quick response!


add wslFeatureInstalled context key

adds a context variable 'wslFeatureInstalled' that is set when the WSL feature is installed.
Once detected, this is remembered in the storage, so the test is no longer made.

@jrieken Please have a look.
I opted to the built-in context key, as I need it not only for the remote explorer but also for the commands contributed to the remote menu.

@jrieken I made the change as suggest, please review...

@Tyriar @RMacfarlane This could also be of interest to terminal: if you what to enable/disable functionality based on whether is WSL is/was installed: The wslFeatureInstalled context variable is for that. Right now, once we detect WSL, we remember that, and don't check anymore. The idea is that installing WSL is probably quite rare. If the user uninstalls WSL he would still see the commands/views, but on activation we would suggest to install WSL. We'll see how that works for users.
I've seen that the terminal code contains WSL specific code at a few places. The new module src/vs/platform/remote/node/wsl.ts would be a good place to put that code.

@aeschli thanks for letting us know, I think this is the only place where we could potentially use this which is in the pty host, not the workbench:
https://github.com/microsoft/vscode/blob/0c1f65f9e27ec07b20d3f4fe50d3b6d4861e86e0/src/vs/platform/terminal/node/terminalProfiles.ts#L127-L132
This is done whenever we refresh terminal profiles so the caching wouldn't be needed on our end anyway.
cc @meganrogge


[Bug]: Assistant functionality doesn't work as expect in the TS version

Language
Javascript/Typescript
Version
latest
Description
I am using Azure OpenAI service, and have set the endpoint in the code, I can run the test successfully in the "Teams test client", and it can answer the basic question, but it will not invoke the "file_search" tool even though I have configured it well and it worked in the python version of the toolkit.

Reproduction Steps
1. Create your assistant in Azure OpenAI, and enable "file_search" tool.
2. Create your teams app by the Teams toolkit template, 'Custom Copilot' => 'AI Agent' and complete the configuration in .env
3. Debug it in the "Teams Test client'

Hi @chenxizhang, this appears to be a duplicate of the feature work for assistants citations. Closing this in favor of the other for tracking.


Staticcheck CI - cache debug

This PR is for debugging cache issues.  Will close when done.

Pull Request Functional Test Report for #2781 / 1e174d3d901dab7667191f1a244c62cb405b9a68
Virtual Devices

Device
Test
Test Documentation
Job
Raw Log

Arista cEOS

gNMI-1.15: Set Requests
589a6ed6
Log

Cisco 8000E

gNMI-1.15: Set Requests
cfe99ad7
Log

Cisco XRd

gNMI-1.15: Set Requests
5a0e037b
Log

Juniper ncPTX

gNMI-1.15: Set Requests
244fc2f2
Log

Nokia SR Linux

gNMI-1.15: Set Requests
88fb8dce
Log

Openconfig Lemming

gNMI-1.15: Set Requests
0ddcfbdf
Log

Hardware Devices

Device
Test
Test Documentation
Raw Log

Arista 7808

gNMI-1.15: Set Requests

Cisco 8808

gNMI-1.15: Set Requests

Juniper PTX10008

gNMI-1.15: Set Requests

Nokia 7250 IXR-10e

gNMI-1.15: Set Requests

Help

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1847

Relevant Lines:
3390

💛  - Coveralls


Log timestamps in ISO8601 format

Would it be sensible to follow the ISO 8601 standard for timestamps in the log?

Good idea, thanks @dfornika.


Not run docker swarm in startup

Hi,
I have a docker swarm worker after joined to manger swarm and after reset my computer that has win server 2019(1809), docker service not run in startup and get below error in  event viewer:
The description for Event ID 1 from source docker cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.
If the event originated on another computer, the display information had to be saved with the event.
The following information was included with the event:
Bulk sync to node 63ce8b856255 timed out
Information event:
The description for Event ID 1 from source docker cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.
If the event originated on another computer, the display information had to be saved with the event.
The following information was included with the event:
NetworkDB stats hyperv-test2(76badbe3f199) - netID:iy8xbxaba9lxliqvtk6tpcz6z leaving:false netPeers:2 entries:34 Queue qLen:0 netMsg/s:0

This repo is for classic swarm, not swarmkit (swarm mode).


update_app_identifier Creates Project File Error - Project won't open after Bundle ID updation

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
Complete output when running fastlane, including the stack trace and command used

You can use: --capture_output as the last commandline argument to get that collected for you

[INSERT OUTPUT HERE]
Environment
Please run fastlane env and copy the output below. This will help us help you :+1:
If you used --capture_output option please remove this block - as it is already included there.
[INSERT OUTPUT HERE]
Xcode Project file error after running the action update_app_identifier.
I have set absolute app to plist and set Bundle ID correctly.
I have no idea why it happens.
update_app_group_identifiers & update_info_plist works fine.

I just found that If Bundle Identifier is set to PRODUCT_BUNDLE_IDENTIFIER in plist update_app_identifier isn't working. It corrupts the project file. But when Bundle Identifier is to a static ID say com.abc.company and then changing the Bundle ID via update_app_identifier works fine.

Can someone plz at least take time to give an update. We are not able to use the bundle ID update actions yet. We are doing it manually on xcode each time to update the Bundle ID and other Info plist values.

Hey @tringManoj - Could you share the output of this command? Also, it would be amazing if you could share a sample project that could help us reproduce this on our end 😄  🚀

lane :update_bundle_id do
	update_app_identifier(
		app_identifier: id,
		plist_path: $plistpath
	)
	update_info_plist(
		plist_path: $plistpath,
		plist.each{|key, value|
			if key == 'GroupingID'
				plist[key] = 'group.'+ baseID
			end
		}
	)
end

I have been using fastlane for Build Automation, Scan, Snapshot, Version and Build Number Update , etc. Everything works fine since 2015. Only thing thats not working yet is update_bundle_id & update_info_plist

Output always shows SUCCESS. Not error on fastlane Run. But when I open the xcode, I could see my projects file is corrupted.

Hmmm... @tringManoj, it looks like you have some custom logic/variables in your lane, is it possible that those are nil or not strings and that could be causing the issue?

Hi @ohayon . Thanks for taking time to help. All my variables are valid. I even tested with static values. It's updating the values properly for all identifiers but somewhere it's getting messed up in project file.
As I mentioned earlier..
If Bundle Identifier is set to PRODUCT_BUNDLE_IDENTIFIER in plist update_app_identifier isn't working. It corrupts the project file. But when Bundle Identifier is set with a static ID say com.abc.company and then changing the Bundle ID via update_app_identifier works fine.

Could you try looking in the corrupted project file to see what value is set for bundle ids? You should be able to run cat path/to/project.pbxproj | grep PRODUCT_BUNDLE_IDENTIFIER to see what its getting set to, I would imagine that value is somehow invalid which could be a bug on our side for sure so it would be good to know what you see in there 😄


Ignore case for parsing and validating

This commit fixes GH-62. The caveat, is that in case of #parse the
returned domain will contain lower-case tokens.
I tried to keep the case unchanged by patching List#select, but it
turned out I had to patch several methods inside Rule subclasses as well.

:+1:


latest jupyterlab-widgets appears to break things

It seems like the latest jupyterlab-widgets released in the past month breaks the working of the remote frame buffer. Running the hello_world example with jupyterlab-widgets v3.0.3 (haven't tested with 3.0.0 - 3.0.2) produces the following when you try to create the output in a jupyter cell.
This issue is not present when using the previous release of jupyterlab-widgets, i.e. v1.1.1, and ipywidgets v7.7.0.
[Open Browser Console for more detailed log - Double click to close this message]
Model class 'RemoteFrameBufferModel' from module 'jupyter_rfb' is loaded but can not be instantiated
TypeError: r._deserialize_state is not a function
    at f._make_model (http://localhost:8891/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/150.3e1e5adfd821b9b96340.js?v=3e1e5adfd821b9b96340:1:7933)

Given the version number jump to 3.0 and ipywidgets jumping to 8.0 with major custom widget changes, my guess is that jupyter_rfb is not compatible with these new versions and will require a decent amount of work to get updated. Looking at
https://ipywidgets.readthedocs.io/en/stable/migration_guides.html
It seems the suggestion is to regenerate the entire python package structure from the cookiecutter project. This shouldn't be too big of a deal, but potentially having to rename properties/traits to work with this new version is going to take some time. The lead developer of this project is currently on paternity leave and likely won't have time to update this.
@kushalkolar Do you or someone you know have time to look into updating the library to work with the new versions of the widgets libraries? I think we can focus on dropping support for the older versions if necessary to keep the code cleaner.

I could try this out, but I can't provide a timeline. Meanwhile, should jupyter_rfb make a bugfix release? Probably sufficient to change install_requires in setup.py, I can make a PR.

That sounds good to me. I'll have to update the conda-forge recipe too after that release, but that's not too bad.

Closed by #64


Investigate why H2 sometimes does not get the deposit completed message

In #3296 and #3254, we have a couple items that have completed accessioning properly, but H2 did not get the message, and continues to show them as depositing.  The two items in those tickets were manually updated to complete the deposit, but it would be good to investigate why this might be happening.
How it should work:

H2 monitors the h2.deposit_complete queue: https://sul-rabbit-prod.stanford.edu/#/queues/workflow/h2.deposit_complete
This starts a app/jobs/deposit_complete_job.rb job.
This calls app/services/deposit_completer.rb

Not sure where the breakdown is.  Possibilities:

Message not being sent?
Message not on the queue?
Job not picking up the message from the queue? (though there is nothing in the queue now, so this seems unlikely)
Job or DepositCompleter class failing (though no HB alerts)

I have not been able to identify a cause or timing related to this. There are instances of items showing deposits during the same timeframe and 1 doesn't complete the deposit while the other does..

another instance of this was discovered today: https://sdr.stanford.edu/works/7177 / https://argo.stanford.edu/view/gm130bx3201
i successfully used the instructions from the wiki to unstick it: https://github.com/sul-dlss/happy-heron/wiki/Complete-a-deposit-stuck-in-the-"depositing-state"
there have been at least one or two other occurrences of this problem in the weeks since this issue was originally filed.
per @vivnwong and @amyehodge, we should use this issue to track other occurrences of the problem, both to figure out the frequency at which it happens and to get druids and work IDs for use in further troubleshooting.
another thing we could do to help debug is to alert when there are deposits that are taking a long time to complete.  this is ticketed here: https://github.com/sul-dlss/happy-heron/issues/3371

This occurred for druid: tz479yh3220 on Oct 11 at 11am PT.

I, [2024-03-19T10:40:19.082596 #3785951]  INFO -- : Trying deposit complete on druid:vb371yk4055
I, [2024-03-19T10:40:20.506940 #3785951]  INFO -- : Not completing deposit for druid:vb371yk4055 since not found
I, [2024-03-19T10:40:21.065337 #3785951]  INFO -- : Assigning druid:vb371yk4055 to object-7557
I, [2024-03-19T10:40:23.493333 #3785951]  INFO -- : Retrieving metadata from: /v1/resources/druid:vb371yk4055
I, [2024-03-19T10:40:23.923096 #3785951]  INFO -- : Retrieving metadata from: /v1/resources/druid:vb371yk4055
I, [2024-03-19T11:00:04.236289 #4047594]  INFO -- : Object is still in depositing state, but accessioning is complete: druid:vb371yk4055

are we keeping this open even after #3481 was merged just in case it happens again?

Optimistically closing, with the option to re-open later if necessary.


npm 1.0.0

Can you publish 1.0.0 to npm so we can get past this npm warning?
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.

@alhazmy13 Any update on this issue ?
I need to update my dependency. Can you please publish the same.

Hi all, We fixed this in version 1.0.0
Please note: The new name for this package is angular-csv-ext, so remove angular5-csv and install the new one.
Thanks


vscode.workspace.fs.readDirectory() ignores broken symlinks.

(for use in the Python extension)
If a directory has a broken symlink (target does not exist) in it then that symlink does not show up in the results from vscode.workspace.fs.readDirectory().  I'd expect it to show up with a file type of just SymbolicLink.  Otherwise how would you know that the symlink is in the directory.

readdir will now return symbolic links that are pointing to non existing paths as FileType.SymbolicLink | FileType.Unknown. Since we do not have any other way how to express an invalid symbolic link, I decided to go with that. Let me know if you have other thoughts.
Visually this means that broken symlinks now show up in the explorer and when you click, an error occurs:

But as a user at least you can delete those now or at least be aware of them.

Please verify in our next insiders release if possible.

It looks like a broken symlink has type 64 which is FileType.SymbolicLink, and a non-broken symlink has type 65, is that correct? Unknown is 0 so we can't do bitmask math with it.

Looks like I double verified it with Connor, thanks Github for not refreshing the page

@roblourens not sure I follow, if you found a bug, can you open a new issue? Bonus points for a failing test case.

Maybe this was the expected result, but you can double check my work - https://github.com/microsoft/vscode/issues/91771


Documentation request: Password for SSLConfig

On https://github.com/IBM-Swift/Kitura/blob/master/Sources/Kitura/SSLConfig.swift#L72, a password can be used. Where does this come from? Using the instructions here to generate the keys and certificates https://developer.ibm.com/swift/2016/09/22/securing-kitura-part-1-enabling-ssltls-on-your-swift-server/, this asks for two passwords: A challenge password, and an export password. Is it one of these?

I figured it out-- it's the "export password:". Could be good to add that to the docs. Thanks.

Fixed in PR #1108


transactionCompleted method not called after payment successful

i try to log a print message on my debugconsole on transaction complete didnot work.
also try out the sample test code PayWithPayStack().now(     context: context,     secretKey:     "sk_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXX",     customerEmail<EMAIL_ADDRESS>    reference:     DateTime.now().microsecondsSinceEpoch.toString(),     currency: "GHS",     paymentChannel:["mobile_money", "card""]     amount: "20000",     transactionCompleted: () {         print("Transaction Successful");     },     transactionNotCompleted: () {         print("Transaction Not Successful!");     });
this part is not printing
print("Transaction Successful");

Sorry for the late response, do you have a valid Secret key?

On Thu, Jan 19, 2023 at 4:02 PM Daniel Kabu Asare @.***>
wrote:

Sorry for the late response, do you have a valid Secret key?
—
Reply to this email directly, view it on GitHub
https://github.com/popekabu/pay_with_paystack/issues/6#issuecomment-1397113163,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AF56H46GPQCKPZXXQZG44OLWTFJQZANCNFSM6AAAAAATBXRXXM
.
You are receiving this because you authored the thread.Message ID:
@.***>

Yes i do have a secret key

I apologize, Has it been resolved?

Please I use a vaild secret key and am not getting transaction complete callback

I thought the callback would run automatically after payment succeeds or fails, but going through the code, I see the X button has to be clicked before the callbacks run.

Good to know! I was planning on making a pull request this weekend with
that update too.
I thought of polling their servers for it, although they don't recommend
it, but I don't know how I would use their webhooks in flutter
On Wed, Mar 29, 2023, 9:04 PM Daniel Kabu Asare @.***>
wrote:

Yeah. Working on an update
On Wed, Mar 29, 2023 at 8:23 PM Isaac Anohene @.***>
wrote:

I thought the callback would run automatically after payment succeeds or
fails, but going through the code, I see the X button has to be clicked
before the callbacks run.
—
Reply to this email directly, view it on GitHub
<
https://github.com/popekabu/pay_with_paystack/issues/6#issuecomment-1489255259
,
or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AGMACNLQ6LHVBZ3YCSCW5PDW6SK5DANCNFSM6AAAAAATBXRXXM
.
You are receiving this because you commented.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/popekabu/pay_with_paystack/issues/6#issuecomment-1489318616,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALRU2T7NPLQ4S5C7OQ4ITY3W6SPXDANCNFSM6AAAAAATBXRXXM
.
You are receiving this because you commented.Message ID:
@.***>


createLazyFileRoute function doesn't have validateSearch property

Describe the bug
I can't use validateSearch property for lazy file routes as it's for regular file routes

Steps to Reproduce the Bug or Issue

create a fresh vite + react app with router
create lazy file route (e.g. about.lazy.tsx)

Expected behavior
I expect lazy file routes have same properties as regular file routes
Platform

OS: macOS
Browser: Brave
Version:  1.62.165

Additional context
No response

The createLazyFileRoute helper is meant to be used for routes that are being code-split. For example src/routes/about.lazy.tsx. This configuration only lets you define the components for a specific Route that are then imported at runtime using code-splitting.
When you need to define the Route configuration (such as configuring the loader, beforeLoad, validateSearch, etc.), it is done in a separate file which would be named as src/routes/about.tsx. In here, you would use the createFileRoute helper to define the Route configuration itself.
import { createFileRoute } from '@tanstack/react-router'
import { z } from 'zod'
export const Route = createFileRoute("/about")({
  validateSearch: (search) => z.object({ foo: z.string().catch("bar") }).parse(search)
});

TLDR; You'll need both about.lazy.tsx AND about.tsx if you want the about route to be code-split whilst utilizing the extensible Route configuration.

It should be pinned, lots of developers are very confused about this feature.

It should be pinned, lots of developers are very confused about this feature.

This has been stated in docs over here, but it's easy to understand why someone could miss it. Tanstack Router covers a lot, and the fact that virtual routes "just work" means people don't see fully read the page on code-splitting and how it works.
IMO: Tanstack Router is definitely not the most beginner friendly solution at the moment, and honestly I don't think it ever will be given the kinds of complex stuff it aims to do.
But we should see alot of the documentation pages getting a cleanup when we begin the push for v2.

@SeanCassiere  Thank you 🙏


feat: add website using docsify

closes #7
Hello:)
The website is done :)

If you want i can change theme to be dark mode.

@Anmol-Baranwal

@Bashamega
I am sorry, as I was traveling and didn't get the time to review earlier.
Could you please use this to add a toggle button for light/dark mode?
They also provide the CDN and you can read the docs.
I think it would be great addition so that others can toggle the mode as per their preference.

Happy vacation
Sure I am going to check it.

Done @Anmol-Baranwal

Thank you!
I will merge this by tomorrow.


Update tests for removing wso2carbon-local-sp from application list API response

Related to https://github.com/wso2/carbon-identity-framework/pull/3268

PR builder running at https://github.com/wso2/product-is/actions/runs/388956666


stop contact form process if there's an error in the controller

Questions
Answers

Description?
Prevent the contact form from being sent if there's an error in the controller. It allows a module to add additional form validation

Type?
improvement

BC breaks?
no

Deprecations?
no

Fixed ticket?
-

How to test?
-

LGTM too, thanks @aeyoll ;)

Hello @aeyoll
Could you provide a How to test for your PR please ?
Thanks!

friendly reminder @aeyoll

Hello @florine2623,
You can test it by installing this module: https://github.com/aeyoll/pow-captcha-for-prestashop. It's a custom captcha module, it doesn't matter if its configured or not, since we want to test the failing case.
Before the update of "contactform", you won't see the captcha error message. With this branch of "contactform", you'll see the captcha error message.


Add support for bitbucket and plain git

will be implemented as local-repository-provider in repository-provider


Error messages during run

I sometimes get the following error messages when the program runs.  I only get one set at a time - not all three - but I posted them in one issue report because it may have a similar root cause.

PHP Notice:  Undefined index: thermostatList in /sqlbee-master/sqlbee.php on line 367
PHP Warning:  Invalid argument supplied for foreach() in /sqlbee-master/sqlbee.php on line 367

PHP Notice:  Undefined index: reportList in /sqlbee-master/sqlbee.php on line 486
PHP Warning:  Invalid argument supplied for foreach() in /sqlbee-master/sqlbee.php on line 486
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'on duplicate key update thermostat_id = values(thermostat_id),timestamp = ' at line 1

PHP Notice:  Undefined index: revisionList in /sqlbee-master/sqlbee.php on line 256
PHP Warning:  Invalid argument supplied for foreach() in /sqlbee-master/sqlbee.php on line 256

I haven't had time to dig into sqlbee to see if I can figure out what's triggering this.  I'm guessing sqlbee isn't always getting the data it's expecting from ecobee, so this happens.  I'm pretty sure it's not a bug in sqlbee because other runs work without errors and load the data just fine.  sqlbee may need to be better at handling unexpected/missing data, though.

Those errors would be consistent with the ecobee API not returning the expected results (or throwing an error). It's certainly possible that, in my limited testing of one ecobee, I missed some edge cases. :)
In your configuration.php, would you set $log_api_calls = true and get some logs for me?
I would be interested in seeing the json_arguments and response columns for those errors. The error on line 367 would be for the /1/thermostat endpoint. The error on line 486 would be for the /1/runtimeReport endpoint. The error on line 256 would be for the /1/thermostatSummary endpoint.
I'm guessing the ecobee API is returning an error or something that I'm not handling. It will probably be pretty obvious when looking at the response column for those API calls that something is wrong.
When posting your logs, I would recommend hiding the value for selectionMatch from json_arguments and thermostatIdentifier from response. That's just a unique identifier for your ecobee...pretty harmless but better to be safe.
Finally...I'll make a note to add some better error handling so this data is easier to capture for debugging.

No problem - I've made the change to the config and will report back when it next happens.

As another data point to this issue.  I run my cron job every 10 minutes on the 4's.  These errors seem to happen every hour, although sometime they change by 10 minutes.  (ie 6:04, 7:04 8:04 8:54, 9:54...)
I'll set my config to log the api too.

Thanks, @bob109. That's actually perfect because now I know what the issue is. It's being caused by the authentication token expiring; they expire after an hour and I then have to send a new request to get another one. I'm obviously just not stopping the script properly. I should be able to fix this pretty easily. I'll tackle this after I finish #2 today or tomorrow.

I can confirm the token expiration. Here's your /1/thermostatSummary response
{
"status": {
"code": 14,
"message": "Authentication token has expired. Refresh your tokens. "
}
}
Here are the other logs.  I noticed the 1/thermostat response was too long to capture all the data.
1.thermostat_json.arguments.txt
1.thermostat_response.txt
I don't have a /1/runtimeReport endpoint for the time when I got the error.
Hope this helps
bob

Thanks; that confirms it!
Note: I removed your /1/thermostat response text file from your comment as it contains things like your home address, email, etc in addition to the thermostat identifier.

So, in looking at this I see two issues:

The issue that @rmarquet reported exists and is the result of an error returning that is not code = 14, token expired. Looking at my API logs I do see the occasional error happening (I got a lot of code = 3, internal error) which would trigger the notice in PHP. I am now throwing an exception when these happen instead of allowing script execution to continue. I can't prevent these errors from happening because sometimes the API just throws an error. I could silently kill the script but that feels dishonest and doesn't allow you to log or act on the exception when it happens. This issue will thus be resolved when I push next.

The issue that @bob109 reported is actually normal. Every hour you should see that error message in the api_log table if you have logging enabled. The API authentication provides you with a token that works for an hour. When that hour is up you need to request a new token. I do all this, but I don't make any attempt to renew tokens on the hour. Instead, I just wait for a failed API call with a result of `code = 14, token expired). When I get one I take that as my cue to refresh the token and then re-run the failed API call. I don't believe it was related to the original reported issue.