New conversation started after every 21 messages

Hi,
I have expanded the echo bot to have the Speak field set to the incoming message. When I use the Direct Line Speech Client v1.0.0 I can speak a message to the bot and the bot repeats the message. Okay, so far, so good! When I continue the conversation, after the 21st message I send, a new Conversation is received in the bot, causing the bot to start at the beginning of the flow.
At first I thought it was a mistake in my code, but the official demo application has the same behavior.
Is this some Preview limitation (or bug perhaps?) or will this behavior also be in production?

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

ID: aa4cb4da-ca0e-fc7f-686c-f3510bf9af0b
Version Independent ID: e20d2896-dcec-8e46-2f50-2227def34250
Content: Connect a bot to Direct Line Speech (Preview) - Bot Service
Content Source: articles/bot-service-channel-connect-directlinespeech.md
Service: bot-service
GitHub Login: @trrwilson
Microsoft Alias: travisw

Can you list any changes, if any, that you made to the Echo bot, including updating of Nuget packages, addition of a SpeechConfig, etc.? Also (without revealing any keys/secrets) can you list what settings you have in the Direct Line Speech Client?
Out of curiosity, is this behavior specific to using the Direct Line Speech service? Have you tested sending multiple text utterances through the bot via other channels (Emulator, web chat, etc.) to be certain it is specific to Direct Line Speech?

Hi,
Thanks for your reply. The changed code of the Echo bot is attached below. I've tried also to send only text messages by typing them in the bar where the recognized text is displayed. This seems to work, the same conversation is still going on after 30 messages. However when I try it again, but with speech (pressing the mic) after 21st message I get the "Hello and welcome" message. The conversation ID is also changed when debugging the bot.
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using Microsoft.Bot.Builder;
using Microsoft.Bot.Schema;

namespace EchoBotSpeech.Bots
{
    public class EchoBot : ActivityHandler
    {

        private static List<ITurnContext> _log = new List<ITurnContext>();

        protected override async Task OnMessageActivityAsync(ITurnContext<IMessageActivity> turnContext, CancellationToken cancellationToken)
        {
            if (turnContext.Activity.Type == ActivityTypes.Message)
            {
                var msg = MessageFactory.Text($"Echo: {turnContext.Activity.Text}");
                msg.Speak = turnContext.Activity.Text;
                await turnContext.SendActivityAsync(msg, cancellationToken);
            }
        }

        #region Overrides of ActivityHandler

        /// <inheritdoc />
        public override Task OnTurnAsync(ITurnContext turnContext, CancellationToken cancellationToken = new CancellationToken())
        {
            _log.Add(turnContext);
            return base.OnTurnAsync(turnContext, cancellationToken);
        }

        #endregion

        protected override async Task OnMembersAddedAsync(IList<ChannelAccount> membersAdded, ITurnContext<IConversationUpdateActivity> turnContext, CancellationToken cancellationToken)
        {

            foreach (var member in membersAdded)
            {
                if (member.Id != turnContext.Activity.Recipient.Id)
                {
                    var msg = MessageFactory.Text($"Hello and welcome!");
                    msg.Speak = "Hello and welcome!";

                    await turnContext.SendActivityAsync(msg, cancellationToken);
                }
            }
        }

        #region Overrides of ActivityHandler

        /// <inheritdoc />
        protected override Task OnUnrecognizedActivityTypeAsync(ITurnContext turnContext, CancellationToken cancellationToken)
        {
            return base.OnUnrecognizedActivityTypeAsync(turnContext, cancellationToken);
        }

        #endregion
    }
}

@stevkan Do you need more information?

Can you list the speech client settings you have configured? I’d like to replicate this as closely as possible.
Also, if you could list the nugget package versions, I would appreciate it.

Hi @stevkan
See the information below.
packages.config:
<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="AdaptiveCards" version="1.2.0" targetFramework="net461" />
  <package id="AdaptiveCards.Rendering.Wpf" version="1.2.0" targetFramework="net461" />
  <package id="AdaptiveCards.Rendering.Wpf.Xceed" version="1.2.0" targetFramework="net461" />
  <package id="BuildTools.FxCop" version="1.0.1" targetFramework="net461" />
  <package id="Extended.Wpf.Toolkit" version="3.5.0" targetFramework="net461" />
  <package id="Jot" version="1.4.1" targetFramework="net461" />
  <package id="Microsoft.Bot.Schema" version="4.4.5" targetFramework="net461" />
  <package id="Microsoft.CodeAnalysis.FxCopAnalyzers" version="2.9.2" targetFramework="net461" />
  <package id="Microsoft.CodeAnalysis.VersionCheckAnalyzer" version="2.9.2" targetFramework="net461" />
  <package id="Microsoft.CodeQuality.Analyzers" version="2.9.2" targetFramework="net461" />
  <package id="Microsoft.CognitiveServices.Speech" version="1.6.0" targetFramework="net461" />
  <package id="Microsoft.CSharp" version="4.5.0" targetFramework="net461" />
  <package id="Microsoft.MarkedNet" version="1.0.13" targetFramework="net461" />
  <package id="Microsoft.NetCore.Analyzers" version="2.9.2" targetFramework="net461" />
  <package id="Microsoft.NetFramework.Analyzers" version="2.9.2" targetFramework="net461" />
  <package id="NAudio" version="1.9.0" targetFramework="net461" />
  <package id="Newtonsoft.Json" version="12.0.2" targetFramework="net461" />
  <package id="SourceLink.Create.CommandLine" version="2.8.3" targetFramework="net461" developmentDependency="true" />
  <package id="StyleCop.Analyzers" version="1.1.118" targetFramework="net461" developmentDependency="true" />
</packages>

Screenshots of my settings:

@arnoldpistorius, thank you for your patience while I try and work through this. There are a few configuration points that I'm trying to manage. I hope to have something to report to you before much longer. In the mean time, are you logging any errors when the conversation resets?
Also, as only the subscription key and region are required, does this problem persist if you remove the values for "User From Id:" and "Language:" fields?

@arnoldpistorius, it's been a couple of weeks. Do you still require assistance or should the issue be closed?

No, the issue remains even when leaving from Id and Language fields blank.

I'm not able t o replicate the issue as you have described it. I did notice that there is a variation in the code you supplied compared to the Echo bot sample provided in the Experimental/directline-speech folder, located here.
Can you download and run this sample, as-is, and see if it persists for you? This sample is already configured for DL Speech. The only item you will need to change is the appsettings.json file by including your bot's AppId and AppPassword.

@arnoldpistorius, do you still require assistance? To keep the issue open we need activity on the thread.

Closing issue due to a lack of activity. If the issue persists or you have new information to provide regarding this issue, please feel free to reopen.


PostgreSQL: Database preparation works but app cannot connect (ECONNRESET)

I've been trying to make Konga app connect PostgreSQL but without success.
The strange thing is that bin/konga.js can connect and prepare the database just fine.
I set the complete environment variables set for the PostgreSQL backend:
DB_ADAPTER="postgres"
DB_HOST="xxx.privatelink.postgres.database.azure.com"
DB_PORT="5432"
DB_DATABASE="konga"
<EMAIL_ADDRESS>`
DB_PASSWORD="xxx"
DB_SSL="true"

The initial start is performed by this custom start2.sh:
#!/bin.bash
# start2.sh - Custom startup script

PGCONNSTR="host=$DB_HOST port=$DB_PORT dbname=$DB_DATABASE user=$DB_USER password=$DB_PASSWORD sslmode=require"
psql "$PGCONNSTR" -c "SELECT version();"

pushd /home/site/wwwroot

# The bin/konga.js has been patched to allow use of DB_* environment variables instead of the URI
# see https://github.com/pantsel/konga/pull/586
node ./bin/konga.js prepare --adapter postgres

node --harmony app.js

Here you can see the psql does successfully connect to the database.
Then, the bin/konga.js can connect too and prepares the database with success.
Finally, the app.js fails to connect and keeps crashing

By the way, along with DB_SSL=true, I also tried @pantsel suggestion from https://github.com/pantsel/konga/issues/139#issuecomment-346799128 and replaced this line
https://github.com/pantsel/konga/blob/57f40d45108341eb57b7360cd01e8288e619747f/config/connections.js#L86
with
ssl: true

Here are numerous issues which I believe are all related to this problem:

https://github.com/pantsel/konga/issues/410
https://github.com/pantsel/konga/issues/405
https://github.com/pantsel/konga/issues/371
https://github.com/pantsel/konga/issues/139

I suspect the issue may be related to the very ancient PostgreSQL driver that is used whereas sails-postgresql 2.0 is out:
https://github.com/pantsel/konga/blob/57f40d45108341eb57b7360cd01e8288e619747f/package.json#L52

UPDATE: It is possible that the issue is related to SSL only connectivity. See my discussion with @OneideLuizSchneider  here https://github.com/pantsel/konga/issues/641#issuecomment-739891646

I got the same problem when using the DB_SSL: true. If I remove th DB_SSL, it works well.


Item rendering triggers

Some new triggers and utilities around rendering items and slots:

renderSlot(Slot, gui, event) triggers when a slot is being drawn
renderItemIntoGui(Item, x, y, event) triggers for each item being drawn into a gui (doesn't trigger on Item.draw)
renderItemOverlayIntoGui(Item, x, y, event) triggers for each item overlay being drawn into a GUI.
Simple slot wrapper
Client.currentGui.getSlotUnderMouse() method.
Add z-level optional argument to Item.draw(x, y, scale, z) for positioning.

(the renderItemIntoGui and renderItemOverlayIntoGui duplication is a bit inelegant, but I don't think there's many times where you would actually want to cancel both and an impractical number of methods call those two)

Fixed both (I think), thanks!


Change README.md

Restructure text from README and move some unneeded parts to Wiki in structured way.
Change text on alasq;.org

I cant figure out the content of https://github.com/agershun/alasql/blob/master/TODO.md
Is this obsolite now that we have the trello? It feels like we are using more as a poersonal memo on what could be the next thing to implement. Would we link to the trello instead of the todo.md?

Yes. I will remove this file. Done.

Bam !

Would it be possible for you to write this example
    var data = {a:{a:{a:{a:{b:10}}}},b:20};
    var res = alasql('SEARCH a b FROM ?',[data]);
    var res = alasql('SEARCH (a)+ b FROM ?',[data]);
    var res = alasql('SEARCH (a a)+ b FROM ?',[data]);
    var res = alasql('SEARCH (a a a)+ b FROM ?',[data]);
    var res = alasql('SEARCH (/)+ b FROM ?',[data]);
    var res = alasql('SEARCH /+b FROM ?',[data]);
    var res = alasql('SEARCH a* b FROM ?',[data]);
    var res = alasql('SEARCH a+ b FROM ?',[data]);
    var res = alasql('SEARCH a? b WHERE(b>20) FROM ?',[data]);

```

with some data that makes more sense? I feel its not intuitive enough. I would like to make an example but I dont think I got it quite yet...

