No matching key found for the ciphertext in the stream.

Hi, I am using jetpack security encryption library for encrypting the file.  I have generate Master Key with below code.

MasterKey masterKey = null;
try {
masterKey = new
MasterKey.Builder(context, MasterKey.DEFAULT_MASTER_KEY_ALIAS)
.setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
.build();
} catch (GeneralSecurityException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

I have encrypted my text file Sample.txt and write encrypted file to  device external storage.  The code as given below.

InputStream inputStream = new BufferedInputStream(appCtx.getAssets().open("Sample.txt"));
byte[] fileBytes=new byte[inputStream.available()];
inputStream.read(fileBytes);
File file = new File(Environment.getExternalStorageDirectory(), "Sample.txt");
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
EncryptedFile encryptedFile = new EncryptedFile.Builder(
appCtx,
file,
masterKey,
EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build();
OutputStream outputStream = encryptedFile.openFileOutput();
outputStream.write(fileBytes);
outputStream.flush();
outputStream.close();

I put encrypted file in asset folder and now trying to decrypt but as per documentation EncryptedFile.Builder always have file Object  as parameter and currently i have Inputstream after reading file from asset. So, to get file object i am writing this Inutstream to external storage as Temp.txt and passing this file for decryption. But I am getting exception as java.io.IOException: No matching key found for the ciphertext in the stream.
The code for decryption as follows:

InputStream myInputstream = new BufferedInputStream(appCtx.getAssets().open("Sample.txt"));
File enfile = createFileFromInputStream(myInputstream,appCtx);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
EncryptedFile encryptedFile = new EncryptedFile.Builder(
appCtx,
enfile,
masterKey,
EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build();
InputStream inputStream1 = encryptedFile.openFileInput();
BufferedOutputStream os1 = new BufferedOutputStream( new FileOutputStream(new File(dstPath)));
int length = 0;
byte[] buffer = new  byte[1024];
while ((length = inputStream1.read(buffer)) != -1) {
os1.write(buffer, 0, length);
}
os1.close();
}

private static File createFileFromInputStream(InputStream stream, Context context) {
        File f = new File(Environment.getExternalStorageDirectory(), "Temp.txt");
        BufferedOutputStream os1 = null;
        try {
            os1 = new BufferedOutputStream( new FileOutputStream(f));
            int length = 0;
            byte[] buffer = new  byte[1024];
            while ((length = stream.read(buffer)) != -1) {
                os1.write(buffer, 0, length);
            }
            os1.close();
            stream.close();
            return f;
    } catch (FileNotFoundException e) {
            e.printStackTrace();
        }catch (IOException e) {
            //Logging exception
        }

    return null;
}

Scenario:
If write encrypted file to external storage and read it for decryption directly from external storage, then everything is working file. But If i paste encrypted file in asset folder and write Inputstream getting from asset folder to some temporary file and then try to decrypt it is giving error  java.io.IOException: No matching key found for the ciphertext in the stream.
please anyone help me with this issue.
Thanks

@tholenst @chuckx
Acknowledged. I haven't got cycles to take a closer look, CC a few folks who might be able to assist.

encrypt an decrypt should use same KeysetHandle and ADD..

@1004145468 What do you mean by same KeysetHandle and ADD? I'm having the same issue, although I'm reading and saving files.
Here is my code for saving:
fun save(context: Context, name: String, dir: String, source: Any) : Boolean {
    var realName = name
    val masterKeyAlias = MasterKey.Builder(
            context, MasterKey.DEFAULT_MASTER_KEY_ALIAS)
            .setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
            .build()
    var file = File(context.filesDir.path + dir, realName)

    // Check if file doesn't yet exist and change filename if necessary
    var changes: Boolean
    do {
        changes = false
        if (file.exists()) {
            realName += ".1"
            file = File(context.filesDir.path + dir, realName)
            changes = true
        }
    } while (changes)

    // Create missing directories
    if (!file.parentFile!!.exists()) {
        file.parentFile!!.mkdirs()
    }

    val encryptedFile = EncryptedFile.Builder(
            context,
            file,
            masterKeyAlias,
            EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
    ).build()

    val encryptedOutputStream = encryptedFile.openFileOutput()
    val objectOutputStream = ObjectOutputStream(encryptedOutputStream)
    objectOutputStream.writeObject(source)

    return true
}

And here is how I'm reading it:
fun get(context: Context, dir: String) : Array<Any> {
    val directory = File(context.filesDir.path + dir)

    if (directory.exists() && directory.isDirectory) {
        val files = directory.listFiles()
        val masterKeyAlias = MasterKey.Builder(
                context, MasterKey.DEFAULT_MASTER_KEY_ALIAS)
                .setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
                .build()
        val list = mutableListOf<Any>()

        files?.forEach {
            ArchipelagoError.d(it.path)
            val encryptedFile = EncryptedFile.Builder(
                    context,
                    it,
                    masterKeyAlias,
                    EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
            ).build()

            val encryptedInputStream = encryptedFile.openFileInput()
            val objectInputStream = ObjectInputStream(encryptedInputStream)
            val sourceObject = objectInputStream.readObject()

            list.add(sourceObject)
        }

        return list.toTypedArray()
    } else {
        return arrayOf()
    }
}

@Kwasow Thanks for that, it worked. I was having the same issue! :D

@Kwasow Thanks for that, it worked. I was having the same issue! :D

@Kwasow As I can see you have read file from directory but the main issue is we are unable to read file from assets in android. When I tried to read, I got this issue 'No matching key found for the ciphertext in the stream' .
I have copied the file from assets to filesDir to get the File object so that it can be passed to EncryptedFile.Builder constructor, but no luck. Can anyone help. Stuck in this issue from last 3 days. Thanks in advance.

Okay thanks, everyone. Finally got the solution. If anyone faces this same issue then make sure the following things:-

Update to the latest version of the library.
The file that will be copied from assets to the external files directory must have the same name as that of the original encrypted file at the time of encryption otherwise it will not work and throw the same error. (This point I was missing. After so many efforts I came to know this. Maybe this is a kind of bug or maybe not.)

@mittalkartik1 ,
Does this issue solved for you ?
My Condition is below:

Encrypt File using custom key alias
Save file to external directory
Uninstall and reinstall the same application.
While reading the saved file with same key alias , i got this error " No matching key found for the ciphertext in the stream."

Any ideas ???

@mittalkartik1 @Kwasow
Does this issue solved for you ?
My Condition is below:

Encrypt File using custom key alias
Save file to external directory
Uninstall and reinstall the same application.
While reading the saved file with same key alias , i got this error " No matching key found for the ciphertext in the stream."

Any ideas ???

If you're talking about an Android application then the accosiated key is stored in SharedPreferences and it is cleared on app uninstall, so there is no key to be found.

@mittalkartik1 @Kwasow
Does this issue solved for you ?
My Condition is below:

Encrypt File using custom key alias
Save file to external directory
Uninstall and reinstall the same application.
While reading the saved file with same key alias , i got this error " No matching key found for the ciphertext in the stream."

Any ideas ???

If you're talking about an Android application then the accosiated key is stored in SharedPreferences and it is cleared on app uninstall, so there is no key to be found.

Is there a way to retrive the accosiated key from SharedPreferences  ?

@mittalkartik1 @Kwasow
Does this issue solved for you ?
My Condition is below:

Encrypt File using custom key alias
Save file to external directory
Uninstall and reinstall the same application.
While reading the saved file with same key alias , i got this error " No matching key found for the ciphertext in the stream."

Any ideas ???

This approach cannot be used in your case. If you clear app data or reinstall app, then encryption keys will be deleted and next time keys will regenerate.
You can retrieve the keys from shared preferences, but if you store them somewhere else, then also they cannot be used as android will regenarate keys everytime on app install making old keys invalid.
So, this approach can only be used if want to store encrypted data in file after app install and want to use that until app uninstall or clearing data. (In short for managing specific user session.)

I am getting the same error while decrypting the file.
error happening in val fileInputStream = ObjectInputStream(encryptedFile.openFileInput())
`fun encryptFile(source: File, destination: File, applicationContext: Context) {
val mainKey = MasterKey.Builder(applicationContext, MasterKey.DEFAULT_MASTER_KEY_ALIAS)
.setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
.build()
    val encryptedFile = EncryptedFile.Builder(
        applicationContext,
        destination,
        mainKey,
        EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
    ).build()

    val fileOutputStream = encryptedFile.openFileOutput()
    val fileInputStream = FileInputStream(source)

    val buffer = ByteArray(1024)
    var read: Int
    while (fileInputStream.read(buffer).also { read = it } != -1) {
        fileOutputStream.write(buffer, 0, read)
    }

    fileInputStream.close()
    fileOutputStream.flush()
    fileOutputStream.close()
    source.delete()
    destination.renameTo(source)
}

fun decryptFile(source: File, destination: File, applicationContext: Context){
    val mainKey = MasterKey.Builder(applicationContext, MasterKey.DEFAULT_MASTER_KEY_ALIAS)
        .setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
        .build()

    val encryptedFile = EncryptedFile.Builder(
        applicationContext,
        source,
        mainKey,
        EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
    ).build()

    val fileInputStream = ObjectInputStream(encryptedFile.openFileInput())
    val fileOutputStream = BufferedOutputStream(FileOutputStream(destination))

    val buffer = ByteArray(1024)
    var read: Int

    while (fileInputStream.read(buffer).also { read = it } != -1) {
        fileOutputStream.write(buffer, 0, read)
    }

    fileInputStream.close()
    fileOutputStream.flush()
    fileOutputStream.close()
    source.delete()
    destination.renameTo(source)
}`

I've recently encountered this problem but unlike others that have had this issue, I am not using the assets folder or moving the EncryptedFile between directories. I also cannot reproduce it but see it showing up occasionally in crash logs.
Encrypting:
`val fileToWrite = File(baseDir, UUID.randomUUID().toString())
val encryptedFile = EncryptedFile.Builder(
context,
fileToWrite,
mainKey,
EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build()
        encryptedFile.openFileOutput().use {
            val inputStream = FileInputStream(file)
            inputStream.copyTo(it)
            it.flush()
        }`

Decrypting:
`val encryptedFile = EncryptedFile.Builder(
context,
File(path),
mainKey,
EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build()
        encryptedFile.openFileInput().use { input ->
            FileOutputStream(tmpFile).use { output ->
                input.copyTo(output)
                output.flush()
            }
        }`

Both use the same key and relative base path. Since I can't reproduce it I'm shooting in the dark -- does the file name for the file that it is being decrypted to need to be the same as what the encrypted file name was?

On Mon, Mar 7, 2022, 10:53 AM Luca Ventura @.***> wrote:

I've recently encountered this problem but unlike others that have had
this issue, I am not using the assets folder or moving the EncryptedFile
between directories. I also cannot reproduce it but see it showing up
occasionally in crash logs.
Encrypting:
`val fileToWrite = File(baseDir, UUID.randomUUID().toString())
val encryptedFile = EncryptedFile.Builder(
context,
fileToWrite,
mainKey,
EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build()
    encryptedFile.openFileOutput().use {
        val inputStream = FileInputStream(file)
        inputStream.copyTo(it)
        it.flush()
    }`

Decrypting:
`val encryptedFile = EncryptedFile.Builder(
context,
File(path),
mainKey,
EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build()
    encryptedFile.openFileInput().use { input ->
        FileOutputStream(tmpFile).use { output ->
            input.copyTo(output)
            output.flush()
        }
    }`

Both use the same key and relative base path. Since I can't reproduce it
I'm shooting in the dark -- does the file name for the file that it is
being decrypted to need to be the same as what the encrypted file name was?

Yes. If you move the file it won't be decrypted correctly.

—
Reply to this email directly, view it on GitHub
https://github.com/google/tink/issues/401#issuecomment-1061017946, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAB23HNNGR6UUCSXZBKRWDU6ZGA3ANCNFSM4PHUMTFQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you commented.Message ID:
@.***>

@thaidn The EncryptedFile is never actually moved though, it always stays in the same directory. Even when I decrypt it to a new file of the same name it doesn't resolve the issue (this is an extreme edge case right now, and is only happening like .1% of the time).

There were some race conditions in the AndroidKeysetManager that have been fixed. I think if you use lastest version of androidx security crypto, 1.1.0-alpha06, https://developer.android.com/jetpack/androidx/releases/security#security-crypto-1.1.0-alpha06 the issue should hopefully be resolved.


Update configure-external-databases.md

broken links

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65d7ce8375512755ec9119f3--harness-developer.netlify.app


Show CSV results dynamically on UI

Every simulator generates resultant data(CSV) for the particular simulation. What if we show CSV resultant data dynamically below visualization as well in a table? Any thoughts?

I don't think we need to display a table. I think such a table would be hard to interpret. I think we can simplify provide a link to download the results.
One alternative way to summarize the results is to display a spark line for each species such as the example below. This would give a quick visual summary of all of the predictions. I don't think this is critical to implement because (a) we already have a plotting method setup and (b) we will need to have a link to download all of the results. We have more critical things to focus on.

I believe the plotly graphs already provide this information. The mouse over shows the value of each species.


Split code formatting from naming convention

Hey,
it'd be super practical, if we'd split the code formatting config from the BEM naming config.
We don't use this package right now in e.g. React projects, where we use component based style loading and therefore don't need BEM.
However it would be great, if we included a default code formatting configuration, that provides default configurations for our CSS files.
I'd suggest to split this package into two separate ones: one for BEM and the other for basic CSS code formatting.

Hey Chris
This is just a stylelint plugin for the bem-linting part. it's an addition to other css linting rules which are defined elsewhere. (e.g https://github.com/namics/frontend-defaults/blob/master/codequality/stylelint/.stylelintrc)
I do not understand where you could split here.

I totally missed out, that the general linting configuration is at frontend-defaults.
Everything's good 😄


json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Describe the bug
I tried to get info of all lectures and also tried downloading the lectures but getting the same error always. The login through cookies is successful but its unable to fetch any info from udemy
To Reproduce
Steps to reproduce the behavior:

udemy course url: https://www.udemy.com/course/the-web-developer-bootcamp

Comand Used:  ( Getting these errors on every command for this course )

python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp -k cookie.txt --info
python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp/ -k cookie.txt -q 720 -o "/home/xd003/udemy"
[xd003@xd003 udemy-dl]$ python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp -k cookie.txt --info

              __                               ____
   __  ______/ /__  ____ ___  __  __      ____/ / /
  / / / / __  / _ \/ __ `__ \/ / / /_____/ __  / /
 / /_/ / /_/ /  __/ / / / / / /_/ /_____/ /_/ / /
 \__,_/\__,_/\___/_/ /_/ /_/\__, /      \__,_/_/
                           /____/
                                 Version : 0.5
                                 Author  : Nasir Khan (r0ot h3x49)
                                 Github  : https://github.com/r0oth3x49

[*] : Trying to login using cookies ...
[+] : Logged in successfully.
Traceback (most recent call last):on ..
  File "udemy-dl.py", line 1453, in <module>
    main()
  File "udemy-dl.py", line 968, in main
    udemy.course_list_down(chapter_number=options.chapter, lecture_number=options.lecture, unsafe=options.unsafe)
  File "udemy-dl.py", line 143, in course_list_down
    course = udemy.course(url=self.url, username=self.username, password=self.password, cookies=self.cookies)
  File "/home/xd003/udemy-dl/udemy/_udemy.py", line 38, in course
    return Udemy(url, username, password, cookies, basic, callback)
  File "/home/xd003/udemy-dl/udemy/_internal.py", line 44, in __init__
    super(InternUdemyCourse, self).__init__(*args, **kwargs)
  File "/home/xd003/udemy-dl/udemy/_shared.py", line 258, in __init__
    self._fetch_course()
  File "/home/xd003/udemy-dl/udemy/_internal.py", line 56, in _fetch_course
    self._info              =       self._real_extract(self._url)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 469, in _real_extract
    course_json = self._extract_course_json(url, course_id, portal_name)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 270, in _extract_course_json
    resp = self._extract_large_course_content(url=url)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 234, in _extract_large_course_content
    data = self._session._get(url).json()
  File "/usr/lib/python3.8/site-packages/requests/models.py", line 898, in json
    return complexjson.loads(self.text, **kwargs)
  File "/usr/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.8/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Screenshots
If applicable, add screenshots to help explain your problem.

Python Environment (please complete the following information):

OS Platform: Manjaro Linux x86_64
Python Version: 3.8.3

Update - i tried this same command on another course i have in my account and didnt got error on it . I dont know if that matters but this course on which i have got this error is kinda big in size - it has 41 chapters/sections and 405 lectures

Update - i tried this same command on another course i have in my account and didnt got error on it . I dont know if that matters but this course on which i have got this error is kinda big in size - it has 41 chapters/sections and 405 lectures

Can u please share me ur credentials so can try to download.
On Sat, 18 Jul 2020 at 9:37 PM, xd003<EMAIL_ADDRESS>wrote:

Update - i tried this same command on another course i have in my account
and didnt got error on it . I dont know if that matters but this course on
which i have got this error is kinda big in size - it has 41
chapters/sections and 405 lectures
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/r0oth3x49/udemy-dl/issues/529#issuecomment-660503753,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AF33XP2WUTKZSL5UWJSNRXDR4HCERANCNFSM4PAB7EVA
.

Can u please share me ur credentials so can try to download.
…
On Sat, 18 Jul 2020 at 9:37 PM, xd003 @.***> wrote: Update - i tried this same command on another course i have in my account and didnt got error on it . I dont know if that matters but this course on which i have got this error is kinda big in size - it has 41 chapters/sections and 405 lectures — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#529 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AF33XP2WUTKZSL5UWJSNRXDR4HCERANCNFSM4PAB7EVA .

are you for real asking credentials from others credentials on my repository?
@xd003 if you share your creds with strangers instead of real owner of the repository then i 'm not responsible for any miss use.

@r0oth3x49 yes i understand ,no point in sharing with anyone else as eventually you only is  gonna fix it , i have emailed you creds for this issue as well as the int() argument .. error  .. also mentioned course link for both separately

These might help -
https://stackoverflow.com/questions/16573332/jsondecodeerror-expecting-value-line-1-column-1-char-0
https://stackoverflow.com/questions/34579327/jsondecodeerror-expecting-value-line-1-column-1/34579607

These might help -
https://stackoverflow.com/questions/16573332/jsondecodeerror-expecting-value-line-1-column-1-char-0
https://stackoverflow.com/questions/34579327/jsondecodeerror-expecting-value-line-1-column-1/34579607

thanks bro

im getting the same issue as well

@notdevagya which is the course you are facing it on ?
Asking because this seems this issue doesn't seem to happen on all courses

@notdevagya which is the course you are facing it on ?
Asking because it seems this issue doesn't seem to happen on all courses

@r0oth3x49 any update ?

I have the same issue, but I can confirm, its not a problem on all courses. For me it was one out of three. Would appreciate any update on this too.
Thank you for this awsome software! :+1:

Same issue for the same course.
I'm only just starting to learn to read code...
So this is likely just me rambling and not helping at all, but just in case...
From what I can gather, this seems to work something like this:

Login
Get course info and convert data to json for usage with other arguments
Download data using json per configuration/directives

I think from the previous posts the problem is that some courses have a type of note page.
I'm assuming that note page unable to be converted to json in the same way or produces invalid results for this tool, giving us the error.
I'm not sure what would be easier...
Fixing the code to handle these pages and somehow output the content to a txt or something?
or
Avoid gathering the entire course data at the start and only download as needed per user instruction,
Then users can skip problematic pages on their own if necessary.
maybe something else entirely...
Either way, I really appreciate what you've made here!

@r0oth3x49 any update ?

i will work on this weekend.

Describe the bug
I tried to get info of all lectures and also tried downloading the lectures but getting the same error always. The login through cookies is successful but its unable to fetch any info from udemy
To Reproduce
Steps to reproduce the behavior:
1. **udemy course url**: https://www.udemy.com/course/the-web-developer-bootcamp

2. **Comand Used**:  ( Getting these errors on every command for this course )

python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp -k cookie.txt --info
python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp/ -k cookie.txt -q 720 -o "/home/xd003/udemy"
[xd003@xd003 udemy-dl]$ python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp -k cookie.txt --info

              __                               ____
   __  ______/ /__  ____ ___  __  __      ____/ / /
  / / / / __  / _ \/ __ `__ \/ / / /_____/ __  / /
 / /_/ / /_/ /  __/ / / / / / /_/ /_____/ /_/ / /
 \__,_/\__,_/\___/_/ /_/ /_/\__, /      \__,_/_/
                           /____/
                                 Version : 0.5
                                 Author  : Nasir Khan (r0ot h3x49)
                                 Github  : https://github.com/r0oth3x49

[*] : Trying to login using cookies ...
[+] : Logged in successfully.
Traceback (most recent call last):on ..
  File "udemy-dl.py", line 1453, in <module>
    main()
  File "udemy-dl.py", line 968, in main
    udemy.course_list_down(chapter_number=options.chapter, lecture_number=options.lecture, unsafe=options.unsafe)
  File "udemy-dl.py", line 143, in course_list_down
    course = udemy.course(url=self.url, username=self.username, password=self.password, cookies=self.cookies)
  File "/home/xd003/udemy-dl/udemy/_udemy.py", line 38, in course
    return Udemy(url, username, password, cookies, basic, callback)
  File "/home/xd003/udemy-dl/udemy/_internal.py", line 44, in __init__
    super(InternUdemyCourse, self).__init__(*args, **kwargs)
  File "/home/xd003/udemy-dl/udemy/_shared.py", line 258, in __init__
    self._fetch_course()
  File "/home/xd003/udemy-dl/udemy/_internal.py", line 56, in _fetch_course
    self._info              =       self._real_extract(self._url)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 469, in _real_extract
    course_json = self._extract_course_json(url, course_id, portal_name)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 270, in _extract_course_json
    resp = self._extract_large_course_content(url=url)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 234, in _extract_large_course_content
    data = self._session._get(url).json()
  File "/usr/lib/python3.8/site-packages/requests/models.py", line 898, in json
    return complexjson.loads(self.text, **kwargs)
  File "/usr/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.8/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Screenshots
If applicable, add screenshots to help explain your problem.

Python Environment (please complete the following information):
* OS Platform: Manjaro Linux x86_64

* Python Version: 3.8.3

Update - i tried this same command on another course i have in my account and didnt got error on it . I dont know if that matters but this course on which i have got this error is kinda big in size - it has 41 chapters/sections and 405 lectures

Hi bro, do you successfully download it cause when I entered the same url, the bug still exists, quite confused me.

Describe the bug
I tried to get info of all lectures and also tried downloading the lectures but getting the same error always. The login through cookies is successful but its unable to fetch any info from udemy
To Reproduce
Steps to reproduce the behavior:
1. **udemy course url**: https://www.udemy.com/course/the-web-developer-bootcamp

2. **Comand Used**:  ( Getting these errors on every command for this course )

python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp -k cookie.txt --info
python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp/ -k cookie.txt -q 720 -o "/home/xd003/udemy"
[xd003@xd003 udemy-dl]$ python3 udemy-dl.py https://www.udemy.com/course/the-web-developer-bootcamp -k cookie.txt --info

              __                               ____
   __  ______/ /__  ____ ___  __  __      ____/ / /
  / / / / __  / _ \/ __ `__ \/ / / /_____/ __  / /
 / /_/ / /_/ /  __/ / / / / / /_/ /_____/ /_/ / /
 \__,_/\__,_/\___/_/ /_/ /_/\__, /      \__,_/_/
                           /____/
                                 Version : 0.5
                                 Author  : Nasir Khan (r0ot h3x49)
                                 Github  : https://github.com/r0oth3x49

[*] : Trying to login using cookies ...
[+] : Logged in successfully.
Traceback (most recent call last):on ..
  File "udemy-dl.py", line 1453, in <module>
    main()
  File "udemy-dl.py", line 968, in main
    udemy.course_list_down(chapter_number=options.chapter, lecture_number=options.lecture, unsafe=options.unsafe)
  File "udemy-dl.py", line 143, in course_list_down
    course = udemy.course(url=self.url, username=self.username, password=self.password, cookies=self.cookies)
  File "/home/xd003/udemy-dl/udemy/_udemy.py", line 38, in course
    return Udemy(url, username, password, cookies, basic, callback)
  File "/home/xd003/udemy-dl/udemy/_internal.py", line 44, in __init__
    super(InternUdemyCourse, self).__init__(*args, **kwargs)
  File "/home/xd003/udemy-dl/udemy/_shared.py", line 258, in __init__
    self._fetch_course()
  File "/home/xd003/udemy-dl/udemy/_internal.py", line 56, in _fetch_course
    self._info              =       self._real_extract(self._url)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 469, in _real_extract
    course_json = self._extract_course_json(url, course_id, portal_name)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 270, in _extract_course_json
    resp = self._extract_large_course_content(url=url)
  File "/home/xd003/udemy-dl/udemy/_extract.py", line 234, in _extract_large_course_content
    data = self._session._get(url).json()
  File "/usr/lib/python3.8/site-packages/requests/models.py", line 898, in json
    return complexjson.loads(self.text, **kwargs)
  File "/usr/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.8/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Screenshots
If applicable, add screenshots to help explain your problem.

Python Environment (please complete the following information):
* OS Platform: Manjaro Linux x86_64

* Python Version: 3.8.3

Update - i tried this same command on another course i have in my account and didnt got error on it . I dont know if that matters but this course on which i have got this error is kinda big in size - it has 41 chapters/sections and 405 lectures

Hi bro, do you successfully download it cause when I entered the same url, the bug still exists, quite confused me.

Yes it did work for me after it had got fixed , i haven't tried it recently but there's no reason for it to not work now that it has been addressed already

@r0oth3x49 getting the same error when i try to download courses

@r0oth3x49 nvm i haven't downloaded the actuall source, it's working now


Add wait duration for launchd start and stop

This should solve any flakiness where launchd doesn't report a service
as loaded immediately, if the computer is under heavy load.
Also adds some debug logging.
Also making this launchd package use a package level Log interface to remove a direct dependency.
Resolves https://keybase.atlassian.net/browse/DESKTOP-1076
@patrickxb ?

You could make 5*time.Second a constant since it is used in a lot of places.
But LGTM

retest this please


Wrapper for GetFileAttributes() with Wow64DisableWow64FsRedirection()

Wow64DisableWow64FsRedirection is not used in all file access
This PR provides a Wrapper WFGetFileAttributes, which does this

Thanks for doing this.  I tried this out, and unfortunately I hadn't thought hard enough about what's happening.  My very first test case was compiling winfile as 32 bit and trying to run \Windows\System32\OpenSSH\ssh.exe, which fails in ShellExecute saying the file isn't found.  On reflection, making the scenario work implies handling any Win32 path based API - CreateDirectory, CreateFile, CreateSymbolicLink, CopyFile, DeleteFile, MoveFile, all of it.  I'll take a pass at this later today or tomorrow to see what a full change for the scenario looks like.
Alternatively, since this is specific to 32 bit builds, it may be obsolete; but if that's true I think we should remove the call in enumerate, because what happens now is inconsistent (eg. displaying a program and being unable to execute/manipulate it.)
Thanks (and sorry for pointing you on a wild goose chase.)

You were faster than me, because I wanted to ask, how many other calls we have to guard with Wow64Redirection.
If you ask me, go the safe and simple way, and remove it from enumeration.
I will abandon this PR and you create one for this removal from enumeration?!


[Doc]: purpose of narwhals project

What type of report is this?
Improvement
Please describe the issue.
Why is this library not meant for end users?
If you have a suggestion on how it should be, add it below.
Narwhals is building a layer on top of dataframe backends, trying to abstract away the dataframe backend from its front end. Since the front end is used by end users, this library is for end users. I see narwhals as a chance (if the project is using its momentum) to enable a one and only python API for dataframe backends, defining a standard for dataframe front end. Meaning an end user only needs to learn one front end which is narwhals and does not care about how polars or pandas API work

thanks for your question!
Narwhals is built with dataframe maintainers in mind - this is the target audience
Most end users would likely require a most extensive API surface that what we provide
However, if you're and end-user and find Narwhals useful, then by all means, you're welcome to use it - I'd be very interested in hearing what you're using it for, if you'd be willing to share, thanks 🙏


sync stops at epoch 207

my cardano-db-sync stops syncing at the start of epoch 208 with the error below.
{"thread":"36082","loc":null,"data":{"kind":"SubscriptionTrace","event":"Application Exception: LocalAddress "/opt/cardano/cnode/sockets/node0.socket" DbInsertExceptionnd":"MuxTrace","event":"Miniprotocol MiniProtocolNum 5 InitiatorDir terminated with exception DbInsertException "PoolOwner" (SqlError {sqlState = "42703", sqlExecStatus = FatalError, sqlErrorMsg = "column \"hash\" of relation \"pool_owner\" does not exist", sqlErrorDetail = "", sqlErrorHint = ""})"
"column hash of relation pool owner not existing". Is there any issue with quotes / double quotes on the schema files? Has anyone encountered this before?

AND... i've answered myself
https://github.com/input-output-hk/cardano-db-sync/commit/6f9c0346ad88ee9e1031a4269f14e952bf233619
Sorry.


ClientCertificates description was wrong

The ClientCertificates property description had text from the MaxResponseHeadersLength property.
Summary
Updated the summary and value of HttpClientHandler.ClientCertificates

Hi @JRAlexander, I've updated with input from your comments. Since the HttpClientHandler can be reused in multiple requests, I haven't used your suggestions directly. I hope this will do :)

@rwatjen, Would you like me to do this? I can definitely if you'd rather. Please let me know asap. Thanks!

Hi @JRAlexander, I've created a new PR (https://github.com/dotnet/dotnet-api-docs/pull/37). Sorry for the delay, was busy at work.


HTTP and XMPP protocol logging

For troubleshooting purposes, it'd be useful to be able to log all HTTP and XMPP conversations.
Did some investigating and this is possible for HTTP with net/http/httputil:
http://speakmy.name/2014/07/29/http-request-debugging-in-go/
I'll see about generating a pull request to log this in gcp/http.go.

The XMPP conversation is already logged, just set the LogLevel to DEBUG.

Relatedly, I would be happy (for now) with CJT logging.

@agoode define CJT logging.

I'd like to have an optional dump of the raw CJT (https://developers.google.com/cloud-print/docs/cdd#cjt) and payload from cloud print. Sometimes clients do odd things that we need to work around.
Probably we could define a dump output directory in the config (with a note that it is for debugging only), where all CJT and PDF files get written to as they come off the wire.


Create a launcher model to be added to the WAM-V

This is the launcher to be used in the "deliver" part of the "Dock and Deliver" task.

Initial look of the model:


NumPyEigensolver and NumPyMinimumEigensolver Segmentation fault

Environment

Qiskit Terra version: 0.19.0
Python version: 3.7.10
Operating system: Ubuntu 20.04.3 running as WSL 2

What is happening?
Using the NumPyEigensolver for calculating ground state energies causes segmentation fault. The problem occurred with my own problem, as well as when running the example code here https://github.com/Qiskit/qiskit-nature/blob/main/docs/tutorials/03_ground_state_solvers.ipynb. The VQE solver works correctly.
How can we reproduce the issue?
Run this notebook https://github.com/Qiskit/qiskit-nature/blob/main/docs/tutorials/03_ground_state_solvers.ipynb, segfault occurs at [6] ("We can compare the VQE results to the NumPy exact solver and see that they match.").
What should happen?
There should be no segfault and it should print the correct results, as shown in https://github.com/Qiskit/qiskit-nature/blob/main/docs/tutorials/03_ground_state_solvers.ipynb.
Any suggestions?
No response

Please could you show the output of
>>> import numpy
>>> numpy.show_config()

for this one?

>>> import numpy
>>> numpy.show_config()
blas_mkl_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/username/miniconda3/envs/hp/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/username/miniconda3/envs/hp/include']
blas_opt_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/username/miniconda3/envs/hp/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/username/miniconda3/envs/hp/include']
lapack_mkl_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/username/miniconda3/envs/hp/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/username/miniconda3/envs/hp/include']
lapack_opt_info:
    libraries = ['mkl_rt', 'pthread']
    library_dirs = ['/home/username/miniconda3/envs/hp/lib']
    define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
    include_dirs = ['/home/username/miniconda3/envs/hp/include']
Supported SIMD extensions in this NumPy install:
    baseline = SSE,SSE2,SSE3
    found = SSSE3,SSE41,POPCNT,SSE42,AVX,F16C,FMA3,AVX2
    not found = AVX512F,AVX512CD,AVX512_KNL,AVX512_KNM,AVX512_SKX,AVX512_CNL

This is probably not something on Qiskit's end but rather NumPy. Can you run numpy.linalg.eigvals for a matrix of the same size used in the tutorials; 2^(number of qubits in the hamiltonian? If it's not that it might be the Hamiltonian to matrix conversion?

I was able to fix this by updating numpy from 1.21.2 to the latest at the time, 1.21.5. I have no idea why that worked. Thanks for your suggestions.


use MarkdownElementNodeParser independently

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
Hello,  I am currently using MarkdownElementNodeParser and have encountered an issue. Although I am using Tongyi LLMs, they do not support it well. When I set llm to None, the system requires an api_key.  Could someone please advise on how to use MarkdownElementNodeParser independently without needing an api_key ?  Thank you very much for your help!

@dosu.
Hello,
I am working with Markdown parsers and would like to understand the differences between MarkdownNodeParser and MarkdownElementNodeParser. Specifically, I am curious about the following:
What are the main differences between MarkdownNodeParser and MarkdownElementNodeParser?
Is MarkdownElementNodeParser an extension or specialization of MarkdownNodeParser, or are they completely separate implementations?
Given that I have Markdown text extracted from PDF documents, which of these parsers should I use, and how should I use them effectively?
Any insights or guidance would be greatly appreciated!
Thank you very much for your help!

@dosu.
Hello,
I am working on parsing Markdown text that has been extracted from PDF documents with the goal of reconstructing the original document structure. Specifically, I want to split the Markdown text by headings to restore the chapter structure of the PDF. For each section corresponding to a heading, I want to extract different elements, such as tables, and process them accordingly. My aim is to parse the PDF at different levels of granularity and hierarchy.
Given this objective, how can I effectively utilize MarkdownNodeParser and MarkdownElementNodeParser to achieve this? Are there other methods or tools that would be more suitable for processing a list of documents (Documents)?
Any advice or guidance would be greatly appreciated!
Thank you very much for your help!

@dosu.
To achieve your goal of reconstructing the original document structure from Markdown text extracted from PDFs, you can effectively utilize both MarkdownNodeParser and MarkdownElementNodeParser，Give me some code examples。

@dosu
I am working on parsing excel and query it. Two questions.

How can I find the document to point out the parameters I can input to the MarkdownElementNodeParser? It seems that there is no parameters called llm in the functions.
For example, MarkdownElementNodeParser(llm=llm_model). -->It works, but I can not find the LLM this keywork inside of the function, MarkdownElementNodeParser.

What does llm do over here? Does it emebed the spread or do something fancy on query?


Add enterprise doc and update existing ones

Signed-off-by: anis028<EMAIL_ADDRESS>

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Categorize Home by itself in the navigation pane

What's the Problem?
This sort of goes with my other request (#8220) for expanding folders in the navigation pane, because in order to expand Home, it would have to be its own thing in the navigation pane, not under favorites. Since Home is this File app's substitute for This PC, it would make sense for it to be by itself in the pane since This PC/Home is used far more than navigating through the main drive. So, having it by itself and with the ability to expand to see Documents, Downloads, Pictures, Videos, etc. in the navigation pain would be great.
Solution/Idea
See above.
Alternatives
None.
Priorities

Capability
Priority

This proposal will allow end users to use Home outside of favorites
Must

This proposal will allow developers to integrate expanding Home to show folders in it in the navigation pane without Home being under favorites
Should

This proposal will allow developers to accomplish Y
Could

This proposal will allow end users to accomplish Z
Won't

Files Version
Version: <IP_ADDRESS> OS Version: 10.0.22000.469
Windows Version
Windows 11 Pro 21H2 22000.469
Comments
No response

We don't have plans for this as home is considered a favorite item that can be unpinned

@yaichenbaum How do you get to Home if it's unpinned?

@JacksonCampbell99 you can type home in the adress bar and it's also the default page when opening a new tab.


D3D11: Can we target FL 11_0?

Right now for D3D11 we're targeting feature level 11_1, but I don't think that's strictly necessary. Looking at the feature level support table the only feature we use from 11.1 is constant buffer offsets/partial updates, which is optionally supported on 11.0 hardware.
We can probably drop to 11.0 with a feature check in PrepareDriver. This does require the D3D11.1 runtime, but that's supported on Windows 8+ so it should cover basically everybody. (Note that the 11.1 runtime is different from Feature Level 11_1... it's a very confusing naming scheme.)

I failed to notice the limitation of 8 total bound UAVs, which isn't enough for our requirements of 8 storage textures + 8 storage buffers. If the feature level ever becomes an issue in practice, everything else seems to work with FL 11_0, so we could mayyyybe hack in some compatibility mode that caps the UAVs to 8 in total, but that's not necessary. Closing.


Add vscode settings

Pull Request

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

#65
#64  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @JackPlowman and the rest of your teammates on  Graphite

Merge activity

Oct 29, 9:10 AM EDT: A user started a stack merge that includes this pull request via Graphite.


ConvertTo-DbaTimeline - fixes #3916

i went ahead and added the previous changes 💯

works :D and is still gorgeous 💯

Yessss thanks for the approve!


Create office.deu.txt

@KimHS17 lib/domains/kr/ac/office.deu.txt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.


Capistrano deploy still references ballPointPenguin repo

We recently created the OpenTwinCities/adopt-a-tree repo by copying the repo we had been working from at ballPointPenguin/adopt-a-tree. Unfortunately, we forgot to update the Capistrano deploy settings to use the new OpenTwinCities repo instead of the ballPointPenguin repo. Thus, Capistrano is still using the old repo to perform deployments.

In addition to the above commit, I also had to remove the cached repo folders on the stage and production hosts, as described here http://stackoverflow.com/questions/8358238/capistrano-deploy-fails-after-i-changed-the-repository-url/17618176#17618176


singledispatch dependency not needed for Python >= 3.4

The singledispatch dependency (introduced in #2077 ) is only used in lm/vocabulary.py (though I might be missing something), and it is only needed for Python 2.6 - 3.3 (it has become a part of the built-in library functools since 3.4), so I suppose that this dependency should be inlcuded for Python < 3.4 only in setup.py with 'singledispatch; python_version < "3.4"'.

I have no time these days to deal with this myself, but you're welcome to open a PR for it!!

OK, I'll do this, open #2243.


Revert "Merge pull request #70 from aravindvs/master"

This reverts commit 17991d3138a879b166adebf86f7c84da3c1517a7, reversing
changes made to f2a0b10f7228cff360e2d9efa081a15a8cbd68b7.
Fixes https://github.com/tecbot/gorocksdb/issues/71. We should revert this revert once the these changes are incorporated into an official RocksDB release (e.g., perhaps v4.12).

Closing because no longer an issue.


Subnet count is not relative to the "selected" availability zones but "all available"

Maybe we just misread the documentation, but this caused some discussion and confusion in our team.
We thought this module will spread the subnets over the given AZs.
We gave it a /23 and two availability_zones, so we expected it would create 4 /26 blocks, but it always put out some weird /27 cidr blocks.
After reading the code there:
https://github.com/cloudposse/terraform-aws-dynamic-subnets/blob/7d3182d8c3b5fe581042c367c4859a8091e321d4/private.tf#L13-L15
What's the reason that the calculation doesn't use the provided availability_zones?

This is intentional behavior that escaped documentation in the README.
Subnets are "pets": very long lived and difficult to part with. Once you have a subnet created, you put a lot of resources in it. In order to change the subnet CIDR, you have to delete everything in the subnet, delete the subnet, and then create a new subnet. This is very painful and we learned this the hard way.
So this module takes the position that the private IP address space is big enough to reserve some of it for future expansion. By default it divides the CIDR into pieces it can reserve for each availability zone currently available. This way, if you decide later you want to use an availability zone you are not using now, you will not have to adjust the existing subnets.
We even provide var.max_subnet_count so you can reserve room for future expansion, as when a region goes from 2 to 3 or from 3 to 4 AZs. The region may have 2 AZs now, but you want to use 3 when the third becomes available, so you set var.max_subnet_count = 3. On the other side of the problem, you can use var.max_subnet_count to limit the number of subnets to fewer than the number of AZs. For example, you my decide you only want to use 3 AZs even if you are in a region with 5 AZs, reasoning that 3 are cheaper than 5 and 3 provides enough redundancy so  you will never want/need 5. So in this case you can set var.max_subnet_count = 3 and the module will divide the CIDR among 3 AZs instead of the default 5.


replace '&' with file extension based writer class - issue #11

fixes #11
no file name selection

There's no button "update branch", I guess the branch has "allow edits from contributors" disabled, could you enable it so that I can update it? Thanks


Allow business hours that cross midnight

It's theoretically possible to have working hours that cross midnight, like for example 11 pm to 7 am. Right now this doesn't seem to be supported.
For example:
time = ActiveSupport::TimeZone.new("America/New_York").now
# Thu, 07 Mar 2024 14:56:02.154340000 EST -05:00

BusinessTime::Config.with(beginning_of_workday: "2:00 pm", end_of_workday: "3:00 pm") { time.during_business_hours? }
# true

BusinessTime::Config.with(beginning_of_workday: "2:00 pm", end_of_workday: "12:01 am") { time.during_business_hours? }
# false

BusinessTime::Config.with(beginning_of_workday: "11:50 pm", end_of_workday: "3:00 pm") { time.during_business_hours? }
# false

It would be nice to support this.

Looking at the definition of during_business_hours? I see how it could be altered to support this, but I'm not sure whether it should be handled in a more central way or whether there are other methods that need to handle this scenario differently as well, to be consistent.


error when migrate in postgres

i do ./manage.py migrate
in migration shop.0008_notification_recipient.py happends error
File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/core/management/__init__.py", line 359, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/core/management/base.py", line 294, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/core/management/base.py", line 345, in execute
    output = self.handle(*args, **options)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/core/management/commands/migrate.py", line 204, in handle
    fake_initial=fake_initial,
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/migrations/executor.py", line 115, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/migrations/executor.py", line 145, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/migrations/executor.py", line 244, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/migrations/migration.py", line 129, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/migrations/operations/fields.py", line 204, in database_forwards
    schema_editor.alter_field(from_model, from_field, to_field)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/backends/base/schema.py", line 495, in alter_field
    old_db_params, new_db_params, strict)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/backends/postgresql/schema.py", line 117, in _alter_field
    new_db_params, strict,
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/backends/base/schema.py", line 578, in _alter_field
    new_default = self.effective_default(new_field)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/backends/base/schema.py", line 221, in effective_default
    default = field.get_db_prep_save(default, self.connection)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/models/fields/__init__.py", line 755, in get_db_prep_save
    prepared=False)
  File "/home/inzem/sites/django_shop/ENV/lib/python3.5/site-packages/django/db/models/fields/__init__.py", line 747, in get_db_prep_value
    value = self.get_prep_value(value)
  File "/home/inzem/sites/django_shop/django-shop/shop/models/fields.py", line 99, in get_prep_value
    raise ValueError("Value must be of type {}".format(self.enum_type))
ValueError: Value must be of type <enum 'ChoiceEnum'>

not enough information to reproduce this

I get exactly the same error when installing a fresh django-shop tutorial on a freshly installed debian jessie server using mysql as database server. I have tried it numerous times now, but every time the migration stops at shop.0008. I followed the djangoShop pdf document 0.11.2 to the letter and don't get any error nor warning messages up to this one during ./manage.py migrate
File "./manage.py", line 10, in
execute_from_command_line(sys.argv)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/core/management/init.py", line 367, in execute_from_command_line
utility.execute()
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/core/management/init.py", line 359, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/core/management/base.py", line 294, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/core/management/base.py", line 345, in execute
output = self.handle(*args, **options)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/core/management/commands/migrate.py", line 204, in handle
fake_initial=fake_initial,
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/migrations/executor.py", line 115, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/migrations/executor.py", line 145, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/migrations/executor.py", line 244, in apply_migration
state = migration.apply(state, schema_editor)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/migrations/migration.py", line 129, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/migrations/operations/fields.py", line 204, in database_forwards
schema_editor.alter_field(from_model, from_field, to_field)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/backends/base/schema.py", line 495, in alter_field
old_db_params, new_db_params, strict)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/backends/base/schema.py", line 578, in _alter_field
new_default = self.effective_default(new_field)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/backends/base/schema.py", line 221, in effective_default
default = field.get_db_prep_save(default, self.connection)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/models/fields/init.py", line 755, in get_db_prep_save
prepared=False)
File "/home/frank/webshop/faktorie77/lib/python3.4/site-packages/django/db/models/fields/init.py", line 747, in get_db_prep_value
value = self.get_prep_value(value)
File "/home/frank/webshop/django-shop/shop/models/fields.py", line 98, in get_prep_value
raise ValueError("Value must be of type {}".format(self.enum_type))
ValueError: Value must be of type <enum 'ChoiceEnum'>

closed via #678
Thanks for reporting

ups, this is related to another function.

I tried fix #678 but it didn't solve the problem. Shop.0008 still give the same error

It nor should be fixed. Please retry.


panlint: bogus report on component path in value()

we get someting like this
Component <COMP> in use, but component config has not been included
variable VARIABLE = value("/software/components/<COMP>/something");

I don't think it should report on this components path that the component is in use.

Seems like a duplicate of #226.


Adds support for the transactions, mosaics, and namespaces in the UI

Some of the extensive changes:

Updates block transactions to use the cursor.
Changed Mosaic.vue to Mosaics.vue and Namespace.vue to Namespaces.vue
Changed /mosaic to /mosaics to be consistent with /blocks and /transactions.
Changed /namespace to /namespaces to be consistent with /blocks and /transactions.
Added TransactionTypeBox to store state.
Added routes for all transactions based on cursors.
Updated the Mosaics view to use real data based on cursors.
Updated the Namespaces view to use real data based on cursors.

also please rebase to master since yesterday's merge(s) :+1:


Update Nitro docs

[x] Update README.md
[x] Update FAQ section
[ ] Update new releases

Closed for new PR


[$1000] Remove photo option is shown with Avatar

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Create new account
Go to profile details
Click on profile avatar

Expected Result:
Default avatar should not show Remove photo option, If this is intentional then it should not even change default avatar assigned to user
Actual Result:
Default avatar is showing Remove photo option
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.9-12
Reproducible in staging?: y
Reproducible in production?: n
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/235805122-4c82c1b8-5140-4dd9-9257-1c7558cf72c1.mp4
https://user-images.githubusercontent.com/43996225/235805132-6832e498-beb0-477c-8de3-85ec82c76e1c.mov
Expensify/Expensify Issue URL:
Issue reported by: @DinalJivani
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1683061301937559
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01e798ab7cf8430379
Upwork Job ID:<PHONE_NUMBER>631010304
Last Price Increase: 2023-05-03

Triggered auto assignment to @adelekennedy (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

Triggered auto assignment to @marcaaron (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

@marcaaron does the process change when it's a deploy blocker or should I triage as normal? The so isn't clear to me

I don't think the process changes much. Sometimes the blocker label comes off and the issue will just be a "regular' issue so it's good to have someone do an initial check. But for Deploy blockers... Engineering will probably beat you and fix it before it gets triaged :D

Proposal
Please re-state the problem that we are trying to solve in this issue.
Remove photo option is shown with Avatar
What is the root cause of that problem?
We are checking if user has default avatar in order to hide or show the remove photo option.
function isDefaultAvatar(avatarURL) {
    if (_.isString(avatarURL) && (avatarURL.includes('images/avatars/avatar_') || avatarURL.includes('images/avatars/user/default'))) {
        return true;
    }

    // If null URL, we should also use a default avatar
    if (!avatarURL) {
        return true;
    }
    return false;
}

In this case, when user replace the avatar, server return the default avatar with something like this:
https://d2k5nsl2zxldvw.cloudfront.net/images/avatars/default-avatar_22.png and it make the isDefaultAvatar return false, since it doesn't match any conditions from isDefaultAvatar function.
What changes do you think we should make in order to solve the problem?

Fix from backend, make the default avatar return with the same format with before.
Add more condition inside isDefaultAvatar function, including the new path that return from avatar default url so  isDefaultAvatar function will look like:

function isDefaultAvatar(avatarURL) {
    if (
        _.isString(avatarURL)
      && (avatarURL.includes('images/avatars/default-avatar')
        || avatarURL.includes('images/avatars/avatar_')
        || avatarURL.includes('images/avatars/user/default'))
    ) {
        return true;
    }

    // If null URL, we should also use a default avatar
    if (!avatarURL) {
        return true;
    }
    return false;
}

What alternative solutions did you explore? (Optional)

I don't think this is a blocker. This is on production and staging. Removing.

Current assignee @adelekennedy is eligible for the Bug assigner, not assigning anyone new.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

Job added to Upwork: https://www.upwork.com/jobs/~01e798ab7cf8430379

Current assignee @adelekennedy is eligible for the External assigner, not assigning anyone new.

Triggered auto assignment to Contributor-plus team member for initial proposal review - @sobitneupane (External)

Current assignee @marcaaron is eligible for the External assigner, not assigning anyone new.

Proposal
I am sure in the backend should implement default_avatar_url (nullable) or is_default_avatar (boolean) will be better column for this case because the current solution is not stable user also can download file with "default" OR "avatar" in naming.
If ui get is_default_avatar then no need any manipulation with function which checking string

Contributor details
Your Expensify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/freelancers/~0174aae464393dbd95

✅ Contributor details stored successfully. Thank you for contributing to Expensify!

I actually can't reproduce this - on prod and staging I just get the option to upload a new photo

Probably it was fixed somewhere. I think we can just close it.


Issues mostly about how GitHub displays 'cite this repository'

Hello, I have added CITATION.cff to our GitHub repos, but some things are not satisfying:

"message" field seems to be a great idea, but GitHub does not display it, it just displays the default text "If you use this software in your work, please cite it using the following metadata." which does not fit.
the conference paper and the repo are not the same (the project has changed a lot in 4 years), and I would like to suggest the readers to cite both -- with "preferred-citation" only the conference paper is produced as BibTeX, and without, only the repo (fixing the issue above would help, but showing citations to both and/or to references would help even more)
the "pages" field in BibTeX is a page range (9--16) while in the schema it is defined as the number of pages (8), I do not see the page range
if I set "preferred citation", the BibTeX generated by GitHub does not seem to include most of the data entered
it is not clear what "date-released" is supposed to be (date of the original release? date of the last update?) I would expect the citer to cite a specific version, but GitHub does not show that in the generated BibTeX file

These are mostly issues about GitHub, so not sure whether I should raise them here, or somewhere at GitHub.

Often people have CONDITIONS about WHEN to cite WHICH thing, and BOTH is
sometimes right. So I think there are probably a few important use cases
there.
I agree about the message, in my case I am using CFF for a bibliography on
GitHub (it HAS machine files in it but the thing itself is not software).
Besides page range, article number is increasingly used in papers.
On Wed, Sep 15, 2021 at 10:33 AM Zeno Rogue @.***>
wrote:

Hello, I have added CITATION.cff to our GitHub repos, but some things are
not satisfying:

"message" field seems to be a great idea, but GitHub does not
display it, it just displays the default text "If you use this software in
your work, please cite it using the following metadata." which does not fit.
the conference paper and the repo are not the same (the project has
changed a lot in 4 years), and I would like to suggest the readers to cite
both -- with "preferred-citation" only the conference paper is produced as
BibTeX, and without, only the repo (fixing the issue above would help, but
showing citations to both and/or to references would help even more)
the "pages" field in BibTeX is a page range (9--16) while in the
schema it is defined as the number of pages (8), I do not see the page range
it is not clear what "date-released" is supposed to be (date of the
original release? date of the last update?) I would expect the citer to
cite a specific version, but GitHub does not show that in the generated
BibTeX file

These are mostly issues about GitHub, so not sure whether I should raise
them here, or somewhere at GitHub.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/citation-file-format/citation-file-format/issues/343,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADVGZSNXPUG3SYZZXTAACLUCC4FZANCNFSM5ECXJM7A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Hi @zenorogue, thanks for this issue, and sorry for the delay in replying.
You're right, all but one questions are related to the GitHub feature, not the format/schema. Pinging @arfon, who can maybe help forward your issues to the GitHub team responsible for the widget.
One clarification that I hope helps you is:

the "pages" field in BibTeX is a page range (9--16) while in the schema it is defined as the number of pages (8), I do not see the page range

You define the page range in CFF by using start and end on the respective reference.

Besides page range, article number is increasingly used in papers.

Thanks, @jodischneider, for this comment. I'll add article-number to the things we should think about for a new version of CFF in a new issue.

Hi @zenorogue, thanks for your feedback! (I'm on GitHub staff)

"message" field seems to be a great idea, but GitHub does not display it, it just displays the default text "If you use this software in your work, please cite it using the following metadata." which does not fit.

Yes, I realize this would be desirable in many cases. We may allow this in future but for now are limiting this to the default text.

the conference paper and the repo are not the same (the project has changed a lot in 4 years), and I would like to suggest the readers to cite both -- with "preferred-citation" only the conference paper is produced as BibTeX, and without, only the repo (fixing the issue above would help, but showing citations to both and/or to references would help even more)

I understand this use case but I'm not exactly sure where this should be fixed. One option would be to optionally make preferred-citation an array/list (i.e., one or more entries), but that feels a little in conflict with the idea of the design today.
Right now, one option is to simply have a BibTeX file (i.e., not CFF) called CITATIONS.bib in the root of your repository that includes all of the BibTeX entries you'd like people to cite. The GitHub user interface won't be able to parse this file, but it will link to it.

Hi @zenorogue, I am the dev who looks after ruby-cff which GitHub uses under the hood. I've only just spotted this issue, sorry, and had a couple of questions/comments:

if I set "preferred citation", the BibTeX generated by GitHub does not seem to include most of the data entered

Please could you raise an issue at ruby-cff with details of what is missing?

it is not clear what "date-released" is supposed to be (date of the original release? date of the last update?) I would expect the citer to cite a specific version, but GitHub does not show that in the generated BibTeX file

date-released is probably more relevant to software, which is where we started from with CFF after all. It would refer to the release date of the particular version you are referring to. BibTeX doesn't have a version field in any of its standard entry types so we can't expose that directly. We are looking at supporting a BibLaTeX format that does have that sort of thing. You can use date-published for paper citations which may make more sense in that context.


Generic Type Alias Overloading

Search Terms

variadic type alias
Generic variadic Type Alias
Generic Overload
Generic Type Alias Overloading

Suggestion

Ability to either:

overload generic type definitions
or
define variadic type parameters for generic type aliases. (not sure how this would work)

Use Cases
My specific, immediate need is to create a generic variable number of input type alias for Intersection. I could see other use cases though, and imagine others would find it useful.
The closest work around is if I define default type parameters, like:
type Intersection<A, B, C = {} , D = {}, E = {}, F = {}> = A & B & C & D & E & F;

// and use like
let foo: Intersection<{ prop1: number}, {prop2: string}>;

// it evaluates to
{ prop1: number } &
{ prop2: number } &
{ } &
{ } &
{ } &
{ }

Examples
With overloads, the above type could be declared like:
type Intersection<A , B> = A & B;
type Intersection<A , B , C> = A & B & C;
type Intersection<A , B , C , D> = A & B & C & D;
type Intersection<A , B , C , D , E> = A & B & C & D & E;
type Intersection<A , B , C , D , E , F > = A & B & C & D & E & F;

I am not sure of a good syntax for the variadic type, it also seems like it would have a more limited use.
Checklist
My suggestion meets these guidelines: ( I think )

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

I absolutely know we had a couple meetings about this in the past, but can't find notes for it, so we'll talk about it again 🙃

could i suggest using c++ like syntax for variadic templates? :
type intersection<T, U...> = T &... U;
type union<T, U...> = T |... U;
type template <T, U...> = `${T}$...{U}`


Custom RSS feeds

I was watching as there was an barrage of rust related blogs being offered up for https://github.com/rayascott/fearless-rust-bloggers and got to thinking about how I could add a custom rss.xml that filtered by tag (since I don't plan to blog exclusively about rust).
Musing, it seems like I might be able to build a custom section and page with custom templates that look like plain xml, in combination with using a custom path (with a .xml suffix) but I'm not sure this is even possible.
Any advice for me?

According to the docs I read, per-category/per-tag rss feeds are not yet implemented.  I would like to see this feature as well for the same reason.

Maybe I should not be looking for a workaround and instead try to work up a PR in this case.

I was actually thinking of per-taxonomy rss feed just yesterday evening. I think it makes sense but imo https://github.com/Keats/gutenberg/issues/246 has to be done first, so you can choose which taxonomy to enable and is not tied in to tag/categories

This could be done with template logic, see https://github.com/getpelican/pelican/issues/1162

I will say, it would be nice to be able to customize the feed content, like setting a max word count for a summary, and adding a link back to the site.

The rss.xml is a template, you can overwrite it by create a rss.xml file in your templates directory and change what you want

rss.xml


Dynamic Size for a widget

Hello to the community!
I've been working with flutter, and it's very amazing how we can develop applications so quickly and for two platforms at the same time, everything is good.
But i think i've encountered a major issue in flutter, at least it's major to me, because every time you develop mobile application the size of our widget/view/container is not fixed. We can manage these by Flexible or Expanded widget but still we need to specify the size for the widget containing these widgets, which is ok in most of the cases, but for lets say one of the issue i'm facing is when, I'm trying to build a chat Screen for one of my projects and obviously we cannot figure out the height of the container showing the chat messages, one can send a one word message or multiple lines message, in this case the height property is becoming an issue to maintain. Tried using Wrap/Expanded/Flexible but nothings helps. Also tried using text.length property but it is also not accurate for maintaining the height of the container.
Maybe i'm looking in wrong direction but maybe it's a major issue which haven't been encountered yet.
Please help me guiding if i'm wrong.
        return Container(
          height: entity.mText.length.toDouble() > 100
              ? (entity.mText.length.toDouble() > 200
                  ? entity.mText.length.toDouble()
                  : entity.mText.length.toDouble())
              : 80,
          child: Stack(
            overflow: Overflow.visible,
            fit: StackFit.loose,
            children: <Widget>[
              Padding(
                padding: const EdgeInsets.all(4.0),
                child: Material(
                  borderRadius: BorderRadius.all(Radius.circular(36.0)),
                  color: white,
                  type: MaterialType.canvas,
                  child: Container(
                    width: double.infinity,
                    decoration: BoxDecoration(
                      borderRadius: BorderRadius.all(Radius.circular(36.0)),
                      color: white,
                    ),
                    child: Padding(
                      padding: EdgeInsets.only(
                          left: 36.0, right: 36.0, top: 4.0, bottom: 6.0),
                      child: Column(
                        mainAxisSize: MainAxisSize.min,
                        mainAxisAlignment: MainAxisAlignment.start,
                        crossAxisAlignment: CrossAxisAlignment.start,
                        children: <Widget>[
                          Padding(
                            padding: EdgeInsets.only(top: 4.0, bottom: 6.0),
                            child: Row(
                              crossAxisAlignment: CrossAxisAlignment.start,
                              mainAxisAlignment: MainAxisAlignment.spaceBetween,
                              children: <Widget>[
                                Text(
                                  Helper.stringForDatetime(entity.createdAt),
                                ),
                                Text(
                                  'You',
                                  style: TextStyle(
                                    color: black,
                                    fontSize: 16.0,
                                    fontWeight: FontWeight.w500,
                                  ),
                                )
                              ],
                            ),
                          ),
                          Expanded(
                            child: Text(
                              entity.mText,
                              style: TextStyle(
//                              fontFamily: 'Akrobat-SemiBold',
                                color: black.withOpacity(0.8),
                                fontSize: 15.0,
                              ),
                              maxLines: 30,
                            ),
                          ),
                        ],
                      ),
                    ),
                  ),
                ),
              ),
              Positioned(
                top: 6.0,
                right: 0.0,
                width: 36.0,
                height: 36.0,
                child: Container(
                  decoration: BoxDecoration(
                    color: gamePink,
                    shape: http://BoxShape.circle,
                    border: Border.all(
                      color: white,
                      width: 1.5,
                    ),
                  ),
                ),
              ),
            ],
          ),
        );
      } else {
        return Container(
          height: entity.mText.length.toDouble() > 100
              ? (entity.mText.length.toDouble() > 200
                  ? 210
                  : entity.mText.length.toDouble())
              : 80,
          child: Stack(
            overflow: Overflow.visible,
            fit: StackFit.loose,
            children: <Widget>[
              Padding(
                padding: const EdgeInsets.all(4.0),
                child: Material(
                  borderRadius: BorderRadius.all(Radius.circular(36.0)),
                  color: white,
                  type: MaterialType.canvas,
                  child: Container(
                    width: double.infinity,
                    decoration: BoxDecoration(
                      borderRadius: BorderRadius.all(Radius.circular(36.0)),
                      color: white,
                    ),
                    child: Padding(
                      padding: EdgeInsets.only(
                          left: 36.0, right: 36.0, top: 4.0, bottom: 6.0),
                      child: Column(
                        mainAxisSize: MainAxisSize.min,
                        mainAxisAlignment: MainAxisAlignment.start,
                        crossAxisAlignment: CrossAxisAlignment.start,
                        children: <Widget>[
                          Padding(
                            padding: EdgeInsets.only(top: 4.0, bottom: 6.0),
                            child: Row(
                              crossAxisAlignment: CrossAxisAlignment.start,
                              mainAxisAlignment: MainAxisAlignment.spaceBetween,
                              children: <Widget>[
                                Text(
                                  http://entity.sender.name,
                                  style: TextStyle(
//                                  fontFamily: 'Akrobat-SemiBold',
                                    color: black,
                                    fontSize: 16.0,
                                    fontWeight: FontWeight.w500,
                                  ),
                                ),
                                Text(
                                  Helper.stringForDatetime(entity.createdAt),
                                )
                              ],
                            ),
                          ),
                          Expanded(
                            child: Text(
                              entity.mText,
                              style: TextStyle(
//                              fontFamily: 'Akrobat-SemiBold',
                                color: black.withOpacity(0.8),
                                fontSize: 15.0,
                              ),
                            ),
                          ),
                        ],
                      ),
                    ),
                  ),
                ),
              ),
              Positioned(
                top: 6.0,
                left: 0.0,
                width: 36.0,
                height: 36.0,
                child: Container(
                  decoration: BoxDecoration(
                    color: gamePink,
                    shape: http://BoxShape.circle,
                    border: Border.all(
                      color: white,
                      width: 1.5,
                    ),
                  ),
                ),
              ),
            ],
          ),
        );
      }```

And if i don't specify any height or constraints it gives the following error:

RenderBox was not laid out: RenderDecoratedBox#13c4b relayoutBoundary=up7 NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE
'package:flutter/src/rendering/box.dart':
Failed assertion: line 1687 pos 12: 'hasSize'

Kindly help solving this issue!

Not sure if it's what you're looking for, but you can get screen's Size using MediaQuery.of(context).size and then call size.height or size.width.
As there's missing code for reproducing the issue, if you're doing a chat messages screen, why don't you use a scrollable list for showing messages instead of a Stack?

@ManmohanTalwar
I hope you've solved your problem
Closing since long time without an answer
if you disagree please write in the comments and I will reopen it
Thank you


Improve ExtraSpacing

For #2035. Make ExtraSpacing enabled by default, but add a configuration parameter that can be used to retain the old strict checking of extra spacing.
The changes made to SpaceBeforeModifierKeyword in #2027 are not needed if we make this change, so the corresponding commit is reverted.

:+1: Let's do this!


Create project doesn't work

Current Behavior
While running:  npx nx generate @nxkit/playwright:project some-project
It fails with this error:
>  NX  Generating @nxkit/playwright:project

 >  NX   (0 , js_1.initGenerator) is not a function

   Pass --verbose to see the stacktrace.

Expected Behaviour
It shoudl work and create the project
Github Repo
No response
Steps to Reproduce

Install the dependency: npm i -D @nxkit/playwright
Try to run the command to create the project: npx nx generate @nxkit/playwright:project some-project

Nx Report
>  NX  Generating @nxkit/playwright:project

 >  NX   (0 , js_1.initGenerator) is not a function

   Pass --verbose to see the stacktrace.

Failure Logs
No response
Additional Information
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Closing. Duplicate.


Game not launching from Rich Presence invite

Platforms: Windows 10 64-bit, macOS 10.13.5
App Builds:
Release Channel: stable, Build Number: 26016, Version Hash: 50458c1749127936028ccfb9909bd63545c83948
Release Channel: canary, Build Number: 26239, Version Hash: d30e3b1f8a04c02522d0589e29c39ade6321f45e
Accepting Rich Presence invites via chat or the top-bar "Launch game and join" do not launch the game. My game is non-verified and I've tested using two whitelisted accounts.
On startup, the game calls Discord_Register() with the autoRegister parameter set to 1. Here's what the Windows registry looks like:
HKEY_CURRENT_USER\Software\Classes\discord-appid

Name
Type
Data

(Default)
REG_SZ
URL:Run game appid protocol

URL Protocol
REG_SZ
Empty

HKEY_CURRENT_USER\Software\Classes\discord-appid\DefaultIcon

Name
Type
Data

(Default)
REG_SZ
C:\Users\Sam\AppData\Local\Programs\metastream\Metastream.exe

HKEY_CURRENT_USER\Software\Classes\discord-appid\shell\open\command

Name
Type
Data

(Default)
REG_SZ
C:\Users\Sam\AppData\Local\Programs\metastream\Metastream.exe

This issue happens on linux too: https://github.com/discordapp/discord-rpc/issues/163

Seems to be a bug, will investigate.

Still not working for me. ask to join is blocked.

@RagingNoob game launch is a separate bug
I fixed the RA bug (there was a bug on discord, and then a bug on RA)
https://github.com/discordapp/discord-rpc/issues/239
You can try it by building my fork.

Yeah seems completely discord side, there isn't any activity in the inspector when this is attempted

Ugh didn't expect my constant rebasing to produce so much noise sorry about it!

OK—bug has been found and a fix is being worked on!

awesome!

Fix should be out to Canary, PTB, and Stable. Please let me know if it works!

It worked on windows.
On linux clients it did nothing for me at least.

@msciotti Confirmed that it's working on the platforms listed in the original post. Thanks!

@fr500 are you seeing any console errors or anything like that when you click play? Or just nothing?

There is activity:

@fr500 I think I have an ubuntu vm on my machine. Let me see if I can repro.

Let me know if I can help in any way.

@fr500 I cannot repro on Linux, it worked OK for me on Ubuntu. That launch target is accurate and what mine shows as well. You may want to check what that is registered to.
It works for me on all platforms, so I'm going to mark this issue as closed. If others continue to see this issue, please feel free to re-open here or open a new issue. Thank you all for your help!

@msciotti hmmm something weird is going on, when I launch from the shell
ie: retroarch
it works
when I launch from discord it's as if some arguments are passed (I worked around the %u argument that is appended adding a ; after retroarch)
I got it to work by making the launch command sh -c retroarch but I dunno why is that this is required.


About Carla UE5 docs

Hi there,
I am currently using Carla-UE5.5 with ROS2 for simulating autonomous driving. I am facing some confusion regarding the ROS2 interface. Could you kindly assist me in locating the API explanations or direct me to the specific documentation for Carla-UE5.5?
Thank you.

Hi, here is the Carla UE5 documentation, which differs from the UE4 version docs. Note that this is still a work in progress and some aspects may still be missing, incomplete or inaccurate.

thanks a lot!


OCPBUGS-33628: Add oauth domain for kas cert

When configuring Openshift Auth Provider talking to openshift.default.svc kas complains

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes #
Checklist

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

/lgtm

/jira refresh


Question, how to initialize the database?

Starting up and connected to a fresh database results in this error.
Fatal error: Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'shopware.plugin' doesn't exist in /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:75 Stack trace: #0 /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(75): PDO->query(' SEL...') #1 /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(909): Doctrine\DBAL\Driver\PDOConnection->query(' SEL...') #2 /var/www/html/vendor/shopware/core/Framework/Plugin/KernelPluginLoader/DbalKernelPluginLoader.php(36): Doctrine\DBAL\Connection->executeQuery(' SEL...') #3 /var/www/html/vendor/shopware/core/Framework/Plugin/KernelPluginLoader/KernelPluginLoader.php(107): Shopware\Core\Framework\Plugin\KernelPluginLoader\DbalKernelPluginLoader->loadPluginInfos() #4 /var/www/html/vendor/shopware/core/Kernel.php(133): Shopware\Core\Framework\Plugin\KernelPluginLoader\KernelPluginLoader->initializePlugins('/var/www/html') #5 /var/www/html/vendor/shopware in /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php on line 42

How did you run the container?

I just modified the docker-compose.yml provided in the README
version: "3.8"
services:
  shopware:
    image: shyim/shopware:latest
    container_name: shopware
    environment:
      APP_SECRET: 440dec3766de53010c5ccf6231c182acfc90bd25cff82e771245f736fd276518
      INSTANCE_ID: 10612e3916e153dd3447850e944a03fabe89440970295447a30a75b151bd844e
      APP_URL: http://localhost
      DATABASE_HOST: xxx
      DATABASE_URL: xxx
    ports:
      - 80:80
    network_mode: bridge

Can you show the container logs?

In an effort to get those logs, I decided to rebuild the container.
It looks like if the container doesn't have the connection exactly when it is built, it doesn't execute the migration.
Thus, I had to remove the container and rebuild it. Now it is building the database.
Cheers.

@thomasbeauvais @shyim I am getting this exact error, I removed the container and re-build, but still, get this error:
Fatal error:  Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'shopware.plugin' doesn't exist in /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:75

My docker-compose.yml looks like this, the only thing I modified was the ports, I want it bound to port 8080 on the host so that my reverse proxy can run on port 80 and route traffic to shopware.
version: "3.8"
services:
  mysql:
    image: bitnami/mysql:5.7
    tmpfs:
      - /var/lib/mysql
    environment:
      ALLOW_EMPTY_PASSWORD: 'yes'
      MYSQL_USER: shopware
      MYSQL_PASSWORD: shopware
      MYSQL_DATABASE: shopware
  shopware:
    image: shyim/shopware:latest
    build:
      context: .
    environment:
      APP_SECRET: 440dec3766de53010c5ccf6231c182acfc90bd25cff82e771245f736fd276518
      INSTANCE_ID: 10612e3916e153dd3447850e944a03fabe89440970295447a30a75b151bd844e
      APP_URL: http://localhost
      MAILER_URL: null://localhost
      DATABASE_HOST: mysql
      DATABASE_URL: mysql://shopware:shopware@mysql:3306/shopware
      SHOPWARE_ES_HOSTS:
      SHOPWARE_ES_ENABLED: 0
      SHOPWARE_ES_INDEXING_ENABLED: 0
      SHOPWARE_ES_INDEX_PREFIX:
      COMPOSER_HOME: /tmp/composer
      SHOPWARE_HTTP_CACHE_ENABLED: 1
      SHOPWARE_HTTP_DEFAULT_TTL: 7200
      INSTALL_LOCALE: de-DE
      INSTALLED_SHOPWARE_VERSION: 6.2.0
    ports:
      - 8080:80

@thomasbeauvais @shyim I am getting this exact error, I removed the container and re-build, but still, get this error:
Fatal error:  Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'shopware.plugin' doesn't exist in /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:75

My docker-compose.yml looks like this, the only thing I modified was the ports, I want it bound to port 8080 on the host so that my reverse proxy can run on port 80 and route traffic to shopware.
version: "3.8"
services:
  mysql:
    image: bitnami/mysql:5.7
    tmpfs:
      - /var/lib/mysql
    environment:
      ALLOW_EMPTY_PASSWORD: 'yes'
      MYSQL_USER: shopware
      MYSQL_PASSWORD: shopware
      MYSQL_DATABASE: shopware
  shopware:
    image: shyim/shopware:latest
    build:
      context: .
    environment:
      APP_SECRET: 440dec3766de53010c5ccf6231c182acfc90bd25cff82e771245f736fd276518
      INSTANCE_ID: 10612e3916e153dd3447850e944a03fabe89440970295447a30a75b151bd844e
      APP_URL: http://localhost
      MAILER_URL: null://localhost
      DATABASE_HOST: mysql
      DATABASE_URL: mysql://shopware:shopware@mysql:3306/shopware
      SHOPWARE_ES_HOSTS:
      SHOPWARE_ES_ENABLED: 0
      SHOPWARE_ES_INDEXING_ENABLED: 0
      SHOPWARE_ES_INDEX_PREFIX:
      COMPOSER_HOME: /tmp/composer
      SHOPWARE_HTTP_CACHE_ENABLED: 1
      SHOPWARE_HTTP_DEFAULT_TTL: 7200
      INSTALL_LOCALE: de-DE
      INSTALLED_SHOPWARE_VERSION: 6.2.0
    ports:
      - 8080:80


#84 - adding capability to track production and consumption

#84  - Introduce storage and consumption metrics on a per-spec basis.

break down consumption by group-id, including member-info and offset as well as total
break down production to broker-storage bytes and total offset
the outputs can be used to build a chargeback model against

lgtm