<EMAIL_ADDRESS>Permission denied (publickey).

GitError: Cloning into 'C:\Users\frans/.gluestack/cache/gluestack-ui'...
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
at Object.action (C:\Users\frans\AppData\Local\npm-cache\_npx\17e7bc1abc5c95a0\node_modules\simple-git\dist\cjs\index.js:1274:25)
at PluginStore.exec (C:\Users\frans\AppData\Local\npm-cache\_npx\17e7bc1abc5c95a0\node_modules\simple-git\dist\cjs\index.js:1309:29)
at C:\Users\frans\AppData\Local\npm-cache\_npx\17e7bc1abc5c95a0\node_modules\simple-git\dist\cjs\index.js:1676:43
at new Promise (<anonymous>)
at GitExecutorChain.handleTaskData (C:\Users\frans\AppData\Local\npm-cache\_npx\17e7bc1abc5c95a0\node_modules\simple-git\dist\cjs\index.js:1674:16)
at GitExecutorChain.<anonymous> (C:\Users\frans\AppData\Local\npm-cache\_npx\17e7bc1abc5c95a0\node_modules\simple-git\dist\cjs\index.js:1658:44)
at Generator.next (<anonymous>)
at fulfilled (C:\Users\frans\AppData\Local\npm-cache\_npx\17e7bc1abc5c95a0\node_modules\simple-git\dist\cjs\index.js:55:24) {

task: {
commands: [
'clone',
'git@github.com:gluestack/gluestack-ui.git',
'C:\Users\frans/.gluestack/cache/gluestack-ui'
],
format: 'utf-8',
parser: [Function: parser]
}
}
WARNING: gluestack/ui react installer is currently not available. Please configure it manually in your project.
Error: ENOENT: no such file or directory, open 'C:\Users\frans\source\organization-86\project-3-front/gluestack-ui.config.ts'
at Object.openSync (node:fs:600:3)
at Object.readFileSync (node:fs:468:35)
at componentAdder (C:\Users\frans\AppData\Local\npm-cache_npx\17e7bc1abc5c95a0\node_modules\gluestack-ui\component-adder\index.js:172:27)
at main (C:\Users\frans\AppData\Local\npm-cache_npx\17e7bc1abc5c95a0\node_modules\gluestack-ui\index.js:14:11) {
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'C:\Users\frans\source\organization-86\project-3-front/gluestack-ui.config.ts'
}

hey @franscal7, Can elaborate more on this issue?
When are you getting this issue?

Hi, I receive that error when I use npx gluestack-ui in my project react native 0.71.4 (I am using windows)

@franscal7 Have you by chance changed your local SSH key on your computer lately and forgotten to update it in your Github profile?
Also, make sure you've added Github's SSH key fingerprints to your known_hosts file.
Here's a couple of resources I found today when I ran into a similar issue, the second article will help guide you on updating your known_hosts file on Windows while the first article lists Github's SSH key fingerprints:

https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints
https://kinsta.com/knowledgebase/warning-remote-host-identification-has-changed/

This might help.
https://github.com/gluestack/gluestack-ui/issues/247

Hey @franscal7, this issue is fixed with latest version of gluestack-ui. Closing this issue please feel free to reopen it.


Subctl's version reports as subctl-devel-1-g...

This is due to version calculation done in Shipyard, and since we changed the devel tag in operator it's now a bit broken.
The impact seems to be quite low.
We can fix this (either have it "proper" version, or just "devel" or something, if this issue has enough priority.

It is very useful for my CI to determine the major version which then I expect to lookup in OCP registry, for the join override command.
For example:
subctl version
subctl version: subctl-devel-1-g88ab629

It used to show 0.8.0 instead of "1" until recently, so CI downloaded the 0.8.0 image accordingly.

It is very useful for my CI to determine the major version which then I expect to lookup in OCP registry, for the join override command.
For example:
subctl version
subctl version: subctl-devel-1-g88ab629

It used to show 0.8.0 instead of "1" until recently, so CI downloaded the 0.8.0 image accordingly.

This would still be nice to fix.

@mkolesnik there have been a few changes in this area lately, is this one still relevant?

$ curl -Ls https://get.submariner.io | VERSION=devel bash
Installing subctl version devel
  OS detected:           linux
  Architecture detected: amd64
  Download URL:          https://github.com/submariner-io/submariner-operator/releases/download/subctl-devel/subctl-devel-linux-amd64.tar.xz

Downloading...
subctl-devel-linux-amd64 has been installed as /home/mkolesni/.local/bin/subctl
This provides subctl version: devel

$ curl -Ls https://get.submariner.io | VERSION=0.9.0 bash
Installing subctl version v0.9.0
  OS detected:           linux
  Architecture detected: amd64
  Download URL:          https://github.com/submariner-io/releases/releases/download/v0.9.0/subctl-v0.9.0-linux-amd64.tar.xz

Downloading...
subctl-v0.9.0-linux-amd64 has been installed as /home/mkolesni/.local/bin/subctl
This provides subctl version: v0.9.0

Seems fine to me, closing for now unless there are any objections


Updating the createRelease script to ensure the repo is clean and contains all files

@eloots So the problem with the prefix is that it results in a path that is inconsistent with the updates to our documentation. I.E. I extract the folder and I end up with FTTASS-fast-track-akka-streams-scala rather than FTTASS-fast-track-akka-streams-scala-. So if we go that route we need to update all the documentation again.
I am not sure what you mean when you say you could end up with a bunch of files. I think that depends a bit on how you unzip. If I just use the archive utility in Mac then this works fine. Perhaps command line might work different I suppose.

That 'problem' was actually already present in your first version. Omitting the base folder in the zip folder altogether is a problem as it is confusing to the student as it just dumps a bunch of files in a folder, whereas with a prefix, the student will just see a new folder with the real content contained in that folder.
As for the inconsistency with the names in the slides, that's a different issue. Either you change the script to include to version in the prefix folder (in which case the sides don't need to be changed), or else you put everything in a folder with a name that doesn't include the course version number.
I don't have a preference for either, by that there should be a prefix folder seems important to me.
WDYT?

Forgot this: I used unzip from the command line. Then you see this effect.


License - Updates

License - Set for RPM build
Install License.txt

@LakshmiKumar23 can you verify that this PR exports license into the package?


perf(combine-api): improved performance for simulations

Addresses #4336. Will close this issue once the deployment has been verified to be improved.

:tada: This PR is included in version 9.13.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add ISSUE_TEMPLATE.md

While we have a description of how we want our issue reports to look in our contributing.md file, it would be good to have an ISSUE_TEMPLATE.md file as well. It would auto-populate the issue reporting form and make issue reporting quicker and cleaner.

Fixed in PR #22.


Add UUID validation

UUID Validation
How about we add a trait something as
public function validateResult($result, $expectedResult )
{
        $this->assertInstanceOf(Result::class, $result);
        $this->assertSame(false, $result->isValid());
}

[x] Are you creating a new feature?

[ ] Why is the new feature needed? What purpose does it serve?
[ ] How will users use the new feature?
[x] Base your feature on the develop branch, and submit against that branch.
[x] Add only one feature per pull request; split multiple features over multiple pull requests
[x] Add tests for the new feature.
[ ] Add documentation for the new feature.
[ ] Add a CHANGELOG.md entry for the new feature.

@weierophinney this PR is done, do you need to have documentation before merge or documentation can be a separate PR ?

Thanks, @harikt ! I've also imported the UUID validator documentation at this time.


pmt init leads to error

Hey there!
I'm trying to set up pmt so I am able to access two databases in the same app through prisma.
After installing prisma-multi-tenant, running pmt init and giving it the management db url, it hits an Cannot read property 'plural' of undefined at the Creating example script... step.

I am also getting this warning when going through init Warning: This version of prisma-multi-tenant is compatible with<EMAIL_ADDRESS>but you have<EMAIL_ADDRESS>installed. This may break in unexpected ways.
My local and globally installed @prisma/cli are at v2.4.1, so I'm not sure why this shows up even. Not sure if this could be related to the init error?
I've reinstalled all packages multiple times and I'm really at a loss at what to do here.
// global
<EMAIL_ADDRESS>// deps
"@prisma-multi-tenant/client": "^2.3.1",
"@prisma/client": "^2.9.0",
// dev dep
"@prisma/cli": "2.4.1",

Any nudge in the right direction is greatly appreciated.

Hi @jaaneh ! Thanks for the issue 🙏  There was indeed a bug following a change in Prisma. This should now have been resolved with the release of<EMAIL_ADDRESS>Don't hesitate to reopen the issue if you still experience the issue

Hey, thanks!
The current 2.4.1 leads to this, do you happen to know what could be the reason?

@Errorname Hey! I'm stuck at a EISDIR read error after upgrading to 2.4.1. Any ideas?

Ah! Yes, it's an issue with Windows and directories with a space in them. I'll fix this and release a new version

Ah! Yes, it's an issue with Windows and directories with a space in them. I'll fix this and release a new version

Appreciate it! I've stumbled across so many errors due to having 2 first names.

It should now be fixed with<EMAIL_ADDRESS>

We have a multi-tenancy-example.js file! Appreciate the help :-)


chart部署失败遇到的问题

In GitLab by @lushiqiang on Nov 19, 2020, 24:41
1.chart部署失败时，无详细提示信息，接口只会返回500，无法确定具体报错原因；
2.chart部署失败后，再次部署相同名称会显示已占用，但是在服务列表中无相关服务，无法进行手动删除。

In GitLab by @lushiqiang on Nov 19, 2020, 24:47
changed title from chart to chart{+部署失败遇到的问题+}

In GitLab by @lushiqiang on Nov 19, 2020, 24:47
changed the description

In GitLab by @tmon546596046 on Nov 24, 2020, 07:05
mr http://open.inspur.com/TechnologyCenter/board/merge_requests/2662

In GitLab by @tmon546596046 on Nov 25, 2020, 24:42
mentioned in merge request !2663

In GitLab by @tmon546596046 on Nov 25, 2020, 02:32
mr !2663 for hotfix-7.4 branch


Add Binary Insertion Sort in Python

What have you Changed(must)
I have added a new file: binary_insertion_sort.py
Issue no.(must) - #859
Self Check(Tick After Making pull Request)