Is https://github.com/agershun/alasql/wiki/SQL keywords truely updated?

It is actual as far as I know. The only trick here, that this is the SQL-99 keywords, but the list of AlaSQL keywords is diffrerent.

Known Bugs and Limitations
ORDER BY clause on three or more UNIONS ( See example in AlaSQL console )
Limited functionality for transactions (supports only for localStorage) - Sorry, transactions are limited, because AlaSQL started to use more complex approach for PRIMARY KEYS / FOREIGN KEYS. Transactions will be fully turned on again in one of the future version.

Meteor, SQL and other databases by https://www.compose.io/articles/author/dj/
https://www.compose.io/articles/meteor-sql-and-other-databases/

2/. I think we can move PEOPLE.md to Wiki. See [What people say about AlaSQL] (https://github.com/agershun/alasql/wiki/People) article

I created a page with lost of all [AlaSQL keywords](AlaSQL Keywords)

interesting...
Was trying to improve on your example with
var catalog = {
				Europe: {
					fruits: [
						{name:'Apple'},
						{name:'Peach'}
					]
				},
				Asia: {name:'Pineapple'},
				Africa: {name:'Banana'}
			};

var res = alasql('SEARCH Europe FROM ?',[catalog]);
// res =
// [{fruits: [
// {name:'Apple'},
// {name:'Peach'},
// ]}]

var res = alasql('SEARCH /fruits/ FROM ?',[catalog]);
// returns [{name:'Apple'}, {name:'Peach'}]

var res = alasql('SEARCH /fruits/name FROM ?',[catalog]);
// returns ['Apple','Peach']

var res = alasql('SEARCH /fruits/WHERE(name="Apple") FROM ?',[catalog]);
// returns [{name:'Apple'}]

var res = alasql('SEARCH ///WHERE(name="Apple") FROM ?',[catalog]);
// returns [{name:'Apple'}]

// Pleae note that the "FROM ?" is to run the query on the data in the second parameter ```[catalog]``` - it could just as well be a normal ```FROM tableXYZ```

but realised we dont use the data in asia nor africa.
Im not able to run alasql right here, but will come with a suggestion when I get back to my computer

I created a page with all AlaSQL keywords. Hope, this will help us to fill all keywords with documentation and examples.

https://github.com/agershun/alasql/wiki/AlaSQL-Keywords

I moved PEOPLE.md to the special page

https://github.com/agershun/alasql/wiki/People

Good idea.
Do you have the original drawing of http://www.slideshare.net/AndreyGershun/sql-and-nosql-in-alasql slide 2? its really great !

The picture: https://www.dropbox.com/s/fkpy09au70xt1qp/nosql.png?dl=0
:)

Can you write a post about AlaSQL in Danish to add to the list? :)

Sure !
Thinking about where it would be good to post. Hmmm. Maybe just medium.com

AlaSQL ♥ README.md :)

I like new version of README.md! I will merge new version of README.md to master branch tonight with release 0.1.8.
Idea: To do not interfere we can create special README page on Wiki with editable copy of README.md, and I will simply copy it every time before release (and also we will use it for alasql.org/index.html and README.md for Meteor package). What do you think? I do not want to merge README.md every time (it is more complicated the code merge  and we can keep a single editable master-copy of it).

Glad you like it :)
Hmm - I dont quite get why its hard to merge - as it is not changed in master the merge should be automatic. Are you useing the git-flow features of source tree? Are you doing a log of things by hand when you place it into master?
But its no problem. If you prefer we have a "readme" in wiki lets keep it there. I have only started restructuring the information. When the restructuring is done I will look into if we need new / better material and if some of the examples should be placed in wiki (balance detail with overview)

Have made a copy at https://github.com/agershun/alasql/wiki/readme

The wiki will now be the master I focus on.
Only the wiki version will be updated with changes.
On new releases the wiki will be copied into README.md of development and merged into master (or copied into both...)

Yes, thank you! I am still feel me a newby with git merge procedures :)
BTW, if you find a time, can you look at the AlaSQL jsDoc documentation. I started to put JsDoc tags into the code, but it still requires more professional attention. If you have any experience with jsDoc, can you share ideas how to improve this part of documentation.

I never met jsDoc - will take a look at it.
Are you using git "raw" or are you using source tree?

Currently I use git from the command line + git flow for releases. I had some problems earlier with combination Source Tree + Dropbox + Mac (CRLF) + Windows (CR), so I decided temporary do it by hand, while I studying git.
Of course, I know how to merge files by hand and in SourceTree, but still can not rely on it :) Plus, I want to avoid to merge text file (this is more difficult than the code)

Awwwhhh - I had the exact same setup - and really fucked it all up once.
It can be handled - by removing all \r from the code and asking git not to convert when one checkes out.
But basically what I learnt was that its a bad idea to have git and dropbox mixed. Mainly if its big files (not really here) where you risk that dropbox will overwrite a file after you comitted changes offline. Well - its a mess - so I just sync over github now (usint source tree) and make sure to do changes in a feature branch that I always make sure to push when I leave the computer so I can pull changes on the other one...

Nice with all the keywords in the wiki. Next thing will be to have examples of the specific use on all of them. Lets have that in mind for now and focus on getting them all in for now :)

YES! I will finish with all keywords articles today, and then we can walk through:
a) closed issues (there about 100 of them). Most part of them have jsFiddle examples.
b) test examples (about 300)

Git: I solved this problem and do not commit changes with my office (Windows) computer. That is why I always write 'I will do it tonight' instead 'today' :)

Regarding the tagline and description:

AlaSQL.js - JavaScript SQL database library for relational and graph data manipulation with support of localStorage, IndexedDB, and Excel

where is the noSQL part of this? I have a feeling the main gain it running traditional SQL agains schemaless data - would you agree?
But we also have the graph parts to be proud of.
I also REALLY like that we have a vision about being vendor complient with different flavours - meaning that the migration from exsisting system go javascript setup is more easy...
Can you try to nail the fop 5 trais of AlaSQL that makes it lovable?

Please also put some words to why there needs to be a second @ in
@{yearid:@[2014,2015]}

