update code to allow using multiple nodes / contracts

update code to allow using multiple nodes / contracts

DO NOT MERGE

@webelf101 I'm going to need the latest ABI from the vyper contract for my code to work.


MathJax anti-aliasing broken when exporting a diagram from the CLI

Preflight Checklist

[x] I agree to follow the Code of Conduct that this project adheres to.
[x] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

Describe the bug
When exporting a diagram in either PNG or SVG formats using the drawio CLI, the exported file does not have anti-aliasing on embedded math typesetting and is not just ugly, but literally unreadable in many cases. However, when exporting from the desktop app, the anti-aliasing looks fine.
I have attached a simple file illustrating the problem.
To Reproduce

Unzip this example diagram: mathjax_antialiasing.zip

cd to the location of the file

Convert attached file to SVG format using the command drawio -x -f svg mathjax_antialiasing.drawio

Open mathjax_antialiasing.svg in any browser

Expected behavior
I expect the exported SVG to look the same as when I manually export it from the GUI.
Screenshots
Expected MathJax appearance:

Actual appearance when exporting via CLI:

Note the image size is also different, but I'll let you guys file a bug for that one...
draw.io version:

15.2.7

Desktop (please complete the following information):

OS: Ubuntu 18.04
Opened the SVG file on Chrome 93 on Ubuntu, as well as both Chrome and Firefox on Windows. Looks perfectly hideous in all of the above.

Additional context
This is clearly caused by the shape-rendering: crispEdges styling included here: https://github.com/jgraph/drawio/blob/dev/src/main/webapp/export3.html#L8
It looks like before this was changed in version 13.4.2, this styling only applied to print media. I don't know what the use for it is there but crispEdges is definitely not what you want in an SVG file.

Why was this issue closed? It doesn't look like any fix has been implemented.

Nobody wanted to look, but we can leave it open and nobody look if you prefer :)

Ok thanks, when I have time I will test on a few more platforms and make a PR myself. I use LaTeX extensively in my diagrams so this bug is a real bummer.

This will be fixed in the next release.


Create a deploy script for protocol

Problems
We have deploy scripts written in typescript + forge create but its just for individual smart contract. It is needed for us to have a script which will deploy everything to a target network in one command and configure everything needed.
Protocol deployment script can be like the followings
yarn workspace @ubiquity/contracts run deploy:development
yarn workspace @ubiquity/contracts run deploy:staging
yarn workspace @ubiquity/contracts run deploy:production
Once the deploy script runs successfully, UI should be connected to the deployed addresses automatically and working properly.
NOTE: In case we deploy contracts to a local chain, we need to also deploy faucet contracts as well

Perhaps it make sense to make a modular deployment architecture, where we have master controllers (developmentDeploymentController, stagingDeploymentController, productionDeploymentController) and then we build individual deploy scripts per smart contract that can handle each (development, staging, production) environment?

You should also leave a time label on this so we can set a starting price.

For the Staking Contact in the devlopment environment, what should be used for the migrating accounts when deploying?

For the Staking Contact in the devlopment environment, what should be used for the migrating accounts when deploying?

I believe we have hard coded parameters in the old deploy scripts c @zgorizzo69 please advise

I could use those, no issue.

ERC20 Address 0x7fe65D99a0998Cdba8e1f749303a467dcf87e815

ERC20 Address 0x7fe65D99a0998Cdba8e1f749303a467dcf87e815

Before sending this I would love to verify that things are working as expected. Can you guide me to set up a local deployment with the updated contracts so that I can continue refactoring the UI with the new contract/method names?
@hashedMae

There's default values in the .env.example you can use for the .env. Providing your own RPC_URL is most effective but the script will use one from the random list if left empty. In a terminal, run yarn workspace @ubiquity/contracts anvil to start the local chain. If RPC_URL is left empty it may fail, run the command again to use a different RPC from the list. Once Anvil is running open a new terminal and run yarn workspace @ubiquity/contracts deploy:development. If successful it'll display the addresses to which the contracts have been deployed. It'll create a JSON with the contract addresses at packages/contracts/deployments/{ScriptContract}/{ChainID}/run-latest.json.

It is not clear to me how we can run this script without the private key of the admin wallet? I passed in a newly generated private key and it throws
    ├─ [2651] UbiquityDollarManager::setTreasuryAddress(0xefB1F2c5093e3D2f1C81B7d7A21c30831D10D6b2)
    │   └─ ← "MGR: Caller is not admin"
    └─ ← "MGR: Caller is not admin"

Currently trying to figure out how to top up the deployer wallet with Ether using cast on the anvil fork.

Init f64dc4c
Currently trying to figure out how to top up the deployer wallet with Ether using cast on the anvil fork. It does not have any ether so I can't simulate the deployment.

The MNEMONIC in .env is so Anvil tops it up with Ether when it starts up.

