InkWell with DropdownButton underneath stays focused

I am using an Inkwell with a DropdownButton underneath it. If i press the DropdownButton and select something, it will close the list but stays focused. Also the Inkwell will stay focused.
The problem occures on web and windows desktop, not observed on mobile.
I am using the stable channel with version 2.10. The previous version 2.5.3 on stable worked perfectly.
Also on the official website (https://api.flutter.dev/flutter/material/DropdownButton-class.html) the same behaviour can be observed.
official website:

expected result:

own project:

expected result:

Expected results: DropdownButton and Inkwell will be unfocused after selection on DropdownButton.
Actual results: DropdownButton and Inkwell will stay focused after selection on DropdownButton.

Code sample
``

    int id = 0;
    List<DropdownMenuItem<int>> items = [];
    for (int i = 0; i < 10; i++) {
      items.add(
        DropdownMenuItem<int>(
          value: i,
          child: AutoSizeText(
            i.toString(),
            maxLines: 2,
            minFontSize: 5,
          ),
        ),
      );
    }

    return InkWell(
      onTap: () {
        // stuff happens here
      },
      child: DropdownButton<int>(
        //borderRadius: BorderRadius.circular(10),
        isExpanded: true,
        hint: Text('Select'),
        menuMaxHeight: 400,

        value: id,
        items: items,
        onChanged: (int? value) {
          if (value != null) {
            setState(() {
              id = value;
            });
          }
        },
      ),
    );

flutter doctor -v
[√] Flutter (Channel stable, 2.10.0, on Microsoft Windows [Version 10.0.19044.1466], locale de-DE)
    • Flutter version 2.10.0 at C:\Users\Thorb\Documents\Flutter\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5f105a6ca7 (6 days ago), 2022-02-01 14:15:42 -0800
    • Engine revision 776efd2034
    • Dart version 2.16.0
    • DevTools version 2.9.2

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at C:\Users\Thorb\AppData\Local\Android\sdk
    • Platform android-31, build-tools 30.0.2
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.8.2)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.8.30717.126
    • Windows 10 SDK version 10.0.18362.0

[√] Android Studio (version 4.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] IntelliJ IDEA Community Edition (version 2020.2)
    • IntelliJ at C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2020.2.3
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart

[√] VS Code
    • Flutter extension version 3.34.0

[√] VS Code, 64-bit edition (version 1.63.2)
    • VS Code at C:\Program Files\Microsoft VS Code
    • Flutter extension version 3.34.0

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.19044.1466]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 97.0.4692.99
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 98.0.1108.43

[√] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Hi @Scount, Thanks for filing the issue. I can reproduce the same behavior the InkSplash remains when the DropDownItem is selected. But looking at a material design makes me think that this is working as intended, Could you please check this link https://material-components.github.io/material-components-web-catalog/#/component/select
Also, as of master 2.11.0 You don't need to add an InkWell because its already taken care by DropdownButton.

Hello @maheshmnj, thanks for the response. Thought it was a bug, cause it was implemented in the new version. Can not get my head around that decision, but well it is was it is.
Will close the issue.


yetanalytics/persephone:latest - repository does not exist

Could you please publish yetanalytics/persephone to docker hub?
Thank you

Persephone should be available on DockerHub already: https://hub.docker.com/repository/docker/yetanalytics/persephone

Thank you for the quick reply. I still cannot access it - is it set private by any chance?

That indeed seems to be the problem. I just set it to public.

Thank you very much!


chore: use consistent quotations in notifications

Adds missing quotations around specific extensions and session names for all messages.

Thanks!


[ENH] Adds point plots for brains

Codecov Report

Merging #27 into master will decrease coverage by 1.2%.
The diff coverage is 13.79%.

@@            Coverage Diff             @@
##           master      #27      +/-   ##
==========================================
- Coverage   50.75%   49.55%   -1.21%
==========================================
  Files          17       17
  Lines         861      890      +29
==========================================
+ Hits          437      441       +4
- Misses        424      449      +25

Impacted Files
Coverage Δ