@ question:
AlaSQL uses [ without @ for column names and other literals. For JavaScript arrays we have to use @[.
BTW: Now we do not need to put @ before ````{. Simply: {yearid:@[2014,2015]}```

hmm. OK.
Can you write a tiny example that uses both notations in one query?

     SET @a=@[{a:1,b:10},{a:2,b:10}];
     SELECT SUM(a*b) FROM @a

5 phrases...

Pure JavaScript, can be easily extended and integrated
Fast and optimized
Has all necessary import and export filters for instant ETL
Supports JSON
SQL compatible

I just finished to create pages for all AlaSQL keywords. So we can fill all them with examples from tests and closed issues.

:+1:

@mathiasrw Something wrong with ```AlaSQL ♥ d3.js see  why'`` links. Can you check?

I cant replicate a problem on readme.md or wiki.
Are you testing it at the npm page?
They might not have the same abillity to auto make anchors. If not we must make hard links to github version.

Npm readme has similar problems
Отправлено с iPhone

29 мая 2015 г., в 8:25, Mathias Rangel Wulff<EMAIL_ADDRESS>написал(а):
I cant replicate a problem on readme.md or wiki.
Are you testing it at the npm page?
They might not have the same abillity to auto make anchors. If not we must make hard links to github version.
—
Reply to this email directly or view it on GitHub.

Ok. I will change it so they point to absolute GitHub path

:+1: Now README is the most important part of the AlaSQL

Hah - im not sure about that.
The links are working in wiki version now.

@mathiasrw Let's remove the SQL/NoSQL picture... It is not so positive...

its done!

(but its still pretty fun...)

Unrelated question: Is the alasql-codex repo ment as the source of alasql.org?

Yes. I think that we can develop codex as independt projects and place it at alasql.org/codex as a subpart.
Now, we have many mosaic parts for a now:

alasql itself and its plugins (github.com/agershun/alasql)
alasql wiki (github.com/agershun/alasql/wiki)
alasql-org (at alasql.org)
alasql-codex (at alasql.org/codex) - I have very interesting ideas how to combine many tutorials and manual into one environment

And:

alasql-manual after some investigation will be merged into alasql-wiki after we have more than 10 pages in it.

I still have some ideas about alacon as a separate command-line utility for ETL operations, but this is not urgent.

:+1:

I feel. we have a problem with README.md: the ratio of stars to the number visitors was decreased in some times for a last two weeks. We need to finish with it. Is the wiki version is the last edition?

The wiki is always the latest version.
I have not focused on getting into the details with it. Ill hvae the readme as focus the next days.
Where do you see visitors?

Traffic page: https://github.com/agershun/alasql/graphs/traffic It should be available to you (if not - write me please).
Some ideas on README structure
I think we can put some simple examples on the top of the page and move news somewhere else. I will try to find best practices on this to compare with our page.
The structure can be like this:

Header
Buttons, Version info - 1 sentence
What is AlaSQL 1-2 sentences
Why AlaSQL is great - 3 points
Very simple example 4-5 strings
Performance and compatibility test results
How to install
Some simple examples and faetures (compilation, other libraries)
Complex features
Additional information (tests, etc.)
References

I think we need to reduce README to 2-3 pages and include more references to Wiki.

I really like this structure. I will implement this the next days!

:+1:

What is the point of the * in https://github.com/agershun/alasql/wiki/SQL-99 ?

We can remove it
Отправлено с iPhone

11 июня 2015 г., в 20:18, Mathias Rangel Wulff<EMAIL_ADDRESS>написал(а):
What is the point of the * in https://github.com/agershun/alasql/wiki/SQL-99 ?
—
Reply to this email directly or view it on GitHub.

Note to self: use https://asciinema.org/ to show example of alacon

:+1:


vm: Implement the VM interface for VMware Workstation

Use the "vmrun" utility to manage Workstation VMs. The syzkaller manager
creates temporary VMs (linked clones) from a base image, gets their IP
address and uses ssh to deploy and run programs (similar to the isolated
mode).

Nice!
I guess this can find some bugs in vmware as well. I would flip all possible device emulation, virtio transports, etc flags on and build vmware with ASAN/MSAN.

Here we go:
https://syzkaller.appspot.com/bug?extid=f58fe4bb535845237057
https://groups.google.com/g/syzkaller-bugs/c/V-d_BGOmwQU/m/vuiBEbbjDQAJ

Yup, that's the exact same bug that I found when fuzzing locally. Syzbot is doing a great job!
How can I link the pending patch<EMAIL_ADDRESS>with this syzbot report?

You need to reply to the syzbot report email with "#syz fix:" command:
https://github.com/google/syzkaller/blob/master/docs/syzbot.md#communication-with-syzbot
Have you received the report email? If not, I can do it.
Also possible to just send a email to the Reported-by address<EMAIL_ADDRESS>

Done. Thanks!


New package: PSIS v0.1.0

Registering package: PSIS
Repository: https://github.com/ParadaCarleton/PSIS.jl
Created by: @ParadaCarleton
Version: v0.1.0
Commit: 565595a2907fb98868f7c3a01865bcab12a9be15
Git reference: HEAD

Superseded by #39904


Allowing to register thread event functions (start/stop/error)

@tianyi93 this should help you with registering callbacks for various thread events.

@hkaiser  Yes, it works as what we want. Thanks!


Fix typos.

[x] I have read CONTRIBUTING.md
[x] I have read CODE_OF_CONDUCT.md

Huge thank you for this!
I'll take a closer look tomorrow (or day after) as it needs a little polish in tests.

Thank you for your contribution! We collect all typo fixes into a single pull request and merge it once it gets big enough.


output GAF: genes in extensions need prefix

In the "GO style" v2.2 GAF, pombe gene IDs in annotation extensions should get the "PomBase" prefix. That will stop errors like this (from the snapshot report as of today 2021-11-03):
ERROR - Syntax error in annotation extension field: extensions should be relation(curie) and relation should have corresponding URI (coincident_with(SPAC821.08c)) -- PomBase SPAC23H4.17c srb10 is_active_in GO:0000791 PMID:22451489 IDA C mediator complex, cyclin-dependent protein kinase subunit Srb10 prk1|cdk8 protein taxon:4896 20131101 PomBase coincident_with(SPAC821.08c),existence_overlaps(GO:0000087)

Yep, all that to say "include a prefix". In this example the change is coincident_with(SPAC821.08c) --> coincident_with(PomBase:SPAC821.08c)
(also, oops, I missed this in the #848 discussion & testing)

I've fixed that for tonight's load.  Most of the genes had prefixes.  In a few cases the gene ID came from a promoter (like "SPAC821.08c-promoter") and the prefix was missing.
I'll double check the output in the morning.


[3.0] Godot doesn't compile on Windows: missing return value

Godot doesn't compile on Windows with MSVC:
In editor_import_export.cpp:
Error EditorExportPlatform::_save_pack_file(void *p_userdata,const String& p_path, const Vector<uint8_t>& p_data,int p_file,int p_total) {

}

What should this function return?

ERR_UNAVAILABLE
On 18 February 2017 at 17:26, Marc<EMAIL_ADDRESS>wrote:

Godot doesn't compile on Windows with MSVC:
Error EditorExportPlatform::_save_pack_file(void *p_userdata,const String& p_path, const Vector<uint8_t>& p_data,int p_file,int p_total) {
}
What should this function return?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/7838, or mute the thread
https://github.com/notifications/unsubscribe-auth/AGVmPXnsMZgQW6n5WQdCGnNsYuaZygy8ks5rd1PYgaJpZM4MFPvZ
.

Is this issue still valid? I just compiled the head of the master branch using VS2015 and linked successfully.

Yeah, it is invalid now, it was fixed by some commit that didn't reference it.


Added IE11 support!

The "Don't call me IE" patch wasn't quite complete. This should make it try to polyfill in IE11.
I don't know what Microsoft plan to do when they update IE11 in future. Hopefully this will continue working until IE11 stops being updated.

It's not a matter of being able to detect that the browser is IE11. It's because they removed the script#readyState feature in IE11, which is the core functionality that makes this polyfill work.

Thanks anyway!


How can I input an image to edit?

Hi,
First many thanks for sharing this great work.
I want to ask a question.  The input of InterFaceGAN is "Latent code". If I want to input a face image and edit the face,  how can I deal with? Need I transform the image as a "Latent code"? And how to do it?
Thank you.

Exactly. This work aims at interpreting the latent space and then achieves face editing with respect to latent code. To manipulate real image, you can try some GAN inversion methods to map the input image back to latent space. We are still working on this part to improve the inversion quality. Basically, you can try directly optimizing the latent code with back-propagation method. This part will be released in the future.

Hey @Play2Boy I describe a temporary solution here:
https://github.com/ShenYujun/InterFaceGAN/issues/17#issuecomment-535584873


Fixed compatibility issue with windows 7

https://github.com/libuv/libuv/issues/3260

Thanks for your review.
I'll explain.
I've made a typo here. ComputerNameDnsFullyQualified is gethostname+getdomainname on linux.
ComputerNameNetBIOS is probably the closest variant to gethostname, but incomplete.
ComputerNameDnsHostname will be correct most of the time. This is what many developers were using before GetAddrInfoW existed.
There are some differences:

Both GetHostName and GetComputerNameEx results can be overwritten by environment variable when working with clusters.
GetComputerNameEx with ComputerNameNetBIOS and GetHostName work the same here.
ComputerNameDnsHostname and others also use environment variable, but with different name: cluster hostname instead of just cluster name.
ComputerNameNetBIOS returnes truncated output (15), while GetHostName is limited by 255.
ComputerNameDnsHostname is capped by value inside registry.
If hostname length value is higher than 255, then GetHostName will fallback to NetBIOS name.
To handle this case more reliably we need to use WSALookupServiceBeginW api. Thats why GetHostName depends on winsock.
GetComputerNameEx and GetHostName use different registry values, but they get synchronized after restart. It is possible to "break" them, by editing registry and thus output will be different.

To emulate GetHostName with corner cases we need to:

Check environment variable for clusters.
If it fails, then use WSALookupServiceBeginW
If it fails, fallback to GetComputerNameEx(ComputerNameNetBIOS).

This will(probably) not get accepted anyway. Due to the fact that Windows is a closed source OS, 100% emulation is not trivial to achieve even with old leaked sources. There were small changes here and there between versions.
This approach is more reliable than original asci gethostname, so I'll leave it as reference.

I've took a different approach and implemented a complete drop-in replacement for this function.
It turned out it is just a POSIX-like abstraction level implemented on top of public APIs available for a long time.
This is basically the same level as libuv, but closed source and requires Win 8.1+.

CI: https://ci.nodejs.org/job/libuv-test-commit-windows-cmake/399/

Would be good if a second person could look through and review the implementation meets libuv's standards, to the spec described in https://github.com/libuv/libuv/pull/3285#issuecomment-908691202

I glanced at it but this is somewhat outside my area of expertise. I appreciate @kampeador's work but at 150 lines added I don't think it qualifies as an unobtrusive fix.

I do not mean to hurt author's attempt. The code seems to be a reverse engineered version of what ws2_32 does internally. Should a project depend on internal behavior of a closed source operating system?

wepoll is quite similar in that respect. It is the purpose of libuv to abstract away the internal behaviors of various OS.

Bumping to remove the stale label.

Hi everybody,
in the issue #3260, I read that libuv needs additional reviewers to accept this patch.
I'm willing to help, but I don’t know yet how I can be useful.
There is experience with C (mostly embedded) and a little bit with Win32 API.
I have quickly tested the uv__gethostnamew_nt60 function separately from libuv, so far there are no obvious issues:
https://gist.github.com/gresolio/cc149a2ae2dfabefd69d483e2f7ac182
Please tell me what I should pay attention to, what is desirable to evaluate?

Are there any updates on this PR? It would be awesome to have Windows 7 support restored in the next libuv release - it stops us from updating it.

Any update or plan for merging this?

Just close it if there is no intent to merge.

Any decision on this yet?

Any updates?

@kampeador It looks like we're very close to getting this merged, could you please consider addressing the latest review comments? Thank you in advance.
I hope it will be enough for project maintainers.

@FlyingDR more updated version of this PR: https://github.com/libuv/libuv/pull/3636
I don't have time to continue it though (we removed dependency on libuv because of that), feel free to overtake it.

Moved to https://github.com/libuv/libuv/pull/3636


Increased Payment Failures on Paygenius

Activitar is experiencing increased payment failures on our Paygenius payment integration. Our team has reached out to Paygenius who is investigating the issue. We will continue monitoring the situation and keep you updated as more information becomes available.

Paygenius has informed us that the issue was linked to a new requirement from ABSA when processing transaction for sub-merchants requiring us to pass their address. We have rolled back on this because it created unintended issues on some transactions. This issue has now been resolved.

Paygenius

Paygenius has informed us that the processing issue was linked to a new requirement from ABSA when processing transaction for sub-merchants requiring them to pass their address. Paygenius has rolled back on this because it created unintended issues on some transactions. This issue has now been resolved.

Our team has been monitoring the situation and the issue persists, we are in communication with Paygenius and will update you as soon as more information becomes available.

We have not seen any errors relating to this incident since 22-09-2021 14:50:00 GMT+2, marking as resolved.


Massive reduce on performance when bubble nip is visible

            ListView.builder(
              itemCount: 1000,
              itemBuilder: (BuildContext context, int index) {
                return Bubble(
                  nip: BubbleNip.rightTop,
                  child: Text('TEST MESSAGE BODY #$index'),
                );
              },

Thanks! I'll test it.

canvas.drawShadow() is very slow with unusual Path.

It seems to be working fine now.

I've created PR #10 that aims to improve perfomance in this situation

I have created the chat bubble using dart. You can easily modify according to your needs https://arkapp.medium.com/chat-bubble-widget-for-flutter-95d3bb82ddd8


fix($injector): Add support for native Safari classes

Change the mechanism to detect if a function is a class so it is compatible with Safari 9.

Interesting idea!

@petebacondarwin I know this is not a perfect solution, but I am not sure what other workaround is possible

I think I agree with @mprobst that this approach could cause problems.
I don't see any other solution at this stage.
I am also aware that these buggy browsers will probably soon get their act together and fix themselves.
While we look for a better solution, we could document it as a "known issue” with Safari - i.e. that you can't use native ES6 classes if your users are likely to run Safari 9.0.x.
In any case I suspect that the number of real applications doing this right now are going to be very small (and probably fixed on a single browser manufacturer) until the ES6 classes are much more widely available.

I somehow agree with @mprobst. Updated the PR so the constructor would only be called when the error thrown is a TypeError. This reduces the possible cases that users code would get called multiple times, but does not remove it completely

I wonder if we could get "even smarter" and try to ensure the error message contains some keyword(s).
Or if Safari is the only supported browser that "tricks" the isClass() function, then why not use it anyway and try to catch the specific error thrown by Safari ?
Just a few ideas off the top of my head (haven't tried anything)...

Safari 9: TypeError: Cannot call a class constructor
Chrome 47: TypeError: Class constructors cannot be invoked without 'new'
Firefox 42: SyntaxError: class is a reserved identifier (doesn't support ES6 classes)

Support for class will be in FF 45, but do not know what the error message will be

Firefox's error message is TypeError: class constructors must be invoked with |new|

I wouldn't rely on error messages when they're not standardized and every browser do them in a different way. Those messages may very well change and we'll be screwed.

The error messages are still not standardized, therefore we still don't have full support for native classes. Closing.


💚(e2e) fix e2e pip installation

Purpose
Our e2e installation fails, ie. https://app.circleci.com/pipelines/github/openfun/marsha/10975/workflows/adf6f62c-e571-47ff-8026-93801be8cd32/jobs/324019
Proposal
This is a try to fix our e2e pip installation.
Related to https://pypi.org/project/pep517/
I don't know what I'm doing…

I don't know what I'm doing…

@kernicPanel last version of pip is the issue. I try by installing an older version and it works. See my fixup


GetIntPtr in tensorflow/lite/tools/verifier.cc do not get correct value on Big Endian machine

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): N
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 20.04
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: N/A
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): 2.3.1
Python version: 3.8.5
Bazel version (if compiling from source): 3.1.0
GCC/Compiler version (if compiling from source): gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
CUDA/cuDNN version: N/A
GPU model and memory: N/A

Describe the current behavior
The GetIntPtr in tensorflow/lite/tools/verifier.cc is retrieving the int value from a typed const char* buffer. However, since flatbuffers always stores the data in Little Endian format regardless of host machine endianness, the direct reinterpret_cast<const uint32_t*> call will retrieve the wrong value on Big Endian platforms (as reinterpret_cast will assume the data is in host endianness), so the retrieved value needs to be byte-swapped.
Describe the expected behavior
GetIntPtr function should byteswap the value on Big Endian platform.
Standalone code to reproduce the issue
bazel test --host_javabase="@local_jdk//:jdk" --cache_test_results=no --build_tests_only --test_output=errors -- //tensorflow/lite/kernels:arg_min_max_test

This test will fail due to this reason on Big Endian systems.
Other info / logs
Usually, to solve this issue we could simply add a guard for __ORDER_BIG_ENDIAN__ and byteswap accordingly. The issue here is that the input type is const char* and the output type is const uint32_t*. Apparently, we do not want to make the change in-place, so at least we need to get a copy of the data then byteswap it and return it. Also, since we need to return a pointer, we have to allocate a new variable then return the address of it. The change could look like:
diff --git a/tensorflow/lite/tools/verifier.cc b/tensorflow/lite/tools/verifier.cc
index 1d0b813a2c..063246dcf2 100644
--- a/tensorflow/lite/tools/verifier.cc
+++ b/tensorflow/lite/tools/verifier.cc
@@ -40,7 +40,13 @@ void ReportError(ErrorReporter* error_reporter, const char* format, ...) {

 // Returns the int32_t value pointed by ptr.
 const uint32_t* GetIntPtr(const char* ptr) {
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+  uint32_t ret_val = flatbuffers::EndianScalar(*reinterpret_cast<const uint32_t*>(ptr));
+  const uint32_t ret = &ret_val;
+  return ret;
+#else
   return reinterpret_cast<const uint32_t*>(ptr);
+#endif
 }

 // Verifies flatbuffer format of the model contents and returns the in-memory

The problem with this approach is the local variable ret_val will not live long enough for its value to be retrieved - so what we can get from *GetIntPtr(buffer_ptr) is basically a deallocated memory space. Since it is unavoidable that we need to allocate new memory space, we have to make it outlive the function call. I also tried static uint32_t ret_val, and it worked for the first function call but fail for the following ones. Seems like the const uint32_t* return type makes the compiler believe static uint32_t ret_val is const after the first call.
Due to these reasons, seems like we could not make a simple modification to the function GetIntPtr() to fix the issue; it seems that we have to take care of the issue every time the function is called (by either create a new static variable for each function call or simply deal with the value manually after the function returns) if we keep the current signature of the function.
However, I do have another solution here, which is to change the return type from const uint32_t* to const uint32_t. This change is applicable because this function is only used within verifier.cc, and every time it is called we simply need the value of it (i.e. we only need *GetIntPtr(buffer_ptr)). So it actually does not incur any issue if we make the change. The endianness issue will also be easily solved by something like this (plus change from *GetIntPtr to GetIntPtr wherever it is called):
diff --git a/tensorflow/lite/tools/verifier.cc b/tensorflow/lite/tools/verifier.cc
index 1d0b813a2c..bb71f1228e 100644
--- a/tensorflow/lite/tools/verifier.cc
+++ b/tensorflow/lite/tools/verifier.cc
@@ -39,8 +39,12 @@ void ReportError(ErrorReporter* error_reporter, const char* format, ...) {
 }

 // Returns the int32_t value pointed by ptr.
-const uint32_t* GetIntPtr(const char* ptr) {
-  return reinterpret_cast<const uint32_t*>(ptr);
+const uint32_t GetIntPtr(const char* ptr) {
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+  return flatbuffers::EndianScalar(*reinterpret_cast<const uint32_t*>(ptr));
+#else
+  return *reinterpret_cast<const uint32_t*>(ptr);
+#endif
 }

 // Verifies flatbuffer format of the model contents and returns the in-memory

I could submit a PR for such a change if it is considered valid, and I will appreciate it if there are any other simple solutions or suggestions.

I think that a PR is ok.

Hi Sidong,
I think the second approach makes sense. A PR will be appreciated.
Thanks,
Tiezhen

Thanks for the feedback, I will initiate a PR shortly after.

PR has been initiated: https://github.com/tensorflow/tensorflow/pull/45010

Close the issue as PR has been merged.


Update chromedriver to 2.27

The coded UI tests were failing when chromedriver.exe crashed.
Updating to the latest version of chromedriver (at the time of this PR) eliminates the crash and allows the tests to run. Some tests were failing in my context but I think that investigating that should be a separate is exercise

Thanks for the update @recumbent I'll merge this now.  :shipit:


[False positive] Redis::set() parameters

Larastan Version: #.#.#
--level used:
Pull request with failing test:

Description
Laravel code where the issue was found

Can you re-create the issue sharing a snippet where the issue was found?


All Set-Cookie responses incorrectly assumed to be auth cookies

In short:
splunklib expects any Set-Cookie to be an auth cookie from Splunk. This is a problem when authenticating with a bearer token.
When hosting Splunk behind a load balancer like F5, which sets its own Set-Cookie in the response for connection persistence (stickiness), the Set-Cookie in the response from F5 will be included in the request headers instead of the splunk bearer token due to the logic in splunklib/binding.py#L520
When authenticating with user/pass, this makes sense, since Splunk API responds with a Set-Cookie for the session token (splunkd_8089). With a bearer token, Splunk does not respond with a session token, however the _auth_headers function seems to expect any Set-Cookie to be a session token.
The result is that, with bearer token authentication, requests to the Splunk API after the initial request will fail with "Request failed: Session is not logged in"
To Reproduce

Host Splunk behind F5 with stickiness enabled (Or any middleware that adds a Set-Cookie to the HTTP response)
Create a splunklib.client.Service with bearer token authentication
Perform a call that requires authentication and see that it fails

client = splunklib.client.Service(host='..', splunkToken='XXXX')
client.info()

Expected behavior
Authentication should work
Workaround
By passing the splunk token header manually, splunklib will include both the stickiness cookie as well as the splunk token in the requests.
client = splunklib.client.Service(host='..', splunkToken='XXXX', headers=[('Authorization', 'Splunk {}'.format('<token>'))])
client.info()

Splunk:

Version: Any, presumably

SDK:

Version: Tested with 1.6.16

Thanks for reporting this issue with the detailed information, we'll investigate it and try to provide a fix.

Hi @bendikro , we have added the fix and it will be available in the next release. Reference

Thanks, that solves the authentication problem. However, the fix does not take the Set-Cookie from the middleware into consideration. Any non-auth-cookies in self.http._cookies are no longer included in the requests.

@bendikro we would request you to use the latest Python SDK and let us know if it resolves the issue.

@bendikro we would request you to use the latest Python SDK and let us know if it resolves the issue.

Hi
Version 1.7.0 gives TypeError due to this change: https://github.com/splunk/splunk-sdk-python/pull/463/files#diff-701b42a0245cf832be44eb595d99bef52b3afca77ae631caa24643ed1ea6c4f3R547

Hi @bendikro , we have fixed the TypeError and it will be available in the next release. Reference

@bendikro we would request you to use the latest Python SDK release. We have fixed the code for TypeError and also considered your suggestion in the fix. Please let us know if it resolves your issue. Thanks!

@bendikro we would request you to use the latest Python SDK release. We have fixed the code for TypeError and also considered your suggestion in the fix. Please let us know if it resolves your issue. Thanks!

Seems to be working now with version 1.7.1. Thanks!


Reduce duplicate data from entity columns

I hate that this PR had three features in it, but these matched so well together 😉 If desired we can split it up and land them one by one.
Change No.1
I removed the system and domain column in some of the tables as suggested in #4553. @adamdmharvey can you take a look if I missed something? I choose not to modify the presets as they are also used in other places (except the one for the domains, but I would prefer to keep that one as-is, too).

Change No.2
I change the description column to take up as much space as possible while keeping the overflow support. That work quite neat when resizing. Both for the catalog and api-docs.
Before (actual this screenshot is wrong, because it's without the new overflow feature...):

After:

Change No.3
Introduced the new overflow component in the description column of the entity table:

Here I noticed an issue with the overflow component. Look closely at the "g" in the description. The lowest 1-2 pixel rows are cut off...

This is actual an issue with react-text-truncate as it sets the inner span to overflow: hidden but I don't get why. If I remove it, it still works fine... We could do it ugly this way, but I'm not sure which other stuff I might break that way:
+const useStyles = makeStyles({
+  container: {
+    overflow: 'visible !important',
+  },
+});

 export const OverflowTooltip = (props: Props) => {
   const [hover, setHover] = useState(false);
+  const classes = useStyles();

   const handleToggled = (truncated: boolean) => {
     setHover(truncated);
   };

   return (
     <Tooltip
       title={props.title ?? props.text!}
       placement={props.placement}
       disableHoverListener={!hover}
     >
       <TextTruncate
         text={props.text}
         line={props.line}
         onToggled={handleToggled}
+        containerClassName={classes.container}
       />
     </Tooltip>
   );
 };

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[x] Screenshots attached (for UI changes)

Tugboat has finished building the preview for this pull request!
Link:

https://pr4602-5a1musfdott8leobiov0kxbu5waufoci.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/602febe565f8175876f4eb09


initConnection throwing "Billing is unavailable" on SM-G988N

Please use the Discussion board if you want to get some help. Please use issues to report bugs.

Description
Starting in the past couple of days we are seeing many errors in our logs when calling initConnection on specifically SM-G988N Android devices. This does not seem to be affecting any other devices at anywhere near the same % of users. All these devices also seem to be running Android 9.
Billing is unavailable. This may be a problem with your device, or the Play Store may be down.

Expected Behavior
The connection initiated successfully.

Screenshots

Environment:

react-native-iap: 12.10.0
react-native: 0.69.9
Android 9
SM-G988N

To Reproduce
Steps to reproduce the behavior:

Call initConnection
Error 'Billing is unavailable. This may be a problem with your device, or the Play Store may be down.' is throw

@jwoodmansey hi, I have the same issue. Could you tell me more details about how you resolved it?


Flatcar SDK: add experimental prefix builds

This PR adds experimental prefix builds to the Flatcar SDK.
Prefix builds use a custom sys prefix path and emerge all binaries and runtime dependencies into that prefix.
This path can then e.g. be shipped as a portable sysext since it includes all dependencies, and has libraries at a custom path so these do not conflict with libraries on target systems.
Prefix uses a staging environment (path) featuring a full-blown development environment, and a "final" environment for installing. Staging and final need to be created using setup_prefix first, which will also create an emerge wrapper to emerge ebuilds into staging and subsequently final. The root fs in final may be used to create a distro independent, portable sysext.
See the readme at https://github.com/chewi/flatcar-distro/blob/hackathon-prefix-builds-sync-to-upstream/PREFIX.md for more information.
How to use
Prefix requires cross-boss to be available locally.
Testing was done with the latest Alpha SDK, not the nightly build SDK.
The latest development is in the hackathon-prefix-builds-sync-to-upstream branch.
git clone https://github.com/chewi/flatcar-distro.git
cd flatcar-distro
git checkout hackathon-prefix-builds-sync-to-upstream

git clone https://github.com/chewi/cross-boss

./run_sdk_container -C ghcr.io/flatcar/flatcar-sdk-all:3717.0.0 -n flatcar-sdk-prefix-3717.0.0 -t

In the SDK container, initialise a prefix, then build (for example) python into it:
# Create prefix staging and final; bootstrap staging env
# Syntax is "setup_prefix <name> <prefix-path>
./setup_prefix prefixtest /usr/local/
emerge-prefix-prefixtest-amd64-usr python

Prefixes are architecture aware; the same prefix name can be used for multiple archs
./setup_prefix --board=arm64-usr prefixtest /usr/local/
emerge-prefix-prefixtest-arm64-usr python

"Final" environments will be in __prefix__/<board>/prefixtest after the builds conclude. __prefix__/<board>/prefixtest/root contain the root FS and can be used to create sysexts.
Testing done
Built the above (see "How to use") for amd64 and arm64, created a python sysext, tested on Flatcar x86_64 and arm64 QEmu instances.

[ ] Changelog entries added in the respective changelog/ directory (user-facing change, bug fix, security fix, update)
n/a Inspected CI output for image differences: /boot and /usr size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.

Thanks for working on this. To understand, what is the output of ldd /usr/local/my-stuff/usr/bin/python, for example?

Apparently things broke when I rebased this to the latest main (conflicting glibc and python eboulds). I'll close this, squash and apply a single patch in a branch directly in the scripts repo, and file a new PR.
Output of ldd:
core@localhost ~ $ ldd /usr/local/flatcar/usr/bin/awk
        linux-vdso.so.1 (0x00007fffb67aa000)
        libreadline.so.8 => /lib64/libreadline.so.8 (0x00007f0391d14000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f0391c36000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f0391a55000)
        libtinfow.so.6 => /lib64/libtinfow.so.6 (0x00007f0391a15000)
        /usr/local/flatcar/lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f0391e21000)

@pothos let's continue the discussion in the new PR, will close this one.

Output of ldd:
core@localhost ~ $ ldd /usr/local/flatcar/usr/bin/awk
        linux-vdso.so.1 (0x00007fffb67aa000)
        libreadline.so.8 => /lib64/libreadline.so.8 (0x00007f0391d14000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f0391c36000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f0391a55000)
        libtinfow.so.6 => /lib64/libtinfow.so.6 (0x00007f0391a15000)
        /usr/local/flatcar/lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f0391e21000

Oh, is this what you expect? It seems to use the host libraries which is wrong.

@pothos It's the output of the host ldd. If I use /usr/local/flatcar/usr/bin/ldd /usr/local/flatcar/usr/bin/awk then I get
linux-vdso.so.1 (0x00007ffd0ccbf000)                                   k
libreadline.so.8 => /usr/local/flatcar/usr/lib64/libreadline.so.8 (0x00007f1ca7184000)
libm.so.6 => /usr/local/flatcar/lib64/libm.so.6 (0x00007f1ca70a7000)
libc.so.6 => /usr/local/flatcar/lib64/libc.so.6 (0x00007f1ca6ed4000)
libtinfow.so.6 => /usr/local/flatcar/usr/lib64/libtinfow.so.6 (0x00007f1ca6e93000)
/usr/local/flatcar/lib64/ld-linux-x86-64.so.2 (0x00007f1ca728c000)


Add PermissionDenied error response to authorization webhook

What would you like to be added:
Add PermissionDenied response to Authorization webhook response error.
I think it would be good to talk about the spec.
issue starting point: https://github.com/yorkie-team/yorkie/pull/203#discussion_r662523173
Why is this needed:
This is to distinguish between Unauthenticated and PermissionDenied responses.

@hackerwins Could I try this issue?

@dc7303 Of course!

Both authentication and authorization checks should be performed by the external auth server.
In the case of Yorkie Server, there is a need to receive "unauthenticated" and "permission denied" responses from the Auth server and send them to the client. If the token of the client is not authenticated, the client can retry the request after acquiring a new token. However, if the client doesn't have permission to the request, they cannot retry.
Currently, only the unauthenticated status code is being passed from Yorkie server. There was a consideration of whether to explicitly pass PermissionDenied in the status code when the Auth server determines the lack of permissions.


Simplify getAuthConfigFromSecret and extractProtocol

Fixes #2905
In #2902 we migrated the getAuthConfigFromSecret and extractProtocol functions, as they were used in ResolveAuthContextFromLegacySecret: https://github.com/knative-sandbox/eventing-kafka-broker/blob/df192313795eb858fc10132dac474bd7cfe8b032/control-plane/pkg/security/secrets_provider_legacy_channel_secret.go#L33-L34
At that place they are only to figure out the protocol and doesn't need all the other overhead.
This PR addresses it and simplifies the  getAuthConfigFromSecret and extractProtocol functions to just have a function that given a "legacy channel secret" returns protocolStr, protocolContract.
In addition we cleanup the KafkaAuthConfig structs which are thus not needed anymore.
This is the follow up on https://github.com/knative-sandbox/eventing-kafka-broker/pull/2902#discussion_r1071235108
/kind cleanup

/assign @pierDipi

@pierDipi Could you PTAL at this PR? It is the follow up on https://github.com/knative-sandbox/eventing-kafka-broker/pull/2902#discussion_r1071235108

/test integration-tests

/retest


Revert "Adjust Zabbix alert thresholds for ES disks"

Reverts openshift/openshift-tools#4068
We tried these settings for a week, and found Zabbix to be alerting us around 72%. At that point, ES isn't moving any data off of the disks, so the alert remains triggered. Basically it made for a noisy, unactionable alert. Here's one for example:
# for pod in $(oc get pods -n openshift-logging -l component=es -o name | awk -F/ '{print $2}'); do oc exec ${pod} -n openshift-logging -- df -lh |  grep /elasticsearch/persistent; done
/dev/xvdbd                              493G  220G  273G  45% /elasticsearch/persistent
/dev/xvdbl                              493G  137G  356G  28% /elasticsearch/persistent
/dev/xvdcy                              493G  354G  139G  72% /elasticsearch/persistent

So in this case, /dev/xvdcy triggered the alert. New indexes are not being created on /dev/xvdcy, and instead the indexes are created on the other two nodes. This is good, but a human should not be involved yet. Not until all 3 disks are closer to being full.

/lgtm
/approve


Shake unanswered rebus when Enter is pressed

Associated Issue: #67
Summary of Changes

Shake unanswered rebus when Enter is pressed
Tests

@ollelauribostrom I'm trying to figure this out whole weekend, but can't solve this coverage problem :/


ZALLY-113 Introduce Checkstyle for Server

Related to #113
🔋
⚠ the issues spotted by Checkstyle tool will be fixed in a separate PR

👍


Added equilibrium_point.cpp

Signed-off-by: rithwik003<EMAIL_ADDRESS>

@ar7aditya I want to add this PR for the Hacktoberfest 2022, So please check my PR.

my Issue link : https://github.com/ar7aditya/DSA/issues/158


make nodeos use mongod.conf to change dbpath

Currently when trying to use the mongodb plugin, I get this error
2018-10-11T15:47:15.635 thread-0   mongo_db_plugin.cpp:513       handle_mongo_excepti ] mongo exception, mongo init, line 1391, code 15, generic server error

It did work before, but then I did a few tweaks here and there to change the dbpath to save the db on the other HDD.
I figured out, when I run solely mongo in the terminal, I get the a related error --> Failed to connect to <IP_ADDRESS>:27017, reason: errno:111 Connection refused
When I run mongod (daemon) --> ERROR: dbpath (/data/db) does not exist.  Create this directory or give existing directory in --dbpath.
In case I run mongod --config /etc/mongod.conf, to use the adjusted config file with specific dbpath, everything works as expected. mongo afterwards as well
When starting nodeos it seems to use the old dbpath and NOT dbpath from /etc/mongod.conf and /etc/mongo.conf, although I ran mongod before with the right path.
The question is how can I make nodeos use mongod --config /etc/mongod.conf? Or how can I change this globally ?
Running Ubuntu 16.04 on DigitalOcean and eos 1.3 with the following config.ini
http-server-address = <IP_ADDRESS>:8888
p2p-listen-endpoint = <IP_ADDRESS>:9876
bnet-endpoint = <IP_ADDRESS>:4321

blocks-dir = "/mnt/volume_lon1_01/blocks"

bnet-follow-irreversible = 0
bnet-no-trx = false
bnet-peer-log-format = ["${_name}" ${_ip}:${_port}]
read-mode = read-only
validation-mode = light
mongodb-uri = mongodb://localhost:27017/EOS
mongodb-queue-size = 2048
mongodb-abi-cache-size = 2048
mongodb-block-start = 1
mongodb-store-transactions = 1
mongodb-store-transaction-traces = 1
mongodb-store-action-traces = 1
mongodb-filter-on = *
mongodb-filter-out = eosio:onblock:
mongodb-filter-out = gu2tembqgage::
mongodb-filter-out = blocktwitter::

wasm-runtime = wabt
p2p-max-nodes-per-host = 1
http-validate-host = false
https-client-validate-peers = 1
abi-serializer-max-time-ms = 5000
chain-state-db-size-mb = 32000
reversible-blocks-db-size-mb = 340
contracts-console = false
allowed-connection = any
max-clients = 100
network-version-match = 0
sync-fetch-span = 500
connection-cleanup-period = 30
max-implicit-request = 1500

access-control-allow-origin = *
access-control-allow-headers = *
access-control-allow-credentials = false
verbose-http-errors = true

plugin = eosio::chain_plugin
plugin = eosio::chain_api_plugin
plugin = eosio::bnet_plugin
plugin = eosio::http_plugin
plugin = eosio::mongo_db_plugin

nodeos does not use mongod.conf and does not ever launch mongod itself.  It is your responsibility to match your mongodb-uri = configuration with whatever listen port you have configured in your mongod.conf.  If the listen port has changed from 27017, you will need to make the same change in the nodeos config.ini.


Automated cherry pick of #7102

Cherry pick of #7102 on release-5.30.
/cc  @amyblais

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.

Trying to auto merge this PR.

Pull Request successfully merged
SHA: f4ca048f57007c881df60e6575ee91bd45795fe1


XDomain sender should drop the telemetry if the Endpoint protocol and the hosting page protocol don't match

XDomainRequest requires the same protocol as the hosting page. If the protocol doesn't match, we can't send the telemetry :(
Fixes #314

:+1:


When no explicit has keys, deaggregation throws an IndexError

PR here: https://github.com/awslabs/kinesis-deaggregation/pull/4
If there are no explicit hash keys, attempting to index the ehks object fails with an IndexError:
list index out of range: IndexError Traceback (most recent call last): File "/var/task/function.py", line 38, in lambda_handler records = data_pipeline.extract_records_from_kinesis_event(lambda_event) File "/var/task/data_pipeline/utils.py", line 29, in extract_records_from_kinesis_event ret = [base64.b64decode(x['kinesis']['data']) for x in iter_deaggregate_records(event['Records'])] File "/var/task/aws_kpl_deagg/deaggregator.py", line 178, in iter_deaggregate_records error_string = _get_error_string(r, message_data, ehks, pks, ar) File "/var/task/aws_kpl_deagg/deaggregator.py", line 88, in _get_error_string (ehks[mr.explicit_hash_key_index] is not None, File "/var/task/google/protobuf/internal/containers.py", line 64, in getitem return self._values[key] IndexError: list index out of range

Thanks for the feedback.  Stuck in a class at the moment, but I'll attempt to get this patched in ASAP.

Pull request has been merged.  I'm going to leave this issue open until I can submit the new version to Pypi.  Thanks!

New version 1.0.10 is now available on PyPI:  https://pypi.python.org/pypi/aws_kpl_deagg
Closing issue.
Thanks Bill!


Fizz Buzz Solution

Thank you for your PR!
Unfortunately a solution similar to yours has already been submitted :/
The goal is to find creative/abstract new solutions to FizzBuzz.
See The top 5 samples here.
Thanks anyway! :)


World map background in flowcharting/draw.io?

Looking for world map as a background and then draw the usual draw.io shaped on top of it. Any suggestion, please?
Example:

You can add an svg or png in your draw.io

@paregupt
more about the discussion here
and here
You only want a map "background" meaning you don't want to color (apply any effects) to each country and place boards on top of it?

Initially, I was only looking for a map background and use usual shapes for other purpose, like metric display, color change, etc. But looks like more may be possible. Thank you @algenty and @CrashLaker. Looks promising. Let me try and share with you.


Disabled auto complete in login form

Describe the feature you'd like
Hi, in best practice security guideline password auto complete should be disabled in login form.
Describe the benefits this would bring to existing BookStack users
Improve security
Can the goal of this request already be achieved via other means?
No, it should be disabled from form.
Have you searched for an existing open/closed issue?

[X] I have searched for existing issues and none cover my fundemental request

How long have you been using BookStack?
0 to 6 months
Additional context
No response

It's beed debated, i found it


Add config to disable the player volume dampening.

In MoreCompany/AudioMixerPatches.cs, the player volume is divided by 16, this makes every players way more quieter and while it adds ambience. It's fairly annoying with mods that add ambience noise like Wesley's moons. It makes everyone very hard to hear.
Would it be possible to add a config to modify it or disable it?

the player volume is divided by 16

That's because the vanilla volume is multiplied by 16 due to it using different logic which we can't easily use as it doesn't allow a dynamic amount of players easily (the slider is maxed at the highest possible volume already)

Yeah, I'm aware, but I like the vanilla volume level haha.

Should be fixed in the next update https://github.com/notnotnotswipez/MoreCompany/pull/87


[QUESTION] Count Steps 24/7

Hi, I was wondering if it is possible to always count the steps even when the user doesn't have the app launched, or is there any advice on how to do so? 😁

Not with how this is implemented, at least not on iOS. See: https://stackoverflow.com/questions/28072009/can-i-listen-to-cmpedometer-in-the-background-and-send-a-local-push-notification


chore: replacing Data Client with new wrappers (Part-3)

Towards #2454
This change has followings updates:

Updates Data client references in AbstractBigtableTable and BigtableAsyncTable.
Removed label's check from FlatRowAdapter, and moved it to BigtableWhileMatchResultScannerAdapter.
   -  Table#get, Table#getScanner(except when whileMatchFilter is applied) would return cells with labels to user.
Updates BigtableWhileMatchResultScannerAdapter to adapt to hbase's ResultScanner.

Note: This is part 3 of the series of PRs to replace references of BigtableSession/Data/Admin clients with new wrappers.

Sorry for the noise, I had mistakenly closed this PR.
I have now restored and addressed the feedback comments. PTAL


Bump gstreamer and its ecosystem

The main code change is that GhostPad::with_target() now takes only one argument, so we use GhostPad::builder_with_target() and its builder pattern instead.

Thanks for the contribution and apologies for taking so long to get to it. Before I got to reviewing PRs I have already updated gstreamer as part of fixing compatibility with recent Jitsi Meet versions, so I'm closing this.


Atomically write the hosts files when syncing hosts

The file lock acquired by syncAll prevents another process from syncing
the hosts file concurrently, but we don't acquire that lock while
reading the hosts files. This could lead to a concurrent reader seeing
an empty hosts file.

This change is

Oops. Good catch.
I'm having trouble convincing myself this is correct, though. loadClusters reads all files in the hosts directory, so it's going to pick up these .tmp files. Maybe that's fine? But I think it might be cleaner to just acquire the flock in loadClusters instead of making each file write atomic.

I'm having trouble convincing myself this is correct, though. loadClusters reads all files in the hosts directory, so it's going to pick up these .tmp files. Maybe that's fine? But I think it might be cleaner to just acquire the flock in loadClusters instead of making each file write atomic.

syncAll is somewhat slow, though. I don't think it is a big problem that loadClusters sees the .tmp files. It will just create clusters with those file names. But also easy to skip those files.

SGTM

I should mention for posterity that I discovered this issue because I'm running the kv{0,95} roachtests in a loop, back filling performance numbers for binaries over the course of the 2.1 release cycle. Before this change I would very quickly hit an error when creating a cluster where it appeared the cluster had 0 nodes. The relevant factor here was that I was running roachtest run 'kv(0|95)/encrypt=false'. This runs 4 tests concurrently and thus creates 4 clusters concurrently. After this change, I've successfully run 5 back fill iterations without incident.


Standalone Prosody server

Apr 08 22:34:08 c2s1bc09c0	info	Client connected
Apr 08 22:34:08 c2s1bc09c0	info	Session closed by remote with error: invalid-xml
Apr 08 22:34:08 c2s1bc09c0	info	Client disconnected: connection closed

I've ripped out LDAP, managed to npm install and get Kaiwa to run.
I'm using the mod_websockets from the kaiwa-server repo, and lua-bitop is installed.
Anybody know what the issue is before I continue working on this tomorrow?

Could you enable debug logging in Prosody? (how to do that is generally described in the comments of the logging section in the config file)

Apr 09 15:28:18 socket	debug	server.lua: auto-starting ssl negotiation...
Apr 09 15:28:18 socket	debug	server.lua: attempting to start tls on tcp{client}: 0x1335c28
Apr 09 15:28:18 socket	debug	server.lua: accepted new client connection from xx.xx.xx.xx:55560 to 5281
Apr 09 15:28:18 socket	debug	server.lua: ssl handshake done
Apr 09 15:28:18 http.server	debug	Firing event: GET x.x.io/xmpp-websocket
Apr 09 15:28:18 c2sf4d6a0	info	Client connected
Apr 09 15:28:18 mod_websocket	debug	Websocket received: <open xmlns="urn:ietf:params:xml:ns:xmpp-framing" version="1.0" xml:lang="en" to="x.x.io"/> (98 bytes)
Apr 09 15:28:18 c2sf4d6a0	debug	Client sent opening <stream:stream> to x.x.io
Apr 09 15:28:18 c2sf4d6a0	debug	Sent reply <stream:stream> to client
Apr 09 15:28:18 mod_websocket	debug	Websocket received: <error xmlns="http://etherx.jabber.org/streams"><invalid-xml xmlns="urn:ietf:params:xml:ns:xmpp-streams"/></error> (114 bytes)
Apr 09 15:28:18 mod_websocket	debug	Websocket received: <close xmlns="urn:ietf:params:xml:ns:xmpp-framing"/> (52 bytes)
Apr 09 15:28:18 c2sf4d6a0	info	Session closed by remote with error: invalid-xml
Apr 09 15:28:18 c2sf4d6a0	debug	c2s stream for <xx.xx.xx.xx> closed: session closed
Apr 09 15:28:18 c2sf4d6a0	debug	Destroying session for (unknown<EMAIL_ADDRESS>Apr 09 15:28:18 c2sf4d6a0	info	Client disconnected: connection closed
Apr 09 15:28:18 c2sf4d6a0	debug	Destroying session for (unknown) ((unknown)@(unknown))
Apr 09 15:28:18 socket	debug	server.lua: closed client handler and removed socket from list
Apr 09 15:28:18 c2sf4d6a0	debug	Received </stream:stream>
Apr 09 15:28:18 c2sf4d6a0	debug	Attempt to close already-closed session

Currently looking at the client websocket implementation to see if I can figure this out.

It seems stanza.io requires the 0.10 dev version of prosody to function properly without any changes.

It looks like there's also a hacked-around patch to websocket.js in Docker/app/stanza.io/websocket.js:
        if (data.indexOf("<stream:stream") > 0 && data.indexOf("</stream:stream") == -1) {
            data += "</stream:stream>";
        }

That said,
A) it'd be nice if that part of the install would Do The Right Thing without being hidden under the docker stuff.  What if I'm not using docker?
B) hacking in special case support with string literal checks to compensate for a general purpose failure to (apparently) understand self-closing tags is.... uh, slightly worrisome?  Seems a bit fragile.

I am also trying to get this to work with a standalone prosody server, I am running 0.10 already and these are the logs I get:
Jul 01 11:41:49 socket  debug   accepted incoming client connection from: X.X.X.X 56720 to 5280
Jul 01 11:41:49 http.server     debug   Firing event: GET example.org/xmpp-websocket/
Jul 01 11:41:49 c2s116dab0      info    Client connected
Jul 01 11:41:49 mod_websocket   debug   Websocket received frame: opcode=1, 96 bytes
Jul 01 11:41:49 c2s116dab0      debug   Client sent opening <stream:stream> to example.org
Jul 01 11:41:49 c2s116dab0      debug   Sent reply <stream:stream> to client
Jul 01 11:42:00 c2s124fd40      debug   Received[c2s]: <r xmlns='urn:xmpp:sm:3'>
Jul 01 11:42:04 c2sd2b990       debug   Handled 186 incoming stanzas
Jul 01 11:42:04 c2sd2b990       debug   Received[c2s]: <iq id='2587' type='get' to='example.org'>
Jul 01 11:42:04 c2sd2b990       debug   #queue = 1
Jul 01 11:42:04 c2sd2b990       debug   Received[c2s]: <a xmlns='urn:xmpp:sm:2' h='400'>
Jul 01 11:42:04 c2sd2b990       debug   #queue = 0
Jul 01 11:42:49 socket  debug   connection failed in read event: closed
Jul 01 11:42:49 socket  debug   closing client with id: 11745e0 closed
Jul 01 11:42:49 c2s116dab0      info    Client disconnected: closed
Jul 01 11:42:49 c2s116dab0      debug   Destroying session for (unknown) ((unknown)@example.org): closed

Any ideas what needs done?


QT Creator can't find TestRunner QtQuickTest Automator, whare are they from?

what dependencies that I have to install ?

updates: I am using qt creator 5.0.0 on windows 10.

If you just want to try the library, you could copy the asyncfuture.h into your project. For running the test case, you need to install required packages via qpm - A package manager for Qt .

after reinstall qt creator and change to msvc kit resolve the problem.
still fail for mingw64 on windows. it seems lost some libs  if using mingw64.

This has been ported to CMake on https://github.com/vpicaver/asyncfuture. See the documentation at the bottom of the README.md


why am i assigned as default to a new deployment issue rather than repository owner?

i think this may be related to the deployment pipeline job of assignee for the issue management section being the person who triggered the job via github event like PR or commit etc.
                gh -R "${{ github.repository }}" issue create \
                    -t "Deployment $nextenvironment ${{ env.service_name }} ${{ env.service_version }}" \
                    -a "${{ github.event.issue.assignee.login }}" \
                    -b "The deployment job in $deployment_environment environment triggered this deployment" \
                    -l "deployment" \
                    -p "${{ env.deployment_project }}"


fix CI build for Debian

fixes #38
This PR adds two role dependencies:

geerlingguy.docker for docker
nginxinc.nginx (the official nginx role)

Both dependencies were necessary to fix the builds on debian 9/10.
Open Questions:

I currently add "dokku" as a user who can access the docker daemon without password (hardcoded). Is this necessary / desirable or should the default be empty?
We could make this configurable (in this case one might not even need a dedicated variable in the dokku role and could directly specify the corresponding variable of the docker role - to check)

Re: passwordless user, I think thats fine, isn't that how it works by default? Or am I missing something...
Configurable would be best :)

Re: passwordless user, I think thats fine, isn't that how it works by default? Or am I missing something...

You are right - on the machine where I installed dokku, I can access the docker daemon without sudo as the dokku user.
Is that part of the dokku installation?
Because it is not the default behavior in the sense that the ubuntu user, through which I ran the ansible role, does not have this privilege.

Configurable would be best :)

I agree.

I wonder who owns that socket...

$ sudo ls /var/run/docker.sock -ltra
srw-rw---- 1 root docker 0 Jan  3 14:00 /var/run/docker.sock

I guess somewhere along the installation, dokku gets put into the docker group (which is exactly what the geerlongguy.docker role does as well).

Yeah I think that happens in the dokku installation, since the dokku binary calls out to docker.

I checked that one can specify the docker_users variable on the ansible-dokku role and that it properly propagates into the geerlingguy.docker role.
Link to role variables of docker and nginx now documented in README as well.

Let me know when you want a review.

Let me know when you want a review.

Yes, please :-)
I can currently not ask for reviewers via the web api.

Done!

I also removed the defaults/main.yml target in the Makefile since I believe it was superfluous (?)
I've cleaned up the last few commits a bit - still, feel free to "squash & merge" when it's ready.

Still a few changes left, but close!

Looks like the tests pass ;-)
Sorry for the back & forth on this one


fix: add checks when minio is required

What this PR does / why we need it:
This PR ensures the mandatory selection.
We must have minio on those scenarios.

kots + openebs without rook requires minio
registry + openebs without rook requires minio
multi node velero + openebs without rook requires minio
kots (disableS3) + openebs without rook does not require minio

Which issue(s) this PR fixes:
Fixes # [sc-70234]
Special notes for your reviewer:
Example:

Steps to reproduce
Does this PR introduce a user-facing change?
Adds check that OpenEBS will be installed with MinIO when it is required.

Does this PR require documentation?

@emosbaugh, @laverya
See: https://github.com/replicatedhq/kURL-api/pull/180/files where you can check the tests made which might make easier this review. It its with the rules defined in the shortcut:

kots + openebs without rook requires minio
registry + openebs without rook requires minio
multi node velero + openebs without rook requires minio
kots (disableS3) + openebs without rook does not require minio

However, let me know if something is wrong.

I wrote those and I dont believe it is accurate. this is correct i think
general preflights:

- kots (disableS3 == false) + openebs without rook requires minio
- velero (kots.disableS3 == false) + openebs without rook requires minio
- kots (disableS3 == true) + openebs without rook does not require minio

additional preflights when migrating from rook to openebs:

- registry + openebs without rook requires minio - we do not yet support migrating from object store backed registry to pvc backed

Hi @emosbaugh,

I wrote those and I dont believe it is accurate. this is correct i think
general preflights:

kots (disableS3 == false) + openebs without rook requires minio
velero (kots.disableS3 == false) + openebs without rook requires minio
kots (disableS3 == true) + openebs without rook does not require minio

additional preflights when migrating from rook to openebs:

registry + openebs without rook requires minio - we do not yet support migrating from object store backed registry to pvc backed

I see: I am getting this one merged since it is approved with the "general preflights" added by you and I will be working on the follow up for we check the migration. Thank you for the help.


LISA can not run on multi-GPU setting

Please check that this issue hasn't been reported before.

[X] I searched previous Bug Reports didn't find any similar reports.

Expected Behavior
The LISA should run on multi-GPU.
Current behaviour
The LISA can only run on single-GPU.  Change to the multi-GPU will lead to below bug.
RuntimeError: Expected to have finished reduction in the prior iteration before starting a new one. This error indicates that your module has parameters that were not used in producing loss. You can enable unused pa
rameter detection by passing the keyword argument `find_unused_parameters=True` to `torch.nn.parallel.DistributedDataParallel`, and by
making sure all `forward` function outputs participate in calculating loss.
If you already have done the above, then the distributed data parallel module wasn't able to locate the output tensors in the return value of your module's `forward` function. Please include the loss function and th
e structure of the return value of `forward` of your module when reporting this issue (e.g. list, dict, iterable).
Parameter indices which did not receive grad for rank 1: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 ...
 In addition, you can set the environment variable TORCH_DISTRIBUTED_DEBUG to either INFO or DETAIL to print out information about which particular parameters did not receive gradient on this rank as part of this error

Steps to reproduce
Below is the multi-GPU config.
compute_environment: LOCAL_MACHINE
distributed_type: MULTI_GPU
gpu_ids:
machine_rank: 0
mixed_precision: bf16
num_machines: 1
num_processes: 2

Config yaml
compute_environment: LOCAL_MACHINE
distributed_type: MULTI_GPU
gpu_ids:
machine_rank: 0
mixed_precision: bf16
num_machines: 1
num_processes: 2

Possible solution
No response
Which Operating Systems are you using?

[X] Linux
[ ] macOS
[ ] Windows

Python Version
3.9
axolotl branch-commit
main
Acknowledgements

[X] My issue title is concise, descriptive, and in title casing.
[X] I have searched the existing issues to make sure this bug has not been reported yet.
[X] I am using the latest version of axolotl.
[X] I have provided enough information for the maintainers to reproduce and diagnose the issue.

Can you try setting ddp_find_unused_parameters: true ?

Can you try setting ddp_find_unused_parameters: true ?

Add ddp_find_unused_parameters: true  in the lisa.yaml, and have the same bug.

are you using FSDP or deepspeed?

It seems this might be some DDP specific issue. I've tried a few things like setting a deterministic seed for the random layer picker and adding ddp_find_unused_parameters: true, to no avail.

are you using FSDP or deepspeed?

I'm not sure which one I am using. This is my first time using your LLM framework, and I've only added 'ddp_find_unused_parameters: true' to the 'lisa.yaml' file without making any other changes.

btw, here's a discussion on deepspeed issues w/ LISA: https://github.com/OptimalScale/LMFlow/issues/726 and a potential workaround: https://github.com/OptimalScale/LMFlow/issues/726#issuecomment-2041335788


Wrong Parse for specific date formats

Really appreciate if you could please help me add the code to parse the following date formats as well:
cal.parse('4 February 2014 18.33 GMT')
cal.parse('2014-02-03T14:01:04-08:00')
Thanks a lot

To shed a bit of light on what is happening here, Tuesday 9/16 is interpreted as Sep 16 plus the number of days between now and the next Tuesday. A possible solution might be to allow weekday names in date formats but computationally ignore them (if you say the 15th is a Tuesday, we'll take your word for it).

The first example is parsing properly except for the timezone part which .parse() will always ignore as timezones are messy enough that parsedatetime has always assumed that the '''start''' parameter to parse() will have the proper TZ set.
The second example won't be handled by parse() as parse() ignores all of the normal computer date formats because they are just that, computer dates and not human dates.


Add the repository link to the page

I recommend adding the repo link to the page, maybe the about page

I'd love to do that, how can I commit my changes?

Hi @marwanzaky,
You should be able to do it by following these steps.


[very minor issue] Field group colour automatically reverts to purple when editing

Issue
Whenever I edit a field group, it's display colour reverts back to purple by default. Hence, if we make changes to a field group but forget to change it's colour back to what it was, the transcription bar will end up all purple.
Example:
Try editing 'Wet Bulb'. Click save without changing anything. It's colour on the transcription bar will no longer be green; it'll be purple.

Fixed


how to tell whether --one is working?

I rebooted to make sure nothing was running and then started atom with the --one option.  I got 14 deprecation warnings and the only message in the console was Window load time: 3281ms.
Is there some way to tell when atom thinks it is in this mode?  Can I query some variable in the console?
atom 199
ubuntu 14.0.4
apm 0.167.0
npm 2.5.1
node 0.10.35
python 2.7.6
git 1.9.1
Edit: @leedohm just explained that a lot of deprecations don't cause crashes.  This may explain what I'm seeing.  I'd still like to know some way to verify --one is working.

I rebooted to make sure nothing was running and then started atom with the --one option. I got 14 deprecation warnings and the only message in the console was Window load time: 3281ms.

Can you share a screenshot of the deprecations shown in deprecation cop? I'm guessing those will be deprecated selectors, not deprecated API calls.

I'd still like to know some way to verify --one is working.

Open the devtools console and type this:
atom.getLoadSettings().apiPreviewMode

If --one is working, that will return true. If it's not working, it will return false.

Also, since I think this answers your question, I'll close this. Let us know if there's anything else.


not work with different pytorch/transformers version

I tested the same dataset along with the same model and hyper parameters but in different versions of torch and transformers.
It raises error with torch 1.81 as the following:
TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]]
However, it works fine in the environment in which I just had NERDA pip installed...

@Hansyvea thanks for feedback! You are absolutely correct. With so much happening on both 'transformers' and 'torch' at the moment it takes some work to keep 'NERDA' up to date! If you are able to fix the issue, I would really appreciate a Pull Request!

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased", use_fast=False)
add parameter, "use_fast=false" in tokenizer
https://huggingface.co/transformers/migration.html

thanks! I will fix this!


Bump sdoc to allow for json version bump

Security vulnerability exists in current json version; sdoc needs to be bumped to allow us to use updated json version.
This PR resolves https://github.com/zooniverse/talk-api/issues/243 .

@camallen there we go. Gemfile.lock updated. Forgot about this one for a sec there but we should be good to go now.


Use landmarks for Face alignment

Currently fitting results are not very good even after manual scale and center alignment. More feature points and alignment automation are needed.
Use, for example, dlib for preprocessing, and push found landmarks as an image metadata for fitters.
On each step Fitter or Viewport should calculate the best transformation matrix.
Viewport may be used as a workaround, because Face model is calculated there at the moment, and it's actually a work for a proxy #64

Feature points set can vary. This approach will provide an ability to use different preprocessors and different landmarks sets.


Identify revertible migrations

Not all migrations can be reverted.
It would be great to specify for a migration (via an interface) if it is revertible.
Advantage of making this explicit is that we can check this before doing the migration.
Scenarios where this could be interesting are things like automatic deployments, migrations that are revertible require a different level of care vs migrations that cannot be reverted.
A simple solution would be to:

Split MigrationInterface into MigrationInterface and RevertibleMigrationInterface
Add a migrate/safe command that only migrates revertible migrations.

Yeah sure.
From a data point of view migrations are either destructive or non-destructive. Adding a column is non-destructive, it can break your app but not your data.
Removing a column is destructive, you cannot (simply) restore it.
Knowing the difference between these in advance can be very important. Automated deployments might want to do full backups before destructive operations, but be less careful with non-destructive ones.
Or maybe you do not want destructive migrations to ever run unattended (where non-destructive ones could be run by non-engineers using some interface).

Oops, missclick.

Already done: https://github.com/yiisoft/yii-db-migration/blob/master/src/MigrationInterface.php#L24
2-4. Not sure it is a good idea. For example, you are dropping a column from a table with a 5K records. PHP won't be able to serialize that and DB would likely won't be able store it in a single row. This backup strategy varies very much depending on the project, its data and the way it is stored.

There was an idea about change(): https://github.com/yiisoft/yii2/pull/14524 Do you mean something like that?

The idea is to just provide a very simple API and allow users to benefit.

As far as I see it, you need to mark certain migrations with a custom interface and "hook" into beforeUp/afterUp/beforeDown/afterDown events. Correct?

Do you mean something like that?

No, this issue is not about migrations that can be automatically identified to be revertible, like create table would have an inverse which is drop table.

As far as I see it, you need to mark certain migrations with a custom interface and "hook" into beforeUp/afterUp/beforeDown/afterDown events. Correct?

I think we need to have only up in the migration interface, since it is the only required one. You can then add extend the interface to be Revertible by adding the Revertible interface which contains the down() method.
All of this is mostly about risk assessment, currently the console can tell me if there are migrations to be done, but there is no way to know if they can be reverted if the application doesn't work as expected after migrating. This is very important to know; for example if I just a have a few minutes but the migration is safe, I might be comfortable deploying a release, knowing that rollback is easy.
If it is not easy because some information is lost then I want to reserve a maintenance window and take extra measures (like a creating an additional point in time backup).
interface Migration {
    public function up(MigrationHelper $h): void;
}
interface Revertible extends Migration {
    public function down(MigrationHelper $h): void;
}

PHP won't be able to serialize that and DB would likely won't be able store it in a single row. This backup strategy varies very much depending on the project, its data and the way it is stored.

I agree, but we could offer the option to store data, even if its limited. That way people could implement it with their own strategy, pseudocode:
interface Migration {
    public function up(MigrationHelper $h): \JsonSerializable|array;
}
interface Revertible extends Migration {
    public function down(MigrationHelper $h, array $data): void;
}

class Migration1 implements Revertible {
    public function up(MigrationHelper $h): \JsonSerializable|array;
    {
        // Do a backup
        $hash = createMagicTableBackup('x');
        $h->dropTable('x');
        return ['hash' = >$hash];
    }

    public function down(MigrationHelper $h, array $data): void
    {
        restoreMagicTableBackup($data['hash'], 'x');
    }
}

The idea here is to expose the functionality in a way that is simple for us while allowing powerful processes to be supported. So what you want to store is up to you, FYI, data columns can easily hold large quantities of data, it will just be hard to query and slower.
But since the migration table is something we control we can simply make sure we don't query the data field during things like generating history overviews.
While in production the table is not used so performance is not that relevant.
If you have a LONGBLOB field you can store up to 4gb, PHP will not like that, but I can imagine data sizes of < 50MB would work fine, and cover a large % of use cases.

I like the idea of Revertible interface. That part is certainly worth implementing.

Yeah I agree that that part is more objectively good design, whereas the other feature could be argued against.

The idea about returning data is more controversial.

Should I create a separate issue where we discuss and gather more feedback? Or would you prefer to just ignore it for now :)