Update #537
Made some changes to use the keys that are automatically topped up when you start Anvil. I have a new problem that I don't know how to debug:
Traces:
  [39718534] → new DevelopmentDeploy@0x5b73C5498c1E3b4dbA84de0F1833c4a029d90519
    ├─ [0] VM::envAddress(PUBLIC_KEY)
    │   └─ ← <env var value>
    ├─ [0] VM::envUint(PRIVATE_KEY)
    │   └─ ← <env var value>
    └─ ← 185079 bytes of code

  [2700738] DevelopmentDeploy::run()
    ├─ [0] VM::startBroadcast(<pk>)
    │   └─ ← ()
    ├─ [2556208] → new UbiquityDollarManager@0xD12a2EA2244c1c9Eb82ec17cBAc85f740BCb9a3a
    │   ├─ emit RoleGranted(role: 0x0000000000000000000000000000000000000000000000000000000000000000, account: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D, sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   ├─ emit RoleGranted(role: 0xb82d33f41b1a8468b0a3355568595a8da603c64dc1244f7eb97e3e56cfccbe18, account: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D, sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   ├─ emit RoleGranted(role: 0x65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a, account: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D, sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   ├─ emit RoleGranted(role: 0x25ff7e1779512d1a833158ec96d239645270c9fdbedc91aad895443d07d0260b, account: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D, sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   ├─ emit RoleGranted(role: 0xa6b5d83d32632203555cb9b2c2f68a8d94da48cadd9266ac0d17babedb52ea5b, account: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D, sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   ├─ emit RoleGranted(role: 0xaf1a415cb2281de448f1771a3c8144f554e6e38bb3bc1acc8218c01a5d75721d, account: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D, sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   ├─ emit RoleGranted(role: 0x921f663981c1beb7a484a4210df2eefbe89bb6e3752c925fca7a933a759dbecb, account: UbiquityDollarManager: [0xD12a2EA2244c1c9Eb82ec17cBAc85f740BCb9a3a], sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   └─ ← 11907 bytes of code
    ├─ [22686] UbiquityDollarManager::setTreasuryAddress(0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   └─ ← ()
    ├─ [275] UbiquityDollarManager::GOVERNANCE_TOKEN_MANAGER_ROLE() [staticcall]
    │   └─ ← 0x921f663981c1beb7a484a4210df2eefbe89bb6e3752c925fca7a933a759dbecb
    ├─ [27434] UbiquityDollarManager::grantRole(0x921f663981c1beb7a484a4210df2eefbe89bb6e3752c925fca7a933a759dbecb, 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   ├─ emit RoleGranted(role: 0x921f663981c1beb7a484a4210df2eefbe89bb6e3752c925fca7a933a759dbecb, account: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D, sender: 0x983b5360791547C80183Fb2c4Ec5E286AbD3767D)
    │   └─ ← ()
    ├─ [2508] 0x6c3F90f043a72FA612cbac8115EE7e52BDe6E490::transfer(UbiquityDollarManager: [0xD12a2EA2244c1c9Eb82ec17cBAc85f740BCb9a3a],<PHONE_NUMBER>0000000000000)
    │   └─ ← "EvmError: Revert"
    └─ ← "EvmError: Revert"

Error:
Script failed.

This is the 3CRV token transfer failing. Did you set the PRIVATE_KEY and ADMIN_ADDRESS in .env?

In my PR I renamed ADMIN_ADDRESS to PUBLIC_KEY and yes I have both set. Technically its set in my .bashrc but I can access with an echo. I'll manually set some values in the .env but it shouldn't make a difference.

No dice.

@rndquu can you get this to work

ERC20 Address 0x7fe65D99a0998Cdba8e1f749303a467dcf87e815

https://etherscan.io/tx/0x1ab7a04ed7fea4f06d5e9003762c9fd44988bb425b161af9b5fe7d4ce476b5df

Thanks for walking me through this on my PR https://github.com/ubiquity/ubiquity-dollar/pull/554. I copied your .env file and just a couple of clarifications please:
Is there any special significance for the values you had filled in for the following?

PRIVATE_KEY
PUBLIC_KEY
MNEMONIC

MNEMONIC is used to fund the account(s) that will be used on Anvil. PUBLIC_KEY is used when manipulating token balances to create the curve pool. PRIVATE_KEY is required to broadcast to Anvil and launch the contracts.


Update README.md

Type of Change

[ ] Bugfix
[ ] New feature
[ ] Enhancement
[ ] Refactoring
[ ] Dependency updates
[ ] Documentation
[ ] CI/CD

Description

Additional Changes

[ ] This PR modifies the API contract
[ ] This PR modifies the database schema
[ ] This PR modifies application configuration/environment variables

Motivation and Context

How did you test it?

Checklist

[ ] I formatted the code cargo +nightly fmt --all
[ ] I addressed lints thrown by cargo clippy
[ ] I reviewed the submitted code
[ ] I added unit tests for my changes where possible

Closing this as spam, please avoid such low-effort pull requests.


Documentation setup, code quality tooling, updated CI/CD, and other changes

This PR implements the following:

Migrate to pre-commit to manage code quality (install pre-commit.ci on the repo so that code quality tooling it automatically run and fixes are pushed)
Replace Black and other tools with Ruff (no regression here - same things are being checked, its just consolidated into a single faster tool that is widely used)

Enable pyupgrade and some other rules

Add contributing document
Update dev environment to use conda
Update CI

now with testing matrix for different versions of Python
with Codecov support

Add publish to PyPI automated workflows (not yet tested)
Add documentation

Uses Sphinx with the Furo theme
With readthedocs support
With nbsphinx support (for converting tutorial notebooks to pages in the website).
With api doc generation

Add dependabot to keep github actions versions updated
Add version information to package (so virtualship.__version__ exists as a variable)
Drop support for Python 3.8/3.9 in metadata
Install click and create boilerplate for CLI tool

CLI is now used by doing virtualship run virtualship fetch and virtualship init (rather than just doing do_expedition). Cleans up the namespace

Migrate to a src layout

This was needed as the cli tool and the package have the same name, and in bash virtualship defaulted to cd'ing into that folder

Update README

Contributes to #64

A bit of a hiccup in that a dependency that we use for a test (seabird) uses a deprecated standard lib package. I'll look at contributing upstream so that they can add support for Python 3.12 and 3.13

readthedocs will only be configured once we merge into main (since it will look at the default branch for the conf)

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:

Pypi is done! https://pypi.org/project/virtualship/
Conda is a WIP https://github.com/conda-forge/staged-recipes/pull/27759
This PR is good to go ⛴. Waiting on green ✅

Ahhh, I need an approving review to merge. I guess that's a good thing :')

Getting a really strange error when testing on linux... Not sure how to debug this, and all my Google searches come up empty. Only idea I have is to try micromamba


Minor Improvements:

Use  'final' modifier
Change String to StringBuilder
Use StringBuilder append
Manual array copy
Use empty array

@arturobernalg
Please rebase on master to pick up the latest POM to get a green build on Java 17.

@arturobernalg
Please rebase on master to pick up the latest POM to get a green build on Java 17.

Hi @garydgregory
Done
TY


Hide items until a certain number of characters are entered into search

Describe the feature you'd like
Firstly thank you for the excellent widget, we use it throughout our app.
Our use case is to add a user to a project. There is a list of all users who have signed up to the app that they can select from, however from a privacy perspective we do not want the user to be able to see all users. The list of users should be hidden and only show up when the user has entered a number of characters into the search field (lets say 3). It feels like there should be a simple way to add this functionality, for example with a new itemVisibility option (for example ShowedItemsVisibility.onEntered(3)).
Describe alternatives you've considered
I have tried working with onSearchChanged using the new multipleSearchController, and considered editing the text entered into SearchField, but I feel like I am fighting with the existing code and can't seem to find a simple solution. Perhaps I am overlooking something?
Thanks again!

Hello @mdavo6 and thanks for taking the time to fill the feature request :)
Indeed there is no straightforward way to do this with the current version, but it will be nice addition !
I'll work on it asap, prolly this weekend.
Cheers !

No worries @esentis . I'm glad it was not just me missing something. That would be fantastic. Thank you!

I've added minCharsToShowItems parameter to MultipleSearchController to delay the search operation until the user has typed a minimum number of characters as requested !

Hi, It look like the minCharsToShowItems property doesn't work with the MultipleSearchSelection<T>.overlay constructor.
Can anyone check if i'm wrong about it?

@martinogarrizzo5 hello there ! Will look into it and get back at you asap.

It seems also that calling the getPickedItems method of the MultipleSearchController returns an empty list. Can you also check that? Thanks

@martinogarrizzo5 you were right about the minCharsToShowItems on Overlay. There was a bug and will be fixed with the next version. However, I cant reproduce the second issue with getPickedItems

Here is the snippet of code that i wrote related to the component i sent you in the previous comments. Can you give it a look? Thanks
MultiSearchField<Commission>(
                    maxSelectedItems: 1,
                    items: _availableCommissions,
                    controller: _commissionFieldController,
                    fieldToCheck: (commission) => commission.id,
                    initialPickedItems:
                        widget.commission != null ? [widget.commission!] : [],
                    placeholder: l10n.commissionPlaceholder,
                    suffixIcon: Icons.person,
                    error: _commissionError,
                    getItemLabel: (commission) => Text(commission.id),
                    onPickedChange: (list) => setState(() {
                      _commissionError = null;
                    }),
                    onCreateOption: (text) => Commission(id: text, name: ""),
                    getPickedItemLabel: (commission) => Row(
                      mainAxisSize: MainAxisSize.min,
                      children: [
                        if (commission.name.isNotEmpty)
                          Icon(
                            Icons.work,
                            color: customStyles.colors.onPrimary,
                          ),
                        const Gap(4),
                        Text(
                          commission.id,
                          style: customStyles.labelStyle.copyWith(
                            color: customStyles.colors.onPrimary,
                          ),
                        ),
                        const Gap(4),
                        Icon(
                          Icons.close,
                          size: 16,
                          color: customStyles.colors.onPrimary,
                        ),
                      ],
                    ),
                  ),

or maybe look at this implementation that should be easier and don't use any wrapper:
MultipleSearchSelection<Commission>.overlay(
                    controller: _commissionFieldController,
                    maximumShowItemsHeight: 200,
                    clearSearchFieldOnSelect: true,
                    placePickedItemContainerBelow: true,
                    items: _availableCommissions,
                    showClearAllButton: false,
                    showSelectAllButton: false,
                    showedItemsBoxDecoration: BoxDecoration(
                      color: Colors.white,
                      borderRadius: BorderRadius.circular(6),
                      boxShadow: [
                        BoxShadow(
                          color: Colors.black.withOpacity(0.1),
                          blurRadius: 4,
                          offset: const Offset(0, 2),
                        ),
                      ],
                    ),
                    pickedItemsBoxDecoration: BoxDecoration(),
                    pickedItemsContainerMaxHeight: 1000,
                    maxSelectedItems: 1,
                    searchField: TextField(
                      decoration: InputDecoration(
                        labelText: l10n.commissionPlaceholder,
                        suffixIcon: IconButton(
                          onPressed: () {},
                          color: Theme.of(context).colorScheme.secondary,
                          disabledColor:
                              Theme.of(context).colorScheme.secondary,
                          padding: const EdgeInsets.symmetric(horizontal: 24),
                          icon: const Icon(
                            Icons.person,
                            size: 28,
                          ),
                        ),
                      ),
                    ),
                    overlayOptions: OverlayOptions<Commission>(
                      canCreateItem: true,
                      closeOnItemSelected: true,
                      createOptions: CreateOptions<Commission>(
                        create: (text) {
                          return Commission(id: text, name: "");
                        },
                        createBuilder: (text) => Padding(
                          padding: const EdgeInsets.all(8.0),
                          child: Container(
                            decoration: BoxDecoration(
                              borderRadius: BorderRadius.circular(6),
                              color: Colors.white,
                            ),
                            child: Padding(
                              padding: const EdgeInsets.symmetric(
                                vertical: 16.0,
                                horizontal: 12,
                              ),
                              child: Text("${l10n.outOfList}: $text"),
                            ),
                          ),
                        ),
                        pickCreated: true,
                      ),
                    ),
                    fieldToCheck: (commission) {
                      return commission.id;
                    },
                    itemBuilder: (commission, index, isPicked) {
                      return Padding(
                        padding: const EdgeInsets.fromLTRB(6, 6, 6, 0),
                        child: Container(
                          decoration: BoxDecoration(
                            borderRadius: BorderRadius.circular(6),
                            color: Colors.white,
                          ),
                          child: Padding(
                            padding: const EdgeInsets.symmetric(
                              vertical: 16.0,
                              horizontal: 12,
                            ),
                            child: Text(commission.id),
                          ),
                        ),
                      );
                    },
                    pickedItemBuilder: (commission) {
                      return Container(
                        decoration: BoxDecoration(
                          color: customStyles.colors.primary,
                          border: Border.all(
                            color: customStyles.colors.inputBackground,
                          ),
                        ),
                        child: Padding(
                          padding: const EdgeInsets.all(6),
                          child: Row(
                            mainAxisSize: MainAxisSize.min,
                            children: [
                              if (commission.name.isNotEmpty)
                                Icon(
                                  Icons.work,
                                  color: customStyles.colors.onPrimary,
                                ),
                              const Gap(4),
                              Text(
                                commission.id,
                                style: customStyles.labelStyle.copyWith(
                                  color: customStyles.colors.onPrimary,
                                ),
                              ),
                              const Gap(4),
                              Icon(
                                Icons.close,
                                size: 16,
                                color: customStyles.colors.onPrimary,
                              ),
                            ],
                          ),
                        ),
                      );
                    },
                  ),

@martinogarrizzo5 I don't see anything weird but I can't see where you are calling the getPickedItems method either.

I'm sorry. Thank you for the time you're spending. I created a button inside a row in the same tree level that when is pressed it fires the following function:
  List<Commission> _pickedCommissions = [];
  final _commissionFieldController = MultipleSearchController<Commission>(
    minCharsToShowItems: 3,
  );
  String? _commissionError;

  List<Site> _pickedSites = [];
  final _sitesFieldController = MultipleSearchController<Site>(
    minCharsToShowItems: 3,
  );
  String? _sitesError;

Future<void> _saveForm() async {
    if (_commissionFieldController.getPickedItems().isEmpty) {
      setState(() => _commissionError = "field required");
    }
    if (_sitesFieldController.getPickedItems().isEmpty) {
      setState(() => _sitesError = "field required");
    }
  }

Hmm, the provided snippet should be working.
Would be super helpful if you could reproduce the same bug with the provided examples.

Using the pieces of code that i provided to you, it didn't work. I instead found a workaround using the onPickedChange property of the MultipleSearchSelection widget and providing a function that updates a local variable with the current list. So in this way in the _saveForm function I just check my list instead of using the getPickedItems method.
Can you tell me if this is a reasonable solution? Thanks

Yes your workaround is fine, but I still don't understand why the onPickedChange is not firing for you :<

You mean the getPickedItems, right? Anyway for now I'm ok with this solution. For me, you can close the issue. I will open another when I'll have the time to investigate more or when I'll have other questions about the library.
Thanks for the help


CAT/BAT with custom database

Hi,
I was wondering if there also is the option to build the CAT/BAT database from a custom genome selection (with a custom taxonomy)? I have been developing a workflow to build a cross-domain reference genome database consisting of NCBI (eukaryotes), GTDB, and CheckV. To bring all these databases under the same taxonomic umbrella I create the taxdump from scratch with custom taxids. So far I have formatted this genome selection for kraken2 and kaiju, and I was wondering if there may also be a way to use this reference with CAT/BAT. Can you explain in more detail the requirements for the input files to prepare the CAT/BAT database? This question may also be related to #60 and #64.
Thanks a lot!

Hi @chassenr
The basic two requirements for taxonomy information for CAT would be:

names.dmp: A tsv file that contains \t separated values (or more precisely \t|\t separated) for a given taxid (should be unique), its human readable name and a field with the stringscientific name. This is what you also get from taxdump.gz
An example looks like this:

6       |       p__Aenigmatarchaeota    |               |       scientific name |
7       |       p__Aenigmatarchaeota_A  |               |       scientific name |
8       |       p__Altarchaeota |               |       scientific name |

nodes.dmp: A mapping of each unique taxid (field 1 from above) to its parent node in the taxonomy tree and its rank name.
An example would look like this:

2       |       1       |       superkingdom    |
3       |       1       |       superkingdom    |
6       |       2       |       phylum  |
7       |       2       |       phylum  |
8       |       2       |       phylum  |

This is also what you get from the standard taxdump.gz from ncbi.
These files should be both present in a dir. To build the database for CAT you will need to use the CAT prepare subcommand and provide the path to this dir via the -t / --taxonomy_folder argument.

Thanks @papanikos for the detailed explanation. I will try it out! I am closing the issue for now. If I encounter problems when testing with my custom DB, I will re-open it.

Just in case this will also be helpful for others, here is the code that I used to build a CAT database for GTDB:
# Download protein seqs and taxonomy
cd /bio/Databases/GTDB/R202 # adjust based on your local file structure
wget https://data.gtdb.ecogenomic.org/releases/release202/202.0/genomic_files_reps/gtdb_proteins_aa_reps_r202.tar.gz
wget https://data.gtdb.ecogenomic.org/releases/release202/202.0/bac120_taxonomy_r202.tsv
wget https://data.gtdb.ecogenomic.org/releases/release202/202.0/ar122_taxonomy_r202.tsv

tar -xzvf gtdb_proteins_aa_reps_r202.tar.gz
rm gtdb_proteins_aa_reps_r202.tar.gz
cat bac120_taxonomy_r202.tsv ar122_taxonomy_r202.tsv > gtdb_taxonomy_r202.tsv

# generate nodes and names files
# see: https://github.com/rrwick/Metagenomics-Index-Correction
# I cloned this repository to /home/hassenru/Repos/
cd /bio/Databases/GTDB/R202/cat
mkdir CAT_database
mkdir CAT_taxonomy
conda activate taxonkit-0.8.0
/home/hassenru/Repos/Metagenomics-Index-Correction/tax_from_gtdb.py --gtdb ../gtdb_taxonomy_r202.tsv --nodes CAT_taxonomy/nodes.dmp --names CAT_taxonomy/names.dmp
cut -f2 ../gtdb_taxonomy_r202.tsv | uniq > tmp.tax
cut -d';' -f7 tmp.tax | sed 's/s__//' | taxonkit name2taxid --data-dir CAT_taxonomy/ | paste tmp.tax - > tmp.taxid

# concatenate protein files
# removing stop codons from annotation in case this may cause downstream incompatibility (not sure if this was really necessary, but since genbank genomes don't have * I thought removing them here might be a good idea)
find ../protein_faa_reps/archaea -name '*.faa' | parallel -j100 'sed "s/\*//g" {}' > CAT_database/gtdb_reps.nr
find ../protein_faa_reps/bacteria -name '*.faa' | parallel -j100 'sed "s/\*//g" {}' >> CAT_database/gtdb_reps.nr
gzip CAT_database/gtdb_reps.nr

# generate accession to taxid file
echo -e 'accession.version\ttaxid' > CAT_taxonomy/prot.accession2taxid.FULL
ls -1 ../protein_faa_reps/archaea/*.faa | xargs -n1 basename | sed 's/_protein\.faa//' | while read line
do
  TAXID=$(echo ${line} | grep -F -w -f - ../gtdb_taxonomy_r202.tsv | cut -f2 | grep -F -w -f - tmp.taxid | cut -f3)
  grep '^>' ../protein_faa_reps/archaea/${line}_protein.faa | sed -e 's/^>//' -e 's/ .*//' | sed "s/$/\t$TAXID/"
done >> CAT_taxonomy/prot.accession2taxid.FULL
find ../protein_faa_reps/bacteria -name '*.faa' | xargs -n1 basename | sed 's/_protein\.faa//' | while read line
do
  TAXID=$(echo ${line} | grep -F -w -f - ../gtdb_taxonomy_r202.tsv | cut -f2 | grep -F -w -f - tmp.taxid | cut -f3)
  grep '^>' ../protein_faa_reps/bacteria/${line}_protein.faa | sed -e 's/^>//' -e 's/ .*//' | sed "s/$/\t$TAXID/"
done >> CAT_taxonomy/prot.accession2taxid.FULL
gzip CAT_taxonomy/prot.accession2taxid.FULL

# build CAT DB
conda activate cat-5.2.3
CAT prepare --existing -t /bio/Databases/GTDB/R202/cat/CAT_taxonomy -d /bio/Databases/GTDB/R202/cat/CAT_database -n 100

# clean-up
rm tmp.taxid tmp.tax

This is stellar, @chassenr! Thank you so much for sharing!


remove IP retrieval process from usermetric

What this PR does / why we need it:
This PR removes IP retrieval process from usermetric to improve overall performance
Will this PR make the community happier?
Yes
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
How is this PR tested

[ ] unit test
[x] e2e test
[ ] other (please specify)

Special notes for your reviewer:
Release note:

- remove IP retrieval process from usermetric

some issue with goproxy server and Azure, will merge this PR


Sometimes chat messages get no responses  at all (no errors reported either) blocking any further conversations that can be had in the thread.

Steps that lead to the problem:

Created an assistant with Website Browsing tool"

Started a chat with this assistant  - What is the most recent issue logged in https://github.com/gptscript-ai/clicky-chats/issues ?

Response for this call never cames back.
Quit the thread.
Come back to the thread after some time  and try to do more chats in this thread.
All the chat messages will fail with "400 Bad Request" which is expected since the first chat message is actually still in progress.

Tested on latest version of clivky-chats. This issue is not seen anymore for the few scenario i had hit this issue earlier.
Closing this issue for now.  Will open a new issue , if I see similar issues when testing other scenarios.

I saw this error once when testing today:
Error Sending
unexpected status code: 500, error: unexpected chat completion response: failed to unmarshal stream message: [123]

I dont have exact steps to reproduce this issue.


Organize the many widgets in the UI to avoid clutter

The original idea was to make all the widgets collapsible/minimizable to make the view less cluttered.

Alternatives:

hide tree widget when there are no tracks
close widgets when not needed and reopen from the plugins menu
open tree widget in popped out mode by default?
Put tracks list by layers list (tabbed with layer controls)

I think we settled on the "multi widget" with the tree widget on the bottom, and everything else tabbed on the right. I still think it might be nice to only show the tree widget when there are tracks, and hiding it otherwise - thoughts @AnniekStok? It annoys me when its a big blank canvas taking up space when I open the widget, but I also don't want it to be distracting if it keeps popping in and out.

I personally do not mind the black canvas too much, I just pop it out if I don't need it. In most situations the first thing I would want to do is populate it, so it does not stay empty that long.

Okay, then I think we should just rename the widgets, to make it clear that the "multi-widget" is the main thing that people should use. Perhaps we rename the Multi Widget to "Motile Plugin Main App" and then all the other ones add "Subwidget" or some equivalent word (e.g. Motile Tracking Subwidget, Tracks List Subwidget, Tree View Subwidget) . And then add this change to the documentation.
We should also double check that if you close each of them from the multi widget and then open it from the menu, it still works as expected.

Yes I think renaming it like that would make it more clear.
Last time I tested all widgets seemed fine when you close and reopen, except for the TracksList SubWidget, which does something weird (it becomes empty) if you also open the Main App widget. I could not figure out what the problem was at the time.
Do we want to include a 3D viewing subwidget as well?

Last time I tested all widgets seemed fine when you close and reopen, except for the TracksList SubWidget, which does something weird (it becomes empty) if you also open the Main App widget. I could not figure out what the problem was at the time.

I think because the Tracks object are actually stored in memory in the TracksList widget, closing it will actually lose the tracks. We can store the actual Tracks in the TracksViewer and just have the TracksList display them, which would fix that issue.

Do we want to include a 3D viewing subwidget as well?

I think we should put a but more thought into visibility, selection, centering, subsets of the data, etc. as we add the 3D viewing subwidget. It introduces another form of "visibility" other than filtering by lineage, so I assume there will be some unexpected interactions or overly complex code unless we think about it first. But, we should definitely do it! Perhaps we can make an outline in our meeting tomorrow.

I think I got the Tracks back if I reopened the MainWidget but not if I reopened the TracksList Widget with a MainWidget open. Or something like that. It was confusing. Also, it seems that if you click on 'back to editing' in the motile tab, you cannot recover your tracks from the TracksList until you ask motile to track again first, is that expected, or is there actually a way to go back to your tracks from there?

Also, it seems that if you click on 'back to editing' in the motile tab, you cannot recover your tracks from the TracksList until you ask motile to track again first, is that expected, or is there actually a way to go back to your tracks from there?

There should be a way to go back to your tracks. I guess because it is already selected in the list, re-clicking on it in the list doesn't send the visibility signal. I was considering not having back to editing remove the layers - that seems like a simple fix? Is it confusing if you are editing a run while looking at results from another run? (The main weird case that happens is that you can use the output segmentation layer as an input to a new run, which is probably not recommended but I guess fine?).


Updating submodules

Updating with new submodule commits

There are conflicts to be fixed before it can be merged - probably branch was not created from the latest main

There are conflicts to be fixed before it can be merged - probably branch was not created from the latest main

Thanks, I think I used master by accident. Rebased with main


add link to merge sort algorithm in buble sort algorith README.md file

Checklist

[x] I've looked at the contribution guidelines.
[x] This pull request is complete and ready for review.

Description
add link to merge sort algorithm in buble sort algorith README.md file

Thanks for the added link!


feat: use cache option

Close  #5. See https://github.com/tomerfiliba/plumbum/pull/684 for an example of using it.

Haha, no rush at all (if you can't tell!). :) End of month is fine. It can be worked around, it's just a nice quality of life improvement. I'll try to address the suggestions above in the next couple of days.

Ah, totally forgot about this. To be fair, I've been out with conjunctivitis for the last week+. I'll address these.

I've addressed everything but the ./action comment.


Slipping mispredicts

Description

Reproduction

Just slip on anything, you'll fall down twice. The first one gets cancelled exceptionally quick.
Screenshots

https://user-images.githubusercontent.com/54602815/169722784-ee35291d-e229-4bd3-ab2a-2196652f62ac.mp4
Additional context

Added to The List.txt

its fine now


Add support for Android log files with threadtime option

adb logcat supports an option -v threadtime for extended information about threads. The current regexes of this package fail for this option, unfortunately. I added regexes to the grammar to make the package work with these extended logs, too, as well as a simple spec to test them.

Thank you. Great job!


Plot Peaks Crashes; Does this Preclude Other Steps from Finishing?

Hello,
I am running qsiprep (0.12.2) on single-shelled DWI data that has already been run through Freesurfer (via fmriprep). Thus, I chose the recon spec for mrtrix single-shell ss3t. I use Slurm to submit my jobs, each subject using the following code:
#!/bin/bash
#SBATCH -t 48:00:00                  # walltime = 2 days
#SBATCH -N 1                         #  one node
#SBATCH -n 10                         #  10 CPU (hyperthreaded) cores
#SBATCH --gres=gpu:2                 #  2 GPU
#SBATCH --constraint=high-capacity   #  high-capacity GPU

singularity run --nv --cleanenv -B /om4 -B /om /om2/user/smeisler/qsiprep_new.img     \
/om/project/PARC/BIDS/data /om/project/PARC/BIDS/derivatives/ participant --participant-label $1 \
--fs-license-file /om4/group/gablab/dti_proc/license.txt --hmc_model eddy \
 --work_dir /om/project/PARC/BIDS/derivatives/work \
--recon_spec mrtrix_singleshell_ss3t_noACT --unringing_method mrdegibbs --output_resolution 1.2

Where $1 is the subject label passed into the script.
QSIPrep runs fine, but QSIRecon begins to throw errors, particularly during the "plot_peaks" task which begins concurrently with tractography. Since I run these jobs in the background with sbatch, I would expect something that requires a rendered window, like plot_peaks, to fail. The last successfully outputted file appears to be the normalized FODs in the /qsirecon/$SUB/dwi folder. The error is below.
	 [Node] Setting-up "qsirecon_wf.sub-ABCD1727_mrtrix_singleshell_ss3t_noACT.recon_wf.ss3t_csd.plot_peaks" in "/om/project/PARC/BIDS/derivatives/work/qsirecon_wf/sub-ABCD1727_mrtrix_singleshell_ss3t_noACT/recon_wf/ss3t_csd/_dwi_file_..om..project..PARC..BIDS..derivatives..qsiprep..sub-ABCD1727..dwi..sub-ABCD1727_space-T1w_desc-preproc_dwi.nii.gz/plot_peaks".
201113-13:30:42,349 nipype.workflow INFO:
	 [Node] Running "plot_peaks" ("qsiprep.interfaces.reports.ReconPeaksReport")
201113-13:31:48,948 nipype.workflow INFO:
	 b''
201113-13:31:48,948 nipype.workflow INFO:
	 b''
ERROR: In /work/standalone-x64-build/VTK-source/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx, line 291
vtkXOpenGLRenderWindow (0x55b472eeae80): Could not find a decent config

ERROR: In /work/standalone-x64-build/VTK-source/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx, line 291
vtkXOpenGLRenderWindow (0x55b472eeae80): Could not find a decent config

ERROR: In /work/standalone-x64-build/VTK-source/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx, line 291
vtkXOpenGLRenderWindow (0x55b472eeae80): Could not find a decent config

ERROR: In /work/standalone-x64-build/VTK-source/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx, line 606
vtkXOpenGLRenderWindow (0x55b472eeae80): Cannot create GLX context.  Aborting.

Fatal Python error: Aborted

Current thread 0x00002b334da455c0 (most recent call first):
  File "/usr/local/miniconda/lib/python3.7/site-packages/fury/window.py", line 827 in record
  File "/usr/local/miniconda/lib/python3.7/site-packages/qsiprep/niworkflows/viz/utils.py", line 847 in plot_peak_slice
  File "/usr/local/miniconda/lib/python3.7/site-packages/qsiprep/niworkflows/viz/utils.py", line 867 in peak_slice_series
  File "/usr/local/miniconda/lib/python3.7/site-packages/qsiprep/interfaces/reports.py", line 745 in _run_interface
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 419 in run
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741 in _run_command
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635 in _run_interface
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516 in run
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67 in run_node
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/process.py", line 232 in _process_worker
  File "/usr/local/miniconda/lib/python3.7/multiprocessing/process.py", line 99 in run
  File "/usr/local/miniconda/lib/python3.7/multiprocessing/process.py", line 297 in _bootstrap
  File "/usr/local/miniconda/lib/python3.7/multiprocessing/spawn.py", line 118 in _main
  File "/usr/local/miniconda/lib/python3.7/multiprocessing/forkserver.py", line 297 in _serve_one
  File "/usr/local/miniconda/lib/python3.7/multiprocessing/forkserver.py", line 261 in main
  File "<string>", line 1 in <module>
exception calling callback for <Future at 0x2ba18e21d9b0 state=finished raised BrokenProcessPool>
Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 324, in _invoke_callbacks
    callback(self)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 159, in _async_callback
    result = args.result()
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 425, in result
    return self.__get_result()
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
concurrent.futures.process.BrokenProcessPool: A process in the process pool was terminated abruptly while the future was running or pending.
exception calling callback for <Future at 0x2ba18e21d710 state=finished raised BrokenProcessPool>
Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 324, in _invoke_callbacks
    callback(self)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 159, in _async_callback
    result = args.result()
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 425, in result
    return self.__get_result()
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 324, in _invoke_callbacks
    callback(self)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 159, in _async_callback
    result = args.result()
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 425, in result
    return self.__get_result()
  File "/usr/local/miniconda/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
concurrent.futures.process.BrokenProcessPool: A process in the process pool was terminated abruptly while the future was running or pending.

However, the slurm jobs have not cancelled yet. My question is does a failure in plot_peaks preclude the rest of the code from finishing? If so, should I be submitting jobs in another way that would allow for window rendering? I plan on waiting to see what happens regardless, but knowing the nature of tractography, I could be waiting for quite a bit.
Thanks,
Steven

Hi Steven,
Thanks for reporting this. I've seen this sometimes on machines with older hardware. As long as you don't have --stop-on-first-crash enabled the rest of the workflow will run and you will have usable outputs. The reports just won't have the peaks plotted. Are you able to start an xvfb on the compute host?

Thanks for the quick response! I do not have that argument enabled, so looks like I'm in the clear. I see that Xvfb is installed on the server, although I haven't used it yet or know the syntax. Would a fix be as easy as prepending xvfb-run [OPTIONS] to the singularity call? If it's more complicated than that, don't worry about typing it all out; I can just ask our server admin for guidance.

I ran into this same error today and it does seem to cause everything to grind to a seemingly indefinite halt (the container hasn't gone above 7% CPU usage for 6 hours and no new processes have started).

I looked into the /work/qsirecon_wf/......./recon_wf/track_ifod2/..../tractography/ folder and saw that the tracked.tck has been stuck at a small file size (~70 MB) for a while, so I think my jobs have stalled too unfortunately, although the Slurm batches are still technically active.

Could you try using just a single CPU, adding an extra day to the run time and making sure you have a ton of memory available? I wonder if the tractography is having trouble allocating memory for all those cpus.

Sure! I'll try 32 gb and report back.

Tractography seems to have stalled again. tracked.tck maxes out around 1.3 KB.

did you specify on the command line --nthreads 1?

No, will specify that now, and try increasing the memory to 50gb

So far it appears to be working (~2 GB for the .tck file and growing)!

excellent! you could probably speed it up by setting --nthreads to something < 8 and requesting 8 or more cpus from slurm. I think qsiprep may have been detecting all the cpus available on the compute host and trying to parallelize over all of them.

I'm still struggling with this. Setting nthreads to 1 doesn't appear to help.
I get the same plot_peaks error as smeisler, but in my case the tractography doesn't appear to launch at all after the error (tckgen isn't running, no .tck file is created anywhere in the wf).
Some other differences between my case and smeisler: I'm running mrtrix_multishell_msmt rather than the ss3t workflow. Also, I'm running the Singularity container (0.12.2) interactively over an NX session rather than as a SLURM job.

@droediger do you have the --stop-on-first-crash option enabled?

@mattcieslak Nope. However, I moved things over to a high memory SLURM partition and it's running fine now 👍


Documentation bug in BFO2-reference.docx

Near the bottom of p. 16 in the BFO 2.0 Specification and User's Guide, it says:
"Spatial regions, for BFO, are continuants.] Spatial and spatiotemporal regions are occurrents."
The "]" is unmatched with an "[", and presumably the second occurrence of the word "Spatial" should have been "Temporal."

Good catch!
I will fix it soon.

Fixed


Firebaseauth with Facebook login

Hey guys,
I am trying to login Firebase with facebook.
I am using firebaseauth:0.7.0 and flutter_facebook_login:
Here is my function for facebook login:
  startFacebookLogin() async {
    var facebookLogin = FacebookLogin();
    var result = await facebookLogin
        .logInWithReadPermissions(['email', 'public_profile']);
    FacebookAccessToken myToken = result.accessToken;
    AuthCredential credential =
        FacebookAuthProvider.getCredential(accessToken: myToken.token);
    FirebaseUser firebaseUser =
        await FirebaseAuth.instance.signInWithCredential(credential);
    createProfile(user);
  }

Here I got this error:
E/flutter (19097): [ERROR:flutter/shell/common/shell.cc(186)] Dart Error: Unhandled exception:
E/flutter (19097): NoSuchMethodError: The getter 'token' was called on null.

Related SO question https://stackoverflow.com/questions/54911260/the-getter-token-was-called-on-null-firebase-auth-with-facebook-login-flutte

Also asked in https://github.com/roughike/flutter_facebook_login/issues/100

@samycodes
This issue has been moved to https://github.com/FirebaseExtended/flutterfire/issues/408. Any further collaboration will be done there.


Support stochastic indexing in AD. Allow dists and functions in a model that uses AD to lack AD support.

This branch is not completely finished, but I want to initiate general testing.
This includes two changes:

New atomics and associated code generation to support stochastic indexing within AD.

Allow distributions and functions (whether user-defined or built-in) that lack AD support to be used and compiled in a model that has buildDerivs=TRUE. This includes:

At nimbleModel, emit a warning message.
At compileNimble, no message is emitted.
At C++ run-time, if the dist or function lacking support is called, it is a (hard stop) run-time error and a lengthy message is emitted. This includes information about how to turn it into just a warning or disable the error-trapping entirely.

Testing for these features is partially written and is (current commented-out) at the bottom of test-ADbasics and test-ADfunctions. At the launch of this PR, I want to see if all other testing passes. (At the moment we have one stable testing problem that fails reliably.)
dcat has not been updated but will be, with additional testing.

The test failures were actually because I tweaked the testing infrastructure (make_op_param) in a way that accidentally broke other tests. I fixed that and also merged in the "--preclean" (fix-1368). Let's see what happens next with testing.

Ok, here are various comments (mostly minor) about messaging/error-trapping around new AD functionality. I've separated out some issues as separate GH issues when they might involve more complicated discussion.

[] See NCT issue 493 for a (new) problem with use of dcat. Because of that I'm not able to check more complicated use of dcat as prior for a discrete state.
See NCT issue 494 about a confusing message about use of pow with AD in standard models.
We still warn that "model cannot be compiled" in various cases that are now fine, such as use of dconstraint, T(), etc. in places in model where derivs are not taken.
Still have warning that derivs cannot be build for models that have dynamic indexing.
In the C++ run-time error messaging about having a model node included in derivatives that don't support them, I'd like to have the messaging better conform to our messaging system (I do recognize that run-time messages are somewhat different). I can do this.
I'd like to update some of the messaging to use messageIfVerbose. I can do this.
Some of the new tests have expect_ outside of test_that. That can cause problems in CI. As suggested in email, I am hoping we can use expect_message in these cases inside of test_that.
I think we should change the syntax related to "does not have support for derivatives" from "[Warning]" to "[Note]". Also there is an extra space in this message. In many cases that a user writes a model like this, there will be nothing wrong.
We need temporarilyAssignInGlobalEnv for user-defined distributions in the new testing.

@perrydv I'm happy to do much of the updating of the tests and messaging, but want to give you a chance to first see my comments and address things that you are best equipped to handle.

Various testing and updated errors/warnings based on discussion with @perrydv . I will also add some overall testing via tests in nimbleHMC for CAR model and a stochastic index model with dcat.


Remove not protected statuses from protected list

@stephanwampouille @kenrick fyi. Not relevant statuses are neither protected or unprotected.

got it!


runtime: append does not fail when length overflows

What version of Go are you using (go version)?

$ go version
go1.11.2 linux/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/icza/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/icza/gows"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build173735906=/tmp/go-build -gno-record-gcc-switches"

What did you do?
Run the following app:
package main

import (
	"fmt"
	"math"
)

func main() {
	s := make([]struct{}, math.MaxInt64-2)
	fmt.Println(len(s), cap(s))
	for i := 0; i < 5; i++ {
		s = append(s, struct{}{})
		fmt.Println(len(s), cap(s))
	}
}

A slightly modified version is available and reproduces the error on the Go Playground: https://play.golang.org/p/AUKUBmQld_e
On the Playground math.MaxInt32 is used instead of math.MaxInt64.
What did you expect to see?
A panic saying:
growslice: cap out of range

What did you see instead?
The app did not fail. Capacity stops growing when it reaches MaxInt64 on 64-bit architecture, and MaxInt32 on 32-bit architectures, but length overflows and becomes negative.
9223372036854775805<PHONE_NUMBER>854775805
9223372036854775806<PHONE_NUMBER>854775806
9223372036854775807<PHONE_NUMBER>854775807
-9223372036854775808<PHONE_NUMBER>854775807
-9223372036854775807<PHONE_NUMBER>854775807
-9223372036854775806<PHONE_NUMBER>854775807

This is in clear violation of the Spec: Length and capacity:

At any time the following relationship holds:
0 <= len(s) <= cap(s)

as length becomes negative (and thus less than 0).
This report originates from this Stackoverflow question: https://stackoverflow.com/questions/53743099/behavior-of-append-when-appending-item-to-a-max-size-slice

With Go 1.6 and gccgo I get the following crash.  With Go 1.7 and later the program succeeds incorrectly.
I'm going to mark this a release blocker for 1.13, but of course if we have a fix for 1.12 that would be nice.
9223372036854775805<PHONE_NUMBER>854775805
9223372036854775806<PHONE_NUMBER>854775806
9223372036854775807<PHONE_NUMBER>854775807
panic: runtime error: growslice: cap out of range

goroutine 1 [running]:
panic
	../../../gccgo3/libgo/go/runtime/panic.go:588
main.main
	/home/iant/foo.go:12
exit status 2

From a quick look and test I think we can fix the issue by changing the comparison from INT to UINT here:
https://github.com/golang/go/blob/d70b0ece2f208ff99efce87c07f5171617c29a13/src/cmd/compile/internal/gc/ssa.go#L2457
With that change I get:
go run main.go
9223372036854775805<PHONE_NUMBER>854775805
9223372036854775806<PHONE_NUMBER>854775806
9223372036854775807<PHONE_NUMBER>854775807
panic: runtime error: growslice: cap out of range
goroutine 1 [running]:
main.main()
/Users/martisch/test/main.go:71 +0x222
exit status 2
The cmd/compile/internal/gc/walk.go append code for appending lists does the same.

and assuming no one will ever write code appending MaxInt/2 arguments in a single append call - which likely would result in the parser running out of memory first

Does that include a = append(a, b...) where len(b) > MaxInt/2 ?


Clarification

In the section above, it states "remove the VM from the saved search for the Scope Configuration MicrosoftDefaultScopeConfig-Updates. Saved searches can be found under General in your workspace." The saved search query is set to "Heartbeat | distinct Computer" by default so how would we remove it?

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

ID: c53fae91-9d02-f626-dd03-7c532bcffe38
Version Independent ID: 10756920-a188-fd6f-c9c9-910d6ce27673
Content: Troubleshoot errors with Update Management
Content Source: articles/automation/troubleshoot/update-management.md
Service: automation
GitHub Login: @georgewallace
Microsoft Alias: gwallace

@jzuchora87 In that case there is nothing to remove.. We just want to make sure any guid's / names of the machines are not in the saved search query.  This could cause the machine to be shown as a duplicate.

@jzuchora87 I have added some clarification to the doc that you only have to remove it if it exists.. once the change is merged it will automatically close this issue.


Jupyter interactive output copy & pasting.

When I have a large output, I can't CMD+A and CMD+C to copy it all. Instead, I have to drag my mouse across the output (often, not even capturing all of the output).

I'd like to be able to easily select an output block and CMD+A (select all, or some other shortcut to select all) and CMD+C (copy) to copy everything.

There is a copy output command available for all notebook outputs. Let us know if that doesn't work for you.


Generating a "credits" file with licenses and copyright notices

Many open-source licenses require the reproduction of text and copyright notices as part of compliance. A lot of libraries have copyright notices strewn about various source files, which complicates this further. I'm wondering if there are any mechanisms within vcpkg (existing or planned) for generating a consolidated "credits" file that contains notices from all dependencies within the vcpkg.json file? A good example of the end result would be the Chrome credits page (chrome://credits), though obviously the file generated by vcpkg doesn't need to be html.

@vrbhartiya Thank you for submitting the issue. At present, vcpkg does not have the function like chrome://credits, and you cannot view all licenses. You can only view the license through vcpkg.json.

Well, in particular in manifest mode, you could collect the installed copyright files in /share. But in general, this won't be precise. These files need to cover all installed features, not just the features you use and redistribute. For a number of popular packages, this includes tools covered by GPL in addition to the library which is covered by LGPL.


"Kazari" plugin rough draft

This PR introduces "Kazari", a Scala.JS-powered plugin that will allow developers to add Scala Exercises-like abilities to their documentations. Basically it will traverse the DOM of any site which includes the generated JS script, decorate any Scala code block by adding an "evaluate" button (which will send requests to our Scala remote evaluator) and also allow live code edition and evaluation.
Right now the plugin just decorates the code with a button to allow calls to the remote evaluator, sending basic requests to the remote evaluator. Refactoring of the network code is also needed, as now it's using JQuery simple Ajax calls. Plans to integrate the remote evaluator client are in motion!
This PR is partly dependant on https://github.com/scala-exercises/evaluator/pull/31, which allows the Scala evaluator to receive CORS calls (like the ones produced by the plugin).
Could you please review @raulraja @juanpedromoreno @dialelo? Thanks!!

This should be against branch 0.3.0


Update tips

About the PR

Some of the tips were outdated and i had to fix them, like epi purging lexorin. I also added a bunch of new tips like related to the tesla among other things.

Test failures are real.

that's why im confused

bom ops


View-only links - Expand and collapse buttons for component listing are awkward

Steps

Go to osf.io
Go to one of your projects that has at least two components
Go to the project's Sharing page
Add a new View-only link that includes all the components

Expected behavior
I expected that the list of components would be expanded with a double down-arrow icon like in user settings for add-ons.

Actual behavior
The expand and collapse buttons are full-size and ungainly.

This is especially apparent when you look at the buttons in the context of the rest of the content under View-only Links.

If the double down-arrow is not a good solution, then simply having the text "Show 1 more..." and "Collapse" would be better than the full-size buttons.

Now that we have a plugin for expanding view it might be a good idea to try to implement it on these uses as well. I can take a look at this one @lbanner

Done!


Design Team Info Update

On the Community-Teams.md, the Design Team section needs to be updated with a link to the Design Team Roadmap folder within OM's Roadmap repo.
This will mean creating a folder within OM's Roadmap repo for the Design Team, which should include a README describing what the Design Team is (check out the Writing Team roadmap in that repo for an example), and any docs or links we want to share with the community.
Docs that are generally set and probably won't change in major ways in the near future should be transferred to .md files, but links that are still being worked on collaboratively can be linked out to their respective Google Docs/Sheets/AirTables/Trellos/etc.
The reason to do this is so that things like... forms to submit requests, the brand guide, or any other things we want to share with the community are discoverable, by the community (rather than just in a message or doc somewhere).

@Kiaka007 - Tagging you in for this :)

@4mber  got it thanks for the tag ^_^
I have some other pressing things in queue so might be a bit until I get to this.
As a heads up I have created a Welcome Packet for onboarding so @bennettfarkas should
you find yourself getting new designers in please check that out until I can get it up on here.

@Kiaka007 - No worries, no rush, just wanted to put it on your radar! :)


Unlimit the vdim bounds and add ability for additional vdim hover

import xarray as xr
import holoviews as hv
hv.extension('bokeh')

ds = xr.Dataset({'int_': (('x', 'y'), [[0, 1], [2, 3]]), 'str_': (('x', 'y'), [['zero', 'one'], ['two', 'three']])})
hv.Image(ds, ['x', 'y'], ['int_', 'str_']).options(tools=['hover'])

Let me know if there needs to be some changes (especially the l, b, dw, dh part; I only took a quick glance at it) or feel free to make changes directly!
Issue was opened in wrong repo:
https://github.com/pyviz/geoviews/issues/242

Any pointers on what needs to changed in hvplot?

Thanks @ahuang11 I'll try to review and merge this tomorrow.


Clicking desktop icons opens old explorer

Describe the bug
When I click Desktop icons(PC, Recycle Bin), it opens old explorer, not the Files app as #3182.
To Reproduce

Click the Desktop icon on the Desktop

Expected behavior
I would like to open with the Files app, not the old explorer.
Screenshots

Desktop (please complete the following information):

OS Version: [Windows 10 20H2 19042.746]
App version: [v<IP_ADDRESS>]

Additional context
Log file
debug.txt
debug_fulltrust.txt

This is intended. A workaround can be found here https://files-community.github.io/docs/#/articles/replace-file-explorer

This is intended. A workaround can be found here https://files-community.github.io/docs/#/articles/replace-file-explorer

I already ran SetFilesAsDefault.reg, but it won't open Files.

Is this still an issue? PS: Files v2.0.16 offers an option to set Files as default from Files settings.

Not yet implemented in Files v2. Merging with #6462.


Sean branch

Might need to review the head content in HTML. I may have accidently deleted something we need? Not sure.

Looks good. The rest of us have been working on different files, so I'm not worried by anything here.


Rename crate::util::format module to crate::format.

This PR moves the crate::util::format module to just crate::format. I think it's too tucked away right now, for no good reason.
I'm tempted to also merge the crate::introspection module into crate::format, since it's all related to the concept of a serialization format anyway.
@dan-jfisher, @hgaiser: What do you think?

This PR moves the crate::util::format module to just crate::format. I think it's too tucked away right now, for no good reason.
I'm tempted to also merge the crate::introspection module into crate::format, since it's all related to the concept of a serialization format anyway.
@dan-jfisher, @hgaiser: What do you think?

I don't really have a preference.  Gun to my head I would say keep them separate.

I'm tempted to also merge the crate::introspection module into crate::format, since it's all related to the concept of a serialization format anyway.

Would it be crate::format::introspection? Or just crate::format? My gut feeling says it's something significantly different enough for it to be in its own module, but if that module is a submodule for format, no preference there.

Would it be crate::format::introspection? Or just crate::format? My gut feeling says it's something significantly different enough for it to be in its own module, but if that module is a submodule for format, no preference there.

It would just be in crate::format. I don't want to have too must nested modules in the public interface. My main reason for wanting to merge it now is the IntrospectableFormat trait in the introspection module. It needs something that implements Format:
https://github.com/fizyr/fizyr-rpc/blob/cc38e500333f1adf54028b203f38bd86e562fd5c/src/introspection.rs#L89-L92
But I wasn't sure, so I guess lets not do it. If not merging, I'd still rather keep IntrospectableFormat in the introspection module rather than the format module.


No high-res fluidicon or favicon alternative

Just noticed that the way e.g. Firefox renders zeek.org as a shortcut seems to result from upscaling the tiny favicon.ico, which looks bad. We should in place something like the following (untested)
<link rel="fluid-icon" href="https://..." title="Zeek">
on Wordpress, with a high-res image.

This is fixed. For reference, this was via image upload under Divi -> Theme Customizer -> General Settings -> Site Identity.

@0xxon, fyi.


Not able to manually(not from calendar) edit dates when  nzFormat set to "dd/MM/yyyy HH:mm:ss"

Reproduction link
https://stackblitz.com/edit/angular-4p5rjp
Steps to reproduce
set nzformat to "dd/MM/yyyy HH:mm:ss"
set startdate and enddate from calendar
edit startdate manaully(not from calendar) to a valid date and press enter
What is expected?
Should be able to edit date range manually when date format is  "dd/MM/yyyy HH:mm:ss"
What is actually happening?
Not able to edit startdate and enddate manually

Environment
Info

ng-zorro-antd
13.0.1

Browser
chrome

Maybe its this?


[BUG] I uninstalled bloxstrap but noticed i couldn't play using websites but only the main game so I installed it again and when I played I has fps cap to 9999 but it was 20-30 and when i try to play on websites i just get a error notification

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?

btw i uninstalled it bloxstrap but my fps is at 20 fps but it can go to 100 - 60 on average with the fps unlocker

Assuming this has been resolved, please follow-up if you're still having issues.

Do you have the "Play Roblox" shortcut on your desktop? If so, then try running it, and try launching from the website afterwards.

dude me too now  i cant play roblox


Edge 44 bug - Reactive props issue

Version
3.0.0-beta.14
Reproduction link
https://github.com/AlexandreBonaventure/vue3-edge-bug
Steps to reproduce
Run the repro with yarn dev
What is expected?
on Chrome:

What is actually happening?
on Edge 44:

I haven't had the time to really dig into this issue but it seems like when we use Vue (transpiled for edgeHTML 18 with buble see #1285) there is an issue with how reactive props are delivered to children component, here item should not be undefined. However, reactivity seems to work for the parent component, you can see that the watchEffect hook is triggered correctly.

If anything, my gut feeling is that the transpilation transforming Object spreads -> Object.assign causes the issue where the subtle difference of implementation like here https://thecodebarbarian.com/object-assign-vs-object-spread.html
Are messing up with the component props/proxy/reactivity like here maybe: https://github.com/AlexandreBonaventure/vue3-edge-bug/blob/master/src/vue.transpiled.js#L9970
Take this as a huge grain of salt

#1284
iOS 12 got same

@allowing I don't think it is the same issue at all.
I fixed the issue here:
Believe or not, I found one of the weirdest issue with destructuring on Edge 44, and this is what is causing the issue. Somehow, it seems like destructuring arrays with object syntax is straight up broken on edge 44. I had a hard time figuring it out just because it is so WTF. I've updated the repro to highlight this bug specifically https://github.com/AlexandreBonaventure/vue3-edge-bug/blob/master/src/edge-bug.html#L11
with line 11:

without line 11:

Hmm, I used the index destructuring because it's slightly faster than array destructuring... but it probably won't be too significant.


Load pre-generated map to play on

Acceptance criteria:
Depends on:
#25 - for units
#21 - for the concept of 'teams' / factions

[ ] format has to be decided
[ ] has terrain data
[ ] has team start positions
[ ] has team units (depends on #25)
[ ] has team structures

#25 is solved. It would be wise to do this last (after #21 - so we have this idea of 'teams')

Solved #21 so this issue is ready to build

this is not really needed for an alpha 1. We can do with easy generated maps?

I will again move this out of the scope for this milestone. I am not sure if we need this, or use a pregenerated map. (from a seed?)


Increase the font size of the cell numbers

It's hard to find partners if the cell is too small to see

You can add different color cross when they are so small, after they get bigger,(around 400mass) cross should dissapear.

It's good. But when you get more and more users, there will be too many crosses on the minimap.

But they will be there only till they get enough mass, if you re playing with people, you would like to know where they are. I dont think I mind few crosses as long as I got the info I need...


Reducing CPU and memory usage by using ubuntu:19.04 image

Hi folks, I am performing some intensive reads (300 streaming tickers) off the IB gateway and I was hitting a high level of CPU usage (100%) with the image as-is. I confirmed that all the CPU usage was being used by the java executable within the image also.
I managed to reduce this to about 50% by using ubuntu:19.04 as the base image instead of 16.04. I'll raise a pull request with the change.

For others reading this I had to use the image name:
ubuntu:19.10

there are also security concerns with using something as old as 16.04
You may want to even go all the way to the latest LTS
ubuntu:20.04


Add 'globalSearchFocus' context for keyboard shortcuts

I often make whole codebase searches with cmd+shift+f and I really wish I could press down arrow to instantly jump to the results of my search query. However that seems impossible to do and I couldn't figure out how I could bind down arrow to jump to results from my search query. Currently pressing down arrow does nothing for me in this context.
There is Search: Focus List command available and I wish I could bind it to down arrow when I am making a global search query. However there is no such context available so I could not make this hotkey. Perhaps I am mistaken and it is possible to add this hotkey somehow.
I would really appreciate having the ability to change what down arrow key does when making global searches.
Thank you.

You should be able to do this with cmd/ctrl+down. down there is for navigating history. The command being invoked there is search.focus.nextInputBox if you want to customize it.


Backport "Fix #20458: do not expose ClassInfo in quotes reflect widenTermRefByName" to LTS

Backports #20468 to the LTS branch.
PR submitted by the release tooling.
[skip ci]

No regressions detected in the community build up to lts-20902.
Reference


image: don't build for arm64 for now due to an issue in libbpf build

temporarily disable arm64 build. Will enable it after resolving libbpf module build issue in https://github.com/sustainable-computing-io/kepler/actions/runs/7659192488/job/20873789773

cc #1156


[turborepo] Docs pages not found

What version of Turborepo are you using?
NA
What package manager are you using / does the bug impact?
Yarn v2/v3 (node_modules linker only)
What operating system are you using?
Linux
Describe the Bug
https://turbo.build/pack/docs/comparisons/vite
https://turbo.build/pack/docs/comparisons/webpack
these two pages in docs are non existent.
Expected Behavior
The pages should be there or the routing should be fixed.
To Reproduce
NA
Reproduction Repo
No response

This has been fixed. Thanks for the report!
Check out this PR for more details / reasoning: https://github.com/vercel/turbo/pull/6268


Install @stacks/cli got an error: zlib: incorrect data check

I use npm install --global @stacks/cli and got an error: zlib: incorrect data check

My node version is 16.20.2, my npm version is 8.19.4
What should I do? Please help me, thanks.

I have solved this prolem, I should update node to v18.


Please provide a concrete example

Could you provide an example how to use this tool? Let's assume that I'm having a websocket connection already initialized and it is running on port 5000. Relying on the code I assume that it should create a tcp connection on the specified tcp address and should look at the websocket connection specified with the -p flag. My expectation is to receive the values (for example using netcat (nc) sent over the websocket to be consumable over tcp, in other words to receive the values from the websocket connection. But unfortunately is not happening.

I figured it out myself. I'm writing this down for others who are facing the same situation.
The problem was that I was already running a webserver on the specified port and for this reason I was getting a websocket type connection error. So in order to make this tool work what you only need to do is to instantiate a websocket (not web!) server on a specific port and afterwards running ws-tcp-relay by pointing with the --port flag to that specific port. Then you can listen on the specified tcp port for the incoming messages (by using netcat for example).

I use a web (using websocket) to send a string to the tcp server and the tcp server when receiving the string sends another string to that web. I send string to server successfully but when sending from server to web it fails. I use web-tcp-relay on the client side (on laptop). Is there a way for the web to receive the string from the server ?


my custom model cannot detect some special character classes " - " (hyphen) or "." (point)

i set
character = '0123456789aáàạãảăắằẳẵặâấầẩẫậbcdđeéèẻẹểẽêếềểễệfghiíìỉĩịjklmnoóòỏõọôốồổỗộơớờởỡợpqrstuúùủũụưứừửũữựvwxyýỳỷỹỵzAÁÀẢÃẠĂẮẰẲẴẶÂẤẦẨẪẬBCDĐEÉÈẺẼẸÊẾỀỂỄỆFGHIÍÌỈĨỊJKLMNOÓÒỎÕỌÔỐỒỔỖỘƠỚỜỞỠỢPQRSTUÚÙỦŨỤƯỨỪỬỮỰVXYÝỲỶỸỴZW\/.-:'
and my label test/train .txt  has " - " and "." label too. but my trained model nerver appear " - " or "."
why? thank you.

I'm having the same problem. Hyphen is not appearing.
Its also not showing when the Ground Truth is shown in a checkpoint even though in my dataset every entry has a '-' in it
Did you solve the problem ?

I'm having the same problem. Hyphen is not appearing. Its also not showing when the Ground Truth is shown in a checkpoint even though in my dataset every entry has a '-' in it Did you solve the problem ?

Commenting out these lines solves it


Update codemirror

If https://github.com/codemirror/CodeMirror/pull/5891 passes.

It passed. Waiting for a new release.


The Elastic App SDK is abandoned

Getting the following warnings when installing this module (the guzzle packages are dependencies to elastic/app-search:
Package elastic/app-search is abandoned, you should avoid using it. Use elastic/enterprise-search instead.
Package guzzlehttp/ringphp is abandoned, you should avoid using it. No replacement was suggested.
Package guzzlehttp/streams is abandoned, you should avoid using it. No replacement was suggested.

The suggestion is to move to https://github.com/elastic/enterprise-search-php
This sounds like it would be a smooth transition, which is mostly correct but there's a few hairballs we'll need to solve. For example we have code for updating the schema which is the following snippet:
$response = $this->getClient()->updateSchema($envIndex, $definedSchema);
$this->handleError($response);

We would now write this as:
$schemaUpdateRequest = new SchemaUpdateRequest();
$putSchema = new PutSchema($envIndex, $schemaUpdateRequest);
$response = $this->getClient()->appSearch()->putSchema($putSchema);
$this->handleError($response->asArray());

You may be looking at the above and thinking to yourself, where did $definedSchema go? Well SchemaUpdateRequest doesn't have the ability to be passed any data therefore we can't actually update the schema currently, so we could look at doing something along the lines of (haven't actually tried this yet):
foreach ($definedSchema as $k => $v) {
    $schemaUpdateRequest->{$k} = $v;
}

This feels kind of flakey, and you can also couple it with PutSchema and SchemaUpdateRequest being marked as internal classes
Perhaps we wait for the enterprise client to stabilise a bit? 🤷🏽

@chrispenny #76 has been merged and released - does that close this issue?

Indeed it does! Closing now.


Add input box and forms to main page of Twitter app

Let's add them to provide better user experience.

Done.
https://github.com/bounswe/bounswe2018group6/commit/da3410112f84bf95d59eddf6fce9824c33fae822


[improve][doc] add developers-landing page

Motivation
The Pulsar for Developers content block on the documentation landing page needs to link to this page.
Modifications
Add developers-landing.md
Verifying this change

[X] Make sure that the change passes the CI checks.

Documentation
Check the box below or label this PR directly.
Need to update docs?

[ ] doc-required
(Your PR needs to update docs and you will update later)

[ ] doc-not-needed
(Please explain why)

[X] doc
(Your PR contains doc changes)

[ ] doc-complete
(Docs have been already added)

Preview looks good.

@momo-jun, could you approve this please? Thank you!

@DaveDuggins since this page seems a standalone page, could you share a screen recording about how users jump to this page.

Hi everyone - I'm not clear as to why this is still stuck. None of these checks are related to documentation.

I've approved to run these tests

@DaveDuggins since this page seems a standalone page, could you share a screen recording about how users jump to this page?

You will only come to this page if you click the Pulsar for Developers box on the documentation landing page. Its purpose is to provide outbound links to related topics.  It won't be linked in left-hand navigation. There are several other landing pages like this in development. I'll be posting them in the next week or so.

@Anonymitaet @momo-jun Could you please review?

I suggest you submit another PR to make changes to the getting-started-standalone page so that we don't block add the developers-landing page. They're two topics.
Right now I agree on wording changes on the getting-started-standalone page , but second @Anonymitaet's comment #17284 (comment) and have one more question #17284 (comment)

I hadn't intended for all these changes to be together in a single PR.  I am still learning how to use Git. I apologize for any confusion.

@momo-jun, could you please do a final review and merge this PR if everything looks good? Thank you!

After discussing with Dawn, I have further clarification on the issue of using h2 paragraph headers as steps. It is good for blog posts but is not used in technical writing. It does not conform to the Information Architecture agreed on by the community. h2 is for topic subheadings and procedure titles. This example conforms to our IA:
https://docs.google.com/document/d/1rKmmJ5oj-fiK2uwYScqU7aiOys7q-fTjjJeLPCZcxfI/edit

@tisonkun @Anonymitaet have your concerns been addressed?


Feature help library

Working demo with setup instructions can be found here:
https://github.com/Blackbaud-BrandonJones/bb-help-test-skyux2

Codecov Report

Merging #270 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #270   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          57     57
  Lines        1344   1349    +5
  Branches      200    202    +2
=====================================
+ Hits         1344   1349    +5

Flag
Coverage Δ

#builder
100% <100%> (ø)
:arrow_up:

#runtime
100% <ø> (ø)
:arrow_up:

#srcapp
100% <100%> (ø)
:arrow_up:

Impacted Files
Coverage Δ

runtime/config.ts
100% <ø> (ø)
:arrow_up:

src/app/app.component.ts
100% <100%> (ø)
:arrow_up:

lib/sky-pages-module-generator.js
100% <100%> (ø)
: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 bcc15e0...e631fcc. Read the comment docs.

Is the description of this PR still accurate @Blackbaud-BrandonJones?

Nope sorry, will update.  This PR is now entirely self sufficient.

Updated and ready for your review @Blackbaud-BobbyEarl


Settings scroll when you start typing in Ignored Names area

Every time I go to add a file to Ignored Names the settings page scrolls to the bottom on me and I have to manually scroll back up.

This is happening again in 1.8.0

+1 - I'm seeing this issue in v1.8.0


[BUG] OB2 Updater error

Hi, i get an error when i try to update OB2 because there is a new update.
I close the instance, close OB2 windows then i open Updater.exe and i get this error message :
"[1/6] Fetching version info from remote... Failed! Accessed JArray values with invalid key value: "name". Int32 array index expected."
I can't update OB2.
Someone knows what to do in this case please ?

Updater of 0.1.0 is broken, redownload 0.1.1 from scratch and then in the future it will work


Modal appearing  backdrop  non editable.

i using one component in other component However, my modal is appearing underneath the grey fade (backdrop) and is non editable.
    <button class="btn btn-success" (click)="lgModal.show()">Large modal</button>

            <button class="close" (click)="lgModal.hide()" aria-label="Close">
              ×
            </button>

Large modal

           suscipit lobortis nisl ut aliquip ex ea commodo consequat.

            <button class="btn btn-primary confirm-btn" (click)="lgModal.hide()">Save changes</button>

@Component({
  selector: 'ba-page-top',
  styles: [require('./baPageTop.scss')],
  template: require('./baPageTop.html'),
  encapsulation: ViewEncapsulation.None
})

Othercomponent.html
<ba-page-top></ba-page-top>

ng2 bootstrap version?

"ng2-bootstrap": "1.1.16",

"ng2-bootstrap": "1.1.16",

Check changelog for migration notes and install 1.1.16-11

updated version still problem not resolved? any other solution

I just had this issue and tracked it down to a parent element of the modal having position: relative and a z-index lower than the backdrop. (There was a bootstrap issue about it raised a while ago)
I fixed it by removing the z-index on the parent element.

We are experiencing the same issue with the latest Firefox (50.1) under Linux (maybe OS is not relevant). Raising the z-index have not helped us.
It seems to be an issue, if one of your elements is within an element with relative css position. We could not find any workarounds for this until now.
Although we don't have this problem under Windows with an earlier version of Firefox.

@Betrozov you was facing this styling issue too
can you help guys with it?

I guess I have the same issue. The z-index of the modal div is way higher then the z-index of the backdrop overlay. Still if I open the modal, the modal is behind the backdrop. Is there any solution for this problem?

On which OS and with which browser do you have this problem?
The only workaround I found, is turning off the backdrop.
I think this has to be fixed in ng2-bootstrap.

Im on Win10 using Chrome v56. Tested it in Edge aswell and had the same issue.

@Tommytoe
You can disable the backdrop with the ModalOptions
http://valor-software.com/ng2-bootstrap/#/modals#modal-options
I.e
[config]="{backdrop: false}"
like:

My problem is fixed.
It seemed that the modal conflcted with a styling of another component in my page.
i used this sidebar: https://github.com/arkon/ng-sidebar
Wich had a styling display: block. When I changed block to inline, the modal was displayed correctly, above the backdrop.

Having the same problem here.
Modal does not have any parent containers with relative positioning properties, and is a has a much greater z-index than the backdrop. Strangely, removing the z-index property from the backdrop causes the z-index of the much higher title-bars to overlay the backdrop, and the modal to show through, even though the modal is not a child of the title-bars.

@devongermano remove Fade In

@sridharan31: Thank you for the Idea, but I think the classes like 'fade' and 'in' come from the ng2 components / directives. How could you then remove them?
Anyway, if you remove 'fade', then you don't have animation. It would not be nice, either.

Before tweaking z-index to horrible high values, one have to really understand "stacking context".
Here is a very good explanation: https://philipwalton.com/articles/what-no-one-told-you-about-z-index/
This problem is not a trivial one, believe me. The most robust solution would be to "teleport" the DOM content of the modal to  level as a neighbor of the inserted <bs-modal-backdrop> element with a higher z-index (e.g. 1050 while backdrop has 1040).
In times of AngularJS 1.x this usually wasn't possible because of $scope chaining. I'm not sure how complicated this would be with Angular (2+).

In case it helps: I experienced this issue when an ancestor element had a transform style ( left behind after an angular animation  ) -
e.g. style="transform: translateX(0px);"
I was able to remove this style and fix my issue.
version: ng2-bootstrap: 1.6.2
I agree "teleporting" the modal to  level would be more robust, does the container="body" option of the dropdown component not do something similar?

I had similar code to the original post, and my modal was appearing behind the overlay. I've put a work around that moves the modal element in the dom (in my case, I have an input 'elementId' in my component, and I use that to give the modal div an id) :
ngAfterViewInit() {
document.body.appendChild(document.getElementById(this.elementId + '-image-modal'));
....

Yes @mip1983 's solution works for me. Thanks!

@mop1983 I was thinking about it

solved in v1.8
and it is better to use modal service now


Update MRTK3 ObjectManipulator so transformSmoothingLogicType changeable, similar to ManipulationLogicTypes

Overview
In MRTK3 a developer can change ObjectManipulator's default manipulation logic by setting ManipulationLogicTypes.  We should have something similar for ObjectManipulator's transformation smoothing logic by exposing transformSmoothingLogicType
Parent Task

https://github.com/microsoft/MixedRealityToolkit-Unity/issues/11078

@marlenaklein-msft have completed this already


TLS Support

Implements TLS Support for PostgresBackend. Feature now exposed in proxy, tests coming in a separate PR.
Feel free to review rustls-split as well
TODO

[x] lots of miscellaneous cleanup
[x] force SSL
[x] re-enable BufReader
[x] PostgresBackend unit test

To address in separate PRs

[ ] removed repeated code between pg_backend and proxy
[ ] proxy integration tests (will do in a different PR)

Thanks for taking a look @sharnoff
I have cleaned up proxy and renamed the structs in `zenith_utils
rustls-split could certainly use some more comments. It also desperately needs docs to become a useful crate. I'll get on that


[Macros] Improve visitation of auxiliary decls

Don't visit auxiliary decls in PrintAST::visit(Decl *) this function is only intended for single decl printing. The caller should visit the expanded decls separately. For that, add ModuleDecl::getTopLevelDeclsWithAuxiliaryDecls().
This fixes an assertion failure where cursor-info would fail if a peer macro expands to a pattern binding decl.
For iterating decls that might have macro expansions, use the same pattern as getAllMembers(). This supports nested macro expansions:
std::function<void(Decl *)> visit;
visit = [&](Decl *d) {
  doIt(d);
  d->visitAuxiliaryDecls(visit);
};
for (auto *d : decls)
  visit(d);

@swift-ci Please smoke test


Add a troubleshooting doc for cdk deployment

There are a number of ways a deployment can go wrong.  It's time for a troubleshooting guide in the docs folder referenced in the subproject README

For now adding in README. cleanup in separate doc will come after


add assembly view

add assembly view
/claim #62
https://github.com/user-attachments/assets/c4053153-a46c-4a3a-a72e-e38da6ba42ee

@techmannih the assembly viewer is now published

@techmannih you can resolve merge conflicts following this guide https://github.com/tscircuit/handbook/blob/main/guides/basics/learn-git.md#resolving-bunlockb-conflicts


Add SSH key to Debian on AWS Pulumi program

The Pulumi program found in debian/debian-pulumi-aws relies on a configuration value for the SSH keypair to be used. This required configuration value can be removed by updating the program with two new resources (an SSH key and an AWS keypair).

Fixed via #152


duplicate after cursor on edges

"after cursor" is still included in the results of edges, as far as I know "after cursor" is no longer included in the results of edges.

Hey @darwinhace , thanks for reporting this. Just fixed the issue and it it being released as I write this to you on version 0.8.

hey @bellini666, thx for the response, after is working now, but now when using arguments {last: 2, before: "..."}, one node missing from edges:
before using arguments:

after using arguments:

cursor: "YXJyYXljb25uZWN0aW9uOjE=" missing from edges,
when I remove "-1" from this code it is work as expected
  if before:
            before_type, before_parsed = from_base64(before)
            assert before_type == _connection_typename
            end = min(end, int(before_parsed) - 1)


Image vibrate in slideshow (like Wikipedia) and Chromium crashes

Hello! Image begin to vibrate in slideshow (like Wikipedia) and Chromium crashes. Nothing to do to exit except using Xkill. Here in a recipes page.
I add an animated gif:

Version 100.0.4896.127 (Official Build, ungoogled-chromium) Arch Linux (64 bits)

Does this occur on vanilla chromium? Does the issue still persist on the current ungoogled-chromium version? Can you link a page on which the issue occurs?

I'd suggest you upgrade to the latest uc version an test if the issue persists.

Hi. I had this problem already with previous versions but not with the Flatpack version. Most often this happens in a Wikipedia slideshow. Example: https://en.wikipedia.org/wiki/Chromium_(web_browser)#/media/File:Chromium_about_page_22nd_April.png
During the recent issue, the recipe page was translated with Google Translate in French: https://www-thespruceeats-com.translate.goog/british-desserts-puddings-4162566?_x_tr_sl=en&_x_tr_tl=fr&_x_tr_hl=fr&_x_tr_pto=wapp
No, it's not Vanilla: Version 100.0.4896.127 (Official Build, ungoogled-chromium) Arch Linux (64 bits)
My computer is a Brix Gigabyte GB-BXBT-2807 with only 4 Gb ram (exactly 3,7 mb. The second ram is dead). My Linux is Manjaro.
PS: what is UC version ?
Good evening.

I bet it is this Chromium bug: https://bugs.chromium.org/p/chromium/issues/detail?id=1301067
Should be fixed in 102.

OK. I tried to update it, but the compilation was interminable. After 6 hours it was at only 20%. I stopped. I will look for a pre-compiled package. I understood for the bug. Thank you for your help.

This issue is finally fixed in 102:
https://user-images.githubusercontent.com/10319700/169654954-6aded8d2-1481-4a15-a32b-b1f923d3c41d.mp4


Viet - fix bugs for CR Delete Facility and CR with multiple CR types, add description for MTFI card

Description

Types of changes

Checklist

[ ] I have read the CONTRIBUTING doc
[ ] I have checked that unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Further comments

CCFRI-2467, CCFRI-1978


Investigate maintaining stack trace for async calls

It is currently really hard to debug based on stack traces as they are "disconnected" from the initial calls due to the async nature of execution. See if we can maintain the call stack to reflect this in any thrown exceptions.

No longer an issue as the execution model was switched to synchronous


Calendar Plugin not working when you have 2 calendar set

Maybe create the issue on the Calendar's project page rather than here?


Example required.

I am new to WRF. This is the exact script I was looking for automating WRF run. Installed WRF successfully by follwoing this link http://www2.mmm.ucar.edu/wrf/OnLineTutorial/compilation_tutorial.php . That is the method recommended by ucar as well. Why dont you show as some real case exaple - starting from grib data download to getting analysed graphical output products (ofcours using wrftools).

Very good point. The documentation has lagged behind the code development somewhat. I'll try and put a complete example up, and it would be good to know whether you are able to use the tool, as currently it has only been me using it.

Well, I have not tried but will do that when I get time. I have a suggestion. People like to have a ready-made package of any software program. Therefore, why don't you include a install/uninstall script to make everything automated, atleast python portion of it. As I mentioned earlier, step by step example by using downloaded grib files is greatly appreciated (keep in mind about the installation directories as mentioned in the first post).


Add new terminal and in-flight icons

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Resolves: #161
Summary:
Please summarize the scope of the changes you have submitted, what the intent of the work is and anything that describes the before/after state of the project.

Type of change:

[ ] New capability
[ ] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[x] New icons

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


CloseMicrowave2 task does not converge

Hi, thank you for your work.
I was trying to train a model for task Closemicrowave2, but it does not converge.
Could you please let me know the version of RLbench you installed?
And any other advice on the training process? I just followed the command in  run_exps.sh
python3 ./option_gail_learn.py --env_type rlbench --env_name CloseMicrowave2 --use_option True --use_c_in_discriminator True --n_demo 1000 --device "cuda:0" --use_state_filter True --tag option-gail-1k
Thanks a lot!

Hi, the rlbench I used for this exp is at https://github.com/id9502/RLBench.git. The problem you found is a flaw in the original paper: the CloseMicrowave2 task has difficulty converging with most IL/HIL methods, where the success rate may reach high values at first, but jitter as training progresses. Comparing on this environment is mainly to show which method can achieve a higher success rate earlier, so the comparison is made by the maximum avg-r-sum, or in other words, the highest avg r-sum value along the training progresses.


Added a set_frame method to OrbitPlotter2D

Fixes #483  and #480

I will add some tests.

Added tests! Still failing !
E   ImportError: No module named 'sphinx_rtd_theme'
Circle CI says this. Probably something to do with #487 :confused:

Closing this for #481


Explorer not working

Issue Type: Bug
When mouse wheel scrolling over files in explorer, it shows files at different positions.
VS Code version: Code 1.28.1 (3368db6750222d319c851f6d90eb619d886e08f5, 2018-10-11T18:09:20.566Z)
OS version: Linux x64 4.15.0-32-generic

System Info

Item
Value

CPUs
Intel(R) Core(TM) i3-4005U CPU @ 1.70GHz (4 x 1661)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: disabled_softwarevideo_decode: unavailable_softwarevideo_encode: unavailable_softwarewebgl: enabledwebgl2: enabled

Load (avg)
2, 1, 1

Memory (System)
7.70GB (1.98GB free)

Process Argv
--unity-launch

Screen Reader
no

VM
0%

Extensions (8)

Extension
Author (truncated)
Version

vscode-eslint
dba
1.6.0

php-debug
fel
1.12.6

php-intellisense
fel
2.3.5

Angular2
joh
6.3.0

python
ms-
2018.9.0

cpptools
ms-
0.19.0

debugger-for-chrome
msj
4.10.2

vscode-icons
rob
7.27.0

Please provide detailed steps for how to reproduce the problem.

When I scroll over file explorer using mouse wheel, files and folders are shown at different locations. Like when I scroll fast, files at top are shown at bottom, but they are actually at their locations only.

Duplicate of a tree issue @joaomoreno is aware off and can provide a pointer if needed.


ability to add contrast to tab bar

When using the split pane it is very difficult to tell apart the pane from the text area.

It would be nice to add a border to the top or have the ability to increase the contrast to tell the difference.

Thanks for your improvement suggestion :+1:
There are also already many notes on how to improve the UI in the backlog, but unfortunately my free time to work on my projects is rare due to study and job at least until July. I'll add a new note for this improvement. The plan is to implement something like the Material theme to use shadows and contrast differences for more depth that users can enable though the theme settings.

+1 for this, would be very helpful :)

I'd like to work on this, please.