RecyclerView Auto play Video

First thanks to have great library to play youtube videos in RecyclerView.
As I have seen that in RecyclerView example there is an option to cuevideo and when I changed it to loadVideo it start auto play but unfortunately it play first then stop it and immediately start second video(below in list).
So is there any option to not start second video if first video is playing/buffering ? Thanks !!

Hi, Android automatically stops a player when a new one starts playing. It's up to you to write code to make sure that loadVideo is called on one player only.

@PierfrancescoSoffritti  Thanks to reply.
In RecyclerView items, YoutubePlayer have one instance per item and for each item there are different states like Playing, Buffering etc.
So can you please elaborate how can we maintain states of recyclerView ViewHolder item's YoutubePlatyer that next item video will not play if current video is playing.
Thanks !!

That's not related to the library. You have to find a way to make sure that you call loadVideo only on one player.  I'm not going to write the code for you, I know about this as much as you do :)
good luck!

@girubhai - You can keep a variable in your ViewModel to check whether another video is playing.

how to do this in RecyclerView getLifeCycle().addObserver(); can anyone share the code

@qadeerhm92 RecyclerView doesn't have a lifecycle. You need to use your activity or fragment lifecycle. If you have more questions about this topic, please open a separate issue. Your problem has nothing to do with this issue.


Update NVivo11.pkg.recipe

removed .pkg from the identifier string:
com.github.nzmacgeek.nvivo11

Since there was a .pkg in the identifier string, a pkg was created instead of a folder. Once removed, it should be working properly. I have never done this before, so I hope it was correctly done. :)


MGMT: Support expiration policies for service definitions

Per earlier conversations, this task is about allowing a service definition to auto-expire (and be deleted) from the registry.
Things to consider:

Should expiration policies be designed as an object of RegisteredServiceExpirationPolicy with varying implementations, or should we simply stick to a date field?
Should expired services be deleted automatically, or should they be marked as disabled?
Notifications (email, sms) to send out to contacts if a service is about to expire within a configurable window?
Notifications (email, sms) to send out to contacts if a service is deleted/disabled?

My take is as follows:

RegisteredServiceExpirationPolicy probably is the better choice.
Be deleted, as part of the default policy implementation. Alternative policies may decide to do otherwise.
Yes. The "warning window" may be defined as part of the policy implementation
Yes.

Reflecting on this a bit more, I arrived at something like this:
{
  "@class" : "org.apereo.cas.services.RegexRegisteredService",
  "serviceId" : "^https://.+",
  "name" : "sample service",
  "id" : 100,
  "expirationPolicy": {
    "@class": "org.apereo.cas.services.DefaultRegisteredServiceExpirationPolicy",
    "deleteWhenExpired": true,
    "notifyWhenDeleted": false,
    "expirationDate": "2017-10-05"
  }
}

Notable differences from the original take:

Notifications (email, sms) to send out to contacts if a service is about to expire within a configurable window?

Ignored for now. Shall iterate later.

Couple of high-level comments:

Bit of a risky business, but I think I have managed to move the common functionality of ServicesManager implementations into a base class. This was need to ensure all implementation can process/delete/etc expired definitions, and share as much code as possible. All tests should pass.
Likewise, tests are consolidated to share as much as possible when dealing with ServicesManager.
The "expirationDate": "2017-10-05" above is set to also handle LocalDateTime to allow for exactness as much as possible.
On each retrieval operation of the ServicesManager, the resulting service is evaluated for expiry and then processed based on the policy if needed.
Obviously, all policies (similar to contacts) are entirely optional as far as their presence goes in the definition.
In order to avoid stale service definitions that are never retrieved the load() operation of the manager that also runs as a cron job is set to filter and process expired definitions, if any is found.
Notifications are handled via internal Spring events, rather than something "hardwired" into the ServicesManager. There is a listener that is on the lookout for CasRegisteredServiceExpiredEvent that is broadcasted when a service is expired and notifications are needed. The listener handles the submission of notifications in form of sms and email (assuming config is done to enable sms and email providers).
The properties of the service registry cas.serviceRegistry.xyz are extended to include settings for mail and sms that affect things like from/to/subject/cc/bcc, etc.

Still testing. Nothing is public yet, but if needed we can surely do a code review session to find weirdness and improve.

Bit of a risky business, but I think I have managed to move the common functionality of ServicesManager implementations into a base class. This was need to ensure all implementation can process/delete/etc expired definitions, and share as much code as possible. All tests should pass.

I was looking into doing this as well, or have DomainServicesManger extend DefaultServicesManger since so much of the code is exactly the same.  Another approach would be to pass a flag to DomainServicesManager that would only use the "default" domain and it should function the same as the current DefaultServicesManager.

On each retrieval operation of the ServicesManager, the resulting service is evaluated for expiry and then processed based on the policy if needed.

In order to avoid stale service definitions that are never retrieved the load() operation of the manager that also runs as a cron job is set to filter and process expired definitions, if any is found.

Having both seems a bit redundant to me.  Since expiration is set to a date only, the number of expired services will only change after 12:00am local time.  I think checking for expired services only needs to happen during on load() for a possible change, and a cron job that runs a 12:01am everyday.
Looking forward to seeing it.

Since expiration is set to a date only, the number of expired services will only change after 12:00am local time.

Not quite. The expiration field supports both dates as well as both date/times. IOW there is LocalDate and there is LocalDateTime. We could pick one, but I thinking keeping hours and minutes, etc would offer a better degree of exactness at no or very low cost. This means that if you set a service to expire on Oct 4 8am and the cron job ran on 7am, you'd have to wait about a day for an expired service to remove. Avoiding this would require one to invent a time machine and carefully tune the schedule, involving the adopter in knowing about much unnecessary detail :)
Still working on tests. I'll post back when things are near ready with docs, etc.

This has landed in master.
Initial docs:
https://apereo.github.io/cas/development/installation/Configuring-Service-Expiration-Policy.html
Supporting JSON to represent MGMT app support:
{
  "@class" : "org.apereo.cas.services.RegexRegisteredService",
  "serviceId" : "^https://.+",
  "name" : "sample service",
  "id" : 100,
  "expirationPolicy": {
    "@class": "org.apereo.cas.services.DefaultRegisteredServiceExpirationPolicy",
    "deleteWhenExpired": true,
    "notifyWhenDeleted": false,
    "expirationDate": "2017-10-05"
  }
}

I have pushed mgmt-expiration branch up to unicon with a new tab to set this information.
Ran into some issues:

Datepicker currently only supports picking dates and Timestamps are not yet part of its functionality.  That is why the field is text input only
If the date entered is not a format that will parse in LocalDateTime the back end seems to go into a loop.
If a date before now is entered the backend seems to loop and not return correctly.

Some of this I can probably take of in the app, but users can edit the field by other means as well.

Yikes. Let me understand this: is the DatePicker something CAS uses as a separate library? or it's part of the angular stack? If it's the former, could we remove and replace with something offered by the framework? I find it odd that a framework offering a date-picker gadget does not support times :)

It is part of the Angular Material UI framework.  https://material.angular.io/components/datepicker/overview
It is slated to be added, just has not made it in there just yet.  Datepicker was added not that long ago.

Got it. I think what ships is acceptable. Once support for time is added, we'll extend the same feature and those who use the mgmt app can do one of 3 things: wait, stick with dates for now and build support for time :)
TLGM.

Do you want to leave it as an open text input or switch it back to a datepicker widget?  The default MatNativeDateModule returns dates in this format "2017-10-12T07:00:00.000Z".  This blows up the AbstractServicesManager when it tries to parse it with LocalDatetime, and puts the server into an infinite loop.  We are able to override the date module provider with our own implementations and formats, but I will need to figure that out.

Two suggestions:

Open text input is fine; if would be good if we could a placeholder tag that would show the accepted syntax for dates and times.
Sounds like the returned format is one of ZonedDateTime right? This AbstractServicesManager should be able to accept that as well.

Made sure AbstractServicesManager is able to support ZonedDateTime (i.e  "2017-10-12T07:00:00.000Z"). Merged. Will continue to test.


About us Section RESPONSIVENESS

PROBLEM:
About us section is not responsive and  have problems in it

My Solution:
Create Wireframe first
Apply it on about us section
Customise images
Improve CSS properties used
@khushi-joshi-05  Please assign it to me under label GSSoC'24.
Thank you

https://github.com/khushi-joshi-05/Food-ordering-website/pull/362

@khushi-joshi-05

I would love to apply my skills to it to make it responsive ,please assign this issue to me
@khushi-joshi-05


DF2Kmultiscale+OST_sub

Nice job! I have some questions about DF2Kmultiscale+OST_sub dataset.

Do you extract sub-image from OST dataset?
Do you downsample OST for multiscale?

for the 1st question, there are many images' resolution of OST smaller than the crop size 400, how do you deal with these small images?

I also met the same problem. Could you tell me if you have solved this problem？


Please add NetFoundry logo to Cloud native Networking landscape

Creating an issues per email from Chris to add the logo:
On Wed, Apr 29, 2020 at 10:08 AM Chris Aniszczyk<EMAIL_ADDRESS>wrote:
Yes, just please send a PR :)
On Wed, Apr 29, 2020 at 12:05 PM Sreelakshmi Sarva<EMAIL_ADDRESS>wrote:
Hello Taylor  NetFoundry has been a silver member of CNCF with our opensource project for cloud native networking https://ziti.devCan you please let us know whats the procedure to add ourselves to the CNCF landscape page? I know we provided a high resolution logo when we were onboarded, I assumed that logo would reflect on landscape page automatically but that doesn't seem to be the case.
Don't create an issue
If you see an error in the cards or missing ones, please don't create an issue here. Instead, edit landscape.yml (you can even do it via the GitHub web interface) and open a pull request. Then, review the preview staging server that's posted to your pull request and add a comment if your new or updated card looks correct and is ready to merge. Before going forward, please carefully review the sections of the Readme covering new entries, corrections, and logos: https://github.com/cncf/landscape/blob/master/README.md.

