Incorrect bounding boxes

I use the latest release 4.1 with LSTM only and with best traindata files
https://github.com/tesseract-ocr/tesseract/archive/4.1.0-rc1.tar.gz
Just to give an example
The two amounts to the right 528,00 and 72,00 overlap each other in the OCR results but does not overlap in the input image
Here is a link the the preprocessed image (tiff) before sending it to tesseract
https://imgur.com/a/12qqobk
They intersect with 10 px (1353 - 1343) even though they are far from each other
Bounding box for 528,00:
[top] => 1317
[bottom] => 1353
[left] => 2089
[right] => 2218
[width] => 129
[height] => 36
[value] => 528,00
[conf] => 96.28

Bounding box for 72,00:
[top] => 1343
[bottom] => 1408
[left] => 2112
[right] => 2211
[width] => 99
[height] => 65
[value] => 72,00
[conf] => 96.87

What is the line bbox for each?

Its already copy/pasted in above the image :)

We do not support 3rd party sw/project: please provide test case with tesseract executable or simple c++/c test code.

I just use the API
// Open input image with leptonica library
Pix *image = pixRead((input).c_str());

// Initialize tesseract-ocr, without specifying tessdata path
tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
if(api->Init(NULL, "dan+eng", tesseract::OEM_LSTM_ONLY)){
	error("Could not initialize tesseract");
}
api->SetImage(image);
api->Recognize(0);

tesseract::ResultIterator* ri = api->GetIterator();

if(ri != 0){
	do{
		boost::property_tree::ptree child;

		const char* seg = ri->GetUTF8Text(level);

		if(seg && seg[0]){
			int x1, y1, x2, y2, height, width;
			ri->BoundingBox(level, &x1, &y1, &x2, &y2);

		}

		delete[] seg;
	}
	while(ri->Next(level));
}

// Destroy used object and release memory
api->End();
pixDestroy(&image);

And something more.. 7 is recognized as /
In the footer cvr-nr. 29746397 is recognized as cvr-nr. 29/4639/

Check your file https://imgur.com/a/12qqobk  - seems like problem with your prepocesing and not tesseract ;-)

ohh.. my bad :)

Based on my test it is caused by dan : if you use eng only you got correct results:
84 confidence: 96.2841796875 - [2089, 1317, 2218, 1353]; 528,00
89 confidence: 96.73041534423828 - [2112, 1343, 2218, 1408]; 72,00

Ok, but how would that affect my results when the language is danish?

This is really strange, but I play with my test case and not I am not able to reproduce my results from https://github.com/tesseract-ocr/tesseract/issues/2264#issuecomment-466814950...

strange.. but I experience pretty often that the bounding box is incorrect

OK. I reproduce my results:
It is with lang dan and oem OEM_DEFAULT and original image:

Errors you reported as only visible on your prepocessed image:

So problem seems to be your preprocessing (using jpeg? )

@zdenop
What will OEM_DEFAULT affect?
Will it use the legacy engine + LSTM engine?
If so.. So I then have to download the legacy traindata also?

Just a quick reply: I use tessdata_best repository and I did not get any error.
AFAIR if you want to use legacy engine, you should use tessdata  repository