Separate issue is better.

Interface part done. @SamMousa how would migrate/safe supposed to work? Apply all migrations that are safe and stop on first unsafe one with an error?

I think it should do all safe and stop before any unsafe. Consider this an unattended upgrade, so unsafe operations have no place here and should be done manually

Of course on error you have no choice but to stop ; you can't even revert without knowing more about, like idempotency of up and down.

Reopened since the original idea was to mark "safe" migrations that, when reverted, do not destroy data.

The interfaces are fine as far as I can tell from a quick scan on mobile phone.. Just the templates having the interface need to be checked. Note that it is still a devs responsibility to mark the migration appropriately; nothing stops me from marking a drop database as revertible

If you see it this way then yes. I just prefer to have "create table" revertible.


#25054 Fix typo in vscode.d.ts

Fix for the following issue: #25054

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

Thanks!


Custom Material RangeDatepicker type TESTING

Hi everyone
I am currently working on implementing a custon formly type to be able to have  material daterange-picker available in my project.
The implementation was quite straight foreward and its done with very basic features. My problem is that Im having a lot of trouble trying to test my type.componet. So far I have been able to follow how other fieldcomponents are tested in your repo (I am looking at input.type as an example) to test my component, but so far all I can manage to do is to test if the fixture.componentInstance is truthy.
I would like to test the components behaviour, not the view, but the component methods.
How can I access getters in a custom type.component for testing?
This is what I have been able to do so far (not much).
const datePickerOpen = new BehaviorSubject(false);