please create a PR


Azure CLI implementation for Failover Groups (AutoDR)

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

[ ] I adhere to the Command Guidelines.

Commandlets:
(env) C:\azure-cli>az sql failover-group -h
Group
az sql failover-group: Manage SQL Failover Groups.
Commands:
create     : Creates a failover group.
delete     : Deletes a failover group.
list       : Lists the failover groups in a server.
set-primary: Set the primary of the failover group by failing over all databases from the
current primary server.
show       : Gets a failover group.
update     : Updates the failover group.
(env) C:\azure-cli>az sql failover-group create -h
Command
az sql failover-group create: Creates a failover group.
Arguments
--name -n           [Required]: The name of the Failover Group.
--partner-server    [Required]: The name of the partner server of a Failover Group.
--resource-group -g [Required]: Name of resource group. You can configure the default group
using az configure --defaults group=<name>.
--server -s         [Required]: Name of the Azure SQL server.
--add-db                      : List of databases to add to Failover Group.
--failover-policy             : The failover policy of the Failover Group.  Allowed values:
Automatic, Manual.  Default: Automatic.
--grace-period                : Interval in hours before automatic failover is initiated if an
outage occurs on the primary server. This indicates that Azure
SQL Database will not initiate automatic failover before the
grace period expires. Please note that failover operation with
AllowDataLoss option might cause data loss due to the nature of
asynchronous synchronization.  Default: 1.
--partner-resource-group      : The name of the resource group of the partner server.
(env) C:\azure-cli>az sql failover-group delete -h
Command
az sql failover-group delete: Deletes a failover group.
Arguments
--name -n           [Required]: The name of the Failover Group.
--resource-group -g [Required]: Name of resource group. You can configure the default group
using az configure --defaults group=<name>.
--server -s         [Required]: Name of the Azure SQL server.
(env) C:\azure-cli>az sql failover-group set-primary -h
Command
az sql failover-group set-primary: Set the primary of the failover group by failing over all
databases from the current primary server.
Arguments
--name -n           [Required]: The name of the Failover Group.
--resource-group -g [Required]: Name of resource group. You can configure the default group
using az configure --defaults group=<name>.
--server -s         [Required]: Name of the Azure SQL server.
--allow-data-loss
(env) C:\azure-cli>az sql failover-group update -h
Command
az sql failover-group update: Updates the failover group.
Arguments
--name -n           [Required]: The name of the Failover Group.
--resource-group -g [Required]: Name of resource group. You can configure the default group
using az configure --defaults group=<name>.
--server -s         [Required]: Name of the Azure SQL server.
--add-db                      : List of databases to add to Failover Group.
--failover-policy             : The failover policy of the Failover Group.  Allowed values:
Automatic, Manual.
--grace-period                : Interval in hours before automatic failover is initiated if an
outage occurs on the primary server. This indicates that Azure
SQL Database will not initiate automatic failover before the
grace period expires. Please note that failover operation with
AllowDataLoss option might cause data loss due to the nature of
asynchronous synchronization.
--remove-db                   : List of databases to remove from Failover Group.

@jaredmoo can you please review this PR?

This PR contains too many noises. Please rebase and squash the commits.

@maboja-msft and @jaredmoo what's the status of this PR?


Documentation: Comment all of the things!

The code for this project has changed dramatically since I first pushed it to Github last week.
But it's also not 100% clear on what does what (I'm looking at you script.js)
This is a bigger issue that may need to be broken into chunks.
I'd like to see commenting around functions outlining what they do, what does what to (hopefully) avoid duplicate effort and merge errors in the future.

I can start some documentation why not


guile-lib: 0.2.7 -> 0.2.8

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/guile-lib/versions.
meta.description for guile-lib is: A collection of useful Guile Scheme modules
meta.homepage for guile-lib is: https://www.nongnu.org/guile-lib/
Updates performed

Version update

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.2.8 with grep in /nix/store/r03nyb7mlxz81fbvfqaibb0mc7725nx5-guile-lib-0.2.8
found 0.2.8 in filename of file in /nix/store/r03nyb7mlxz81fbvfqaibb0mc7725nx5-guile-lib-0.2.8

Rebuild report (if merged into master) (click to expand)

6 total rebuild path(s)

6 package rebuild(s)

First fifty rebuilds by attrpath
guile-lib
guile-reader
guix
gwrap
haunt
skribilo

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/r03nyb7mlxz81fbvfqaibb0mc7725nx5-guile-lib-0.2.8 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A guile-lib https://github.com/r-ryantm/nixpkgs/archive/632c13accac134affc28f0111f0ae0164d0979fa.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/632c13accac134affc28f0111f0ae0164d0979fa#guile-lib

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/r03nyb7mlxz81fbvfqaibb0mc7725nx5-guile-lib-0.2.8
ls -la /nix/store/r03nyb7mlxz81fbvfqaibb0mc7725nx5-guile-lib-0.2.8/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

6 packages built:

guile-lib
guile-reader
guix
gwrap
haunt
skribilo

Maintainer pings
cc @vyp @foo-dogsquared for testing.

@ofborg test guix


Develop enumerations for the field: Access Limitations

Develop enumerations for the field: Access Limitations
To Do:

State requirements
Assess portal needs
Update the spreadsheet with this information for this field, including enumerated maps
Make recommendations for this field

using DUO but may want to narrow it down to a list. Depends on #124


The app works locally, but not after deployment

Thank you for putting this project out publicly. I'm also glad to find the api-app pattern on the azure platform. Your code worked exactly as expected locally (I'm running ubuntu 14) but not after deployment. I did not modify a line of code, just deployed exactly as it was installed on my development machine. Loading the app URL in a browser results in a failed GET request (error code 500). The streaming logs are no more helpful, merely stating that there was a 500 server error.
What information would help with this inquiry?
Thank you.

The cause of my issues was improper deployment. I configured my git repository (hosted on bitbucket) to trigger redeployment of the app with each push to master branch. However, instead of deploying to the APIappHost, I incorrectly configured the bitbucket integration to the GatewayHost.


Selected status of the select element is not set after selected option is removed

Hello,
I'm not sure if this is a bug or not but I just found about this behavior in my application. Unfortunately it's legacy application that is rendered on server and all the Vue attributes are attached via jQuery in onload event. This is the reason why I cannot render whole select element by Vue repeater.
When one Vue computed variable removes active selectbox option from another select, this other select will not trigger changed event and second computed variable will not get recalculated.
I replicated the behavior in following jsFidle http://jsfiddle.net/wdgfnn0h
When you try to switch the second select box you cannot because there is no other option. Switch the first one and second checkbox has second option. When you use it, the watcher will enable checkbox on the right. However when you switch the first select box again the option will get removed from the second select box correctly and selection is changed. Unfortunatelly the "second" model observer is not triggered and checkbox stays enabled which is incorrect. Is there some mistaken in how I use Vue or is this a bug?

The watcher enables the right dropdown, because the second variable has changed.
If you switch the first dropdown, the second variable will not be changed. Hence, the watcher will not be triggered correctly.
I suggest you to reset the second variable when the first dropdown changes.
http://jsfiddle.net/pespantelis/wdgfnn0h/1/

Thank you for the example, I will try to implement it similarly. However I'm not sure why the second is not changed when first dropdown is used. The relevant selected option element was removed from the dropdown and model change should be triggered imho as now the DOM and model is out of sync.

I fixed it by triggering DOM change event on the dropdowns that have the options removed. It works now. Each time expression that removes the option is recalculated I fire the change event, the Vue get notified about the change and if some relevant property needs to be updated, its recalculation is triggered. It would be nice if this would happen automatically (it would be handled by framework itself) but I will not pressure anyone and close this issue.
Working example is here if anyone is interested or is trying to solve something similar:
http://jsfiddle.net/8s3s8sk8/


Convert from dicty-react-components

dicty-react-components is deprecated. Need to convert to the following:
https://github.com/dictyBase/dicty-components-header-footer
https://github.com/dictyBase/dicty-components-navbar

New header, footer and navbar have been merged into develop. Leaving this open since I noticed some pages still use dicty-react-components for panels, which looks like it has a new version at https://github.com/dictyBase/dicty-components-panel

Components to update:

[ ] Contact
[ ] MyDsc
[ ] form/PaymentMethod
[ ] form/ShippingAdditional
[ ] form/ShippingMethod
[ ] form/Submit
[ ] form/User

All panels have been converted in refactor/move-to-styled-components


Support new PHP 7.1 Syntax

The following list of new syntax features from http://php.net/manual/en/migration71.new-features.php should be handled correctly by Phan.
<?php

// Nullable
function f1(): ?string {
    return 'string';
}
$v = f1();
function f2(): ?string {
    return null;
}
$v = f1();
function f3(?string $name) {}
f3(null);
f3('string');

// Void Functions
function swap() : void {}

// Symmetric Array Destructuring
$data = [
    [1, 'Tom'],
    [2, 'Fred'],
];
list($id1, $name1) = $data[0];
[$id1, $name1] = $data[0];
foreach ($data as list($id, $name)) { }
foreach ($data as [$id, $name]) { }

