Add Circular Restricted Three Body Problem Package

Added a CR3BP library with basic functionality.
I added a CR3BP function set with basic propagation functionality. The code is in a folder since I plan to add additional functionality soon. I am still a noob with Python, hence most of my code are direct translations from my MATLAB package. I still have not integrated astropy constants and units with my code and currently, I use matplotlib and mplot3d for plotting. I require help with the integration of poliastro plotting environment.
Note: all computations currently are performed in non-dimensional units for numerical stability. All parameters are non-dimensionalized with characteristic values (length, mass, time, velocity and angular velocity).
Current functionality

propagation of orbits in CR3BP
propagation with State-Transition-Matrix
compute characteristic values of CR3BP given primary body k values and mean distance
test file to check implementation with a few real orbits (plots are in the non-dimensional rotating frame)

Lunar Gateway Station NRHO orbit (9:2 L2 Southern NRHO)
Distant Retrograde Orbit
Butterfly Orbit
Vertical Lyapanov Orbit

Future Plans

differential corrector using STM
compute periodic orbit families
eigenvalue/eigenvector calculation for Monodromy matrix
frame conversions (dimensional inertial <-> non-dimensional rotating)
analytical approximate solutions for famous orbit families in CR3BP

I plan to implement most of the functionality present in https://github.com/JackCrusoe47/CR3BP_MATLAB_Library
Do let me know of any code improvements, computation errors or other elements you find.
cheers,
Kevin

4 Orbit examples in test file:

@jorgepiloto Thank you. Of course, I'll add the references and corrections as soon as I can.

@jorgepiloto I'm sorry but how do I run tox -e reformat && tox -e check? Currently, I download the repository each time and try to check changes with my PC without using git.  Is this something I should run directly on GitHub?
I apologize, I am still figuring out how to use git and GitHub.

It looks like the quality checks are passing now. Did you finally managed how to use tox in the command line, @JackCrusoe47?

It looks like the quality checks are passing now. Did you finally managed how to use tox in the command line, @JackCrusoe47?

Well, kind of I think. I downloaded the full repository manually and then installed tox and run the commands. But a lot of the white space errors remained. So I fixed them manually. Is there an automated way to do this?

About using git
The workflow of using GitHub and git is described in the contributing docs.
Essentially you must clone the repository only once. From then one, you can update your cloned repository (local repo) with new changes which got merged in this online repository (upstream repo).
To update your local main branch to the upstream one you can run:
# Make sure you are in the main branch of the project
git checkout main

# Fetch upstream changes and update your local main branch
git fetch upstream main && git rebase upstream/main

You will get used to the git workflow soon or later. I would recommend you using a graphical git client and slowly move on towards the using of git via the command line 👍🏽
Quality checks and white spaces at EOL
Normally, running tox -e reformat will apply most of the required changes. However, some others require a manual changes (unused imports, variables...).
Regarding white spaces at the end of the line, this depends on the text editor or IDE you are  using and how it is configured. I am pretty sure there is a plugin or extension which automatically removes white spaces or shows those every time you save the file you are editing.

@jorgepiloto Thank you, Jorge. I will try to clone the repo with git and try to work with git workflow as you suggested. As for IDE, I work with a bit of notepad++ and spyder.

pre-commit.ci run

Thank you @astrojuanlu for merging. I hope to add further features to the library.

It's weird that you were observing the quality checks failing, in principle @pre-commit-ci was automatically modifying pull requests. I'll look around and see if it still working or not.

I now fixed it in #1453, there was a misconfiguration.
About the coverage, @jorgepiloto can you check if #1453 fixes the issue? I tried to run the coverage locally but the contrib/ didn't show up in the reports, not sure where you were spotting it.


Ground truth compare

Finished feature, including examples.

Looks like one of the tests is failing
`        if not label in self.preds_by_label:
false_neg = len(self.gt_by_label[label])
elif not label in self.gt_by_label:
false_pos = len(self.preds_by_label[label])
else:
for model_pred in self.preds_by_label[label]:
match_found = False
for gt_pred in self.gt_by_label[label]:

              if span_type_func(model_pred, gt_pred):

E                   TypeError: sequences_exact() missing 1 required positional argument: 'y'`


Add a way to ignore inputs in recipe trees.

There are often inputs that a player doesn't consider relevant when looking at a recipe tree, and it would be nice to be able to mark them as hidden (similar to how recipes are marked as default).
I'd imagine this would be something like a key binding one could press when hovering over the input (either in the recipe or possibly the recipe tree view). This would cause the input to not show up as a synthetic favorite and either be hidden or somehow specially marked in the recipe tree, and probably (at least by default), not shown in the list of base resources required.
Some examples of where this could be useful:

When using Mekanism, it is common to setup multiple metallurgical infusers, and automatically stock the infusion material. Thus, it would be nice to ignore.
When using GregTech, there are several machines that use a fluid as input to all their recipes (such as water or lubricant), that are setup to be stocked automatically (or use so little per craft that they can be refilled manually). It would be nice to be able to ignore those inputs.
Also in GregTech, there are several recipes that use fluids that make sense to craft in bulk (such as rubber for coating wires, or glue and polyethylene for various assembler recipes) that it would be nice to be able to ignore.
This might also be a way to handle tools and the like that are not consumed by recipes, but this would likely be more of a workaround. (See https://github.com/emilyploszaj/emi/issues/124).

See also https://github.com/emilyploszaj/emi/issues/162#issuecomment-1503007233

This would introduce a lot of complexity to the user in a way that's hard to both quantify and teach, but I understand the desire to solve this user facing issue.


Cannot create a node that contains child-node

Hi, thanks for providing such a good library.
Is there any way to create a Node that contains child-node or parent-node ?
better could draw an arrow for them , like this :

I've already tried [Group] and [Cluster] through the Examples, but seems different.....

I am interested into this too.

Groups allows to apply the same visualisation properties to a group of nodes.
Cluster allows to join nodes in a specific way.

Nothing seems to allow what we need in your example.

Seems like duplicate of #1258 ?


[EPIC] Shadow Testing & Validation

The following is an issue to track/discuss the overall vision for the Shadow Testing & Validation tools and the specific user stories and tasks to get us there.
Table of Contents

Scope of the tools
User Narrative

Recorder
Analyzer

MVP User Stories & Tasks
Beyond the MVP

Scope of the Tools
The "Shadow Validation Tool" is actually a collection of tools that can be used to help users duplicate production traffic onto a shadow cluster and understand the result and performance differences between the two clusters.
A t-splitter type tool will be used to duplicate the traffic coming into the source cluster to the shadow cluster and record the responses from both the source and shadow clusters. This tool is an essential prereq to the work in this epic, but is out of scope and handled by [[]].
After that, the Analyzer tool will be responsible for comparing the responses and offering the user useful and actionable information.
In the medium term, we expect to use a third OpenSearch cluster as the datastore for requests and responses. The data could plausibly be stored in many ways/places (e.g. an S3 bucket), but this provides an abstracted interface for storing the data in a platform-agnostic way. The OpenSearch cluster can also become the platform for data analysis, using plugins or extensions.
However, for the short term, we're intending to use a docker node to host the t-splitter, write the response data to local files, and run the analyzer tool on that local data.
Iterative Use
An underlying assumption of these tools should be that users are unlikely to just run them a single time. Users will likely enable dual-writes and record the responses and run Analyzer, find issues with their results, change the shadow cluster and then re-enable data transfer and run the Analyzer on the new results.
In some cases, they may also run the Analyzer many times with different configurations (e.g. data transformers or masks) to narrow in on the most interesting changed results. We need to make it easy for them to save their configurations and rerun them or run them on a new round of replayed data.
Out of Scope
This epic and narrative are focusing solely on the validation tool, so it leaves setting up the shadow cluster as a black box. This can be handled by a seperate tool/constellation of tools, or manually by the user. The shadow cluster may or may not be the "same" as the original cluster -- it may be more or fewer nodes, the same or a different version, and in the same or a different location (e.g. on-prem, ec2, aws managed service, an alternate cloud).
Transfering historical data is also treated as a black box. Snapshot & restore and reindexing (either from the original cluster or from an external source) are likely to be common methods, but the user can transfer data however they choose, with or without help from tools we've provided for them. The caveat is that if the historical data is not transfered fully, the results cannot be expected to be the same.
Down the line, we may transition from a live T-splitter (i.e. sending requests and recording responses from both clusters in real-ish time) to a T-splitter that records requests and a Replayer that conveys them to the shadow cluster at a later time. That offers advantages in terms of replay-ability and navigating more complex network situations (including the source and shadow clusters being in very different locations and thus having larger latency effects).
User Narrative
Example Situations

A user is considering migrating their cluster to a different cloud provider.
A user wants to experiment with a different cluster topology on the same cloud provider and see how performance changes.
A user is curious about OpenSearch 2.x and wants to know how their carefully-tuned document rankings will change before they upgrade.
A user wants to migrate from on-prem to a cloud provider but needs to convince skeptical leadership with performance and cost data.
A user wants to compare performance data between two versions of OpenSearch.

T-Splitter & Recorder
The user begins by setting up the shadow cluster.
On the source cluster, they set up a docker node with our T-Splitter tool and configure the tool with the source and shadow clusters. Then they redirect their clients to send requests to the t-splitter. It passes requests through to the source cluster and responses back to the user, but also forwards all requests to the shadow cluster and records the responses. In this way, the two clusters are kept in sync and all requests and responses to both clusters are logged locally.
This tool continues to forward & record until the user disables it.
At this point (after recording starts), the user should transfer historical data up to the point at which recording started.
As an alternative, the user can set up any other mechanism to forward & log requests and responses. If this is data they're already logging, it only needs to be transformed to the standard format and added to the validator cluster. This means that even if the user runs a different piece of software (e.g. Solr) as the source cluster, they can add their logs by translating the request into an equivalent OpenSearch request and handling replaying the data on their own.
Analyzer
At any point after the T-Splitter/Recorder has started, the user can start the Analyzer tool.  In the short term, the Analyzer runs on the same docker node as the t-splitter and pulls the data from local files. Down the road, the Analyzer will pull data from the Validator datastore cluster and can be run from a seperate machine.
By default, the user is able to use the response data as-is or finetune a baseline transformation that masks volitaile fields (e.g. timestamps, cluster names, ip addresses, etc.) so that responses can be compared directly.
The user can add additional functions to 1/ transform the source responses, 2/ transform the target responses, or 3/ be used as the comparison function. The first and second allow users to do things like compare between Solr and OpenSearch responses, or mask additional fields that they don't want to compare. The third allows users to, for instance, set a tolerance of 10% on a given field value before it's shown as a difference.
The MVP Analyzer is a command line tool that has two primary outputs:

it gives basic summary statistics (number of requests compared and percent that match) and creates a list of all response pairs that are different (according to the comparison function) and provides a diff of the differences, shown with the request.
it displays basic performance data compared between the source and shadow clusters (e.g. average, p90, p99 latencies for requests)

MVP User Stories & Tasks
The following user stories will be made into tasks and linked from here.
T-Splitter & Recorder
T-Splitter tasks are handled in #71.

[ ] #79

As a validation tool developer, I would like a basic tool that allows me to log requests & responses (plus timestamps) from a cluster and write it into a new OS cluster.

[ ] #80

As a user, I would like documentation on one or more ways to set up request/response collection for my cluster (understanding that it will not be a polished tool at this point).

Analyzer

[ ] #84

As a user, I would like to be able to run the analyzer tool and get summary statistics and a list of diffs for responses that are different between the original and shadow clusters.

[ ] #85

As a user, I would like to be able to get basic performance comparison data between my original and shadow clusters.

[ ] #86

As a user, I would like the analyzer tool to apply a default mask on response fields that are volatile or unrelated to my comparisons, and to be able to configure this transformer.

[ ] #87

As a user, I would like to be able to configure transformations on my source responses or target responses and to be able to specify a custom comparison function.

Beyond the MVP
The following are our suggested v2.0 extensions for the above narrative. While these are the things we think we'd like to focus on immediately afterwards, the focus should be on getting the MVP in front of users and responding to their feedback.
T-Splitter / Recorder

Record requests/responses using an OS cluster as the datastore
Record cluster state and failures (e.g. if the cluster is in a yellow or red state or if a master node fails)
Research vector clock timestamps and log timestamps that correspond to time a request hits either the coordinator or master node
Using an OS cluster as the datastore, build in index state management that allows us to cap the size of the cluster and drop older data.
Record requests and source responses without relaying them to a shadow cluster (i.e. pure recorder without real-time dual-writes)

Analyzer

Allow users to apply filters or aggregations for the basic outputs described above
Allow users to export performance data as a CSV to analyze with their own tools
Move the analyzer tool to being a OpenSearch plugin or extension and using an OS cluster as datastore
Add a "load factor" to the exported performance data that's something along the lines of an average tps for the 30 seconds surrounding a request so that users can more easily understand the differences between the loads on their original vs shadow clusters.
Give users tools to understand how "best effort" ordering impacts their results (for instance by segmenting query responses based on how close in time they are to a write request)
Build tools to help explain the differences seen in the results to users, possibly by using clustering to group results by types of differences.
Allow users to compare the results of replaying the same source data against multiple shadow clusters.

Replayer
These tasks aren't relevant until we begin recording requests for later replay, instead of doing real-time dual-writes.

Replay requests at original speed. This may require fanning out requests to multiple nodes. As an extension, can we replay requests at a multiple of the original speed?
"Focused replay": if a user wants to focus on a particularly intense or interesting period of queries (say from time N to time M), start by filtering for all mutating requests before time N and replaying them. Then run all queries between N and M to be analyzed.
Perform stress tests by taking out nodes at specified times during the replay and allow the user to watch the system recover. There are likely many other chaos testing applications to add into this.

Great proposal.  I would recommend reusing OpenSearch Benchmark.  While there are some differences in the scenarios described - real workflows with traffic splitting between clusters vs synthetic workflows with asynchronous A / B analysis, reusing existing tool could make getting these features in customers hands very fast.


(index.html) Lists

Look into dynamically generating lists from an array or json file.  This will allow for scaling without needing to manually adjust html each time (accomplishments, nav menu, projects -- if added).
Look into map + filter array methods to easily implement this in several lines of code.
Pair with handlebars to populate templates

Done!


DDPB-3483 - Assets: write Behat tests in the new suite

Purpose
Provides tests to cover the Assets section of questions on the report.
Fixes DDPB-3483
Approach
There is some complexity as the Assets section has a slightly different layout to other sections.
This is mainly due to the number of different asset types leading to many sections for each asset type, including property assets which have additional questions.
A brief overview of what the code is attempting to do:
Fill fields and capture data entered as an asset. (Assets are grouped by there asset type)
Sort asset groups to match the order they appear on the summary page.
Calculate totals for each asset section.
Assert expected asset sections matches found asset sections.
Assert calculated total of assets matches found calculated total of assets.
Learning
Currently the Assets Summary Page has the following intricacies:

Antiques, artwork & jewellery assets are grouped into one summary list
Property section of the page does not have a subtotal (Value of properties is still taken into account for the total value of assets)
Asset types are not displayed on the summary page in the same order they are listed on the question. Specifically 'Assets outside of England & Wales' and 'Other valuable assets section' appear earlier than how they are listed.

Checklist

[x] I have performed a self-review of my own code
[ ] I have updated documentation (Confluence/ADR/tech debt doc) where relevant
[x] I have added tests to prove my work
[ ] The product team have approved these changes

Frontend

[ ] I have run an in-browser accessibility test (e.g. WAVE, Lighthouse)
[ ] There are no deprecated CSS classes noted in the profiler
[ ] Translations are used and the profiler doesn't identify any missing
[ ] Any links or buttons added are screen reader friendly and contextually complete
[ ] If adding GA events, I have updated or checked the existing category or label values

Alex has already reviewed so just ticking it off as it has now passed all tests :). Looks good.


Added code coverage with simplecov

To generate code coverage data

export CI=1
bundle exec rspec

To view the coverage data open coverage/index.html

@syncrou @hsong-rh @gmcculloug
Please review


Add some more document_type attributes to frontend examples

https://trello.com/c/q0PNOZkj/117-move-formats-with-images-to-universal-layout
Moving 'Part of' links to the navigation sidebar means some
integration tests on government-frontend require the sidebar
to render accurately, so add the document_type to the relevant
schema examples used in the first batch of redesigned formats as
the related navigation relies on this attribute to include the links.
More to follow as we redesign more formats.

We also check for document_collections with type "document_collection" -  does this need to be added too?

@vanitabarrett good point - for consistency yes it should. Will amend.

thanks @vanitabarrett updated that incorrect doc type


Add accessor functions for comment and stop signal

Podman commit needs the ability to set a comment and stop signal
when committing a container to an image.  Adding set/get functions
for each.
Signed-off-by: baude<EMAIL_ADDRESS>

LGTM

sit on this one while i work some edge case issues

Fixed up, should be good now.

@baude Waiting for the spelling error fix and then we can merge.

fixed spelling error, please merge

Whitespace nit, otherwise LGTM.

@rh-atomic-bot r+


Create iitis.txt

Institute of Theoretical and Applied Informatics, Polish Academy of Sciences

@webs1821 Please provide us with an URL of a page on the official website where an IT-related long-term (>1 year) course is offered by the organization. Thank you.

@philipto https://www.iitis.pl/en/mlen/about-institute - IITiS is a research institute, a part of Polish Academy of Sciences. It's public entity. At the institute the student works on research to gain a PhD. It is a little more exclusive group than university students. Is it sufficient?

@webs1821 Regrettably, JetBrains educational licenses are for university and college teachers and students only. JetBrains does not grant such licenses to academic institutions, including Academy of Science and research institutes. As far as I understand, you organization does not have long-term (> 1 year long) IT-related courses, thus it is not eligible for inclusion to this list.
Please ensure you are familiar with this repository rules located at the bottom of this page and comment if I am mistaken. I have to close the request without merging. Thank you for the understanding!


validate that feed fails

feeding did not fail. so upgrading to latest CLI seems to do the trick :-)


Can't erase text in the code editor when holding Shift

Operating system: Fedora 31
SHADERed version: Git https://github.com/dfranx/SHADERed/commit/624e77c18837bd2cfd94d07b2046e45f6aad5a28

In the code editor, I can't erase text using Shift + Delete or Shift + Backspace. In comparison, this works in most other text editors out there. Solving this would make the built-in editor more consistent with other editors.
Note that this doesn't apply to other GUI fields, only the code editor.

Added!
Are Shift + Delete and Shift + Backspace shortcuts supposed to act like Delete \ Backspace shortcuts?

@dfranx Yes, they should act exactly the same from what I've seen.

@Calinou Okay, then this has been added with this commit: https://github.com/dfranx/ImGuiColorTextEdit/commit/6d6f5dd202f19ca69748d22f1ede51d57156faee and Shift+Backspace/Delete should now work. Thanks for the suggestion! Closing!


After upgrade 3.6.1 an error on initialization is thrown

I am initializing spectron like this:
const electron = path.resolve(__dirname, `../../../node_modules/.bin/electron-prebuilt-compile${process.platform === 'win32' ? '.cmd' : ''}`)

const paths = {
  root: path.join(__dirname, '../../../') || '.',
  main: path.join(__dirname, '../../../src/main/index.js')
}

const app = new Application({ path: electron, args: [paths.main] })
// app.start()

which worked fine with spectron 3.6.0. Upgrading to 3.6.1 however causes an error message that has no impact on the tests (they still pass):

I downgraded to 3.6.0 and the error disappeared.

same here, worked fine with spectron 3.6.0, get same error with spectron 3.6.1

In 3.6.1, I got this error:
[Error: Client initialization failed after 10 attempts: RuntimeError Client initialization failed after 10 attempts: ]

But in 3.6.0 not throw any error.

Thanks for reporting this, this should be fixed in 3.6.2


Modify convert.py to pull in assessor data

See #3 for more info about assessor data.
convert.py already combines addresses with buildings using the AIN field. We plan to use the AIN field to join the assessor data too.

Just joined the assessor data straight to the building shapefile. Rehosted at latimes.

Great! I assume we still need to figure out how to translate those assessor fields into OSM tags. Maybe that discussion should go in #3, or maybe it should happen in this issue?

