Test of experimental Wallets 2024-05-15

Experimental Braavos wallet v0.0.1-3.49.0 of 2024-05-15. (ID:nliolbfbelmkiidjenchbhkpdpdanimc)
Experimental ArgentX wallet v5.15.3 of 2024-05-15. (ID:clahjokgpdceomgegfbgoojjkebfagme)
@vladutjs , @avimak , @ivpavici , @amanusk
Test DAPP :  https://starknet-wallet-account.vercel.app/
My documentation for this new API : https://github.com/PhilippeR26/Starknet-WalletAccount/blob/main/doc/walletAPIspec.md
Config : Linux mint 21.3 with Chrome 124.0.6367.207.
Result of the tests of the experimental wallets, with Starknet.js v6.8.0 & get-starknet v4.0.0-next.5 :

Id
Subject
ArgentX
Braavos
Comment

1
event accountsChanged
- A change of account is also triggering a network events.  - After connection, the first opening of the wallet UI is triggering unexpected events for both account and network.  - After some minutes of usage, there are no more events triggered
Some unexpected triggering of both events (spaced by a random multiple of minutes: 3'00", 12'00", ...).
To avoid unnecessary refreshes in a DAPP UI, events have to trigger only in case of real change

2
event networkChanged
After some minutes of usage, there are no more events triggered
Some unexpected triggering of both events.

3
wallet_getPermissions
OK
OK

4
wallet_requestAccounts
OK
OK

5
wallet_watchAsset
- Rejected by user is  throwing an error, but not an Error 113. - if not an ERC20 -> is  throwing an error, but not an Error  111.
- Rejected by user is not throwing an Error 113, but provide a response false. - if not an ERC20 -> is   not throwing an Error 111, but provide a response false.

6
wallet_addStarknetChain
- Rejected by user is  throwing an error, but not an Error 113.
Not implemented.

7
wallet_switchStarknetChain
- Rejected by user is  throwing an error, but not an Error 113. - request to switch to the same network should not ask the approval of the user, but just return true
Not implemented.

8
wallet_requestChainId
OK
OK

9
wallet_deploymentData
OK
Response is null
Consistency of the values has not been checked

10
wallet_addInvokeTransaction
Rejected by user is  throwing an error, but not an Error 113.
Tx declined by the user throws a Execute failed Error, not an Error 113

11
wallet_addDeclareTransaction
- The request is accepted by the wallet, but the transaction fails. Seems to be a problem of stringified abi. Response is an Error User abort ; should be probably Error 163- No response if reject by user.
Do not answer to the command

12
starknet_signTypedData
- Rejected by user is  throwing an error, but not an Error 113.
Rejected by user is  throwing an error Signature failed, not an Error 113.

13
starknet_supportedSpecs
OK
OK

Braavos will return null for wallet_deploymentData in case that the current active account is already deployed

Update including new version of Braavos wallet
Experimental Braavos wallet v0.0.2-3.49.0 of 2024-05-16. (ID:nliolbfbelmkiidjenchbhkpdpdanimc)
Experimental ArgentX wallet v5.15.3 of 2024-05-15. (ID:okiflmmbmjkhhoeahdoamhmodlfmmlnn)
@vladutjs , @avimak , @ivpavici , @amanusk
Test DAPP :  https://starknet-wallet-account.vercel.app/
My documentation for this new API : https://github.com/PhilippeR26/Starknet-WalletAccount/blob/main/doc/walletAPIspec.md
Config : Linux mint 21.3 with Chrome 124.0.6367.207.
Result of the tests of the experimental wallets, with Starknet.js v6.8.0 & get-starknet v4.0.0-next.5 :

Id
Subject
ArgentX
Braavos
Comment

1
event accountsChanged
- A change of account is also triggering a network events.  - After connection, the first opening of the wallet UI is triggering unexpected events for both account and network.
OK
To avoid unnecessary refreshes in a DAPP UI, events have to trigger only in case of real change

2
event networkChanged
After some minutes of usage, there are no more events triggered>
OK

3
wallet_getPermissions
OK
OK

4
wallet_requestAccounts
OK
OK

5
wallet_watchAsset
- Rejected by user is  throwing an error, but not an Error 113. - if not an ERC20 -> is  throwing an error, but not an Error  111.
- Rejected by user is not throwing an Error 113, but provide a response false. - if not an ERC20 -> is   not throwing an Error 111, but provide a response false.

6
wallet_addStarknetChain
- Rejected by user is  throwing an error, but not an Error 113.
Not implemented.

7
wallet_switchStarknetChain
- Rejected by user is  throwing an error, but not an Error 113. - request to switch to the same network should not ask the approval of the user, but just return true
Not implemented.

8
wallet_requestChainId
OK
OK

9
wallet_deploymentData
OK
Response is null
Consistency of the values has not been checked

10
wallet_addInvokeTransaction
Rejected by user is  throwing an error, but not an Error 113.
Tx declined by the user throws a Execute failed Error, not an Error 113

11
wallet_addDeclareTransaction
- The request is accepted by the wallet, but the transaction fails. Seems to be a problem of stringified abi. Response is an Error User abort ; should be probably Error 163- No response if reject by user.
- Declare declined by the user throws a Declared failed Error, not an Error 113.- One time encountered error -32602: Invalid Params: "Entry points not sorted by selectors.
In this API, the Abi has to be stringified, not as in Starknet.js where it's a any[]

12
starknet_signTypedData
- Rejected by user is  throwing an error, but not an Error 113.
- The signature has 3 items : the first is a "1", and the others are different to ArgentX values - Rejected by user is  throwing an error Signature failed, not an Error 113.

13
starknet_supportedSpecs
OK
OK

Braavos will return null for wallet_deploymentData in case that the current active account is already deployed

@PhilippeR26 pls see here 👆
if you want to get a valid response, make sure you are calling on a non-deployed account; returning null for deployed accounts is expected

wrt starknet_signTypedData returning different signature formats between Braavos and argent, this is expected. It's up to the wallet to return a signature that will pass an is_valid_signature check for the signed hash, and it's up to the dapp to assume nothing about the returned signature and use it as-is

Braavos will return null for wallet_deploymentData in case that the current active account is already deployed

@PhilippeR26 pls see here 👆 if you want to get a valid response, make sure you are calling on a non-deployed account; returning null for deployed accounts is expected

The @amanusk spec is saying :
"name": "wallet_deploymentData",
      "summary": "Request from the current wallet the data required to deploy the account at the current address",
      "params": [],
      "result": {
        "name": "result",
        "schema": {
          "$ref": "#/components/schemas/ACCOUNT_DEPLOYMENT_DATA"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/USER_REFUSED_OP"
        },
        {
          "$ref": "#/components/errors/UNKNOWN_ERROR"
        }
      ]

The error USER_REFUSED_OP is useless as the wallets are responding to this method without opening the UI and of course without asking any approval to the user.
If the current account is already deployed:

Argent X  is throwing an error Deployment data not found
Braavos is answering "null".
To clarify the situation, I propose to add an error in the spec for this case, for example something as  ACCOUNT_ALREADY_DEPLOYED

wrt starknet_signTypedData returning different signature formats between Braavos and argent, this is expected. It's up to the wallet to return a signature that will pass an is_valid_signature check for the signed hash, and it's up to the dapp to assume nothing about the returned signature and use it as-is

OK. I will change the table.


Removing a project with OIDC configured fails

When removing a project via admin (such as malware), currently the removal fails, presumably due to not having an on delete cascade for the foreign key relationship.
(psycopg.errors.ForeignKeyViolation) update or delete on table "projects" violates foreign key constraint "oidc_publisher_project_association_project_id_fkey" on table "oidc_publisher_project_association"
DETAIL:  Key (id)=(REDACTED) is still referenced from table "oidc_publisher_project_association".
[SQL: DELETE FROM projects WHERE projects.id = %(id)s::UUID]
[parameters: {'id': UUID('REDACTED')}]

We probably want to delete a publisher on project removal, since it's a one-to-one relationship, is that correct @woodruffw ?
We probably also want Admin UI functionality to remove an OIDC publisher from a project.

Manual workaround for now:
>>> from warehouse.oidc.models import GitHubPublisher
>>> pub = db.query(GitHubPublisher).filter_by(repository_owner='redacted', repository_name='redacted').one()
>>> db.delete(pub)
>>> db.commit()

We probably want to delete a publisher on project removal, since it's a one-to-one relationship, is that correct @woodruffw ?

Unfortunately not -- it's a many-many relationship, since other PyPI projects could have the same publisher registered. So I think we want to persist the publisher unless it's the last project associated with it, in which case it can be deleted 🙂

Oh, I see - I must have misread the relationships. Instead of removing the publisher itself, then maybe the related OIDCPublisherProjectAssociation should be removed on project delete?
It works for publisher-side delete - when I ran the code above to remove the publisher, it removed the association as well.

Yeah, that makes sense to me!


FE 320 project overview last modified

Showing the last modified at date under the header
Tech notes
Didn't include a skeleton for the updated because the the text "Project Overview" already had a skeleton loader
Testing
Go to the project overview page and should look like the screenshot

@CarsonF ready


Dependent stack variables are not interpolated

From #2707: Trying to interpolate variables like the default $STACK/$GRID names, any other parent stack variables, or any dependent child stack names does not work in the depend stack variables section:
depends:
  foo:
    stack: deptest-child.yaml
  bar:
    stack: deptest-child.yaml
    variables:
      peers: "foo=redis://$foo:6379/"

results in {"Env": ["PEERS=foo=redis://$foo:6379/"]} with a literal $foo. The dependent stack name variables can only be used by services directly in the parent stack. This prevents child stack services from being able to address or link to services provided by other child stacks.
Same thing for applies for $STACK, the service just literally ends up with foo=redis://$STACK-foo:6379/.

Doesn't seem to be happening yet.
@kke is this something that could be considered for 1.5?

It will require considerable changes to how the thing is processed.


⚠ Shadow Does Streams has degraded performance

In 78b6e50, Shadow Does Streams (https://stream.everythingbagel.me) experienced degraded performance:

HTTP code: 200
Response time: 7942 ms

Resolved: Shadow Does Streams performance has improved in 335771c after 6 minutes.


Web Story Editor Enhancements

Since using the editor since early October 2020, we have some thoughts on potential enhancements to the editor. To be able to easily create a story in the editor will likely optimize the intent to index and pull meaningful information for a user versus using a third party option like Canva that is just a photo.
Feature Description
Web Story Helpful Edits
•	Be able to load own fonts - For those of us with specific brand boards and font elements this is especially helpful (because we paid for them).
•	Be able to use [holding down alt key] like in adobe programs to copy something and to stay centered when growing in size
•	Be able to zoom in and out of design
•	Have nudge (pressing an arrow key) be a smaller increment
Alternatives Considered
•	When you are adding/ choosing a font or color I would like to click the plus sign, then change the modifiers, then apply it to some text, rather than tweaking an element of my text and then clicking the + to save it (the current process is not intuitive).
•	When I scroll this large white space appears at the bottom of the screen which is weird and unnecessary
•	If there is a note in the checklist I would like to be able to click it and have it highlight what I need to edit.
Additional Context

We're using WordPress, Genesis, Feast Theme
Web Story Version 1.2.1

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria

Implementation Brief

Thanks so much for sharing this! I'll happily share this with the team, but here is some preliminary feedback:

Be able to load own fonts - For those of us with specific brand boards and font elements this is especially helpful (because we paid for them).

It's not on the immediate roadmap, but there are plans for this: #4717

Be able to zoom in and out of design

We are actively working on this for our upcoming release! #4022
You can check out the roadmap for other things currently in the making

Have nudge (pressing an arrow key) be a smaller increment

With Shift+Arrow you can move elements more precisely

If there is a note in the checklist I would like to be able to click it and have it highlight what I need to edit.

We are actively working on this for our upcoming release! #5965

Thanks so much for sharing this! I'll happily share this with the team, but here is some preliminary feedback:

Be able to load own fonts - For those of us with specific brand boards and font elements this is especially helpful (because we paid for them).

It's not on the immediate roadmap, but there are plans for this: #4717

Be able to zoom in and out of design

We are actively working on this for our upcoming release! #4022
You can check out the roadmap for other things currently in the making

Have nudge (pressing an arrow key) be a smaller increment

With Shift+Arrow you can move elements more precisely

If there is a note in the checklist I would like to be able to click it and have it highlight what I need to edit.

We are actively working on this for our upcoming release! #5965

@o-fernandez Seems like we're getting a lot of request for uploading custom font. Can we consider bumping this one up the roadmap?

When you are adding/ choosing a font or color I would like to click the plus sign, then change the modifiers, then apply it to some text, rather than tweaking an element of my text and then clicking the + to save it (the current process is not intuitive).

@Vindulge Can you specify what you mean by 'change the modifiers'.

When I scroll this large white space appears at the bottom of the screen which is weird and unnecessary

This is definitely a bug I thought we had fixed. @barklund Can you help look into this issue.

@o-fernandez Seems like we're getting a lot of request for uploading custom font. Can we consider bumping this one up the roadmap?

When you are adding/ choosing a font or color I would like to click the plus sign, then change the modifiers, then apply it to some text, rather than tweaking an element of my text and then clicking the + to save it (the current process is not intuitive).

@Vindulge Can you specify what you mean by 'change the modifiers'.

When I scroll this large white space appears at the bottom of the screen which is weird and unnecessary

This is definitely a bug I thought we had fixed. @barklund Can you help look into this issue.

When I scroll this large white space appears at the bottom of the screen which is weird and unnecessary

This is definitely a bug I thought we had fixed. @barklund Can you help look into this issue.

We have issue #5458 dealing with this. Just prioritized it and looking for a way to reproduce it.

When I scroll this large white space appears at the bottom of the screen which is weird and unnecessary

This is definitely a bug I thought we had fixed. @barklund Can you help look into this issue.

We have issue #5458 dealing with this. Just prioritized it and looking for a way to reproduce it.


Implement non-string literals in attributes

cf. https://github.com/rust-lang/rust/issues/34981

[x] Str
[ ] ByteStr
[ ] Byte
[ ] Char
[x] Int
[ ] Float
[ ] Bool


The exponential addition of values when we click on one of the BitBreadCrumb items in the mobile app

The correct dropdown value in the image below should be:

Folder 2
Folder 3

This is true the first time we enter this page. But if we click on one of the BreadCrumb items(for example Folder 4), every time we do this, the number of dropdown values will be repeated.
one click:

Folder 2
Folder 3
Folder 2
Folder 3

two clicks:

Folder 2
Folder 3
Folder 2
Folder 3
Folder 2
Folder 3

(Note that this is only the case on the mobile app and not on the web)

I think this is helpful: Singleton vs Transient in Maui

As I checked this does not happen anymore.


[feature] Added logging in update_wireguard.sh script #36

When the script is executed by the Flask app, the uwsgi log will contain the output from the update_wireguard.sh script.
Co-authored-by: Gagan Deep<EMAIL_ADDRESS>Closes #36
Supersedes #37
cc @clutch2sft

@nemesifier it is failing to build uWSGI https://github.com/openwisp/ansible-wireguard-openwisp/actions/runs/7833605482/job/21407863352?pr=45#step:7:284
The docker images that we use for CentOS are no longer maintained, moreover the support for CentOS project is EOL https://www.centos.org/centos-linux-eol/
I have already created an issue for removing these build earlier https://github.com/openwisp/ansible-wireguard-openwisp/issues/39


test: add ft for tidb/issues/51204

What problem does this PR solve?
Issue Number: ref #6233, close https://github.com/pingcap/tidb/issues/51204
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[x] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/run-all-tests

/run-all-tests

/run-integration-test


re-enable ghc-typelits-* type-checker plugins

Now that ghc-tcplugins-extra-0.2.4 is in nightly:

ghc-typelits-natnormalise-0.5.9, and
ghc-typelits-knownnat-0.4.1

Can be build on GHC 8.4.

ghc-typelits-extra-0.2.4 can now also build on GHC 8.4 now that its (transitive) dependencies can build on GHC 8.4

Checklist:

[x] Meaningful commit message - please not Update build-constraints.yml

[x] At least 30 minutes have passed since Hackage upload

[x] On your own machine, in a new directory, you have successfully run the following set of commands (replace $package with the name of the package that is submitted, $version is the version of the package you want to get into Stackage):
stack unpack $package
cd $package-$version
stack init --resolver nightly
stack build --resolver nightly --haddock --test --bench --no-run-benchmarks

I had to "cheat" a bit on that last point of the checklist by running stack init --resolver nightly --solver for the ghc-typelits-knownnat and ghc-typelits-extra package to get the latest ghc-typelits-natnormalise-0.5.9 and ghc-typelits-knownnat-0.4.1 from hackage. I hope/assume I don't have to split this PR into three separate PRs, one for each re-enabled package.


How to change S3DIS testing area(semantic segmentation)?

Dear author,
Thank you very much for sharing this great work.
I am a beginner on semantic segmentation, I have a little question for S3DIS testing, can I change the test area?
For example, the default seem to use Area 1, Area 2, Area 3, Area 4, Area 6 as the training sample, and Area 5 as the test area.
Now, I want to change the training area to Area 2, Area 3, Area 4, ,Area 5, Area 6, and use Area 1 as the testing area.
In training_S3DIS.py and datasets.S3DIS.py I seem to be unable to find the parameters that can be changed, this may be caused by my carelessness.
Thank you again!
I will close my discussion after this problem is resolved.
Best Regards.

Hi @suan0365006,
You can find what you need here:
https://github.com/HuguesTHOMAS/KPConv/blob/07861d8e40244c20ede5a362052e01f61dcc012a/datasets/S3DIS.py#L140-L143
The parameter self.all_splits gives a "split" index to all the clouds and the parameter self.validation_split lets you choose which  split is used for validation. SO in you case you just have to set self.validation_split = 0
Best,
Hugues

Hi @HuguesTHOMAS ,
I got it!
Thank you so much for responding to my email.
Warm Regards.


controller.apiDocumentation() not working as expected

https://docs.arangodb.com/Foxx/Develop/ApiDocumentation.html
I have tried to emulate the above URL exactly but get an error response:
Can't read swagger JSON from http://localhost:8529/_db/MyDB/MyFoxxApp/Test/docs/swagger.json?mount=/_admin/aardvark/foxxes/docu/MyFoxx

Using URL:
http://localhost:8529/_db/MyDB/MyFoxx/Test/docs/index.html?mount=/_admin/aardvark/foxxes/docu/MyFoxx

It works if you leave off the /foxxes/docu/MyFoxx by then its pretty pointless in trying to return API documentation to a 3rd party application.
You might be thinking I could just use the provided URL, but in my situation, the host and database name may change across clients, so I cannot rely on a static URL and host.

Ah, I think the queryParam for mount is missing from the example, meaning req.parameters.mount isn't getting set.

I'm a bit confused about what you're specifically trying to do. The example is for creating a mount point that lets you see the API docs of any mounted app by its mount point.
Are you really trying to get your app to show the API docs of another app mounted at /_admin/aardvark/foxxes/docu/MyFoxx? That seems like an odd mount point.

I'm trying to deliver my fox apps own API documentation via rest to an external client.
I thought the above was the way to do that.
So the "Download API Documentation" link from the ArangoDB interface, I'd like to serve that data to external clients via rest.
The external client basically has host+port+"/_db/MyDB/MyFoxx/"+request
I want the returned result (assming request is to return API documentation) to be the same as the result of hitting the "Download API Documentation" link.

If you only want the Foxx apps' own API documentation, you can use the first example:
controller.apiDocumentation('/my/dox');

The Swagger JSON is then provided at /my/dox/swagger.json (relative to the controller and the app).
The "Download API Documentation" feature in ArangoDB 2.6 is currently linking to the original Swagger 1 JSON. The upcoming 2.7 release will instead provide only the Swagger 2 JSON. There is no way way to get the Swagger 1 JSON outside of the web admin interface and there will be no way to get the Swagger 1 JSON at all starting with ArangoDB 2.7.
In other words, the "/_admin/aardvark/foxxes/docu" routes will go away and be replaced by the same routes used to display the API docs everywhere else.

Thanks! I thought '/my/dox' was some variable, didn't realise I'm supposed actually type that exactly. Its working now, however, the JSON is different from the link on the Foxx ui. No biggy.

@riverdusty Great to hear. Could you clarify what you mean by "different"? If you're using ArangoDB 2.6 or earlier (i.e. not the latest development release) that difference is to be expected as the link would show Swagger 1 JSON, otherwise something weird is going on.

Yeah, I'm on 2.6.2 I think. I'll upgrade and see if its changed at all.
Just checked and /my/dox is swagger 2 while the link is swagger one.

The API-Documentation now is also on swagger2, will be part of arangodb 2.7


18719-18721

Missing Little Flower High School from list.

Little Flower is applicant not location being permitted.


Add build scripts for Angular Elements

this component has been replaced by: https://github.com/sebgroup/magic-iframe


Uses getter instead of lookup

Fixes #32

Looks good, I'm not a travis expert but is this a dependency issue?

I suspect the initializer is crashing the tests before they connect to testem, causing the timeout to occur. In other words, the bug doesn't seem fixed yet.

@mmun @bdvholmes took another look. can't see any initializer crashes, gonna try to add a simple integration test to see if I can surface the issue

@twokul I'll take a look soon! Thanks for raising the issue.


Don't run travis tests twice

Changes Unknown when pulling bba6ce9798501aaa6fe38fbd387a5d5b590c6712 on travis into ** on master**.


Alternative Way For Safe Mode (Windows 10/11

Hey everyone this isn't for the Win utility program but ive figured out an alternative way to access safe mode via Boot the following steps are as follows
Add Safe Mode to the Windows 10/11 Boot Menu
1) Click the start menu type CMD and right-click Run As Administrators
2) Type the following bcdedit /copy {current} /d "Windows 10 Safe Mode" or bcdedit /copy {current} /d "Windows 11 Safe Mode" depending on what operating system you are running
3) Click the Start Menu Type msconfig and press enter
4) Click the Boot Tab, highlight Windows 11 Safe Mode
5) Section Boot Options Tick Safe Mode and Make All Boot Settings Permanent as shown in Screen Shot and click yes to the changes you have applied.