// Class Constant Visibility
class C1
{
    const PUBLIC_CONST_A = 1;
    public const PUBLIC_CONST_B = 2;
    protected const PROTECTED_CONST = 3;
    private const PRIVATE_CONST = 4;
}

// Iterable Pseudo Type
function f4(iterable $iter) {
    foreach ($iter as $val) {}
}
f4([1, 2, 3]);

// Multi catch exception handling
class E1 extends Exception {}
class E2 extends Exception {}
try {
} catch (E1 | E2 $e) {
}

// Support for keys in list
$data = [
    ["id" => 1, "name" => 'Tom'],
    ["id" => 2, "name" => 'Fred'],
];
list("id" => $id1, "name" => $name1) = $data[0];
["id" => $id1, "name" => $name1] = $data[0];
foreach ($data as list("id" => $id, "name" => $name)) {
}
foreach ($data as ["id" => $id, "name" => $name]) {
}

// Support for negative string offsets
var_dump("abcdef"[-2]);
var_dump(strpos("aabbcc", "b", -3));

What's left to do on the 7.1 branch?
Also, what's the planned difference between Foo|null and ?Foo in terms of where violations would be emitted? (E.g. are there config settings which would change that?)

I've decomposed this issue into sub-tickets related to the new 7.1 milestone and the 7.1 project.
Hopefully this makes it easier to track what's left to do. I'll be cleaning up those tickets to better reflect the state of the 7.1 branch shortly.


The audio won't stop

If you pull the disc out of the jukebox, or break the jukebox, then the audio does not stop.
There is no logs in the console.
Info about server:
Purpur 1.19.2
pv-addon-discs 1.0.2 (tried 1.0.1)
pv-addon-lavaplayer-lib 1.0.4 (tried 1.0.3)
PlasmoVoice-Paper 2.0.4
Default config for all plugins, core almost default.

Can you test it with pure default Purpur and also Paper?

Can you test it with pure default Purpur and also Paper?

I installed Paper 1.19.2 and deleted all plugins except ProtocolLib (616), PalsmoVoice, pv-addon-discs, and pv-addon-lavaplayer-lib. However, I am still experiencing the same problem. I don't think there's a need to test Purpur since it appears to have the same issue.

This happened because in 1.19.4 the API related to Jukebox changed. The plugin is updated to use the latest API. You can either use the previous version of the plugin or use the latest version of Minecraft.

Turns out this issue is also present in 1.19.4. No idea when and why it happened, and why there wasn't such an issue before, but I will release a fix soon. Still not sure if it will work on 1.19.2 though

Fixed in 1.0.3 https://modrinth.com/plugin/pv-addon-discs/version/1.0.3

@KPidS В 1.0.4 проблема появилась, когда два человека одновременно достали пластинку, очень нужен фикс ...

Или возможность заблокировать видео/стримы продолжительностью больше часа


Replace TSLint with ESLint in ExtensionPack Suggestion on Welcome

First, thanks for making VSCode soooo awesome! Wouldn't be as productive as I am without it 💙
Problem:
Currently, VSCode suggests installing the TSLint extension to have support for TypeScript.
However, TSLint is supposedly going to be deprecated sometime this year.

Proposed Solution:
Change the suggested extension to ESLint instead. This way, we're providing a solution to the community that is future-proof (at least for the foreseeable future) 😄
I'd be happy to open a PR if you were to accept this proposed solution.
(it looks like this would be a matter of replacing the extension id here: line 148)

Removing it sounds good. We already stopped recommending tslint for general ts users: #81515
Probably just remove the whole typescript section for now. Setting up eslint for TypeScript is not simple enough at the moment to show on the welcome page in my opinion

Setting up eslint for TypeScript is not simple enough at the moment to show on the welcome page in my opinion

Agree with you there.

Can you submit a PR that does that?

Definitely!

@mjbvz I noticed you added the "help wanted". I'm planning to submit a PR. Is that a more appropriate label to indicate this issue is in progress or taken?


Fix#34 Bug with spread operator

Fix bug with spread operator in props
Add test for this

Codecov Report

Merging #45 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #45      +/-   ##
==========================================
+ Coverage   99.48%   99.48%   +<.01%
==========================================
  Files           8        8
  Lines         193      195       +2
  Branches       22       23       +1
==========================================
+ Hits          192      194       +2
  Misses          1        1

Impacted Files
Coverage Δ

src/PropTypesCompletionItemProvider.ts
98.11% <100%> (+0.07%)
: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 09b84d3...becb562. Read the comment docs.


Add basic deserializer

Having the Deserializer trait provide allocation capabilities by default can mislead users and make them think that they need std to do any deserialization. Providing a BasicDeserializer type that just implements Fallible would help nudge them in the right direction.

Added the Infallible type in 0.4.2.


Add .gitignore File

I observe that the node_modules are present in repository. So @Its-Aman-Yadav please assign me the task under the label of GSSoC to add ".gitignore" file to remove node_modules from the Repository to make Project and Repository more professional.

Yeah sure @Helpinlakkad

I would like to work on this issue. Please assign me this issue.

Thanks for assigning the task to me @Its-Aman-Yadav. Task Completed successfully.
'.gitignore' file added and node_modules are removed successfully.

I would like to work on this issue. Could you assign me this @Its-Aman-Yadav ?


Drops the EIP # from param names

This PR simply just removes the EIP references to the param names.
I believe the EIP2200 param names came from this Geth constant list. It comprises all historical gas prices for each opcode, and that's probably why they use EIP numbers to identify the new values.
In our context, the use of the EIP number in the param name would prevent the lookup of gas prices for each fork, as inevitably a further gas repricing change would get a different EIP number.

This was introduced by @s1na to differentiate from the Constantinople parameter names, since for the Constantinople HF a somewhat different parameter set was used, this is to avoid confusion.
I agree that there might be a better naming scheme than using the original EIP name as extension. Nevertheless post-introduction parameter name changes are problematic (at least come to some greater expense), since this requires adoptions on all other places (e.g. the VM) where the names are used and such a major release on the Common side is needed.
Since there is a reasoning why this has been named in the current way I would tend to not introduce such a change and therefore close here, think it is not worth the effort in this case.

That is totally fair! :-)


Instruct to use .bash_profile instead of .mersdk.profile

There is no need to have a SDK specific initialisation file, as we can utilize the environment variable for SDK detection. JB#56751

There is no need to have a SDK specific initialisation file, as we can utilize the environment variable for SDK detection. JB#56751
Before this can/should be merged hadk should be updated.

Personally I don't like the idea polluting  SDK variables into my bashrc, those should go to a separate env or config file.

Before this can/should be merged hadk should be updated.

No, it doesn't have to be. Even if this documentation suggests to use .bashrc, the SDK still reads also .mersdk.profile, so HADK instructions keep on working. That being said, I agree, HADK should be changed as well, that just doesn't have to happen before this can be merged.

@Thaodan you can also still use [[ $SAILFISH_SDK ]] && . /path/to/whatever.profile in your .bashrc (as I do)

That doesn't really solve the underlying issue but working around it.

Turns out my .profile, .bashrc etc. files did not quite have the content I thought they did, which caused quite a lot of confusion for me. When entering the the chroot, the bash indeed is login shell, and reads .bash_profile. The second bash it executes is not a login shell, but it will still read .bash_profile because that's set up in mer-bash-setup.

Rebased

Updated after changes on sdk side, polished. Bash completion is going to be loaded automatically.

rebased once again


SpherePts

I just came across this nice package.  I am the author of the RBFSphere package and wanted to let you know that I moved a lot of the functionality of the package to a GitHub repository called SpherePts: https://github.com/gradywright/spherepts
I'm looking forward to trying out your package.

Thanks Grady! Your package is very helpful for me.
Minjie
On Thursday, July 14, 2016, Grady Wright<EMAIL_ADDRESS>wrote:

I just came across this nice package. I am the author of the RBFSphere
package and wanted to let you know that I moved a lot of the functionality
of the package to a GitHub repository called SpherePts:
https://github.com/gradywright/spherepts
I'm looking forward to trying out your package.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/minjay/NeedMat/issues/1, or mute the thread
https://github.com/notifications/unsubscribe-auth/AFVT62RLlIx0cKAQcvdqlhogtcFyFp9pks5qVr7OgaJpZM4JM7dn
.

--
The best thing about being a statistician is that you get to play in
everyone's backyard.


Can you make this to send to multiple numbers?