@cityhubla and I did some of that work already. I think the decision was spelled out in the readme. I modified convert.py to handle those. Though, it doesn't line up perfectly with how OSM does things. For instance, OSM community would prefer "building=apartments" instead of "building=Residential"

Yes, we should re-run the sample data. In #21 and few other issues, @maning is looking at my sample .osm files, but now they're obsolete since you've incorporated the assessor data.
Unfortunately I don't have time to regenerate those files myself... If anyone else gets a chance to regenerate the samples, please replace the https://github.com/osmlab/labuildings/blob/master/venice_osm.zip file, or change the readme to link to something else.

I regenerated a new sample data here based of the joined dataset from assesor data.  I also fixed a few lines in convert.py to handle NULL values in some fields.
We also need to agree on how to convert the SpecificUseType and SpecificUseDetail1 into proper OSM tags.  I can do the attribute matching.  Should I, convert to OSM tags into the source shapefile or should we create another script to clean this up (former should easiest for me)?

@maning how would you go about converting the OSM tags in the source shapefile? I'm guessing some scripting logic?

Going through the attributes spreadsheet, an important question for me is if it is sensible to import so much street detail from 10 years ago without a name=* tag? it would be a massive task for mappers to verify and clean this data once it is imported into OSM.
The SpecificUseType which makes sense for me to import are those that are verifiable from imagery to some extent:

parking
fuel station
school
college
hospital
golf course

Otherwise we should just stick to importing the building=* value best we can and punt on others till we can get a more updated dataset rather than a huge conflation/verification headache later on.
@jschleuss @almccon @talllguy @maning

@jschleuss, per conversation with my team, it make sense to process the tag through a "sanitizer" script before writing the xml file.  Depending on the implementation, it can either be separate script where we feed a csv of OSM tags based on the spreadsheet or expand convert.py to do this similar to what it does for addresses.
Before implementation, we need to agree first if its worth the effort to do this considering the above comment by @planemad
cc/ @almccon @cityhubla @batpad

@planemad @maning I'm not sure what data is 10 years old. Do you mean the building shapefile and AINs from the 2008 file released in 2009? The Assessor just recently released their 2015 roll information and that's what we've attached to the building file. So the data attributes should be pretty fresh. I don't see a compelling reason to drop it, but would see the need to write the sanitizing script to better match the OSM tags.

@jschleuss thanks for clarifying, I missed the fact that the assessor data was released in 2015, so that makes more sense to import.
How will we handle amenity/shop tags on building parts? https://github.com/osmlab/labuildings/issues/19#issuecomment-171596408

related to: https://github.com/osmlab/labuildings/issues/3

Closing.


custom-optimizers: documentation for optimizer-dirs

The documentation http://docs.zephir-lang.com/en/latest/config.html and http://docs.zephir-lang.com/en/latest/optimizers.html doesn't mention you should set https://github.com/phalcon/cphalcon/blob/master/config.json#L15-L17
otherwise optimizer class does not get loaded

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/30141594-custom-optimizers-documentation-for-optimizer-dirs?utm_campaign=plugin&utm_content=tracker%2F280146&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F280146&utm_medium=issues&utm_source=github).

https://github.com/phalcon/zephir-docs/pull/41

PR got merged so this is resolved


< SBreadcrumb / > Not using "breadcrumbTitle" or "title"

Describe the bug
According to the documentation, breadcrumb proposes to use the "breadcrumbTitle" or the title informed in the meta, however it is ignoring this information and using only the path name
Reproduction
while using < Breadcrumb />
System / Nuxt Info
Nuxt 3.7.4 with Nitro 2.6.3

https://github.com/harlan-zw/nuxt-seo-kit/releases/tag/v2.0.0-beta.39

Thanks :) Please let me know if you have any issues with this version. Sorry that it has some breaking changes.


DiagnosticAnalysis: Log the JSON output size

Log the JSON size so we can monitor it and find ways of decreasing it if we find out it's a problem.
Keep in mind we don't track the size in bytes, but the .NET-encoded string (UTF-16/UTF-8?) length. The two numbers should be close enough (the CLI JSON mostly writes ASCII code points) and I don't think it makes sense to compute the byte size just for minor differences.

@schmittjoseph FYI


TypeScript automated testing support

Acceptance criteria:

There is an automated testing experience that facilitates reliable, terse tests

Checklist:

[x] Implementation
[x] Documentation

@robdmoore , I assume "Provide TypeScript automated testing support".
You mention "Implement", without linking to a PR or explaining.

https://github.com/algorandfoundation/algokit-utils-ts/blob/main/docs/capabilities/testing.md


Do not save the password in the Signing screen after performing Send Fund even though Remember Password was ticked before

Describe the bug
Do not save the password in the Signing screen after performing Send Fund even though Remember Password was ticked before
To Reproduce
Steps to reproduce the behavior:

Connect Wallet to: https://connect.subwallet.app/
Click the Sign Dummy button of any account (Example: Nhung)
At the Signing screen,

Tick the option "Remember Password"
Enter a valid password
Click the Yes button,...

After signing, execute Send Fund
After Send Fund, click Sign Dummy button again and observe the display interface: Still asking the user to re-enter the password even though Remember password was selected before

Expected behavior
Do not ask to re-enter the password until 15 minutes
Screenshots

Desktop (please complete the following information):

OS: OSX
Browser: Chrome

New version use master password


Improve Travis CI build Performance

Caching Dependencies and Directories Travis CI can cache content that does not often change, to speed up the build process.
=====================
If there are any inappropriate modifications in this PR, please give me a reply and I will change them.

Closing: We no longer support Travis CI.


The function apps don't list in the tree view

Repro Steps:

Select the same subscription as App Service Extension in Cloud Explorer and navigate to 'App Services' node.
Check the apps type, then check whether all nodes are listed or not for App Service Extension.

Expect:
All nodes under 'App Services' node list in the tree view for App Service Extension.
Actual:
The function apps don't list in the tree view for App Service Extension.

More Info:
The icons are same among web apps, mobile apps and API apps.

Closing this as by-design. We intentionally chose to create a separate VS Code extension for Function Apps https://github.com/Microsoft/vscode-azurefunctions


Issue Running Powershell Script when Deploying ASP.NET Core 1.1 App to IIS

Hello,
I have opened the following issue https://github.com/aspnet/Home/issues/1863 in the aspnet forum about deploying a ASP.NET Core 1.1 app to a Windows 2008 R2 SP1 server. I got some feedback and based on the feedback I tried to run the PowerShell script from here: https://docs.microsoft.com/en-us/aspnet/core/publishing/iis#create-a-data-protection-registry-hive
When I run it, I am getting the following error:
Unable to find type [Microsoft.Win32.RegistryView]: make sure that the assembly containing this type is loaded.
At C:\Users\russ\Downloads\scripts\Provision-AutoGenKeys.ps1:27 char:50
+         $regView = [Microsoft.Win32.RegistryView] <<<< ::Registry32;
    + CategoryInfo          : InvalidOperation: (Microsoft.Win32.RegistryView:String) [], ParentContainsErrorRecordExc
   eption
    + FullyQualifiedErrorId : TypeNotFound

Any ideas as to what could be causing this error?

@pakrym ?

I think it's the issue with version of powershell you are using. Try installing https://www.microsoft.com/en-us/download/details.aspx?id=40855 and see if it still reproes.

I have the same issue, updated powershell and the script ran ok.
The .net core app still not running. any ideas on where I can find useful error messages or what to try next?

@mredman There is general troubleshooting advice in the Troubleshooting section of the Publish to IIS doc. If you want chat help, ping the devs on Slack: http://tattoocoder.com/aspnet-slack-sign-up/


Update New-CsTenantTrustedIPAddress.md

Specify correct external help file

Docs Build status updates of commit 386d9ff:
:clock10: Full build: the average full build time is 12 min(s) 7 sec(s), this is based on the last 623 build(s) for this repository.

Docs Build status updates of commit 386d9ff:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTenantTrustedIPAddress.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit bbf5e4a:
:clock10: Full build: the average full build time is 11 min(s) 58 sec(s), this is based on the last 720 build(s) for this repository.

Docs Build status updates of commit bbf5e4a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTenantTrustedIPAddress.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[cleanup] Add test script for easier local debugging

Prior to merge, run ./run_test.sh -a to mimic our continuous-integration tests.
AFAICT, the current setup relies on uploads to the branch to run the tests which is a very slow test/debug cycle.
Also fix bug codeql setup from #408

@spiekos @thejeshgn fyi - would welcome your feedback on the test script as well


Fixes #2983. View need a alternative DrawFrame for the v2.

Fixes #2983 - Use LineCanvas to draw the frame and supersede the obsolete method.
Pull Request checklist:

[x] I've named my PR in the form of "Fixes #issue. Terse description."
[x] My code follows the style guidelines of Terminal.Gui - if you use Visual Studio, hit CTRL-K-D to automatically reformat your files before committing.
[x] My code follows the Terminal.Gui library design guidelines
[x] I ran dotnet test before commit
[x] I have made corresponding changes to the API documentation (using /// style comments)
[x] My changes generate no new warnings
[x] I have checked my code and corrected any poor grammar or misspellings
[x] I conducted basic QA to assure all features are working

@tig the obsolete Frame.DrawFrame(Rect, bool) isn't using anymore and maybe can be removed?

I'm looking at DrawIncompleteFrame and thinking there might be a simpler way to achieve this and create a lot more flexibility for other things.  Here is my premise
Add a method which returns just the lines for the rect:

public IEnumerable<StraightLine> GetFrame (Rect rect, LineStyle lineStyle, Attribute? attribute = null)
{
	var vts = ViewToScreen (rect);
	yield return new StraightLine(new Point (vts.X, vts.Y), vts.Width,
		Orientation.Horizontal, lineStyle, attribute);
	yield return new StraightLine (new Point (vts.Right - 1, vts.Y), vts.Height,
		Orientation.Vertical, lineStyle, attribute);
	yield return new StraightLine (new Point (vts.Right - 1, vts.Bottom - 1), -vts.Width,
		Orientation.Horizontal, lineStyle, attribute);
	yield return new StraightLine (new Point (vts.X, vts.Bottom - 1), -vts.Height,
		Orientation.Vertical, lineStyle, attribute);
}

Add an extension method that operates on a collection of lines that lets you create an exclusion area:
public static class StraightLineExtensions
{
/// <summary>
	/// Splits or removes all lines in the <paramref name="collection"/> such that none cover the given
	/// exclusion area.
	/// </summary>
	/// <param name="collection">Lines to adjust</param>
	/// <param name="start">First point to remove from collection</param>
	/// <param name="length">The number of sequential points to exclude</param>
	/// <param name="orientation">Orientation of the exclusion line</param>
	/// <returns></returns>
	public static IEnumerable<StraightLine> Exclude (this IEnumerable<StraightLine> collection, Point start, int length, Orientation orientation)
	{
		foreach(var l in collection) {

			// if line intersects the exclusion

			// if it is wholly inclusive of the line
				// remove it from returned collection
			// else if it is longer on both ends
				// split l into two lines
			// else
				// shorten right or left
		}

		return collection;
	}
}

What do you think? this would let you create rectangles with gaps in any sides needed and many other cool things besides?
I can probably work out the code for this method if its a go?

What do you think? this would let you create rectangles with gaps in any sides needed and many other cool things besides?
I can probably work out the code for this method if its a go?

Any help is welcome. The DrawIncompleteFrame know where the side start and where the side end. It also allow to create rectangles with gaps in any sides needed by calling several times with different locations by using the same bounds. But any reduce of code is always better and more cleaning. So, the idea of exclusions is very good.
For now I have some TabView unit test failing.
Feel free to do what you think is better. Thanks.

@BDisp I have created #3004 as an alternative approach to DrawIncompleteFrame which can hopefully simplify things.  Let me know what you think.

@BDisp I have created #3004 as an alternative approach to DrawIncompleteFrame which can hopefully simplify things. Let me know what you think.

I like it very much. More elegant and with less code. Thanks.
In this PR I'm using a non 0 location with a value of 3 to avoid be divisible by 2 and so avoiding bugs on the unit tests. I never more will be using the 0 location for unit tests with frame.

Closing this because was supersede per the #3004.


implementation number 2

Second attempt at implementing more streamlined results.

This is closer. I think I can distill this down though.
Also, need to add tests for MessageSequenceItem.


Xamarin Hot Restart issue

I have successfully authenticated in the application
I exported certificate from my Mac, and try to import it in this window:

I receive an error after entering the password:

Hi @VladislavAntonyuk - can you please file this in the IDE at Help > Send Feedback > Report a Problem if you're still facing this issue? Thank you!

Hi @VladislavAntonyuk - can you please file this in the IDE at Help > Send Feedback > Report a Problem if you're still facing this issue? Thank you!


p3768-0000-p3767-0001: allign machine config with stock SDK

It seems official SDK manager is loading different BPFDTB for Orin NX 8Gb.
Also SKU is set 0001 as otherwise 0000 is used from included 16Gb Orin NX variant.

I had pushed the BPFDTB change yesterday... The TEGRA_BOARDSKU change is a good one, though, so if you could rebase this on top of latest, I'll merge that.  Thanks!


Set default attach method of uprobe to use SYSFS.

What does this PR do?
The new, and default, way of attaching uprobes does not get us miss and hit statistics. This PR sets the manager option to attach uprobes using the sysfs based method.

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

@usamasaqib do we still want this? I don't think it is really possible for uprobes to miss right?

@usamasaqib do we still want this? I don't think it is really possible for uprobes to miss right?

I believe so. I can deploy on staging to verify.


[xstate-wallet] Budget Notifications never sent

As far as I can tell, we never call this function in the wallet:
https://github.com/statechannels/monorepo/blob/3c5d73e601166c9b788ad970081c917e60c74e41/packages/xstate-wallet/src/messaging.ts#L103-L110
Which means the app cannot display up to date information about the budget, since it currently expects these notifications so it can cache the budget in the payment-channel-client.
I wasn't quite sure exactly where we should send this notification: in the application workflow? in the store?

@lalexgap Do you have thoughts?

@lalexgap Do you have thoughts?

I think we could create some budget related services or actions that we trigger from the workflow that

call the budget method in the store (aka reserveFunds)
Sends out a budget notification

I think this would follow a similar pattern that we use for UpdateChannel in the application workflow (https://github.com/statechannels/monorepo/blob/3c5d73e601166c9b788ad970081c917e60c74e41/packages/xstate-wallet/src/workflows/application.ts#L322)
It might make sense to create these in workflow-utils so we can share them between the application and approve-budget workflows.


Not able to write to NFS persistent volumes.

**Rancher versions: Build from master
Steps to Reproduce:
Create a Persistent volume with NFS volume plugin (without having the readonly flag enabled).
Create a Persistent Volume Claim for this PV.
Deploy a workload having a volume which uses this PV claim ( without having the readonly flag enabled).

Once the workload is deployed , containers in this workload has the NFS volume mounted as expected.
Able to read all contents from the volume.
But get permission errors when trying to write to this directory.
root@mynfs-794466cdf6-8kqwv:/mytest# echo "33" > 33
bash: 33: Permission denied
root@mynfs-794466cdf6-8kqwv:/mytest#

The mounted directory on nfs side has  drwxr-xr-x 2 root root 4096 Mar 26 23:01 <dir name>
When I changed it to drwxrwxrwx 2 root root 4096 Mar 27 00:33 <dirname> , I am able to write to it.
"nobody:nogroup" is the user being used to create files which is the owner of the NFS mount point directory.
Is it expected that "sub path in volume" have the same access rights as the the nfs mount path?

Tested with latest build from master.
The problem was that the subfolder I create in NFS server side that was used as "Sub Path in Volume" when deploying workloads with NSF volume did not have write permission for "nobody:nogroup" which is user used for creating files under shared folder.
If I use a non-existent path in "Sub Path in Volume" , then the volume gets created with correct permission for "nobody:nogroup" user and I am able to write successfully.

Hi @sangeethah
they're a workaround for this problem , because i try to share an existent volume ( persist my bitnami/mariadb ) , but i can't because of the sub path volume


The parts button could not calculate correct Chinese word length.

The same as chapters,sections,...
I mean
中文 should be combine with 4 * '='. so,
====
中文
====

will be correct , and
==
中文
==

is wrong.
every Chinese word is display as two width of English chars when in monospace font.

I think this problem is caused by Chinese font require double-wide font.
I don't know how to calculate it.  Just search on google and got the following result, wish that helps.
/* This function tests, whether the ISO 10646/Unicode character code

ucs belongs into the East Asian Wide (W) or East Asian FullWidth
(F) category as defined in Unicode Technical Report #11. In this
case, the terminal emulator should represent the character using a
a glyph from a double-wide font that covers two normal (Latin)
character cells. */

int iswide(int ucs)
{
if (ucs < 0x1100)
return 0;
return
  (ucs >= 0x1100 && ucs <= 0x115f) || /* Hangul Jamo */
  (ucs >= 0x2e80 && ucs <= 0xa4cf && (ucs & ~0x0011) != 0x300a &&
   ucs != 0x303f) ||                     /* CJK ... Yi */
  (ucs >= 0xac00 && ucs <= 0xd7a3) || /* Hangul Syllables */
  (ucs >= 0xf900 && ucs <= 0xfaff) || /* CJK Compatibility Ideographs */
  (ucs >= 0xfe30 && ucs <= 0xfe6f) || /* CJK Compatibility Forms */
  (ucs >= 0xff00 && ucs <= 0xff5f) || /* Fullwidth Forms */
  (ucs >= 0xffe0 && ucs <= 0xffe6);

}
Some C library also provide these functions:
#include <wchar.h>
int wcwidth(wchar_t wc);
int wcswidth(const wchar_t *pwcs, size_t n);

Sorry, I don't know how to use javascript to solve this problem.

Thank you! I take a look for this problem

I've written a workable function.  Please insert into your code.
Try it by just save the following code into a strfont.html, and try it on browser.

<meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/>

Input text: <input type="text"
  onkeyup="updateLenFields(this);" value="歐元€100" />

string font width: 8

Thank you, I known JS perfectly )

Fixed in f9042f1f1a4c274b9248e3f2efe314b750f7fd97

thanks, it works.


Upload nitrates plots live

Adds functionality to do_full_rates and do_manage2 to create and upload nitrates results plots live, following implementation for achival results here https://github.com/Swift-BAT/NITRATES/pull/57

Looks good looking through it. Just needs a test run, which hopefully someone else can do. I probably won't have time this week.

i admit i dont remember why this never got merged. Doesn't the pipeline already do this now?
@jjd330

Ok i realized that the pipeline doesnt do this. It waits until the end to upload the plots.
Can we do a test run so this can be merged?

I can do a test run of this after we get the roarcollab branch merged into main

Test has been run and it worked successfully. Test can be seen here under config 99 https://guano.swift.psu.edu/trigger_report?id=746931808
Though the change was when the plots were uploaded and I confirmed that they the plots do upload as the analysis runs instead of just all at the end now.


Exception: 'Incorrect EPUB spine: item with IdRef = "cover" is missing in the manifest.'

Description
Getting below exception while reading epub file
VersOne.Epub.EpubPackageException: 'Incorrect EPUB spine: item with IdRef = "cover" is missing in the manifest.'

I'm seeing this too:
VersOne.Epub.EpubPackageException: Incorrect EPUB manifest: item with ID = "cover" is missing.
VersOne.Epub.Utils.TaskExtensionMethods.ExecuteAndUnwrapAggregateException[T]

Yeah, this is the most common problem among the EPUB books. I'll add a workaround in the next release.

Implemented in version 3.3.3.
@daviddphillips, for the Incorrect EPUB manifest: item with ID = "cover" is missing error: these errors will be automatically ignored, if your application doesn't pass a custom EpubReaderOptions instance into a EpubReader method. Otherwise, you will need to set EpubReaderOptions.BookCoverReaderOptions.Epub2MetadataIgnoreMissingManifestItem to true.
@sattasundar, for the Incorrect EPUB spine: item with IdRef = "cover" is missing in the manifest error: it's not a common issue among the EPUB books, so it's not ignored by default. To ignore these errors you can use the following code:
EpubReaderOptions options = new(EpubReaderOptionsPreset.RELAXED);
options.SpineReaderOptions.IgnoreMissingManifestItems = true;
EpubBook book = EpubReader.ReadBook(filePath, options);


chore(Dependencies) : update calcite-core from 1.33.0 to 1.34.0

Updates org.apache.calcite:calcite-core from 1.33.0 to 1.34.0.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.apache.calcite", artifactId = "calcite-core" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.apache.calcite", artifactId = "calcite-core" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #628.


LAB_10_KeyVaultImplementingSecureDatabysettingupAlwaysEncrypted.md

English:
Key Vault
Current Translation:
金鑰保存庫
Suggested Translation:
Key Vault
Description:
Inconsistent translation. Global check

Hello contributor,
Thank you for your contribution! We are processing your suggestions and we will update you shortly.
Kind regards,
Microsoft Worldwide Learning Team

Run bugfix tool and waiting for result.

Manual inspection, no problem


OSD-15099: Delaying the creation of servicemonitor and podmonitor resources till the hostedcluster is Completed

What this PR does / why we need it:
SRE alerts defined on hypershift may be triggered if servicemonitor and podmonitor resources get created before the hostedcluster isCompleted.
This PR delays the creation of those scrape configs till reaching this Completed state.
Which issue(s) this PR fixes *:
Fixes OSD-15099
Checklist

[X] Subject and description added to both, commit and PR.
[X] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/retest

/retest

@Nikokolas3270 the cpo doesn't have access to the HostedCluster, which is why every test is failing in the e2e because the cpo never progresses with:
W0208 21:47:14.613219       1 reflector.go:424] sigs.k8s.io/controller-runtime/pkg/cache/internal/informers_map.go:262: failed to list *v1beta1.HostedCluster: hostedclusters.hypershift.openshift.io is forbidden: User "system:serviceaccount:e2e-clusters-z4shq-example-2vrw5:control-plane-operator" cannot list resource "hostedclusters" in API group "hypershift.openshift.io" at the cluster scope
See an example here
I should have checked though. You are completely right that the versionHistory is empty in the hostedcontrolplane. However, you should be able to check the ClusterVersionAvailable condition in the hostedcontrolplane conditions. If true, the release has been applied.