netneurotools/plotting.py
10.79% <13.79%> (+0.59%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 777e57f...8318901. Read the comment docs.


Move system-dependant logic to load dynamic library into minimal module, and use geos-config to get development headers

The main thing done here is to move the system-dependant loading of the GEOS dynamic library into a separate module shapely.libgeos, which can be used by setup.py for checking versions before install, and by shapely.geos for run-time use the GEOS of dynamic library.
A TODO item is to figure out a different way to specify the dynamic library (#234). Someone else might need to take the lead on this, but at least it will be in one place, rather than repeated in setup.py and shapely/geos.py. CC @kynan for ideas.
Secondly, geos-config, where available, is used to obtain libraries and headers for developing Cython extensions. This is useful where GEOS is installed on a non-standard prefix. An alternative location for this utility can be proved for setup.py using a GEOS_CONFIG environment variable. Note that this is only needed for setup.py, so I don't think it's suitable for setting dynamic library prefix. Also, geos-config is a shell script, and is not available for MS Windows.
Other edits use the logging module for setup.py, and fixing the requires metadata. Extra debugging info can be shown e.g. python -W all setup.py .... Also add TODO that free is not used anywhere.
Please test and comment, as these files are rather sensitive components.
This PR supersedes #236 due to GitHub limitations.

@mwtoews @sgillies Sorry to be a bit late to the party (it was the middle of the night in Europe...) and thanks for the quick fix to #234. It seems though this is only part of the way to resolving #232 i.e. during setup you still need to have LD_LIBRARY_PATH set for ctypes to be able to load the shared library.


[TOPIC-BLE-LLCP] Bluetooth: llcp: add missing include

when including ull_internal.h we must also include lll_conn.h for
getting the type definition of the node_tx struct.
Without this change the samples direction_finding_connectionless_rx and direction_finding_connectionless_tx will fail
This change is required in topic branch only, not in main
Signed-off-by: Andries Kruithof<EMAIL_ADDRESS>

There still is a CI failure I want to investigate before merging this


GH-39780: [Python][Parquet] Support hashing for FileMetaData and ParquetSchema

I think the hash, especially for FileMetaData could be better, maybe just use return of __repr__, even though that won't include row group info?
Rationale for this change
Helpful for dependent projects.
What changes are included in this PR?
Impl __hash__ for ParquetSchema and FileMetaData
Are these changes tested?
Yes
Are there any user-facing changes?
Supports hashing metadata:
In [1]: import pyarrow.parquet as pq

In [2]: f = pq.ParquetFile('test.parquet')

In [3]: hash(f.metadata)
Out[3]:<PHONE_NUMBER>708427907

In [4]: hash(f.metadata.schema)
Out[4]:<PHONE_NUMBER>078172540

Closes: #39780

I think the hash, especially for FileMetaData could be better, maybe just use return of repr, even though that won't include row group info?

I am not sure if row group info is necessary - do not have much experience with hash(). But naively I would think using __repr__ would be enough. @raulcd what do you think?

Thank you @milesgranger !


Update TypeScript

TypeScript 2.7 has been released so we should update the project to this new release.

Has been updated to 3.0.1


Universal To using CC and BCC, ends up with 3 mails

Laravel Version: 5.4.26
PHP Version:  7.0.2
Database Driver & Version: MySQL 5.7.28

Description:
When using "Universal TO" in config/mail.php:
    'to' => [
        'address' =><EMAIL_ADDRESS>        'name' => 'Testing Dude'
    ],

and using MAIL_DRIVER=log, or smtp, or sparkpost, Laravel put your "universal to" also on the CC and BCC fields of the email. Then you end up with 3 copies of the same mail.
Steps To Reproduce:

php artisan make:notification InvoicePaid --markdown=mail.invoice.paid
create view for mail.invoice.paid
modifiy toMail() in InvoicePaid:   return (new MailMessage)->subject('Invoice Paid')->markdown('mail.invoice.paid');
$user = App\User->create(...........)
$user->notify((new InvoicePaid($invoice));

using MAIL_DRIVER=log you would see the folowing in laravel.log:
[2017-07-14 17:31:12] local.DEBUG: Message-ID<EMAIL_ADDRESS>Date: Fri, 14 Jul 2017 17:31:12 -0300
Subject: Invoice Paid
From: MyApp<EMAIL_ADDRESS>To: Testing Dude<EMAIL_ADDRESS>Cc: Testing Dude<EMAIL_ADDRESS>Bcc: Testing Dude<EMAIL_ADDRESS>MIME-Version: 1.0
Content-Type: multipart/alternative;

with log everything is OK, but if you use smtp or sparkpost to test the emails you and up with triple the mails.

Setting a global to in your config will override any other mail address already send before. According to the code you should only use this for local development.
        // If a global "to" address has been set, we will set that address on the mail
        // message. This is primarily useful during local development in which each
        // message should be delivered into a single mail address for inspection.
        if (isset($this->to['address'])) {
            $this->setGlobalTo($message);
        }

#16705

Setting a global to in your config will override any other mail address already set before. According to the code you should only use this for local development.

Yeah, I'm using for development, and testing that sparkpost works ok. But setting to also put that address in CC and BCC (although I'm not using that).

Check https://github.com/laravel/framework/pull/16705


[analysis] Kuromoji: updating user dictionary

Hi,
I need to update the user dictionary and I usually open close the index to make the change apply.
One question: Is it the only way to update the dict cause in case of typo (missing a , or one bad space) in the file the index don't open at all and on production server it's not an option.
first question (for confirmation): is it the good way to do? open close the index to reload the dict.
second one: is there a way to have an option like check config for apache [apachectl configtest]? so we can open close the index without fear!!
Thanks.

Hi,
Now, I think we don't have a way to reload the dict without open/close.
Because, the settings of mappings is load only in a timing to create index.
Question about "an option like check config for apache". Does this mean checking only user dictionary?

Hi, thanks for the reply,
Question about "an option like check config for apache". Does this mean checking only user dictionary?
I don't know what it's better and how it's works from inside but concerning the plugin yes it can be a useful option.
When you said only user dictionary does it also include synonyms files, stop words, mapping etc... or it's a different system.
Also read about this blog : https://www.elastic.co/blog/support-in-the-wild-my-biggest-elasticsearch-problem-at-scale
It's written that closing the index remove the fielddata so if I need to update the dictionary several time a day and open close the index, it can make the search on this index more slow.
Thanks again for your time.

Yes, if index close and open, then it can make the search on this index more slow.
However, if you update the dictionary several time a day, you have to re-index the existed data before updating the dictionary.
Changing the dictionary means changing the output of tokens.
Some words can not match documents using old dictionary.
BTW, I think it is useful that we have the validation of mapping before creating index.

Hi,

BTW, I think it is useful that we have the validation of mapping before creating index.

Cool!! Thanks a lot!

you have to re-index the existed data before updating the dictionary.

it's re-index after updating the dictionary??
Thanks again it'll be very helpful!

Yes, "after updating the dictionary".

This issue was moved to elastic/elasticsearch#13154


feat(options): cwd as function with nil for abort

Hello back ! Following the issue, the solution I came with.
Allowing to pass a function as the cwd, and when the function returns a nil, it should not trigger the rg run.
It can be used as follow:
require("cmp").setup({
  sources = {
    {
      name = "rg",
      options = {
        cwd = find_root_dir,  -- use rg only if find git in parent dir
      },
    },
  }
}

Thank you,
I still prefer this to be in cmp directly, like discussed in #27, but this might be a good workaround for the time being. :thinking:
Let me think about this a bit.


Watcher issue on Window's short paths like C:\PROGRA~1\

Bug report

What is the current behavior?
I'm an author of the fork-ts-checker-webpack-plugin and I noticed that behavior in my recent PR: https://github.com/TypeStrong/fork-ts-checker-webpack-plugin/pull/516/files.
When I navigate to a path using MS-DOS compatible path (for example temp directory on GitHub Actions on Windows image - C:\Users\RUNNER~1\AppData\Local\Temp\), and I add a directory to the compilation.contextDependencies (for example C:\Users\RUNNER~1\AppData\Local\Temp\my-app\src), webpack will trigger unnecessary rebuilds. I checked compiler.modifiedFiles and compiler.removedFiles and they randomly contain C:\Users\RUNNER~1\AppData\Local\Temp\my-app\src directory (which shouldn't be the case - there should be only files).
If the current behavior is a bug, please provide the steps to reproduce.

Copy webpack project to C:\Program Files\my-app
Add a hook that will add path.join(process.cwd, 'src') to compilation.contextDependencies
Run webpack in a watch mode with CWD = C:\PROGRA~1\my-app
Add/update/delete some files in C:\Program Files\my-app\src and debug compiler.modifiedFiles and compiler.removedFiles Set

What is the expected behavior?
As in webpack 4, the watcher should not trigger unnecessary rebuild and report directory as changed or removed file.

Other relevant information:
webpack version:  5.1.0
Node.js version: 10
Operating System: Windows 10
Additional tools:

I don't understand the problem. If you add src as contextDependency it will report src as changed once anything in src changes. And this also triggers a rebuild.
modifiedFiles will only list entries of fileDependencies or contextDependencies. It will not list the file changed if this is not a direct dependency.

I would expect that modifiedFiles and removedFiles contains a list of files - not directories. And that's the case on Linux, Mac, and Windows with normal paths, but not on Windows with MS-DOS compatible paths.

@piotr-oles how it is related to chokidar?

@evilebottnawi I didn't notice such an issue with webpack 4 which AFAIK uses chokidar as a low-level watching library. But I don't know if that's the source of the issue.

@piotr-oles

modifiedFiles will only list entries of fileDependencies or contextDependencies.

Expected, what do you want?

As I said above, it works differently on Linux and Mac OS. If it's expected, then the name ’modifiedFiles’ is misleading :)

@piotr-oles What is work differently? Yes, it is some misleading

But I really noticied a small difference when using 6+3 names. It reports C:\PROGRA~1 as removed as it wasn't able to find the folder with readdir...

Yes, there is something off with 8.3 names. I resolved an 8.3 path using fs.resolveSync.native in my tests as a CWD for the spawned webpack process and now they pass :)

@piotr-oles so we can close it?

It's up to you. The problem still exists, but I was able to do a workaround :)

@piotr-oles please describe what you expected, because

As I said above, it works differently on Linux and Mac OS

It should not do that.

I resolved an 8.3 path using fs.resolveSync.native in my tests

How did you do that exactly? I wasn't able to find fs.resolveSync.native?

ah it's fs.realpathSync.native

Yep, sorry for the wrong function :)

still valid

still valid

bump


Concatenation of epochs raises non-intuitive error if one epoch is empty

Describe the bug
When concatenating a list of epochs, when one of the epochs contains zero events, a ValueError with few information is raised.
Steps to reproduce
import mne
import numpy as np

n_epochs, n_channels, n_timepoints = 10, 4, 21
ch_names = [f"ch_{i}" for i in range(n_channels)]
fake_data_1 = np.random.random((n_epochs, n_channels, n_timepoints))
fake_data_2 = np.random.random((n_epochs, n_channels, n_timepoints))

info = mne.create_info(ch_names=ch_names, sfreq=40)
epo_1 = mne.EpochsArray(fake_data_1, info)
epo_2 = mne.EpochsArray(fake_data_2, info)

# works
conc_epos = mne.concatenate_epochs([epo_1, epo_2])
# remove all data from epo_2
epo_2.drop(range(10))
# Get cryptic ValueError:
# zero-size array to reduction operation maximum which has no identity
not_conc_epos = mne.concatenate_epochs([epo_1, epo_2])

Expected results
Either get a concatenated epoch object that contains all events from epo_1 with a warning that some epos were empty, or get a ValueError that better explains what's happening.
Actual results
MNE raises the following error:
Traceback (most recent call last):
  File "<input>", line 4, in <module>
  File "/home/jan/dev/python/spot/spot_venv/lib/python3.8/site-packages/mne/epochs.py", line 3493, in concatenate_epochs
    return _finish_concat(*_concatenate_epochs(epochs_list,
  File "/home/jan/dev/python/spot/spot_venv/lib/python3.8/site-packages/mne/epochs.py", line 3419, in _concatenate_epochs
    events_offset = _update_offset(events_offset, epochs.events, shift)
  File "/home/jan/dev/python/spot/spot_venv/lib/python3.8/site-packages/mne/epochs.py", line 3360, in _update_offset
    offset = np.int64(offset) + np.max(events[:, 0]) + shift
  File "<__array_function__ internals>", line 5, in amax
  File "/home/jan/dev/python/spot/spot_venv/lib/python3.8/site-packages/numpy/core/fromnumeric.py", line 2705, in amax
    return _wrapreduction(a, np.maximum, 'max', axis, None, out,
  File "/home/jan/dev/python/spot/spot_venv/lib/python3.8/site-packages/numpy/core/fromnumeric.py", line 87, in _wrapreduction
    return ufunc.reduce(obj, axis, dtype, out, **passkwargs)
ValueError: zero-size array to reduction operation maximum which has no identity

My current workaround is to manually filter out empty epochs beforehand.
Additional information
Platform:      Linux-5.8.0-59-generic-x86_64-with-glibc2.29
Python:        3.8.10 (default, Jun  2 2021, 10:49:15)  [GCC 9.4.0]
Executable:    /home/jan/dev/python/spot/spot_venv/bin/python
CPU:           x86_64: 8 cores
Memory:        Unavailable (requires "psutil" package)
mne:           0.23.0
numpy:         1.19.5 {blas=openblas, lapack=openblas}
scipy:         1.5.4
matplotlib:    3.3.4 {backend=module://backend_interagg}
sklearn:       0.23.2
numba:         Not found
nibabel:       3.2.1
nilearn:       Not found
dipy:          Not found
cupy:          Not found
pandas:        1.1.5
mayavi:        Not found
pyvista:       Not found
vtk:           Not found

Thanks for the report! Could you see if PR #9535 fixes this for you?

Thanks for the quick fix. Yes your branch fixes the issue for me and shows the warning instead!


Game room structure

close #43 close #41
according to the rest specifications implemented:
createRoom post request
joinRoom put request
Description:
changed the DTO mapper to accomodate retrieving a user from the userId to create
added to the service a roomCode generation
adding players to the members list
maybe change joinRoom request from put to get

@fabibert wollten wir joinRoom nicht in eine get request ändern?

Ausserdem haben wir 13 failed tests, ich weiss nicht ob das gut ist das so in main zu mergen


Update-PodeWebLink ?

Question
Update-PodeWebRaw is no.
Update-PodeWebLink is no.
New-PodeWebText doesn't support links.
How can I update/show the generated link?
Thanks

Hi @eugen257,
I was about to suggest Update-PodeWebText might work, but for some reason I appear to have not tagged it with the pode-text class 😱
So currently, it's not possible and will need fixing. Update-PodeWebRaw is something that's been asked for in the past as well 👍


page.pdf result is different from printing to "save to PDF" in browser manually

As you can see from bellowing pictures, the result from puppeteer is different from expected. it can get the above fraction number printed correctly, but failed for the one bellow it. I tried emulate print or screen media, no help.
It is really weird, in the end, both operations should call the same piece of "pdf printing" code, why the results are different.
To walk around it, I would like to call browser print from Puppeteer, but seems browser printing is not exposed to Puppeteer.
from Printing to "save as PDF" manually

from Puppeteer page.pdf()

because page.pdf only works in headless mode, so the discrepancy may resulted from inconsistent renderings of headless and headful modes.

in headless screenshot, it is correct. so it is page.pdf is not working correctly.

same problem


C++: IR dataflow edges through outparams

This connects ReturnIndirectionInstructions to ReadSideEffectInstructions in the data flow library by adding a new case to TReturnKind. It doesn't cover flow into functions via indirect parameters - I think that will need some changes to the shared library to use a class similar to ReturnKind for argument IDs.

There's internal tests failing now. The changes in CWE-120 look incorrect, the others are restoring results that were lost when we enabled the IR. I'll look into the CWE-120 changes before I open an internal PR.

It looks like the new false positives in the CWE-120 test come via the Chi chain on argv. I think everything is working as currently intended on the IR side. The easy patch would be to add accesses to argv as barriers in the query to prevent that chi chain flow. The harder solution would be to do an interprocedural analysis to identify functions that take a pointer to non-const but don't write to it and avoid generating side effect writes.

It looks like the new false positives in the CWE-120 test come via the Chi chain on argv. I think everything is working as currently intended on the IR side. The easy patch would be to add accesses to argv as barriers in the query to prevent that chi chain flow. The harder solution would be to do an interprocedural analysis to identify functions that take a pointer to non-const but don't write to it and avoid generating side effect writes.

I don't fully understand that problem. Can you turn it into a test case so we can see the IR? As I wrote in my initial review, I'd also like to see test cases that demonstrate that the new flow is working as intended.

I added an example of that to ssa.cpp - you'll want to look at the unsound version for the moment. There's already tests for the dataflow portion that I added to cpp/ql/test/library-tests/dataflow/DefaultTaintTracking/defaulttainttracking.cpp and cpp/ql/test/library-tests/dataflow/dataflow-tests/test.cpp in earlier commits.

This PR will fix 2 out of the 3 SAMATE test regressions identified in https://git.semmle.com/Semmle/code/pull/36464 (the CWE-78 and CWE-197 ones).
Is there anything I can do to help with this PR?

For the record, I believe these are the changes in CWE-120/.../UnboundedWrite.expected from the internal repo that show problematic flow from argv:
Diff:
--- expected
+++ actual
@@ -2,4 +2,9 @@
 | main.c:49:5:49:10 | call to strcpy | This 'call to strcpy' with input from $@ may overflow the destination. | main.c:113:15:113:18 | argv | argv |
 | main.c:49:5:49:10 | call to strcpy | This 'call to strcpy' with input from $@ may overflow the destination. | main.c:114:15:114:18 | argv | argv |
 | main.c:153:7:153:12 | call to strcpy | This 'call to strcpy' with input from $@ may overflow the destination. | main.c:149:20:149:25 | call to getenv | call to getenv |
+| main.c:181:5:181:11 | call to sprintf | This 'call to sprintf' with input from $@ may overflow the destination. | main.c:113:15:113:18 | argv | argv |
+| main.c:181:5:181:11 | call to sprintf | This 'call to sprintf' with input from $@ may overflow the destination. | main.c:114:15:114:18 | argv | argv |
+| main.c:181:5:181:11 | call to sprintf | This 'call to sprintf' with input from $@ may overflow the destination. | main.c:115:15:115:18 | argv | argv |
+| main.c:181:5:181:11 | call to sprintf | This 'call to sprintf' with input from $@ may overflow the destination. | main.c:116:15:116:18 | argv | argv |
+| main.c:181:5:181:11 | call to sprintf | This 'call to sprintf' with input from $@ may overflow the destination. | main.c:117:15:117:18 | argv | argv |
 | main.c:181:5:181:11 | call to sprintf | This 'call to sprintf' with input from $@ may overflow the destination. | main.c:180:12:180:15 | argv | argv |

Sorry for taking so long to follow up on this.
The additional results in CWE-120 don't look terrible to me, and I don't think they're blocking for this PR. The query still has the same primary-location results as before, and we can address the duplication of sources in a separate PR. All these result changes show that this is a disruptive PR that can uncover other latent bugs, so we'll want to run CPP-Differences. I'll trigger one now.

I've triggered https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/957/. I hope I got the SHAs for the internal repo right.

Yeah, the new results in CWE-120/.../UnboundedWrite.expected don't look too bad to me.  They don't add anything.  But plenty of other changes that come from this PR do.

Of the failing tests, I have confirmed that these two are the desirable SAMATE fixes I described above.  They will help hugely to get our SAMATE stats back to where they should be:
semmlecode-cpp-tests/DO_NOT_DISTRIBUTE/security-tests/CWE-078/SAMATE/tests/ExecTainted.qlref: Test failure (Expected output does not match)
semmlecode-cpp-tests/DO_NOT_DISTRIBUTE/security-tests/CWE-197/SAMATE/tests/IntegerOverflowTainted.qlref: Test failure (Expected output does not match)

This is the one we discussed above (acceptable duplication):
semmlecode-cpp-tests/DO_NOT_DISTRIBUTE/security-tests/CWE-120/CERT/STR31-C/UnboundedWrite.qlref: Test failure (Expected output does not match)

And the following changes restore results that we want, that were documented as missing in https://jira.semmle.com/browse/CPP-491 and may have motivated this PR in the first place:
semmlecode-cpp-tests/DO_NOT_DISTRIBUTE/security-tests/CWE-190/samate/examples/ArithmeticTainted.qlref: Test failure (Expected output does not match)
semmlecode-cpp-tests/DO_NOT_DISTRIBUTE/security-tests/CWE-190/samate/examples/IntegerOverflowTainted.qlref: Test failure (Expected output does not match)
semmlecode-cpp-tests/DO_NOT_DISTRIBUTE/security-tests/CWE-290/CWE/AuthenticationBypass/AuthenticationBypass.qlref: Test failure (Expected output does not match)

Which leaves:
ql/cpp/ql/test/library-tests/ir/ir/raw_ir.qlref: Test failure (Expected output does not match)
ql/cpp/ql/test/library-tests/ir/ssa/aliased_ssa_ir_unsound.qlref: Test failure (Expected output does not match)

I haven't looked at these but I'm guessing those files just need updating to reflect the new IR, and perhaps glancing over as a sanity check.

https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/957/ shows a massive performance regression and many new results. @rdmarsh2, will you investigate?

The changes in raw_ir.qlref are an additional piece of metadata being printed, and the changes in aliased_ssa_ir_unsound.qlref are from an extractor change. I've accepted them and updated the internal PR.

I've been working my way through the CPP-Differences results with the path explanations from #3189. I'm seeing a lot of results where fields are getting conflated when a ReturnIndirection reads a chi node and then a BufferMayWriteSideEffect has a may-write to a whole allocation. I think #3118 might fix that.

#3118 doesn't immediately fix those. I'll look at it some more tomorrow.

The CPP-Differences results have arrived: https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/1025/

@rdmarsh2 It looks like your latest merge from master accidentally added dozens of little test files from your working copy :grimacing:. I recommend rebasing them away.

I've looked at the results of the recent CPP-difference for g/torvalds/linux and g/openjdk/jdk. They all seem like true positives with the exception of these two (which looks like FPs for the same reason):
NEW: cpp/unbounded-write (src/java.base/unix/native/libjli/java_md_solinux.c:395)
NEW: cpp/uncontrolled-process-operation (src/java.base/unix/native/libjli/java_md_solinux.c:550)

Here are my notes about the three snapshots I looked at. TL;DR: cherry-picking https://github.com/jbj/ql/commit/a715866db449f9ea370ff129ff7040ff027735aa will fix all new FPs but move four TPs that should be recoverable with field flow.
Git

New TP from TaintedPath.ql on git/git in daemon.c:1476.
Everything else is FP, and it's fixed by the FieldAddressInstruction exclusion but not by merging from master

Wireshark

cpp/uncontrolled-allocation-size: 16 new FPs in PR head, all suppressed by merging from master.
cpp/path-injection:

new TP in capture_sync.c, preserved by the conflation suppression
Four new FP in lemon.c, all suppressed by merging from master

PHP

cpp/uncontrolled-allocation-size: all 155 results (all new FPs) fixed by the FieldAddressInstruction exclusion but not by merging from master
cpp/path-injection

The FieldAddressInstruction exclusion removes TPs in pchar.c, util.c, main.c, and phpdbg_list.c, where field conflation plays the role of field flow and happens to match up the right field names. All results are essentially the same code, just in different main-routines. Can we recover these results with field flow?
With output indirections + the FieldAddressInstruction exclusion we get two new results over master, and they are TP.

NEW: cpp/unbounded-write (src/java.base/unix/native/libjli/java_md_solinux.c:395)

I think that characters from the getenv call do reach the source buffer of the sprintf, but the string is bounded after the call to snprintf (macro-expanded from JLI_Snprintf) in GetJVMPath. Probably a good place for a query-specific barrier.
NEW: cpp/uncontrolled-process-operation (src/java.base/unix/native/libjli/java_md_solinux.c:550)

Fixed by merging from the latest master.

Can we recover these results with field flow?
I think so, but I hit a join order issue with Tuple counts for DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow0#ffff#cur_delta on my merge branch. It looks like the join ordering issue is introduced by something in #3118 but the tuple counts are much larger in the merge branch.

The UnknownType case for flow through partial reads is doing field conflation... I'll take it back out.

I think so, but I hit a join order issue with DataFlowImplCommon::Cached::FlowThrough::Final::parameterValueFlow0#ffff#cur_delta on my merge branch. It looks like the join ordering issue is introduced by something in #3118 but the tuple counts are much larger in the merge branch.

I've just been hit by this join order issue as well. I'm investigating it now.

Latest CPP-Differences finished: https://jenkins.internal.semmle.com/job/Changes/job/CPP-Differences/1032

Looking through the latest openjdk results, all the results that @MathiasVP  mentioned going away with a cherry-pick of a715866 are back in the current PR after restoring flows through from the source value operand of partial loads of arrays and unions. Results on the other snapshots line up with the master merge and cherry pick at 9f40886
g/openjdk/jdk
cpp/unbounded-write

TPs restored as of 3b59118:

libproc_impl.c:179
symtab.c:213
symtab.c:240
These are all explained by partial loads through arrays.

cpp/path-injection

TPs restored as of 3b59118:

symtab.c:222
symtab.c:244
symtab.c:232
libproc_impl.c:184
The results in symtab.c are all explained by partial loads through arrays. The result in libproc_impl.c flows through a field of array type in a struct that is allocated in the same function as the sink, and the flow goes through a call to strcpy. That might mean there's precise copies in the IR, but I need to do more digging to be sure.

cpp/uncontrolled-allocation-size

FPs restored as of 3b59118

gifalloc.c:91
gifalloc.c:79
I think these are FPs but only because there's an implicit bound at this bitwise "and". I don't think we need to fix them as part of this PR.

The cpp/path-injection result at libproc_impl.c:184 in openjdk comes from pointer/object conflation for modeled functions in DefaultTaintTracking.qll.

I'm now convinced that none of these result changes come from new incorrect flow edges.
@MathiasVP @jbj I think this is mergeable once the QL changes are reviewed.


LOG4J2-1901 - Fix travis-ci build

temporary comment out failing asserts to see if build passes
Just a test, not ready to merge!

Wouldn't this best be fixed with a JUnit assume?

This has been fixed in master branch already.


iPad pro 2018(A12X)  (16.5.1)    It didn't work out. Please, God

iPad pro 2018(A12X)  (16.5.1)    It didn't work out. Please, God

大神我爱你，靠您了，坐等大神带飞！


vue-prism-component does not provide an export named 'default'

Is it possible to prepare an ESM version so I can use this in Vite? I'm not sure why I'm seeing issues like this...

SyntaxError: The requested module '/@fs/Users/lucaban/ghq/github.com/CyCraft/blitzar/node_modules/vue-prism-component/dist/vue-prism-component.common.js?v=d01fabea' does not provide an export named 'default'

I have found many issues with usage in Vite. I was able to solve them by bundling Prism into the dist esm built file. I will make a PR.

↑
@egoist please review this small PR with great value for me :O


[Add] LICENSE

Although it is a bit confusing to correctly disclose the Artistic 2.0 license, it is recommended.

Although it is a bit confusing to correctly disclose the Artistic 2.0 license, it is recommended.

great , btw i updated this bot to fix all issue


Fixed calculation of middleware priority

This PR fixes how middleware priority is calculated. Now it works with subclasses.
Let's say we use this middleware group:
// app/Http/Kernel.php
protected $middlewareGroups = [
        'web' => [
            \Illuminate\Routing\Middleware\ThrottleRequests::class,
            \App\Http\Middleware\EncryptCookies::class,
            \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
        ],
];

The default middleware priorities are these:
// vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
protected $middlewarePriority = [
        \Illuminate\Foundation\Http\Middleware\HandlePrecognitiveRequests::class,
        \Illuminate\Cookie\Middleware\EncryptCookies::class,                // <-- NOTE THIS
        \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,    // <-- THIS
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \Illuminate\Contracts\Auth\Middleware\AuthenticatesRequests::class,
        \Illuminate\Routing\Middleware\ThrottleRequests::class,             // <-- AND THIS
        \Illuminate\Routing\Middleware\ThrottleRequestsWithRedis::class,
        \Illuminate\Contracts\Session\Middleware\AuthenticatesSessions::class,
        \Illuminate\Routing\Middleware\SubstituteBindings::class,
        \Illuminate\Auth\Middleware\Authorize::class,
    ];

The middleware in \App\Http\Middleware\EncryptCookies is a subclass of \Illuminate\Cookie\Middleware\EncryptCookies but with the existing code the final middleware stack is calculated as:
array:3 [▼ // vendor/laravel/framework/src/Illuminate/Routing/SortedMiddleware.php:23
  0 => "Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse"
  1 => "Illuminate\Routing\Middleware\ThrottleRequests"
  2 => "App\Http\Middleware\EncryptCookies"
]

(This results in queued cookies not being encoded and hence lost)
With the suggested fix the middleware stack is calculated correctly:
array:3 [▼ // vendor/laravel/framework/src/Illuminate/Routing/SortedMiddleware.php:23
  0 => "App\Http\Middleware\EncryptCookies"
  1 => "Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse"
  2 => "Illuminate\Routing\Middleware\ThrottleRequests"
]

The code in https://github.com/laravel/framework/pull/41432 is definitely better than mine and still perfectly fine, as far as I can tell. I would suggest to scrap this PR and merge that PR again instead. I followed the story of https://github.com/laravel/framework/pull/41432 and it seems that the reasons why it was reverted are long resolved.
On the top level I truly believe this should be fixed. \App\Http\Middleware\EncryptCookies is included into laravel/laravel by default and it isn't honored by the middleware priority list while it seemingly should be.
This issue cost us several hours of digging, we resolved it by including the class name into the priority list like this:
// vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
protected $middlewarePriority = [
...
        \Illuminate\Cookie\Middleware\EncryptCookies::class,
        \App\Http\Middleware\EncryptCookies::class,
...
    ];


Use timestamps in userinfo.

I'm not a huge fan of discord timestamps in embeds so I'm going to close this for now.
Secondly, when it comes to feature changes please  create an issue or post in my cog support channel first


Browsing folders with space in their name

It seems that Micro has problems when opening files that are in folders with a space in their name.
For example, there are two files:
/home/user/Downloads/gistfile1.txt
/home/user/Downloads/gist file/gistfile1.txt
In the ctrl-o dialogue, I start typing ~/Downloads/g then press tab - and Micro correctly suggests two options, the file and the folder.
But when I type ~/Downloads/gist  (with a space in the end), Micro suggests /home/user/Downloads/gist .Xauthority This file .Xauthority is not in the Downloads folder.

Unfortunately it's not uncommon in Go. Took me a while to use any library that calls on CGO because go screws up parsing C:\Program Files when you pass the environment variable for GCC/clang. I couldn't believe it was a real ongoing issue with no fix

Trust me I hear you, I'm not a windows user by choice. I've had a Ubuntu tattoo since 2008 but life isn't always fair and sometimes you have to run windows 10.
I was actually staring at the go-shellquote library for a couple hours yesterday trying to figure out how to better parse the escape characters because any CTRL-E command executed in micro (yea on windows) ending with '' will cause it to crash immediately. However it wasn't the first time that I've looked at a piece of the sc long enough and thought, do I really think I am gonna come up with a better solution than the owner of this repo? Seen his other libraries? yeah probably not...
the best I could do worked but was definitely not worth the cost of implementing it.


Remove the old site

Changes

Remove the old site

Codecov Report

Merging #298 (c4bebfc) into main (5df13c5) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head c4bebfc differs from pull request most recent head 2f1409a. Consider uploading reports for the commit 2f1409a to get more accurate results

@@            Coverage Diff             @@
##              main      #298    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files           66        56    -10
  Lines         2629      1811   -818
  Branches       239        87   -152
==========================================
- Hits          2629      1811   -818

Impacted Files
Coverage Δ

packages/recheck/src/lib/worker-pool.ts

packages/recheck/src/lib/env.ts

packages/recheck/src/lib/exe.ts

packages/recheck/src/lib/agent.ts

packages/recheck/src/main.ts

...ges/eslint-plugin-redos/src/rules/no-vulnerable.ts

packages/recheck/src/browser.ts

packages/recheck/src/lib/native.ts

packages/recheck/src/lib/java.ts

packages/recheck/src/lib/pure.ts

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update da27da6...2f1409a. Read the comment docs.


Update isteven-multi-select.css

Minor CSS bug.

Fixed (PR https://github.com/isteven/angular-multi-select/pull/240)


[Feature Request]: Original files name in the StorageContext metadata using S3Reader?

Feature Description
Use original file names of files from s3 buckets instead of random names generated using tempfile and make S3Reader more useful.
Reason
I am using S3Reader to read files from an s3 bucket: https://llamahub.ai/l/s3
This loader downloads documents into a temp folder but with arbitrary names. Consequently, if I save StorageContext created using this loader, these arbitrary names are present in the metadata. When I create a RAG pipeline using this StorageContext, my sources for the response are these arbitrary file names and not original file names. This is not really helpful if I want to present my users with sources of my search results. I made some changes locally to make it work but wanted to understand the thought process behind using random file names for this reader/loader?
Value of Feature
Users will be able to see sources with correct file names when creating a RAG pipeline using AWS s3 buckets.

@jerryjliu @logan-markewich  Can you please advise?

Feel free to make a PR to change how the loader works 🙂 I don't have any strong opinion on this

Feature Description
Use original file names of files from s3 buckets instead of random names generated using tempfile and make S3Reader more useful.
Reason
I am using S3Reader to read files from an s3 bucket: https://llamahub.ai/l/s3
This loader downloads documents into a temp folder but with arbitrary names. Consequently, if I save StorageContext created using this loader, these arbitrary names are present in the metadata. When I create a RAG pipeline using this StorageContext, my sources for the response are these arbitrary file names and not original file names. This is not really helpful if I want to present my users with sources of my search results. I made some changes locally to make it work but wanted to understand the thought process behind using random file names for this reader/loader?
Value of Feature
Users will be able to see sources with correct file names when creating a RAG pipeline using AWS s3 buckets.

Thanks @utility-aagrawal, we just adopted somewhat typical pattern here for downloading i.e., spin up a tempdir, tempfile,  get what you need and it will clean up the temporary dir and files. But your situation necessitates a different solution, which is fine. Reviewing your PR now. thanks for the contribution!


Fixing .slideDown open type

When Floaty button is bigger than its items and .slideDown animation is used first item overlaps the Floaty button. This is because items views are top aligned with the Floaty button.

Thank you. :)


Add stable api version 2023-12-01 for ScheduledQueryRules

ARM (Control Plane) API Specification Update Pull Request

Tip: overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

PR review workflow diagram
Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

 Click here to see the details of Step 1
Breaking changes review (Diagram Step 1)
If the automation determines you have breaking changes, i.e. Step 1 from the diagram applies to you,
you must follow the breaking changes process.
IMPORTANT This applies even if:

The tool fails while it shouldn't, e.g. due to runtime exception, or incorrect detection of breaking changes.
You believe there is no need for you to request breaking change approval, for any reason.
Such claims must be reviewed, and the process is the same.

 Click here to see the details of Step 2
ARM API changes review (Diagram Step 2)

If this PR is in purview of ARM review then automation will add the ARMReview label.
If you want to force ARM review, add the label yourself.
Proceed according to the diagram at the top of this comment.

 Click here to see the diagram footnotes
Diagram footnotes
[1] ARM review queue (for merge queues, see [2])
The PRs are processed by time opened, ascending. Your PR may show up on 2nd or later page.
If you addressed Step 1 from the diagram and your PR is not showing up in the queue, ensure the label ARMChangesRequested
is removed from your PR. This should cause the label WaitForARMFeedback to be added.
[2] public repo merge queue, private repo merge queue (for ARM review queue, [1])
If you need further help with anything, see Getting help section below.

Purpose of this PR
What's the purpose of this PR? Check all that apply. This is mandatory!

[x] New API version. (If API spec is not defined in TypeSpec, the PR should have been generated using OpenAPI Hub).
[ ] Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
[ ] Update existing version to fix swagger quality issues in S360.
[ ] Other, please clarify:

edit this with your clarification

Due diligence checklist
To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

[x] I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
[x] I have reviewed following Resource Provider guidelines, including
ARM resource provider contract and
REST guidelines (estimated time: 4 hours).
I understand this is required before I can proceed to the Diagram Step 2, "ARM API changes Review", for this PR.

Additional information

 Viewing API changes
For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures
If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
Swagger-Suppression-Process
to get approval.

Getting help

First, please carefully read through this PR description, from top to bottom. Please fill out the Purpose of this PR and Due diligence checklist.
To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
and https://aka.ms/ci-fix.
If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.

/azp run

@kazrael2119 Regarding the LintDiff check: This api version introduces no schema changes. The "additionalProperties" is already in use in earlier api versions. I cannot stop using the "additionalProperties" now without introducing a major breaking change. What do I need to do in order to resolve this case?

@avjerafi ,could you fix the duplicate schema ErrorContract, in your resource type , it's a manually definition, but in

It references from common-types/v2/commonMonitoringTypes.json#/definitions/ErrorContract

@kazrael2119 I moved to use the ErrorContract from common-types as you requested. Even though I made sure the schema for both types is completely identical, it resulted in an unjustified flagging as breaking change:
https://github.com/Azure/azure-rest-api-specs/pull/27354/checks?check_run_id=20715295975
How can this be suppressed?

@kazrael2119 I moved to use the ErrorContract from common-types as you requested. Even though I made sure the schema for both types is completely identical, it resulted in an unjustified flagging as breaking change: https://github.com/Azure/azure-rest-api-specs/pull/27354/checks?check_run_id=20715295975
How can this be suppressed?

I think you should ask BreaingChangeReviewBoard to get approval

@rkmanda Regarding the LintDiff check: This api version introduces no schema changes. The "additionalProperties" is already in use in earlier api versions. I cannot stop using the "additionalProperties" now without introducing a major breaking change. What do I need to do in order to resolve this case?

@rkmanda Gentle ping on this

@rkmanda I've pushed a suppression for the path of the actionProperties field, but saw that the flagging of the fields which refer to it did not go away, even after I pushed an additional commit to add their paths to the suppression - which I did not think made much sense. Are these just false positives by LintDiff?
When I saw that it did not help I reverted that last commit. The only current suppression is for the actionProperties field itself.

add @JeffreyRichter as a reviewer because the default tag has multi api versions

Azure's policy requires that all the api-versions match uniformly.  So, you can't have some swaggers from one version and some from another. You also cannot have some be release and some be preview. There is no way a customer can rationalize how to use the service in this case. We are working on adding tooling to the repo to automatically catch these violations but we have to do it manually for now.

@kazrael2119 Can you please clarify the current status? How do we resolve the issue of multiple api versions in the default tag? What actions must I take?

@rkmanda The PR is still flagged by Go and JS breaking change tags for weeks after ARM signed off. IIUC, the workflow diagram basically says "wait", but I don't see any reviewer addressing these. Can you please let me know what I must do to expedite the resolution?

@lirenhe @Alancere can somebody please review the Go breaking changes?

/pr RequestMerge


[Feature] Add emojis to test called hardcoded_ip_addresses_in_k8s_runtime_configuration

Problem:

some of the workload tests are missing emojis to represent the test

Solution:

find emojis that would visually represent the test called hardcoded_ip_addresses_in_k8s_runtime_configuration
Goal of test: To test if there are any (non-declarative) hardcoded IP addresses or subnet masks in the K8s runtime configuration
similar test name in #868
Character limits: minimum of 1, maximum of 4
Unicode characters preferred: https://unicode-table.com/en/emoji/

Emoji set examples:
- CNF had a reasonable startup time 🚀
- Replicas increased to 3 📦📈
- Replicas decreased to 1 📦📉
- Image size is good 🐜 ⚖👀
- Application pod is healthy after high CPU consumption 📦💻🐷📈
Ways to help:

[ ]  add a comment for the suggested emojis that you would like to see in this test, and/or
[ ]  fork the code, update the test to add emoji variables, reference this issue in the commit, create a pull request

Part of EPIC:

#334

How will this be tested

run workload tests, installation-and-usage
Result: I would expect to see the new emojis for this test in the test results
there is a recording of this process at https://asciinema.org/a/DUI1XgA45N4OJ8sKZQ2hinCfn

closing issue as stale - can be reopened if prioritized by community


show error when Build v2.0.0 RC2.1 in Hololens 1

Describe the bug
require Windows 10 SDK 10.0.18362.0 ,but this SDK cannot run on Hololens 1( Hololens 1 was updated latest：10.0.17763.0)
A clear and concise description of what the bug is.
To reproduce
Steps to reproduce the behavior:

do not install  Windows 10 SDK 10.0.18362.0
open Build Window

Screenshots

Your Setup (please complete the following information)

Unity Version [2018.4.0f1 LTS]
MRTK Version [v2.0.0 RC2.1]

Target Platform (please complete the following information)

HoloLens

When building for either Hololens1 or Hololens2 you need 10.0.18362.0:
https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/GettingStartedWithTheMRTK.html?q=getting started#recommended-build-settings-uwp

We recommend you set you build settings for "Target SDK Version" and "Minimum Platform Version" to what's shown in the picture below.

Yep, please grab the latest SDK. While there's some work happening that could help with allowing people to stay on an older SDK version, folks should be grabbing the latest and just using that.
If you have some specific reason that you can't move to the latest SDK because of issues you encountered, that would be interesting to know (feel free to reopen with comments on that if that's the case)


Add horizontal scroll

Just add horizontal scroll (on Shift+Mouse wheel) for Scroll Panel control 😀

@nomi-san Thanks for the improvement! :)


chore(release): update release script

:tada: This PR is included in version 1.2.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Create: Modal

Create Modal
Brief description
Modal version of the Create pattern
Details
Pattern
Design Maintainer(s)

Andrew Smith
@andrea-gm

Tasks

[x] Initial review of design/existing code

Working in experimental package

[x] Create a shell component which

[x] Create ComponentName/ComponentName.js component file that renders props
in raw form (no styling or sub components, plain text OK)
[x] Adds prop-types with comments for DocGen to
ComponentName/ComponentName.js
[x] Add Doc file e.g. ComponentName.mdx with a brief description of the
component.

[x] First engineering review/playback

Continuing in experimental package

[x] Storybook - stories to cover design scenarios, story with long, min and
max content, story to demonstrate right-to-left support, etc.
[x] Doc tab in storybook derived from design docs with embedded stories where
appropriate
[x] Code to include prop-types with comments for automated DocGen
documentation
[x] Tests (written in React Test Library) to cover behavior from the
documented in the components mdx file.

New production dependencies

[x] Verify the dependency has previously been
pedigree reviewed
[x] Verify the dependency
doesn't contain any vulnerabilities
[x] Verify the dependency bundle size is
acceptable
[x] Verify the dependency is actively maintained

Review and promote

[x] Design review
[x] Add design review issues addressed, issues raised or discounted.
[x] Engineering review - Submit PR to promote component to production package
[x] All engineering issues addressed, issues raised or discounted.

Review for release
Readiness

[x] One or more scenarios for a design pattern have been identified as a useful unit of functionality to publish.
[x] A functioning component or components delivering those scenarios have been delivered and merged to master.
[x] Design maintainer has approved the implementation for those scenarios (via a comment on the relevant issue/epic).

Engineering review

[x] Breaking changes have only been introduced with prior approval, discussion and documented in release notes. Ideally deprecation notices in the prior major version must have been added in a timely fashion.
[x] The implementation takes into account, and does not impair, remaining and anticipated design scenarios.
[x] Public component features (names, props, etc) are consistent with Carbon-defined conventions and are consistent internally. Where there isn't an existing convention to apply, ensure robust precedents are being established. -- title or titleText. subtitle or subtitleText
[x] The UI produced is accessible, responsive, translatable, cross-browser, and responds to the currently set Carbon theme.
[x] Components are functional components using hooks.
[x] Public components which produce DOM structures support className.
[x] Public components support a ref (via React.forwardRef).
[x] All significant DOM elements have meaningful classes.
[x] Additional attributes that are not identified as props (such as title, aria-*, etc) are passed through to an appropriate DOM node of the component as HTML attributes.
[x] No warnings, errors or log messages in the console.
[x] Each public component JS is exported in /src/components/index.js, each public component SCSS is included in /src/components/_index.scss, and each public component has a flag in package-settings.js.

Standards

[x] No linter warnings or errors are produced.
[x] Carbon tokens (theme, layout, motion) are used unless the design specifies otherwise.
[x] Code is formatted according to prettier rules (no use of //prettier-ignore).
[x] Code is clear, maintainable and follows standard React practices and the code guidelines.
[x] Copyright header in every source file (js, css, scss etc.) with the appropriate years.

Testing

[x] There is a set of test cases for the components.
[x] The tests exercise all inputs (props, slots, etc) and verify appropriate outputs.
[x] The tests validate the behaviors and interactions defined in the design where practical.
[ ] The tests achieve 100% coverage. Usage of istanbul ignore is appropriate and not extensive.-- need one for throwing error
[x] No warnings, errors or log messages in the test output.

Documentation

[x] Source code is satisfactorily commented and provides DocGen comments for all public components and their props.
[x] There is a story for each design scenario. The stories expose all relevant props and actions, and additional usage documentation and code samples are available on the 'Docs' tab along with the props table.
[ ] There is a sandbox (or multiple sandboxes if appropriate) on CodeSandbox for the components.

Closed by #672


Audio UI components

NexusUI provides a lot of great UI components that we could wrap into DOM widgets.

There is also GridSound: https://github.com/gridsound/daw

Let's turn Jupyter into a full-featured DAW :-)

:smile: GridSound is more like a monolith though, I'm not sure it plays well with ipywidgets' layout system for instance. And it looks like it was not written to be used by others.

Yes it will probably be easier to first experiment with NexusUI elements. SoundGrid looks really impressive, though!

react-nexusui will probably be easier to integrate in ipytone?
Some more widgets:

Oscilloscope
react-audio-spectrum

https://github.com/g200kg/webaudio-controls


Google Api Error: multiApkDowngradedDevice

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
I have initially uploaded to Google Play a build with a randomly created high version number in the Alpha Channel. Now, whenever I want to push a new build to Google Play with fastlane, I get the following error:
INFO [2017-12-01 12:58:49.41]: {:PLATFORM_NAME=>nil, :LANE_NAME=>"deploy_googleplay"}
ERROR [2017-12-01 12:58:49.41]: Google Api Error: multiApkDowngradedDevice:

Devices with version 355826070 of this app would be downgraded to version 2194 if they met the following criteria: [(API_LEVEL in range 21-0 AND RELEASE_TRACK containing any of each of [[ALPHA]] AND SCREENS containing any of each of [[small, normal, large, xlarge]] AND NATIVE_PLATFORM containing any of each of [[armeabi-v7a]] AND GL_ES_VERSION in range 131072-0 AND FEATURES containing all of [android.hardware.FAKETOUCH, android.hardware.LOCATION, android.hardware.CAMERA, android.hardware.camera.FLASH, android.hardware.WIFI])].

Nevertheless, I can upload the build manually via Google Play Console. This means I cannot automate the deployment of an Android build.
I even wrote to Google Play Developer Support and asked them to remove the wrong high-value-version-builds, but they cannot do that. This is the response I got from them:

At this time, we do not support the deletion of certain APK due to the regulations of our policy. In this case, I'm afraid I cannot delete the APKs in Alpha track for you.

There are similar issues that (for some unknown reason) were closed, but people are still complaining about it.

Captured Output
Command Used: supply
Output/Log

+-------------------------+-----------------------------------------------------------+
|                              Summary for supply 2.68.0                              |
+-------------------------+-----------------------------------------------------------+
| json_key                | ~/Desktop/Google Play Android Developer.json |
| package_name            | com.dummy.dummy                                      |
| apk                     | artifacts/android/release/com.dummy.dummy-Signed.apk |
| track                   | alpha                                                     |
| skip_upload_metadata    | true                                                      |
| skip_upload_images      | true                                                      |
| skip_upload_screenshots | true                                                      |
| validate_only           | false                                                     |
| check_superseded_tracks | false                                                     |
| skip_upload_apk         | false                                                     |
+-------------------------+-----------------------------------------------------------+

+------+-------------------------------------+-------------+
|                     fastlane summary                     |
+------+-------------------------------------+-------------+
| Step | Action                              | Time (in s) |
+------+-------------------------------------+-------------+
| 1    | Verifying required fastlane version | 0           |
| 💥   | supply                              | 14          |
| 3    | notification                        | 0           |
+------+-------------------------------------+-------------+

Environment

Output/Log
Stack

Key
Value

OS
10.12.6

Ruby
2.0.0

Bundler?
false

Git
git version 2.14.1

Installation Source
/usr/local/bin/fastlane

Host
Mac OS X 10.12.6 (16G1036)

Ruby Lib Dir
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib

OpenSSL Version
OpenSSL 0.9.8zc 19 Mar 2015

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
9.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE

fastlane gems

Gem
Version
Update-Status

fastlane
2.68.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

slack-notifier
1.5.1

CFPropertyList
2.3.5

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.3

xcodeproj
1.5.3

rouge
2.0.7

xcpretty
0.2.8

terminal-notifier
1.8.0

unicode-display_width
1.3.0

terminal-table
1.8.0

plist
3.3.0

public_suffix
2.0.5

addressable
2.5.2

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.6.3

babosa
1.0.2

colored
1.2

highline
1.7.8

commander-fastlane
4.4.5

excon
0.59.0

faraday
0.13.1

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.0

gh_inspector
1.0.3

json
1.7.7

mini_magick
4.5.1

multi_json
1.12.2

multi_xml
0.6.0

rubyzip
1.2.1

security
0.1.3

xcpretty-travis-formatter
0.0.4

dotenv
2.2.1

bundler
1.15.4

faraday_middleware
0.12.2

uber
0.1.0

declarative
0.0.9

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.1

mime-types-data
3.2016.0521

mime-types
3.1

little-plugger
1.1.4

logging
2.2.2

jwt
1.5.6

memoist
0.16.0

os
0.9.6

signet
0.7.3

googleauth
0.5.3

httpclient
2.8.3

google-api-client
0.13.5

Can you post more information what command you are executing, what Fastfile is used, the complete output you are getting with --verbose, please?
I tried to find out more about the error, but it seems to be returned directly from Google's API:
https://github.com/fastlane/fastlane/blob/ce07dd85af5dad2525c9844de59180f90b687d6c/supply/lib/supply/client.rb#L369
This means if there is something fastlane can change, it has to be in the options and parameters used in the API call.

Thank you @janpio for responding. I am not familiar with the Google Play API, but since the apk upload with a higher version is possible via Google Play Console without errors or even warnings, I assume it should be possible via the API.
Is there a proper way to capture the full API call of a Google Play Console action without using network sniffing tools like Fiddler or Wireshark?

... I assume it should be possible via the API.

Assuming is never a good idea with Google APIs ;)

Is there a proper way to capture the full API call of a Google Play Console action without using network sniffing tools like Fiddler or Wireshark?

Good question. client.rb only hands off to the Google API, and for the Google API I couldn't find any (usable) documentation. I would probably try to debug the fastlane code first to see what exactly is handed over to the Google API, then continue to see what is going in there.
But what you could do trivially:

Run your lane with --verbose. Interesting additional output?
Try the lane with validate_only for supply (and --verbose). What happens?

Hi @janpio ! Below is the output for your second request (2). I hope it helps.
$ fastlane deploy_googleplay --verbose

/Library/Ruby/Gems/2.0.0/gems/fastimage-2.1.0/lib/fastimage.rb:67: warning: already initialized constant URI::DEFAULT_PARSER
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/uri/common.rb:545: warning: previous definition of DEFAULT_PARSER was here
[21:42:59]: Get started using a Gemfile for fastlane https://docs.fastlane.tools/getting-started/ios/setup/#use-a-gemfile
DEBUG [2017-12-04 21:43:01.58]: Checking if there are any plugins that should be loaded...
WARN [2017-12-04 21:43:01.85]: You require a gem, if this is a third party gem, please use `fastlane_require 'time'` to ensure the gem is installed locally
WARN [2017-12-04 21:43:01.85]: You require a gem, if this is a third party gem, please use `fastlane_require 'commander'` to ensure the gem is installed locally
WARN [2017-12-04 21:43:01.85]: You require a gem, if this is a third party gem, please use `fastlane_require 'pathname'` to ensure the gem is installed locally
INFO [2017-12-04 21:43:01.88]: -------------------------------------------------
INFO [2017-12-04 21:43:01.88]: --- Step: Verifying required fastlane version ---
INFO [2017-12-04 21:43:01.88]: -------------------------------------------------
INFO [2017-12-04 21:43:01.88]: Your fastlane version 2.68.0 matches the minimum requirement of 2.63.0  ✅
INFO [2017-12-04 21:43:01.88]: Driving the lane 'deploy_googleplay' 🚀
INFO [2017-12-04 21:43:01.91]: --------------------
INFO [2017-12-04 21:43:01.91]: --- Step: supply ---
INFO [2017-12-04 21:43:01.91]: --------------------

+-------------------------+-----------------------------------------------------------+
|                              Summary for supply 2.68.0                              |
+-------------------------+-----------------------------------------------------------+
| json_key                | ~/Desktop/Google Play Android Developer-75eb1bfea184.json |
| package_name            | com.xxx.yyy                                      |
| apk                     | artifacts/android/release/com.xxx.yyy-Signed.apk |
| track                   | alpha                                                     |
| skip_upload_metadata    | true                                                      |
| skip_upload_images      | true                                                      |
| skip_upload_screenshots | true                                                      |
| validate_only           | true                                                      |
| check_superseded_tracks | false                                                     |
| skip_upload_apk         | false                                                     |
+-------------------------+-----------------------------------------------------------+

DEBUG [2017-12-04 21:43:02.50]: Fetching a new access token from Google...
INFO [2017-12-04 21:43:04.75]: Preparing apk at path 'artifacts/android/release/com.xxx.yyy-Signed.apk' for upload...
INFO [2017-12-04 21:43:15.40]: Updating track 'alpha'...
INFO [2017-12-04 21:43:15.68]: Validating all changes with Google Play...
INFO [2017-12-04 21:43:16.62]:
(╯°□°）╯︵ ┻━┻

INFO [2017-12-04 21:43:16.64]: --------------------------
INFO [2017-12-04 21:43:16.64]: --- Step: notification ---
INFO [2017-12-04 21:43:16.64]: --------------------------
WARN [2017-12-04 21:43:16.85]: Lane Context:
INFO [2017-12-04 21:43:16.85]: {:PLATFORM_NAME=>nil, :LANE_NAME=>"deploy_googleplay"}
ERROR [2017-12-04 21:43:16.85]: Google Api Error: multiApkDowngradedDevice: Devices with version 355826070 of this app would be downgraded to version 2196 if they met the following criteria: [(API_LEVEL in range 21-0 AND RELEASE_TRACK containing any of each of [[ALPHA]] AND SCREENS containing any of each of [[small, normal, large, xlarge]] AND NATIVE_PLATFORM containing any of each of [[armeabi-v7a]] AND GL_ES_VERSION in range 131072-0 AND FEATURES containing all of [android.hardware.FAKETOUCH, android.hardware.LOCATION, android.hardware.CAMERA, android.hardware.camera.FLASH, android.hardware.WIFI])].
INFO [2017-12-04 21:43:16.88]: Successfully generated documentation at path '/xxx/yyy/fastlane/README.md'

+------+-------------------------------------+-------------+
|                     fastlane summary                     |
+------+-------------------------------------+-------------+
| Step | Action                              | Time (in s) |
+------+-------------------------------------+-------------+
| 1    | Verifying required fastlane version | 0           |
| 💥   | supply                              | 14          |
| 3    | notification                        | 0           |
+------+-------------------------------------+-------------+

ERROR [2017-12-04 21:43:16.89]: fastlane finished with errors

#######################################################################
# fastlane 2.68.1 is available.
# You should use the latest version.
# Please update using `sudo gem install fastlane`.
#######################################################################

2.68.1 Improvements
* [Spaceship] Ability to use existing IAP screenshots (#10903) via Kevin Cornbower

* Update "you can do this" label search URL (#11102) via James Sherlock

* Revert changes to signingStyle, fixes #11073 (#11100) via Manu Wallner

* [docs] link to CONTRIBUTING from YourFirstPR (#11103) via Jan Piotrowski

* [appium] Support appium android (#11063) via Yusuke Hosonuma

* Update the anchor in Circle.md (#11075) via Alexey

Please update using `sudo gem install fastlane`
/Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane_core/lib/fastlane_core/ui/interface.rb:131:in `user_error!': [!] Google Api Error: multiApkDowngradedDevice: Devices with version 355826070 of this app would be downgraded to version 2196 if they met the following criteria: [(API_LEVEL in range 21-0 AND RELEASE_TRACK containing any of each of [[ALPHA]] AND SCREENS containing any of each of [[small, normal, large, xlarge]] AND NATIVE_PLATFORM containing any of each of [[armeabi-v7a]] AND GL_ES_VERSION in range 131072-0 AND FEATURES containing all of [android.hardware.FAKETOUCH, android.hardware.LOCATION, android.hardware.CAMERA, android.hardware.camera.FLASH, android.hardware.WIFI])]. (FastlaneCore::Interface::FastlaneError)
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane_core/lib/fastlane_core/ui/ui.rb:14:in `method_missing'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/supply/lib/supply/client.rb:369:in `rescue in call_google_api'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/supply/lib/supply/client.rb:367:in `call_google_api'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/supply/lib/supply/client.rb:111:in `validate_current_edit!'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/supply/lib/supply/uploader.rb:32:in `perform_upload'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/actions/upload_to_play_store.rb:21:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:253:in `block (2 levels) in execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/actions/actions_helper.rb:50:in `execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:231:in `block in execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:227:in `chdir'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:227:in `execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:148:in `trigger_action_by_name'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/fast_file.rb:146:in `method_missing'
	from Fastfile:165:in `block in parsing_binding'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/lane.rb:33:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/lane.rb:33:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:49:in `block in execute'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:45:in `chdir'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/runner.rb:45:in `execute'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/lane_manager.rb:54:in `cruise_lane'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/command_line_handler.rb:30:in `handle'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/commands_generator.rb:104:in `block (2 levels) in run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:153:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-fastlane-4.4.5/lib/commander/runner.rb:476:in `run_active_command'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:66:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/commander-fastlane-4.4.5/lib/commander/delegates.rb:15:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/commands_generator.rb:304:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/commands_generator.rb:42:in `start'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/fastlane/lib/fastlane/cli_tools_distributor.rb:75:in `take_off'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-2.68.0/bin/fastlane:20:in `<top (required)>'
	from /usr/local/bin/fastlane:23:in `load'
	from /usr/local/bin/fastlane:23:in `<main>'

Hm, so again:
INFO [2017-12-04 21:43:15.68]: Validating all changes with Google Play...
INFO [2017-12-04 21:43:16.62]:
(╯°□°）╯︵ ┻━┻
...
ERROR [2017-12-04 21:43:16.85]: Google Api Error: multiApkDowngradedDevice: Devices with version 355826070 of this app would be downgraded to version 2196 if they met the following criteria: [(API_LEVEL in range 21-0 AND RELEASE_TRACK containing any of each of [[ALPHA]] AND SCREENS containing any of each of [[small, normal, large, xlarge]] AND NATIVE_PLATFORM containing any of each of [[armeabi-v7a]] AND GL_ES_VERSION in range 131072-0 AND FEATURES containing all of [android.hardware.FAKETOUCH, android.hardware.LOCATION, android.hardware.CAMERA, android.hardware.camera.FLASH, android.hardware.WIFI])].

Lets try to reformat that error message:
[(
 API_LEVEL in range 21-0
 AND RELEASE_TRACK containing any of each of [[ALPHA]]
 AND SCREENS containing any of each of [[small, normal, large, xlarge]]
 AND NATIVE_PLATFORM containing any of each of [[armeabi-v7a]]
 AND GL_ES_VERSION in range 131072-0
 AND FEATURES containing all of [android.hardware.FAKETOUCH, android.hardware.LOCATION, android.hardware.CAMERA, android.hardware.camera.FLASH, android.hardware.WIFI]
)]

which indeed does make sense if you uploaded something before in the alpha lane.

Nevertheless, I can upload the build manually via Google Play Console.

Where and how exactly are you uploading the build in Google Play Console?
Where and how does it appear afterwards?

Hi again, @janpio!
Below are the steps to uploading the build on Google Play Console:

Sign in to Google Play Console.
In "All applications" are, select my application.
In the left menu, select "Release management".
From the sub-menu, select "App releases".
Select "MANAGE ALPHA" from the main area.
Select "CREATE RELEASE" in the right-upper corner.
In the "APKs to add" area, select "BROWSE FILES" and navigate to my signed apk file.
Add some content to "What's new in this release?" area.
Press "REVIEW" at the end of the form.
Press "Start rollout".

By following these steps, I can successfully upload and publish a new build in the Alpha channel.

That means, in the web UI you can upload an app to the alpha lane with Version code 2194 although you had an app with Version code 131072 before? Does this show in the Artifact library as well?
I get an error message on rollout if I try to do something like that (version code 3 is currently published on alpha lane, was trying to create a new release with verison code 1 apk):

As expected and what the API would return via an error message as above I think.

I have been doing this since September. See images below:
VersionCode: 355826070
PublishDate: Sept 19, 2017

VersionCode: 20
PublishDate: Sept 26, 2017

Ok, but this adds another dimension:
The version name is different.
I will have to test that separately.
Any other idea why Google Play web UI could not have a problem with that higher version code in your case?

Nope!
I am using exactly the same apk file built with a Cake script and I am using the MSBuild command to build it. That's the weird thing about it. I have no idea why the web UI accepts the build.
Is there a way to specify with supply the Version Name of an app? I thought this was embedded in the apk. Oder?

Yes it is. I was just testing with two APKs that both have the same version name, so I have to see if that makes a difference now.

Any new discoveries?

Not working on this right now. Still have the tab open, so when I have some time I will take a look.

If you want to disable these releases you may consider including check_superseded_tracks: false with your supply command

@theill I have the same error with check_superseded_tracks: true.
I have a beta version app with 1.1.0 (versionName) and 3 (versionCode) already published. I want to publish a new beta version app with 1.2.0 (versionName) and 1 (versionCode). The error is:
/Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane_core/lib/fastlane_core/ui/interface.rb:131:in user_error!': [!] Google Api Error: multiApkDowngradedDevice: Devices with version 3 of this app would be downgraded to version 1 if they met the following criteria: [(API_LEVEL in range 16-0 AND RELEASE_TRACK containing any of each of [[BETA]] AND SCREENS containing any of each of [[small, normal, large, xlarge]] AND NATIVE_PLATFORM containing any of each of [[armeabi-v7a]] AND FEATURES containing all of [android.hardware.screen.portrait, android.hardware.wifi, android.hardware.faketouch])]. (FastlaneCore::Interface::FastlaneError) 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane_core/lib/fastlane_core/ui/ui.rb:14:in method_missing'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/supply/lib/supply/client.rb:369:in rescue in call_google_api' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/supply/lib/supply/client.rb:367:in call_google_api'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/supply/lib/supply/client.rb:118:in commit_current_edit!' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/supply/lib/supply/uploader.rb:36:in perform_upload'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/actions/upload_to_play_store.rb:21:in run' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:253:in block (2 levels) in execute_action'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/actions/actions_helper.rb:50:in execute_action' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:231:in block in execute_action'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:227:in chdir' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:227:in execute_action'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:148:in trigger_action_by_name' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/fast_file.rb:146:in method_missing'
from Fastfile:22:in block (2 levels) in parsing_binding' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/lane.rb:33:in call'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/lane.rb:33:in call' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:49:in block in execute'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:45:in chdir' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/runner.rb:45:in execute'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/lane_manager.rb:54:in cruise_lane' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/command_line_handler.rb:30:in handle'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/commands_generator.rb:104:in block (2 levels) in run' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in call'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in call' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:153:in run'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/runner.rb:476:in run_active_command' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:66:in run!'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/delegates.rb:15:in run!' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/commands_generator.rb:304:in run'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/commands_generator.rb:42:in start' 	from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/fastlane/lib/fastlane/cli_tools_distributor.rb:75:in take_off'
from /Users/vobadm/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.68.1/bin/fastlane:20:in <top (required)>' 	from /Users/vobadm/.fastlane/bin/bundle/bin/fastlane:22:in load'
from /Users/vobadm/.fastlane/bin/bundle/bin/fastlane:22:in `'

@luigifilannino You are not allowed to do that. You will always need to have a HIGHER versionCode within same track (e.g. if you upload a build in beta track, any update to the beta track will need to have a higher versionCode). The flag works if you are using different tracks e.g. if you have set a versionCode in an beta track which is higher than the production track.
In your case the versionCode needs to be at least 4.

Thank you @theill  :)

This is a duplicate of #9363. Closing this one to keep everything in one 😊 But also going to link to keep everything in the first issue created


New rendering and forwarding

This PR implements the following tickets:
198033 - Forward file to another room (Defect)
199728 - View and play media files
199589 - Review media files and tags
199832 - Take photo and tag a patient
197647 - Tag patient and share media
199585 - View list of media files
199736 - Gallery of media files
198035 - Prevent removing of tagged files
199863 - Prevent removing of tagged files
The branch is based upon act-master.
This branch will build on Xcode 12 / iOS 14.
Pull Request Checklist

[x] I read the contributing guide
[x] UI change has been tested on both light and dark themes, in portrait and landscape orientations and on iPhone and iPad simulators
-Noting there is no change currently in the display behaviour between those two settings as per requirement.
[x] Pull request is based upon act-master from the Pegacorn repo.
[x] All new and existing unit tests pass successfully in this branch.

Can you please resolve the branch conflicts.

Can you please resolve the branch conflicts.


feat: add SwiftLinter

Project URL
https://github.com/muyexi/SwiftLinter
Category
Linter
Description
Add SwiftLinter to "Linter" category
Why it should be included to awesome-ios (mandatory)
Checklist

[x] Only one project/change is in this pull request
[] Has unit tests, integration tests or UI tests
[x] Addition in chronological order (bottom of category)
[x] Supports iOS 9 / tvOS 10 or later
[x] Supports Swift 4 or later
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

          1 Warning

:warning:
Found 2 link issues, a project collaborator will take care of these, thanks :)

Link issues by awesome_bot

Line
Status
Link

206
403
https://www.udemy.com/arkit-beginner-to-professional/?couponCode=CREATORS

1498
301
https://github.com/mobilefirstinc/MFCard redirects tohttps://github.com/RC7770/MFCard

  Generated by :no_entry_sign: Danger

@muyexi I'm sorry. I didn't understand how this projects is different to the swift lint

The script in the pod only checks modified files in your git repo.
The same SwiftLint config file is shared between projects, it's easier to manage.

Thanks @muyexi .


Why the class can't be recognized when i try to add a picker cell with two component?

I add a new swift file like 'FormPickerCell' named 'FormTwoComponentPickerCell'. I want to use picker with two components.
I extend FormRowType also as follows
enum FormRowType {
...
case Picker
case TwoComponentPicker
...
}
When i add this new class to FormViewController in function defaultCellClassForRowType like
Static.defaultCellClasses[FormRowType.TwoComponentPicker] = FormTwoComponentPickerCell.self
Xcode says 'Use of unresolved identifier 'FormTwoComponentPickerCell''.
By the way, the new class added just the same as FormPickerCell except class name.
Could any one give me a hit? thanks.

I found the root cause. When add new file to project, target member ship should select both 'SwiftForms' and 'SwiftFormsTests'


Wrapping of really long lines

Version and Platform (required):

Binary Ninja Version: 4.1.5458-dev,  6421303
OS: macos
OS Version: 14.5
CPU Architecture: arm64

Internal binary major dine favor.
DjiCore_Init...
This would be much more readable if each condition was on a separate line
00066558                                                          if ((baseInfo.aircraftType != DJI_AIRCRAFT_TYPE_M300_RTK && baseInfo.aircraftType != DJI_AIRCRAFT_TYPE_M350_RTK) || ((baseInfo.aircraftType == DJI_AIRCRAFT_TYPE_M300_RTK || baseInfo.aircraftType == DJI_AIRCRAFT_TYPE_M350_RTK) && baseInfo.djiAdapterType != DJI_SDK_ADAPTER_TYPE_SKYPORT_V2 && baseInfo.djiAdapterType != DJI_SDK_ADAPTER_TYPE_XPORT) || ((baseInfo.aircraftType == DJI_AIRCRAFT_TYPE_M300_RTK || baseInfo.aircraftType == DJI_AIRCRAFT_TYPE_M350_RTK) && (baseInfo.djiAdapterType == DJI_SDK_ADAPTER_TYPE_SKYPORT_V2 || baseInfo.djiAdapterType == DJI_SDK_ADAPTER_TYPE_XPORT) && err_10 == 0))
00066614                                                              int64_t err_11

Duplicate of https://github.com/Vector35/binaryninja-api/issues/3289


KCL language server high CPU usage

Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)

2. What did you expect to see? (Required)
3. What did you see instead (Required)

4. What is your KusionStack components version? (Required)

There may be an endless loop trap of lexical syntax error recovery, which causes the CPU to be temporarily high.


Update UIData_DE.json

Fixed some translations which apparently came from a translator. Added some Infos where needed.

Thank you!
Could you please check the script also: https://github.com/farag2/Sophia-Script-for-Windows?


Require submit button to update collection membership

In the connection editor, the current behavior is to immediately toggle the connection's membership in the collection when the check box is toggled. For consistency, this action should not be applied until the user presses the submit button.

The javascript https://github.com/redmatrix/redmatrix/blob/master/view/js/main.js#L1038 calls https://github.com/redmatrix/redmatrix/blob/master/mod/contactgroup.php
directly. Perhaps this should go in another collapsible settings panel like the permissions settings in https://github.com/redmatrix/redmatrix/blob/master/view/tpl/abook_edit.tpl?

Alternatively, when clicked, the checkbox could be replaced by an animated "busy" icon like the radial spinner that displays while posts are loading, and then when the action completes it is replaced by the toggled checkbox..

@anaqreon This issue is closed because Redmatrix evolved into Hubzilla. When this is still an issue in the most recent version of Hubzilla, please recreate this issue over there. We're sorry for any inconvenience this will maybe give you.


Deploy modelmesh and modelmesh monitoring stack

JIRA: https://issues.redhat.com/browse/RHODS-5242, https://issues.redhat.com/browse/RHODS-5243
Related PRs:

https://github.com/red-hat-data-services/opendatahub-operator/pull/159
https://github.com/red-hat-data-services/odh-manifests/pull/246
https://gitlab.cee.redhat.com/data-hub/rhods-live-builder/-/merge_requests/58

Live build: quay.io/anishasthana/rhods-operator-live-catalog:1.20.2-5242
Steps to test:

./setup.sh quay.io/anishasthana/rhods-operator-live-catalog:1.20.2-5242
Wait for the modelmesh monitoring stack pods to come up
Clone https://github.com/opendatahub-io/modelmesh-serving/tree/main/quickstart.
Comment out lines 32 and 33.
./quickstart.sh. Wait for the script to finish runnning
Set up port forwarding for the new monitoring pod: oc port-forward prometheus-rhods-model-monitoring-0 9090
Connect to localhost:9090 on your browser. You will see the new target

tested on a cluster and changes work as expected

Monitoring pods come up
Target comes up in Prometheus
Metrics come up

@jgarciao  FYI...

Placing this on hold for now. We have an alternative avenue to investigate.

/hold

/unhold

@jgarciao @lugi0 this pr is ready for review.

This PR include changes from #272. We can close that PR out.
Live build: quay.io/anishasthana/rhods-operator-live-catalog:1.21.1-5242

/lgtm

/lgtm

/approve

/approve

/approve

/approve

We've verified that the backend is working as expected. @lucferbux will be following up shortly with a Pull Request for front end changes. It'll help keep the changeset small -- the PR is already huge as is.


GEODE-9043: A register interest attempt from a newer client to an older server throws a NoSubscriptionServersAvailableException instead of a ServerRefusedConnectionException

Throw ServerRefusedConnectionException instead of NoSubscriptionServersAvailableException if a newer client attempts to register interest on an incompatible older server.
(cherry picked from commit 0abd7667b324da3a88fa341675b68f08118c83cb)

@sabbey37 restarting the stress tests

@sabbey37 restarting the stress tests

Thanks, @nabarunnag!

@onichols-pivotal, looks like you have added @albertogpz as a reviewer for this backport. Should I wait for the review? This has already been approved and merged into develop. Looks like @albertogpz was also added as a reviewer to #6151 after to was merged into develop.


How to turn "RBRACE", "__ANON_n" into "{"?

I want to get the value of the terminal from UnexpectedInput errors.

I think you mean UnexpectedToken. Did you try e.token.value?

if isinstance(err, UnexpectedCharacters):
    expected = ", ".join(err.allowed)
    return Diagnostic(
        range,
        f"Expected one of: {expected}",
        DiagnosticSeverity.Error,
        "UnexpectedCharacters",
    )

err.allowed is Set[str]
I want to get the string which was defined in the grammar file from this list.

Did you try lark_instance.terminals ?


1.24 breaks Windows build - field renaming

Wanted to first say that I'm not sure what the intended support level for Windows is, but I've been running into issues trying to get the 1.24 release to build. It seems that definition of interface expands to the keyword struct, and so this commit leads to all sorts of errors because the syntax gets thrown off. I'm not yet able to tell if this is the only issue.
Example failure here.
I'm happy to dig into this further if it would be helpful (Visual Studio leads me to believe the definition comes from combaseapi.h, not sure if it's actually needed).

To answer the support level for Windows.... the Windows version of the C native driver is experimental.
I do believe, though, that the main cause may be the removal of "key" from the names. You are absolutely correct that interface is usually a macro and possibly colliding.

I've pushed 4e6d5bb071f1403cf879b1aa52d5a55d4d2ae43b that should avoid the name conflict. It builds, but uri_test fails.


Add support for Kafka 1.1.0

Similarly to https://github.com/linkedin/Burrow/pull/297 and https://github.com/linkedin/Burrow/pull/306, add support for Kafka 1.1.0.

Apologies for an early ping, I submitted this PR before realizing that I need to cut Sarama release first to include https://github.com/Shopify/sarama/pull/1073.

Coverage decreased (-0.04%) to 73.985% when pulling bc36695b1b0d6c7dcadc8084db351ccc4209123f on bai:sarama-kafka-110 into fecab1ea88779cdecedd382c1ed0f6c5a7ff5e0f on linkedin:master.


Mitigate CPU spikes when sending lots of events with lots of data

Increasing the HTTP pool size to better handle the requests. Also not reading the response saves some CPU cycles because TLS stuff uses CPU.
This does not fix all CPU spikes, but instead of spikes happening every 1 in 3-4 times it only happens 1 in 7-8 times with my test script.
FIxes #2384

cc @untitaker for a quick sanity check if you see problems with changing this stuff

I think you want drain_conn instead of release_conn. If I understood the documentation correctly, you are putting a TCP connection back into the pool while the response body still has to be read.
I would guess that if you start sending new requests into that connection, the server may choose to terminate the connection because from their POV you're misbehaving. Even if that happens, urllib3 may transparently recover from that scenario by creating a new connection, but I am not sure. You'd have to test what actually happens. I suggest spinning up a http server locally and looking at wireshark (open it, look at loopback device lo0 and apply "http" filter)
I don't exactly understand what preload_conn does, but from what I can tell the original True value would've prevented this issue because it just behaves like "draining".
This assumes http1, i have no idea what happens with http2. I also just barely skimmed over the urllib3 docs for this, I have never heard of those specific parameters before, so take it with a grain of salt.

Looking at wireshark was a good idea @untitaker. When I set preload_content/release_conn for every HTTP post a new TCP connection is established. This not what we want.
I will just revert the preload_content stuff and make the pool size configurable. Let's see if this helps.


New Issue test

Includes

Color-coded labels to categorize the issue type such as:

bug
feature request
question

A milestone with due date
An assignee indicating who is fixing or managing the issue

Only repository owners and others with permissions may close "open issues".