[X] This issue was assigned to me if not it will marked as spam.
[X] My file is in proper folder.
[X] I am following clean code and Documentation.
[X] I have added title and what program will do first in the file.

@div-bargali Check this out. As a contributor, I want my PR to be reviewed just like others would instead of directly merging in the master using my privileges of the repository.
Thanks!


Add chunk encoding for float histogram

This PR adds a new chunk encoding for the float histogram. This is a prerequisite to test out https://github.com/prometheus/prometheus/pull/11522/ (it includes some work from that PR for the chunk). @marctc and I decided it is best to have it as a separate PR for easy review.

On my review queue…

To reiterate: I think we should handle the gauge histogram case later (see detailed comments above). Let's first get the float histogram (for counter-like float histograms) done, and then think about the gauge histogram case (without counter resets, with disappearing buckets, and such), as this needs to be solved for integer histograms, too.
Another thing we can think about later: If a FloatHistogram is effectively an integer histogram (because all the floats in it can be represented by ints), we can store it more efficiently as a normal (integer) Histogram. However, this adds the complication that we need to re-encode or at least start a new chunk if suddenly the next histogram for the same series is an "actual" FloatHistogram. This optimization could be done behind the scenes, or we can "leave it to the caller", i.e. implement it in the ingestion part. This deserves some thought, as we should probably do the same thing for conventional float samples. Many of those are effectively integers and could be stored much more efficiently. That's true for something like request counters but even more so for the many many time series that are always 1 or always 0, or those that are either 1 or 0. (For those, we could introduce even more efficient RLE like encodings, see #10275 .) All of this is out of scope of this PR, of course. I just mention it to justify why we don't want to do this kind of optimization right here.


No functionality for recover / reset user password

Just suggest to add this functionality.

On login screen needs to be a link to send email to user email for reset / recover user password.

In user management http://<IP_ADDRESS>:3000/useradmin needs to be same functionality available for admin users.

I agreed both of these are needed
2 is easy
1 will take a bit longer

There are 2 options to do point 1:

just reset password to random value and send email with new pass to user. As extention - mark password as temporary and request to change it when user is comming to saltcorn web.

develop service of temporary links for reset password and send email with the link to reset password.

Just choose what is easest / more suitable from Your point of view.

users can change own password now.

The main difficulty is how to enable sending mail at all. But I agree this is needed for a more complete application. I will do this for the next release (0.2.1)


feat: add mutagen-io/mutagen

https://github.com/aquaproj/aqua-registry/pull/5693 mutagen-io/mutagen: Fast file synchronization and network forwarding for remote development
$ aqua g -i mutagen-io/mutagen

Thanks.

Prerelease https://github.com/aquaproj/aqua-registry/releases/tag/v3.37.0-1

Released https://github.com/aquaproj/aqua-registry/releases/tag/v3.37.0


Mc Geant fix

events in time window adjusted according to Poisson distribution
added control histogram
JPetHit has a connection to MC reconstructed hit
added multiplicity flag propagation to hit structues

Found 4 violations:
Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L194
The function 'getMCindex' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L130
The function 'getPos' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L146
The function 'getSignal' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L386
The function 'setSignals' is never used.

Nice work, but tests are not passing. Maybe it is this uint problem

"Error: Symbol uint i is not defined in current scope  /home/travis/build/JPETTomography/j-pet-framework/DataObjects/./JPetHit/JPetHit.h:88:" etc

Found 3 violations:
Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L130
The function 'getPos' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L146
The function 'getSignal' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L379
The function 'setSignals' is never used.

Found 3 violations:
Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L130
The function 'getPos' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L146
The function 'getSignal' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L379
The function 'setSignals' is never used.

Found 4 violations:
Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L194
The function 'getMCindex' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L130
The function 'getPos' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L146
The function 'getSignal' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L386
The function 'setSignals' is never used.

Found 4 violations:
Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L194
The function 'getMCindex' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L130
The function 'getPos' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L146
The function 'getSignal' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L386
The function 'setSignals' is never used.

@wkrzemien do you approve the implementation of changes you suggested?

Found 4 violations:
Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L194
The function 'getMCindex' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L130
The function 'getPos' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L146
The function 'getSignal' is never used.

Reporter: root-6-cppcheck
Rule: unusedFunction
Severity: INFO
File: /var/jenkins_home/workspace/j-pet-framework-PRs-root-6/DataObjects/JPetHit/JPetHit.cpp L386
The function 'setSignals' is never used.

retest it, please!


LSTM Regression

Pull Request Description
What issue does this change request address?
What are the significant changes in functionality due to this change request?
Adds a LSTM regression (we have an existing LSTM classifier)

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[ ] 1. Review all computer code.
[ ] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[ ] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[ ] 4. Automated Tests should pass, including run_tests, pylint, manual building and xsd tests. If there are changes to Simulation.py or JobHandler.py the qsub tests must pass.
[ ] 5. If significant functionality is added, there must  be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large test. If new development on the internal JobHandler parallel system is performed, a cluster test must be added setting, in  XML block, the node <internalParallel> to True.
[ ] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[ ] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[ ] 8. If an analytic test is changed/added is the the analytic documentation updated/added?
[ ] 9. If any test used as a basis for documentation examples (currently found in raven/tests/framework/user_guide and raven/docs/workshop) have been changed, the associated documentation must be reviewed and assured the text matches the example.

Job Test mac on c2647a1 : invalidated by @joshua-cogliati-inl
restarted civet

Job Mingw Test on c2647a1 : invalidated by @joshua-cogliati-inl
restarted civet

Job Mingw Test on e4a31fa : invalidated by @joshua-cogliati-inl
restarted civet

Job Test Fedora 31 on dfad1fa : invalidated by @joshua-cogliati-inl
failed tests/framework/ensembleModelTests/testEnsembleModelLateralInsertions

@wangcj05 or @alfoa This is ready for more review.  Thanks.

When I compared the KerasLSTMClassifier and KerasLSTMRegression, they share most of the functions. This suggests to me it is probably better to combine these two classes. I suggest we have group discussion. @alfoa @joshua-cogliati-inl


API Resource - Relationships

So, I've added support for "Responsable" props: 2b966ac27964534ee3bbe585b0ea0fff8babb53a
This approach is more like #70. I still don't understand how this was superior to that solution. Sorry if I've missed something.
I've tested this with both single resource responses and collection resource responses, and it works great.
Originally posted by @reinink in https://github.com/inertiajs/inertia-laravel/pull/82#issuecomment-570242405

This approach is more like #70. I still don't understand how this was superior to that solution. Sorry if I've missed something.

Have you seen my comment here? https://github.com/inertiajs/inertia-laravel/pull/70#issuecomment-570243307
Also, I'm not really sure what you're asking in this issue. Can you please clarify?

Sorry had to go. I didn't pay attention to explicit  $wrap = null;
I used json resource before your commit and when I upgraded to 0.2 all the properties had to be referenced as user.data.*

Great! 🤟


I2C

Overview:
In our project, we are utilizing standard I2C communication to configure camera registers for various functionalities. Currently, only a partial implementation for writing values to registers one at a time (Option 5, page 19 IMX219 ) has been incorporated. However, the camera offers a broader range of I2C communication options, including single and sequential reads, as well as sequential writes. This issue aims to expand the existing I2C implementation to support all available communication modes and enhance the configurability of camera registers.
Background:
I2C (Inter-Integrated Circuit) is a widely used serial communication protocol for interfacing with peripheral devices, such as cameras, sensors, and memory modules. It facilitates the exchange of data between a master device (e.g. FPGA) and one or more slave devices (e.g. camera) over a two-wire interface.
Current Implementation:
At present, our implementation supports single writes to camera registers, enabling the configuration of individual register values. The FPGA reads the acknowledge bit from the camera, indicating successful register configuration.
Objective:
The objective of this issue is to enhance the existing I2C communication module to support all available modes for configuring camera registers. By implementing comprehensive I2C functionality, we aim to maximize the configurability and performance of the camera within the project.
Next Steps:

Implement support for single and sequential reads, as well as sequential writes, based on the provided camera documentation.
Verify proper data transfer and acknowledge bit handling to ensure reliable communication between the FPGA and the camera.
Conduct thorough testing to validate the functionality of the enhanced I2C communication module across different register configurations and communication modes.

These port names in i2c_ctrl.sv are the mirror image of what they should have been:
input  logic        scl_do,
output logic        scl_di,

input  logic        sda_do,
output logic        sda_di

They seem to be given from the perspective of IOBUF. Consider changing them so that _do is for module outputs, and _di for module inputs.


Remove deprecated code

Remove deprecated code.
Tasks:

remove the deprecated code
make sure the deprecation is correctly documented in 2.x (since, forRemoval on @Deprecated annotation, use @deprecated javadoc tag to link to the correct new implementation, or describe what to do if a simple replacement does not exist)
validate documentation and examples are correct with regard to the deprecated element

The following modules should be updated (classes either contain a deprecated element, or are deprecated fully)

[x] #4363
[ ] #4364
[x] #4365
[x] #4366
[x] #4367
[x] #4368
[x] #4369
[x] #4370
[x] #4371
[x] #4372
[x] #4373
[x] #4374
[x] #4480

Closing epic. Leaving last issue open.


Yatin: Watch https?://[a-zA-Z0-9]+.onion

Yatin requests the watch of the watch_keyword https?:\/\/[a-zA-Z0-9]+\.onion. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

https?:\/\/[a-zA-Z0-9]+\.onion has been seen in 9 true positives, 10 false positives, and 3 NAAs.

Rejected by cigien in Charcoal HQ. Reason: 'by authors request  '


Add application in  E2E tests

Current Behavior

Currently we run e2e tests which run a patternfile(which only installs nginx service mesh)
Desired Behavior

We need to a nginx demo application in patternfile format and add that in e2etest
Implementation

Acceptance Tests

Mockups

Contributor Guides and Resources

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Meshery UI in Figma
🙋🏾🙋🏼 Questions: Layer5 Discussion Forum and Layer5 Community Slack

@jbyers19  Wanna work on it?

@Revolyssup, perhaps. Not sure when I'll get to it though. Got a lot of other things I'm working on right now.