Hello @csrwng.
I changed my code to use ClusterVersionAvailable condition on the hostedcontrolplane instead of checking progress of the hostedclusted.
I confirm that checking that condition is indeed equivalent to reach Completed progress. I tested it and it went fine, also thanks to that (and to your comment), we no longer have the CPO checking the hostedcluster; also the code is even simpler 👍

/retest

/lgtm
/approve


Startpage.com image search not filtered

Expected Behavior
When I block a site (e.g. www.pinterest.com) I would expect the image search to also be filtered.
Actual Behavior
The search results are filtered on the regular search, but images still appear on the image search.
Steps to Reproduce the Problem

Search for "logo x" on startpage.com's regular search
Block pinterest (you should really do, regardless of this bug)
Switch to image search

Specifications

OS: Linux
Browser: Chromium as well as Firefox
Other extensions that might interfere: None

Not a bug. There is no images support for startpage.com, list of supported features mentioned in README

@Semro thanks, I overlooked that. Feel free to change this to be a feature-request then! :-)

You could implement it pragmatically and check against div.image-quick-details > span:

It's better than nothing, and it seems they always display the host.domain.tld in there, so for many cases this might work pretty good.

Want to re-open this issue then? :)

@iorate since I couldn't find any documentation, maybe you can tell me: target is the element that should be hidden, correct? And also, what are actionTarget and actionStyle?
Disclaimer: Not a web developer, I don't know what I'm doing.

target is the element that should be hidden

Yes, in most cases.

what are actionTarget and actionStyle

"Actions" are containers of the "block this site" and "unblock this site" buttons. actionTarget designates where actions are inserted, and actionStyle designates the style of actions.