@ChrisTitusTech


[Documentation] Regex for crontab notation

Hi,
I'm working on a frontend which lets the user input a crontime to generate a cronjob for sidekiq-cron in the backend.
I'm validating the string backend-wise with your validate method but do you maybe have a regex for doing the validation in the frontend, too? A good documentation which cron string is allowed would also work, of course.
Typical cron regexes didn't work because of your optional 6 digit syntax and so on..
Thank you in advance!

Hello,
I don't have a regex, sorry.
I don't really have a documentation, but there's the cron parser itself. It's using raabro like the other parsers in fugit.
I hope this will help you.
I am closing the issue but not the conversation. Best regards!


Add syslog facility to service template.

Adds SyslogFacility= to unit template and systemd::service define.
Is this a change you'd consider including? It's useful to me. Maybe others? :)

The build failure doesn't appear to be related to this change, but I didn't dig in too deep.
(ERROR) project_page: The property 'project_page' of type null did not match the following type: string


saving PTI latent vector w projection to npz file

Is this achievable? I want to take result and throw it in here - https://github.com/l4rz/stylegan2-clip-approach
Or is this misguided...it's going to destroy the heart of soul of this repo? When I run the projections from pytorch stylegan2-ada the interpretation is crap. not as good as this repo...

hey @johndpope,
Of course! all you need to do is to use "w_pivot_tensor.cpu().detach().numpy()" and then save it as npz using the savez function from numpy. You can find more details about the usage here
Notice that PTI already outputs the new generator and the corresponding W vectors. In order to achieve what you are asking you need to add a saving operation for the npz output format and add a new output format for the generator. Currently is saved in the classic torch format without pickling ( I have used torch.save() to save the tuned generator).
Another option if you want free-text guided editing is to borrow inspiration from StyleCLIP Optimization. Usage demo can be found here.
In general - you can bypass outputting .npz file and pickling the generator by just changing the input format of the given github repositories. It might be easier (even though both methods should not take a long time)
I have already experimented with free-test editing + PTI. The results were truly amazing, the downside was the sensitivity of those methods to the hyperparameters.