getting int_parsing error

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
Im trying to call api "remove_tag_from_image" but imputed tag_id parsed as string and cannot figure out why. I'm getting this error : Validation Error: [{'type': 'int_parsing', 'loc': ('path', 'tag_id'), 'msg': 'Input should be a valid integer, unable to parse string as an integer', 'input': 'remove_tag_from_image', 'url': 'https://errors.pydantic.dev/2.5/v/int_parsing'}]
Example Code
@router.delete("/tags/remove_tag_from_image")
def remove_image_tag(
    request: Request,
    image_hash: str,
    tag_id: int,
):
    # The query now checks for the specific tag_id within the array of tags
    query = {"image_hash": image_hash, "tag_id": tag_id}
    result = request.app.image_tags_collection.delete_one(query)

    # If no document was found and deleted, raise an HTTPException
    if result.deleted_count == 0:
        print("Tag or image hash not found!")

    return {"status": "success"}

Python, Pydantic & OS Version
pydantic version: 2.5.1
        pydantic-core version: 2.14.3
          pydantic-core build: profile=release pgo=false
                 install path: /Users/ssss/Desktop/repos/img-pipeline/lib/python3.11/site-packages/pydantic
               python version: 3.11.3 (main, Apr 19 2023, 18:51:09) [Clang 14.0.6 ]
                     platform: macOS-10.16-x86_64-i386-64bit
             related packages: typing_extensions-4.8.0 fastapi-0.101.1

@sandrodevdariani,
The error message shows that you're passing in the string 'remove_tag_from_image' for the tag_id field. You'll have to pass a valid integer to resolve this issue.


fix(config): add protocol in config schema

Description:

Add protocol option
nonempty() deprecated and use min(1) instead

Resolved: #1594

We don't seem to support wss yet. There should be a problem with the code logic.

We don't seem to support wss yet. There should be a problem with the code logic.

This PR solves the problem that protocol option is not declared in the parser. In our type annotation, the protocol parameter exists, but is not recognized by the parser, which will throw an error when parsing the configuration file (as long as it is set, regardless of the value). In #1594, I set protocol to ws and an error occured.

But we have not implemented this function. Currently, our server has many functional defects. This is why I want to reconstruct node. This option currently has no effect.


Combine data for PR - commits and files in to one DF

Done - there are 3 functions :

To generate all PR info
To generate commits info
To generate files info


[Docs] Autosave feature depends on TPM plugins order

In order to be executed periodically, the plugin updates the status-right tmux variable. This way it is executed every 15 seconds (default update time for status-right). In case some plugin (usually themes) overwrites the status-right variable, the autosave feature stops working. To fix this issue, place the plugin last in the TPM plugins list. This is a crucial information that must be added to the README file.

You're right. Feel free to open a PR.
It would be ideal if we could come up with a way to update status-right AFTER theme plugins do their job.


Optimize FOP PDF index generation #2086

This refactoring reduces index processing time for the FOP-specific stylesheet from about 4 seconds to about 200 milliseconds for the DITA 1.2 specification.
The XSL-FO this code produces is correct insofar as the original code is correct: the resulting XSL-FO is the same for this set of test files and the DITA 1.2 specification both before and after this change.
I tried refactoring the code in index.xsl, too, but it didn't yield any gains, so I think we can leave it as it is for now.

Hmm, not sure why the Travis build failed. Tests pass for me locally.


can you update vue1.0's template to webpack2?

Our some vue1.0 projects running with webpack1, and i want use webpack2 to replace it to get better performance.

To be perfectly honest, I suspect that we won't find time to do this anytime soon, there's a lot of other stuff to do that has a higher impact. At least I won't have the time, personally - can't speak for the rest of the guys with certainty.
We are open to PRs though, so the community might help out :)


tkinter error?

Traceback (most recent call last):
File "/home/user/programs/calcuis/chat_gui_env/bin/callgg", line 8, in
sys.exit(main())
File "/home/user/programs/calcuis/chat_gui_env/lib/python3.8/site-packages/callgg/main.py", line 77, in main
from gguf_selector import connector
File "/home/user/programs/calcuis/chat_gui_env/lib/python3.8/site-packages/gguf_selector/connector.py", line 22, in
from tkinter import *
ModuleNotFoundError: No module named 'tkinter'
pip install tkinter
ERROR: Could not find a version that satisfies the requirement tkinter (from versions: none)
ERROR: No matching distribution found for tkinter
pip install tkinter
ERROR: Could not find a version that satisfies the requirement tkinter (from versions: none)
ERROR: No matching distribution found for tkinter
(chat_gui_env) user@zero-one:~/programs/calcuis$ pip3 install Tk interface
Collecting Tk
Downloading tk-0.1.0-py3-none-any.whl (3.9 kB)
Collecting interface
Downloading Interface-2.11.1.tar.gz (19 kB)
Collecting zope.interface
Downloading zope.interface-6.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (249 kB)
|████████████████████████████████| 249 kB 11.9 MB/s
Collecting zope.schema
Downloading zope.schema-7.0.1-py3-none-any.whl (85 kB)
|████████████████████████████████| 85 kB 16.8 MB/s
Requirement already satisfied: setuptools in ./chat_gui_env/lib/python3.8/site-packages (from zope.interface->interface) (44.0.0)
Collecting zope.event
Downloading zope.event-5.0-py3-none-any.whl (6.8 kB)
Building wheels for collected packages: interface
Building wheel for interface (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/user/programs/calcuis/chat_gui_env/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-2f9g76r1/interface/setup.py'"'"'; file='"'"'/tmp/pip-install-2f9g76r1/interface/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-3h0pph9b
cwd: /tmp/pip-install-2f9g76r1/interface/
Complete output (6 lines):
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help
error: invalid command 'bdist_wheel'
ERROR: Failed building wheel for interface
Running setup.py clean for interface
Failed to build interface
Installing collected packages: Tk, zope.interface, zope.event, zope.schema, interface
Running setup.py install for interface ... done
Successfully installed Tk-0.1.0 interface-2.11.1 zope.event-5.0 zope.interface-6.3 zope.schema-7.0.1
python --version
Python 3.8.10
OS: Ubuntu 20.04 focal
Kernel: x86_64 Linux 5.15.0-102-generic
Uptime: 16m
Packages: 2020
Shell: bash 5.0.17
Disk: 98G / 1.9T (6%)
CPU: AMD Ryzen 9 7950X3D 16-Core @ 32x 4.2GHz
GPU: AMD/ATI
RAM: 3093MiB / 192425MiB

python version 3.x comes with tkinter; so you don't need to install it from pip actually; try pip3 instead of pip to install callgg, i.e., pip3 install callgg; then use python3 to run it instead of python since ubuntu or linux or macOS may need to specify python version (python3 means python version 3.x and python refers to python versions 1.x-2.x); just tested callgg in mac and windows recently, it works fine; and your hardware is great definitely; if it doesn't work, try to reinstall/upgrade your python to the latest version

don't bother on installing tkinter; it is the default module (built-in) in python3; this issue will be closed at this point; if the error still welcome to open a new issue


Mempool: remove disconnected orphans

Remove orphan transactions sent by a peer when the peer disconnects.
I am not satisfied with the way the events are wired up. Since p2p already listens for mempool events (orphans being processed) and now mempool listens to p2p events, there is a bit of circularity. Usually, the subsystem subscribes to events it wants to listen to during its setup. However in this case, p2p setup code subscribes mempool to p2p events. Another unfortunate side effect of this is that mempool handler that processes p2p events is now exposed via public API.
A follow up PR that addresses these issues is in the works. It involves separating p2p interface and mempool interface into their own crates. As a side effect, we get a better interface / implementation separation for these two subsystems at crate level.

I am not satisfied with the way the events are wired up. Since p2p already listens for mempool events (orphans being processed) and now mempool listens to p2p events, there is a bit of circularity. Usually, the subsystem subscribes to events it wants to listen to during its setup. However in this case, p2p setup code subscribes mempool to p2p events. Another unfortunate side effect of this is that mempool handler that processes p2p events is now exposed via public API.

This has now been changed to a subsystem call rather than event subscribtion. The issue that the event handler for processing peer disconnect events by mempool is now a part of the public API still remains.

A follow up PR that addresses these issues is in the works. It involves separating p2p interface and mempool interface into their own crates. As a side effect, we get a better interface / implementation separation for these two subsystems at crate level.

Abandoning the approach mentioned here for now.


null ref in ConfigureAwaitAnalyzer

Severity	Code	Description	Project	File	Line	Suppression State	Detail Description
Error	AD0001	Analyzer 'Particular.CodeRules.ConfigureAwait.ConfigureAwaitAnalyzer' threw an exception of type 'System.NullReferenceException' with message 'Object reference not set to an instance of an object.'.	NServiceBus.Core(netstandard2.0)		1	Active	Analyzer 'Particular.CodeRules.ConfigureAwait.ConfigureAwaitAnalyzer' threw the following exception:
'Exception occurred with following context:
Compilation: NServiceBus.Core
SyntaxTree: C:\Code\Particular\NServiceBus\src\NServiceBus.Core\Persistence\Learning\LearningSynchronizedStorageSession.cs
SyntaxNode: await sagaStorageFile.Read<EMAIL_ADDRESS>(45,31)-(45,57)

System.NullReferenceException: Object reference not set to an instance of an object.
   at Particular.CodeRules.ConfigureAwait.ConfigureAwaitAnalyzer.AnalyzeForConfigureFalse(SyntaxNodeAnalysisContext context)
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.<>c__43`1.<ExecuteSyntaxNodeAction>b__43_0(ValueTuple`2 data)
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.ExecuteAndCatchIfThrows_NoLock[TArg](DiagnosticAnalyzer analyzer, Action`1 analyze, TArg argument, Nullable`1 info)
-----
'.

hey @SimonCropp , could this be due to the same issue as described in this issue: https://github.com/Particular/Particular.CodeRules/issues/4 ?

👍
fyi: there's a PR to fix the NRE here: https://github.com/Particular/Particular.CodeRules/pull/9

#9 has been fixed as part of 0.2.1. I'm going to close this issue as I think this is caused due to the same bug. Please feel free to reopen in case you continue to see an NRE.
Thanks for raising this issue, the exception information was definitely helpful 👍


Time scale format shows weekday abbreviation except for Sunday