I found another problem. The image search result page is built on React. It means that elements added by this extension are removed on hydration.
Setting runAt to document_idle will avoid the problem (ref: #179), but it will worsen the current user experience in the web/video/news search, that is, blocked sites will show up for a moment. I won't accept it.

Conclusion: won't fix (at least for now)
Image search support would be incomplete, but would either worsen the user experience or require a major rewrite of the code. It's not worth it.


[ENH] How to test inverse_transform if certain columns are expected?

This is a design question: how do we automate tests for inverse_transform?
In our current test suite, some transformers produce transformed pd.DataFrame with special column names, e.g., WindowSummarizer or FeatureUnion.
Hence, in order to test inverse_transform, inputs with these column names need to be generated.
The easiest way seems to be by using transform, although that is no longer a unit test then, since transform is also being called.
But this seems difficult to integrate with a test where we simply loop over methods and assume we can easily generate an input, e.g., test_methods_do_not_change_state.
Any other good ideas?

would that not require, potentially, one Xt per transformer?

I was thinking of something along the lines of:
if "X" in params.keys():
   # overwrite the pytest fixture
    X = params["X"]
    params.pop("X")

# otherwise just use the pytest fixture

hm, what would we overwrite it with? I.e., where do we get the info on the columns from?

hm, what would we overwrite it with? I.e., where do we get the info on the columns from?
Not sure what you mean here... Maybe I don't understand the the problem well.

But in general, if we want to keep the automated tests and add extra functionality for special inputs, get_test_params() it the natural place for this.

Well, some inverse transforms expect a certain number of columns, column type, or column names. This can differ by estimator. We currently loop over estimators with "for all forecasters, test this". How would we construct the input for the inverse transforms under this logic?


Revendor github.com/Microsoft/hcsshim

Signed-off-by: Justin Terry (VM<EMAIL_ADDRESS>

The changes here are not reflective of all the changes in runhcs.exe which is published via https://github.com/Microsoft/hcsshim/releases/download/v0.8.1/runhcs.exe. This revendor is to update to the latest supported version.

Codecov Report

Merging #2775 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2775   +/-   ##
=======================================
  Coverage   43.72%   43.72%
=======================================
  Files         100      100
  Lines       10734    10734
=======================================
  Hits         4693     4693
  Misses       5311     5311
  Partials      730      730

Flag
Coverage Δ

#linux
47.39% <ø> (ø)
:arrow_up:

#windows
40.89% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


[MINOR] Spelling bin core docs external mllib repl

What changes were proposed in this pull request?

This PR intends to fix typos in the sub-modules:

bin
core
docs
external
mllib
repl
pom.xml

Split per @srowen https://github.com/apache/spark/pull/30323#issuecomment-728981618
NOTE: The misspellings have been reported at https://github.com/jsoref/spark/commit/706a726f87a0bbf5e31467fae9015218773db85b#commitcomment-44064356
Why are the changes needed?

Misspelled words make it harder to read / understand content.
Does this PR introduce any user-facing change?

There are various fixes to documentation, etc...
How was this patch tested?

No testing was performed

Can one of the admins verify this patch?

Could you please address the following typos, too?
docs/configuration.md
excluded -> excluded
docs/graphx-programming-guide.md
an `VertexRDD -> a `VertexRDD (2 places)
docs/mllib-clustering.md
an `JavaRDD -> a \JavaRDD`
docs/mllib-data-types.md
an CoordinateMatrix -> a CoordinateMatrix
docs/running-on-kubernetes.md and docs/running-on-yarn.md
propogate -> propagate (2 places)
docs/sql-ref-syntax-qry-select-groupby.md
column -> column (3 places)
docs/sql-ref-syntax-qry-select-lateral-view.md
tabelName -> tableName (3 places)

@kiszk: done (not quite sure how I missed tabel)

Jenkins test this please

Test build #131934 has started for PR 30530 at commit 295f588.

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/36531/

Test build #131934 has finished for PR 30530 at commit 295f588.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/131934/

Thanks

Thanks! Merged to master.


In SecretsManager.DescribeSecret, include VersionIdsToStages field

Implements this issue.
https://github.com/spulec/moto/issues/2230

Coverage decreased (-0.06%) to 92.943% when pulling 8e9bbcbc99c04a45a82583bea1288dd15cea4a6b on sam-clotfelter:support-VersionIdsToStages into df493ea18de22b4533073eee3e296686019911c2 on spulec:master.

Add some tests to verify this behaviour

Tests have been added. Sorry about that.
I found and fixed a bug from when I implemented support for multiple version secrets. AWSCURRENT was not being set correctly when put_secret_value was called on an empty secret and a custom VersionStage was passed to it.
While fixing this, I changed the data structure. version_stages has been changed from a list to a set.

Looks like everything is good other than the linter. If we can get that cleaned up, happy to merge!

This PR is exactly what I'm looking for, to be able to run local tests of my secrets rotation lambdas.
When will the extra linebreak be removed, so the merge can be made?

@rolfarrestam if you want to copy these changes into a new PR with the newline removed, I'll be happy to merge.

Will close this, as the functionality has now been implemented in #3029.


Feat/edit tasks

[x] get task by id
[x] update task
[x]  update swagger

This is  in progress @sheyi103  I missing users to test with, Users provided on chat are not working


How can i populate DATADOG_INSTANCE_NAME in UploadWorker.kt?

Question
When using datadog in a library, i initilize it with an instance name but the name does not get populated into DATADOG_INSTANCE_NAME in the UploadWorker.kt, this results in an exception thrown inside the worker:
SDK instance with name _dd.sdk_core.default is not found, returning no-op implementation.
Please make sure to call Datadog.initialize([instanceName]) before getting the instance.
SDK instance was requested from: (Ask Gemini)

at com.datadog.android.Datadog.getInstance(Datadog.kt:139)
at com.datadog.android.core.internal.data.upload.UploadWorker.doWork(UploadWorker.kt:42)
at androidx.work.Worker$1.run(Worker.java:82)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
2024-09-09 11:32:40.574 19812-20100 Datadog
co.onestep.android.demoapp
E  Datadog has not been initialized.

Since those lines
 val instanceName = inputData.getString(DATADOG_INSTANCE_NAME)
 val sdkCore = Datadog.getInstance(instanceName) as? InternalSdkCore

return a null instance name and the call to Datadog.getInstance(instanceName/this is always null/) throws an exception

I call Datadog.initialize() in an SDK i am developing, my SDK initilization proccess is recommended but not guaranteed to be called in the application's onCreate.
This is how i initilize datadog in my SDK
internal fun initDataDog(
    context: Context,
): SdkCore {

    val configuration = Configuration.Builder(
        clientToken = BuildConfig.DATA_DOG_CLIENT_TOKEN,
        env = BuildConfig.BUILD_TYPE,
        service = BuildConfig.LIBRARY_PACKAGE_NAME,
    ).build()

    Datadog.initialize(BuildConfig.LIBRARY_PACKAGE_NAME, context, configuration, TrackingConsent.GRANTED)
    Datadog.setVerbosity(if (BuildConfig.DEBUG) Log.VERBOSE else Log.ASSERT)

    with(Datadog.getInstance(BuildConfig.LIBRARY_PACKAGE_NAME)) {
        // Log collection
        setupLogCollection(this)

        // Tracing
        setupTracing(this)

        // Realtime user monitoring
        setupRUM(this)
    }

    return Datadog.getInstance(BuildConfig.LIBRARY_PACKAGE_NAME)
}

As you can see i am initilizing it with an instance name, to avoid any conflicts with any datadog instances that may be in use by my hosting app.
This all works fine, however, the code for doWork in UploadWorker.kt, line 42,  is calling Datadog.getInstance() without my instance name, the instance name is taken from DATADOG_INSTANCE_NAME, but it is internal and i cannot populate it.
This results in the error above.

Hi @ZivStep,
Thank you for sharing your code! We've identified an issue with the UploadWorker and are currently working on a fix.
In the meantime, the data collected by the SDK can still be uploaded while the app is in use, the error you’re seeing is just a warning.


[AutoDiff] Add more loop differentiation negative testcases for TF-933.

Loop differentiation produces incorrect results when the reduction accumulation
variable is not initialized with an active parameter. TF-933 tracks this issue.
This patch is a follow-up to https://github.com/apple/swift/pull/27796, adding negative test cases for while and repeat-while loops.

@swift-ci Please test tensorflow


[all] Dev guide for CPO

Is this a BUG REPORT or FEATURE REQUEST?:
We don't have a dev guide which is fine,but currently there are logs
such as 1/2/3/4/5 level exist, maybe need some quick definition on this

Uncomment only one, leave it on its own line:
/kind bug
/kind feature

What happened:
What you expected to happen:
How to reproduce it:
Anything else we need to know?:
Environment:

openstack-cloud-controller-manager(or other related binary) version:
OpenStack version:
Others:

The logging has already been defined in Kubernetes: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-instrumentation/logging.md

I will close this one and compare with existing code to see whether we follow that guide or not :)
thanks for point me the dev guide


Publish doc updates

Docs Build status updates of commit 0f7a806:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/design/add-in-icons.md
:white_check_mark:Succeeded

docs/develop/convert-javascript-to-typescript.md
:white_check_mark:Succeeded

docs/develop/persisting-add-in-state-and-settings.md
:white_check_mark:Succeeded

docs/excel/custom-functions-parameter-options.md
:white_check_mark:Succeeded

docs/excel/custom-functions-web-reqs.md
:white_check_mark:Succeeded

docs/excel/excel-add-ins-core-concepts.md
:white_check_mark:Succeeded

docs/overview/office-add-ins.md
:white_check_mark:Succeeded

docs/publish/publish-task-pane-and-content-add-ins-to-an-add-in-catalog.md
:white_check_mark:Succeeded

docs/reference/requirement-sets/dialog-api-requirement-sets.md
:white_check_mark:Succeeded

docs/testing/troubleshoot-manifest.md
:white_check_mark:Succeeded

javascript/api/custom-functions-runtime/customfunctions.cancelableinvocation
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


question post route needs to return a json of the created question

This issue was moved to Dallinger/Dallinger#168


Update statically-resolved-type-parameters.md

inline functions can be parameterized with a standard generic type parameter.

This isn't quite right. Adding the standard generic type parameters will no longer use static type parameters, forcing the compiler to specialize the function to a specific type. This should be added to the sentence.

Yes, that's true.  But can an inline function have standard generic type parameters (CLR generics) without any static type parameters on it?  The docs says this is not possible at all.

It can, yes. But not in the context of static types, which is probably why this was explicitly called out as not possible here. I think it could get reworded, but it need to be explicit about the fact that this forces specialization with CLR generics and thus doesn't let you do things like generic arithmetic

@cartermp What should we do with this PR?

As it stands we'll need more clarification in this PR to take it further. Right now the document is correct, though could be improved. The current change would no longer make it correct.

Hi @ebresafegaga - just working backwards through open PRs. Are you going to make the adjustments that Phillip suggested, or continue the discussion?

Closing as abandoned.


feat: Grid trade feature

Description

The bot is currently trading single buy/single sell.
There was a suggestion from @domnuprofesor to allow multiple buy/sell feature #158
This PR is to cover the feature
How to test:
$ git pull
$ git checkout feat/support-grid-trade
$ npm run docker:build
$ docker-compose -f docker-compose.server.yml up -d
$ docker ps -a
$ docker logs binance-bot -f --tail=1000 | bunyan

Note that when you use this branch, there is a migration running over your current configuration.
Once start using this PR, you cannot go back to use the previous version including the master branch.
Todo
This PR is not completed yet as require more features.

[x] Save all filled orders to database
[x] Allow removing the saved symbol grid trade manually

Related Issue

#158
Motivation and Context

To provide the feature, massive refactoring was required and changes in setting UI.
The features outlines as below:
Buy
Setting UI

Number of grids: 2
Grids

No#
Trigger Percentage
Stop Price Percentage
Limit price percentage
USDT
BTC
BUSD

1
1
1.05
1.051
50
0.001
50
X

2
0.8
1.03
1.031
100
0.002
50
X

Validation

Buy amount cannot be less than the minimum notional value.
Only 1st trigger percentage can be above or equal to 1.

Scenario
Your 1st grid trading for buying is configured as below:

Grid No#: 1
Trigger percentage: 1
Stop percentage: 1.05
Limit percentage: 1.051
Buy amount: 50 USDT

To make it easier to understand, I will use $ as a USDT symbol. For the simple calculation, I do not take an account for the commission. In real trading, the quantity may be different.
Let's assume the current price is $105 for 1 COIN.

Current price: $105
Lowest price: $100
Trigger price: $100

When the current price is down to the lowest price ($100) and lower than ATH(All-Time High) restricted price if enabled, the bot will place new STOP-LOSS-LIMIT order for buying.

Stop price: $100 * 1.05 = $105
Limit price: $100 * 1.051 = $105.1
Quantity: 0.47573

Let's assume the market changes as below:

Current price: $95

Then the bot will follow the price fall and place new STOP-LOSS-LIMIT order as below:

Stop price: $95 * 1.05 = $99.75
Limit price: $95 * 1.051 = $99.845
Quantity: 0.5

Let's assume the market changes as below:

Current price: $100

Then the bot will execute 1st purchase for the coin. The last buy price will be recorded as $99.845. The purchased quantity will be 0.5.
Once the coin is purchased, the bot will start monitoring the sell signal or the next grid trading for buying.
Your 2nd grid trading for buying is configured as below:

Grid#: 2
Current last buy price: $99.845
Trigger percentage: 0.8
Stop percentage: 1.03
Limit percentage: 1.031
Buy amount: $100

And if the current price is continuously falling to $79.876 (20% lower), then the bot will place new STOP-LOSS-LIMIT order for the 2nd grid trading for the coin.
Let's assume the market changes as below:

Current price: $75

Then the bot will follow the price fall and place new STOP-LOSS-LIMT order as below:

Stop price: $75 * 1.03 = 77.25
Limit price: $75 * 1.031 = 77.325
Quantity: 1.29

Let's assume the market changes as below:

Current price: $78

Then the bot will execute 2nd purchase for the coin. The last buy price will be automatically re-calculated as below:

Final last buy price: ($50 + $100)/(0.5 COIN + 1.29 COIN) = $83.80

Sell
Setting UI

Number of grids: 2
Grids

No#
Trigger Percentage
Stop Price Percentage
Limit price percentage
Sell Quantity Percentage

1st
1.05
0.97
0.969
0.5
X

2nd
1.08
0.95
0.949
1
X

Unlike buy, the sell setting will use the percentage of a quantity. If you want to sell all of your coin quantity, then simply configure it as 100.
Validation

The trigger percentage cannot be lower than the previous trigger percentage.
If the grid's sell amount percentage is 1, then a new grid cannot be added.
If the last grid's sell amount percentage is not 1, then display the warning The bot will not sell all quantities. If you want to sell all quantities, configure as 1 for the last grid.

Sell Scenario
From the last buy actions, you now have the following balances:

Current quantity: 1.79
Current last buy price: $83.80

Your 1st grid trading for selling is configured as below:

Grid No# 1
Trigger percentage: 1.05
Stop price percentage: 0.97
Limit price percentage: 0.969
Sell amount percentage: 0.5

Let's assume the market changes as below:

Current price: $88

As the price is higher than the sell trigger price($87.99), then the bot will place new STOP-LOSS-LIMIT order for selling.

Stop price: $88 * 0.97 = $85.36
Limit price: $88 * 0.969 = $85.272
Quantity: 0.895

Let's assume the market changes as below:

Current price: $90

Then the bot will follow the price rise and place new STOP-LOSS-LIMIT order as below:

Stop price: $90 * 0.97 = $87.30
Limit price: $90 * 0.969 = $87.21
Quantity: 0.895

Let's assume the market changes as below:

Current price: $87

Then the bot will execute 1st sell for the coin. Then the bot will now wait for 2nd selling trigger price ($83.80 * 1.08 = $90.504).

Current quantity: 0.895
Current last buy price: 83.80 USDT

Let's assume the market changes as below:

Current price: $91

Then the current price($91) is higher than 2nd selling trigger price ($90.504), the bot will place new STOP-LOSS-LIMIT order as below:

Stop price: $91 * 0.95 = $86.45
Limit price: $91 * 0.949 = $86.359
Quantity: 0.895

Let's assume the market changes as below:

Current price: $100

Then the bot will follow the price rise and place new STOP-LOSS-LIMT order as below:

Stop price: $100 * 0.95 = $95
Limit price: $100 * 0.949 = $94.9
Quantity: 0.895

Let's assume the market changes as below:

Current price: $94

Then the bot will execute 2nd sell for the coin.
The final profit would be

1st sell: $94.9 * 0.895 = $84.9355
2nd sell: $87.21 * 0.895 = $78.05295
162 USDT (8% profit)

Symbol configuration

The symbol configuration should allow overriding the grid setting.
The symbol configuration should allow setting executed status manually.

How Has This Been Tested?

I am currently testing this feature and fixed some unforeseen issues.
It is now fairly stable. However, I will continue to test until I am confident with stability.
Welcome to test and suggest if you find any issue.
Screenshots (if appropriate):

Global Setting UI - Buy
Global Setting UI - Sell
Symbol Setting UI

Frontend 1
Frontend 2

@chrisleekr Thanks a lot, I like your updates.
However, there is a bug when changing grid trades in the global settings, it will override the customized symbol grid trades.
Steps to reproduce the bug:

Change grid trades for one symbol only.
Change grid trades for the global settings only and apply them.
Check the customized grid trades of that symbol, you will see they are overridden.

@habibalkhabbaz
Another good find. Let me fix it up.

@habibalkhabbaz
Another good find. Let me fix it up.
Updated:
I fixed up and added more tests for those cases.
Let me know if you find any issues.

Just updated my local branch and it seems working very well!
I will let you know when I find something else.

Finally we have sorting 😍 , let me test this

Oh, I didn't see the latest update.
However, why we don't use + for the numbers instead conditions. It make sense, doesn't ?

Oh, I didn't see the latest update.
However, why we don't use + for the numbers instead of conditions. It make sense, doesn't ?

The reason I don't use + is that it returns null as a value.  It will give you the wrong order such as the below image.

The correct order would be like below:

It is achieved by adding the condition as below:
s.sell.currentProfitPercentage !== null
        ? s.sell.currentProfitPercentage
        : direction === 'asc'
        ? 999
        : -999,

I think this PR is pretty stable. I will release it tomorrow or this weekend.

Hey @chrisleekr, it's already closed, but maybe I have found a strange situation, two buy orders have been executed to MATIC, but it's showing that only the first grid was executed

@elvishp2006 Let's open new issue and follow from there.

Done @chrisleekr https://github.com/chrisleekr/binance-trading-bot/issues/252


Update availability in the Australia East region

[Enter feedback here]
Please update availability in the Australia East region. I have been able to create Service Bus and Event Hubs namespaces with zone redunancy in the Australia East region. However, this page does not reflect this support.
Thanks!

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

ID: 9ef6739c-50e6-e80b-cfc1-4d7d5b5d35e8
Version Independent ID: 72c38d9b-b8b1-92d4-3937-12de08c35918
Content: Regions that support Availability Zones in Azure
Content Source: articles/availability-zones/az-region.md
Service: azure
GitHub Login: @cynthn
Microsoft Alias: cynthn

@pacodelacruz Thank you for pointing this out. We will have this reviewed and updated as needed.

@pacodelacruz We have initiated a pull request and this will be updated within the next 24-48 hours after approval of content authors. Thank you for catching this in the document. Much appreciated. We will now close this issue. Should you still have any query please do tag me to your reply and I will be happy to help .


LDAP: cannot login using email

Description
I would like to login using my email,
however I'm not able to configure gitea,
User Filter works only when I use (&(objectClass=inetOrgPerson)(cn=%[1]s)), in cn there is my name eg. Greg,
when I first log in using "Greg" then it works the user got synced with his email address and now I'm able to login using my email,
but if I change User Filter to (&(objectClass=inetOrgPerson)(mail=%[1]s)) or (&(objectClass=inetOrgPerson)(|(cn=%[1]s))(mail=%[1]s))) and try to login to gitea without prior User sync it doesn't work,
I'm not sure if there is something I'm doing wrong or there is a bug,
pls help :),
thanks in advance
Gitea Version
1.22.6
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
2024/12/14 18:46:22 ...vices/auth/signin.go:119:UserSignIn() [W] Failed to login<EMAIL_ADDRESS>via 'ldap': name is invalid<EMAIL_ADDRESS>must be valid alpha or numeric or dash(-_) or dot characters
2024/12/14 18:46:22 ...ers/web/auth/auth.go:231:SignInPost() [I] Failed authentication attempt for<EMAIL_ADDRESS>from <IP_ADDRESS>:0: Email address does not exist [email<EMAIL_ADDRESS>Screenshots
No response
Git Version
No response
Operating System
No response
How are you running Gitea?
I'm running using docker compose
Database
PostgreSQL

What's your LDAP result? I guess you used<EMAIL_ADDRESS>or<EMAIL_ADDRESS>then the email address can't be used as the username.
In short: the real user name used by Gitea must be a pure username, but not an email address.

hi wxiaoguang, thank you for your help,
in cn I have my name - "Greg" in mail I have<EMAIL_ADDRESS>when I try to login with my email the first time I set up gitea it's not possible (or I'm doing something wrong) I have to use whatever I have in "User Filter" in my case it's "Greg",
once I initially logged in as "Greg" and logged out now I'm able to use my email (as the user got synced with gitea),
what I would like to do is to be able to log in using my email without having to login using User Filter first,
I see there is "TestLDAPEmailSignin" test but I think it doesn't cover the scenario (because I assume User Filter is responsible for both authentication and user mapping)
do you think it's possible?
thank you