const renderComponent = (field: FormlyFieldConfig) =>
  createFieldComponent(field, {
    imports: [
      FormlyModule.forRoot({
        types: [
          {
            name: "date-picker",
            component: DatepickerTypeComponent,
          },
        ],
      }),
    ],
  });

const { fixture, detectChanges, field, query } = renderComponent({
  key: "date",
  type: "date-picker",
  props: { isOpen: datePickerOpen },
});

describe("Formly Type Component", () => {
  it("should create", () => {
    expect(fixture.componentInstance).toBeTruthy();
  });
});

Hope you can give me some guidance.
Thank you in advance!

You can use query:
const datepicker = query('date-picker-component').componentInstance as DatepickerTypeComponent;


[Feature] Enable Setting BigQuery Dataset Descriptions

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt-bigquery functionality, rather than a Big Idea better suited to a discussion

Describe the feature
The persist_docs feature supports materializing descriptions for tables and columns. It would be great to add support for adding dataset descriptions.
Describe alternatives you've considered
No response
Who will this benefit?
Users that want to add descriptions to datasets
Are you interested in contributing this feature?
perhaps...
Anything else?
No response

@mlaforet I'm interested in contributing to this request as my first contribution. Do you have any further information on this?

I haven't contributed to DBT before and truthfully haven't dug into the code base. I was hoping that a maintainer would triage the issue and provide their input 🤞