I want to use it for marketing, If you can please make a video how to use it (where I put the numbers, message, username, cookie, sid and what is the command to run it. (I'm new on this python, but your project sound very interesting) I will wait your answer.  You can contact me directly at<EMAIL_ADDRESS>Thank you so much

You can send to multiple messages. Just create a for loop that goes through each number and send to them.


Page navigation bar

As a user I want to have a page navigation bar, so I will be able to navigate between blocks of a StreetCode
Description
This block will allow the user to navigate through the blocks on a page
Acceptance Criteria

Navigation bar is visible while a user is on a 1 or 2nd screens of a Streetcode (Mentioned by designer - till 1600px)
After 2 screens arrow button appears and the navigation bar hides.

Click on an arrow button opens the full navigation bar.
If full navigation bar is already displayed - click on an arrow button hides navigation bar.
Quantity of items in the navigation bar matches the number of available blocks in StreetCode
Navigation bar indicates on which block is user located, item which represents an active block is bigger than others. The dashed line will change to a solid red line to the nearest elements
Hover over an element with a number of a block opens a popover in which block's title is displayed.

Click on an item with a number navigates user to the selected block

Epic link
https://github.com/ita-social-projects/StreetCode/issues/19

Questions

should the arrow change its direction?
should we hide a navigation bar automatically during scroll?


Update Composer dependencies (2022-01-26-00-04)

Visual regression test passed!
View the visual regression test report


Add generator command

Add translations generator which creates a locales migration. It should also scaffold translations migrations for specified Eloquent models.
php artisan translator:migration articles

This would create a migration with relations pre-filled that developers can populate with their translatable attributes.

Closing this in favor of @laravel's make migration command.


can't install windows terminal in windows 10 pro N version 21H2 (OS Build 19044.1889)

Describe the bug:
When I put command to install windows terminal on windows 10 pro N version 21H2 (OS Build 19044.1889), Windows PS gives me error
I'm using Windows PowerShell 5.1 and I'm trying on ps 7.2.6 too, running as administrator
and run the command irm christitus.com/win | iex
but still error
Please help me
Screenshot

Dupe of #347 Will fix in next update


Prepare custom FBX scenes for complex examples

This is tracking issue for myself or anyone with access to closed source software which uses FBX SDK for exporting, such as:

Cinema4D S26
Rhinoceros 7
Autodesk Maya 2022
Autodesk 3ds Max 2022

(Blender uses reverse engieered exporter which may cause issues)
I don't really want to vendor different scenes from the internet which may cause issues with licensing which are usually unclear or scenes on various websites are vendored from different ones without any licensing info.

NOTE: Each scene must be <100mb and exported as FBX 7.4 (bin, not ASCII).

Example scenes:

[ ] Isometric room
[ ] Old vehicle (like multicar/fiat 125p)
[ ] Simple biome (textured/low poly)
[ ] Simple viking village (low poly, entities)
[ ] Post-apo village/city (like Jackson or part of Boston/Seattle but low poly/voxel)

Here is a set of things that I'd like to test with example scenes:

Variety of UnitScaleFactor and coordinate systems
Deeply nested scene trees that stress-tests the validity of the calculation of transform
Scene with N-gons to test the triangulation algorithm
PBR material matrix is the style of this video link
Classical Lambert/Phong shader material matrix as well
Odd objects like light sources and cameras
Animations here is a potential good test scene


Add DefaultQueryFilters

Objective
Some usecases in the ecosystems are blocked by the inability to stop bevy internals and third party plugins from touching their entities. However the specifics of a general purpose entity disabling system are controversial and further complicated by hierarchies. We can partially unblock these usecases with an opt-in approach: default query filters.
Solution

Introduce DefaultQueryFilters, these filters are automatically applied to queries that don't otherwise mention the filtered component.
End users and third party plugins can register default filters and are responsible for handling entities they have hidden this way.
Extra features can be left for after user feedback
The default value could later include official ways to hide entities

Changelog

Add DefaultQueryFilters

Two things you should probably do:

Add a way to bypass default filters.
Change .retain. Make it so it doesn't remove components that are filtered as Without & add another variant that bypasses that.

Add a way to bypass default filters.

This seems reasonable, yet it might also be problematic for things that get added to the list in the future. It's hard to anticipiate all the uses for this before people have a chance to use it. It's hard to say if a universal bypass makes sense or if we'd be better off with some alternative approach like assigning a group to each filter, and allowing groups to be bypassed. Or perhaps bypassing default filters won't even be needed in practice. It might be better to leave it until people report running into issues, or until we start including default features and know we need a way to bypass them collectively.

Change .retain. Make it so it doesn't remove components that are filtered as Without & add another variant that bypasses that.

This behavior feels a bit implicit, but I think creating a list of components retain shouldn't touch could make a lot of sense, it would also be a lot easier to explain and reason about for users. There might even be uses that do want to bypass retain but not be filtered out, or the other way around. But it should probably be in a separate PR. The bypass variant might also have the same issues as the point above.

This behavior feels a bit implicit, but I think creating a list of components retain shouldn't touch could make a lot of sense

At the very least it should be the same list. It shouldn't be a different one. I still think it would be a good idea to include this now anyway even if you don't want to add bypasses yet because introducing it later will be a breaking change & using it without default filters applied will surprise users.

At the very least it should be the same list.

I'm thinking more along the lines: Most users wouldn't manually add default filters, we'll probably want built-in abstractions on top in a future release. Meaning they'd probably be configured by plugins (something like a DisabledPlugin<T> or a HidePlugin<T>), and at this point the list of plugins serves as the list, which this list and a "retain filters" list could then be derived from.
Tho I've never actually used retain so it's a bit hard for me to comment on how it should behave.

The code and documentation are very clean and impressive ,but current impl is unsound. The following code will panic. To make it work correctly, we should only allow setting table component filter.
    let mut world = World::new();
    world.spawn((Table(1), Sparse(1)));
    world.spawn(Table(2));

    world.set_default_with_filter::<Sparse>();

    let mut query = QueryState::<&Table>::new(&mut world);
    // panic!
    assert_eq!(1, query.iter(&world).count());

IMO ,global query configuration will greatly increase the coupling between different parts of the code. If we decide to land it, we should mark the relevant APIs as Unsafe .
Additionally, considering that it will likely be widely used by third-party libraries in the foreseeable future, the configuration of one plugin may easily disrupt the usage of another plugin, even if they appear unrelated.This will undoubtedly increase the maintenance cost for third parts author as they must consider compatibility with other unofficial plugins.
I personally lean towards implementing it after query as entities landed. it will unlock query-level custom settings, which could have more granular control, However, considering the strong demand for this feature within the community and the current implementation's adequacy,I'll defer my opinion to those with a more comprehensive understanding to decide.

but current impl is unsound

Looking at the behavior it doesn't look like it's unsound in the usual Rust way, but this is definitely a potential footgun since it just straight up ignores the added filter without even giving you a warning.

To make it work correctly, we should only allow setting table component filter.

This does seem like the right call, in theory we could fix the filtering for sparse components, but setting a default filter for a sparse component would be very expensive and doesn't seem like something we should allow.
@alice-i-cecile what is your opinion on this? And if we do block it, how should we let the user know, call a warn! and then ignore the filter?

IMO ,global query configuration will greatly increase the coupling between different parts of the code. If we decide to land it, we should mark the relevant APIs as Unsafe .

I don't think this matches what should be considered unsafe in Rust. As long as no memory safety invariants are introduced the code should be safe, even if you can use it to create logic errors.

Additionally, considering that it will likely be widely used by third-party libraries in the foreseeable future, the configuration of one plugin may easily disrupt the usage of another plugin, even if they appear unrelated.This will undoubtedly increase the maintenance cost for third parts author as they must consider compatibility with other unofficial plugins.

This shouldn't be a major problem as long as you don't use any libraries that abuse this feature, you would specifically need to have two systems adding a filtered component at the same time (between command queue flushes) to see any issues. The chance of such issues happening would of course be greatly reduced once we build a higher level disabling API on top of this feature.

it just straight up ignores the added filter without even giving you a warning.

However those filters were used to ensure that the query doesn't conflict with other system parameters, ignoring them would mean that now it can conflict with them.
I haven't actually tested this, but consider a situation like this:

a default filter with With<Sparse>
a query Query<&mut Dense>, which gets the default filter;

access-wise this is equivalent to Query<&mut Dense, With<Sparse>>
in practice it actually fetches the same entities as Query<&mut Dense>

another query Query<&mut Dense, Without<Sparse>>

in theory this does not conflict with the previous query because the two filters do no overlap
in practice however the previous query also fetches the &mut Dense fetched by this query, so they do overlap, hence this is unsound

Oh, yes, that does indeed make it unsound. Either way we definitely need to fix it by either 1. preventing sparse filters from being added to the list; or 2. actually filtering them. Even if you can't create UB with it, the current behavior would be extremely confusing :thinking:

This does seem like the right call, in theory we could fix the filtering for sparse components, but setting a default filter for a sparse component would be very expensive and doesn't seem like something we should allow.

It's not easy to fix sparse components without a performance drop. IIRC  to address it to support sparse compoent safely, we must introduce a branch in the hot path, which could significantly impact our performance.

I don't think this matches what should be considered unsafe in Rust. As long as no memory safety invariants are introduced the code should be safe, even if you can use it to create logic errors.

It may not be a memory issue, but the impact is too extensive and could greatly increase the vulnerability of the code. I strongly recommend marking it as unsafe so that people who use it should fully understand the implications of their action.
Additionally, set_default_with_filter only affects queries created before it's set. As we widely use cached queries in the system, it does not affect cached-queries after schedule initialization, even if we set it later. This means if we set it before system initialization, the influence will be global and cannot be canceled at runtime. If we set it at runtime to build a query, why not use QueryBuilder to create what we want instead?

systemA(world:&mut World){
    world.set_default_with_filter::<A>();
}

SystemB(query:Query<&B>){

    // The system query will not be affected by set_default_with_filter
    // because its query state was created during schedule initialization.
    --------------------
}

App.add_systems(Update ,(SystemA,SystemB).chain());

This shouldn't be a major problem as long as you don't use any libraries that abuse this feature, you would specifically need to have two systems adding a filtered component at the same time (between command queue flushes) to see any issues. The chance of such issues happening would of course be greatly reduced once we build a higher level disabling API on top of this feature.

Note that while restricting filters to dense components would fix this issue, it would prevent future optimizations to sparse only queries (e.g. Query<&Sparse> could be optimized to iterate over only the relative sparse set instead of iterating the various archetypes first). This is a tradeoff between what you can statically assume at compile time for optimizations and what you want to make dynamic.

From exploring this as the only viable alternative to entity disabling we've discovered:

Unsoundness from the limitations of current ECS internals
Flaws with the approach before in #ecs-dev

I think this should be enough conclusive motivation to push forward with the original entity disabling PR #12928 which was simpler and didn't have these problems. Most of the issues brought up with entity disabling were to do with poorly understood/conveyed semantics which is mostly down to naming and an issue that should be solved with docs rather than a completely different feature.
@NiseVoid @alice-i-cecile @JoJoJet

If we limit the components you can register to ones with table storage, the unsoundness would be solved, and the only extra issue this approach introduces is the ordering (adding filters after queries are built), which can be solved once we have some way to access query caches and rebuild them (like Queries as Entities). The other mentioned issues (spare optimization and sander's comment on discord) already exist on the Disabled PR.
I think comparing the PRs as different solutions is weird, the Disabled PR relies on this behavior, it's just hardcoded into QueryState there, this PR pulls the behavior out into a reusable form. The goal being to allow third-party crates to experiment rather than trying to get first-party entity disabling merged entirely based off speculation.

If we limit the components you can register to ones with table storage, the unsoundness would be solved

Note that this fix still leaves the possibility for future unsoundness if any new optimizations are done on WorldQuery. This essentially ties the unsafe internal optimizations of WorldQuery with default query filters.

and the only extra issue this approach introduces is the ordering (adding filters after queries are built), which can be solved once we have some way to access query caches and rebuild them (like Queries as Entities)

Will this work with manual QueryState/SystemState? For example if are stored in a Local?

Note that this fix still leaves the possibility for future unsoundness if any new optimizations are done on WorldQuery. This essentially ties the unsafe internal optimizations of WorldQuery with default query filters.

I think those optimizations would all touch QueryState, and these filters are also applied there. This unsound behavior could also probably be caused trough other means, since it's ultimately caused by some odd behavior in QueryState and the coupling of filters and the rules used to avoid conflicting queries.

Will this work with manual QueryState/SystemState? For example if are stored in a Local?

I think that ultimately depends on the implementation, but considering updating caches is necessary for a few prerequisites of relations I'd assume that will work just fine, unless it's a non-cached query, in which case we could just have it always fetch the current filters

I think this should be enough conclusive motivation to push forward with the original entity disabling PR #12928 which was simpler and didn't have these problems.

I would note that PR triggered the creation of a (draft) RFC at https://github.com/bevyengine/rfcs/pull/81. Given the back-and-forth discussion and open questions by @mockersf in https://github.com/bevyengine/bevy/pull/12928#issuecomment-2054175843, it does seem desirable to push that RFC forward first, get it signed off, and then get #12928 into a mergeable state.

I think with @SkiFire13's fix (#14615) it should be possible to fix the sparse-related problems. I have updated the PR and added a test for it and it seems to work as one would expect. I have somehow never been able to reproduce @re0312's panic, but it also completely ignored sparse filters previously, which caused unsound behavior as queries that got detected as not overlapping could alias mutable references.

After discussion with @maniwani, we have approval from two SME-ECS: them and myself.
As a follow-up, we should add a first-party Disabled marker component for ecosystem coordination purposes, and include a default default query filter.

I'm going to raise a concern I've already mentioned on discord. If we have a Disabled marker it is easy to define what is considered erroneous for that. Eg. mutating an entity while it's disabled. It's also easy for authors to handle the addition & removal of Disabled via hooks & observers. This is not the case for default filters. Default filters will have completely different semantics depending on the author & there is no way for authors to handle the addition & removal of all filters from other authors. It would create users needing to request plugin authors for compatibility hooks for other plugins.

@NiseVoid I know you've been chewing on designs for this, what's the plan for this work? My current understanding is:

Ship something shaped broadly like this PR, but make it fully pub(crate)
Add a trivial Disabled component, and add it to DefaultQueryFilters via a plugin.
Figure out how to make it play nicer with hierarchies.
Swap OnAdd and friends to trigger when entities are disabled.

Is that correct? What needs to be done to this PR to get step 1 above mergeable?

@NiseVoid I know you've been chewing on designs for this, what's the plan for this work? My current understanding is:

Ship something shaped broadly like this PR, but make it fully pub(crate)
Add a trivial Disabled component, and add it to DefaultQueryFilters via a plugin.
Figure out how to make it play nicer with hierarchies.
Swap OnAdd and friends to trigger when entities are disabled.

Is that correct? What needs to be done to this PR to get step 1 above mergeable?

Yes, this is correct. For docs and lint reasons making it pub(crate) in this PR might be difficult (doc tests would fail to compile and all of the code would get marked dead), but I have some changes that should generally prevent the issues @iiYese mentioned. Mainly you can only set one filter "per concept" (so entity disabling gets 1 filter, if we later add prefabs we could add one there too). Once we add Disabled, if we're okay with that living in bevy_ecs we can make the setter for the disabled component id pub(crate), and only expose a way to init_component::<Disabled>() and set that ComponentId as the filter.

Sounds good. Feel free to add expect(dead_code) to get CI to pass for now :)

@alice-i-cecile Where do you think docs for entity disabling and other similar features should live? Currently there's some docs and a doc test on DefaultQueryFilters, and with the limited scope of this PR I can't currently both have doc test and make set_disabled pub(crate) since doc tests can only access public functions. If we don't want DefaultQueryFilters to be the primary place explaining the features removing the doc test for the now simplified version wouldn't be a huge deal, but if it is the right place going forward we might need to merge the PR with that function public and make it not public and replace it with something less abusable like a function that calls set_disabled with the ComponentId for Disabled.
Also comments on the last commit would be welcome, I simplified the design somewhat for the more locked down design, but some parts of it do feel a bit odd like the Option<()> on set_disabled or working on an iterator that isn't currently necessary (but should simplify extending it with say Prefab or InternalMarkerPlsNoTouch later)

Can we make an entity_disabling module that stores these types? And then Disabled can live in there as one of the few pub types?


fix(@ngtools/webpack): don't invalidate cache after first run

fix(@ngtools/webpack): don't invalidate cache after first run
At the moment, since there are no old files in the compilation it will cause all source files to be invalidate after the first run. This shouldn't be done as it will slow down the 2nd recompilation.

fix(@ngtools/webpack): replace resources should not return class node when modified
This is also the root cause of spec large fail occasionally as we keep checking the child class nodes

Actually it was by pure coincidence, After I did the cache invalidation thing, the spec failed constantly with the error Cannot read property 'kind' of undefined in that test that is usefully flaky.
The flakiness seems to be related to the same error, as I got that error locally when I tried a couple of runs of that spec.

A fully virtual filesystem would be ideal for these tests since it would isolate the underlying OS's behavior from the test scenario.  Unfortunately, chokidar makes that pretty much impossible.


Microsoft Teams Live Events IPs/URLs

Are the Teams Live Events IPs/URLs covered by the Teams IPs on this page?

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

ID: 077406d8-bff1-496e-3ea2-b38558fd9355
Version Independent ID: 57db3dec-2250-2dee-fd1a-ec6656911798
Content: Office 365 URLs and IP address ranges
Content Source: Enterprise/urls-and-ip-address-ranges.md
Service: o365-administration
GitHub Login: @JoeDavies-MSFT
Microsoft Alias: josephd

@rickyrickuk I have forwarded this request to the team that manages the published Teams endpoints for investigation and consideration. Thanks for you suggestion.


Adds VFS deleteFile method

This PR adds a deleteFile function to typescript/vfs which works alongside the createFile and updateFile methods.
A test for is this has also been included

@microsoft-github-policy-service agree

@marklundin please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree


FIX: basic PEP8 fixes and improvements

Issue #, if available:
Description of changes:
Basic PEP8 corrections and improvements.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-344-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-344/1/index.html

Job PR-344-2 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-344/2/index.html


[bug]: send file and send until cursor in python linux doesn't works as expected

commit 95383e073288891fd5b609579f7daf6ad39f67eb breaks send_file and send_until_cursor in python linux.
A file like the following one, which is sent to iron, is divided in an awkward way, and the interpreter raises several errors.
It works fine if I select all the text and then send_visual.
foo = 1

class Foo:
    def __init__(self) -> None:
        self.bar = 1

    def foo(self) -> int:
        return self.bar

bar = Foo()
print(bar.foo())

Dear @nickeisenberg ,
I think the last approach for formatting python code of the last commits and PRs is not so solid.
I think, parsing and splitting the code, should not be done manually and by case.
I think that you can try to achieve better, more robust and general result with the appropriate tools, e.g. treesitter.
See for example #210

@f3fora Did send_file or send_until_cursor ever work for you? I had errors with that in the past when only common.bracked_paste was used.
And I understand what you are saying about the formatting, when I have more time I will try and find better way. However, I believe I have a fix your your send_file and 'send_until_cursor` issue now. The latest commit should work now.

@f3fora Did send_file or send_until_cursor ever work for you? I had errors with those in the past when only common.bracked_paste was used.

It worked until 95383e073288891fd5b609579f7daf6ad39f67eb .

And I understand what you are saying about the formatting, when I have more time I will try and find better way. However, I believe I have a fix your your send_file and send_until_cursor issue now. The latest commit should work now.

Thanks. It works. There is still some empty lines that are not required and fill the interpreter.

 Are you using IPython? send_file works for me on that commit for IPython but it fails when using python3 as the repl_definition.
When I have some time, I'll see about removing that extra line that is added when sending to the terminal. Thanks!

Same problem, using IPython --no-autoindent with python3.10 - both send_file and send_until_cursor are broken. send_visual and send_line work.
@nickeisenberg maybe try a somewhat "complicated" example? I can try figuring out a reproducible example if you are unable to reproduce.

@anku94 its still not working after the latest commit to master? I cant produce an example where send_file fails now.

@nickeisenberg sorry for the delayed response, I still seem to have issues.
The extension now seems to separate code blocks by blank lines, and as a result, function definitions with blank lines end up getting passed as separate code blocks. Example code:
def f():
  a = 5

  print(a)

Will produce:
Python 3.10.10 | packaged by conda-forge | (main, Mar 24 2023, 20:08:06) [GCC
 11.3.0]
Type 'copyright', 'credits' or 'license' for more information
IPython 8.13.2 -- An enhanced Interactive Python. Type '?' for help.

In [1]: def f():
   ...:     a = 5
   ...:

In [2]:     print(a)
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
Cell In[2], line 1
----> 1 print(a)

NameError: name 'a' is not defined

This is with both send_until_cursor and send_line.

@anku94 this is weird, I do not have that issue
def f():
  a = 5

  print(a)

Python 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0]
Type 'copyright', 'credits' or 'license' for more information
IPython 8.24.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: def f():
   ...:   a = 5
   ...:   print(a)
   ...:

In [2]:

Yes, that's what my config looks like. I did not have anything for python, and the new update complained about repl_definition.python being set to nil, so I added this.

@anku94 Can you try this
    local python_formatter = require("iron.fts.common").bracketed_paste_python
    iron.setup {
      config = {
        ...
        repl_definition = {
          python = {
            command = { "ipython", "--no-autoindent" },
            format = python_formatter,
          }
        }
        ...
      },
      ...
    }

This works - thank you!! :)