I see there is "TestLDAPEmailSignin" test but I think it doesn't cover the scenario (because I assume User Filter is responsible for both authentication and user mapping)

It depends on how your LDAP is configured (directBind).
I am also using LDAP in my instance. If I understand correctly: LDAP first tries to "bind" (either by the current userDN&password, or the bindDN&password), then it collects the entity information and Gitea uses the entity information to do login and/or user-creation.

Since you have seen must be valid alpha or numeric or dash(-_) or dot characters in your error log, it seems that your setup is trying to create a new user with the email address. My tests just show that "login with email could create the user by its name correctly".
So the question is: what's the search result of your instance? Is the "name" the pure username? If you'd like to debug into the problem, you could try to add some logs in https://github.com/go-gitea/gitea/blob/92648112175753c4eaa13cc6f8e3cc6a3cef9ad5/services/auth/source/ldap/source_search.go#L252

Or if you could provide a reproducible setup with detailed steps (for example, a docker compose with necessary gitea&openldap config), and then I can reproduce your problem on my side, then maybe I could also try to figure it out or fix it.

And one more question: what's your "Username Attribute"? If it doesn't exist in the LDAP search result, then Gitea will use the "inputed username (in your case: email)" as the username's fallback. Then you would still see the error above.

thank you wxiaoguang, I think username attribute is sn, uid is a uuid, but let me try again

ok, I think I was missing user attribute and what you said happened (it was trying to use email as the username attribute), now it's working, I really appreciate your quick help, thank you again


ANTLR v3 vs v4

Quick question: are you planning to move to ANTLR v4? I'm asking becauase v3 is getting long in the tooth.

I would love to - and I completely agree - but I just haven't got the resources to do it.


/docs/Products/mesa/faq/ text implementation.

Implement the following text to /docs/Products/mesa/faq/
https://pastebin.com/Zw5nsgQs

missing text @KeenanLukeOM

Hopefully this will resolve. https://pastebin.com/Zw5nsgQs

@Mi-Lan This issue was resolved with the first pull, closing!


Label for dwarf stars and extrasolar planets are offset from their groups

Several labels in the astrophysics group are offset from the sub-groups they refer to. This screenshot illustrates the effect. This was taken using Firefox 59 nightly, but it looks the same in Chromium. As you can see, there are two distinct groupings in the right part of this image, corresponding to dwarf stars and extrasolar planets. But the corresponding labels are offset by so much that the closest label to the extrasolar planet group is actually the dwarf star one, and the extrasolar planet label is lost in the void below.

Thanks for the report!  This issue arises because the locations of these high-level labels was determined manually by eye a long time ago (around 4 years ago) and since then the graph has gradually grown and changed due to the addition of new papers.  In https://github.com/paperscape/paperscape-backend/commit/bcc4da8cb46972fd4af942e11822d9e46bc450b9 I updated the code to allow to link a region label to a specific paper, in the hope that that will be a more robust way to keep these labels over the same region.  The map itself should be updated tomorrow.

This is indeed fixed in the latest map.

This is indeed fixed in the latest map.

Thanks, I can confirm that.


Specify a module id when defining an AMD module

Some AMD loaders such as almond have problems loading anonymous modules.

If you are wanting this in v2, then please make your PR to the v2.x maintenance branch.

Oh, okay, I didn't see that. Thanks for the info.


agent still thinking without any progress

Can you please show us how to update the SuperAGI to the latest version ?
I have a problem, when runing my SuperAgi Agent, it's stuck on the 'determine which next tool to use' step, any idea how to fix this ?
in That step : Determine which next tool to use, and respond using the format specified above:

as  chatgpt this question "how to return my project back to main project settings " it will give you instruction to us eon cmd line, i tried pasting it here but it lost all the formatting and was un eligible.

I was also facing the same issue. perform below steps might solve your issue

check your API key if it's correct or not.
Head over to https://platform.openai.com/account/usage
check your usage quota. if finished or trial is expired use different account

Hope it helps 😄

@Magyoun Please make sure you've done all the setup correctly. Also if possible, do send some logs so that we can look into this.

@Magyoun are you still facing the same issue?

i am facing the3 same issue. Ik have upgrade ny open ai account. It is also thinking after  "Determine which next tool to use, and respond using the format specified above:"  the time is also 2 hours before the real time. Don't know f this is related.

i am facing the3 same issue. Ik have upgrade ny open ai account. It is also thinking after "Determine which next tool to use, and respond using the format specified above:" the time is also 2 hours before the real time. Don't know f this is related.

same

Been busy on other sites and can’t get here, how are things?

Having the same issue stuck on thinking. I have deleted and reinstalled everything and changed all my keys and still stuck on the same issue. I also tried the market searches and they get stuck too. Mac M2 chip 24gb of ram.

If open AI keys are set properly in settings can you try using gpt-3.5-turbo instead because thinking... is shown in UI until there is response from OpenAI until that HTTP call has got some response and finished.
So sometime network issue, or incorrect API key leads to it.

I have changed my API key 3 times and upgraded to gpt4 however I don't see any activity happening to gpt. I check the code and it's going to api.open.ai/v1 and that is not the code showing on the open ai site for API to integrate. I am new but would like any direction or advice since I am not the only one having this issue. I have done this twice and will delete it again and try again.