Converting all UIKit packages to be buildable for only tvOS or IOS.

This would allow EZSwiftExtensions to be usable in other platforms (MacOS and Linux)
Checklist

[ ] New Extension
[ ] New Test
[x] Changed more than one extension, but all changes are related
[x] Trivial change (doesn't require changelog)

@goktugyil I need both your blessing and oversight for this change.
The work will be 3 fold.

Add the macros to compile parts of the codebase (in particular anything with UI Kit) only for tvOS and IOS (that is what is in this PR).
Add a build target for macOSX (next phase).
Add a build target for linux (next phase).

          1 Error

:no_entry_sign:
Please, modify only one extension per pull request.

          2 Messages

:book:
Executed 195 tests, with 0 failures (0 unexpected) in 4.451 (4.876) seconds

:book:
Executed 180 tests, with 0 failures (0 unexpected) in 4.076 (4.272) seconds

  Generated by :no_entry_sign: Danger

I think we need input from everyone for this change. I've gone over the code and it looks good for ios/tvos separation.
However I don't have much experience in macos and no experience in linux. So I can't provide much help beyond this step. You probably know everything I know about the subject.
I think not doing all the changes in 1 major version, but doing the 3 changes over versions would be a more stable way of doing things. (If we mess up somewhere, its easier to find the problem if incremental steps are taken)
Also, exactly how many people were asking for macos? And I don't remember seeing linux?

@goktugyil In that case I will take out the second commit for adding the travis target for macOS.
There have been some people. Regardless, this is something we should push for.


logo_url fails to load

(X-CC-Version: 2018-03-22)
When using a custom logo_url the image fails to load throwing the following error:
Refused to load the image 'https://[edited].com/image.jpg' because it violates the following Content Security Policy directive: "img-src 'self' data: https://exceptions.coinbase.com/js https://res.cloudinary.com https://www.google-analytics.com/ https://images.coinbase.com".
The domain is whitelisted in the account settings, so not sure what's the problem.  I guess the Content-Security-Policy has to be relaxed?

This is important indeed. @zlipa did you get around this ?

Nope :\

Has this API seriously not been updated since 2018? 😟

@Mike-E-angelo it feels like it. Maybe you can find a community implementation or perhaps build yours.

@bcdbuddy to be sure I was referencing the server-side API where the version states it is from 2018.  That is, when no X-CC-Version header is applied to requests, the following warning is emitted: Missing X-CC-Version header; serving latest API version (2018-03-22)
FWIW I am working with the unofficial C# version found here: https://github.com/bchavez/Coinbase.Commerce
FWIWx2: I have been spending the past day or so racking my brain around checkouts and charges, and trying to reconcile why charges made by checkouts are different, and cannot be made directly by the API.  The only way to do so is to visit the checkout URL directly with a web client (and not via API).
Anyways, as noted in my other issue I think I have that figured out.  So onto the next fire.
Speaking of which. 😁  As for this issue here.  You might try to upload your image in the Branding image setting in your account.  Then, you can visit a hosted checkout/charge from your account where you should see it.  If you right-click the image and explore its properties, it should be a cloudinary.com address.  Copy that URL and use that for your charge.logo_url property.  Then go back to your account settings and re-upload your previous branding image to restore it.  I am pretty sure the previous cloudinary.com one should still be there for you and you should be able to work around the content security policy in the short term.

Legend


[bug]: fundchannel command hangs due to missing grouped-asset support

Background
I'm running litd in integrated mode, tapd is set to commit 76ec8ac232e1076ff2564928ec3700c72fafd267 on Bitcoin testnet3.
I have recently created a new grouped asset with the command:
tapcli --tlscertpath ~/.lit/tls.cert --rpcserver=localhost:8443 --network=testnet assets mint --type normal --name neo2oin --supply 100000 --meta_bytes 66616e746173746963206d6f6e6579 --new_grouped_asset
I then finalized the batch with:
tapcli --tlscertpath ~/.lit/tls.cert --rpcserver=localhost:8443 --network=testnet assets mint finalize
I then tried to open a channel to another node:
litcli --network=testnet --macaroonpath=~/.lnd/data/chain/bitcoin/testnet/admin.macaroon ln fundchannel --node_key 03e347d089c071c27680e26299223e80a740cf3e3fc4b4237fa219bb67121a670b --sat_per_vbyte 101 --asset_amount 1000 --asset_id 9ce3596b3c88cf41bff26e1931cbc85d17ee19484f5e3e34357c1951d6831814
The ln fundchannel command just hangs. I have attached logs and an LND profile below.
goprofile.txt
2024-06-12_open channel hangs.txt

Looks like you hang waiting for funding ACK? It's the last log line from TCHN subsystem.
151:2024-06-12 06:54:01.313 [INF] TCHN: Waiting for funding ack...
Do you have logs from the other node as well?

weird, couldn't find any funding related logs in your logs

Leo is the initiator (and would be performing funding) Hannah would be accepting the channel

Right, my logs are from when Leo was opening a channel to me.
I can attempt to open a channel to Leo and send those logs if that would be helpful.

Current theory is that the failure is due to the asset being a group key

Main action item here: refactor the existing itest in tapd to use a grouped asset.

I'm on litd 980ee938aa1e7a45633216aff8775ca8d05c12aa now, using the 0-19-staging branch. I have modified go.mod to be on tapd v0.3.3-0.20240617174248-daf9676006b0.
I have a newly minted asset with group key 020d3ee08cadd6e34ab08f9b40d31ef05fc28b14e2bffd4810f35329317b4c9909 that I would like to use to open a channel. I execute litcli --network=testnet --macaroonpath=~/.lnd/data/chain/bitcoin/testnet/admin.macaroon ln fundchannel --node_key 03e347d089c071c27680e26299223e80a740cf3e3fc4b4237fa219bb67121a670b --sat_per_vbyte 101 --asset_amount 1000 --asset_id 9ce3596b3c88cf41bff26e1931cbc85d17ee19484f5e3e34357c1951d6831814
The command just hangs. I have attached my logs from the moment that I execute the litcli ln fundchannel command.
2024-06-20_open channel hangs.txt

I was the receiving node in Leo's attempt to open a channel with asset_id 9ce3596b3c88cf41bff26e1931cbc85d17ee19484f5e3e34357c1951d6831814. I am also running litd using the 0-19-staging branch.
Attached are the logs form my attempt.
lndsecondJune20.log

I'm on litd 980ee938aa1e7a45633216aff8775ca8d05c12aa now, using the 0-19-staging branch. I have modified go.mod to be on tapd v0.3.3-0.20240617174248-daf9676006b0.
I have a newly minted asset with group key 020d3ee08cadd6e34ab08f9b40d31ef05fc28b14e2bffd4810f35329317b4c9909 that I would like to use to open a channel. I execute litcli --network=testnet --macaroonpath=~/.lnd/data/chain/bitcoin/testnet/admin.macaroon ln fundchannel --node_key 03e347d089c071c27680e26299223e80a740cf3e3fc4b4237fa219bb67121a670b --sat_per_vbyte 101 --asset_amount 1000 --asset_id 9ce3596b3c88cf41bff26e1931cbc85d17ee19484f5e3e34357c1951d6831814
The command just hangs. I have attached my logs from the moment that I execute the litcli ln fundchannel command. 2024-06-20_open channel hangs.txt

@Liongrass the litd 0-19-staging branch has now been updated to use the latest tapd and relevant lnd branch.  If possible please re-run your test.

We both upgraded to the latest commit in the 0-19-staging branch (fa32097a4d0deee7e84872690194d18f108cf5a5) but still ran into the same issue. We used the same grouped asset. I have attached my logs below.
2024-06-24_open channel hangs.txt
We'll try again with a non-grouped asset!

My logs from the latest attempt
lndJune24Grouped.log

I minted a non-grouped asset with asset_id 50079900c674b425b40b10d142c86a3cb8e463411e8477998384995e7befe895, but I was unable to open a channel with it nonetheless.
In this case, both nodes were unable to sync to the universe with the command tapcli --tlscertpath ~/.lit/tls.cert --rpcserver=localhost:8443 --network=testnet universe sync --universe_host testnet.universe.lightning.finance:10029 --asset_id 50079900c674b425b40b10d142c86a3cb8e463411e8477998384995e7befe895 with the error 2024-06-24 18:07:20.623 [ERR] RPCS: [/universerpc.Universe/SyncUniverse]: unable to sync universe: unable to fetch roots for universe sync: missing universe id
Logs:
2024-06-24 18:07:20.196 [INF] LITD: Handling gRPC request: /universerpc.Universe/SyncUniverse
2024-06-24 18:07:20.204 [DBG] RPCS: [/universerpc.Universe/SyncUniverse] requested
2024-06-24 18:07:20.206 [INF] UNIV: Attempting to sync universe: host=testnet.universe.lightning.finance:10029, sync_type=issuance, ids=([]universe.Identifier) (len=1 cap=1) {
 (universe.Identifier) issuance-50079900c674b425b40b10d142c86a3cb8e463411e8477998384995e7befe895
}

2024-06-24 18:07:20.225 [DBG] GRPC: [core] [Channel #217] Channel created
2024-06-24 18:07:20.225 [DBG] GRPC: [core] [Channel #217] original dial target is: "<IP_ADDRESS>:10029"
2024-06-24 18:07:20.225 [DBG] GRPC: [core] [Channel #217] dial target "<IP_ADDRESS>:10029" parse failed: parse "<IP_ADDRESS>:10029": first path segment in URL cannot contain colon
2024-06-24 18:07:20.225 [DBG] GRPC: [core] [Channel #217] fallback to scheme "passthrough"
2024-06-24 18:07:20.225 [DBG] GRPC: [core] [Channel #217] parsed dial target is: {URL:{Scheme:passthrough Opaque: User: Host: Path:/<IP_ADDRESS>:10029 RawPath: OmitHost:false ForceQuery:false RawQuery: Fragment: RawFragment:}}
2024-06-24 18:07:20.225 [DBG] GRPC: [core] [Channel #217] Channel authority set to "<IP_ADDRESS>:10029"
2024-06-24 18:07:20.225 [DBG] GRPC: [core] [Channel #217] Resolver state updated: {
  "Addresses": [
    {
      "Addr": "<IP_ADDRESS>:10029",
      "ServerName": "",
      "Attributes": null,
      "BalancerAttributes": null,
      "Metadata": null
    }
  ],
  "Endpoints": [
    {
      "Addresses": [
        {
          "Addr": "<IP_ADDRESS>:10029",
          "ServerName": "",
          "Attributes": null,
          "BalancerAttributes": null,
          "Metadata": null
        }
      ],
      "Attributes": null
    }
  ],
  "ServiceConfig": null,
  "Attributes": null
} (resolver returned new addresses)
2024-06-24 18:07:20.226 [DBG] GRPC: [core] [Channel #217] Channel switches to new LB policy "pick_first"
2024-06-24 18:07:20.226 [DBG] GRPC: [core] [pick-first-lb 0xc002ab1260] Received new config {
  "shuffleAddressList": false
}, resolver state {
  "Addresses": [
    {
      "Addr": "<IP_ADDRESS>:10029",
      "ServerName": "",
      "Attributes": null,
      "BalancerAttributes": null,
      "Metadata": null
    }
  ],
  "Endpoints": [
    {
      "Addresses": [
        {
          "Addr": "<IP_ADDRESS>:10029",
          "ServerName": "",
          "Attributes": null,
          "BalancerAttributes": null,
          "Metadata": null
        }
      ],
      "Attributes": null
    }
  ],
  "ServiceConfig": null,
  "Attributes": null
}
2024-06-24 18:07:20.226 [DBG] GRPC: [core] [Channel #217 SubChannel #218] Subchannel created
2024-06-24 18:07:20.226 [DBG] GRPC: [core] [Channel #217] Channel Connectivity change to CONNECTING
2024-06-24 18:07:20.226 [INF] UNIV: Fetching 1 roots
2024-06-24 18:07:20.227 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2024-06-24 18:07:20.227 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2024-06-24 18:07:20.226 [INF] WTCL: (taproot) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
2024-06-24 18:07:20.227 [DBG] GRPC: [core] [Channel #217 SubChannel #218] Subchannel Connectivity change to CONNECTING
2024-06-24 18:07:20.227 [DBG] GRPC: [core] [Channel #217 SubChannel #218] Subchannel picks a new address "<IP_ADDRESS>:10029" to connect
2024-06-24 18:07:20.227 [DBG] GRPC: [core] [pick-first-lb 0xc002ab1260] Received SubConn state update: 0xc002ab1380, {ConnectivityState:CONNECTING ConnectionError:<nil>}
2024-06-24 18:07:20.533 [DBG] GRPC: [core] [Channel #217 SubChannel #218] Subchannel Connectivity change to READY
2024-06-24 18:07:20.533 [DBG] GRPC: [core] [pick-first-lb 0xc002ab1260] Received SubConn state update: 0xc002ab1380, {ConnectivityState:READY ConnectionError:<nil>}
2024-06-24 18:07:20.533 [DBG] GRPC: [core] [Channel #217] Channel Connectivity change to READY
2024-06-24 18:07:20.622 [DBG] GRPC: [core] [Channel #217] Channel Connectivity change to SHUTDOWN
2024-06-24 18:07:20.622 [DBG] GRPC: [core] [Channel #217] ccBalancerWrapper: closing
2024-06-24 18:07:20.622 [DBG] GRPC: [core] [Channel #217] Closing the name resolver
2024-06-24 18:07:20.623 [DBG] GRPC: [core] [Channel #217 SubChannel #218] Subchannel Connectivity change to SHUTDOWN
2024-06-24 18:07:20.623 [DBG] GRPC: [core] [Channel #217 SubChannel #218] Subchannel deleted
2024-06-24 18:07:20.623 [DBG] GRPC: [transport] [client-transport 0xc000903688] Closing: rpc error: code = Canceled desc = grpc: the client connection is closing
2024-06-24 18:07:20.623 [DBG] GRPC: [core] [Channel #217] Channel deleted
2024-06-24 18:07:20.623 [DBG] GRPC: [transport] [client-transport 0xc000903688] loopyWriter exiting with error: connection error: desc = "transport is closing"
2024-06-24 18:07:20.623 [ERR] RPCS: [/universerpc.Universe/SyncUniverse]: unable to sync universe: unable to fetch roots for universe sync: missing universe id
2024-06-24 18:07:20.624 [DBG] GRPC: [transport] [server-handler-transport 0xc003d4ab40] Closing: finished writing status

I minted a non-grouped asset with asset_id 50079900c674b425b40b10d142c86a3cb8e463411e8477998384995e7befe895, but I was unable to open a channel with it nonetheless [...]

@GeorgeTsagk ran local tests:

Changing the asset mint to be a NewGroupedAsset  seems to be passing the channel funding phase (RPCs return no error, asserts are happy)
It does crash later on though, when asserting that proofs have been uploaded to the universe
^ for this I'm not sure if I should be using some other key for the proof or smth
But def doesn't look like a core issue with the channel funding flow

Current Action

[ ] Add a grouped asset itest -- requiring debugging the universe related dysfunction

fundchannel should no longer indefinitely hang as a 30 second timeout has been added with https://github.com/lightninglabs/taproot-assets/pull/971
Will monitor these user flow to ensure functionality

May have been related to a universe version mismatch as well.

This appears to be the true culprit: https://github.com/lightninglabs/taproot-assets/issues/990

We did try again, both connected to the staging testnet universe, but the command still hangs. I did mint a new asset for this test with tapcli --tlscertpath ~/.lit/tls.cert --rpcserver=localhost:8443 --network=testnet assets mint --type normal --name lollars --supply 1000000 --decimal_display 3 --meta_bytes '{"hello":true}' --meta_type json --new_grouped_asset
We were able to successfully sync this asset from the universe with tapcli --tlscertpath ~/.lit/tls.cert --rpcserver=localhost:8443 --network=testnet universe sync --universe_host universe.staging.lightningcluster.com:10029 --asset_id a8433224c518b7e148073575ef4b6965af78996c87852c7c22992cff3db3b235
I then tried to open a channel with:
litcli --network=testnet --macaroonpath=~/.lnd/data/chain/bitcoin/testnet/admin.macaroon ln fundchannel --node_key 03e347d089c071c27680e26299223e80a740cf3e3fc4b4237fa219bb67121a670b --sat_per_vbyte 16 --asset_amount 1000 --asset_id a8433224c518b7e148073575ef4b6965af78996c87852c7c22992cff3db3b235
I have attached the logs between initiating the channel and the command timing out after 30s.
2024-07-03_open channel hangs.txt

We are both running v0.13.2-alpha.rc2. Below are my logs from the attempt.
lndJul3.log

Closing this, updated the core issue to be tracked in these two issues:

https://github.com/lightninglabs/taproot-assets/issues/989
https://github.com/lightninglabs/taproot-assets/issues/990

When testing with the Megalithic node we hit the same channel open issue, although now we are receiving the timeout error.
Both of our nodes are running on testnet3, using the v0.13.2-alpha.rc2 litd release, and connecting to the testnet.universe.lightning.finance universe.
First I attempted to open a channel to Megalithic using as asset minted a few weeks ago. The logs from that attempt are in the lndJul8.log file.
lndJul8.log
Later Megalithic attempted to open an asset channel to my node using a newly minted asset. Their logs from that attempt are in the lndlogs-after-trying-to-fund-channel.txt file. And my logs from that attempt are in the lndJul8Second.log file.
lndJul8Second.log
lndlogs-after-trying-to-fund-channel.txt


ActiveStorage::InvalidDirectUploadTokenError

Describe the bug
Image uploads are broken in production (and development if you have the S3 credentials).
https://app.honeybadger.io/projects/93997/faults/83242956
To Reproduce
Steps to reproduce the behavior:

Go to /developers/new
Fill out the required fields
Add an image
Submit the form
ActiveStorage::InvalidDirectUploadTokenError is shown in the logs and the form doesn't submit

Expected behavior
The form and image are persisted.
Additional context
Reverting commit 6589f99e129ce4333825c3e33951a07d46d70f1f fixes the issue. This was PR #161, which upgraded from Rails 7 alpha 2 to the release. So something might be going on there?

Fixed by upgrading the Active Storage JavaScript.


[Site support request] https://yourporn.sexy

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2018.08.04. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2018.08.04

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[ ] Bug report (encountered problems with youtube-dl)
[x] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-v', u'http://www.youtube.com/watch?v=BaW_jenozKcj']
[debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251
[debug] youtube-dl version 2018.08.04
[debug] Python version 2.7.11 - Windows-2003Server-5.2.3790-SP2
[debug] exe versions: ffmpeg N-75573-g1d0487f, ffprobe N-75573-g1d0487f, rtmpdump 2.4
[debug] Proxy map: {}
...
<end of log>

If the purpose of this issue is a site support request please provide all kinds of example URLs support for which should be included (replace following example URLs by yours):

Single video: https://yourporn.sexy/post/5b7afeabdc535.html
Single video: https://yourporn.sexy/post/5892936472f8e.html
Playlist: None

Note that youtube-dl does not support sites dedicated to copyright infringement. In order for site support request to be accepted all provided example URLs should not violate any copyrights.

Description of your issue, suggested solution and other information
Hey when i try to download the video from this page https://yourporn.sexy/post/5b7afeabdc535.html , all i get is the vidthumb.mp(trailer) , the program download the first link with the extension mp4 , when i inspect the page i found that ther 19 link with the extension .mp4 aand the video we want is the 19th link can you help and make the programm download the 19th link instead of the first link ?

This looks like copyrighted content. youtube-dl does not support sites dedicated to copyright infringement. Do they have rights to distribute this? If not provide an example URL that does not violate any copyrights.

this URL does not violate any copyrights
https://yourporn.sexy/post/57ffcb2e1179b.html


Custom design not possible

At present, the controls property is typed as List instead of List, so that we are unable to add Gap between forms, or inserting Sub headings or even custom desing like keeping two form fields in a row.

This is being addressed in the next version - 3.0.0 - which is currently in beta. Feel free to have a go at it from pub - https://pub.dartlang.org/packages/flutter_form_builder/versions/3.0.0-beta.9.
There are people who have started using it already in their projects since we are not expecting much API changes when version 3 will be officially released.
Your feedback will be much appreciated.


rollout: Add methods to include client and context

This adds two methods that allows the update of the client and context used for rollouts. The context would become useful when we have to pass a context to the health package.

@ahmetb  We discussed about adding at WithClient function. I went ahead and added a WithContext function too.


Vive les Zenikornes !

Description
Here my contribution to "The Duck Gallery".

You must respect the following conditions

Your contribution must respect the code of conduct
It's your first PR to this repository
You have added your image of the duck downloaded from https://pimpmyduck.zenika.com
You have not changed the image of the duck
The image filename must be your GitHub username (ex: your-username.png)
You are using your own GitHub user and it's the same as the PR author
Into the contributors.js file, the message must be short and respect the code of conduct

If the PR doesn't respect those conditions, it will be closed

You forgot to add your message and username into contributors file.
Please do it if you want your PR merged


Fixed syntax with orderby in RSS Feed YAML files

The issue was causing the orderby column and direction to be pulled in as a single symbol instead of a hash causing a SQL error while generating the feed.
SQL before -
SELECT  "event_streams".* FROM "event_streams" WHERE "event_streams"."type" IN ('EmsEvent') AND (event_type = 'VmPoweredOffEvent') ORDER BY "event_streams"."created_on :desc" ASC LIMIT $1
After -
SELECT  "event_streams".* FROM "event_streams" WHERE "event_streams"."type" IN ('EmsEvent') AND (event_type = 'VmPoweredOffEvent') ORDER BY "event_streams"."created_on" DESC LIMIT $1
https://bugzilla.redhat.com/show_bug.cgi?id=1501265

Gaprindashvili backport details:
$ git log -1
commit 585e4ce4c9251a8ca5da443ff865b94fc863cade
Author: Tim Wade<EMAIL_ADDRESS>Date:   Wed Nov 22 12:03:37 2017 -0800

    Merge pull request #16493 from gtanzillo/rss-yaml-syntax

    Fixed syntax with `orderby` in RSS Feed YAML files
    (cherry picked from commit 5522a1eddb93cc6065efea442adfa7d0a16fc264)

    https://bugzilla.redhat.com/show_bug.cgi?id=1517826

Fine backport details:
$ git log -1
commit 6a23bc9fa0b3493df815b9a3100821dd35992a65
Author: Tim Wade<EMAIL_ADDRESS>Date:   Wed Nov 22 12:03:37 2017 -0800

    Merge pull request #16493 from gtanzillo/rss-yaml-syntax

    Fixed syntax with `orderby` in RSS Feed YAML files
    (cherry picked from commit 5522a1eddb93cc6065efea442adfa7d0a16fc264)

    Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1542577


Move to the jupyterlab-contrib organization?

The jupyterlab-contrib org on GitHub is a good place for community extensions: https://github.com/jupyterlab-contrib
Having this repo there could help increase its visibility.
Let me know what you think @DerThorsten and I can help with the move if you would like to. The process is to create a new issue and follow the template: https://github.com/jupyterlab-contrib/jupyterlab-contrib.github.io/issues/new?labels=transfer&template=transfer-repository-to-this-organization.md

here we go https://github.com/jupyterlab-contrib/jupyterlab-contrib.github.io/issues/38

Fixed by https://github.com/jupyterlab-contrib/jupyterlab-contrib.github.io/issues/38


[cffLib.specializer] Fix generalizer blend

Fixes https://github.com/fonttools/fonttools/issues/1975

@anthrotype Please test. My confidence in this is rather low :(.

@anthrotype Please test. My confidence in this is rather low :(.

I can confirm this fixes your test case.

Ugh. Now varLib CFF2 tests are failing. Looking into it.

Okay, I think this is ready. My confidence is high now, after having fixed the tests.


Add go format check as part of the sanity check

In go, it is very common to format the code with gofmt -s -w file.go. This fix adds the gofmt check as part of the sanity check.
There was only one file tensorflow/go/tensor.go in the whole tensorflow/go directory that is not properly formatted.
This fix formatted tensorflow/go/tensor.go with gofmt -s -w as well.
It is also possible to check the format status in:
https://goreportcard.com/report/github.com/tensorflow/tensorflow
Signed-off-by: Yong Tang<EMAIL_ADDRESS>

Can one of the admins verify this patch?

Thanks for the PR @yongtang .
However, for now let's not do this in the sanity check. We currently don't enforce formatting for C++, Python, or Java in the sanity check and I'd prefer to not to special case go for now.
Happy to accept the change to tensor.go though.
Thanks!

Thanks @asimshankar. I have updated the PR and removed the sanity check part. Only the changes in tensor.go remains in the PR. Please take a look.

Jenkins, test this please.


Correct horizontal coordinates in viewport overflow test

Summary of the Pull Request
When resizing the buffer in the SetConsoleScreenBufferSize and SetConsoleScreenBufferInfoEx APIs, we have tests in place to make sure that the resize doesn't result in the viewport extending past the bottom or right of the buffer (since that can eventually result in exceptions being thrown). Unfortunately these tests were using the wrong X coordinate, so they failed to detect an overflow along the horizontal axis. This PR corrects that mistake.
References
PR #8309 was where the overflow detection was initially added.
PR Checklist

[x] Closes #8453
[x] CLA signed.
[ ] Tests added/passed
[ ] Documentation updated.
[ ] Schema updated.
[ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Detailed Description of the Pull Request / Additional comments
The original code was using the Viewport::EndExclusive method to determine the extent of the viewport, mistakenly thinking that it returned the bottom right coordinates (it actually returns the left coordinate). So I've now added a BottomRightExclusive method to the Viewport class, that actually does return the coordinates we need, and have updated the overflow tests to use that method instead.
Validation Steps Performed
I've manually confirmed that the test case is issue #8453 is no longer throwing an exception.

@msftbot make sure @miniksa signs off on this


import static org.assertj.core.api.Assertions.* clashes with URI (java.net.URI)

Summary
Statically importing AssertJ assertions imports fields from InstanceOfAssertFactories. The URI field shadows java.net.URI and requires fully qualified naming when using java.net.URI.
There's a similar issue for URL as these two types match exactly constant names from InstanceOfAssertFactories.
Example
import static org.assertj.core.api.Assertions.*;

URI.create("http://foo")

Compilation failure:

PagedResourcesAssemblerUnitTests.java:[272,79] cannot find symbol
   symbol:   method create(java.lang.String)
   location: variable URI of type org.assertj.core.api.InstanceOfAssertFactory<java.net.URI,org.assertj.core.api.AbstractUriAssert<?>>

Thanks for reporting this @mp911de.
Thinking out loud, we might simply rename the factories to disambiguate this.

That would help. URI and URL are the only two types where factory constants are clashing. All other types use some sort of different letter casing.

Maybe this should have been part of the 3.13.1 release as well @joel-costigliola, as it seems to break existing code and the field names would need to be changed and removed.

I have a similar impression. Getting this clash out of the way before wide adoption of 3.13.x would be helpful. Once a significant number of projects updates to 3.13 and relies on InstanceOfAssertFactories.URL/URI, the rename will break their code.

Thanks for reporting this @mp911de.
Thinking out loud, we might simply rename the factories to disambiguate this.

@joel-costigliola That would be an option, e.g., having URI_INSTANCE instead of URI.
Or Assertions could avoid to implement InstanceOfAssertFactories. That was introduced to simplify the discovery of the factories, but we realized that for Eclipse was not enough anyway and IntelliJ seems still able to discover them using the smart completion.

Renaming URI to URI_TYPE and URL to URL_TYPE seems the best option. @scordio do you want to tackle this one ?
We will release 3.13.2 at the end of the week just to get a bit more feedback.

@joel-costigliola yes I'll take care of it.


knossosnet: init at 1.0.0

Description of changes
A multi-platform launcher for Freespace 2 Open. This C# version replaces the Python/JS version of Knossos which is no longer maintained. https://github.com/KnossosNET/Knossos.NET
Since this is a .Net program, it should build and run for Windows, Mac OS and Linux. However, this derivation was only built and tested on Linux so may need additional (runtime) libraries for other systems. Additionally, on Linux this program downloads and attempts to run Freespace 2 Open AppImage files, so appropriate support must be configured for this to work.
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[X] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

good news: this project is under active development, bad news: new versions keep getting released
hopefully having a 1.0.0 will slow the next release for a bit


Paginate group membership

https://github.com/dtan4/terraforming/commit/2e55beec569e5e4937f1a655dbc59e7c6c3a6804#diff-590760686c68c2507617371c9719e4d3 paginates groups but not their members

Coverage increased (+0.001%) to 97.346% when pulling 135844fa1ae8586660319a9ee0bb5f705d211630 on stripe:paginate_group_members into 6ae7c37be43127075042e43d33c6548094f8eef6 on dtan4:master.

Coverage increased (+0.001%) to 97.346% when pulling 05b34d202f9aa9e0061cb05da6ff57c5387e1c9a on stripe:paginate_group_members into 6ae7c37be43127075042e43d33c6548094f8eef6 on dtan4:master.

Coverage remained the same at 97.344% when pulling 9d7421a4c10d38a813667afe5e71ae7a083f4b48 on stripe:paginate_group_members into 6ae7c37be43127075042e43d33c6548094f8eef6 on dtan4:master.

Coverage remained the same at 97.344% when pulling 9d7421a4c10d38a813667afe5e71ae7a083f4b48 on stripe:paginate_group_members into 6ae7c37be43127075042e43d33c6548094f8eef6 on dtan4:master.

LGTM 👍 Thanks ❗
Sorry for late review 🙇


Clarify Branch Naming Conventions in Contributing.md

What's wrong with the existing documentation
The current contributing.md file lacks clarity regarding branch naming conventions, specifically in commands where a new branch is created and pushed. This ambiguity may lead to confusion among contributors, particularly those who are new to the project or open source development in general.
To improve the contribution process and ensure consistency, it's essential to clarify which branch names should be used for local branches and which should be used for the forked repository. Providing clear instructions will help streamline the contribution workflow and reduce potential errors.
Proposed Changes:
Specify in the contributing.md file that <local_branch_name> refers to the branch created on the contributor's local repository for their own use.
Clarify that <original_branch_name> (unchanged) refers to the branch on the contributor's forked repository, corresponding to the branch they intend to contribute changes to.
By addressing this issue, we aim to enhance the overall contributor experience and facilitate smoother collaboration within the project.
Add ScreenShots
When creating a new branch on your local repository, use a descriptive name that reflects the purpose of your changes. For example:
git checkout -b feature/scrape-avatar
This creates a new branch named "feature/scrape-avatar" on your local repository, where you can implement changes related to scraping user avatars.
When pushing changes to your forked repository, ensure that the branch name matches the one you created locally. For example:
git push origin feature/scrape-avatar
This command pushes the changes from the "feature/scrape-avatar" branch on your local repository to the same-named branch on your forked repository.
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSoC'24 contributor
[X] I want to work on this issue

@nikhil25803 Please assign it to me. and also tag the issue with 'GSSOC'24' and 'Level' labels.


Ideally the downlevel tests would be a matrix of supported versions.

          Ideally the downlevel tests would be a matrix of supported versions.

Originally posted by @mtfriesen in https://github.com/microsoft/ebpf-for-windows/pull/3421#discussion_r1550048019

Since the selfhosted runners are limited, should we instead use github runners to run kernel regression tests? The only drawback will be that we will not get kernel dumps though, but will allow us to scale.

Along with the matrix of down-level versions, we can also add permutations of tests for each version:

both extensions and native modules from older version -- tested in selfhosted runners.
only extensions from older version -- tested in GitHub runner.
only native modules from older version -- tested in GitHub runner.

@saxena-anurag  - please make these regression tests part of the scheduled tasks, instead or running on each PR to save resources.


Update travis links to point to /pimutils

This link is broken and travis doesn't redirect. :(

Thanks!


✅ add a test to make sure new packages are not added

As mentioned in the README we don't want to add more packages to this repo, so this test adds a layer of hassle to doing so :)

More packages added with #1755 😅


[W7][T08-2] Pang Yong Jia

Implented the RandomCommand which will display a random entry in the addressbook

Please review the comments and close the PR


Provide English CI/CD development info in wiki page

Document some stuffs related to github CI/CD, in Chinese and English.

Chinese is provided in wiki.

This is already done by @liying-000 in the URL. Close it now.


docs: add syntax highlighting, improved formatting & use npx

@tobiasbueschel thanks for the contribution! have added a comment about npx usage.

@all-contributors please add @tobiasbueschel for doc


Fix session selection to actually select the most recently active session.

We were actually selecting the least recently active one.

Created https://github.com/project-chip/connectedhomeip/pull/23263 to see if we can cherry-pick this to 1.0.


Enhance audio metadata access using music-metadata-browser

PR Checklist
Please check all that apply to this PR using "x":

[x] I have checked that this PR is not a duplicate of an existing PR (open, closed or merged)
[ ] I have checked that this PR does not introduce a breaking change
[ ] This PR introduces breaking changes and I have provided a detailed explanation below

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting)
[ ] Refactoring (no functional changes)
[ ] Documentation changes
[ ] Other

Fixes
Issue Number: N/A
Related

#1824 Feature Request: It'll Be Nice To See Visualizations/Album Art When Playing Audio Files

What is the current behavior?
Able to extract metadata from: MP3, FLAC, M4A
What is the new behavior?
Able to extract metadata from: MP3, FLAC, M4A, WAV, Ogg (Vorbis, Opus), WavPack, DSDIFF, DSF, WMA (pretty much every audio format)
Other information
music-metadata-browser is based on music-metadata which is the most advanced and popular metadata parser available today. Simular apps using music-metadata: webtorrent-desktop, webamp, volumio, mediacenterjs and many more.
I am looking forward to work with you. Please let know it you have specific challenges in this area I maybe able to help you with.

This is awesome! Thanks for the PR!
I'll be able to review this tomorrow.

You could consider capturing the metadata at the node/server side (the main process). This has the advantage you could re-use the audio track already downloaded instead of setting up a second download channel.
Even retrieving metadata while downloading is an option. This is done in webtorrent-desktop to display metadata while streaming in the torrent.
The format metadata like bit-rate, sample-rate etc. maybe also interesting to visualize.

@Borewit This looks pretty straight forward but I am not able to get audio working with it. Once the file is downloaded I'm able to see the cover art/track info, but no sound. Streaming is broken too, but that is its own issue that I am going to fix soon.
You can check out lbry://@mime#649f5d766f6ca2db1be249b09e164ffe52939751 for a few different audio file types.
You probably noticed but our new audio player is ~a little~ pretty broken right now. Perhaps you would be interested in finishing that work up? @tzarebczan told me he reached out to you. I'd love to chat more with you! Our video/audio player experience is definitely an area that could use a lot of improvement.
Thanks again for your first PR! 🙂

@Borewit I'm going to close this for now, but I've brought it into my own branch to mess around with. I don't think we are going to ship this new audio player right now anyway so we have some time. Excited to talk more about this when you get more time! I'll reach out on discord if I have any questions.

Alright


validate script should check that the REST Proxy Service API is setup and works OK

as it seems that sometimes thats not the case - see https://github.com/fabric8io/fabric8/issues/6002

its there in 0.4.13 or later now https://github.com/fabric8io/gofabric8/releases


Add practical example for using xfail file

We have a section about the xfail file, and it would be great to include a practical example with its contents and the way to use it.

app handled in #233


Rename to neutral naming

Since this supports Chrome as well as Safari, shouldn't this be renamed to something more neutral? Like cordova-plugin-systembrowserview or cordova-plugin-shared-browser?

Sorry but may I ask: what you mean by "this supports Chrome"? It's a SafariView that is used for this plugin. Is there something like a ChromeView in iOS?!

@pwbs The Android part of this plugin uses Chrome Custom Tabs.

@EddyVerbruggen oooooh... Ok. So I have to have a look at the Android part of this plugin then! Thanks for your answer.


determine how to deal with VanillaIceCream preview API

The latest androidaudioplugin-midi-device-service contains support for MidiUmpDeviceService, but it turned out that it prevents publishing to Play Store, because of use of the preview API (compileSdkPreview embeds such metadata).
Since we haven't published any of the apps to Play Store yet, we can say it does not matter much, but it is itchy.

VIC is not a preview API anymore, so we have migrated to compileSdk = 35.


GitOps with CloudFormation

Create a workflow to lint, detect drift, and do a dry run of a CloudFormation template.

Steps to follow for the React app, store microservice, IAM old microservice, health alert microservice, and all their respective CloudFormation templates:

Clone
Build App
Test
Scan - vulnerabilities, code coverage, code quality
Build Image - put code in a container, store the image in a registry with a tagged version
Deploy - deploy the container from the image registry to a dev environment
Health - do a health check, is the container running?
Git Ops - update the Git repo with the build number, tagged version, and a reference point to the image registry


Fix Clippy issues

Ok, this is a very minor PR since it fixes the simplest issues reported by Clippy.
What changed:

Remove unnecessary return statement in d7753c83e777845835d609337ed6bbc6fd2923d7
Use assert_eq! macros where possible—much better assertion/unit test reporting bb3e583dcaf8b35dfdbc6d1fb63f2bee0475d1b2
Use is_empty instead of length comparison to 0 7175cbc120a5d5c58617a6f99f63be400509abc0
Replace if-branching by a comparison expression 185a8149c4de05b044197e06e145a06984ef30ad
Fix Markdown markup in a docstring c004b1f259e211f42ede8c9e7155690f133b7eb6
Use explicit lossless conversion—see Clippy explanation here 1e11bd1daded1be4b55942be407bc61fcbbed462

Oh, one more thing: I think it's better not to squash this PR since the fixes are pretty orthogonal and it'd be nice to have them separately.

Thanks, great PR. I thought I had my clippy set up to auto run but must have missed some stuff. Appreciate it


MXKRecentTableViewCell: Support user's action on recent cell.

We report the delegate in recent table view cell in order to handle user's actions observed in the cell, like button press or tap gestures.

LGTM


CI/CD & Code File Restructure

A lot of code files currently sit in the root directory which has made it really busy. Lets also automate deployments.

[x] Move code files out of the root directory
[ ] Setup CI/CD on master branch
[x] Setup master branch as protected
[ ] Automated deploy to Web Store

Deciding not going to finish because releases will be too infrequent.


Update README.md

one word added

Codecov Report

Merging #397 (ab43be6) into main (f937f59) will increase coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #397      +/-   ##
==========================================
+ Coverage   54.66%   54.72%   +0.05%
==========================================
  Files          80       80
  Lines        7741     7733       -8
==========================================
  Hits         4232     4232
+ Misses       3509     3501       -8

Impacted Files
Coverage Δ

src/Vis/Visualization.jl
9.35% <0.00%> (+0.15%)
: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 f937f59...ab43be6. Read the comment docs.


Many to Many relation Builder::getTranslationsOf() ErrorException

Laravel Version: 5.4.36
Voyager Version: 1.0.15
PHP Version:5.6.30
Database Driver & Version:

Description:
Many to Many relation
I got an issue when added many to many relationship
(2/2) ErrorExceptionCall to undefined method Illuminate\Database\Query\Builder::getTranslationsOf() (View: /Users/Grzegorz/Sites/laravel-codecreators/vendor/tcg/voyager/resources/views/posts/edit-add.blade.php)
Steps To Reproduce:
make post table and model
make category table and model
create pivot tables
set relationship
And on my web I can see that post has many categories and category has many post
but when I try to edit post through voyager I get this error
(2/2) ErrorExceptionCall to undefined method Illuminate\Database\Query\Builder::getTranslationsOf() (View: /Users/Grzegorz/Sites/laravel-codecreators/vendor/tcg/voyager/resources/views/posts/edit-add.blade.php)
Any help would be appreciated
Greg

Thats probably because posts has custom views.
There is a PR where you can exclude built-in custom views, but thats not merged yet.
You can try to change the BREAD-slug to something different than posts or pages.

@emptynick Thank you!

Hi @emptynick
This issue has not been solved yet, I think. I still have this problem.

Its https://github.com/the-control-group/voyager/pull/2117 but it wont solve the "problem".
The problem is the hardcoded view, which you can simply override (as mentioned in our docs).
You can just put something like this inside:
@include('voyager::bread.edit.add')

I created a custom view to solve this but I thought the sidebar, the navbar and the other elements will be in that custom view but that is not happening, is there a way to use a custom view with including all these other sections?

@SoldierCorp, that is a different problem, most likely related to how you built your custom view.  Please ask in slack or open your own issue with all relevant details, and we'll review there.


[Suggestion] Impling plugin perfecting/fine tuning

I didn't know what was a good title but basically I want to suggest some changes / toggles for the Implings plugin. It's more personal because I thought it was a little too cluttered, so maybe you don't see the point of adding it. But here's what I was thinking of:

Remove the word "impling" (We know its implings right?)
Maybe add a dot / highlight on the impling? (Toggle?)
Toggle option for tile marker under impling (Seth's idea)

Sorry if I sound like a nitpick.

With the dot / highlight I meant as 2 alternative options to the tile toggle. So either show a dot on the implings or highlight them. I don't know how good highlight would look on implings tho.
Highlight & dot can't be active at same time tho.

https://i.gyazo.com/b7c649af0bd28bac948327b64dce231c.png


Ripple of combinedClickable or clickable modifier is not the same as the default ripple

Describe the bug
When adding Modifier.combinedClickable(), its ripple is a little different from that of a default icon button (this video may not show the difference clearly, please try the code below yourself):
https://github.com/JetBrains/compose-multiplatform/assets/29678011/d215c5f1-a549-4b36-a323-24243ec2d193
Setting bounded parameter in rememberRipple(bounded = false) to true or false does not achieve the desired effect either.
Affected platforms
Select one of the platforms below:

Desktop

Versions

Kotlin version*: 1.9.20-Beta
Compose Multiplatform version*: 1.5.10-beta2
OS version(s)* (required for Desktop and iOS issues): Windows 11
OS architecture (x86 or arm64): x86
JDK (for desktop issues): open jdk 17

To Reproduce
@OptIn(ExperimentalFoundationApi::class)
fun main() = application {
    Window(onCloseRequest = ::exitApplication) {
        Row {
            IconButton(onClick = {}) {
                Icon(
                    imageVector = androidx.compose.material.icons.Icons.Default.Add,
                    contentDescription = null,
                    modifier = Modifier.padding(12.dp)
                )
            }
            ///////////////////////////
            Box(
                contentAlignment = Alignment.Center,
                modifier = Modifier
                    .size(48.dp)
                    .clip(CircleShape)
                    .combinedClickable(
                        indication = rememberRipple(bounded = false), // <<<<----------------
                        interactionSource = remember(::MutableInteractionSource),
                        onClick = {}
                    )
            ) {
                Icon(
                    imageVector = androidx.compose.material.icons.Icons.Default.Add,
                    contentDescription = null
                )
            }
            ///////////////////////////
            Box(
                contentAlignment = Alignment.Center,
                modifier = Modifier
                    .size(48.dp)
                    .clip(CircleShape)
                    .combinedClickable(
                        indication = rememberRipple(bounded = true), // <<<<----------------
                        interactionSource = remember(::MutableInteractionSource),
                        onClick = {}
                    )
            ) {
                Icon(
                    imageVector = androidx.compose.material.icons.Icons.Default.Add,
                    contentDescription = null
                )
            }
        }
    }
}

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Deprecate Razor Assembly

Part of: #2599
Description of problem
To support Razor Pages Modules in DNN we need to deprecate the DotNetNuke.Web.Razor assembly and modules. This module pattern is not used by as much as other module types. See Migration plan for how to move forward if you have modules in this pattern
Migration Plan
If you have a DotNetNuke.Web.Razor module you will be able to migrate it to a Razor Pages Module with minimal work since they are very similar.
Reason for Deprecation
In the parent feature #2599 it cites there will be confusion between Razor Modules and Razor Pages Modules. It will be best to deprecated the old pattern as we implement a new pattern.
Description of solution
Add API deprecation warnings to all public and protected APIs

Deprecated in 9.3.1, will be removed in 11.0.0, use Razor Pages instead

Example of DotNetNuke.Web.Razor.DotNetNukeWebPage
[Obsolete("Deprecated in 9.3.1, will be removed in 11.0.0, use Razor Pages instead")]
public abstract class DotNetNukeWebPage : WebPageBase
{
    [Obsolete("Deprecated in 9.3.1, will be removed in 11.0.0, use Razor Pages instead")]
    protected internal DnnHelper Dnn { get; internal set; }

    [Obsolete("Deprecated in 9.3.1, will be removed in 11.0.0, use Razor Pages instead")]
    protected internal HtmlHelper Html { get; internal set; }

    [Obsolete("Deprecated in 9.3.1, will be removed in 11.0.0, use Razor Pages instead")]
    protected internal UrlHelper Url { get; internal set; }

    [Obsolete("Deprecated in 9.3.1, will be removed in 11.0.0, use Razor Pages instead")]
    protected override void ConfigurePage(WebPageBase parentPage);

    [Obsolete("Deprecated in 9.3.1, will be removed in 11.0.0, use Razor Pages instead")]
    public dynamic Model { get; set; }
}

List of Deprecated Assemblies
DotNetNuke.Modules.RazorHost
DotNetNuke.Web.Razor

List of Deprecated Classes
DotNetNuke.Web.Razor.DotNetNukeWebPage
DotNetNuke.Web.Razor.DotNetNukeWebPage<T>
DotNetNuke.Web.Razor.RazorEngine
DotNetNuke.Web.Razor.RazorHostControl
DotNetNuke.Web.Razor.RazorModuleBase
DotNetNuke.Web.Razor.RazorModuleControlFactory
DotNetNuke.Web.Razor.Helpers.DnnHelper
DotNetNuke.Web.Razor.Helpers.HtmlHelper
DotNetNuke.Web.Razor.Helpers.UrlHelper

List of Affected Assemblies
DotNetNuke.Modules.DDRMenu

Affected version

[x] 9.3.1

The only additional recommended action on this is that we include specific instructions on replacement methods/calls if/when possible.  Understanding that it might not be possible at 9.3.1, but should be updated as the new API's come through

@mitchelsellers I agree 100%. I am going to update the parent spec to include a deprecation note that we can maintain as the spec grows. Ideally we will have documentation in the spec in how to migrate from Razor to Razor Pages which will be relatively painless

currently my menus use "@inherits DotNetNuke.Web.Razor.DotNetNukeWebPage"  what does that change too?


Question - Gregorian To Shamsi

Hi,
This is an amzing library. I really loved it
Is this calendar supports converting Gregorian to Shamsi? I want to use this lib for a Persian language based application

Hey @TurKurT656, the library uses Java's Calendar.getInstance() to get and manipulate calendar information, and it does not look like it has support for the Shamsi system. I'm not sure what it would take to support this and would not be confident in implementing a calendar system I'm not familiar with. Help would be welcome and appreciated with this.
In the interim, there are ways to convert Gregorian to Shamsi. For instance, I found this Stack Overflow post after a little searching (http://stackoverflow.com/questions/10378764/is-there-any-library-or-algorithm-for-persian-shamsi-or-jalali-calendar-in-and). Maybe something there can help you?

Thnx for replay.
can we change the localization with help of this answer in StackOverFlow:
http://stackoverflow.com/a/23386074/4254527

The answer you pointed to uses an IBM library that is meant to support different languages and cultures, but isn't directly compatible with the plain Java implementations. That means we'd have to include a very large library, which is not acceptable.
A better solution would be something like the accepted answer to that question, which is a Jalali implementation of Calendar. We could construct a way to supply custom implementations of Calendar for the library to use. Though it would have to be provided either as a constructor parameter or subclassing, since we need calendar information to initialize the widget.