error install

C:\Users\usuario\Desktop\BINANCE\botcoin-master>npm uninstall
up to date in 0.124s
C:\Users\usuario\Desktop\BINANCE\botcoin-master>npm install
npm WARN saveError ENOENT: no such file or directory, open 'C:\Users\usuario\Desktop\BINANCE\botcoin-master\package.json'
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\usuario\Desktop\BINANCE\botcoin-master\package.json'
npm WARN botcoin-master No description
npm WARN botcoin-master No repository field.
npm WARN botcoin-master No README data
npm WARN botcoin-master No license field.

This is a Java project, not a Javascript one.


Nightly silence, and Weekends.

I'm having trouble finding the doc for creating a nightly silence, or silence days like for example weekends. Any pointers would be greatly appreciated.

I take it there isn't a clear way of doing this through the web interface? Is the API a workaround by the use of scripting?

Yeah, AM doesn't support regularly scheduled silences at certain times. You'd have to use the API to create your own regular silences. The API isn't documented or guaranteed to be stable yet, but can be used already. Just look in your browser's inspector to see what the AJAX requests look like when creating a silence...

Cheers. Perhaps this should be marked as a feature request if it isn't already a duplicate?

Yeah, @fabxc could maybe comment on whether he'd ever want to have that as a feature in AM or considers it out of scope.