Newbie question: How to build shared libraries without modifying CMakeLists?

Is there a way to build Shared libraries instead of the static libraries straight from the source?
thanks,
Yang

I always have the same problem. I remember building dll worked some time ago, then some day it didn't work anymore. @RickWinter Can you have somebody take a look?

Hi @yxiang92128 , I just tested on ubuntu 20. I built with command cmake .. -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=ON. It works.
Can you share your env and the command you used?

When targeting windows, static linkage for opentelemetry-cpp is required as the sdk is header-only. See https://github.com/open-telemetry/opentelemetry-cpp/issues/1105
This is enforced in the vcpkg port.  (see https://github.com/microsoft/vcpkg/blob/master/ports/opentelemetry-cpp/portfile.cmake)
Attempting to build the default cmake target fails:
C:\Users\smadden\dev\Azure\azure-sdk-for-cpp\build❯ cmake ..
No transport adapter was selected, using WinHTTP as the default option for Windows.
-- Running vcpkg install
Error<EMAIL_ADDRESS>is only supported on '!(windows & !static)'

-- Running vcpkg install - failed
CMake Error at build/_deps/vcpkg-src/scripts/buildsystems/vcpkg.cmake:850 (message):
  vcpkg install failed.  See logs for more information:
  C:\Users\smadden\dev\Azure\azure-sdk-for-cpp\build\vcpkg-manifest-install.log
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.20/Modules/CMakeDetermineSystem.cmake:123 (include)
  CMakeLists.txt:26 (project)

@steve-madden Yes, I am aware of this problem. But @yxiang92128 is working on Linux, so I assume he's referring to a different problem.
@steve-madden Do you mind opening a separate issue to track the one caused by opentelemetry?


Feature/run in sequence

Hi worker8,
Here are the following changes that I have made:

Added PlayInSequence, PlayInSequenceLater, PlayOnLater to manage the sequence of tourguides
Added example on how to use PlayInSequence

Thanks!
Regards,
Aaron

Thanks! I know that we've discussed this before, but now you're implemented it and after I look at it, I think it still can be improved further.
Your current implementation has a few problems:

The default Overlay, ToolTip and Pointer will be overridden by the subsequent TourGuide. For example, the default Overlay is overlay_default, after the first TourGuide in the sequence is shown (let's say it has an overlay1), the default one will become overlay1 instead of overlay_default.
I think we need an option to block the button from being pressed, so that user can choose to click on the Overlay or ToolTip (and the ok/next button on the overlay in the future) to proceed.
Currently user will not know they have to click on the overlay to proceed.
In the example, the pointer should be removed, since we want the user to click on the overlay, tooltip or ok/next button(future).

API improvement:

checkout the new skeleton class I created called Sequence, look at the comment on top of the class for example usage: here

Future improvement:

When we have an ok/next button at the Overlay, the Pointer can be placed on top of it instead, so that it will clearly guide the user to click on the ok/next button instead of the target button.