ok thanks.. but why have you linked this issue with "Tesseract 4.0 hangs when processing a particular image #2288" ?
I have another example where the bounding box is incorrect
tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
if(api->Init(NULL, "dan+eng", tesseract::OEM_DEFAULT)){

The last column
[top] => 1364
[bottom] => 1400
[left] => 2085
[right] => 2215
[width] => 130
[height] => 36
[value] => 273,60
[conf] => 96.83

[top] => 1414
[bottom] => 1450
[left] => 2084
[right] => 2215
[width] => 131
[height] => 36
[value] => 410,40
[conf] => 93.13

[top] => 1460
[bottom] => 1505
[left] => 2085
[right] => 2213
[width] => 128
[height] => 45
[value] => 410,40
[conf] => 96.2

[top] => 1514
[bottom] => 1550
[left] => 2086
[right] => 2214
[width] => 128
[height] => 36
[value] => 309,60
[conf] => 96.65

[top] => 1562
[bottom] => 1600
[left] => 2086
[right] => 2301 <--- THIS IS OFF BY 100 PIXEL
[width] => 215
[height] => 38
[value] => 309,60
[conf] => 29.39

Another question.. Isn't here an option where you can tell the OCR engine ONLY to recognize horizontal text and not to try to autodetect the orientation and not trying to recognize vertical text?

This is not support page! Please respect guidelines for posting issue: use tesseract user forum for asking questions/support.

I'm so sorry about that
But what about the bug?

That was pretty arrogant...
You also just closed this issue which obviosly was a bug (2-3 of the most contributing developers on this project even confirmed it was a bug)
https://github.com/tesseract-ocr/tesseract/issues/2103

No it was not arrogant:
#2103 is not bug in tesseract - but wrong usage of API which is bug in YOUR code.
And situation repeat here once again: I proved that problem is not in tesseract but in your pre-processing.
You are asking for free support (in name of calling it "bug") to fix your business problem. So who is acting arrogantly? Me not.
You can ask for support on user forum. Maybe somebody will be willing to help you for free. There are also several (paid) developers who did what you try to do exactly. But they will not share their knowledge for free.

But why doesn't it output the correct bounding box with LSTM engine only? There must be some inconsistency in the code..
The second example shows the same problem with incorrect bounding boxes and I use OEM_DEFAULT as you suggested..

And about the API code that return 1 why does the most contributing developers confirm that it's not possible to handle the cache from the API to avoid this?

Did you test it on original image (not preprocessed) as I showed you above?
Note: there are know issues with coordinates (at least I did not re-test them with current code) e.g. #1712 #2024 #1192, but I expect you read and analyzed them before submitting issue.

I can see there is a difference between the outputs (original vs preprocessed) but there are no distortion between the two boxes that connect the two lines.. but they intersect in the output
Of course the images are not completely equal.. There is a small variation in the pixels.. but not a variation that should change the bounding boxes in the manner it does..
Telling the users that only one specific image would work and not others is just a poor way to ignore there is a problem.. If the arrangement of the pixels make the base of something you can predict and the program doesn't output what you predict = a bug
The better tesseract works and the more robust it is is best for everybody.. I think its a great program and thats why I want to contribute with my experiences


I believe query method inside TestBuilder is wrong...

    /**
     * Add query parameters to the request.
     *
     * @param iterable $query
     * @return $this
     */
    public function query(iterable $query): self
    {
        $this->query = collect($query)->merge($query);

        return $this;
    }

should't it be...
    /**
     * Add query parameters to the request.
     *
     * @param iterable $query
     * @return $this
     */
    public function query(iterable $query): self
    {
        $this->query = $this->query->merge($query);

        return $this;
    }

Hi! Yes you are right - I spotted this bug about a week ago. I've actually fixed it for the next version, which will be released in the next week or so as it's timed for the Laravel 9 release.
I'm going to close this issue as it's already been fixed (just not tagged).


Bug: chainId is incorrect

Describe the bug
chainId shows 0x4, when it should be 43113
Steps

Change network in Coinbase Wallet
Check window.ethereum.providers, find CoinbaseProvider (has property isWalletLink: true), check property chainId.
You can also run provider.request({    method: 'eth_chainId'  });, but the result will be the same.

Expected behavior
On change network in Coinbase property chainId is also changed to the current one.
Version
3.4.0
Additional info
My dApp supports only BSC and ETH, and to make my dApp working properly I need to check chainId in wallet before start, and if it's not supported - change it.

Desktop

MacOS 12.1
Chrome Version 103.0.5060.134 (Official Build) (arm64)

Smartphone
No response

bug

I'm facing the same issue. Regardless which network I choose, I always get back chainId = 1. Coinbase Wallet desktop extension version 2.31.4.

Hi,
The Default Network tab in Coinbase Wallet corresponds to the default network the wallet will connect to when initially establishing a connection with a dapp.
Establishing a connection and then switching your default network will not update the chainId.
Instead, to switch your network and update the chainId, make a wallet_switchEthereumChain request.
Alternatively, remove the currently established dapp connection within settings, and reconnect with your updated Default Network.

Same issue here. My app is not working as expected

Same incorrect behavior observed on our end, the chainId doesn't reflect the selected network on the wallet.

@ccosmincc @Sotatek-HiepNguyen2 @agmitron
We'd be happy to look into this for you
Kindly file a support ticket below
https://forms.gle/VcaSaDQysAwZBQp77


Multiple failures in the "Creating and deploying automation assets..." section of deploy.ps1.....

Hi, deploy.ps1 is 'nearly' working for me but I am getting multiple failures in the 'Creating and deploying automation assets...' section.
All of those errors are below but I believe that they might all originate from the 1st New-AzAutomationAccount : Operation returned an invalid status code 'BadRequest' error at line 576.
I am also getting an error in the earlier Launching Azure CLI sign-in... which might be related and is immediately below.
I have tried twice with the same results.
I am using a Dev Tenant + a Trial Subscription.
These are the only errors I am getting.
The (anonymised) command line I am using is: .\deploy.ps1 -TenantName "MyTenant" -TenantID "xxxxxxxx-xxxx-xxx-xxxxxxxxxxx" -RequestsSiteName "Request_a_Team_App_SPOL_Sitev3" -RequestsSiteDesc "V3 SPOL site for the Request a Team App_Used to store Teams Requests" -ManagedPath "sites" -SubscriptionId xxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx -Location "uksouth" -ResourceGroupName "Request_a_Team_App_Resource_Groupv3" -AppName "Request_a_Team_App_AAD_Appv3" -ServiceAccountUPN<EMAIL_ADDRESS>-UseMSGraphBeta $false -IsEdu $false -KeyVaultName "RequestTeamAppKvaultv3"
Can anybody offer any suggestions as to what is going wrong here please?
Launching Azure CLI sign-in...
Account                         Environment TenantId                             TenantDomain         AccountType

IsaGlobalAdmin AzureCloud  xxxxxxxx-xxxx-xxx-xxxxxxxxxxx MyTenant.onmicrosoft.com User
az : You have logged in. Now let us find all the subscriptions to which you have access...
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:830 char:13

$cliLogin = az login

        ~~~~~~~~

CategoryInfo          : NotSpecified: (You have logged... have access...:String) [], RemoteException
FullyQualifiedErrorId : NativeCommandError

Creating and deploying automation assets...
Automation account already exists - deleting...
Automation account deleted
Creating automation account...
New-AzAutomationAccount : Operation returned an invalid status code 'BadRequest'
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:576 char:9

    New-AzAutomationAccount -Name $automationAccountName -Locatio ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [New-AzAutomationAccount], ErrorResponseException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.NewAzureAutomationAccount

Finished creating automation account
Importing automation modules...
New-AzAutomationModule : The Resource 'Microsoft.Automation/automationAccounts/teamsautomate-auto' under resource group 'Request_a_Team_App_Resource_Groupv2' was not found. For
more details please go to https://aka.ms/ARMResourceNotFoundFix
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:585 char:9

    New-AzAutomationModule -AutomationAccountName $automationAcco ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [New-AzAutomationModule], ErrorResponseException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.NewAzureAutomationModule

Get-AzAutomationModule : The module was not found. Module name: Az.Accounts.
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:587 char:17

...     while ((Get-AzAutomationModule -Name "Az.Accounts" -ResourceGroup ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [Get-AzAutomationModule], ResourceNotFoundException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.GetAzureAutomationModule

New-AzAutomationModule : The Resource 'Microsoft.Automation/automationAccounts/teamsautomate-auto' under resource group 'Request_a_Team_App_Resource_Groupv2' was not found. For
more details please go to https://aka.ms/ARMResourceNotFoundFix
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:591 char:9

    New-AzAutomationModule -AutomationAccountName $automationAcco ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [New-AzAutomationModule], ErrorResponseException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.NewAzureAutomationModule

Finished importing automation modules
Importing and publishing runbooks...
Import-AzAutomationRunbook : The Automation account was not found.
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:598 char:9

    Import-AzAutomationRunbook -Name "CheckSiteExists" -Path "./r ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [Import-AzAutomationRunbook], ResourceNotFoundException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.ImportAzureAutomationRunbook

Publish-AzAutomationRunbook : The Resource 'Microsoft.Automation/automationAccounts/teamsautomate-auto/runbooks/CheckSiteExists' under resource group
'Request_a_Team_App_Resource_Groupv2' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:603 char:9

    Publish-AzAutomationRunbook -Name "CheckSiteExists" -Resource ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [Publish-AzAutomationRunbook], ErrorResponseException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.PublishAzureAutomationRunbook

Finished importing and publishing runbooks
Creating automation variables...
New-AzAutomationVariable : The Resource 'Microsoft.Automation/automationAccounts/teamsautomate-auto' under resource group 'Request_a_Team_App_Resource_Groupv2' was not found. For
more details please go to https://aka.ms/ARMResourceNotFoundFix
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:610 char:9

    New-AzAutomationVariable -AutomationAccountName $automationAc ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [New-AzAutomationVariable], ErrorResponseException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.NewAzureAutomationVariable

New-AzAutomationVariable : The Resource 'Microsoft.Automation/automationAccounts/teamsautomate-auto' under resource group 'Request_a_Team_App_Resource_Groupv2' was not found. For
more details please go to https://aka.ms/ARMResourceNotFoundFix
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:611 char:9

    New-AzAutomationVariable -AutomationAccountName $automationAc ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [New-AzAutomationVariable], ErrorResponseException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Automation.Cmdlet.NewAzureAutomationVariable

Finished creating automation variables
Creating role assignments...
New-AzRoleAssignment : The Resource 'Microsoft.Automation/automationAccounts/teamsautomate-auto' under resource group 'Request_a_Team_App_Resource_Groupv2' was not found. For more
details please go to https://aka.ms/ARMResourceNotFoundFix
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:618 char:9

    New-AzRoleAssignment -ObjectId $global:appServicePrincipalId  ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [New-AzRoleAssignment], CloudException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Resources.NewAzureRoleAssignmentCommand

New-AzRoleAssignment : The Resource 'Microsoft.Automation/automationAccounts/teamsautomate-auto' under resource group 'Request_a_Team_App_Resource_Groupv2' was not found. For more
details please go to https://aka.ms/ARMResourceNotFoundFix
At C:\SwSetup\microsoft-teams-apps-requestateam-master\microsoft-teams-apps-requestateam-master\Deployment\Scripts\deploy.ps1:619 char:9

    New-AzRoleAssignment -ObjectId $global:appServicePrincipalId  ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [New-AzRoleAssignment], CloudException
FullyQualifiedErrorId : Microsoft.Azure.Commands.Resources.NewAzureRoleAssignmentCommand

Finished creating role assignments
Finished automation assets deployment
Deploying api connections...

@IanMartin56 lets try and get you past initial error first which seems to indicate that the Azure CLI is not installed.
Please can you download and install it from here - https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest. Once this is done you will need to close and re-launch PowerShell.
This should solve the 'az login' error where 'az' is a CLI cmdlet.

Hi @alexc-MSFT , I have fixed the issue that I had and the app is now working fully.  Azure CLI was installed but not at the latest version so I upgraded it but that did not fix the issue.  The activity log on the Resource Group showed an error re using an account that was already associated with another Resource Group so I removed all previous instances of Resource Groups and then the script completed successfully and as above the app is now working fully.  Thanks for you help.

Closed due to inactivity - reopen if required


factorio-headless-experimental, factorio-experimental, factorio-demo-experimental: 1.1.8 -> 1.1.10

Motivation for this change

1.1.9: https://forums.factorio.com/94351
1.1.10: https://forums.factorio.com/94371

Factorio demo appears to now have an experimental branch; but it's not packaged in nixpkgs and I think it was (probably?) unintentionally released.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 109366 run on x86_64-linux 1

1 package failed to build and are new build failure:

factorio-experimental: log was empty

1 package built:

factorio-headless-experimental

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 109366 run on x86_64-linux 1

1 package failed to build and are new build failure:

factorio-experimental: log was empty

1 package built:

factorio-headless-experimental


French Keyboard Support

What feature do you want to get added on the base engine?
Hey, I don't really know if I should have wrote that in the bug report but anyways, I've been learning how to use Psych engine recently (you guys did an amazing work btw) and when I went to the chart editor and tried to type a name as a song title I couldn't write down underscores. Every letters work well from A to Z because there's no differences for that between a french keyboard and an english keyboard but when I was typing special characters like - or _ or & and etc what is shown on my screen is a different character, instead of the underscore, its typing a *. On an english keyboard where the 8 is located there is also the * but on a french keyboard where the 8 is located there is the underscore and that's why when I press 8 it types * instead of _
I'm really sorry if that was not clear enough, english is not my first language and trying to explain that is a real struggle.
To test your sight, and reliability, please select the option of what should NOT be requested.
Stage Editor, 6K+ support, and winning icons.

Pretty sure this is a haxe issue so not much can be done

Just as the guy above said


article of a programmar's early stories

https://letterstoanewdeveloper.com/2023/01/09/how-i-got-into-software/

https://github.com/mefengl/what-i-read/commit/19e81fa1d009848275a482e6c73fba84a30a0dd8


Change to not translate unique names

Same as #23964
An incorrect translation has been made in the localized version by machine translation.
※ Machine translation translates parameter name
Evidence: https://github.com/MicrosoftDocs/azure-docs.ja-jp/blob/46eaa617f342fae1970b4d16e3ac5b3791a57e53/articles/analysis-services/analysis-services-async-refresh.md
In the following files, it was made not to make mistranslation by putting proper names in "`".
https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/role-based-access-control/custom-roles.md
This change(enclose parameter names by "`") has no negative effect on the English version.
Please accept this change so that parameter names are not mistranslated in each language in each localized version.
🙏

@changeworld : Thanks for your contribution! The author, @minewiskan, has been notified to review your proposed change.

We are reviewing this pull request.

@Minewiskan - Could you review the proposed changes? Thanks.

#sign-off


Fix uninitialized constant "Error"

Addresses issue https://github.com/thought-driven/bummr/issues/61
This is my best guess as to what the correct resolution to this issue is.
Its what I've been manually hacking into the gemfile on my local machine for a while now. Seems to work.

Thank you for the contribution. I ended up going with a different approach.


Fix environment calculation for symbol captured in the param scope

Consider this repro:
function test0() {
  var k;

  function foo(a = function() { +k; }) {
      a();
      function bar() { a }
  };

  eval('')
  foo();
}
test0();

We're hitting a miscalculation of the environment index when we're attempting to look up the scope for symbol 'k'. In particular, the miscalculation occurs in ByteCodeGenerator::FindScopeForSym. In this function, we walk up the scope chain starting from the body scope of the anonymous function declared in the param scope of foo. Each scope we walk to for a function other than the anonymous function which requires instantiation will increment the environment index. The enclosing scope for the anonymous function body scope is the param scope of foo and the body scope of foo is not in the restored scope chain. When we walk to the param scope for foo, it does not have the must instantiate flag set so we (incorrectly) do not increment the environment index. Back when the body scope for foo was incorrectly enclosing the body scope of the anonymous function, we correctly calculated the environment index because the body scope for foo has the must instantiate flag set. Now that param scope for foo is in the scope chain instead of body scope, we need to mark the param scope as must instantiate so this lookup is correct.

LGTM


Issue53 thread safety

Coverage increased (+0.1%) to 96.463% when pulling d6dd21b9dedaf3cbf97982d9625c9fd05da6501c on Issue53_ThreadSafety into f564f0216ee290f228229023faa74d19730a64af on develop.

Coverage increased (+0.1%) to 96.463% when pulling 5c1200925915dbbc6c8ccca80af65a362ca8b7c1 on Issue53_ThreadSafety into f564f0216ee290f228229023faa74d19730a64af on develop.


Feature request: support Prometheus output

ISSUE TYPE

Feature Idea

SUMMARY
Not sure if TS has same functionality with BigStats,but hope  TS can  provide Prometheus output for better monitoring

Hello @jenningsloy318.  Thanks for the feedback, internal ID 141 opened to track this.

Hi @jsevedge
Can you please update the progress of prometheus support?

@jsevedge we would also be interested in this, are there any updates?

Same here it would be very interesting to output the metrics to telegraf, this way you can consume it by Prometheus, Kafka and thus multiple other destinations. However you can already do this with statsd and forwarding it into telegraf which is then scraped by Prometheus.

The internal product backlog item for this has changed to AUTOTOOL-1169. The feature should be available in version 1.12.0.

This was resolved with the 1.12.0 release. Closing.

@dstokesf5 Thanks for the notification and closure we will try this for sure!


Don't work with horizontal scroll

Hello,
Just to notice that on website with horizontal scrolling, the parallax effect doesn't work.
Best regards,

Yes you're right. That could be a thing to add, but maybe quite complex. Keep it open for now.


initial boilerplate for new project plugin

@briandealwis

Currently dying at
org.apache.maven.InternalErrorException: Internal error: java.lang.RuntimeException: org.osgi.framework.BundleException: Bundle com.google.cloud.tools.eclipse.appengine.newproject cannot be resolved
Resolution errors:
Bundle com.google.cloud.tools.eclipse.appengine.newproject - Missing Constraint: Import-Package: org.eclipse.ui; version="0.0.0"
something about MANIFEST.MF may be off

Travis is now passing. Everyone PTAL

lgtm


Cover referesh and playlist bug

Hi Lei, just found two bugs:

When I am playing a song with the now playing screen open, I turn off the screen, then it changes to the next song (or I change it) and if I turn the screen back on, the cover of that new song is not updated, only the name, and I have to touch anywhere on the screen to update the cover.
Even If I trying to delete cache and reinstalling the app, only let me download one full playlist, when the download it’s complete, I can’t download any other playlist, when I click the download button don’t do anything or only download 2 random songs in the middle (i found that always the same two).

thanks!

Hey @PauFCB, thanks for the report as always. I'll take a look and see what I can do. As for the second issue, this may be due to some inefficiencies with large playlists. I assume the first playlist is pretty large in this case, right?

Yes, and now I can’t download anyone as the playlist grow over 100 songs


As a marketing department employee I want to produce a report showing all the cities in the world organised by largest population to smallest so that I can support and influence business decisions of my organisation (for example when it comes to launching/testing a new product).

Done #88


Chore:Bumps Storybook to 6.3

With this pull request the Storybook version is bumped to 6.3

Created a reproduction here


Going back from a stocks view flashes the screen

This is very obvious if you set a high timeDilation. Tap a stock row, wait, hit back.

Fixed in https://github.com/flutter/engine/pull/2259


Add imrosun

Related issue

What changes does this PR do?
Screenshots (If any)
Questions

@imrosun I am closing this PR as I see you have already created #1206 with the required changes. If you have any doubt please let me know 😄


Few Issues I've Came Across.

Pretty self-explanatory so I'll list them below.
#1 - If a player runs out of stamina in survival mode they won't be able to sprint in creative until they've waited it out to replenish in survival.
#2 - If hunger is disabled, even if the player is already at full health, they can continue to eat.
That's basically about it, though I have 2 minor suggestions: Add a delay config option for the time it takes to start replenishing the stamina bar after sprinting/swimming & an option to disable the inability to sprint at all if the bar has hit zero/and having to wait till it fully fills.
Just wanna say that I love the mod, so keep up the great work!

Hi!
Thank you for your return!
The issues are fixed in the newer version. I also implemented your suggestions!


Question regarding encoder-decoder coupler

Hi there, I have a question regarding the encoder-decoder coupler suggested in the examples here. My question is specifically regarding the decoder.
At the first time step, the decoder accepts the final embedding outputted by the encoder. After this first time step, the input for the next step is the decoder's output from the previous time step.
The way I have implemented a similar model in the past in Python, worked such that the final input from the encoder is input repeatedly to the decoder at each time step. My understanding is this is very useful to make sure the decoder is consistently addressing the encoded vector, rather than greedily generating sequences according to it's own output.
Have I understood the implementation correctly? If not, where is my understanding wrong? If so, what would be the best way to pass the encoded vector repeatedly to the decoder, rather than passing it's own outputs back into the next time step?
For example, would one solution be to decorate the decoder with nn.Repeater(), rather than nn.Sequencer()? If this is the case, do you know if there is an example implementation of this using the library?
Thanks!

@cjmcmurtrie You could use ZipTableOneToMany to build a new input input sequence as you described. You stack a nn.Sequencer(nn.JoinTable(...)) to concatenate each time-step into a single table before feeding the sequence to your rnn.

@nicholas-leonard This would be useful if you wanted the output sequence to have a fixed-length, decided (probably) by the length of the input sequence. But if you are mapping sequences of different lengths, I think pre-constructing the sequence for the decoder is not the best way.
Have I misunderstood the purpose of nn.Repeater? The documentation states that this decorator is useful for convolutional RNN implementations. With convolutional RNN encoder-decoder models, you are usually feeding an image encoding repeatedly to a language model...

@nicholas-leonard  Could you give me an example like @cjmcmurtrie  describe? I aslo find this is a problem

@cjmcmurtrie You can use Repeater if all you are doing is repeatedly forwarding the same input through an rnn for a fixed number of time-steps. Is this what you need for decoding?
@douwekiela @cjmcmurtrie @htw2012 @cheng6076 Could you provide a link to some articles that describe such decode-encoder implementations? Ideally, the paper uses a publicly available dataset of tractable size. The objective would be to provide a more complete end-end example that reproduces a paper.

@cjmcmurtrie @htw2012
There are many ways to build an encoder-decoder architecture. To start with, I would recommend the paper 'Skip-thought vectors'. The most standard way is to use separate encoder and decoder to respectively process the source and target sequence, where the last hidden state of the encoder is used to initialise the first hidden state of the decoder. During training when we have access to the target sequence, we can feed the true word as input to the decoder; while at time time we need to feed the previously predicted word. To mitigate this gap we can use scheduled sampling as in this paper 'Scheduled sampling for sequence prediction with recurrent neural networks'.  Of course, it also makes sense to feed the encoded representation as an additional input to every hidden state of the decoder, it is more like a design choice to me. Besides, you can use attention to derive a soft alignment between encoder and decoder, as in the paper 'Neural machine translation by jointly learning to align and translate'.

@cheng6076  That's great.
Maybe in 'encoder-decoder coupler',we can do a test procedure whch regard the previous decoder ouputs as current decoder inputs in the example.We can change the train like the test in model.
When I implement it, I need change code like here:
dec:zeroGradParameters()
-- Forward pass
local encOut = enc:forward(encInSeq)
forwardConnect(encLSTM, decLSTM)
local decOut = dec:forward(decInSeq)
decInSeq need to be replaced by previous decoder output, but I can't get the decoder output at each time. Is there any way I can do it?
@cjmcmurtrie @nicholas-leonard @cheng6076 @douwekiela

@htw2012 You can feed in one time-step at a time with remember('both'). Feed the predicted output as the next input. So basically, your decInSeq will be a table containing one element (the previous output).

I rewrite the code like  following:
local numRecords = encInSeq:size(1) --- this is batchSize
local max_out = encInSeq:size(2) ---this is vocabSize
local decOut = torch.Tensor(numRecords,max_out,lastEos)
local criterion = nn.SequencerCriterion(nn.ClassNLLCriterion())
for num =1,numRecords do
encLSTM:remember() --
decLSTM:remember()
local decOutSubTable = torch.Tensor(max_out,lastEos)
local curLineEncInSeq = encInSeq[num]
local curLineEncOut = enc:forward(curLineEncInSeq)
forwardConnect(encLSTM, decLSTM)
local output = torch.Tensor{lastEos}--feed the start sign to decoder first,and reuse it.
for i = 1, max_out do
local curDecOutputSeq = dec:forward(output)
local predicSeq = curDecOutputSeq[1]
decOutSubTable[i] = predicSeq
local prob, preds = predicSeq:sort(1, true)
output = torch.Tensor{preds[1]}---this decoder output as next time input
if output[1] == lastEos then
break
end
end
decOut[num] = decOutSubTable
--    enc:forget()
--    dec:forget()
decOut = nn.SplitTable(2,1):forward(decOut) --
local err = criterion:forward(decOut, decOutSeq_testNew)--decOutSeq_testNew is  equal to  nn.SplitTable(2,1):forward(decOutSeq)
end
I found that my implement is a little complicated.At the same time, I have some question want to ask you:
1.I don't know how to use the 'remember()' or forget()  at proper time.
2.How to use you mention remember('both')  to implement it? I am very looking forward to your solutions.
3.I don't know where is my error in procedure that it isn't  convergent in encoder-to-decoder testing stage .Could you give me some suggests?Thank you in advance.
@nicholas-leonard @cjmcmurtrie @cheng6076

use forget between independent sequences. It basically zeros the previous hidden state h[t-1]. Use remember to tell the Sequencer to not call forget before each call to forward.
You seen to be using it the right way in your above example.
What kind of error do you get?

I just found my model's loss decrease in training stage,but decrease in test stage.It is not overfit because the test loss  increased at early time.So I suspect that my test procedure has some errors in it. @nicholas-leonard

@htw2012 Make sure you applying the same kind of logic in training than in testing.

@nicholas-leonard  Using encoder-decoder model,the train stage is different with test stage.Because the train step can use stardard input as decoder input,like the code in (local encOut = enc:forward(encInSeq),but the test step we can't get the stardard 'encInSeq' as decoder's input,we just can use the previous decoder's ouput as current decoder's input.
So, that's different in encoder-decoder model.Could you have some suggestions about this model?

My code is a little trivial to rewrite in test stage.Owing to we use 'Sequencer' to forward a input sequencer,but when we need present one element at a time like 'AbstractRecurrent' does, it is not convenient like AbstractRecurrent'.So any good solution to solve it? @nicholas-leonard

You can use Sequencer to forward one time-step at a time :
rnn = nn.Sequencer(rnn)
rnn:remember('both') -- so it doesn't call forget before each forward
for t=1,seqlen do
    local input = {inputs[t]} -- sequence of one time-step
    rnn:forward(input)
end

Yes, I can do it .   Thanks. @nicholas-leonard
rnn:remember('both') is  that the Sequencer will not call forget at the start of each call to forward. I don't know whether it will affect next  sequence?
During my training I did not actively call remember method in forward ,and the backward I also do not call forget method.Then I do the test, at first of sequence I call remember method,at last of sequence I call forget method. Is it ok?

With remember('both'), call forget() between independent sequences. So call remember() once. But call forget() before each new sequence.

Hi, as a beginner with torch and LSTM, I am wondering how the input and 'remember()' works (Apologize if the raised questions are simple ones :D).  For example, suppose
input = torch.Tensor({{1,2,3,4,7,0,0,0},{5,4,3,2,1,7,0,0}})
LSTM=nn.Sequencer(nn.LSTM)
LSTM:remember()
LSTM:foward(input)
Does the code above train two different LSTM networks due to two independent sequence are fed? If without calling 'remember()', or calling 'remember(both)' means only one LSTM is trained, with inputs of the second sequence start to train with hidden layer from first sequence?
Any of your help would be highly appreciated!! @nicholas-leonard  @htw2012 @cheng6076  @sisirkoppaka

@cjmcmurtrie  Have the question solved? I also have the same problem with the attention version.


make iter showable

Pull Request Test Coverage Report for Build 2229
Details

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

Totals

Change from base Build 2228:
0.0%

Covered Lines:
3655

Relevant Lines:
4013

💛  - Coveralls


invoker it tests

Codecov Report
Patch and project coverage have no change.

Comparison is base (563f92e) 47.34% compared to head (9951f50) 47.34%.

:exclamation: Current head 9951f50 differs from pull request most recent head b9f280e. Consider uploading reports for the commit b9f280e to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff            @@
##             master      #39   +/-   ##
=========================================
  Coverage     47.34%   47.34%
  Complexity       62       62
=========================================
  Files            14       14
  Lines           226      226
  Branches         14       14
=========================================
  Hits            107      107
  Misses          111      111
  Partials          8        8

Impacted Files
Coverage Δ

...in/java/ru/milan/interpreter/MilanInterpreter.java
0.00% <0.00%> (ø)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

@rultor merge

@rultor merge

@l3r8yj OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@l3r8yj Done! FYI, the full log is here (took me 1min)


ocamlPackages.camomile: add v2.0.0

Description of changes
The OCaml package Camomile used to be at yoriyuki/camomile. There is now a fork ocaml-community/camomile that provides a v2.0.0. This is the one included in OPAM and therefore I think this is the one we should follow in nixpkgs.
Because the API changed so much between Camomile v1 and v2, and because some other packages depend on Camomile, I decided to rename ocamlPackages.camomile into ocamlPackages.camomile_1 (following the change in other packages) and to add a new ocamlPackages.camomile package containing v2. I am not sure if that is the right way to do things.

Release: https://github.com/ocaml-community/Camomile/releases/tag/v2.0.0
Change log: https://github.com/ocaml-community/Camomile/blob/v2.0.0/CHANGES.md
Changes: https://github.com/ocaml-community/camomile/compare/d7d8843c88fae774f513610f8e09a613778e64b3...v2.0.0

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 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

[ ] Fits CONTRIBUTING.md.

v2 commit should be able to remove the Soupault patch for camomile_v1
toastal ไข่ดาว | https://toast.al
PGP: 7944 74b7 d236 dab9 c9ef  e7f9 5cce 6f14 66d4 7c9e

Superseeded by https://github.com/NixOS/nixpkgs/pull/257196. I think this PR should be closed, but some changes involved in it might be to be re-implemented somewhere else.


Issue with k8s.io/docs/setup/production-environment/container-runtimes/

fixes #14944
change cri-o version

/assign @rajakavitha1

/approve
/lgtm


I cannot set the default icon of the push notifications in AndroidManifest.xml.

First I added the following in AndroidManifest.xml
<meta-data         android:name="com.google.firebase.messaging.default_notification_icon"         android:resource="@drawable/ic_stat_ic_notification" />
I generated all icons in this platform and put them in the drawable folders.
But the default icon in the app continues that gray square icon.
Please, someone can help me?

Please, someone can help me?
I'm using the following icons in the drawable folders:
ic_stat_ic_notification.zip

My suggestion: Use android studio to generate your notification icon.
Right click on 'res' folder -> New -> Image Asset
From what I've tried, it seems that the name of the image must be notification_icon
After that, edit your AndroidManifest.xml accordingly here.
I have attached some screenshots to help navigate in Android Studio.

Hi @tingzhouu
I followed your step, but still see the square icon.

What should I do now?

I found solution.
Should name notification icon name to "notification_icon" according to the source code.(lib/android/app/src/main/java/com/wix/reactnativenotifications/core/notification/PushNotification.java)
int iconResId = getAppResourceId("notification_icon", "drawable");
But if we can set icon via postLocalNotification() function, it will be more helpful.
Anyway Thank you all.

I did the same.
Change name to notification_icon and added in drawable but no luck.

@theromie

please check the following code is in AndroidManifest.xml

<meta-data
      android:name="com.google.firebase.messaging.default_notification_icon"
      android:resource="@drawable/notification_icon" />

following this comment  https://github.com/wix/react-native-notifications/issues/533#issuecomment-601513113

Hope it would be helpful

@Great-hijack Thanks, It works after creating image from Android Studio

I guess this should be add to documentation:
Setting the icon and color:
Drawable folder:
Add your notification icon named as notification_icon.png
colors.xml
<color name="colorAccent">Your color hex here</color>
AndroidManifest:
<meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@drawable/notification_icon" />
<meta-data android:name="com.google.firebase.messaging.default_notification_color" android:resource="@color/colorAccent" />

After 2 hours of trying all sorts of places to put and reference the notification icon, I would strongly be in favor of putting this to the docs


[BUG]: Cart page item removed prize not change

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?

In this project Cart page  i will try to product remove the prize cannot reduce .
please assign me..

Video
Screencast from 2024-07-07 08-03-21.webm
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

@sivaprasath2004 Assigned


Added 'Wave' model as an example

Actually is a copy of the 'Post' model

I am sorry for not accepting this but at this moment the amount of models in this project are enough, I want to focus on getting this running as smoothly as possible before adding a lot of new models.
I hope you understand!


How do you get all revisions of a document?

Using the fetchDocument API from Collections and want to have it return all the revisions (_rev) of the said document.  Is this possible?  There is a 'rev' parameter, but that is looking for a specific revision string and if I can't get all the _rev strings, I don't know what this value is.
If I use the "queries" tab in ArangoDB UI and use the following query of a document with multiple revisions it displays all the revisions:
For u in collectionX
filter  u.name=="xxx"
return u
Thanks in advance.

Hi,
There's no history of revisions, _rev simply changes when you change the document. This allows you to know when a change has been applied and recache the document if needed.

ArangoDB itself doesn't support accessing multiple versions of a document. Thus, _rev can be only use to see whether a document has meanwhile been changed, not to get older revisions.
Closing this as unsupported.


Fix deprecated Python timing in benchmark & give more error info.

Note: process_time gives CPU time used and perf_counter is absolute time used.
Looks to have noise of about 1-2%.

I already sent a PR #796 .

Ok. I was fixing locally. You used perf_counter, but I think process_time should be more accurate.

Even the name says otherwise.

According to the docs:

time.perf_counter() → float
Return the value (in fractional seconds) of a performance counter, i.e. a clock with the highest available resolution to measure a short duration. It does include time elapsed during sleep and is system-wide. The reference point of the returned value is undefined, so that only the difference between the results of consecutive calls is valid.
time.process_time() → float
Return the value (in fractional seconds) of the sum of the system and user CPU time of the current process. It does not include time elapsed during sleep. It is process-wide by definition. The reference point of the returned value is undefined, so that only the difference between the results of consecutive calls is valid.

https://docs.python.org/3.8/library/time.html?highlight=perf_counter#time.perf_counter
We're not interested in non-process time. Unless the Python docs are wrong, process_time() measures the time the process spent, no?

You're right.

Any reason not to merge this? I keep having to re-apply in branches.

@billyquith I have many PRs that weren't merged yet 😄 Let's not pressure @ruby0x1 .

I'm working through 0.4 stuff atm and will check on these soon.

I'm waiting with patience 😺

Thanks!

Thanks!


Update parent_as example

Hello all, I noticed the new parent_as feature was added - really awesome!
I was playing with it via ecto_sql, I could be wrong but I think the example doesn't work / make sense. I think it should be a lateral join?

The wiki is maintained by the community. So if there aren't any up to date instructions, we recommend you to explore the solution yourself and hopefully contribute your findings back!

Oops, wrong message. Here is the correct one: :green_heart: :blue_heart: :purple_heart: :yellow_heart: :heart: :D


Renaming "parts" to "part_set_header"

Summary of changes:

Renamed parts to part_set_header in block::Id (Domain Type)
Re-generated MBT test files to reflect this change
Remaining: @thanethomson will update the RPC JSON test files

[ ] Referenced an issue explaining the need for the change
[ ] Updated all relevant documentation in docs
[ ] Updated all code comments where relevant
[ ] Wrote tests
[ ] Updated CHANGELOG.md

Woohoo!! @thanethomson  Thanks! That's a lot of JSON files 😀


Document banned npm names

See also #349 and #350. As soon as an official decision for this issue exists, that should be referenced in the docs as well.

Please see https://github.com/microsoft/DefinitelyTyped-tools/pull/381.


Port bessel functions from scipy

(opening a draft PR in case someone wants to help bring this to completion)
This PR adds most of the bessel functions to rascaline, porting them from scipy/cephes. These functions will be needed for a native implementation of the LE basis, and to implement numerical integration in the radial integral.
The main thing missing is a set of tests for the jv  and yv bessel functions, for input values all over the range where these functions are defined, and triple checking around any poles/special points.

This is very useful for the LE basis and the monomials!
Are we exporting these to Python as well? We need these functions for the tabulated splining if we don't want to add scipy as an additional dependency. Unfortunately, we would also need the derivatives as defined i.e. in scipy.special.spherical_jn.

Exporting these to Python was not really the plan since we are not in the business of providing special functions implementations (and actually most of this code would be better in a separate special-fn crate). I would rather add an optional dependency on scipy for this.
The idea for these was more to provide "creation of arbitrary radial basis splines" directly on the Rust side, or a pure Rust implementation of the LE basis.

Okay I see. I am asking because I am doing a general SplinedRadialBasis class in Python which will include LE and monomials.


tctl plugins

Author: Dominik Tornow, Ruslan Aksenov
Summary of the feature being proposed

Extend tctl with plugins (like kubectl)
Eventually, provide a plugin directory (like krew)

What value does this feature bring to Temporal?
tctl provides the core apis to interact with temporal. tctl plugins provide additional behaviors, possibly combining and/or extending the core apis.
A tctl plugin is a standalone executable, whose name is prefixed with tctl-, located anywhere on the PATH. For example, the command tctl foo will invoke the plugin tctl-foo if the executable tctl-foo is located anywhere on the PATH.
Example: Plugin tctl-foo
#!/bin/bash

# optional argument handling
if [[ "$1" == "version" ]]
then
    echo "1.0.0"
    exit 0
fi

echo "I am a plugin named tctl-foo"

$ tctl foo version
> 1.0.0

$ tctl foo
> I am a plugin named tctl-foo

Note
Any Similarities with kubectl are completely and entirely not accidental.
Are you willing to implement this feature yourself?
The temporal team

I feel like this proposal requires some use cases to understand the motivation behind it.

This seems like an interesting idea for being able to extend tctl for unknown use cases. I could see it being handy for ex. implementing the client side of a custom auth scheme.
Replicating what kubectl seems like a decent model to start with. It's probably overkill, but have you looked at doing something similar to what Hashicorp does for plugins? The immediate downside is the complexity inherent in writing a plugin, but being able to communicate back and forth with a plugin beyond just executing it could be useful depending on the use case.

We already use Hashicorp plugin for DataConverter.
For me, plugin is something that leverages the core program capabilities. The proposal executes each plugin completely independently. How each plugin is going to benefit from some shared features like auth, etc.?

The proposal executes each plugin completely independently

Correct, each plugin executes independently

How each plugin is going to benefit from some shared features like auth, etc.?

A common pattern in the context of Kubernetes is that the kubectl plugin itself calls kubectl, therefore executing "in the current kubectl context".
This is not a "deep" but rather a "shallow" integration. However, on the flip side, plugins are simple to develop and distribute
An example could be a custom visualization of a workflow history:
tctl-visualize
#!/bin/bash

tctl workflow showid $1 | custom-visualization -f png -o $1.png

tctl visualize 3ea6b242-b23c-4279-bb13-f215661b4717

I like the subprocess approach for simplicity. It allows language flexibility (on both sides -- maybe one day tctl gets the Rust treatment).
The downside, which Max gets at, is exposing everything a plugin might ever need as stdout from tctl possibly requires a lot of commands that no user would ever call directly, and on top of that introduces all these parsing concerns.
To oversimplify a bit: Either your problem is somewhat trivially solved (Output from tctl is simple), or you have to parse a lot, or you modify tctl to have simple output for specifically what you're trying to do (obviating the point of a plugin in the first place).
Not to be too obnoxious, but maybe this is a really good fit for WASM. tctl can run plugins using https://github.com/wasmerio/wasmer-go  -- those plugins could make used of a defined set of functions tctl exposes which can represent its public interface: https://docs.wasmer.io/integrations/examples/imports-and-exports - Long run we could also easily offer a precompiled set of plugins that ship with tctl or a registry. This works in both Go and Rust, but is a bit prettier in Rust (mainly authoring plugins).
Anyway, just some ideas to throw out there.

Just seeing this now, one benefit of using a plugin approach over a separate process approach is leveraging all the flags in tctl already. For example, I personally would like a "with client options" plugin that receives client options based on the normal tctl commands. Right now I have to copy existing tctl approaches for client options.
I don't think you want everything a plugin ever needs. Instead define the types of plugins and/or plugin options as needs arise. I think a clear need at least at first is the ability to receive all the options needed to connect to the Temporal server from other processes using tctl as the frontdoor w/ consistent flags.

After self-reflection, I recant my above statement and support sub-processes like kubectl does.

discussed directly with people in this thread and ended up with the sub-processes approach. Binaries in PATH that have tctl- prefix will be considered tctl plugins

fyi this is technically implemented in tctl v2 https://github.com/temporalio/tctl#trying-out-new-tctl-v200-beta-with-updated-ux
There are still some UX improvements i want to make before documenting the feature / closing the issue

We're working on replacing tctl with https://github.com/temporalio/cli, so this will unfortunately not be worked on. If there are specific/motivating use cases for plugins for Temporal CLI, I'd be happy to consider them in a different proposal, but I'd like to see some concrete examples that illustrate why a plugin approach is preferred to wrapping Temporal CLI in a shell script (for example).
Also, I'm much more comfortable with simple solutions that allow plugin authors to use their preferred languages, tooling, etc., all of which necessitates a separate process. More heavyweight or "framework-y" type designs would need a correspondingly more compelling use case, because they are much harder to develop and maintain.


Rearrange CVAT labels

i need to rearrange a pre-entered labels in CVAT without affecting the annotations made . is there any way to do that ?

Hi @omarreda14
Could you please clarify what do you mean on "rearranging pre-entered labels"? It would be great if you provide an example.

Hi @omarreda14
Could you please clarify what do you mean on "rearranging pre-entered labels"? It would be great if you provide an example.

i had entered the classes labels in an order , let's say :
0-person.
1-car.
2-cash.
3-bags.
and then exported the annotated files in YOLO format , but now i need to rearrange
the classes names to a new order , let's say :
0-car.
1-bags.
2-cash.
3-person.
to fit the exporting file to my model .

There is no way to do it automatically in CVAT. You probably can open exported data and try to amend them manually.

Hi, you can try to use Datumaro for this. Check this answer: https://github.com/openvinotoolkit/datumaro/issues/256#issuecomment-858052945

@omarreda14 , as Maxim said, you need to use Datumaro framework to transform your data. The framework is responsible for import/export of datasets inside the data annotation tool. CVAT isn't going to support such specific cases because in general there are too many possible transformations.


Figure out npm module name

Right now the module is called @google-cloud/profiler. Is that the name we would like to publish this as, or do we want be consistent with Trace and Debug agents and call this @google-cloud/profile-agent (profiler-agent?).
What is going to the name of the future veneer client library for the profiler api?
How is the agent named in other languages?
/cc @JustinBeckwith @jmdobry @lukesneeringer @aalexand

In Go the package is named "profiler". The Java binary name
is cloud_profiler_java_agent.so. So I'd opt for "profiler" but wouldn't
object to "profiler-agent" too much.
We don't have plans to provide a veneer client library currently. The plan
is that Google provides most of the profiling agent and so making it easy
to use the profiler service API is not a goal.
On Thu, Oct 26, 2017 at 10:55 PM, Ali Ijaz Sheikh<EMAIL_ADDRESS>wrote:

Right now the module is called @google-cloud/profiler. Is that the name
we would like to publish this as, or do we want be consistent with Trace
and Debug agents and call this @google-cloud/profile-agent
(profiler-agent?).
What is going to the name of the future veneer client library for the
profiler api?
How is the agent named in other languages?
/cc @JustinBeckwith https://github.com/justinbeckwith @jmdobry
https://github.com/jmdobry @lukesneeringer
https://github.com/lukesneeringer @aalexand
https://github.com/aalexand
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/cloud-profiler-nodejs/issues/30,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABctwLQhP2UsnfCrctmMJ1kTzQVTeRDfks5swXBKgaJpZM4QIlEJ
.

--
Alex


I can send, but received emails aren't showing

Everything works as it should until I get to the part of waiting for emails to show up. The Inbox is just shown as Empty list.
While making the first run configurations I found something kind of tricky since I seems to be something not normal, at least for me. And is the part where the domain is added. Normally the domain must contain a structure like smtp.mydomain.com, imap.mysomain.com or mail.mydomain.com, but in my case every time I added something before mydomain.com it caused a connection timeout or some other error. The only way I was able to make it "work", was by just adding mydomain.com. It is because wildcard is accepted or because the imap, smtp or mail are automatically recognized?
At the end I can only send messages using Rainloop, I am not able to received them. I do have a log saved if that could help figuring out this issue. Thanks a lot for the amazing work and tool.

Nevermind. I guess it is fault of my hosting. Maybe they are blocking connections through those ports or something like similar. I went ahead an tested into another hosting/server and RainLoop is running really smooth.


Icon Requests

[ ] Corebird
[ ] Virtual Machine Manager (possible sym link to virtualbox?)
[ ] SmartGit
[x] Sublime Text - done
[ ] Android Studio
[ ] Multitasking View
[ ] Brasero
[x] gnome clocks - Done
[ ] gnome maps
[ ] cheese
[ ] TeamSpeak3
[ ] PyCharm
[ ] Empathy = empathy (a blue version of the hangouts icon)
[ ] Polari = polari (maybe a symbolic link to your IRC icon)
[ ] accessories-camera (Snap photobooth) (maybe a symlink from the Cheese icon)
[ ] Vocal
[ ] Skype
[ ] Popcorn Time
[ ] Noise ~ Symlink to the default music player
[ ] Maya calendar ~ Symlink to the default calendar application
[ ] Atom
[ ] Brackets
[ ] KeePassX
[ ] Claws Mail
[ ] ROXTerm
[ ] speedcrunch – again, it's pretty ugly imo.

Under Settings:

[ ] Applications
[ ] Notifications
[ ] Tweaks
[ ] Keyboard
[ ] Mouse & Touchpad
[ ] Sound
[ ] Power
[ ] Network

gnome clocks
gnome maps
cheese
will be more :)

roger dodger :)

thanks was just trying to get all the gnome base icons,will let you know if i miss more :p

One more, Audacity plz!

TeamSpeak3, PyCharm please.

google-chrome-beta

select-all button in software center (in updates tab)

Empathy = empathy (a blue version of the hangouts icon)
Polari = polari (maybe a symbolic link to your IRC icon)
^ Merged from #8

accessories-camera (Snap photobooth) (maybe a symlink from the Cheese icon)

Vocal
Skype
Popcorn Time
Noise ~ Symlink to the default music player
Maya calendar ~ Symlink to the default calendar application
and the most important are Atom & Brackets :D

Cinnamon settings icons are needed, the best distribution to fit all the cs icons is fedora

KeePassX

Claws Mail

ROXTerm

and the speedcrunch icon again, it's pretty ugly imo.

Some icons for categories in the advanced main menu are also missing (e.g. multimedia, system settings, utilities, accessories)

Is there a way to request icons or possibly contribute in some way to the addition of new icons?

Unlikely as the developer (Peter Cornelis) has disappeared and the icon
theme is all but abandoned.
On Tue, 11 Aug 2015 at 12:43 Ben Featherstone<EMAIL_ADDRESS>wrote:

Is there a way to request icons or possibly contribute in some way to the
addition of new icons?
—
Reply to this email directly or view it on GitHub
https://github.com/solus-project/evopop-icon-theme/issues/3#issuecomment-129688520
.

Otter Browser
Project that aims to recreate the best aspects of the classic Opera (12.x) UI using Qt5
Icon=otter-browser


Type Entity is not assignable to type Constructable<Entity>

When trying to recreate the examples from README, I get a type error.
Factory:
export class EquipmentFactory extends Factory<EquipmentsEntity> {
  protected entity: EquipmentsEntity; // <-- here
  protected dataSource: DataSource;
  protected attrs(): FactorizedAttrs<EquipmentsEntity> {
    return {
      title: faker.vehicle.vehicle(),
      // [...]
    };
  }
}

The error:
Type EquipmentsEntity is not assignable to type Constructable<EquipmentsEntity>

Of cause I tried wrapping the Entity with Constructable, but this results in a runtime error, when used as following:
await new EquipmentFactory().create();

Results in
this.entity is not a constructor
TypeError: this.entity is not a constructor
    at EquipmentFactory.makeEntity (.../node_modules/@jorgebodega/typeorm-factory/src/factory.ts:69:20)
    at EquipmentFactory.create (.../factory.ts:43:31)
 [...]

How to solve this? Is this a bug? At least it varies from the README.
Versions:
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>

Without a proper example with the code, I cannot do much.
Can you try to upload a simple repo with the case?

Sorry, I totally missed that slight difference. This solved it!


Detection stops when the screen orientation is changed.

Title: Detection stops when the screen orientation is changed.
Describe the bug
When running the example app on iOS, object detection stops when the screen orientation is changed.
On Android, the detection continues without any problem.
To Reproduce
Steps to reproduce the behavior:

Tap 'Vision APIs' and go to 'Object Detection' in example app.
Change screen orientation

Expected behavior
Object detection stops and the last detection result continues to be displayed
Screenshots

Platform (please complete the following information):

OS: iOS
Device: iPhone 15 pro max
OS: iOS 17.3.1
Flutte Versionr: 3.16.6
Plugin version: 0.11.0

Additional context
I added the orientation to VisionImage in the plugin's Object-C file, but the symptoms did not improve!
It seems that even if I change the screen orientation, the image byte data is still sent to the plugin's Object-C function, and the same detection results continue to be returned.
NSLog(@"metadataRotation: %@", metadata[@"rotation"]);
    if (rotation.intValue == 180) {
        visionImage.orientation = UIImageOrientationRight;
    } else {
        visionImage.orientation = UIImageOrientationUp;
    }

I have the same problem. Can still be reproduced with your example app.


Add double_comparison

What it does
Checks for double comparisons that could be simplified to a single expression.
Why is this bad?
Readability.
Example
if x == y || x < y {}

Use instead:
if x <= y {}

https://rust-lang.github.io/rust-clippy/master/index.html#/double_comparisons

Hi, can I take this one?

Yes please do @renzobanegass


notifications of organization invitations is duplicated

create two users.
create organization from user 1 and send invitation to user 2 to join the organization
user 2 will receive 2 notifications

verified on staging server
{"Version":"v0.9.16-121-gda07337"}


Cygwin go/help command doesn't work

Reported by anonymous on 14 May 2001 18:22 UTC
The go/help command under cygwin fails to find the asked for journal files.
Example:
bash-2.04$ ferret
NOAA/PMEL TMAP
Program FERRET
Version 5.22 - 11/14/00
14-May-01 11:11
yes? go ptest
! Description: create a simple test line plot
! spirograph picture ...
PLOT/VS/LINE/I=1:314 icos(i/20),isin(i/20)
yes? go/help ptest
Full path name: d:\Program Files\TMAP\go\ptest.jnl
d:Program: No such file or directory
FilesTMAPgoptest.jnl: No such file or directory
The root of the problem is the code in xeq_go.F:

display HELP lines using the "more" command on the system
IF (go_help) THEN
CALL SPLIT_LIST(pttmode_help, ttout_lun,
.          ' Full path name: '//cbuff(:TM_LENSTR1(cbuff)), 0)
     CALL SYSTEM( 'more -d '//cbuff(:TM_LENSTR1(cbuff)) )
     RETURN
  ENDIF

as can be seen from the above example, the path name is a correct DOS path name,
but this path doesn't translate correctly to cygwin, using the system command.
A similar thing works fine in tm_inq_path, but since there is nothing unique
related to cygwin in that file, it seems that the path issues must be handled
within the Fortran library when doing fortran reads.
Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/265

Comment by<EMAIL_ADDRESS>on 4 Jun 2001 22:59 UTC
In spending a little more time looking at this, it seems that tm_inq_path search
is working fine, because the correct path is set up to find the file.  the
problem is that the path is correct in DOS verbiage, but when the SYSTEM command
is called, it invokes a bash shell, and the path isn't a valid bash shell path.


Video recording using Webrtc on IOS devices

Had a quick doubt,. We are working on a video app which allows users to record live video and audio and send it to others via email.
It works on android and web but not on IOS. But the video recorded and sent to IOS users plays on IOS. Only recording seems to be a problem for us. Can you suggest how we could handle this to male recordings of video possible for IOS users.

Because this is currently "seems" not supported in the javascript level (iOS-cordova), that's why closing this thread.

Hi Muaz,
Video recording still not supported in IOS devices? Why I am asking this is we are using IOS devices and able to record videos in chrome browser. But video is overlapped. Could you please help on this.
Thanks,

@ nairmahesh did you get your app developed to record video on iOS with Webrtc?


isTablet resolving to false on Android tablet

Summary

Version
14.0.0

Affected OS
Android

OS Version
35

Current behavior
isTablet() resolves to false on a Pixel tablet simulator when the app is in letterboxed view.
Expected behavior
isTablet() should resolve to true regardless if the app is in letterbox view or not

Hi there - PRs happily accepted if you post something that appears to fix it without regressing previous behavior (and potentially breaking layout algorithms people are relying on). Not sure that's possible but if there's a PR that can do it, I can merge it.

Setting resizeableActivity to false in your AndroidManifest seems to fix this

Just as a preference, I think isTablet is not terribly useful. If it is used to select between different layouts (single-column, double-column etc) it's better to take the actual content width and then set breakpoints for different values, like "small, medium, large" etc and make layout decisions based on the actual width. Put that in a hook so layout is reactive, and you have a responsive UI. Other than that, I'm not sure what isTablet is really useful for, and for layout decisions, it's not sufficient. So I don't personally use it FWIW, just maintain it forever since it existed before

Just as a preference, I think isTablet is not terribly useful. If it is used to select between different layouts (single-column, double-column etc) it's better to take the actual content width and then set breakpoints for different values, like "small, medium, large" etc and make layout decisions based on the actual width. Put that in a hook so layout is reactive, and you have a responsive UI. Other than that, I'm not sure what isTablet is really useful for, and for layout decisions, it's not sufficient. So I don't personally use it FWIW, just maintain it forever since it existed before

Hah thanks for the insight. I feel your pain.
I'm using it for 2 cases:

analytics on users (tracking tablet vs mobile users)
locking orientation based on the device type (unlock for tablets, lock to portrait for phones)

But I can certainly just check the screen width for either of those cases. Thanks.


replace full file overrides with drop ins

for example:
https://github.com/secureblue/secureblue/blob/live/config/files/usr/etc/security/limits.conf

https://github.com/secureblue/secureblue/commit/6bc46d51d6e5652f68672b648d6ec4a6e0246c6f


Suggestion: Wrap startup file IO error handler, .. etc.

It is safer to have file IO in a rescuable block.
You can also cut down on the number of orphaned local variables that hang around.
I've found that most devs are assigning their extension object to a local constant EXTENSION.
What's the point of letting the hash of meta data hang around in memory? (ie, the data is loaded into the object and later retrievable by API getter methods.)
Anyway the following has my ideas, take it or leave it:
  unless file_loaded?(__FILE__)
    begin
      # Read Extension meta-data from disk:
      json = File.read(File.join(PATH, 'extension.json'))
    rescue => err
      puts Module::nesting[0].name << 'not loaded ...'
      puts err.inspect
    else
      EXTENSION = SketchupExtension.new(
        Module::nesting[0].name.split('::').last, # temp name
        File.join(PATH, 'bootstrap') # loader path
      )

      EXTENSION.instance_eval {
        # Process Extension meta-data:
        ::JSON.parse(json).each_pair do |key,val|
          self.method("#{key}=").call(val) if self.respond_to?(key)
        end
        # Register with the SketchUp ExtensionsManager:
        Sketchup.register_extension(self, true)
      }
    ensure
      json = nil # mark for GC
    end
  end # Run once at startup block

What's the point of letting the hash of meta data hang around in memory?

The members of that hash is used by the extension in various places. It's not a huge amount of memory that I worry about. I think I prefer that than reading from disk to access the members every time.

It is safer to have file IO in a rescuable block.

What would the rescue block do? If that file is missing then the extension is corrupted somehow. Doesn't seem worth the extra logic to recover with a temporary name. A case where a hard failure is better than ignoring it IMO.

I think I prefer that than reading from disk to access the members every time.

As I had said. They are loaded as properties of the SketchupExtension object, which can be queried at any later time, rather than reloading from disk (which is not in any way what I suggested.)
Those (extras) that I had skipped with the  if self.respond_to?(key) clause could instead be attached as singleton attributes.

What would the rescue block do?

As shown above, it prevents the creation of a SketchupExtension object with blank properties, and unlike a "hard failure" which outputs a cryptic IO exception message to the user, it has the opportunity to print a console message that explains something the user can understand and report back.
I showed that it informed the user right away what extension is having the error. However I did not "simplify" the exception error into something less cryptic. But this could be done.
This line ...
      puts err.inspect

... could be ...
      puts "Error reading 'extension.json' file."

Anyway. It was only some suggestions as I dislike wasting user memory with data that SketchUp is going to hold (in the Sketchup::ExtensionsManager,) or local variables that go unused afterward and never get cleaned up.
And... generally I always suggest wrapping up any file IO to handle errors more gracefully.

The absence of extension.json is as critial as the absense of any other .rb file - I don't see the point of trying to handle that. At least not by the extension itself. SketchUp on the other hand could improve on loading error handling (which is in the works btw). An error reading extension.json wouldn't make more sense to an end user by rephrasing it. An developer can read the stack trace just as well.
The memory usage in this case in miniscule. And the data involved is relevant for the life-time of the. The strings in the hash that is also used by SketchupExtension is also shared. SketchupExtension doesn't make a copy of the params passed in.
TT::Plugins::ExtensionSources::EXTENSION[:name].object_id
# => 380

Sketchup.extensions[TT::Plugins::ExtensionSources::EXTENSION[:name]].name.object_id
# => 380

The proposed changes seems to me to have very little practical benefits, while making the logic more complicated.
Thank you for your suggestion, I do appreciate that, but I'm going to keep the extension registration as-is. I got a list of other improvements that has a higher value-gain and priority: https://github.com/thomthom/extension-sources/milestones

SketchUp on the other hand could improve on loading error handling (which is in the works btw).

Oh? This is good to hear!


gateways: shuffle code out of internal package

Codecov Report

Merging #341 into master will decrease coverage by 4.27%.
The diff coverage is 55.14%.

@@            Coverage Diff             @@
##           master     #341      +/-   ##
==========================================
- Coverage   63.54%   59.27%   -4.28%
==========================================
  Files          57       59       +2
  Lines        5827     5827
==========================================
- Hits         3703     3454     -249
- Misses       1433     1721     +288
+ Partials      691      652      -39

Impacted Files
Coverage Δ

internal/originators.go
62.74% <0%> (ø)
:arrow_up:

cmd/server/main.go
20.68% <0%> (ø)
:arrow_up:

internal/receivers.go
58.44% <0%> (ø)
:arrow_up:

internal/http.go
79.48% <100%> (ø)
:arrow_up:

internal/transfers.go
67.2% <100%> (ø)
:arrow_up:

internal/gateways/gateways.go
16.66% <16.66%> (ø)

internal/depositories.go
60.69% <50%> (ø)
:arrow_up:

internal/gateways/storage.go
58.2% <58.2%> (ø)

internal/gateways/http.go
67.39% <67.39%> (ø)

internal/accounts.go
10.25% <0%> (-67.95%)
:arrow_down:

... and 9 more

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 76f9d5f...17f20c1. Read the comment docs.


Fix #168

Fixes #168

@mirceaulinic

Coverage decreased (-0.05%) to 80.602% when pulling c2f06eee6037e9617a46de73c45fbd030554b540 on bewing:sshkeys into 8b85ba27019f16cc8e4203031d8cdb7cfb84de14 on napalm-automation:develop.

Coverage decreased (-0.05%) to 80.602% when pulling c2f06eee6037e9617a46de73c45fbd030554b540 on bewing:sshkeys into 8b85ba27019f16cc8e4203031d8cdb7cfb84de14 on napalm-automation:develop.

Coverage decreased (-0.05%) to 80.602% when pulling c2f06eee6037e9617a46de73c45fbd030554b540 on bewing:sshkeys into 8b85ba27019f16cc8e4203031d8cdb7cfb84de14 on napalm-automation:develop.

Coverage increased (+0.2%) to 80.843% when pulling 7d7e91227e248bb5ba1d6905bf26d2cca4ae65b8 on bewing:sshkeys into 8b85ba27019f16cc8e4203031d8cdb7cfb84de14 on napalm-automation:develop.


Calculator

This is my web app based on your calculator. I styled what you have done previously and change the layout a little bit. I added also PWA feature to make it act like a standalone app. This closes #21.
Here's live demo: https://butterfly-pn.github.io/pizza-dough/
I'm open for any suggestions / code reviews 😉

Thank you so much 🎉


Set PYTHONHOME when using anaconda or miniconda

For #36

#36 may not be reproducible on Travis CI because this build was passed... https://travis-ci.org/mrkn/pycall.rb/builds/278140969

I succeeded to reproduce the issue on travis with miniconda2 and 3.

https://travis-ci.org/mrkn/pycall.rb/jobs/278194579
https://travis-ci.org/mrkn/pycall.rb/jobs/278194580


Hide "Result:" header

From https://eaforecasting.slack.com/archives/C03D0M134N5/p1660071498250059:
There are two scenarios when some kind of header there might be useful:

"collapse all"
settings gear (for distributions)

Both are... not very useful, I guess.
"Collapse all" can be useful to avoid slow re-renders, but the same goal can be achieved with disabling autoruns.
Settings for the top level are the same as global view settings.
Botom line: I believe "Result:" header can just be safely removed in all cases, and I was just lazy/took a shortcut when I did the initial implementation of collapsible results.

Good point, seems good to remove.


fix: restrict session lifetime to 30 minutes

Description
We were allowing session lasting a full hour, which isn't optimal with regards to security. Downgrade back 30 minutes and update the relevant tests.

To be compatible with WCAG 2.11 you need to either:

warn users when their session will timeout
have a session timeout of 20 hours or longer

They say:

The best way to conform to this success criteria is to keep the user data for at least 20 hours.

On Notify we went for 20 hours option:
https://github.com/alphagov/notifications-admin/blob/91d39b3fdf2d95a8f91d1dad1f898b6f365a730e/app/config.py#L59

https://www.w3.org/WAI/WCAG21/Understanding/timeouts.html

To be compatible with WCAG 2.11 you need to either:

warn users when their session will timeout
have a session timeout of 20 hours or longer

They say:

The best way to conform to this success criteria is to keep the user data for at least 20 hours.

On Notify we went for 20 hours option:
https://github.com/alphagov/notifications-admin/blob/91d39b3fdf2d95a8f91d1dad1f898b6f365a730e/app/config.py#L59

https://www.w3.org/WAI/WCAG21/Understanding/timeouts.html

Ah!, thanks for the catch!, I'll have a chat with the PM and suggest we do the same.


Parcel & Dagger2

I'm using dagger in project and would like to use @parcel on my response models
but whenever I add the annotation above the class, project stops compiling and all the builds fail
compiler errors start with DaggerAppComponent missing(seems dagger won't work properly), and at the bottom of the log it leaves a

Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
java.lang.NullPointerException

please tell me how to make them work together
thank you

I regularly use Parceler with Dagger and other annotation processors.  Can you give me some more details about your setup, perhaps a demonstration application?

thank you for your quick response
I have created a demo project with only one activity and model (and basic MVP boilers)
google drive link of the project
https://drive.google.com/file/d/1cUNp4eUDbc5DffEmddKJQJMJgkhNqIQZ/view?usp=sharing
GitHub repo
https://github.com/worldsnas/parcelerissue
it throws the same error the moment I add @Parcel (without it everything works fine)
thanks again for looking into it

I can't seem to build the project, but I can tell you from a cursory look that the BaseResponse should not compile with the generic you have defined.  Parceler needs to know the concrete type in order to generate a Parcelable wrapper class.  What will work, however, is defining a concrete implementation and not annotating BaseResponse:
// not annotated
public class BaseResponse<T> {
...
}

@Parcel
public class ConcreteResponse implements BaseResponse<String> {
...
}

Does this solve your issue?

Ah, got it to build and I see the issue:
$ ./gradlew clean installDebug

> Task :app:compileDebugJavaWithJavac FAILED
~/parcelerissue/app/src/main/java/com/itparsa/parcelerissue/mvp/App.java:8: error: cannot find symbol
import com.itparsa.parcelerissue.mvp.injection.DaggerAppComponent;
                                              ^
  symbol:   class DaggerAppComponent
  location: package com.itparsa.parcelerissue.mvp.injection
~/parcelerissue/app/src/main/java/com/itparsa/parcelerissue/main/view/impl/MainActivity.java:7: error: cannot find symbol
import com.itparsa.parcelerissue.main.injection.DaggerMainViewComponent;
                                               ^
  symbol:   class DaggerMainViewComponent
  location: package com.itparsa.parcelerissue.main.injection

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> java.lang.NullPointerException

* Try:
Run with --info or --debug option to get more log output.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileDebugJavaWithJavac'.
        ...
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
        ...
        ... 29 more
Caused by: java.lang.NullPointerException
        at org.parceler.transfuse.util.matcher.InheritsMatcher.matches(InheritsMatcher.java:33)
        at org.parceler.transfuse.util.matcher.InheritsMatcher.matches(InheritsMatcher.java:23)
        at org.parceler.internal.Generators.matches(Generators.java:45)
        at org.parceler.internal.ParcelableAnalysis.validateType(ParcelableAnalysis.java:645)
        at org.parceler.internal.ParcelableAnalysis.innerAnalyze(ParcelableAnalysis.java:315)
        at org.parceler.internal.ParcelableAnalysis.analyze(ParcelableAnalysis.java:68)
        ... 54 more

Which is caused from the generic type not being defined... GenericsUtil.getType() returns null for undefined generics.  So, a null check here fixes the issue, although maybe getType() should return Object instead? https://github.com/johncarl81/parceler/pull/325
With this fix, the build still fails but with this error instead:
~/parcelerissue/app/src/main/java/com/itparsa/parcelerissue/model/BaseResponse.java:17: error: Parceler: Unable to find read/write generator for type resultModel for com.itparsa.parcelerissue.model.BaseResponse.result
    public resultModel result;
                       ^

This is deployed to maven central under 1.1.10-SNAPSHOT.  I'll be releasing 1.1.10 shortly.

wow such wonderful follow up and greate attention
thank you so much for fixing it
may I ask when will it be the final release?
also, i tried to use the snapshot but seems to be failing to resolve it
and one more thing, if you fix this issue in the next version will I be able to use my generic class or I still need to build a concrete one?

It's released now: http://repo1.maven.org/maven2/org/parceler/parceler/1.1.10/
You will still need to use a concrete class, unless you define a custom converter.


The last line of a file is not displayed if it is empty

If a file ends with one blank line, it isn't shown in lite. If I save a file with a blank line at the end in lite and open it in another editor, there are 2 blank lines at the end.
using version 1.11, no plugins

Can't reproduce.
What editor are you using? Perhaps he adds a dummy line at the end?

I tried in KDE Kate, micro, and nano. Same result with all 3.

I tried in micro. As I thought, it just adds a dummy line at the end. Try to read your file with cat.

I confirmed there is a newline character with a hex editor.
Try running echo -n 'test' > test_1 and echo 'test' > test_2, then open both in lite. They should be displayed differently, so that there is a line number 2 in the second file and I can move the cursor down. You'll also notice if you cat both files, the first displays an icon at the end to indicate there is no newline character. When cat prints a newline at the end of the file, your shell prompt is printed on the same line. If there is none, the shell will skip to the next line to avoid printing your prompt on a line with output from the last command.
Oddly enough, vim ignores the newline at the end just like lite, and nano will fake a newline if there is none. micro is the only one that behaves in a way I would consider correct.


Is there any way to reconnect to the existing call?

I use the FCM to awake my app and init SIP listener when my app is terminated. To show call notification I use flutter_callkit_incoming library. When Accept is pressed on incoming call notification then the app is opened in new isolate. In app i have the screen with hang up button which allows me to end the call with call.hangup({'status_code': 603}). As I mentioned, the app is opened in new isolate, so i don't have access to instance of current Call since the call was handled in separate isolate. Can I somehow reconnect to the call in my app? I guess the sendMessage() may help since it also triggers the callStateChanged() function.

@eugeen3 were you able to solve this problem?

@eugeen3, You can try running SIP as a background service, if FCM option doesn't suit your preferences.


Support for python 2.7 ?

Awesome! We ended up developing our own before we even realized the checkmk webapi existed. It's a large amount of logic designed to reproduce the WATO UI calls. We'd love to eventually migrate to the webapi using this webapi library wrapper rather than rolling our own.
To the sad part... My corporate environment hasn't upgraded to python3. Would you be opposed to adding support for python2.7? Things like the type hints break python2.7 compatibility. There may be others too; this is just the first error encountered.
If you're cool with this, I'm happy to fork and contribute back.
PS - python2.7 supports type hints comments in some tools like pycharm

Hi @codyaray,
I'm definitely looking forward making this library compatible with Python 2.7.
Regarding the type checking I'd prefer to remove it entirely instead of using the comment approach.
Feel free to fork and open a pull request at any time.

Hey @codyaray,
Thanks to @ravibhure the library does now support Python 2.7.

Hi everyone,
I just tried the version October 20th and discovered a new Python 3 change:
-     import check_mk_web_api
-   File "/usr/local/lib/python2.7/dist-packages/check_mk_web_api/init.py", line 308
-     **custom_attrs
It looks like ** inside a dict is not allowed in python2.
Python2:

{**x}
File "", line 1
{**x}
^
SyntaxError: invalid syntax

Python3:

{**x}
{'a': 'b', 'c': 'd'}

Thanks for finding this! Will take care of it.

The issue has been fixed in 1.4.


Fix recursive deserialization of cbor bytes

Fixes #193

Codecov Report

Merging #194 (8ea663f) into main (68f26ee) will increase coverage by 0.19%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #194      +/-   ##
==========================================
+ Coverage   85.45%   85.65%   +0.19%
==========================================
  Files          26       26
  Lines        2854     2844      -10
  Branches      681      675       -6
==========================================
- Hits         2439     2436       -3
+ Misses        305      302       -3
+ Partials      110      106       -4

Impacted Files
Coverage Δ

pycardano/serialization.py
86.90% <100.00%> (+2.17%)
:arrow_up:

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


Allow using custom DockerFile from GUI

I want some way to use custom DockerFile from GUI where I upload Dockerfile from UI.

looking into this but closing this for now due to duplicate issue.


Scheduled builds need "build only if something has changed since previous build"

This is the inverse of what is gen2 build definitions but either way, I want to set up our nightly "complete" builds to only run if there has been a commit since the last build.

This repo is tracking the agent and issues with the agent.  For features in the service, please use user voice.

And yes, we know of this request and we will do this soon.  it's high on our backlog.


Fix warnings when building with Xcode 10.2

Is there a target date for when this merge might be added to Realm? Just wondering when we'll have support for Xcode 10.2 available.


Issue with @default Tag in Latest Nestia Version and Swagger Generation

Describe the bug
In previous versions, the `@default tag was successfully converted to the default value in Swagger. However, it seems that in the latest version, this conversion is no longer working.
export interface ICreateUserRequestDto {
  /**
   * User's email address
   *
   * @pattern<EMAIL_ADDRESS>   * @maxLength 320
   * @default<EMAIL_ADDRESS>   *
   */
  email: string;

  /**
   * Social network service type
   *
   * @default KAKA
   */
  snsType: SnsType;

  /**
   * Social network service ID
   *
   * @default<PHONE_NUMBER>
   */
  snsId: string;
}

After writing the code as above and generating the swagger.json file using the nestia swagger command, the default fields are no longer appearing in the latest version.
"ICreateUserRequestDto": {
    "type": "object",
    "properties": {
      "email": {
        "type": "string",
        "maxLength": 320,
        "pattern"<EMAIL_ADDRESS>        "default"<EMAIL_ADDRESS>        "description": "User's email address"
      },

I spent over five hours trying to find the cause in the code. When I reverted to the previous working version, 5.3.0, the default fields like "default"<EMAIL_ADDRESS>were correctly generated.
Has the `@default tag functionality been removed in the new version, or is this a bug?
Expected behavior
I expected the `@default tag to be converted in the Swagger documentation, with the expected default values included for each field
"ICreateUserRequestDto": {
    "type": "object",
    "properties": {
      "email": {
        "type": "string",
        "maxLength": 320,
        "pattern"<EMAIL_ADDRESS>        "description": "User's email address"
      },
      "snsType": {
        "type": "string",
        "enum": [
          "APPLE",
          "GOOGLE",
          "KAKAO"
        ],
        "description": "Social network service type"
      },
      "snsId": {
        "type": "string",
        "description": "Social network service ID"
      }
    },
    "nullable": false,
    "required": [
      "email",
      "snsType",
      "snsId"
    ],
    "description": "User creation request DTO"
  }

Actual behavior
The `@default tag is not being converted in the Swagger documentation, and the default values are not included for any of the fields.

The comment tag @default has never been formalized in the documentation, nor has it ever been explicitly supported.


chore: update the CircleCI config

All the tests were broken. Why did this land?

+1 to @ofrobots - since we have much more stable CI as before, I (again) suggest that we disable admin override on CI tasks for all repositories.