@fabxc this feature is really important to us as we are moving away from zabbix. and have a couple of nightly jobs that is currently triggering alert in our prometheus-alertmanager setup. Any hope of seeing it implemented in alertmanager in the future?

Another way would be to make the alert not fire at all while the job is running. Obviously this needs some way to determine by query whether that is so. The new time functions might help, but a direct indication may be less fragile.
Then you can incorporate that in your queries directly, or have a separate "alert" this fact, route it nowhere, and let it inhibit the noisy ones.

I've been playing around with the api, and had some success.
curl --data '{"matchers":[{"name":"alertname","value":"ASAHighConnections","isRegex":false},{"name":"alias","value":"asa.host.domain","isRegex":false}],"startsAt":"2016-10-01T15:33:00.000Z","endsAt":"2016-10-01T19:33:00.000Z","createdBy":"email@email.com","comment":"testing"}' http://localhost:9093/api/v1/silences
-OK-
This should be enough for creating a workaround for the time being, while I wait for a more functional webgui approach. Looking forward to seeing this project evolve. Could this issue be re-branded to feature request?

+1


Fix rename column function for MSSQL

Current function will generate sql that looks like this.
EXEC sp_rename '[table].[old_col]', '[new_col]', 'COLUMN';
This will result in having [new_col] instead of new_col.
So it needs to be fixed into
EXEC sp_rename '[table].[old_col]', [new_col], 'COLUMN';
Removing the single quote from [new_col] will result in having new_col as expected. The single quote for [table].[old_col] has to stay. Without it an error from server will occur.

Thanks!


Make a monolith fetcher

For now, we have two parts of the fetcher (high-level description):

TypeScript scripts ask sites about extensions' info like name, publisher and latest upload timestamp. Then, the scripts generate a tmp.yaml with all this info.
Haskell script

reads this tmp.yaml and checks against another yaml - let it be cache.yaml - that contains additional info about extensions like calculated SHA. The script selects the info about extensions that are both in cache.yaml and tmp.yaml. These extensions are ready to be included into the updated version of cache.yaml. The extensions that are in tmp.yaml, but not in cache.yaml are fetched, and their SHA is calculated. Those extensions that were fetched successfully are combined with the ready extensions, they're all sorted and written into cache.yaml. As the vscode-marketplace usually returns very similar sets of extensions, it's cheap to update cache.yaml. The extensions that aren't in tmp.yaml but are in cache.yaml are not included into the updated cache.yaml. This is how we drop the old versions of extensions. The only interesting detail about the Haskell script is that this script spawns a limited number of threads that work on tmp.yaml and nix store prefetch-files so that we don't hit the request rate.
After updating the cache.yaml, the script generates nix expressions from that file. Perhaps we should move this generation to Nix (TODO).

