myst build --execute doesn't re-evaluate Markdown cells with {eval} directive

Description
When running myst build --execute, Markdown cells with {eval} directives are not re-evaluated which leads to out-of-date output.
Versions
As installed from conda-forge conda channel:
jupyterlab                4.2.4              pyhd8ed1ab_0    conda-forge
jupyterlab-myst           2.4.2              pyhd8ed1ab_0    conda-forge
mystmd                    1.3.5              pyhd8ed1ab_0    conda-forge

Reproduction

Create a new directory for the purposes of bug reproduction: mkdir myst_repro
Enter this directory: cd myst_repro
Initialize a MyST project: myst init, answer n to the suggestion to run myst start
Run JupyterLab with a jupyterlab-myst extension installed and enabled: jupyter lab
Create a new Python Jupyter Notebook
Create the first cell: a code cell with code a = 3
Evaluate this cell, there is no output
Create the second cell: a Markdown cell with code

{eval}`a`

Evaluate it once, the symbol a is rendered as a regular code block (see bug https://github.com/jupyter-book/jupyterlab-myst/issues/175)
Evaluate it again, value 3 is rendered
Change the first cell to read a = 5, evaluate it
Save the Notebook, shutdown Jupyter Lab
Observe that in the Notebook's textual representation the second (Markdown) cell is recorded as

{
   "cell_type": "markdown",
   "id": "f521db5a-a795-4091-9e9b-51020f109334",
   "metadata": {
    "user_expressions": [
     {
      "expression": "a",
      "result": {
       "data": {
        "text/plain": "3"
       },
       "metadata": {},
       "status": "ok"
      }
     }
    ]
   },
   "source": [
    "{eval}`a`"
   ]
  }

Run myst build --execute, observe the line starting with "Executing notebook..." in the output
Run myst start, open the URL printed in the output with your browser
Observe that the code cell reads a = 5, but the Markdown cell is rendered as 3
Run Jupyter Lab again, open the same Jupyter Notebook, select "Kernel -> Restart kernel and run all cells" from the menu
Observe that the Markdown cell has been re-rendered to 5

Thanks for this reproducer @srprca.
What's happening here is technically not a bug, rather a confusion with how execution works. This doesn't mean that we shouldn't change something in mystmd to clarify this.
JupyterLab's MyST extension has to store user-expression results in the cell metadata in order to persist them. mystmd knows how to pull out those outputs, and regular code cell outputs, from the .ipynb into the MyST document.
When you use mystmd build --execute, we overwrite those outputs in our AST with execution results. If we do not need to re-execute the notebook, then we re-use our cached outputs. Crucially, this cache is entirely separate to the .ipynb file altogether.
So, when you write myst start without --execute, you're effectively ignoring our execution cache, and re-using whatever is in the notebook.
There are bigger questions about whether the execution cache should be configurable and/or more standardised, and I think this UX question ties into it.

Hey @agoose77 👋🏻 I actually have run into this as well. I do understand there are more significant questions associated with it!! BUT from a user perspective, it's unexpected and appears to the user as a bug. Even if, technically, it's not a bug in terms of how Jupyter works! I am not sure what the solution is, but could mystmd "rerender" markdown cells too when you run execute, or is there some command that would do that for the user? I have had to continually "run" markdown cells. I could be confused here too. just noting it's a pain point for a user while appreciating the complexity on the dev side of things.

@lwasser could you clarify your point regarding rerunning markdown cells? Mystmd will always run cells and expressions if they have changed (and you set - -execute

@lwasser, I believe the main conclusion from @agoose77's explanation is that unless you pass --execute to myst start, it will just re-use whatever is stored in the Notebook file. If you haven't explicitly re-evaluated the Markdown cells with {eval} directives in your Notebook from JupyterLab interface, what is stored in the Notebook will be outdated. Both myst build --execute and myst start --execute will re-evaluate everything in the Notebook, including such cells, but if you simply run myst start without --execute, mystmd will just use whatever is already stored in the Notebook, regardless of any prior calls to mystmd build --execute.
@agoose77, I wonder if it would be possible to document this somewhat counter-intuitive behaviour? I believe a typical user will have an expectation that myst start will serve whatever was previously built by myst build ..., unless explicitly overriden by arguments to myst start. If myst start instead works independently of myst build, perhaps this can be mentioned in myst start --help...?

It's true that we don't document this nuance strongly enough, but it looks to me as though we might need to change the behavior altogether. This is clearly an unintuitive UX given that two people have encountered it.
A nice feature of MyST's execution cache is that it's always clear whether the cached state is up-to-date. Whereas, an ipynb does not have any way of guaranteeing that the input of a code cell/expression matches the output saved in the notebook.
That said, it feels the execution pipeline being one-way (not writing the cache back to the notebook) is the right move, so I'm not sure what the next step will be here besides improvement of our documentation in the near term.


Inquiry of source code location for the feature, "Application Upgrade"

https://github.com/ccc-certifier-framework/certifier-framework-for-confidential-computing/blob/main/Doc/CertifierFramework.pdf
I am looking into the slide on page 8. Could you point me which source files correspond to the feature, "Application Upgrade"? Providing the source code location of an example with that would be much appreciated.
Thank you.

Discussed with @jlmucb in monthly meeting. He has info that can answer this question. John will update this space to communicate requested info to @bokdeuk-jeong

@jlmucb
John, I'm leaving this message to check if you are available to respond.

I'm back on now


Download Sample Data button not working(gives 404 error)

Hi Team,
The "Download Sample Data" button here is not working and gives us "404 not found error". Can you please help fix the link?
Snowflake Guide in Question : Getting Started with SnowSQL

Fixed


More API streamlining for v2

Resolves #1142. Deprecations for v1 to prep for these changes are in #1146. This PR:

moves the utils_graph module's get_digraph, get_undirected, graph_to_gdfs, and graph_from_gdfs functions to a new convert module that houses data type converters
moves the utils_graph module's remove_isolated_nodes and get_largest_component functions to the truncate module
moves the utils_graph module's route_to_gdf function to the routing module
move the speed module's functionality to the routing module
deletes the now-empty utils_graph and speed modules
renames the functions get_largest_component -> largest_component,  get_undirected -> to_undirected, and get_digraph -> to_digraph

The first pre-release OSMnx v2 beta has been released. Testers needed! See #1123 for details.


Consider production server with GCP Cloud Run

I'd like to consider using Cloud Run in GCP to deploy CodeWorld.  This would require building a docker container for the CodeWorld image, and then setting up Cloud Run behind a load balancer to serve the site.
Advantages:

Autoscaling, so that I never max out server capacity.
Lower costs, since resources would be scaled down outside of school hours when few people are using the platform.
A managed release process that separates development from production.

Looking at https://cloud.google.com/products/calculator/ makes this look very appealing.  I estimate server costs add up to about $30 / month (down from about $140 / month now).  This is worth doing just for the cost alone.
For the record, on a busy day, I observed 100K requests per day, 8K of bandwidth and 750 ms per request, and I estimate that a container needs 1 vCPU and 1 GB RAM to handle one request at a time.  This is taking into account that almost all requests are either /errorCheck (61K per day) or /compile (8K per day), both of which invoke GHCJS, although the former passes -fno-code, which reduces load quite a bit.

Chris, I can try to dockerize the install though some pieces still look a bit unclear to me.

Do you have a feel for what kind of base image Code World might require? Would something minimal like fpco/pid1 work?
Do you intend to move TLS certificates to GCP frontends? I don't think there's any other way.
Do you have any other secrets needed at runtime? They will need to move to GCP secret store.
What's the current setup like? I want to understand the scaling characteristics.

Some answers for you!

I don't know enough about Docker to answer this question.  The install.sh script in the base of the repo is intended to be enough to install CodeWorld on most minimal Linux installations. It invokes the appropriate distribution-specific package manager to install various non-Haskell libraries, ghcup to install GHC and cabal, then installs a patched version of GHCJS.  I suppose you could start with a base image that provides everything through GHC and cabal, but anything after that is custom.

Yes, I'd plan to terminate TLS with a GCP load balancer.

The only other secret is the github auth token used for sending bug reports via the codeworld-feedback github user.  Also, there's the GCP client id, which isn't a secret -- you can find it at https://code.world/clientId.txt -- but it does need to be in the image and not in the repository.  If code changes are made to read this from a GCP API, that's fine, but they will need to be made optional, since others run the CodeWorld server from the same project and don't use GCP.  It's okay if the github reporting functions just don't work at all for them.

It's currently running on one server: n1-standard-4 (4 vCPUs, 15 GB memory)

Now that I have a successful install, I am trying to understand which parts of the tree are required for serving. While I don't see any direct indication that the total container image size is limited, it would still be nice to package up just the required files. If nothing else it will be faster to build (and deploy). We can start by enumerating the files which are known to not be needed for serving.
Here's the list of second level directories with their sizes:
gnezdo@codeworld:~/codeworld$ find . -mindepth 2 -maxdepth 2 -type d | xargs du -sh
272K    ./data/codeworld
13M     ./data/base
492K    ./data/haskell
8.0K    ./data/blocklyXML
32K     ./codeworld-account/src
1.3M    ./codeworld-account/dist
12K     ./.github/ISSUE_TEMPLATE
68K     ./codeworld-requirements/src
5.0M    ./codeworld-requirements/dist
8.0K    ./codeworld-base/jsbits
216K    ./codeworld-base/src
47M     ./codeworld-base/dist
540K    ./codeworld-compiler/test
12K     ./codeworld-compiler/exec
120K    ./codeworld-compiler/src
80M     ./codeworld-compiler/dist
284K    ./web/js
1.5M    ./web/help
68K     ./web/css
4.0K    ./web/ims
40K     ./codeworld-game-server/src
33M     ./codeworld-game-server/dist
4.0K    ./build/progress
3.3M    ./build/share
121M    ./build/CodeMirror
189M    ./build/bin
4.0K    ./build/downloads
1.7G    ./build/.ghcup
1.8G    ./build/ghcjs
1.6G    ./build/lib
20K     ./codeworld-prediction/tests
44K     ./codeworld-prediction/src
2.3M    ./codeworld-prediction/dist
576K    ./codeworld-api/data
8.0K    ./codeworld-api/test
12K     ./codeworld-api/jsbits
236K    ./codeworld-api/src
199M    ./codeworld-api/dist
12K     ./codeworld-game-api/src
836K    ./codeworld-game-api/dist
57M     ./.git/modules
76K     ./.git/logs
48K     ./.git/hooks
4.0K    ./.git/branches
7.7M    ./.git/objects
8.0K    ./.git/info
68K     ./.git/refs
60K     ./codeworld-auth/src
16K     ./codeworld-auth/app
16M     ./codeworld-auth/dist
8.0K    ./codeworld-error-sanitizer/test
16K     ./codeworld-error-sanitizer/src
2.6M    ./codeworld-error-sanitizer/dist
48K     ./codeworld-server/src
108M    ./codeworld-server/dist
72K     ./third_party/MaterialDesign
16K     ./third_party/details-element-polyfill
31M     ./third_party/blockly
1.1M    ./third_party/SourceCodePro
16K     ./third_party/codemirror-buttons
128K    ./funblocks-client/src
14M     ./funblocks-client/dist

Okay,, here's a start:

All of ./web is needed for serving.
./web links to these, so they are needed transitively:

./build/CodeMirror
./build/bin/funblocks-client.jsexe
./codeworld-base/dist/doc/html/codeworld-base
./codeworld-api/dist/doc/html/codeworld-api/
./third_party/blockly
./third_party/MaterialDesign
./third_party/SourceCodePro
./third_party/codemirror-buttons
./third_party/details-element-polyfill

A fair amount of ./build is probably needed to run GHCJS.  Not all is needed, but this includes all the GHCJS package repository stuff, and I'm not sure it's worth sorting out what is and isn't needed there.
All of ./data should be mounted from NFS on the production server, so it should NOT be in the image.

The actual server binary is installed into ./build as well, so of course that's needed.


Errors with RVM during vagrant up, following the quick start

I've tried three times to follow the Quick Start to eval the snowplow platform. Each time, there's an error during ruby-rvm provisioning, which causes the entire process to abort. I'm not entirely certain what the issue is here, but given that I just wanted to quickly evaluate the platform, it's a disincentive to continuing.
Here's the latest error.
==> default: ===================
==> default: CONFIGURING ANSIBLE
==> default: -------------------
==> default: ... done
==> default: ==========================================
==> default: RUNNING PLAYBOOKS WITH ANSIBLE*
==> default: * no output while each playbook is running
==> default: ------------------------------------------
==> default: Setting up Ansible to run out of checkout...
==> default: PATH=/vagrant/vagrant/ansible/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
==> default: PYTHONPATH=/vagrant/vagrant/ansible/lib:
==> default: ANSIBLE_LIBRARY=/vagrant/vagrant/ansible/library:/usr/share/ansible/
==> default: MANPATH=/vagrant/vagrant/ansible/docs/man:
==> default: Remember, you may wish to specify your host file with -i
==> default: Done!
==> default:
==> default: PLAY [vagrant] ****************************************************************
==> default:
==> default: GATHERING FACTS ***************************************************************
==> default: ok: [<IP_ADDRESS>]
==> default:
==> default: TASK: [base | Update apt cache] ***********************************************
==> default: ok: [<IP_ADDRESS>]
==> default:
==> default: TASK: [base | Update all packages] ********************************************
==> default: ok: [<IP_ADDRESS>]
==> default:
==> default: TASK: [base | install basic packages] *****************************************
==> default: changed: [<IP_ADDRESS>] => (item=curl,vim,libxslt1-dev,libxml2-dev,zip,libssl-dev,unzip,python-pip,python-psycopg2,apg,mercurial,git,python-dev)
==> default:
==> default: TASK: [base | Ensure that ansible_cache_dir directory exists] *****************
==> default: changed: [<IP_ADDRESS>]
==> default:
==> default: TASK: [base | Add Google DNS nameserver] **************************************
==> default: changed: [<IP_ADDRESS>]
==> default:
==> default: TASK: [base | Update nameserver list] *****************************************
==> default: changed: [<IP_ADDRESS>]
==> default:
==> default: TASK: [ruby-rvm | Prepare | Get the current users name] ***********************
==> default: changed: [<IP_ADDRESS>]
==> default:
==> default: TASK: [ruby-rvm | Prepare | Get the current users group] **********************
==> default: changed: [<IP_ADDRESS>]
==> default:
==> default: TASK: [ruby-rvm | Install | Ensure dependencies installed] ********************
==> default: changed: [<IP_ADDRESS>] => (item=curl,libpq-dev,ruby-dev)
==> default:
==> default: TASK: [ruby-rvm | Install | Ensure RVM signature is installed] ****************
==> default: failed: [<IP_ADDRESS>] => {"changed": true, "cmd": "gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 ", "delta": "0:00:01.195965", "end": "2017-08-10 14:50:09.236836", "rc": 2, "start": "2017-08-10 14:50:08.040871"}
==> default: stderr: gpg: directory `/home/vagrant/.gnupg' created
==> default: gpg: new configuration file `/home/vagrant/.gnupg/gpg.conf' created
==> default: gpg: WARNING: options in `/home/vagrant/.gnupg/gpg.conf' are not yet active during this run
==> default: gpg: keyring `/home/vagrant/.gnupg/secring.gpg' created
==> default: gpg: keyring `/home/vagrant/.gnupg/pubring.gpg' created
==> default: gpg: requesting key D39DC0E3 from hkp server keys.gnupg.net
==> default: gpg: no valid OpenPGP data found.
==> default: gpg: Total number processed: 0
==> default: stdout: ?: keys.gnupg.net: Host not found
==> default: gpgkeys: HTTP fetch error 7: couldn't connect: Success
==> default:
==> default: FATAL: all hosts have already failed -- aborting
==> default:
==> default: PLAY RECAP ********************************************************************
==> default:            to retry, use: --limit @/home/vagrant/ruby-rvm.retry
==> default:
==> default: <IP_ADDRESS>                  : ok=10   changed=7    unreachable=0    failed=1
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.

Did you check out rvm/rvm#3544 ?

I just read it and spent a few minutes trying to fix the issue. Sounds like the provisioning script needs to be updated to a more recent version of GPG? I'm not behind a firewall that would cause a problem with this.

I just wanted to quickly evaluate the platform

The quickstart is for starting development work on the codebase, not for running Snowplow (we have plenty of pre-built binaries in Bintray and artifacts in S3 for that)...

Please use GPG v2 for downloading the keys, RVM itself will work fine with both GPG v1 and v2.

no more vagrant, closing


Create SeqTaxDB for GTDB

Hi,
I have seen that in the mmseqs user guide, there is a part about how to preprocess the GTDB database. I am still confusing after reading that. I want to ask if there is more details about how to build the database from the latest GTDB data (https://data.ace.uq.edu.au/public/gtdb/data/releases/release202/202.0/)  for mmseqs taxonomy?
Thanks for your any suggestions.
Sincerely
Shaojun

You should be able to just call:
mmseqs databases GTDB gtdb tmp

And it will download and setup the latest release for you.

Thanks! For some reason, I want to remove some genomes from GTDB and build the reference genome from that for mmseqs taxonomy. How can I do that?
Sincerely
Shaojun

You can copy the steps we do in the databases workflow to create this database in this file:
https://github.com/soedinglab/MMseqs2/blob/13-45111/data/workflow/databases.sh
Look for the "GTDB" string.
The easier solution is probably to just create the gtdb with the command I mentioned, then look up all genomes you don't want in the _names.dmp file we create. And remove them with:
mmseqs filtertaxseqdb gtdb gtdb_subset --taxon-list "!first_id&&!second_id&&...."

This should work well for the latest release (13), however we changes some things in git mmseqs (names.dmp is not created by default anymore) so will be harder there.

Thanks! I will try that.

@milot-mirdita
Was this database built with just representatives from GTDB?

The databases workflow downloads this file:
https://data.ace.uq.edu.au/public/gtdb/data/releases/latest/genomic_files_reps/gtdb_proteins_aa_reps.tar.gz

@milot-mirdita How can I build this database if I already have GTDB downloaded for GTDB-Tk?

I have not looked into the database format of GTDB-Tk. I would recommend to use the workflow. For our new taxonomy classifier Metabuli, we provide a prebuilt GTDB.


chore: Fix scheduler extender ARM64 build

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Fixes the ARM64 build of the scheduler extender to actually build an ARM64 binary.
Which issue(s) this PR fixes:

Requirements:

[x] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] tested upgrade from previous version

Special notes for your reviewer:
Release note:
none

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
182

Relevant Lines:
424

💛  - Coveralls


Limit Pivot Role S3 permissions

🆕  [UPDATED WITH THE FEEDBACK FROM COMMENTS]
Is your idea related to a problem? Please describe.
Currently the data.all pivotRole requires permission to all S3 Buckets and KMS keys in the AWS account
Describe the solution you'd like
A solution in which access to the data on S3 buckets is restricted to specific roles only. We would like to prevent any data access from other accounts, especially if the pivot role gets compromised.

Analysis of roles in data.all
In data.all central account

role
used in

graphql-role
Graphql Lambda function

worker-role
Worker Lambda function

esproxy-role
OpenSearch proxy Lambda function

ecs-role
ECS tasks

In the environment accounts
In addition there is also the cdk execution role used for CDK deployments, but it is not relevant for this issue.

role
creation
permissions
trust policies (assumable by)

Pivot role
If AUTO-CREATE = True it is created as part of the environment stack, otherwise it is manually created
Read and write permissions to the TEAM-OWNED dataset buckets and to the Glue databases and tables + permissions to work with the enabled modules, but only to the TEAM-OWNED resources based on resource policies and
by graphql-role, worker-role and ecs-role from the central account

Environment teams' Roles
As part of the environment stack, one for each team that is added to the environment
Read and write permissions to the TEAM-OWNED dataset buckets and to the Glue databases and tables + permissions to work with the enabled modules, but only to the TEAM-OWNED resources based on resource policies and tags.
by several module services + by the pivot-Role in the account

Dataset Role
As part of the dataset stack, for both imported and created datasets
Read and write permissions to the dataset bucket and to the Glue database and tables of the dataset + it can write profiling results in its corresponding folder in the environment bucket
by Glue + by the pivot-Role in the account

In this diagram we can see all roles and the SDK calls that they need to perform. It includes the changes that we want to implement.

Implementation
To be able to remove the S3 and KMS permissions from the pivotRole policies, we need to remove the need of these permissions and then modify the pivot role permissions. At the moment the pivot role is used to access data in the S3 Buckets in the following features:

As registration role in Lake Formation for the datasets
In the Glue crawlers and profiling jobs as execution role
In the upload functionality
In the creation of Folders
(for a particular customer) it is used to manage S3 bucket policies
others that we are not aware of

Because imported dataset buckets can have any name, the S3 permissions granted apply to ALL buckets. We need to restrict the S3 permissions of the pivot role and the resources for those permissions.
1) As registration role in Lake Formation for the datasets
Because in V1.6 the dataset role was modified, we just need to:

[X] - Modify the Dataset stack and the role used in the registration [1h]
[X] - Modify the Dataset stack and grant permissions to the imported KMS key and S3 bucket to the dataset role [2h]
[ ] - Test how previously created Datasets are registered and can be updated. [8h]

Est. time ~ 2 days
2) In the Glue crawlers and profiling jobs as execution role

[X] Done in V1.6.0 🚀 - The execution role for the dataset crawler and profiling job is the dataset role. The pivot role calls the "startCrawler" API, Glue assumes the dataset role to crawl the data.

3) 4) In the upload and the create folder functionalities (see diagram above)
Option 1: Pivot role in all SDK calls

PROS: easy to implement. No additional trusts from the central account.
CONS: access to data. putObject permissions

Option 2: Dataset role in SDK calls with access to S3

PROS: no putObject permissions needed for pivotRole
CONS: pivotrole can still assume the dataset role, leading to the same situation.

At first I was more inclined to go for option 1 as the pivot role has restricted access to managed buckets only needed to implement point 5). But after having a look at the code implementing option 2 is quite simple and avoids 'PutObject' permissions for the pivotRole
Est. time ~ 2 days
5) Manage bucket policies
In this case, it is the pivot role the one that needs to execute the updateBucketPolicy api calls. The task is to:

[X]  limit the necessary permission to data.all managed buckets only. This is done by updating the pivot role if it is auto-created when a new dataset is created/imported. We fetch the environment datasets and grant permissions to those buckets only
[ ] Ensure that the pivot role update is triggered with a dataset creation/import
[ ] Test the impact in pre-existing datasets (backwards compatibility)

Est. time ---> not included in the initial estimations
More that we are not aware of
There might be other functionalities that access data from the backend of data.all that in theory seem unaffected, but as this is a big change could break.
E.g. preview data in data.all
Est. time ~ 2 days
In total adding the changes to the pivotRole policies [~2h] and additional testing time, the resulting estimated time to implement this enhancement will take ~ 8 days 🆕 + manage bucket policies

@dlpzx my concerns:

if we use datasetAdmin role for LF then it must only be assumable by LF and definitely by nothing that could potentially be hacked via data.all backend.. We want to make sure that the only way to get access to that role is by compromising the entire account.

file upload (we wont use this feature anyway() if we use datasetAdmin doesn't sound great because it means data.all would be allowed to assume this role directly or indirectly so that's a concern

can you remind me how glue crawlers are being fixed in 1.6.0?

the main concern is that pivotRole would still need access to putBucketPolicy and that would not be limited to imported buckets only. We need a solution for this as well.

Hi @zsaltys I added the missing info in the issue description except for the last point that I need some time. I suspect that you also want to remove the pivot role form the trust policy of the dataset role right?

@dlpzx one thing that needs to be addressed is that pivot role should not have putbucketpolicy permission as it can potentially lead to other permissions. One way to address this would be to allow preregistration of buckets to be managed by data.all in this way not all buckets will be controlled by data.all. let me know your thoughts?

Hi @manjulaK, thanks for the comment! I see tour point, let's see. Our target state would be a pivot role with a policy allowing access or any S3 sensitive action to the data.all created buckets + imported buckets.

That is the goal, but the list of S3 imported buckets can be obtained

a) from the data.all backend directly = if a bucket is imported we add it to the pivot role policy. Similar to what we do with a env-team role.
b) from an RDS table, DynamoDB, any other place. I am less inclined to this option as it adds more complexity

I am assuming we use auto-created pivotRoles that can be updated by data.all backend.
We need to verify if we will face size limitations in the IAM policies for the pivot role. With modularization the policies for the disabled modules are not added to the role, but still if there are hundreds of S3 imported buckets in an environment it might be a bit too much for IAM.

What do you think about option a)?
Can you confirm that you will be using auto-created pivot roles?

hi @dlpzx  thank you very much for looking into this. I think your option a) looks good. can you kindly confirm the following  assumptions:

cdkexec role will be used to import bucket at the time of bucket import the pivot role policy will be tweaked to add the bucket level permissions to the pivot role. 2) pivot role will only be used mainly during sharing folders,buckets ot accesspoint through API and will have s3* sort of access only to the buckets imported into data.all . Addn conditions : a)what happens if imported bucket is deleted outside of data.all  b) what happens if  imported bucket is deleted through data.all

@dlpzx are you also updating this section in the pivotRole to to make sure that data.all only has access to imported KMS keys?
            Action:
              - 'kms:Decrypt'
              - 'kms:Encrypt'
              - 'kms:GenerateDataKey*'
              - 'kms:PutKeyPolicy'
              - 'kms:ReEncrypt*'
              - 'kms:TagResource'
              - 'kms:UntagResource'
            Effect: Allow
            Resource:
              - '*'
      ```

#830 Also needed for this feature

Merged and released with v2.1.0 🚀


Unit testing

[ ] Add unit tests to all the different props available for the Editor component.
[ ] Add unit tests for the EditorContent component.
[ ] Add unit tests for the FormikEditor component.
[ ] Add unit tests for the Menu component.
[ ] Add unit tests for the Attachments component.
[ ] Add unit tests for the isEditorEmpty method.
[ ] Add unit tests for the substituteVariables method.

test _t

@neerajdotname
neetoUI and neetoCommonsFrontend have unit tests for the different components. Can we introduce tests in all the frontend nanos as well? This will increase confidence while rolling out breaking changes.
cc: @akhil-gautam

@AbhayVAshokan Sure. Let's do it. However let's do the work of adding tests only for the nanos that have reached certain maturity status.
Unlike Rails world where we write unit tests while doing the development here we will take up unit tests of nanos only after a nano is stable.

Closing this issue. Will take it up when once major work are complete.


Backport months of work to 4.1

@batter
This took a little while to prepare, and involved a few conflicts. In particular, I had to take care to avoid two things:

Anything incompatible with ruby 1.8, which we still support in PT 4.1
The other breaking change in PT 5.0, namely the removal of the set_paper_trail_whodunnit callback. https://github.com/airblade/paper_trail/pull/556

Please let me know if I included anything I shouldn't have.

Hmm .. I'll have to pull the rubocop stuff out of here, as rubocop requires ruby >= 1.9.3.  I'll do that later tonight.

Whew! I had to fix a few things that were incompatible with ruby 1.8.7, but I think this is finally ready for review.

Thanks to the eight humans and one robot (@orthographic-pedant) who have contributed so far to PT 4.1! :tada: :balloon:

Hey @jaredbeck, I'm on holiday with my family this week so haven't had a ton of time to look at this stuff but will try to take a peek tonight. Looks good on the surface though, I'm guessing you would know better than I what makes sense to backport.

Looks good on the surface though, I'm guessing you would know better than I what makes sense to backport.

Thanks, just let me know if you see anything that looks like a breaking change.
Enjoy the holiday! :christmas_tree:

Mind if I merge this, Ben?

@kaspth Kasper, you had said you were using a fork of 4.0-stable plus https://github.com/airblade/paper_trail/pull/667 in production. Can you please try out 4.1-stable now that https://github.com/airblade/paper_trail/pull/667 has been backported? Thanks. I think we're almost ready for a 4.1.0 release.

Sorry @jaredbeck, never had a chance to go through all of the changes but everything looked like it was on point from what I did look through. Nice work. Can try to do some testing with you at some point next week if helpful.

No worries, Ben. Hopefully a few people can try out the 4.1-stable branch before we cut a 4.1.0 release. I have one app at work I can test with, but it doesn't track associations.

@jaredbeck sweet! I'll try pointing our Gemfile at 4.1-stable next week :grin:


How do I perform an update to a single field

I execute
mongoapi:update(?QRCODE_TABLE, #{id=>1}, #{status=>2}, [], ?MONGO_MASTER).
succeed only has status field, other field all removed,why?

Did you get the solution?


[Bug] Unity + Firebase Analytics iOS Deadlock+crash on start

[REQUIRED] Please fill in the following fields:

Unity editor version: 2019.3.18f1
Firebase Unity SDK version: 8.3.0
Source you installed the SDK: .unitypackage (.unitypackage or Unity Package Manager)
Problematic Firebase Component: Analytics(Auth, Database, etc.)
Other Firebase Components in use: None (Auth, Database, etc.)
Additional SDKs you are using: Facebook, Admob (Facebook, AdMob, etc.)
Platform you are using the Unity editor on: Windows (Mac, Windows, or Linux)
Platform you are targeting: iOS (iOS, Android, and/or desktop)
Scripting Runtime: IL2CPP(Mono, and/or IL2CPP)

[REQUIRED] Please describe the issue here:
Add Firebase SDK to Unity, build and upload build to testflight
Download and install the build on iOS device
App immediately hangs (before unity splash screen is shown) on some devices (e.g. iPhone 7)
App crashes after around 10s of hangs
Steps to reproduce:
Repro rate: 100%
See attached crashlog from Testflight
testflight_feedback.zip

Here are the pods in our project:
Without Firebase
The app starts fine. Everything works.
-> Using FBAudienceNetwork (6.6.0)
-> Using FBSDKCoreKit_Basics (11.2.1)
-> Using Google-Mobile-Ads-SDK (8.12.0)
-> Using GoogleAppMeasurement (8.8.0)
-> Using GoogleMobileAdsMediationFacebook (<IP_ADDRESS>)
-> Using GoogleMobileAdsMediationUnity (<IP_ADDRESS>)
-> Using GoogleUserMessagingPlatform (2.0.0)
-> Using GoogleUtilities (7.5.2)
-> Using PromisesObjC (2.0.0)
-> Using UnityAds (3.7.5)
-> Using nanopb (2.30908.0)

With Firebase
It hangs with deadlock right on application start.
-> Using FBAudienceNetwork (6.6.0)
-> Using FBSDKCoreKit_Basics (11.2.1)
-> Using Firebase (8.7.0)
-> Using FirebaseABTesting (8.8.0)
-> Using FirebaseAnalytics (8.7.0)
-> Using FirebaseCore (8.7.0)
-> Using FirebaseCoreDiagnostics (8.8.0)
-> Using FirebaseInstallations (8.8.0)
-> Using FirebaseRemoteConfig (8.7.0)
-> Using Google-Mobile-Ads-SDK (8.12.0)
-> Using GoogleAppMeasurement (8.7.0)
-> Using GoogleDataTransport (9.1.0)
-> Using GoogleMobileAdsMediationFacebook (<IP_ADDRESS>)
-> Using GoogleMobileAdsMediationUnity (<IP_ADDRESS>)
-> Using GoogleUserMessagingPlatform (2.0.0)
-> Using GoogleUtilities (7.5.2)
-> Using PromisesObjC (2.0.0)
-> Using UnityAds (3.7.5)
-> Using nanopb (2.30908.0)

With Firebase and tweaked dependencies to 8.7.0
Still the same deadlock.
-> Using FBAudienceNetwork (6.6.0)
-> Using FBSDKCoreKit_Basics (11.2.1)
-> Using Firebase (8.7.0)
-> Using FirebaseABTesting (8.7.0)
-> Using FirebaseAnalytics (8.7.0)
-> Using FirebaseCore (8.7.0)
-> Using FirebaseCoreDiagnostics (8.7.0)
-> Using FirebaseInstallations (8.7.0)
-> Using FirebaseRemoteConfig (8.7.0)
-> Using Google-Mobile-Ads-SDK (8.7.0)
-> Using GoogleAppMeasurement (8.7.0)
-> Using GoogleDataTransport (9.1.0)
-> Using GoogleMobileAdsMediationFacebook (<IP_ADDRESS>)
-> Using GoogleMobileAdsMediationUnity (<IP_ADDRESS>)
-> Using GoogleUserMessagingPlatform (1.4.0)
-> Using GoogleUtilities (7.5.2)
-> Using PromisesObjC (2.0.0)
-> Using UnityAds (3.7.5)
-> Using nanopb (2.30908.0)

I can confirm as well, after upgrading the firebase SDK, the game was stuck on:

(BOOL)isAppStoreReceiptSandbox (at GULAppEnvironmentUtil.m)

By adding FirebaseAppStoreReceiptURLCheckEnabled = NO in the game's plist, the game runs properly again.
I assume this can be easily reproduced with a test device that made TestFlight purchases.

As other users already confirmed, when setting FirebaseAppStoreReceiptURLCheckEnabled = NO the issue no longer occurs. However I guess this should only be a temporary workaround, until the issue is fixed within Firebase?

+1 for this issue to be fixed properly. There was 4 releases (8.4.0, 8.5.0, 8.6.0, 8.6.1) after 8.3.0 and the issue is still not fixed.

8.6.0 crash,8.7 crash ,set FirebaseAppStoreReceiptURLCheckEnabled = false, no effect

+1 for this issue to be fixed properly. There was 4 releases (8.4.0, 8.5.0, 8.6.0, 8.6.1) after 8.3.0 and the issue is still not fixed.

And now 8.7.0 is out and it still doesn't fix the issue. Plenty of discussion in this issue as well: https://github.com/firebase/firebase-cpp-sdk/issues/700

Hi all,
We think we identified the problem, and have released a fix with 8.8.0.
For those curious, we think the issue was caused by changes with the newest version of xcode changing when the Objective C +load functions are called, which was resulting in the Firebase C++ SDK calling into some logging utility functions that were no longer safe to call.  We've changed it to no longer use these, and from our own testing we are now seeing that the underlying utility functions are being initialized before we call them now.
Sorry for the delay in getting a fix for this, the difficulty in reproducing this with a local build prevented us from identifying the root cause of the issue.

Please let us know if the issue still occur in 8.8.0


On WDL workflows, add a "Copy to another workspace" option

We want to give users the ability to send interesting WDL workflows from example workspaces like those in the Analysis Library to their own destination workspace.
Users should have this option from the tools card/list view, or from the tool details page. This functionality was available in FireCloud, where it was implmented as a pull. I'm suggesting we change that to a push, since we expect one of the main paths to be from the analysis library. We'll have other affordances in the workspace for to guide users to go find code.
Selecting the "Copy..." should allow users to select an existing workspace, or create a new one using the standard modal.

Whoever picks up this ticket, check with @lstrano-broad regarding design.


Adding unit-tests for tutorials (after tutorials' fixes + speedup)

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 37.49%. Comparing base (6753630) to head (7647237).
Report is 4 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #62   +/-   ##
=======================================
  Coverage   37.49%   37.49%
=======================================
  Files          97       97
  Lines        2515     2515
=======================================
  Hits          943      943
  Misses       1572     1572

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Thank you!


Handling failure to verify latest time

To my reading, sections <IP_ADDRESS> and <IP_ADDRESS> seem to offer diverging advice as to how a primary ECU should handle a failure to verify the latest time from an external time source. In <IP_ADDRESS>, it says “If it [primary ECU] fails to meet this [verification] criteria, discard the response and continue the procedure without an updated time”. However, <IP_ADDRESS> says “If any check fails, the ECU SHOULD NOT overwrite its current attested time, but SHOULD jump to the last step …”.
To make things consistent, any of the following changes could be made:

Section <IP_ADDRESS> could instruct the Primary ECU should jump to the last step to report the error, to match with what <IP_ADDRESS> says already
Section <IP_ADDRESS> could instruct ECUs to continue without an updated time, to match with what <IP_ADDRESS> says already
Section <IP_ADDRESS> could instruct only secondary ECUs to jump to the last step, to avoid conflicting with section <IP_ADDRESS>
Both sections (<IP_ADDRESS> and <IP_ADDRESS>) could allow both options
Anything else that is consistent between the two sections

Any thoughts?

Thanks for the question!
Based on discussion in the Uptane Standards meeting, as the time source is not specified by Uptane, we will leave the choice of what counts as a "fatal" error" of the time source up to the implementation. This can be based on knowledge about the time source (such as reliability, whether there is a backup source of time, etc). We will update this in the text to clarify that if such a fatal error occurs, the update should not continue.
New text ideas:

"If all steps are completed without fatal error..."
"If the time checking process fails fatally..."

Hi, thanks for the response! I agree that a change in this direction would help disambiguate things. Regarding textual updates, is there anything you need from my end, i.e. drafts of changes? If so, just let me know, otherwise I'm happy to let you guys take it from here 😀

If you are able to draft some text or open a pull request, that'll help this move faster. Thanks!


Refactor middleware processing (v2)

Summary
This PR mainly resolves two issues:

When an error occurs in multiple listener middleware chains, then an aggregate error should flow up through the global middleware chain (and the global error handler). Previously, the first listener middleware chain to reject would flow through the global middleware chain, resulting in other potential rejections being lost.
The word "context" and abbreviation "ctx" was used in several places to refer to the whole set of middleware or listener arguments. This was confusing because there is a middleware argument called context. The variables and types that used context to refer to the set of listener arguments have been removed/renamed.

[x] Implement
[x] Get linting to pass
[x] Fix tests
[x] Clean up / remove dead code
[x] Other related cleanup

Requirements (place an x in each [ ])

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.

There's a few things that I think could be improved in the future coming out of this PR. The biggest one is the fact that the Middleware<Args> type includes an optional property: next?: NextFn;.
The problem with this is for TypeScript users who are writing middleware (global or listener), they will have to conditionally check the existence of the next argument before using it. This is unfortunate because for middleware the next argument is always present. Internally, we use the non-null assertion operator (!) to convince TypeScript that the argument is present (e.g. await next!();). But this isn't a technique we should be advertising to users.
It would be ideal if in the future we could separate the Middleware<Args> type from the Listener<Args> type, where the former always has the next argument and the latter never has it. During the course of building this change, we tried to get to this ideal. Since many of the App method signatures are variadic (e. g. app.event(eventType, ...middlewareAndListener)) we're not able to separate these two types in a way that preserves the developer experience. Ideally, TypeScript could describe a function signature where the last parameter in rest parameters could have a different type. There might be a way to do this, but exploring the options takes a significant amount of time and we wanted to get this release in users' hands. We should come back to this later.

I can make a couple changes to improve coverage.

yussss, finally increased coverage.

I've played around with the next! issue a bit and realized that the only way to improve it is, as @aoberoi mentioned, to have different types for listeners and middleware.
For your reference: here is my branch that works.
https://github.com/seratch/bolt/commit/12250798f83f79aa33c72c650a532bd5a18228d0


Post cards > Lazyload

I added the native lazy load in the post images.
Reference about it: https://web.dev/native-lazy-loading/

Good idea, thanks!


Two bugs encountered during experiments

Hi,
Thank you for releasing such a wonderful framework, however I encountered two bugs when running experiments.
First, model can't be saved when running in multiple threads with -s command, although it can be saved with single thread experiments
Second, is there a command to resume training after stopping?
Many thanks in advance!

I figured it out myself. Again many thanks.


[Docs] mesheryctl system status page missing

Current State
No page exists for this command in the mesheryctl Command Reference.
Desired State
A docs page for this subcommand should be available.
Implementation

Create an entry for this subcommand in https://github.com/layer5io/meshery/tree/master/docs/_data/mesheryctlcommands/

Contributor Resources

Meshery documentation site
Meshery documentation source
Instructions for contributing to documentation

I would love to take this issue..

sure @umairnsr87!

@umairnsr87 progress?

Working on it....


fix: Missing showing cancelled/withdrawn offers

Thank you for your contribution to the KodaDot NFT gallery.
👇 _ Let's make a quick check before the contribution.
PR Type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Context

[x] Closes #4468
[ ] Requires deployment <>

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality
[x] I've posted a screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </bsx/collection>
[ ] I've tested PR on mobile
[ ] I've written unit tests 🧪
[ ] I've found edge cases

Had issue bounty label?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[x] My fix has changed something on UI; a screenshot is best to understand changes for others.
/bsx/gallery/1437594557-12

Seems there should be

made offer
cancelled offer?

Like you can see here

Just quickly chatted with @exezbcz. It's just temporary to see all offers from the item. Later we will probably remove it.

UPDATED

😍 Perfect, I’ve sent the payout
💵 $50 @ 29.87 USD/KSM ~ 1.674 $KSM
🧗 Caiv9TbPz68q5dC8EcHu5xKYPRnremimGzqmEejDFNpWWLG
🔗 0xb6d4f1299b0c835afb381bc297d88d544a4050e3b05831b9ae7222030b6bf41a
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


Why not simply set the placeholder in "userland" ?

I see there's a setting for placeholder. But it doesn't seem to do anything special. Why not just allow developers to set the placeholder text in their html?

Actually the way it stands the js placeholder code overwrites any placeholder set in the html even if you don't use the setting. I think it's best to just remove it as it's unnecessary.

That's true just checked and it does overwrite any placeholder which is not proper, I will fix it in order not to do so.
autoComplete.js is a "Use Case Design Driven" so every function has a use case and a reason behind it, that's why I have to find a good reason or more common use case to remove it. I understand that you find it necessary but others might do, fixing it will allow you to just neglect it without worrying about it.

@TarekRaafat I think it's best to keep a design minimal, personally. Since placeholder is just one of many attributes of a text input, why stop there? Why not add settings for maxlength, required etc. ? Since the attribute is just a 1:1 mapping, I think it's best not to include it at all. Actually, having it confused me because I was unsure whether my placeholder set in the html would still work (and it will likely confuse others).
Since calling ele.placeholder has exactly the same effect (even working the same way internally). There should be no use case that is not covered by doing the placeholder outside of it.
FWIW, this popular existing library doesn't include placeholder either: https://goodies.pixabay.com/javascript/auto-complete/demo.html

@mikob check v2.1.0 just released and it has fixed the placeholder overwriting bug.
You have a valid point about removing the placeholder, will consider it.


Add link to compatible browsers

Contributing to Twilio

All third party contributors acknowledge that any contributions they provide will be made under the same open source license that the open source project is provided under.

[x] I acknowledge that all my contributions will be made under the project's license.

Pull Request Details
JIRA link(s):

AHOYAPPS-0000

Description
This contribution adds buttons with direct access to supported devices when the app is used on mobile devices. It can help to improve the user experience when the app is open in unsupported browsers both in Android and iOS.

Burndown
Before review

[ ] Updated CHANGELOG.md if necessary
[ ] Added unit tests if necessary
[ ] Updated affected documentation
[ ] Verified locally with npm test
[ ] Manually sanity tested running locally
[x] Included screenshot as PR comment (if needed)
[x] Ready for review

Before merge

[ ] Got one or more +1s
[ ] Re-tested if necessary

Hi @jonra1993 - thanks so much for the PR!
I love this idea - and the UI looks great. Unfortunately, I'm not sure that we'd be able to get this one merged in. There are a couple of points here:

On Android, even though this app works in both Chrome and Firefox, the UI here is only giving the option to switch over to Chrome.
On iOS, the app works in both Safari and Chrome, but the UI here only gives the user the option to switch over to Safari (but to be fair, Twilio Video support for iOS Chrome is fairly new, and it wasn't available at the time you submitted this PR).

Since the percentage of mobile users that use unsupported browsers is quite low, I'm ok to stick with our current UI where we simply direct the user to our existing supported browsers table, and leave it up to the user to choose a new browser. I'm not sure we are comfortable with a UI that seems to prefer one browser over another. I think it's important here for us to be impartial with respect to what browser our users should use.
Thanks again for submitting the PR!

Thanks, @timmydoza for the feedback I will test the last twilio version. I chose those browsers due to at the time I made this PR they were working perfectly with my users and I was forced to add these buttons in our solution due to the default browser on the phone of our users; in some cases was not compatible with WebRTC and it was easier for them just point to any compatible browser.


Balance Sample: Add support for grouping

JIRA: MADLIB-1168
This commit adds grouping support for balanced sampling.
Grouping is implemented as a loop over the existing logic,
with the sampling for each group run independently.
Closes #239

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/361/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/362/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/363/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/365/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/366/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/367/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/368/


Same Gif is stopped in a second ViewController

I have a list of images (some of them are Gif) and they are loaded perfect (gif are played properly). When a user press on an item of the list, a detailed view is shown. But in this detailed view the gif's are stopped and I can't make it start (I tried startAnimating() and it didn't work). am I doing something wrong?
Thanks in advance and congratulations for this library, you are really awesome!!

Hi,
Sorry for the late reply. So you means that the GIF is not playing when loaded from cache?
Are you trying to use some your own image cache serializer? And may I know the GIF url you are using or could you even build a demo project so I could investigate it deeper?
Thanks!

Hi,
First of all, sorry for the delay. It was my bad, I was using AnimatedImageView on code but I had not set AnimatedImageView class on IB Identity inspector. Sorry for bothering you, and again congrats for this outstanding library.
Regards.

Great to know that!


expect.js: add missing "withArgs" to "Root"

expect.js/expect.js.d.ts
to author(@teppeis). could you review this PR?
:+1: or :-1:?
check list

[ ] pass the Travic-CI test?

@truongsinh Add withArgs to Assertion like other assertion methods instead of Root, because of original implementation:
https://github.com/Automattic/expect.js/blob/9f0efa203e82b6a768aa40240344c5340ed27e3d/index.js#L127


Incorrect title for the binding sample of the BitSplitButton demo page

Incorrect title for the binding sample of the BitSplitButton demo page:
BitSplittButtonDemo.razor file in the Bit.BlazorUI.Demo.Client.Core project.

Currently, the title is Controlled which is not correct and should be Binding.

not relevant anymore!


Remove Joda-time classes from imports

Remove Joda-Time usage
Justification:
Joda-Time would be deprecated and removed from new versions of Embulk.

removed via https://github.com/sonots/embulk-filter-column/pull/23


[CherryPick] Support async olap table sink interface (#7857)

What type of PR is this：

[x] bug
[ ] feature
[ ] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

@meegoo I think this should not be merged to branch-2.3. because 2.3 is released, we need to keep it stable

@meegoo I think this should not be merged to branch-2.3. because 2.3 is released, we need to keep it stable

This PR is mainly to solve the problem of parallel close, otherwise there will be performance problems in some scenarios


Cant load project on android studio

While loading project on my pc in android studio. I am getting following error :
"Gradle Project refresh failed
Error : connection refused"

Hi....
Are you working on proxy?
On Mar 2, 2016 8:31 PM, "Naveen Kumar Shukla"<EMAIL_ADDRESS>wrote:

While loading project on my pc in android studio. I am getting following
error :
"Gradle Project refresh failed
Error : connection refused"
—
Reply to this email directly or view it on GitHub
https://github.com/BuildmLearn/BuildmLearn-Toolkit-Android/issues/96.

Yeah I am working on proxy  and I am adding proxy too to gradle.properties but still I am getting this problem

Do you have 'ExernalSystemException' in event log, where is says unable to save?

Possibly due to this
https://github.com/BuildmLearn/BuildmLearn-Toolkit-Android/issues/104

Yes @championswimmer

Fixed


Proper way to get minLevel to work with DZI tile sources

I can't seem to find a way to get OSD to limit the zoom levels of DZI tile sources.  Is there a proper way to make it so that tile sources (coming from *.dzi files) can be restricted such that nothing lower than a particular level will ever be requested from the server?
There seems to be a lot of confusion between the different types of settings because the minZoomLevel doesn't align with a tile level, but there is also a minLevel setting (though it's ambiguous where to add this setting when dealing with DZI files).  To make things even more confusing there is also a MinLevel setting that only applies to DisplayRects within DZI files.
All I want to do is avoid having OSD try to load any tiles below a specific level (and ideally stop allowing the viewer to zoom out once it reaches that specific level).

It doesn't look like there is a proper way to do this. OSD is set up so you can ignore all these kinds of details, but it looks like in this case it also means there isn't really support for being so specific. I'm guessing this will probably work, if you want, to limit minLevel:
viewer.addHandler('open', function() {
  var tiledImage = viewer.world.getItemAt(0); // Assuming you just have a single image in the viewer.
  tiledImage.source.minLevel = 9; // Or whatever value you want.
});

As for enforcing that you can't zoom out further, you'll have to figure out what that threshold is based on the size of the viewer. I'm not sure if there's a function that can help with that. At any rate, the zoom values you get from viewer.viewport.getZoom() (which are the same as used by minZoomLevel, which I agree is confusingly named) start from 1 when the image completely fills the viewer width, and go up to 2 when you're zoomed in enough you can only see half of the width of the image in the viewer, etc.
DZI levels, on the other hand, start at their highest value (which is different for every image, but let's say 13 for this example) when the image is at full res and go down from there, halving the image width for each level.
So... to figure out the viewport zoom level you'll have to specify in minZoomLevel you'll need to know how many levels are in the image as well as the width of the viewer in web coordinates (which can change based on the width of the browser window, if your site is responsive).
BTW, I'm curious, why are you trying to do this?

I just trying to work around the limitations of the DZI format to prevent having an extra 6-7 files and folders generated for every hi-res image.  That adds up to a lot of extra files if you're talking about 40k+ image archives.  I can just delete those lower tile levels, but I also want to make sure the viewer will never attempt to request them and give the user a bad experience.
It would be great if there was a way for OSD to support the modified DZI structure that vips dzsave --depth onetile produces, where it uses the size of one tile for the base (zero) folder rather than one pixel.
By the way, in your opinion, if someone was starting from scratch and didn't need the content to be portable/compatible, what would you say is the best/most efficient tile format for use with OSD?

I've tested the addHandler suggestion and unfortunately that doesn't seem to work.  I can still zoom out beyond the level set, and it still requests images at the lower levels from the server.  Also the image in the viewer disappears once these images are requested if they don't exist on the server.
Also, even if there is a way to keep the existing image in the viewer from disappearing, I really need to prevent server requests below the specified zoom level.  I'm testing out hosting DZI content on several cloud providers and at least for some of them there can still be transaction costs resulting from requests for non-existent resources.
I need to familiarize myself with how tile sources interface with OSD.  I'd love to be able to contribute a solution if I can find some time.  Shouldn't it be possible to enhance the DZI tile source code to allow it to respect a minLevel that was provided so that no server requests would ever be generated below that level?

Gotcha; makes sense. Looks like the DziTileSource is just lacking a check on the minLevel. Give this a try: https://github.com/openseadragon/openseadragon/pull/1492 ... with the same addHandler thing.
Of course having to explicitly set the minLevel after it loads like that is a bit of a hack. It might be nice if we could build it into the loading. One option would be to add it to the DZI XML itself, but I'm hesitant to do that, since it's already a defined format and this would be adding a nonstandard feature to it. On the other hand, it would be a backward compatible extension.
Another option would be to somehow pass it into the DziTileSource. In fact that already works if you're creating the DziTileSource manually, though I assume you're not (the most common thing is to create it implicitly by passing a URL to a DZI).
Any thoughts?
As for what format would be most efficient if we were starting from scratch, I'd say DZI is pretty good. You want a tile pyramid so things can be broken up. A pyramid based on halving seems like a reasonable way to do it. DZI doesn't prescribe a tile size, but I think 256 was common to begin with. These days I recommend 512 or even 1024. BTW, note that you need to drop those numbers if you're also doing tile overlap, so the resulting tile sizes are never larger than power of 2.
I agree that the super tiny files are pretty irrelevant at this point, so that would be something to lose, perhaps like the onetile result. The reason they exist, BTW, was for the DZC (deep zoom collection) format, where you have a number of images and their tiniest tiles are grouped together into a single file... if you want to be able to display thousands of DZIs at the same time, having those tiny tiles grouped together like that give you a huge optimization. We still don't support DZC here in OpenSeadragon, though it would be great to do!

I think building the minLevel setting into the loading would be awesome.  I don't think using the DZI XML would work well mainly because of tooling issues (none of the DZI generators would support that without modification).  An option that could be passed when loading would be great.
I also think it would be ideal if there was an option for a global minLevel setting that all DZI tile sources would respect without having to specify anything. This wouldn't work for anyone who needed a different minLevel per image, but I suspect the majority of use cases would use one minLevel across all/most images, and passing the setting when loading a specific image could also override the global setting.
Regarding support for the dzsave onetile depth, if that was added I don't think we need to lose support for the current format.  It certainly needs to not break for people already using the current format, and I also think support for DZC would be awesome down the road.
I'd be happy to help with things myself if I can wrap my head around the codebase and how things are structured when I get a little time.  Thanks for the feedback (and for the temporary fix).

Yes, #1492 does appear to work, so that helps for now.
I'll have to do some research and figure out exactly how the onetile format works.  I'm not even sure it changes anything in the XML or if it just uses a different algorithm for the tiles/folders.  I think Google Maps uses that type of format.
I'll let you know when I can get a bit of time to really dive into this stuff.  Thanks for your feedback!

Sounds good, and thanks for confirming the patch!


[TableBody] Expose SelectedRows Property To Fix Selection Update Issue

Since the selected attribute on the rows has no effect on actual selected rows, when it changes the render is never actually updated. With this surfaced the developer can supply the array of indexes that we are already checking index in for each separate row, and it will automatically update the table the way you would expect.

Since the selected attribute on the rows has no effect on actual selected rows,

It's supposed to be fixed now on current master. Could you try that out?

Sure can, I tried it on master a bit ago but it stayed selected a lot of the time. Let me do some more testing now.

Thanks, I can link you the relevant PR that introduced the change if needed.

I'm still seeing the selected property not actually changing the state of the row selection. I can clear out the array and the row never actually changes state. What commit fixed this?

That's not on npm yet https://github.com/callemall/material-ui/pull/6638
Le mer. 26 avr. 2017 09:32, Jeremy Shore<EMAIL_ADDRESS>a
écrit :

I'm still seeing the selected property not actually changing the state of
the row selection. I can clear out the array and the row never actually
changes state. What commit fixed this?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/callemall/material-ui/pull/6709#issuecomment-297267472,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADBNw0zGw1A8jD9VQUTMWmeOOUF7b-hNks5rzvMEgaJpZM4NIcrD
.

Alright, I got this working. Thanks! I had these changes sitting locally since February so good to see this is fixed. Not sure if it is intended, but if you turn off pre-rendering on the body these changes make selection impossible.

Not sure if it is intended, but if you turn off pre-rendering on the body those changes make selection impossible.

That's not intented. Any idea how to fix that?

I didn't look too far, but I can take a look tonight.

Yes please, we would rather not release anything broken.

Alright, I figured out the issue. I'll repurpose this pull request for it.

@w9jds Thanks I have updated your fix in #6714.


Update curl to track more error info

This hopefully will help out with https://github.com/rust-lang/cargo/issues/2464#issuecomment-250583778 by including https://github.com/alexcrichton/curl-rust/commit/07323ab5e868babb7a5437e8d2604761b913dab3 which should give us more information from libcurl

@alexcrichton: no appropriate reviewer found, use r? to override

r? @brson

@bors r+

:pushpin: Commit 0352360 has been approved by brson

:hourglass: Testing commit 0352360 with merge e23b4fc...

:broken_heart: Test failed - cargo-win-gnu-32

@bors: retry
On Wednesday, October 5, 2016, bors<EMAIL_ADDRESS>wrote:

💔 Test failed - cargo-win-gnu-32
https://buildbot.rust-lang.org/builders/cargo-win-gnu-32/builds/725
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/rust-lang/cargo/pull/3137#issuecomment-251851744, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAD95Ly1mzKvaS1wDQGI4H922P74T6Obks5qxFxCgaJpZM4KKnhK
.

:hourglass: Testing commit 0352360 with merge 803eb8d...

:sunny: Test successful - cargo-cross-linux, cargo-linux-32, cargo-linux-64, cargo-mac-32, cargo-mac-64, cargo-win-gnu-32, cargo-win-gnu-64, cargo-win-msvc-32, cargo-win-msvc-64
Approved by: brson
Pushing 803eb8d96aa3fa97945283eb5b680601a609a8a7 to master...


Drag and drop from powertoys run

Please add Drag and Dropping from the Powertoys Run
I love the Powertoys Run feature because it works better for me than the normal search! :P
I would love to be able to drag Files out of it into other Programs or Folders!
That would make getting files way quicker and easier! :P

If you'd like to see this feature implemented, add a 👍 reaction to this post.

so if a file or folder is present, you want to 'drag' that item from the results into lets say Notepad?

I'm not OP, but I would request exactly that, what you said @crutkas.

@RedCubeDev-ByteSpace failed to respond this is speculation. Is this being dragged into an app or on an icon?

Closing as duplicate of https://github.com/microsoft/PowerToys/issues/4462


Parser code

I'm going to develop the parser again within a few days. It's an easy task. The validation part will take a little longer time.
I'm not a computer even if it's feels like it sometimes. And I also have a RL that need my attention the next days.

I'm closing this now. I will start on the parser code within 24h hours.


Play Video by clicking only on Play button

Hello,
First of all, very thanks for the Fluid Player, it has lot of options, but I've a concern about video playing.
I want to play video only by clicking on Play button, not on the video. How can I do that?
Thanks

https://github.com/fluid-player/fluid-player/blob/95a439f9db5a5d12e98ca008ed04d0017477e9cf/fluidplayer.js#L3282
 document.getElementById(this.videoPlayerId).addEventListener(listenTo, function() {     player.playPauseToggle(videoPlayerTag); }, false);
change to:
if(!fluidPlayerClass.isTouchDevice()) {     document.getElementById(this.videoPlayerId).addEventListener(listenTo, function() {         player.playPauseToggle(videoPlayerTag);     }, false); }

open your fluidplayer.js and find this part:
fluid-player/fluidplayer.js
Lines 3283 to 3285 in 95a439f
document.getElementById(this.videoPlayerId).addEventListener(listenTo, function() {
player.playPauseToggle(videoPlayerTag);
}, false);
`
If you want disable click only on touch devices, replace to:
if(!fluidPlayerClass.isTouchDevice()) {
    document.getElementById(this.videoPlayerId).addEventListener(listenTo, function() {
        player.playPauseToggle(videoPlayerTag);
    }, false);
}

If you want disable for all devices, just delete listener

Thanks, i would try this !

it will be work only when user click on play button icon in controlbar, not a big play icon at center of player

You can configure it by config. See https://github.com/fluid-player/fluid-player/pull/326

I believe this issue is resolved in the latest versions. Please reopen if that is not correct.

I believe this issue is resolved in the latest versions. Please reopen if that is not correct.

Any option to set this in new version?

Any option to set this in new version?
What do you mean?

It said that the issue "Play Video by clicking only on Play button" is solved in new version, but I don't see any control options to set it.
Also, not really related but is there control to disable fullscreens button please?

raising this issue again. please assist?

The control option is still not available.
I tried pauseOnlyOnPause: true but it doesn't work.
Am I just too dumb for it or is it still not implemented ?

@Addvilz @kilixn @guyko if there's still interest, we should re open this issue. The PR that contains the fix never got merged in


double-beep: Watch nsdmindia.com

double-beep requests the watch of the watch_keyword nsdmindia\.com. See the MS search here and the Stack Exchange search here.

nsdmindia\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by A J in Charcoal HQ


Python AML Environments Tutorial uses deprecated docker.enable

The  current code suggested in the tutorial is:
# Creates the environment inside a Docker container.
myenv.docker.enabled = True

But in the DockerSection docs, that "variable" is marked as Deprecated.
The updated best-practice usage should be shown instead.

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

ID: a10c58c2-1767-778c-5591-8b6eb1e50969
Version Independent ID: ecc11aa4-56c9-d8b0-69c0-d9978de4adc5
Content: Use software environments - Azure Machine Learning
Content Source: articles/machine-learning/how-to-use-environments.md
Service: machine-learning
Sub-service: core
GitHub Login: @saachigopal
Microsoft Alias: sagopal

Thanks for the feedback! We are currently investigating and will update you shortly.

#assign:@saachigopal

Thank you for letting us know, this will be removed shortly. Docker is enabled by default for remote runs but may need to be configured through the run configuration for local runs.

#please-close fixed


No output handle in a block calling a function

When I define a function in Functions with a return block and call it, the calling block has no output handle. How can I print the returned value?
(I use a cloned version running on a PC.)

Sorry, I was too fast to post. I found the output handle when I tried with a slight correction.

I closed the issue because I found the call block has an output handle when I edit the python code. But, it's still a problem that the call block doesn't have an output handle without editing the python code.
An example I ran was:
def test(x):
return round(x)
print(test(1.5))

You're right, this needs to happen dynamically. It should be possible to determine, statically, if a function has a return block nested inside - and if so, then it should have a left output.

Static analysis is hard. Instead, BlockMirror just allows you to right click and switch between statement and expression modes for a Call block. https://github.com/blockpy-edu/BlockMirror/


[BUG] CVE-2020-27350,  CVE-2021-24031, CVE-2018-20482, CVE-2019-9923

Describe the bug
A clear and concise description of what the bug is.
We're using Rapid7 and WhiteSource to scan the images that my company uses in its deployments.
Those tools report the following vulnerabilities in longhornio/longhorn-engine:v1.1.0, longhornio/longhorn-manager:v1.1.0, longhornio/longhorn-instance-manager:v1_20201216:

CVE-2020-27350: apt-1.6.12ubuntu0.1 is affected. It should be update to apt-1.6.12ubuntu0.2
CVE-2021-24031: libzstd1_1.3.3+dfsg-2ubuntu1.1_amd64.deb is affected. It should be updated to v1.4.9
CVE-2018-20482, CVE-2019-9923: tar_1.29b-2ubuntu0.1_amd64.deb is affected. It should be update to v.132

Analyzing the v1.1.1-preview versions of longhornio/longhorn-manager and longhornio/longhorn-engine only CVE-2021-24031 is reported. There no new versions of longhorn-instance-manager
Expected behavior
Vulnerabilities reports should be clear

@meldafrawi as per the result of the image vulnerability scan, is this still a valid issue?

@innobead I have run my scans against Longhorn 1.1.1 images and they are clean. Even the longhorn-instance-manager image is clean (it should have been a false positive that R7 has solved)

Closing as per @davidmateos verification.


Is this project really maintained?

hi,
this project is really interesting but it seems to be no longer maintained, there are pull requests that are merged but those are not available via npm or in branch 3.x (like implicit flow).
any about this? Do you need any kind of help on this repository?
bests
Walter

In npm registry we still have 2.4.0 however.
How we can upgrade to just released 3.0.1 ?

@Doom100500 Make sure you are using the correct name for the npm package. There were one or two "alternative" names which are not updated (anymore?). oauth2-server is the right one.


Rename this repo to morganey-gradle-plugin to be consistant with morganey-intellij-plugin

Not totally necessary just one thing thats bugging me

Is there any officially approved naming scheme for gradle and intellij plugins? I called it gradle-morganey-plugin because I just opened https://github.com/gradle and saw this repo https://github.com/gradle/gradle-hazelcast-plugin and took it as a best practice. :)

Ah i didn't know that we should probably leave it as it is then

Hm... Looks like at least for gradle there is nothing http://stackoverflow.com/questions/19452808/gradle-plugin-naming-convention

@rexim I will leave it up to you and @ForNeVeR then

And for intellij I didn't find anything either.

@ForNeVeR what do you think?
I vote for morganey-<platform>-plugin for all of the plugin projects which platforms doesn't have a naming convention.

Me Too

Because it's always better to put morganey first. :)

It just makes more sense to me too because gradle-morganey-plugin to me sounds like a Morganey plugin for Gradle as in a plugin for the Morganey compiler

Yep, I vote for rename. Maven have a convention, indeed, but it's close to ours: <xxx>-maven-plugin.

Done. Thanks everyone!


Fix refresh of death icon on setting change

....also fixes a regression

A more involved fix would have us refactor by merging migrateStatusEffectUrls and detect what is changing or not. But the more involved the riskier.


[Release-1.30] - Bump k3s-root for buildroot security updates

Backport fix for Bump k3s-root for buildroot security updates

#11284

Validated on branch release-1.30 with commit 5d2bc57 / version v1.30
Environment Details

Infrastructure

[X] Cloud
[ ] Hosted

Node(s) CPU architecture, OS, and Version:

Linux ip-172-31-3-15 5.14.21-150500.55.44-default #1 SMP PREEMPT_DYNAMIC Mon Jan 15 10:03:40 UTC 2024 (cc7d8b6) x86_64 x86_64 x86_64 GNU/Linux
NAME="SLES"
VERSION="15-SP5"
VERSION_ID="15.5"
PRETTY_NAME="SUSE Linux Enterprise Server 15 SP5"
ID="sles"
ID_LIKE="suse"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:suse:sles:15:sp5"
DOCUMENTATION_URL="https://documentation.suse.com/"

Cluster Configuration:

N/A - configuration does not matter

Config.yaml:

N/A

Additional files

N/A

Testing Steps

Copy config.yaml

$ sudo mkdir -p /etc/rancher/k3s && sudo cp config.yaml /etc/rancher/k3s

Install k3s
/var/lib/rancher/k3s/data/current/bin/busybox

Replication Results:
https://github.com/k3s-io/k3s/issues/11284#issuecomment-2471360191
Validation Results:

k3s version used for validation:

$ k3s -v
k3s version v1.30.6+k3s-5d2bc57e (5d2bc57e)
go version go1.22.8

$ /var/lib/rancher/k3s/data/current/bin/busybox
BusyBox v1.36.1 (2024-11-08 20:32:42 UTC) multi-call binary.

Additional context / logs:
N/A


Fix windows build errors

These are changes made recently on 3,1RC.

Hmm...if you made on the RC already, do you really need a re-review for a merge to develop? I haven't been doing that. If people are fine with it on the RC and the merge to develop is essentially a no-op, then I don't request further review.

That’s my process. I don’t see the need for another review in this case.


Issues with Breath of the Wild Graphic Packs

Feel free to help us by commenting newly found issues if you find any.
If it's at a specific point in the game (like a final boss or something), providing a save file will help.
Currently known issues:

[ ] Bomb Texture
[ ] Shadow Pack for 1.14.0
[ ] Heatwaves
[ ] Bloom has a variety of problems

This one "passes" most of the wak-up link intro.  Bloom is scaled (first 3 levels at least) , light sources and cinematic DOF.  There are rules in place for the rest of the bloom/depth , but they need separate verification so they don't break other stuff.  esp all the cube/light grading
BreathOfTheWild.zip
Also spent waay too long time before I figured out that the "fog" of the opening scene is broken due to cemu, not gfx pack..

Hm, I've already found out some of the issues above (like the bloom). Haven't look at the link intro yet, so I'll add those related lines.

This issue has become pretty outdated since SkalFate took BotW over. None of the problems mentioned are a problem. If there's any more problems, make a new thread.


Create LICENSE: 3BSD

closes #40

Thanks
On Sat, 1 Jun, 2024, 14:07 Prajwal prakash, @.***>
wrote:

@.**** approved this pull request.
—
Reply to this email directly, view it on GitHub
https://github.com/IEEE-RVCE/reforseti/pull/50#pullrequestreview-2092051901,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADX32PA2GNO74ZOW42LX6ITZFGB6DAVCNFSM6AAAAABIOHDV46VHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDAOJSGA2TCOJQGE
.
You are receiving this because you modified the open/close state.Message
ID: @.***>


Set different class to tabs for different window

Fix: https://github.com/babyman/quick-tabs-chrome-extension/issues/350

Thanks for this, if you're using it to create something cool would you consider sharing in https://github.com/babyman/quick-tabs-chrome-extension/tree/master/3rdParty/css?
I have submitted the changes to the app store for review and release.
Evan

I make the PR to show how I use that.
https://github.com/babyman/quick-tabs-chrome-extension/pull/352


RE8 VR Instant Crash

Fresh install of RE8 and REFramework crashes instantly.  Using the Nightly Build and running this on a Valve Index.
My system:
Windows 10 22H2
Ryzen 7 5700X
32 GB RAM
RX 6700 XT Driver 23.7.1
Valve Index
Dual Monitors 1 Displayport and 1 HDMI

re2_framework_log.txt
Forgot the framework log.


Use torchinfo instead of custom utils.count_params()

[ ] 02_convnets.py
[x] 04_autoencoders.py
[x] 05_representationlearning.py

Do this once #4 is merged, since there we have a new utils.model_summary() wrapper for torchinfo.summary().

the first bullet point should be addressed with #15


How can I animate a dropdown menu using motion-ui?

Hello folks. I would like to change my dropdown default behavior on hover (just appear) to something prettier, like a fade-in/fade-out or something like that. Can I use motion-ui for this task? I'm using foundation-sites

@imaia Dropdown menus don't support Motion UI at the moment, but I'll add it to our internal roadmap for Foundation for Sites. We'll be publishing this roadmap soon, so the community can review it and get involved if they want.
Thanks for the suggestion! :)

Hello! Any news on this feature?
Thank you

+1

Hey, I solved the problem, you can see an example
Just using dropdown events and a bit of jquery animation. In any case, I would like to see the settings from the box

thanks for sharing I've tête see this method on zurb forum.


Define supported combinations

We should define what combinations of OS / K8S / CRI / Cloud this provider will support, perhaps breaking it down into 3 categories:

Supported with E2E test
Known to work
Unsupported / Known not to work

Operating Systems:

[x] Ubuntu 18.04
[ ] Ubuntu 16.04
[x] CentOS 7.2
[ ]  Amazon Linux 2
[ ] RHEL 7.4
[ ] RHEL 7.5
[ ] RHEL 8
[ ] RHEL Atomic
[ ] CoreOS
[ ] Debian
[ ] Container Linux

Kubernetes:

[x] Latest Kubernetes
[ ] Latest patch for Kubernetes N - 3
[ ] Open Shift v4

CRI:

[x] Containerd N - ?
[ ] Docker
[ ] CRI-O

This doesn't feel like the right repository for this. This feels like it should go in infrastructure providers.
This bootstrap provider will be providing a script for the machine controller to do something with. Our support matrix should be the same as kubeadm with any other details left up to the machine controller.
Can you tell me how you're thinking about this and why you created this issue in this repo?

The cloud-init or bash that is returned by this provider is going to have some underlying assumptions/requirements - you can't just hand-off a script and expect it to work in every scenario. The scenario's under which it will work form the supported combinations.
For example:

CoreOS prefers ignition, so cloud-init may not work or may require tweaking
Is the cloud-init expected to work off a vanilla OS, or are the dependencies like kubeadm/docker expected to be pre-installed ?
If the dependencies are expected to be pre-installed, how does the cloud-init script verify that they are the correct dependencies?
if the dependencies are not installed, then installing them will be very OS specific
Applying networking configuration will vary by OS

If this provider isn't going to include these items in scope, then it probably shouldn't be generating cloud-init either, rather an intermediary format that another provider can read to merge with it's own config and generate cloud-init

Those are very good points. As someone interested in adapting the bootstrap flow to CoreOS, I can guarantee that the current cloud-init won't work (CoreOS has a ground-up reimplementation of cloud-init in golang, so it's not possible to add python modules like kubeadm to it), and pre-installing dependencies is sort of... awkward, to say the least. And don't get me started on networking 😄
That said,

rather an intermediary format that another provider can read to merge with it's own config and generate cloud-init

I had understood that the "intermediary format" was basically going to be kubeadm – if this provider picks a default format (cloud-config, bash, etc.) to wrap that in it's not meant to be exclusive of other options.
Honestly it feels a little early yet to define the support matrix. IMO it would be nice to see something working before we make those decisions so we can see how many of those assumptions we end up making (or not!).

The support matrix doesn't need to be final, but I do think it is imported to define the goals and non-goals, If the plan is to support CoreOS at some point it has implications on the design. Same applies to baked images vs vanilla

@moshloop
you are asking for something that the k8s ecosystem is struggling to define and it's unlikely to happen in this project.

Operating Systems:

kubeadm does not have a support matrix for distros and it will never have one...
i don't think this provider should either.
if your distro/'image/machine does not work with kubeadm or wrapper scripts, it's up to you to fix it and if
you can't you should just move to Ubuntu 16.04 which is a known distro to work.
we have kubeadm docs for Fedora and ContainerLinux but we don't track versions there.
selinux is problematic too, disabling it is the advisable action for now.
else keep it enabled but add labels to key paths.

Kubernetes:

currently there is no easy way to get the dependencies of k8s component (such as kubeadm) in a machine readable way. @yastij is working on something in this area.
the common setup for kubeadm nodes, you'd need a supported docker version, control-plane and kube-proxy that is X or X-1, coredns and etcd can be obtained from kubeadm config images list  and a sane version for CNI (which is more problematic than it seems).

CRI:

random comments:

too many versions and too many options
70% of people are using docker, 15% containerd, 15% cri-o
docker is tested by users a lot
we really don't track supported containerd versions but it's known to work OK
cri-o is untested in kubeadm e2e

@neolit123 thanks - this is really good feedback.

too many versions and too many options

I am not by any means saying we should support all of these combinations, just that these are the potential dimensions in which combinations could come from.
I would suggest we just break these down into:

0.1
0.1+ or 1.0+
2.0 or Never

70% of people are using docker, 15% containerd, 15% cri-o
docker is tested by users a lot
we really don't track supported containerd versions but it's known to work OK

I agree, those are the same arguments I would have for CAPA / CAPV to switch from containerd to docker.
The supported runtimes for this provider could then be:

Docker - Supported with E2E
Containerd - Unsupported, but known to work
CRI-O - Unsupported and untested

kubeadm does not have a support matrix for distros and it will never have one...

I agree,  kubeadm should only have prerequisites that must be met.

i don't think this provider should either.

If the output is OS specific (e.g. cloud-init/ignition), then it follows it should specify that OS.
If the output is not OS specific (e.g. bash), then it could  defer to kubeadm prerequisites

ref kubernetes/kubernetes#79366

/milestone next

/milestone Next

Just a heads up, Fedora CoreOS (FCOS) won't support cloud-init as far as I know. It would be neat if this provider supported different output, which is mentioned in #16 anway.
This issue should probably focus on output format, not operating system; so, support cloud-init, the old Ingition scheme for CoreOS and the new Ignition scheme for FCOS. Something like that.

@embik hmm, I don't have any strenuous objections to adding some type of output filter that could be selected.
@chuckha @ncdc We could potentially add a new field KubeadmConfig.Spec.Format, that defaults to cloud-config (the more formal name for the declarative config used by cloud-init), but that would allow over time the addition of other output formats such as the ones mentioned above.

@detiber +1 to supporting multiple output formats

I think multiple output formats is pretty reasonable! @detiber do you see this as milestone next or first release? I'm leaning towards next, but want to get your input.

@chuckha What if we added a field for the output format for v1alpha2, and then additional output providers could be added for later v1alpha2-based releases as well without having to wait for v1alpha3.

that sounds fine to me. I'll make the issue to add a new field that is a no-op/forced cloud-init for this release

@moshloop I think this is a documentation issue. Do you think you could help write up some docs, even briefly, about supported combinations that you've outlined in the original issue?
/assign @moshloop
/kind documentation
/priority important-longterm


ARM64 (Linux), Apple Silicon (M1, M2) support

General issue to track addition support for AMR64 (Linux) and Apple Silicon (M1, M2, etc.) support.
Current discussions involve our bar being:

Build client
azd test suite passes
Template tests pass

Current status:

We have access to a DevOps pool of ARM64 Linux machines but those machines are missing a lot of the software/tools needed for a successful build and run of test scenarios. Some can be installed successfully with a script
ARM64 support in some tooling may not presently available so some services azd supports in x86_64 environments today will not work until support is added for those tools

I would also like to add that azd login fails to open the browser when running in a VS Code dev container that is running an x86_64 image with Rosetta emulation, by using the FROM --platform=amd64 flag in the .devcontainer/Dockerfile.  Therefore I am unable to log into azd.
azd login is unable to find the browser executable in $PATH as seen here:

When I run az login I am able to successfully login, because the browser launches, which you can see here:

I found this issue attempting to deploy Aaron Powell's Azure-Remix-Stack v2, and the current workaround for Apple Silicon for the MCR images are what led me to this issue.

FYI, I've discovered that the docker-in-docker feature is not compatible with the --platform emulation flag: https://github.com/devcontainers/features/issues/219
So I believe that for local VS Code development, I can either have docker-in-docker support in my dev container, or azd support, but not both. Fortunately I think both should work in Codespaces since that's not running on an M1.
Additional motivation to have better ARM64 support.

@danieljurek has already captured,

Details on how to get this working - https://github.com/Azure/azure-dev/issues/952#issuecomment-1338386205 with proper build, packaging and testing.
Filed dependency issues

Build/Pipeline dependency

https://github.com/microsoft/azure-pipelines-tasks/issues/17348 or https://github.com/microsoft/azure-pipelines-tasks/issues/17075
@danieljurek any other dependency we need for building and packaging?

Runtime dependency

https://github.com/microsoft/azure-pipelines-terraform/issues/116
@danieljurek remember you doing an exercise to go through the list of azd core and template level dependencies? Any other dependencies that doesn't have support?

Setting confidence to Low on this because automated validation scenarios like the ones we use for other binaries are not well covered at this time:

Little support in DevOps for Linux ARM scenarios
No support for Apple Silicon in DevOps

If we just cross-compile then the process should be pretty simple to implement though we'd need to work on signing and installers. I'm not sure if signing macOS binaries compiled for ARM64 is supported.

@danieljurek agreed on trying to build, validate and test it natively on Linux ARM64 and Apple Silicon. Since ARM64 support and the ecosystem is not completely vetted and rolled out internally yet. It is definitely going to take sometime and might not be worth while to do the heavy lifting and custom building ourselves(azd and engsys) now.
Instead, as you said let us try to cross compile with our already existing pipelines/vm images. For now, this seems to be the  best approach we should take.

Let us start to internally build and release ARM64 bits.
Get some manual testing going(vendor, dev, CDA, internal users).
Once, we feel confident with our testing and flush out signing of bits.
We can release it.

cc: @savannahostrowski @Petermarcu @ellismg @weshaggard

Yes I think cross-compiling will be a reasonable starting point. I'll add that GitHub is targeting support for images in Q3 this year https://github.com/orgs/github/projects/4247?pane=issue&itemId=5944419 and which point we can hopefully leverage those to do building and testing on.

I made this PR to update the docs to mention installing the emulator. https://github.com/MicrosoftDocs/azure-dev-docs/pull/1087

Moving this out to Gallium cc: @savannahostrowski

You probably already know this, but FYI that I'm unable to run the playwright tests for the TODO samples on my M1. There's a qemu error when it tries to start up Chromium. Just noting here as something affected by M1 usage.

This was released on 2023-10-05.


Add ability for time-based triggers to put their tasks to the front of the execution queue

Scheduled execution and interval execution triggers should be able to add their jobs to the front of the execution queue. This is so that things like nightly maintenance jobs can run as close to the scheduled time as possible.

Done in https://github.com/lithnet/miis-autosync/releases/tag/v1.2.6692


[ted] After June 22 2017 update, subtitles cannot be listed or downloaded

Please follow the guide below

[x] I've verified and I assure that I'm running youtube-dl 2017.07.09

Before submitting an issue make sure you have:

[x] At least skimmed through README and most notably FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
On June 22 2017 TED video pages were updated. 4917478 fixed video extraction, but subtitles cannot be listed or downloaded.
$ youtube-dl -v -s --list-subs https://www.ted.com/talks/nilofer_merchant_got_a_meeting_take_a_walk
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'-s', u'--list-subs', u'https://www.ted.com/talks/nilofer_merchant_got_a_meeting_take_a_walk']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.07.09
[debug] Git HEAD: c3c94ca
[debug] Python version 2.7.9 - Linux-4.4.38-v7+-armv7l-with-debian-8.0
[debug] exe versions: none
[debug] Proxy map: {}
[ted] nilofer_merchant_got_a_meeting_take_a_walk: Downloading webpage
[ted] nilofer_merchant_got_a_meeting_take_a_walk: Downloading m3u8 information
1726 has no subtitles

The example actually has 44 subtitles listed.

This can be fixed with a minor change. The "languages" property is now nested under "downloads". I created a pull request for this #13629.

Thank you! That was real fast! I works perfectly.


RWA-2240 - Jenkins artifacts

JIRA link (if applicable)
https://tools.hmcts.net/jira/browse/RWA-2240
Change description
Fix reports not displaying in jenkins artifacts
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[X] No

Fixed in another PR


Add classification (MIME?) for different types of dependencies

It would be nice to have a classification for each "library".
Motivation

For a custom UI you might want to customize the look'n'feel of licensed items. E.g. a library could have a different color than a font.
During an audit it could be helpful to search for specific types of licenses. If you are interested in the license of a PNG image, you would simply look for mime: "image/png".
Pivoting. With a classification, you could perform pivoting in Excel etc.

Classification using MIME?
class or type or whatever. Perhaps we should consider MIME types to get somewhat standardized syntax. E.g.:

Dependencies from pom.xml would have mime: "application/java-archive"
NDK/native library would have mime: "application/octet-stream"
Fonts would have mime: "font/ttf"
A PNG image would have mime: "image/png"
etc

If you settle for MIME, the classification could be automated if you - for custom libraries - require a uniqueId ending with a MIME-specific extension. E.g.:
{
   "uniqueId": "my_font.ttf",
}

Thank you @znakeeye for the proposal. after further thoughts on this, I believe mimeType will be miss leading. But I'll add a generic tag which can be used for anything like this.
This will fit not only this usecase but any other usecase people may come up with.

I agree. Will the tag be null for libraries then?

Correct.
On Sat, Jan 29, 2022, 12:13 PM znakeeye @.***> wrote:

I agree. Will the tag be null for libraries then?
—
Reply to this email directly, view it on GitHub
https://github.com/mikepenz/AboutLibraries/issues/715#issuecomment-1024891193,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AALINCHZUURGL57BUNEGLPDUYPDWJANCNFSM5M252P2Q
.
You are receiving this because you modified the open/close state.Message
ID: @.***>


add delay prop

Thanks for this great component. This PR adds a delay prop that lets you specify how long to wait before displaying the placeholder component (after the initial render) when the ready state changes from true to false.
This is intended to prevent the "flash" that can happen on faster connections when the placeholder component is shown for only a brief moment, while still showing it for slower connections.

Thanks for this PR @cburbank I'll dig into the code as soon as I have some time :)

Thank you @cburbank ! I released v1.0.8 with this new feature :)