The format for a default time scale chooses from multiple formats based on values present in the Dates given.  For the first of each month it produces the complete month name.  For other days it sometimes chooses to use the weekday/date format "%a %d", and sometimes the month/date format "%b %d".  It bases that choice on whether it's Sunday.  This seems strange to me, because I get axes that look like this:
October, Fri 02, Sat 03, Oct 04, Mon 05, ...
It seems to be lines 139-140 of time/scale.js:
  ["%a %d", function(d) { return d.getDay() && d.getDate() != 1; }],
  ["%b %d", function(d) { return d.getDate() != 1; }],

getDay is 0 for Sunday.
To reproduce, run the following:
var f = d3.time.scale().tickFormat();
f(new Date("2015/10/01")) // -> "October"
f(new Date("2015/10/02")) // -> "Fri 02"
f(new Date("2015/10/03")) // -> "Sat 03"
f(new Date("2015/10/04")) // -> "Oct 04"

For myself, I'd want either the weekday formatting or the month formatting, but I don't know why anyone would want both in the same chart.

See time.tickFormat for the justification. If you want a different behavior, you’re welcome to roll your own implementation to axis.tickFormat, possibly basing it off the existing one.

I understand, and agree with the documentations characterization as "somewhat unusual".


Make Langium language server more robust

Closes https://github.com/eclipse-langium/langium/issues/1633
Makes the type inference methods more robust against errors due to missing elements. In some cases, this could make some validations "disappear", but only in the presence of parser errors - this is alright, since the file doesn't compile anyway.

@ballcoach12 Do you mind testing this PR against your grammar? You can run the Run Grammar Extension config to test that this works as expected.


NIFI-826 [REVIEW ONLY] Initial commit for deterministic templates

Added inceptionId via InceptionAware class which is the super class of ComponentDTO and TemplateDTO and is also comparable
The 'inceptionId' is also a Type 1 UUID which is comparable

@mcgilman so, this is the initial commit that essentially demonstrates the approach that is discussed in JIRA. Basically the new ID _ inceptionId_ is generated and is immutable and perpetual. With such contract the serialization of the components is no deterministic. There is initial test there that demonstrates, but I'll be adding more. Let's find time to discuss it and also see if we need to address purging of the elements that do not belong there as part of this effort or a separate.

@olegz I believe that we're going to need to introduce the templateId or inceptionId into the flow.xml not just the template DTO. The reasoning is that we need to support the following case:
Two different systems running the same dataflow should produce the same serialized XML. In order for this to happen, each component needs to produce the same UUID and within the collections they need to be ordered the same. Additionally, we need to only serialize fields that need to be present during template instantiation.
After template instantiation, they should be able to generate a new template and the components should still have the same UUIDs, ordered correctly, and have the correct fields serialized. So that when diffed with the originally serialized template we would only see the modifications.


update ui 2

fixed empty list cell colors:

fixed show panel colors

Codecov Report

Merging #78 (d6c87dc) into master (7a198d7) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #78   +/-   ##
=========================================
  Coverage     70.21%   70.21%
  Complexity      565      565
=========================================
  Files            97       97
  Lines          1897     1897
  Branches        201      201
=========================================
  Hits           1332     1332
  Misses          481      481
  Partials         84       84

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Text no longer truncates if too long, goes to next line instead. Phone number field pushed to next line to accommodate potentially longer names. Also fixed some text sizing inconsistencies

Not sure why index prints on different line. Will look into it

Final result:


Enhancement - sort option for columns

Unless I've missed it, there doesn't seem to be a way to auto-sort a particular column.  This would be a great addition.

That's right. Sorting has been left to doing it before exporting to Excel. Could you say more about what you're looking for?

I've had issues with "preformatting" my tables, where the Export-Excel shows unintelligible-to-me data strings and not the output I'm looking for.  I should double check if it's on my end, which may be likely.
What I was looking for was a switch that would sort [ascending|descending] using -sort and -sortby for a specific named column in the header/top row of the worksheet.
I would see it added to a line like so:
$list | Export-Excel -Path "$Env:USERPROFILE\Desktop\DiskSpace.xlsx" -Show -WorkSheetname DiskSpace -BoldTopRow -AutoFilter -FreezeTopRow -AutoSize with -sort descending -sortcolumn XX where XX could be the column letters like A, B, or YZ, or a column named in row A that's found in the output of what someone would be using Export-Excel for.   For example,  I have columns listed Projects, Dates, Donors etc but not necessarily always in the same columns.   Specifying -sortcolumn Donors, regardless of which column it was, would sort that column automatically on export.
I'm not certain if that was explained very well, please let me know if it needs more.

Thanks for writing that up. I had looked at adding that early on. I'll investigate to see what is possible. If you  want, feel free to try to implement and make a PR.

I should have some time to look into adding it this weekend.  If I come up with anything I will definitely let you know.

I looked EPPlus, it's the library I wrap with PS to generate the xlsx. They don't support sorting.
https://epplus.codeplex.com/workitem/14791

https://github.com/JanKallman/EPPlus/issues/78

Thanks @kiquenet. Once the dll fully works on dotnet core, the PS module can be tested with it.


Add XMPP user documentation in web interface

Have adde basic connection details (username/port).

It would be good to add the multi user chat server name, too. conference.server.name.com. On Android Xabber I had to specify that.
I noticed the icon incorrectly matches the notifications modal, instead of the XMPP/Jabber one in the dropdown.

I've fixed the icons, and expanding on the connection info. I also added a list of supported clients - which we can expand on.


Javascript Copy Functionality

Describe the feature you'd like
I am trying to add a button would copy text to the clipboard. I think this would be a beneficial functionality for a number of users.
Describe the benefits this feature would bring to BookStack users
I believe this is supported in all modern browsers. Use Case: IT Dept Using Bookstack as a Kbase. The Admin creates a page with canned responses. The user simply finds the response clicks a copy button and then can go on and paste that in an email or chat.
Additional context
I've tried to implement it using variations of the HTML and JS here. https://www.w3schools.com/howto/howto_js_copy_clipboard.asp However IDs and Classes and Script seems to be scrubbed out occasionally or changed. I've also tried implementing<EMAIL_ADDRESS>to no avail.

Hi @typkrft,
BookStack does already support click-to-copy functionality on code blocks:

In you use-case, you could simply format each of your canned responses as a code block which will show this copy button upon hover.
Does this suit your need?

I think this could work. Thanks for your response and to the Dev teams hard work.
On Aug 3, 2019, 11:18 AM -0400, Dan Brown<EMAIL_ADDRESS>wrote:

Hi @typkrft,
BookStack does already support click-to-copy functionality on code blocks:
In you use-case, you could simply format each of your canned responses as a code block which will show this copy button upon hover.
Does this suit your need?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@typkrft No worries! Will therefore close this off.


refactor!: Clean up table roles and properties

The roles and properties that I copied from Chromium are complicated compared to the ARIA standard, and the meanings of the various properties were never documented. I think that if the ARIA roles, properties, and (lack of) relations are good enough for both GTK 4 and ARIA itself, they're probably good enough for us, too. I'm quite sure we don't need the Column role; it doesn't even have a proper mapping on two of the three platforms. As for the old table_header, table_row_header, and table_column_header relations, I guess the AT (or in our case, maybe the consumer library) should scan for the headers rather than requiring the toolkit to specify such relations; there are certainly no such relations in ARIA.
The new row_index_text and column_index_text properties are based on ARIA properties that are also in GTK 4, that we didn't previously have.

Oh, and I dropped the table_ prefix from the property names because, as with hierarchical_level, long names are just more cumbersome.

I fixed merge conflicts from #390. I'll merge now.


Guac contract changes

Expiration for newChannel to prevent griefing and toxic waste lying around. Also check for similar issues in other functions.
Only allow one channel between each pair of addresses.
Salt messages to prevent replays between deployments and anything else.

deadline:11/8/2018

@jtremback what about hashlocks? Is it safe to remove them from the ABI?

@jtremback What do you think about firing blockchain events at the end of functions in guac in a similiar way what Connectix does?


List inbox and send mail return Exception: Content type text/html does not have a factory registered to be parsed

Where did you get the code?

[x] Downloaded from GitHub
[ ] Downloaded from the Microsoft Graph quick start tool
[ ] Followed the tutorial from Microsoft Graph tutorials

Describe the bug
Listing or sending email using the user-auth\graphtutorial code from this repo returns the following error (full traceback below):
Exception: Content type text/html does not have a factory registered to be parsed

To Reproduce
Steps to reproduce the behavior:

Follow the tutorial, register an application, etc.
In user-auth\graphtutorial, run python main.py (Python 3.11)

$ python main.py
Python Graph Tutorial

To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code ABCD1234 to authenticate.
Hello, Francois XXX
Email<EMAIL_ADDRESS>

Choose option 1

Please choose one of the following options:
0. Exit
1. Display access token
2. List my inbox
3. Send mail
5. Make a Graph call
1
User token: **redacted**

Choose option 3 (send email)