At a lower level, we work with files that are stored in data/. data/old/vscode-marketplace.yaml is like cache.yaml mentioned above.
As @spikespaz suggested (https://github.com/nix-community/nix-vscode-extensions/pull/9#issuecomment-1416486553), we can choose a language and write all our scripts in that language to improve maintainability.

It should be relatively easy to rewrite the TypeScript part in Haskell. In fact, I'd like to do it.
The thing that I dislike about the TS part is that it depends on the external deno site which may become inaccessible. @AmeerTaweel , would it be hard to rewrite the Haskell part in TypeScript without using the deno site? Would you like to do it?

I'd like to throw in a note, I'd like to help, but won't touch TypeScript. Haskell I would like to learn.

@deemp I believe you are talking about ./updater/deps.ts. This is the standard way for doing imports in Deno, even for the standard library https://deno.land/std.
I understand that if https://deno.land/std is down the code won't work. However, isn't it the case for everything else? Most nix derivations fetch sources from other websites, so if the website goes down the derivation won't build. I'm not sure I get your point here.
Writing the whole thing in TypeScript shouldn't be that hard. I would like to do it once we figure out the issue you mentioned. I think TypeScript is a good choice for this project because we do a lot of networking and JSON manipulation, and (I believe) JavaScript/TypeScript is the best tool for this job.

I think TypeScript is a good choice for this project because we do a lot of networking and JSON manipulation, and (I believe) JavaScript/TypeScript is the best tool for this job.

Some better options:

Haskell looks fun but less practical. Don't know much else about it, but it has been on my list to learn.
Golang is almost the same as the Deno standard library anyway, so we may as well use it. Probably most of what you've written would be a direct port anyway. It would be significantly more performant, and concurrency would be easier. It's also lower-level, less man-made cruft, which is always preferred.
Rust has a truly outstanding collection of crates that make working with web APIs very very pleasant. I have the most experience here, and would be very excited to work with Serde + Async executors again. This would have the benefit of being nearly unbreakable, infallible code.
Even Python could do the job fairly well but I feel like it would yield a significantly weaker and less maintainable solution.

Overall, my proposal is to use Rust with serde, serde_json, serde_cbor, isahc or surf and smol or async-std.
Obviously, I am somewhat inviting myself to work on this thing, mostly because I really like doing these sorts of projects. Scrapers and REST wrappers excite me. Feel free to ignore me and I'll stay out of your business.
I debated with myself whether to reply to this statement, for a few reasons. I am extremely biased because I really hate the direction that JavaScript has taken the software industry as a whole, as well as people falling into the trap of thinking it's the best language (but that goes for any other as well). I could write a whole article of reasons why JavaScript is just almost never any better than anything else, but will refrain from doing so. I will say one thing about it: JS is a crowbar, and you can choose from any other precision instrument. TypeScript is Microsoft's attempt to fix their mistakes with the design of JS. Please leave it on the client-frontend.

I am extremely biased...

Totally agree.

Overall, my proposal is to use Rust with serde, serde_json, serde_cbor, isahc or surf and smol or async-std.

We have wildly different different opinions on JS/TS, but at least we both agree that Rust is a great, fast, and safe language. A re-write in Rust was inevitable anyway, so why not do it now.

Obviously, I am somewhat inviting myself to work on this thing, mostly because I really like doing these sorts of projects. Scrapers and REST wrappers excite me. Feel free to ignore me and I'll stay out of your business.

I never did a decent Rust project so I'm not that proficient in the language (yet). So I think it's better if you're the one to re-write in Rust.
What do you think @deemp?

I'm biased, too, but towards Haskell. That's why, I suggest to use Haskell in our project.
Haskell is a language that's usually extremely pleasant to work with. It features good libraries, nice abstractions, awesome multi threading, fast compilation. Yet Haskell is pretty unpopular. There are a lot of useful Node and RIIR apps, but not many popular Haskell apps. To name a few, real heroes are hadolint and shellcheck. So, I'd like to  promote Haskell by using it in our project. Hopefully, more people will recognize that Haskell is a reliable and mature language that's is a good choice for accomplishing non-trivial tasks.
To back up my suggestion, I rewrote the entire thing in Haskell. It works twice faster than the previous version (see the action), has logs enabled, and handles various errors gracefully. E.g., when running locally, I can hit Ctrl+C, and the current progress (fetched extensions' info) will get appended to the file with the cached extensions' info. Moreover, to make the code readable, I commented it pretty thoroughly and can leave more comments if necessary.
The structure of the data has changed a bit. Now, there are only .json files that are converted to Nix expressions inside flake.nix. This allowed for reducing the cache size down to ~15M. I successfully tried building several extensions, e.g., via:
nix-repl> :lf github:nix-community/nix-vscode-extensions/rewrite-in-haskell
nix-repl> :b extensions.x86_64-linux.vscode-marketplace.rust-lang.rust-analyzer

Now, @AmeerTaweel , @spikespaz , do you agree with my suggestion to use Haskell here?

I do agree that Haskell is one good option. However, despite my willingness to experiment with unorthodox languages, you do bar others from working on this because of the high learning curve, I would argue that that of Haskell is greater than the degree of Rust.
Aside, I had actually already written API wrappers (mostly complete) for Open VSX Registry. I thought that in doing so, I would be contributing back to the wider community, as this is a publishable and useful crate for others. I may continue with the work, but must admit, am relieved to be relieved of the duty that I had over-eagerly committed myself to.
I recognize that there is little other benefit however; the binary here is very specific to this particular project and therefore of little consequence to the rest of the world. This disappointing fact is compounded by the fact that Micro$oft does not permit usage of the Marketplace API, and that any utility of it is strictly against their terms (unless authorized, such as for this project). In addition, while writing the wrapper for Open VSX was relatively easy, it was only easy because they have a strongly-typed and well documented API--such is not the case for the proprietary Marketplace API.
Considering that you've already done the work, more than I have at least, I think you should continue with Haskell. I did expect this to be a race anyway. I will continue with my Rust wrappers in the future when I have further personal need for them.
Just a comment about Haskell (and lambda-calculus-based languages in general), it is significantly more difficult for a novice or even intermediate programmer to learn FP than it is to wrap one's head around imperative paradigms. I don't think Haskell is a good fit for widespread software development; it is certainly a capable language, and functional solutions make one feel clever with themselves, but it is not necessarily more advantageous than the other options.

However, despite my willingness to experiment with unorthodox languages, you do bar others from working on this because of the high learning curve, I would argue that that of Haskell is greater than the degree of Rust.

I agree with @spikespaz that using Haskell will make the project less approachable. I also don't know that much Haskell. I played with XMonad in the past, but nothing fancy. And I also never used it for a project.

So, I'd like to promote Haskell by using it in our project. Hopefully, more people will recognize that Haskell is a reliable and mature language that's is a good choice for accomplishing non-trivial tasks.

@deemp, I like the idea so I agree with continuing using Haskell.
However...
I tried to read some of your code in /hs/app/Main.hs, and I think it needs some readability improvements. For example:

getExtension is readable overall, but it's 55 lines long.
main' is way less readable than getExtension, and it's also around 55 lines long.

The TypeScript part is very short so I also think re-writing it in Haskell would not increase the program size that much. But I believe that we should do some refactoring on the Haskell code: splitting into multiple files, smaller functions, etc...

Thank you for your answers!
@AmeerTaweel, the TypeScript part is already there.

I tried to read some of your code in /hs/app/Main.hs, and I think it needs some readability improvements

Sure, I'll refactor the code and comments.

@deemp great.
Is it safe to delete the TypeScript directory now?
There is also some Python code in the repo under scripts. What is the state of this? Is it safe to delete?

I removed scripts.

By the way, if you'd like to study Haskell, I recommend the Haskell for Imperative Programmers playlist :) Following that, you may want to read books like LYAH and Get Programming with Haskell. Finally, read Haskell in Depth.


ArgumentNullException while binding Polyline's Points in designer

If I bind a Polyline's Points to a List in XAML then ArgumentNullException happens so preview is not working in designtime. But in runtime there are no exceptions and Polyline is visible.
If I bind a Polyline's Points to a string in XAML then there are no exceptions neither in designtime nor in runtime.
View:
<Window xmlns="https://github.com/avaloniaui"
				xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
				xmlns:vm="clr-namespace:Tests.ViewModels;assembly=Tests"
				xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
				xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
				mc:Ignorable="d"
				d:DesignWidth="800" d:DesignHeight="450"
				x:Class="Tests.Views.MainWindowView"
				Icon="/Assets/avalonia-logo.ico"
				Title="Tests">

	<Design.DataContext>
		<vm:MainWindowViewModel/>
	</Design.DataContext>

	<Panel>
		<Polyline Points="0,100 100,0" StrokeThickness="2" Stroke="Black" />

		<!--Works fine in runtime, but it breaks designer in designtime-->
		<Polyline Points="{Binding Points}" StrokeThickness="2" Stroke="Black" />
	</Panel>
</Window>

ViewModel:
using Avalonia;
using ReactiveUI;
using System.Collections.Generic;

namespace Tests.ViewModels
{
	public class MainWindowViewModel : ReactiveObject
	{
		public List<Point> Points { get; } = new List<Point>( new[]
		{
			new Point( 0, 0 ),
			new Point( 100, 100 ),
		} );
	}
}

Output window content:
04:36:52.908 [Debug] 19032 <= UpdateXamlResultMessage { Error: "System.ArgumentNullException: V…", Handle: null, Exception: ExceptionDetails { ExceptionType: "ArgumentNullException", Message: "Value cannot be null.", LineNumber: null, LinePosition: null } }
04:36:52.909 [Error] 19032 UpdateXamlResult error
System.Xaml.XamlException: Value cannot be null.
04:36:52.930 [Debug] 4000 <= RequestViewportResizeMessage { Width: 12, Height: 12 }
04:36:52.930 [Debug] 26588 <= FrameMessage { SequenceId: 1, Format: Bgra8888, Data: "00000000000000000000000000000000... (3328 bytes)", Width: 26, Height: 32, Stride: 104 }
04:36:52.931 [Debug] 27052 <= FrameMessage { SequenceId: 1, Format: Bgra8888, Data: "00000000000000000000000000000000... (960000 bytes)", Width: 800, Height: 300, Stride: 3200 }
04:36:52.939 [Debug] 4000 <= RequestViewportResizeMessage { Width: 12, Height: 12 }
04:36:52.939 [Debug] 26588 <= RequestViewportResizeMessage { Width: 26, Height: 32 }
04:36:52.950 [Debug] 26588 <= UpdateXamlResultMessage { Error: null, Handle: null, Exception: null }
04:36:52.961 [Error] 19032 <= "Unhandled exception. System.ArgumentNullException: Value cannot be null."
04:36:52.965 [Error] 19032 <= "   at Avalonia.Collections.AvaloniaList`1.InsertRange(Int32 index, IEnumerable`1 items)"
04:36:52.998 [Debug] 4000 <= FrameMessage { SequenceId: 1, Format: Bgra8888, Data: "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", Width: 12, Height: 12, Stride: 48 }
04:36:53.029 [Debug] 4000 <= RequestViewportResizeMessage { Width: 12, Height: 12 }
04:36:53.010 [Debug] 27052 <= RequestViewportResizeMessage { Width: 800, Height: 300 }
04:36:53.040 [Error] 19032 <= "   at Avalonia.Collections.AvaloniaList`1.AddRange(IEnumerable`1 items)"

The problem is there:
https://github.com/AvaloniaUI/Avalonia/blob/e8d6462a0a92d909d01a502b3a8358e444314e32/src/Avalonia.Controls/Shapes/Polyline.cs#L25

protected override Geometry CreateDefiningGeometry()
{
	return new PolylineGeometry(Points, false);
}

it calls:
public PolylineGeometry(IEnumerable<Point> points, bool isFilled) : this()
{
	Points.AddRange(points);
	IsFilled = isFilled;
}

then:
public virtual void AddRange(IEnumerable<T> items) => InsertRange(_inner.Count, items);

and there is ArgumentNullException:
public virtual void InsertRange(int index, IEnumerable<T> items)
{
	Contract.Requires<ArgumentNullException>(items != null);
	...
}

I suggest using of this in https://github.com/AvaloniaUI/Avalonia/blob/e8d6462a0a92d909d01a502b3a8358e444314e32/src/Avalonia.Controls/Shapes/Polyline.cs:
protected override Geometry CreateDefiningGeometry()
{
	return new PolylineGeometry( Points ?? new Point[] { }, isFilled: false );
}

It should not generate a geometry when points are null or empty

@Gillibald so basically
Adding something like CanCreateGeometry in Shape.cs
protected abstract bool CanCreateGeometry { get; }
/// <summary>
/// Gets a value that represents the <see cref="Geometry"/> of the shape.
/// </summary>
public Geometry? DefiningGeometry
{
    get
    {
        if (_definingGeometry == null && CanCreateGeometry)
        {
            _definingGeometry = CreateDefiningGeometry();
        }

        return _definingGeometry;
    }
}

and therefore adding implementation in derived classes, like:
protected override bool CanCreateGeometry => Points != null && Points.Count > 0;
should fix the problem.

@Gillibald so basically
Adding something like CanCreateGeometry in Shape.cs
protected abstract bool CanCreateGeometry { get; }
/// <summary>
/// Gets a value that represents the <see cref="Geometry"/> of the shape.
/// </summary>
public Geometry? DefiningGeometry
{
    get
    {
        if (_definingGeometry == null && CanCreateGeometry)
        {
            _definingGeometry = CreateDefiningGeometry();
        }

        return _definingGeometry;
    }
}

and therefore adding implementation in derived classes, like:
protected override bool CanCreateGeometry => Points != null && Points.Count > 0;
should fix the problem.


Stateful widget not being restored with ValueKey

Hello
I've created a carousel by supplying an array of stateful widgets and when the provider signals, this will be reconstructed as part of the normal build process. On the rebuild and the array changing dimension I loose the state of my widgets, which do have ValueKeys on each. Switching the key to a GlobalKey means I retain the state, but there are obvious reasons for not wanting to use GlobalKeys.
I didn't find anything in the documentation about this, so I assumed that it should work the same way as other lists where the position of a widget can be changed using local keys.
regards
Matthew

Hi @melio-matt
Can you please provide some test cases or any screenshots or a video that how are you implementing it and what are you trying to do?
Thanks
Nikhil

Hi @nixrajput
I've added below some code that illustrates what I'm doing. The floating button when clicked alters the state and removes one of the pages from the carousel. Before pressing this, navigate to the last page and enter some text into the box, then press the button. You will then see the input box no longer has the text present. There is some commented out code that switches out the local and global keys. Once swapped round and you repeat the above action you will see the text is maintained in the input box.
regards
Matthew
import 'package:flutter/material.dart';
import 'package:flutter_carousel_widget/flutter_carousel_widget.dart';

void main() {
  runApp(const MyApp());
}

GlobalKey inputScreenGlobalKey = GlobalKey();

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Carousel State Test'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  CarouselController carouselController = CarouselController();
  bool _itemsAltered = false;

  void _alterItems() {
    setState(() {
      _itemsAltered = !_itemsAltered;
    });
  }

  @override
  Widget build(BuildContext context) {
    List<Widget> carouselItems = [];
    carouselItems.add(const Text("panel 1", key: ValueKey("panel1")));
    if (_itemsAltered == false) {
      carouselItems.add(const Text("panel 2", key: ValueKey("panel2")));
    }

    // swap these lines to move between local keys and global keys
    carouselItems.add(const InputScreen(key: ValueKey("inputScreen")));
    // carouselItems.add(InputScreen(key: inputScreenGlobalKey));

    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: FlutterCarousel(
          items: carouselItems,
          options: CarouselOptions(),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _alterItems,
        tooltip: 'Alter',
        child: const Icon(Icons.ac_unit),
      ),
    );
  }
}