can the config.yaml be changed to use the chatgpt endpoint w/o private key to auth http requests instead?


Doesn't work on time out dialogue

When the time out dialogue appears asking to reenter your password there is no way to enter the 2FA code again so although the password is correct and the dialogue disappears to show the CP again, the user is not actually logged in. A click to another page then redirects to the log in page.

Good point. It would be nice if it would show this after the login, or allow the user to continue.
Maybe add an extra config setting to let 2FA stay alive longer than the login itself. For example, login each day, 2FA once a week. Any thoughts on this?

Something like that makes sense to me, and is familiar from other 2FA systems. Every week seems like a lot. I'm not finding documentation for Github or Google, but my guess is they prompt once a month?

@olets Both Github and Google ask you every time you login, but they allow you to stay logged in for a really long time. I hope to get things working with the dialog, but i'm afraid it will be a redirect to the verification page.
When another call is done after login, but before verification, the plugin logs the user out. When craft allows hooking further into the core this isn't needed anymore. see: https://github.com/craftcms/cms/issues/1471#issuecomment-402385051

Did some research, but Craft's AuthManager.js (which triggers the modal) doesn't throw any events when showing or hiding the modal. For now it's not possible to hook into this logic. Hopefully Craft will allow something like this in the future.

It appears to me that this dialog appears after 2min.  I'm not sure what setting controls this, though.

@weotch it is Craft getting session info, but the 2fa plugin logs out when a not allowed call is done before entering your 2fa code. I don't know if I can allow the session info call by default without causing any security vulnerabilities.
Path: /index.php?p=admin/actions/users/session-info&dontExtendSession=1

@roelvanhintum pointed me to the right direction. The problem is that /index.php?p=admin/actions/users/session-info&dontExtendSession=1 is not in the whitelisted actions of this plugin, so after calling it for the first time you are silently logged out.
This is because this plugin only support the old action /users/get-remaining-session-time  which apparently is not called anymore from craft 3.4 according to https://github.com/craftcms/cms/issues/5392
The fix consists on adding this line into the isCraftSpecialRequests() method $actionSegs === ['users', 'session-info']

@goraxan thanks! I've just released this in 2.7.4


Add unitary matrix gate

Summary
This adds a unitary matrix gate class to pass unitary matrices to simulator backends. The backend needs to specify the basis name unitary, although perhaps another name would be more appropriate. Perhaps umatrix?
Details and comments

Is this PR related to #1221 ?

@1ucian0 maybe

this is not the same.

This looks great, thanks @ewinston .


Fixing error on Cancel

When using Axios along with Bluebird, requests cancellations has a warning:
Warning: a promise was rejected with a non-error: [object Object]

The PR makes Axios throw a true custom error on request cancellation.

Coverage increased (+0.02%) to 93.734% when pulling 2ad0ee04678ba1491ca80550f1db54d42c370fa0 on hugocaillard:fix-error-on-cancel into 1beb245f3a9cdc6da333c054ba5776a2697911dd on mzabriskie:master.

This behaviour is intended as it follows this Cancellable Promise proposal that was finally withdrawn.
We don't have plans to replace this until another approach has enough traction in the ecosystem.


AFHTTPRequestOperation - hasAcceptableStatusCode in completionBlock

Hi all
i have a little problem with AFHTTPRequestOperation with arc.
I use snipped found in project page, and i have a warning here:
AFHTTPRequestOperation *operation = [[[AFHTTPRequestOperation alloc] initWithRequest:request] autorelease];
operation.completionBlock = ^ {
    if ([operation hasAcceptableStatusCode]) { *// Warning here
        NSLog(@"Friend Request Sent");
    } else {
        NSLog(@"[Error]: (%@ %@) %@", [operation.request HTTPMethod], [[operation.request URL] relativePath], operation.error);
    }
};

the warning says: "Capturing ''operation' strongly in this block is likely to lead to a retain cycle"
sorry for my bad english
thx for great work!
Dario

Hi Dario,
There's a question on Stack Overflow that answers this really well, so please look at that.
As an alternative suggestion, if you do setCompletionBlockWithSuccess:failure: checks for hasAcceptableStatusCode and hasAcceptableContentType will automatically be done for you. So instead, it would be:
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
        NSLog(@"Friend Request Sent");
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"[Error]: (%@ %@) %@", [operation.request HTTPMethod], [[operation.request URL] relativePath], operation.error);
}];

I'll consider updating that snippet in the README...


Migrate playbook/validation/product-design-sprint/test

https://thoughtbot.com/playbook/validation/product-design-sprint/test

[ ] Migrate content we want to preserve into new guide
[x] Add redirect to thoughtbot.com

Redirect is here https://github.com/thoughtbot/handbook/pull/3024

I verified there was no content from the playbook that needed to be preserved or wasn't already brought over.


Switch from uWSGI to Gunicorn

While uWSGI has a lot of options and is theoretically better than gunicorn, we're going to switch back to gunicorn. uWSGI breaks a lot of the rules of a Python interpreter in order to squeeze out more performance and the sum of all of these made working with it difficult.
We'll use gunicorn with the gevent worker so that we don't block threads when there are large uploads happening.

have you considered one of the asyncio worker types for gunicorn?
http://docs.gunicorn.org/en/latest/design.html#asyncio-workers
No need for gevent since this is a python 3 app.

The gaiohttp worker requires the entire application to be asynchronous I think since it's not running the application using a thread or anything. I couldn't figure out the parameters of the gthread worker, it doesn't look like it's actually using asyncio at all and it's just a thread pool.

sounds good, just wanted to make sure :)

uWSGI breaks a lot of the rules of a Python interpreter

This is intriguing; do you have any specific rules in mind?

@piotr-dobrogost A lot of the stuff can be configured back to to act like "normal", but I was still getting some weird behavior and eventually just gave up and switched.
Some of the things are like:

It doesn't use a new dictionary for each request, instead it shares a dictionary between requests and clears it out after the request is over.
It doesn't have a GIL enabled by default, you have to turn it on with the --enable-threads option.

There are other little weird things like that, almost always there's some configuration option that fixes it, but it just ended up being hard to track down when something weird was happening.


Merging two clusters

Hi @yl-1993 , thanks for sharing the work. Really informative and well structured.
I wanted to know, is there any way to merge 2 clusters to create 1 Custer as an output? Thanks.

Hi @nik13 , for merging two clusters to create 1 cluster, basically I come up with two ideas.
(1) You may leverage the idea of cluster proposal and try to evaluate the quality of merged clusters. For example, you can design different merge strategies to create a lot of proposal and use a trained gcn-d to select the best one.
(2) You can refer to another paper from our group, which exploits imitation learning for cluster merging problem.


Add --nodeclined support to --tsv

--tsv currently ignores the --nodeclined and still shows the events that you have declined in the list. This pull request adds the functionality to hide declined events from TSV list.

This is still an issue. Any chance of fixing it?

yes would like it too

This is still an issue. Any chance of fixing it?
Are you sure? It looks like it was fixed in 757cb0f back in 2018.

Maybe the changes weren't released to the version you're using?

Yeah, just tested it, --nodeclined definitely hides declined events for me with --tsv or without. Please reach out if you're still seeing issues.


fix: available service endpoints added/fixed

Description
Contains fixes and additions to the available multitenant services that can be configured with a Virtual Private Endpoint gateway.
Made sure that all multitenant services are tested.
fixes https://github.com/terraform-ibm-modules/terraform-ibm-vpe-gateway/issues/396
fixes https://github.com/terraform-ibm-modules/terraform-ibm-vpe-gateway/issues/390
Release required?

[ ] No release
[x] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content
Added new endpoints that are now available to be requested in the cloud_services input variable:

context-based-restrictions
ntp

Fixed issue with following service, endpoint will now properly deploy in region:

container-registry

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

Merge actions for mergers

When merging, use a relevant conventional commit message that is based on the PR contents and any release notes provided by the PR author. The commit message determines whether a new version of the module is needed, and if so, which semver increment to use (major, minor, or patch).
Merge by using "Squash and merge".

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

Hi Todd, I see a few more hpcs endpoints to add. The current logic only allows creating the api one.

Also tagging missing

Cos Config endpoint is missing as well

support center

@vburckhardt the challenge I am seeing is that the terraform block only supports adding via CRN or "name", and right now the only one that has "name" was "ntp".
If we can query ibmcloud is endpoint-gateway-targets and see the service, that is typically where I've been getting either the CRN or the official "name". I can check if any of these show up.
I haven't found a way to add a VPE endpoint by simply knowning its https endpoint, unless I'm missing something?

@vburckhardt I think I found all of these, and their configuration CRNs, and also some extra that I've found:

for hs-crypto, I can set the name of the service to have a suffix? such as "hs-crypto-cert-mgr"?
we already had "tagging", it is called "global-search-tagging"
COS config is found, will add
support center is found, will add

I've also found the following which I can add:

containers-kubernetes
sos (pimconsole.sos.ibm.com is endpoint? I'm not sure what this is?)
messaging
vmware

Let me know if we do not want to add those.

/run pipeline

@vburckhardt you might notice that the PR test does not include all services, many are commented out. That is because I wanted the Upgrade test to run (the new services aren't available in main version). Once we get this PR released I will follow up with a test PR which will uncomment those services out, and at that point we will be testing them all.
I've already confirmed they are all working by running the every-mt-vpe example locally.

/run pipeline

/run pipeline

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


Docker snap doesn't work on ZFS

I'm facing the same issue mentioned here. Basically, on a ZFS system docker snap just doesn't work. The workaround is to modify the storage driver specified in /var/snap/docker/current/config/daemon.json to zfs. Ideally, this configuration should be part of snap's installation. If not at least it would be nice to have this info in the readme.

IMO, we could stop setting storage-driver in daemon.json, then docker will determinate the best one itself.
Not sure if there's any side-effect.

at install time sure, but will it be preserved on snap refreshes? I believe we want to continue to use storage-driver A on existing installs, even if storage-driver B has become the new best default.

IMO removing the setting is probably the best answer -- Docker itself will automatically choose the "best" one, preferring what already exists followed by https://github.com/moby/moby/blob/cba6f2d42698b1d15e031efa18a59843859f2200/daemon/graphdriver/driver_linux.go#L53

let's do this then.