Please choose one of the following options:
0. Exit
1. Display access token
2. List my inbox
3. Send mail
4. Make a Graph call
3
Traceback (most recent call last):
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\main.py", line 112, in <module>
    asyncio.run(main())
  File "C:\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "C:\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Python311\Lib\asyncio\base_events.py", line 653, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\main.py", line 45, in main
    await send_mail(graph)
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\main.py", line 102, in send_mail
    await graph.send_mail('Testing Microsoft Graph', 'Hello world!', user_email or '')
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\graph.py", line 93, in send_mail
    await self.user_client.me.send_mail.post(body=request_body)
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\.env\Lib\site-packages\msgraph\generated\users\item\send_mail\send_mail_request_builder.py", line 50, in post
    return await self.request_adapter.send_no_response_content_async(request_info, error_mapping)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\.env\Lib\site-packages\kiota_http\httpx_request_adapter.py", line 365, in send_no_response_content_async
    await self.throw_failed_responses(response, error_map, parent_span, parent_span)
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\.env\Lib\site-packages\kiota_http\httpx_request_adapter.py", line 464, in throw_failed_responses
    root_node = await self.get_root_parse_node(
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\.env\Lib\site-packages\kiota_http\httpx_request_adapter.py", line 400, in get_root_parse_node
    return self._parse_node_factory.get_root_parse_node(response_content_type, payload)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\development\tests\msgraph-training-python\user-auth\graphtutorial\.env\Lib\site-packages\kiota_abstractions\serialization\parse_node_factory_registry.py", line 50, in get_root_parse_node
    raise Exception(
Exception: Content type text/html does not have a factory registered to be parsed

Expected behavior
It should send the email with no error.
Screenshots
Checking the token claims on jwt.ms, I can see the scopes for the application are correct:

I'm using a free Azure account, here's screenshot of the app overview:

Here are the permissions:

Desktop (please complete the following information):

OS: Windows 11 Enterprise Version 10.0.22631 Build 22631
Browser: Chrome 122.0.6261.96

Dependency versions
$ pip freeze
aiohttp==3.9.2
aiosignal==1.3.1
anyio==4.0.0
async-timeout==4.0.3
attrs==23.1.0
azure-core==1.29.5
azure-identity==1.15.0
certifi==2023.7.22
cffi==1.16.0
charset-normalizer==3.3.2
cryptography==41.0.6
Deprecated==1.2.14
exceptiongroup==1.1.3
frozenlist==1.4.0
h11==0.14.0
h2==4.1.0
hpack==4.0.0
httpcore==0.18.0
httpx==0.25.0
hyperframe==6.0.1
idna==3.4
importlib-metadata==6.8.0
microsoft-kiota-abstractions==1.0.0
microsoft-kiota-authentication-azure==1.0.0
microsoft-kiota-http==1.0.0
microsoft-kiota-serialization-json==1.0.0
microsoft-kiota-serialization-text==1.0.0
msal==1.24.1
msal-extensions==1.0.0
msgraph-core==1.0.0
msgraph-sdk==1.1.0
multidict==6.0.4
opentelemetry-api==1.20.0
opentelemetry-sdk==1.20.0
opentelemetry-semantic-conventions==0.41b0
pendulum==2.1.2
portalocker==2.8.2
pycparser==2.21
PyJWT==2.8.0
python-dateutil==2.8.2
pytzdata==2020.1
pywin32==306
requests==2.31.0
six==1.16.0
sniffio==1.3.0
std-uritemplate==0.0.46
typing_extensions==4.8.0
urllib3==2.0.7
wrapt==1.15.0
yarl==1.9.2
zipp==3.17.0

Additional context
Using Git Bash.
Out of curiosity, why do I need an application for user authentication?

@eeintech The error seems to indicate that the API is sending back HTML in the response, rather than the expected JSON. This would be some unexpected error from the Microsoft Graph service. Could you try making a similar request using Graph Explorer with the same user account? The equivalent list mailbox query would be:
GET https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages?$select=from,isRead,receivedDateTime,subject&$top=25&$orderby=receivedDateTime%20DESC

Out of curiosity, why do I need an application for user authentication?

I assume you're referring to the app registration? That's a requirement of Microsoft Entra ID's OAuth 2.0 implementation. I believe all OAuth implemenations require it in some form (to get a client ID). See https://www.oauth.com/oauth2-servers/client-registration/client-id-secret/.

@eeintech The error seems to indicate that the API is sending back HTML in the response, rather than the expected JSON. This would be some unexpected error from the Microsoft Graph service. Could you try making a similar request using Graph Explorer with the same user account? The equivalent list mailbox query would be:

Using GraphExplorer, at first it fails with this error:
{
    "error": {
        "code": "ErrorAccessDenied",
        "message": "Access is denied. Check credentials and try again."
    }
}

And it is explicitly telling me how to fix it:  Either the signed-in user does not have sufficient privileges, or you need to consent to one of the permissions on the Modify permissions tab
After a consent to Mail.Read it works fine. Same process if I want to send an email.
And then if I go back to my Test App, still the same error...
My main problem is that I believe Graph Explorer and this tutorial are two quite different setups, I never have to register an application, specify tenant and client ID, etc. in Graph Explorer, so it is neat for so some quick testing but does not explain the discrepancy. It feels like something missing in the tutorial to tell you how to get the same point...

My main problem is that I believe Graph Explorer and this tutorial/sample app are two quite different setups, I never have to register an application, specify tenant and client ID, etc. in Graph Explorer, so it is neat for so some quick testing but does not explain the discrepancy. It feels like something missing in the tutorial to tell you how to get the same point...

Yes, that's right. I just wanted to test if there was an API/service problem unrelated to the code. For the API to return HTML, something unexpected is happening. Are you behind a proxy perhaps?
I also noticed that some of your dependencies are older versions. Try this command to update:
pip install -r requirements.in --upgrade --upgrade-strategy eager

@jasonjoh I have tried updating the dependencies (you were right they were older) but I'm not getting this error:
Error:
MailboxNotEnabledForRESTAPI The mailbox is either inactive, soft-deleted, or is hosted on-premise.

I am not sure about the proxy, could this error be because of it?

That error indicates there is an issue with the authenticated user's mailbox that makes Graph unable to access it. In order to access the mailbox, it must be an Exchange Online or Outlook.com mailbox. If this is your work email, you may need to check with your IT admins to verify what type of mailbox you have.
However you said it worked for you in Graph Explorer - are you authenticating as the same user?

When I run python main.py I get this:
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code ABCD12345 to authenticate.
Hello, Francois XXX
Email<EMAIL_ADDRESS>
but my actual email address is<EMAIL_ADDRESS>Not sure why the email shown in the intro message does not match with my actual email address? 🤔

That looks similar to what I've seen with a guest account in a Microsoft 365 tenant. If you're authenticating as a guest, you won't be able to access your mailbox.
When you registered your application, did you choose the option for "Supported account types" that includes personal Microsoft accounts?

Ok. Let's try this. If you can register an app and choose "Personal Microsoft accounts only":

Then on the Authentication tab, make sure to turn on Allow public client flows (be sure to Save after toggling the setting):

Then update the clientId and tenantId in config.cfg. Set clientId to the new client ID from this app registration, and set tenantId to consumers.
The end result should be that the prompt is slightly different:
Python Graph Tutorial

To sign in, use a web browser to open the page https://www.microsoft.com/link and enter the code EQ9N4HVL to authenticate.

@jasonjoh Ha yes I had forgot about allowing the public client flow. And I did not know about setting the tenantId = consumers! In the tutorial, it tells to use the tenant ID of the application:

@jasonjoh Ha yes I had forgot about allowing the public client flow, thank you for the reminder. And I did not know about setting the tenantId = consumers! In the tutorial, it tells to use the tenant ID of the application:

Maybe it should be added to the documentation?
Now it works fine for the "Personal Microsoft accounts only" app, not sure why the other type of apps don't work with the tutorial...

Yes - you should set tenantId to your actual tenant ID only if you chose the "Accounts in this organizational directory only" option. Since you're using a personal account, this option would not be valid for you - personal accounts are not part of any organizational directory.
I'm glad that got you unblocked!

Understood, thanks a lot for the help @jasonjoh !


Please add support for http://iptv.orf.at

See http://iptv.orf.at/
Thanks!

Can you name an example URL? Or do you want just support for the single URL http://iptv.orf.at/ ?

Thanks!


Support VMware vSphere

The machine-controller https://github.com/kubermatic/machine-controller/tree/master/pkg/cloudprovider/provider/vsphere already support vSphere. We could add support here as well

terraform config from PR #428 doesn't work

Happy to help test this :) (/subscribed)

I also might be able to assist, vsphere essentials..

FYI: the code for vSphere is in place, it's just terraform config who is wrong :)

is there an 'official' version of terraform that's being used?  Should I just move to 'latest'?
I have some experience with tf, having worked on a vsphere version of typhoon a year ago (in-house project)

Simple terraform init (which will download latest and grates released provider plugin) should be sufficient.

@bkcsfi that'd be awesome if you could confirm or disprove that config from #428 is correct.
I'm currently have doubts that our vSphere installation is good, but have no way to confirm this :)

@kron4eg do you recall what exactly didn't work?  Does tf fail to provision the machines? Does it provision them, but then kubeadm fails?  etc..

output.tf is not defined in vsphere. What was the plan for setting up master nodes w/o an infrastructure provided lb?
I'm comparing the main.tf in this PR vs what  I used with typhoon. My tf file has many more adjustments to control placement of nodes (by type) sizing disk and memory by type, etc.
would it be ok to use that version for a starting point? I know it works.  I've looked at the other output.tf examples, but I'm unsure what to use for kubeone_api output. For multi-master I suppose I would have a round-robin dns pointing to each master, and use a dns name here.. Except that could lead to certificate generation issues.

I was able to use a slightly modified main.tf to clone a VM, however it failed on the customization step. I expected it to fail because I was cloning an old coreos image I had laying around. I will retry with a ubuntu image.
I made two changes to main.tf and variables.tf
diff --git a/examples/terraform/vsphere/main.tf b/examples/terraform/vsphere/main.tf
index 8d8de54..0c286a1 100644
--- a/examples/terraform/vsphere/main.tf
+++ b/examples/terraform/vsphere/main.tf
@@ -46,7 +46,7 @@ data "vsphere_virtual_machine" "template" {
 }

 data "vsphere_host" "host" {
-  name          = "<IP_ADDRESS>"
+  name          = "${var.vsphere_host}"
   datacenter_id = "${data.vsphere_datacenter.dc.id}"
 }

diff --git a/examples/terraform/vsphere/variables.tf b/examples/terraform/vsphere/variables.tf
index 2a240ce..7176d03 100644
--- a/examples/terraform/vsphere/variables.tf
+++ b/examples/terraform/vsphere/variables.tf
@@ -28,6 +28,10 @@ variable "cluster_name" {
   description = "common prefix for resources"
 }

+variable "vsphere_host" {
+  description = "host to place master on"
+}
+
 variable "network_name" {
   default     = "public"
   description = "network name"

I set 4 environment variables for VSPHERE_ (user, password, server and allow_unverified_ssl)

I wasn't able to even start the VMs, and in vcenter they all had network unplugged somehow. Will post a bit later more info.


[Quickdraw] I am here to learn how to open and close issues on Github! 🤠

I am here to learn how to open and close issues on Github! 🤠
I will close it in 10 seconds 🤞

i solve this issue


Some warnings are insufficient and are missing crucial information

I had a discussion with sokra about why the HMR code didn't display a specific warning when you fail to accept the new module in a parent, the current version of hot/only-dev-server actually has support for this but the information isn't shown when using this middleware.
You can see here
https://github.com/webpack/webpack/blob/c8fd542579c554409eb1202866755fa7be0bad51/hot/only-dev-server.js#L20
And here
https://github.com/webpack/webpack/blob/c8fd542579c554409eb1202866755fa7be0bad51/hot/only-dev-server.js#L24
And that the chain isn't exposed in the warning message when using the hot middleware, I think that it's a mistake and I would like to fix it.
What happened in my situation was that the parent module changed due to an unscrupulous dependency added elsewhere, it totally messed up our bundle but the issue didn't present itself very clearly, instead, we had a chain of dependencies that broke HMR and it was painful to debug.
This chain error information is absolutely crucial to troubleshooting situations like these. So can I go forth and submit a patch? I think the changes need to happen somewhere around here
https://github.com/glenjamin/webpack-hot-middleware/blob/dc4556ae850a4f65c8ef6380d8cc9334a684a820/process-update.js#L44-L50

Yep, the intention is to mirror the functionality of the original dev server client, so patches that keep this in line are welcome

@glenjamin alrighty then, I'll set some time aside to get a fix for this going. I'll make a pull request as soon as I have working example, we can discuss the issue further there.


Description Please include a summary of the change, motivation and context.

Testing
Please describe the tests that you ran to verify your changes. Please summarize what did you test and what needs to be tested e.g. deployed and tested helm chart locally.
Checklist:

[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] Any dependent changes have been merged and published in downstream modules

Documentation
Make sure that you have documented corresponding changes in this repository or hypertrace docs repo if required.

@laxmanchekka Please update the title and description of the PR.


suppress matching ipv6 dns record

Resolves #3864
Hi @jacobbednarz, here's the initial PR. I've gone over the contributing pages but there's a lot so please do let me know if there's anything else I should be adding. I'm also not sure if I should add a test here. I didn't see a unit test for record resource and wasn't sure how I can run acceptance safely. Would appreciate any guidance here.
I've built the provider and tested locally. It fixes my issue regarding IPv6.
Looking into the changelog thingy now.

thanks for the PR! can you ensure we add a regression test to cover this new functionality?

that command looks right to me and i can run it locally. definitely make sure you don't have CLOUDFLARE_API_TOKEN or similar exported because that will mess with the auth scheme used.
as for proxyman to check, you'll probably need to enable SSL proxying on the domain to ensure that you see more than the CONNECT requests.

Hmm I don't believe there's any exported env. I'll double check and confirm again later.

acceptance tests all passing
TF_ACC=1 go test ./internal/sdkv2provider -v -run "^TestAccCloudflareRecord_" -count 1 -timeout 120m -parallel 1
=== RUN   TestAccCloudflareRecord_ImportBasic
--- PASS: TestAccCloudflareRecord_ImportBasic (3.05s)
=== RUN   TestAccCloudflareRecord_ImportSRV
--- PASS: TestAccCloudflareRecord_ImportSRV (2.88s)
=== RUN   TestAccCloudflareRecord_Basic
=== PAUSE TestAccCloudflareRecord_Basic
=== RUN   TestAccCloudflareRecord_BasicValue
=== PAUSE TestAccCloudflareRecord_BasicValue
=== RUN   TestAccCloudflareRecord_CaseInsensitive
=== PAUSE TestAccCloudflareRecord_CaseInsensitive
=== RUN   TestAccCloudflareRecord_Apex
=== PAUSE TestAccCloudflareRecord_Apex
=== RUN   TestAccCloudflareRecord_LOC
=== PAUSE TestAccCloudflareRecord_LOC
=== RUN   TestAccCloudflareRecord_SRV
=== PAUSE TestAccCloudflareRecord_SRV
=== RUN   TestAccCloudflareRecord_CAA
=== PAUSE TestAccCloudflareRecord_CAA
=== RUN   TestAccCloudflareRecord_Proxied
=== PAUSE TestAccCloudflareRecord_Proxied
=== RUN   TestAccCloudflareRecord_Updated
=== PAUSE TestAccCloudflareRecord_Updated
=== RUN   TestAccCloudflareRecord_typeForceNewRecord
=== PAUSE TestAccCloudflareRecord_typeForceNewRecord
=== RUN   TestAccCloudflareRecord_hostnameForceNewRecord
=== PAUSE TestAccCloudflareRecord_hostnameForceNewRecord
=== RUN   TestAccCloudflareRecord_CreateAfterManualDestroy
=== PAUSE TestAccCloudflareRecord_CreateAfterManualDestroy
=== RUN   TestAccCloudflareRecord_TtlValidation
=== PAUSE TestAccCloudflareRecord_TtlValidation
=== RUN   TestAccCloudflareRecord_ExplicitProxiedFalse
=== PAUSE TestAccCloudflareRecord_ExplicitProxiedFalse
=== RUN   TestAccCloudflareRecord_MXWithPriorityZero
=== PAUSE TestAccCloudflareRecord_MXWithPriorityZero
=== RUN   TestAccCloudflareRecord_TtlValidationUpdate
=== PAUSE TestAccCloudflareRecord_TtlValidationUpdate
=== RUN   TestAccCloudflareRecord_HTTPS
=== PAUSE TestAccCloudflareRecord_HTTPS
=== RUN   TestAccCloudflareRecord_SVCB
=== PAUSE TestAccCloudflareRecord_SVCB
=== RUN   TestAccCloudflareRecord_MXNull
=== PAUSE TestAccCloudflareRecord_MXNull
=== RUN   TestAccCloudflareRecord_DNSKEY
    provider_test.go:211: Skipping acceptance test for default zone (0da42c8d2132a9ddaf714f9e7c920711). Pending automating setup from https://developers.cloudflare.com/dns/dnssec/multi-signer-dnssec/.

As for the acceptance test, here's the 400 request:
POST /client/v4/zones/0da42c8d2132a9ddaf714f9e7c920711/dns_records HTTP/1.1
Host: api.cloudflare.com
User-Agent: terraform-provider-cloudflare/dev terraform-plugin-sdk terraform/1.8.5
Content-Length: 204
Content-Type: application/json
X-Auth-Email<EMAIL_ADDRESS>X-Auth-Key: Secret
Accept-Encoding: gzip

{"created_on":"0001-01-01T00:00:00Z","modified_on":"0001-01-01T00:00:00Z","type":"AAAA","name":"jknduanbut","content":"2001:4860:4860:0:0:0:0:8888","zone_id":"0da42c8d2132a9ddaf714f9e7c920711","ttl":3600}

response
HTTP/1.1 400 Bad Request
Date: Tue, 03 Sep 2024 09:24:05 GMT
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
CF-Ray: 8bd4af4f48f38616-HKG
CF-Cache-Status: DYNAMIC
Set-Cookie: __cflb=0H28vgHxwvgAQtjUGUFqYFDiSDreGJnUzDRejqX1Pru; SameSite=Lax; path=/; expires=Tue, 03-Sep-24 11:54:06 GMT; HttpOnly
cf-auditlog-id: 0191b732-cd9f-75e8-a5c8-e29652753917
Vary: Accept-Encoding
Set-Cookie: __cf_bm=63tBfX7LqejyAbGn9Cw2mdp3HAltPaLiwYs6w1apSjw-1725355445-<IP_ADDRESS>-Ua33.HoeLRtvAIn0tfZFbQpTVxD7pHYecPuLTucHSr76KJOyf4XDsOnulWBeNKUmnU1Pdzm5YKZZTg1YoD_SOA; path=/; expires=Tue, 03-Sep-24 09:54:05 GMT; domain=.api.cloudflare.com; HttpOnly; Secure; SameSite=None
Set-Cookie: __cfruid=55dfe664b12b0caf6f68f19d982d615692c959f4-1725355445; path=/; domain=.api.cloudflare.com; HttpOnly; Secure; SameSite=None
Server: cloudflare

{"success":false,"errors":[{"code":10000,"message":"Authentication error"}]}

Do you see anything wrong with by chance?
Granted, the PR is already merged so we can move on too if you prefer to not spend too much time on it. We can certainly tackle it again in the off chance that I make another contribution later 😅

are you actually setting X-Auth-Email to the value above? that should be your own email if so.

@jacobbednarz oops I was confused, I wasn't sure if I was supposed to use the exact value in the docs, sort of like a production mock, or if I should use my real credentials.
I did try my credentials too but it still didn't work. I assume my API key is invalid. I tested my TF setup, it uses Authorization: Bearer <api_key>. Can I use the same key for the X-Auth-Key header?


Color picker UI bug

Microsoft PowerToys version
0.79.0
Installation method
GitHub
Running as admin
Yes
Area(s) with issue?
ColorPicker
Steps to reproduce
Trigger the color picker tool with the keyboard shortcut.

✔ Expected Behavior
The corners should be rounded.
❌ Actual Behavior
The corners are not rounded.
Other Software
No response

/dup #31725


Update babylon.sceneSerializer.ts

added collisionsEnabled and workerCollisions for serialization

Il y a un probleme avec ce PR Deltakosh ? Pourquoi n’est il pas valider avec les autres qui l'ont été ? j'ai fait des erreurs sur l'une de ses deux ligne ?
serializationObject.collisionsEnabled = scene.collisionsEnabled;
serializationObject.workerCollisions = scene.workerCollisions;

Raanan is the collision master, I think it's up to him to validate your PR. For me it seems ok (only two lines), but maybe there are some edge effects.
Just wait his feedback :)

Hi, sorry, I just waved to wait with it until I finish the scene loader as well. Merging won't matter, as it's not read yet.
I'll merge now and hopefully commit my changes in a few hours

(*just wanted)

Ok.

And please do not forget to update this as well: http://doc.babylonjs.com/generals/File_Format_Map_(.babylon)

working on it now, I just added a few more properties.


add gitignore and readme

cleaning imageutils.py will be my next PR.

Doesn't preserve history from previous repo.


chore(*) deprecate cassandra 2.x

Just curious: why are we deprecating support for 2.2? (Which is supported until the 4.0 release)

@thibaultcha This is not an immediate change, it is targeting Kong 2.2.

@kikito I realized that, yes. So what's the driver behind deprecating it then?

@thibaultcha metrics from splunk indicate 2.2 isn't widely used is what I believe activated this change


sshkey is not auto-generated in the node.ovc actor template

In the the node.ovc actor template schema
 we specify that the ssh key is auto-generated if not specified explicitly:
sshkey= type:str consume:sshkey:1  auto
However when testing with the below blueprint, you get the error: Bad authentication type error when running install action of node.ovc actor template
Blueprint used in repository with already installed vdc vdc4yves16:
node.ovc__myvm:
  vdc: vdc4yves16
  bootdisk.size: 20
  memory: 1
  os.image: 'Ubuntu 16.04 x64'

actions:
  - action: install

Result:

the VM got created successfully
but there was an error in the run
also the VM had a unwanted port forward, see: https://github.com/Jumpscale/ays_jumpscale8/issues/161

See: https://uk-g8-1.demo.greenitglobe.com/CBGrid/Virtual Machine?id=1439
Stack trace:
File "/opt/jumpscale8//lib/JumpScale/core/processmanager/ProcessManagerFactory.py", line 195, in start
    res = self.method(**self.args)
  File "/tmp/actions/node.ovc/install.py", line 65, in action
    executor.cuisine.ssh.authorize("root", sshkey.model.data.keyPub)
  File "/opt/jumpscale8/lib/JumpScale/tools/cuisine/CuisineSSH.py", line 137, in authorize
    d = self._cuisine.user.check(user, need_passwd=False)
  File "/opt/jumpscale8/lib/JumpScale/tools/cuisine/CuisineUser.py", line 85, in check
    _, d, _ = self._cuisine.core.run("getent passwd | egrep '^%s:' ; true" % (name))
  File "/opt/jumpscale8/lib/JumpScale/tools/cuisine/CuisineCore.py", line 1033, in run
    if "cygwin" in self.uname:
  File "/opt/jumpscale8/lib/JumpScale/tools/cuisine/CuisineCore.py", line 1251, in uname
    self._uname = self._executor.execute("uname -a", showout=False)[1].lower()
  File "/opt/jumpscale8/lib/JumpScale/tools/executor/ExecutorSSH.py", line 173, in execute
    rc, out, err = self.sshclient.execute(cmds2, die=die, showout=showout)
  File "/opt/jumpscale8//lib/JumpScale/clients/ssh/SSHClient.py", line 251, in execute
    ch = self.transport.open_session()
  File "/opt/jumpscale8//lib/JumpScale/clients/ssh/SSHClient.py", line 177, in transport
    if self.client is None:
  File "/opt/jumpscale8//lib/JumpScale/clients/ssh/SSHClient.py", line 216, in client
    raise j.exceptions.RuntimeError(str(e))
JSExceptions.RuntimeError: ERROR: ('Bad authentication type', ['publickey']) (allowed_types=['publickey']) ((type:runtime.error)

See Cockpit: http://<IP_ADDRESS>:82/ays81/Repo?repopath=/optvar/cockpit_repos/yves16&repo=yves16

the ssh-key got generated successfully but there is a problem with Defense Shield that @davshafik  solved , the problem was I can ping the machine but can not ssh to it

verified on 8.1.1


Removes get_url WARNING

The usage of curl triggers a warning
"[WARNING]: Consider using get_url or uri module rather than running curl"
This removes the warning.

Unfortunately this removes the possibility of also working when people use {{ jenkins_url_prefix }}; there's no clean way to get around it that I know of (maybe wait_for could someday support more customized URL patterns and not just hosts/ports), and I just ignore the warning—it's not actually warning of anything broken or bad, just a suggestion for potential improvement. Ansible's a bit preachy in this regard, IMO.


no-std support

I don't think this is possible. We rely on several std APIs (e.g. collections).

I know some collections are now in the alloc crate (Which is available in no-std enviroments that provide an allocator) like Vec and Box. Not sure if everything that would be needed is available though

@nico-abram Yeah, but e.g. we need HashMap which AFAICT it's not in alloc.


Invalid APRS-IS used in LoRa_APRS_iGate.cpp

As far as I can see, there is an issue with commit 8489be29c97b8dbcf4ed9a738e7b1c4039543635, violating the APRS-IS regulations from Bob Bruninga, WB4APR.
In this commit 8489be29c97b8dbcf4ed9a738e7b1c4039543635 src/LoRa_APRS_iGate.cpp has been changed (from also invalid "APRS") to:
msg.setDestination("APLG0");
Quote from the APRS-IS code of conduct (http://www.aprs-is.net/):
Authors, do NOT hijack another software's TO call (APxxxx). If you don't understand APRS and APRS-IS, don't design software to falsely identify itself.
There is an explizit definition for testing software and other purposes:
APZ  APZxxx  Experimental
Please change this to keep the APRS-IS network running like it has been designed.
mni tnx!
Mike, DL2MF

Thanks for the message! As you can read, it is about hijacking other to-calls which are already used.
I checked the official file and the one which is used in the firmware is not in use.
I definitely will register the iGate and Tracker Firmware with Bob.

Finally had the time to write Bob an Mail and just 2 hours later it is already done: http://aprs.org/aprs11/tocalls.txt
Will change the to-call to a correct format in the next push.
Thanks for pointing this out!


[$1000] VBA - Able to add future dates manually in the Incorporation date field

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Go to Profile > Workspace > Connect a bank account > Connect manually
Enter a valid routing number and account number
Click save & continue
On company information page, click on the incorporation date field
Enter a future date manually and click Save & Continue

Expected Result:
Invalid date error is displayed
Actual Result:
Able to add future date and proceed to next page
Workaround:
unknown
Platform:

Where is this issue occurring?

Web
Desktop App

Version Number: 1.2.35-0
Reproducible in staging?: y
Reproducible in production?: Can't check
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
https://user-images.githubusercontent.com/43996225/205197349-73e95087-9b22-4a48-9f45-39851b930b6b.mp4
https://user-images.githubusercontent.com/43996225/205197363-39e4d240-f9f0-47b4-be84-9af2adf17ed8.mov
Expensify/Expensify Issue URL:
Issue reported by: @adeel0202
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1669889569412959
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01e3b1ed24a09f9c37
Upwork Job ID:<PHONE_NUMBER>872185856

Proposal
The issue is a typo in the validate function of the form.
Fix
diff --git a/src/pages/ReimbursementAccount/CompanyStep.js b/src/pages/ReimbursementAccount/CompanyStep.js
index d57e6be6c..41cd4dc06 100644
--- a/src/pages/ReimbursementAccount/CompanyStep.js
+++ b/src/pages/ReimbursementAccount/CompanyStep.js
@@ -104,7 +104,7 @@ class CompanyStep extends React.Component {
         }

         if (!values.incorporationDate || !ValidationUtils.isValidPastDate(values.incorporationDate)) {
-            errors.incorporationDateFuture = this.props.translate('bankAccount.error.incorporationDateFuture');
+            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDateFuture');
         }

         if (!values.incorporationState) {

Proposal
Problem
In https://github.com/Expensify/App/blob/820e876d5e4a8cbffe272220c1182c8942ed93cf/src/pages/ReimbursementAccount/CompanyStep.js#L102
        if (!values.incorporationDate || !ValidationUtils.isValidDate(values.incorporationDate)) {
            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate');
        }

        if (!values.incorporationDate || !ValidationUtils.isValidPastDate(values.incorporationDate)) {
            errors.incorporationDateFuture = this.props.translate('bankAccount.error.incorporationDateFuture');
        }

We are having 2 validation for the incorporation date Input with 2 keys in errors object areincorporationDate and  incorporationDateFuture. On the other hand, we only show the error of fields when key in the errors object coincides with inputID that is touched. See the below code
In https://github.com/Expensify/App/blob/820e876d5e4a8cbffe272220c1182c8942ed93cf/src/components/Form.js#L144
        const errors = _.pick(validationErrors, (inputValue, inputID) => (
            Boolean(this.touchedInputs[inputID])
        ));

the incorporationDateFuture key in the errors object never be shown because on UI there exists only incorporationDate InputID without incorporationDateFuture InputID
Solution
I suggest that we should use one key in errors object for incorporationDate inputID
        if (!values.incorporationDate || !ValidationUtils.isValidDate(values.incorporationDate)) {
            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate');
        }

        if (!values.incorporationDate || !ValidationUtils.isValidPastDate(values.incorporationDate)) {
+            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDateFuture');
-            errors.incorporationDateFuture = this.props.translate('bankAccount.error.incorporationDateFuture');
        }

Result
https://user-images.githubusercontent.com/113963320/205212844-e4f1b877-a89a-41ff-b144-949d6484a9ec.mp4

Updated Proposal
I just saw a problem in my above solution
It always shows the message Incorporation date cannot be in the future even if we enter 1/1/1001 because errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate'); will be overrides by errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDateFuture');
Solution
we should validate incorporationDateFuture before incorporationDate
-        if (!values.incorporationDate || !ValidationUtils.isValidDate(values.incorporationDate)) {
-            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate');
-        }

        if (!values.incorporationDate || !ValidationUtils.isValidPastDate(values.incorporationDate)) {
         errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDateFuture');
         errors.incorporationDateFuture = this.props.translate('bankAccount.error.incorporationDateFuture');
        }

+     if (!values.incorporationDate || !ValidationUtils.isValidDate(values.incorporationDate)) {
+           errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate');
+        }

Result
https://user-images.githubusercontent.com/113963320/205215796-efd9de47-6b84-45b2-a404-48ba04cd9f6f.mov

Adding external to get 👁s on this one and create the job.

Proposal
If we want to show only one error then @adeel0202's first proposal will fix this.
If we want to fix this issue without removing the second error we need to make these changes -

Use the same error key for future date error because error will be shown only for the inputID that we have provided in the input/picker
Change errors.incorporationDateFuture to errors.incorporationDate
https://github.com/Expensify/App/blob/eb0110d8d2bc2d1ed00828a1c9efdcbb6a8929d7/src/pages/ReimbursementAccount/CompanyStep.js#L107

Change the logic at isValidDate function

function isValidDate(date) {
    if (!date) {
        return false;
    }

    const pastDate = moment().subtract(1000, 'years');
    const testDate = moment(date);

    return testDate.isValid() && testDate.isAfter(pastDate);
}

We need to change the logic because the specific error that we have for future dates doesn't show up unless the future date is only between current day and 1000 years in future becauseAt isValidDate we check if the date is between 1000 years back and 1000 years in future and when it's more than 1000 years in future then isValidDate function returns false and we see Please enter a valid date
So, at isValidDate function we should only check that the date is not more than 1000 years back in the past and we won't return false for future dates. isValidPastDate function can handle the future dates if user uses a future date it will return false and they will see Incorporation date cannot be in the future

Validate future date case first

-        if (!values.incorporationDate || !ValidationUtils.isValidDate(values.incorporationDate)) {
-            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate');
+        if (!values.incorporationDate || !ValidationUtils.isValidPastDate(values.incorporationDate)) {
+            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDateFuture');
         }

-        if (!values.incorporationDate || !ValidationUtils.isValidPastDate(values.incorporationDate)) {
-            errors.incorporationDateFuture = this.props.translate('bankAccount.error.incorporationDateFuture');
+        if (!values.incorporationDate || !ValidationUtils.isValidDate(values.incorporationDate)) {
+            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate');
         }

Or use the validation like below
        if (!values.incorporationDate || !ValidationUtils.isValidDate(values.incorporationDate)) {
            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDate');
        } else if (!values.incorporationDate || !ValidationUtils.isValidPastDate(values.incorporationDate)) {
            errors.incorporationDate = this.props.translate('bankAccount.error.incorporationDateFuture');
        }

We have to make this change otherwise the user will see future date error even for invalid past date

@tienifr, after implementing your solution Please enter a valid date will be shown if the user uses a date which is 1000+ year in future.
@adeel0202, we should see both the errors. Specific errors are always good.
Your second proposal has the same problem as @tienifr

@puneetlath I like @Puneet-here's proposal
C+ reviewed 🎀👀🎀

@adeel0202 yes, not to worry! We'll be compensating you since the solution used was similar to one you proposed.

@adeel0202 can you please apply to the Upwork job? Need to pay the reporting bonus as well.

@puneetlath, do we compensate for solutions proposed before external label if they get used internally? On most of the issues I found that it is not the case, for example here

Can we take it to Slack please @Puneet-here? This issue had an External label on it.

@puneetlath, is it eligible for C+ compensation for reviewing the proposals?

My apologies for the delay here. I think this is what needs to be done for payment on this issue:

@adeel0202 - $250 for reporting
@adeel0202 - $1000 for the solution
@thesahindia - $500 for doing 50% of the C+ work on this job in reviewing proposals
@rushatgabhane - $1000 for internal PR review/testing

Does that all sound right?

Just need to get to the BZ checklist for this. All payments are done. Will get to it soon.

Checklist completed. Closing.


Support for large datasets

What does this PR do? How does it affect users?
This adds support for rendering large datasets.
Major changes:

Adds .paginate, .summarize, and .visibilityThreshold methods to public API.
Adds a new demo page (test/demo/pagination.html) to play around with these new features.
render function in libraries/default.js: If the new dataviz methods (paginate, summarize, or visibilityThreshold) are set to true, render will call new extension functions to render charts.

Line Charts and Bar Charts
This allows for large datasets to be rendered in chunks, which improves the performance of the page by reducing the number of SVG elements with mouse event handlers on the page, prevents charts from breaking, and provides a cleaner user interface.

Stacked Bar and Area Charts
A user can set a summarized option. If it's true and there are more than 15 data points, stacked bar and area graphs render an 'Other' bar.

Pie and Donut Charts
A visibilityThreshold option is available for users. If the user sets it, it'll throw all data points with a fractional value less than that threshold into an "Other" slice. Setting this option will reduce the chance we'll render a pie with so many slices that it slows down the page and becomes unreadable. This feature is based off of a feature on google charts:

How should this be tested?
Run gulp and go to demo/index.html. Look at the "Paginated Line Graph" example and navigate around.
Then go to demo/pagination.html. Change the visibilityThreshold attribute for the pie/donut charts, and make sure every data point under the visibility threshold you set goes into the 'Other' slice.
Fetch the branch and/or deploy to staging to test the following:

[ ] Does the code compile without warnings (check shell, console)?
[ ] Do all tests pass?
[ ] Does the UI, pixel by pixel, look exactly as expected (check various screen sizes, including mobile)?
[ ] If the feature makes requests from the browser, inspect them in the Web Inspector. Do they look as expected (parameters, headers, etc)?
[ ] If the feature sends data to Keen, is the data visible in the project if you run an extraction (include link to collection/query)?
[ ] If the feature saves data to a database, can you confirm the data is indeed created in the database?

Q: How would you like to approach stacked datasets, like for area/bar charts? Omitting records will detract from the whole, so perhaps in stacked = true we could roll up the omitted values into an "Other" series?

@dustinlarimer throwing everything into an other category is a really good idea, I hadn't thought of that. Planning to do that with donut/pie charts too. Far from impossible to do.

@dustinlarimer I'm working on getting pagination for other charts, but in another branch. Should I continue to put all the changes in this branch?

Sure, let's keep it all here.

This is looking pretty sharp!
I think I found a corner case where pagination doesn't take effect if summarize is true, but I'm not sure where/how that might be happening.. could there be a leaky condition somewhere?

@dustinlarimer Thanks for taking a look and the kind words!
I purposely turned off pagination if summarizeis set to true https://github.com/keen/keen-dataviz.js/pull/14/files#diff-9a21b3b699ef60b8d22d4a46ae8a1c49R1615
The reason is that "summarizing" a stacked bar or stacked area would give the same effect as paginating, and I would want summarize to take priority... but a user could try to set both summarize and pagination to true on a non-stacked graph and see no changes to the graph. Going to see if there's a better way to write that logic.

Couple of quick Qs:
Is there anything going on internally that might be causing these labels to overlap?

Also, can we control the load-order for summarized data, so that "Other (Generated)" is shows up last in the legend?

Possibly an error w/ the 'Other' label?

Repro:
Keen.Dataviz.find('.chart-c3-line-with-pagination')
  .type('bar')
  .stacked(true)
  .render();

This was already merged in with https://github.com/keen/keen-dataviz.js/pull/37


WIP: Create Assessment Demo Notebook

Add a Jupyter notebook showing different ways to create assessments

Hey man, in the future when you make MRs on this repo could you make the branches in the silverpond Github account? I can't pull them to test locally, make changes etc

Comments from Slack, I'll put here as well. I can't access that link https://deploy-preview-16--highlighter-docs.netlify.app/notebooks/create_assessments.ipynb I don't think zola knows how to include it in the build, you might need to put the notebooks folder in the static dir https://www.getzola.org/documentation/getting-started/directory-structure/#static and remove that dir from the .gitignore. Hit me up if you want to work on together

closed, see https://github.com/silverpond/highlighter-docs/pull/17


Feature/promotion

:tada: This PR is included in version 0.4.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Fix frequent failure of Jenkins CI.

This PR is first published in ray-project/ray since we can only trigger the Jenkins CI test there.
What do these changes do?
There are many Jenkins CI test failures recently. It is not convenient for us since we cannot re-trigger this CI test. I found most of the cases were caused by timeout as follows.
Traceback (most recent call last):
  File "/home/jenkins/workspace/Ray-PRB/test/jenkins_tests/multi_node_docker_test.py", line 411, in <module>
    driver_locations=driver_locations)
  File "/home/jenkins/workspace/Ray-PRB/test/jenkins_tests/multi_node_docker_test.py", line 328, in run_test
    stdout_data, stderr_data = wait_for_output(p)
  File "/home/jenkins/workspace/Ray-PRB/test/jenkins_tests/multi_node_docker_test.py", line 35, in wait_for_output
    stdout_data, stderr_data = proc.communicate()
  File "/home/jenkins/anaconda2/lib/python2.7/subprocess.py", line 800, in communicate
    return self._communicate(input)
  File "/home/jenkins/anaconda2/lib/python2.7/subprocess.py", line 1417, in _communicate
    stdout, stderr = self._communicate_with_poll(input)
  File "/home/jenkins/anaconda2/lib/python2.7/subprocess.py", line 1471, in _communicate_with_poll
    ready = poller.poll()
  File "/home/jenkins/workspace/Ray-PRB/test/jenkins_tests/multi_node_docker_test.py", line 304, in handler
    .format(timeout_seconds))
RuntimeError: This test timed out after 600 seconds.

At first, I tried to use subprocess.TimeoutExpired. However, this exception exists only in Python 3. Current Jenkins Env is using Python2. Therefore, I changed the test to Python3 and replace np.random.randint with random.randrange since numpy is not installed in Jenkins Python3.
I updated most backend tests with raylet except the remove_driver_test.py. raylet won't kill tasks after a driver exits, so this test will be kept using legacy ray.
At first when I changed backend to raylet, I fount following failure. This failure happens because the test drivers often start running before the Docker raylet workers get register.

Traceback (most recent call last):
  File "/ray/test/jenkins_tests/multi_node_tests/remove_driver_test.py", line 276, in <module>
    cleanup_driver(redis_address, driver_index)
  File "/ray/test/jenkins_tests/multi_node_tests/remove_driver_test.py", line 179, in cleanup_driver
    ray.init(redis_address=redis_address, use_raylet=True)
  File "/ray/python/ray/worker.py", line 1835, in init
    use_raylet=use_raylet)
  File "/ray/python/ray/worker.py", line 1693, in _init
    address_info["object_store_addresses"][0].name),
IndexError: list index out of range

I also found some other issue: https://github.com/ray-project/ray/issues/2494 . The root cause is found. This bug won't exist in raylet, so we don't need to fix it.
The original average running time for many_drivers_test.py is around 240 seconds. After updating to raylet, the average running time is around 105 seconds.
I don't update train.py using raylet because I'm not that familiar with rllib.

Related issue number

Great to know that CI gets fixed.
btw do we know what's the reason for the speedup of many_drivers_test.py?   240s -> 105s is a big improvement.

I replace the legacy ray with raylet. I think this is the reason.


use correct joda-time

Removed the version on joda-time in java-util, was causing an issue with building extensions

👍

👍  and also, really, nothing in java-util/pom.xml should have versions. That should all be handled by dependencyManagement in the master pom.

Well, that was weird. This change was already made a month ago in #3764 but github showed a diff anyway. And now there's an empty commit in the history: https://github.com/druid-io/druid/commit/97ce006719be2c7114ddd070f54d1f24ebbc6701
A bit weird but no harm done.


Release Google.Cloud.OsConfig.V1 version 2.4.0

Changes in this release:
New features

Add IServiceCollection extension methods for client registration where an IServiceProvider is required. (commit 022fab2)

Created release for Google.Cloud.OsConfig.V1-2.4.0

This succeeded the first time around. The failure is because the release was attempted twice.