class InputScreen extends StatefulWidget {
  const InputScreen({Key? key}) : super(key: key);

  @override
  State<StatefulWidget> createState() {
    return _InputScreenState();
  }
}

class _InputScreenState extends State<InputScreen> {
  late TextEditingController textEditingController;

  @override
  void initState() {
    super.initState();
    textEditingController = TextEditingController();
  }

  @override
  Widget build(BuildContext context) {
    return TextField(
      controller: textEditingController,
    );
  }
}
```

Hi @melio-matt
I will look into this and I will definitely revert back to you after testing and solution.
Please have some patience.
Thanks and regards,
Nikhil

Thanks @nixrajput
No massive urgency, I have a solution that works for me at the moment and will be easy enough to put back in the more permanent solution.
Matthew


Error when adding .ftsettings.json

Hi, when I create a template in the file system I get an error if I add a .ftsettings.json.
My template looks like this:

If I leave it like that, the context menu "Create New Templated Folder" does not do anything on click.
If I open de Command Palette and execute  "Create New Templated Folder", it does not ask for a template, it directly goes to the name propmt (even tho I have more than one template defined). In this prompt, if I input something and press Enter, or if I just press Escape, I always get this error:

If I define the same template in the settings.json, it works just fine.
If I remove the .ftsettings.json. it also works.
Thanks

Hey @JosephDAM, thanks for reaching out.
Could you please show the contents of the .ftsettings.json file?
I've tried to reproduce it but couldn't unfortunately.
It would also help if you could show the folder containing your templates. You don't need to expand them all, I just would like to see the overall structure to be able to understand what's happening and if there's maybe something wrong on that end.

Sure, here you go:

I've removed the .ftsettings.json file from the Customvariables example template. Same issue.
Thanks

What I can see from that screenshot is that the .fttemplates folder is not on rootlevel of the vscode project. If you use the extensions default settings that won't work.
You can do either of these two things to fix the problem for this particular project

put the .fttemplates folder at the root of the project.
set the folderTemplates.templateFolderPath setting to wwwroot/.fttemplates.

Does that fix the issue?

If I set folderTemplates.templateFolderPath to wwwroot/.fttemplates it does not find the templates anymore.
If I leave the folderTemplates.templateFolderPath with its default value and remove the .ftsettings.json file from the templates, it finds my custom templates, and creates them properly. The only problem is when one of the templates has a .ftsettings.json, then, it seems to get some kind of error when loading the templates.
My project is in another PC, im accesing the code via the internal network. I'm not sure if that could be an issue.

Thank you very much for the detailed information.
I'm really sorry but I'll have to ask you to wait a bit for this to be resolved.  Would it be possible for you to give me an error log?
In VSCode open the command palette and select Show Logs... and then choose Extension Host.
When it's open you just reproduce the error and hopefully the errorlog should be popping up in there.
If you could paste that in here it would be greatly appreciated.


Delete SightRay for Foundry VTT v10.276

To Change
SightRay
Kind of Change
Delete
Additional Info
No response

I'd like to work this one.


Window pop up: MC Edit requires version 1.8

I downloaded MC Edit on my XP os and it works fine with a regular working interface which opens my saved Minecraft.
I downloaded MC Edit on my Windows 7 os and I get this pop up that says" MCEdit requires installed Minecraft version 1.9 or greater to access block textures, models and metadata" and when the interface opens it is totally different looking.
Danny Loya

You're probably using MCEdit 2 which only supports Minecraft 1.9
Try downloading MCEdit-Unified


add debug_query make get raw_sql becomes simply.

Let's take insertion as an example,before we want get sea-orm raw_sql, it's may be import trait namespace with :use sea_orm::QueryTrait;
use sea_orm::QueryTrait;
let pear = fruit::ActiveModel {
            name: Set("Pear".to_owned()),
            ..Default::default() // all other attributes are `Unset`
        };

let raw_sql = Entity::insert(pear).build(DatabaseBackend::MySql).to_string();

Now, you can use debug_query get raw_sql becomes simply.It does not need to specify a specific DbBackend,but can be obtained through get_database_backend function with DatabaseConnection. That not import trait namespace
let pear = fruit::ActiveModel {
            name: Set("Pear".to_owned()),
            ..Default::default() // all other attributes are `Unset`
        };

let raw_sql = debug_query(&Entity::insert(pear), conn).to_string();

Sorry,wait a minute, there is a better solution

Hey @baoyachi, if we change the db_backend arg and make it accept anything that impl IntoDbBackend would this make the API ergonomic enough?
https://github.com/SeaQL/sea-orm/blob/6861802a6d9c6eabe554cb984a56d55dca7b2e62/src/query/traits.rs#L16-L23
Introduce a new trait IntoDbBackend and implement it...
pub trait IntoDbBackend { ... }

impl IntoDbBackend for DatabaseConnection { ... }

impl IntoDbBackend for DatabaseBackend { ... }

Then we can write...
let raw_sql = Entity::insert(pear).build(&db).to_string();

let raw_sql = Entity::insert(pear).build(DatabaseBackend::MySql).to_string();

@billy1624  That's great. I thought about this before sending PR, which may involve large changes. Now I think I can do that.

Any comments? @tyt2y3

Okay so, I would prefer debug_query to output a string and remove debug_query_fmt.
This method overloading strategy is the first time I've ever used!

Okay so, I would prefer debug_query to output a string and remove debug_query_fmt.
This function overloading strategy is the first time I've ever used!

@tyt2y3 I have removed debugged_ query_fmt  macro and use debug_query instead.
Added gen_statment macro.This seems necessary because it receives one of the multiple parameters of DatabaseConnection or DbBackend.

Thank you


Incorrect repo_location documentation

When reading through the documentation around adding a back-up location to the elastic config the documentation reads:

Then, set the REPO_LOCATIONS environment variable to ["/backup"] and create a backup repository

However, when REPO_LOCATIONS is substituted to the environment variable value it is already wrapped within an array. Therefore, the REPO_LOCATIONS env variable should just be initialized as a string e.g. /backup.

Thank you for reporting. I'm happy to review a PR that addresses this!

@pires No problem PR sent - I tend to be overly verbose so hopefully my edits are suitable :+1:

I love verbosity when it makes documentation clearer.


remove the folders from the "path" variable causing bug during inference

The following error was caused because of subfolders in the input folder:
File "C:\Users......\AppData\Local\Programs\Python\Python310\lib\site-packages\facexlib\utils\face_restoration_helper.py", line 355, in paste_faces_to_input_image
upsample_img = inv_soft_mask * pasted_face + (1 - inv_soft_mask) * upsample_img
ValueError: operands could not be broadcast together with shapes (1404,2000,1) (1404,2000)
By taking away the folders from the "path" variable. The problem is fixed.
Great Job to you!

hello，I used your method but it still failed. Is there any latest progress？ tanke，you

Maybe it's because the grayscale is missing a channel？It's well when i remove 00017 gry.png


403 when purchasing as anonymous

Tried to purchase an item that was more gems than I had.
Need to go through login process and then continue purchase path.

Should be fixed with my fixes to #2293, if not before.