Generator kind should be a "string value", not ~constant value~

We've previously discussed these ~spec-level constants~ and the rules are unclear for when you're supposed to use them (/cc @allenwb), but most new stuff, including at least one of the three different meanings of "function kind", uses "string value"s.

Mehhhh now I see that runtime semantics use ~spec-level constant~ notation a lot, I can't even tell how this is supposed to work. Closing since I'm not sure that switching would be an improvement.


ISPN-14814 ServerEventLogger blocks when creating a cache

https://issues.redhat.com/browse/ISPN-14814

Integrated into main, thanks @wburns!


Setting a resolver is confusing

When you try to set a resolver, it shows you a field that says "Enter Ethereum name or address." This is confusing because people could think they're supposed to put their own Ethereum address there. Also, 99.999% of people are going to use the Public Resolver, so it shouldn't be a small link under the field.
I would at least change the text to say something more like "Enter contract address of custom resolver or use Public Resolver".
And really, it should just default to the Public Resolver anyway, with setting a custom resolver being an "Advanced Option" or something.

So after I do the new migration.
What should go in my resolver?
Where do I input my ether addy to be the owner?


[helm create] Add service account to templates

closes #5879
If applicable:

[x] this PR contains documentation
[x] this PR contains unit tests
[x] this PR has been tested for backwards compatibility

/cc @helm/charts-maintainers

Thanks @mattfarina , whats the Needs V3 fix label about? Does this feature have to be duplicated elsewhere?

this PR isn't relevant for Helm 3 so I'm marking this as "complete".

ported to Helm 3 in https://github.com/helm/helm/pull/6490


Create Participant CRUD

add participant CRUD: display_name, about_me, zip_code, mailing_list (boolean default true), allowed_to_refer_others (boolean), cell_number (add to label: for text notifications. this will be encrypted and not editable or viewable by admins)

duplicate~


Visual Studio Enterprise contains a compiler bug in 17.9.34607.119.  Need update to 17.9.34616.47 for their hotfix

Description
A compiler bug introduced in Visual Studio a bit ago is preventing successful builds with a common 3rd party library.  They produced a hotfix, released in the last day or so, that should address the issue.  The hotfix should be in VS 17.9.34616.47.  Need the Windows runner image updated with the latest hotfix of Visual Studio.
Given y'all release once a week, this will probably resolve itself shortly, but I'm entering an issue so it's not dropped.
The compiler issue is discussed here:
https://developercommunity.visualstudio.com/t/std::declval-cannot-output-character-str/10472732
Platforms affected

[ ] Azure DevOps
[X] GitHub Actions - Standard Runners
[X] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] macOS 11
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[ ] Windows Server 2019
[X] Windows Server 2022

Image version and build link
Runner image: 20240218.2.0
Is it regression?
yes:  last tried 2 weeks ago successfully
Expected behavior
We shouldn't hit the compiler bug.
Actual behavior
Build fails due to compiler bug.
Repro steps
Unfortunately, my build is in a private repository so I can't easily give a repro.

It will be deployed automatically by the end of the next week.

updated


Error while running npm run test with sqlite3 package

Hi,
I am running with an issue with npm run test and a package installed in app/node_modules.
I am using sqlite3 in my app and this module is listed in the app/package.json
app/package.json
I add this module in the second package.json as recommended.
2 package.json
For this module works I need to rebuild it with  npm run postinstall
For simple test, I create app/db.js
app/db.js
I Call this function in app/main.development.js
app/main.development.js
When I run npm run dev a sqlite file is created in the TEMP directory.
Now I would like to run a test.
I wrote a simple test in test.
test/db.spec.js
When I run npm run test I get this Error

FAIL  test\db.spec.js
● Test suite failed to run

Cannot find module '../package' from 'node-pre-gyp.js'

  at Resolver.resolveModule (node_modules\jest-resolve\build\index.js:169:17)
  at Object.<anonymous> (app\node_modules\sqlite3\node_modules\node-pre-gyp\lib\node-pre-gyp.js:60:17)

I understand that the node version running the test is not the same as the node version running electron. Am I wrong ?
Is there a way to workaround this issue ?
Thanks

Using the renderer process to load expensive code isn't a good idea in general. You'd generally want to do this in the renderer process. I would recommend moving your import statements outside of the main.development.js module

See this example.

Hi @amilajack,
I am not sure this is my issue. I just tried to say that electron need to rebuild the sqlite3 package to works with npm run dev. But if the package are build for electron then the npm run test does not work because test use node.js and not electron.

I see. Can you fork my example repo and show me exactly what you mean by editing your fork? An example would really help

step1:
cd app\node_modules\sqlite3\
setp2:
npm update

Hi @amilajack ,
I fork your repo and reproduce the issue.
I put the db operation into a function and add a simple unit test. The issue append when running the test.
yarn test

FAIL  test/db/db.spec.js
● Test suite failed to run

Cannot find module '../package' from 'node-pre-gyp.js'

  at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
  at Object.<anonymous> (app/node_modules/sqlite3/node_modules/node-pre-gyp/lib/node-pre-gyp.js:60:17)

Great! Thanks for this. I'll look into this over.

I looked into this issue and it seems to be an issue with jest-resolve. It seems like jest tries to resolve the ../package path:
inherits(Run, EE);
exports.Run = Run;
var proto = Run.prototype;

/**
 * Export the contents of the package.json.
 */

proto.package = require('../package');

@amilajack i have this problem with a fresh install of latest jest and ts-jest in a not-electron env. 😕

@phra what is the version of node-pre-gyp that you have?

Closing because i dont think this is issue is related to the boilerplate. Let me know if you think this should be reopened

I tried the example and after fixing the require('../package.json') I get this error:
Cannot find module '[...]electron-react-boilerplate\app\node_modules\sqlite3\lib\binding\node-v57-win32-x64\node_sqlite3.node' from 'sqlite3.js'

I came here because I get the exact same problem with my own nodejs addon.
In both cases the *.node file exists and the path in the error is correct.
What's wrong here ?

This feature if ever added, would probably solve the problem.


Update MD file on new branch 2017-35-10_21-12-03

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestCon.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Enable syntax highlighting in example snippet

Resolves # .

Checklist

Please ensure the following tasks are completed before submitting this pull request.

[x] Read, understood, and followed the contributing guidelines, including the relevant style guides.
[x] Read and understand the Code of Conduct.
[x] Read and understood the licensing terms.
[ ] Searched for existing issues and pull requests before submitting this pull request.
[ ] Filed an issue (or an issue already existed) prior to submitting this pull request.
[x] Rebased onto latest develop.
[x] Submitted against develop branch.

Description

What is the purpose of this pull request?

This pull request:

a
b
c

Related Issues

Does this pull request have any related issues?

This pull request:

resolves #
fixes #

Questions

Any questions for reviewers of this pull request?

No.
Other

Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.

No.

@stdlib-js/reviewers

My guess is that syntax highlighting was intentionally disabled for this snippet for two reasons: (1) to prevent code execution when running README examples as part of linting and (2) to disable linting altogether given that next is not defined in this particular snippet.
Would you mind adding, just above the code block, the following directives:
<!-- run-disable -->

<!-- eslint-disable -->


I think it didn't work

In my mac,it requires password everytime and after I input password it still can use keyboard or trackpad.I just change the environment variables seconds_to_lock and do nothing else.

it requires password everytime

That’s as designed.
See other issues related to MachineClean. As I said before (emphasis added):

I may try to debug it in cases where I have any clues and it is using the latest version, but in your case I’d just be shooting in the dark, and I’ve already wasted too much of my free time debugging that specific workflow for other people.
I simply cannot afford to put more of my time into that particular problem.

MachineClean is using unconventional methods for locking, and it’s incredibly machine dependent. For example, it does not work on Macbook Airs and no one yet has been able to figure out why. If you can provide any clues, I’ll look into it, but I won’t spend more time shooting in the dark for this one.


HOPS-91

[HOPS-91] Reuse the effective user UGI instead of getting the current user in NamenodeSelector

Can one of the admins verify this patch?

Jenkins test this please

Jenkins test this please

Jenkins test this please


[Feat] Completely changed the algorithm for highlighting paragraphs of pdf documents, removing duplicates of tabular paragraphs.

The algorithm for highlighting paragraphs has been completely changed by reducing the amount of code, removing unnecessary conditions and loops. Thus, the accuracy of the selection and the speed of work have increased.
Added a function to extract tables and save them in a document context variable
Added a method to remove duplicate paragraphs tables
Fixed variable names

Закрыл PR в связи с ошибкой коммита.


dotnet core v3 preview4 is not available to install

The preview 4 of version 3 is already released https://github.com/dotnet/core/tree/master/release-notes/3.0 but it's not available to install with this plugin.
This plugin call this URL https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases.json and the version is not listed in this json.
Is the right URL to call to see the list of available version?
Is it a problem of .net CORE team that hadn't update the json?

@emersonsoares Have you been able to check this issue? I'm not able to install the last version. Is it my fault ???

Actually, I think this issue is related with the dotnet core repo, as they should keep the file updated.

@emersonsoares I have found this issue https://github.com/dotnet/announcements/issues/87 I think that this package are checking an old deprecated file

Hey! The package is looking into a deprecated file to discover available releases, as @gpad pointed in his comment, with dotnet/announcements#87. The plugin needs to start looking in releases-index.json file.
I'm starting my vacations this week and will not be able to fix this in the next few days, so any help on this would be welcome. 🆘

A first version:
curl -s https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json | grep -Eo '\"releases.json\": \".*\"' | sed -e 's/\"releases.json\": \"//;s/\"//' | xargs curl -s | grep -Eo '\"release-version\": \".*\"' | sed -e 's/\"release-version\": \"//;s/\"//'

Enjoying the first week at my new job, managed to open a PR:
https://github.com/emersonsoares/asdf-dotnet-core/pull/8
Please share any improvements I could make...
Cheers


Add colour table for gitbook

Closes #9808
A table in Storybook to embed in Gitbook to replace the static one that is out of date.

Replaced this original colour palette


login.live.com crashing mitmproxy with bus error 10 on OS X

Steps to reproduce the problem:

Run proxy on OS X El Capitan 10.11.4 Beta (pretty sure it happened with earlier stable versions)
2.Set up proxy on IOS 9.3 (and again earlier versions)
Request https://www.bungie.net/en/User/SignIn/Xuid?bru=%252f
mitmproxy crashes with Bus Error 10, and terminal is corrupted

What is the expected behavior?
Not crashing
Any other comments?
The bungie url redirects to login.live.com to do an OAuth login, it looks like the redirect is received by safari, and the next request/response crashes mitmproxy

mitmproxy version: 0.15

Thanks for the structured report. I just tried to reproduce this on Linux or Windows, but with no success - the requests just go through fine for me. Can you provide more details on the "Bus Error 10"?

Not really, sorry. Here's the screen output with ./mitmproxy -ev -wfile output.txt

doesn't write anything to output.txt though.
That is with the downloaded binary. I tried to get it up and running with the system python and brew python, but didn't have any luck. There's some stuff on google about it, but it wasn't particularly enlightening for me. I guess I can run it in a VM.

I ran it with ./mitmproxy -ev -wfile output.txt, it didn't write anything to output.txt though, this was the screen output:

That is with the downloaded binary. I tried to get it up and running with the system python and brew python, but didn't have any luck. There's some stuff on google about it, but it wasn't particularly enlightening for me. I guess I can run it in a VM.

happens for me as well with OSX 10.10.5

@mynamewasgone could you explain a bit more? I'm not sure I understand your test setup.
So I just tried the following:
OSX 10.11 with latest mitmproxy running.
iOS 9.2.1 joined on the same Wifi & Network. In WiFi settings I set the IP+port of mitmproxy.
Then I started Safari on iOS and visited https://www.bungie.net/en/User/SignIn/Xuid?bru=%252f.
I got two SSL cert warnings, which I accepted/continued.
Then I only got a blank screen.
mitmproxy shows successful requests - and didn't crash.

Yes, you've pretty much described the same action as me, except I have the mitmproxy on my phone so I don't get certificate prompts. Also on my screenshot I think I just refreshed safari, which had already been redirected to live.com.

If you are affected by this bugt, can you please post the output of  openssl version and pip freeze?

pip freeze: https://gist.github.com/anonymous/bc20459d774e3c242129
OpenSSL 0.9.8zh 14 Jan 2016

Just encountered this same issue myself, I'm running mitmproxy with a self-signed server
pip freeze: https://gist.github.com/kiancheong/584e18f3a7e01fdf759b
OpenSSL 0.9.8zh 14 Jan 2016

Thank you very much. Could you please check if you can reproduce the same bug with the binaries from mitmproxy.org or a newer OpenSSL release?

I'm also encountering "mitmproxy crashes with Bus Error 10, and terminal is corrupted"  on OSX 10.11.4, with both Chrome and Safari when the website under test is performing an authentication redirect of some sort (passing off auth to a thirdparty, I beleive).
My openssl was version 0.9.8zh,  so I upgraded to OpenSSL 1.0.2g
But the issue still reproduces.

Thanks @ntulele.
I'm closing this for now then. :-)

Also: On a separate Mac with same OSX, OpenSSL, and mitmproxy versions where this issue was occurring, I upgraded only mitmproxy to 0.17.1 and that resolved the issue.
So upgrading OpenSSL from 0.9.8zh is not necessary to resolve this issue.


Error for download JDK, oracle close link

Hello,
many thanks for such useful playbook, but have a problems
Of course workaround is to download by yourself and put it to files, but could you return functional of downloading jdk from website? ty
TASK [ansible-oracle-java : Download JDK (as rpm file)] ****************************************************************************************************************************************************
Thursday 25 April 2019  12:53:58 +0300 (0:00:00.851)       0:00:26.677 ********
fatal: [MY_HOST]: FAILED! => changed=false
  dest: /tmp/jdk-8u201-linux-x64.rpm
  msg: Request failed
  response: 'HTTP Error 404: Not Found'
  state: absent
  status_code: 404
  url: http://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.rpm

Thanks for reporting. I will look into it.

So it looks like JDK 8 is only available for download after login. Up until now this has only been the case for older versions. Now it seems even the latest version (of JDK 8) is behind a login.
I guess that means the end of support for JDK 8 for this role. JDK 12 still works, 11 I have not tried yet.

So to be clear: One can still download the JDK, put it in files and let the role do its job, but the automatic download for JDK 8 will no longer work.
For JDK 11 the latest version is not downloadable, but the one before.
For JDK 12 the latest version is downloadable.

Agree, later will add PR with possibility download it from GCP or AWS cloud as workaround
i guess it will be useful

I think you can already do that. Just define the URL in the playbook, where you uploaded the JDK, like this:
- java_download_from: mirror
- java_mirror: "http://some.url/jdk-8u172-macosx-x64.dmg"

Or what exactly do you have in mind?


Better handling of Google Analytics

This PR:

Removes the inline script from the base template
Adds the GA script in the main JS manifest
Will only invoke GA if DoNotTrack is not set to 1.

See: https://developer.mozilla.org/en-US/docs/Web/API/Navigator/doNotTrack

To be honest I haven't done DNT before - the MDN article you link to does note it's an experimental technology - are there any browser compatibility issues we might come across?

With this polyfill:
function DNT () {
   if ('msDoNotTrack' in navigator) return navigator.msDoNotTrack;
   if ('doNotTrack' in window)      return window.doNotTrack;
   if ('doNotTrack' in navigator)   return navigator.doNotTrack;
   return 0;
 };

…we're saying: If your browser doesn't support DNT, then we'll set your DNT policy to 0 (or Track me by default).
But if your browser does support DNT, through one of the 3 APIs we check for, then we'll check what your DNT status is.
If DNT is 1, we don't load GA.
If DNT is 0 (default) we'll load GA.

Right - should be fine then - let's put it up


Implement SQLGlot server

Description
We want to use tobymao/sqlglot for converting sql to other unsupported data sources.
But its language is Python, so we created a minor server via tiangolo/fastapi.
Our test benchmark just uses TPCH to transpile and run them successfully.
We create TestingSQLGlotServer for the unit test to wrap up the executing process in Python.
We also temporarily wrap the Snowflake lib via TestingSnowflake for the unit test.
We put the SQLGlot server and wren-server in one container, so we must use a wrapper shell to run two processes.
Environment variable

SQLGLOT_PORT: default 8000
SQLGLOT_LOG_LEVEL: default INFO
SNOWFLAKE_URL
SNOWFLAKE_USER
SNOWFLAKE_PASSWORD

SQLGlot server API
POST /sqlglot/transpile
Request
{
  "sql": "SELECT generate_array(1, 10)",
  "read": "bigquery",
  "write": "duckdb",
}

Response
{
  "sql": "SELECT GENERATE_SERIES(1, 10)"
}

Known issues
We also found that SQLGlot does not support concurrent requests in Python. It will cause a deadlock. So we use a fixed thread pool with one thread to protect it.
[ERROR]   File "/tmp/testing-sqlglot-venv8819346059888102008/lib/python3.10/site-packages/sqlglot/helper.py", line 168, in apply_index_offset
[ERROR]     from sqlglot.optimizer.annotate_types import annotate_types
[ERROR]   File "/tmp/testing-sqlglot-venv8819346059888102008/lib/python3.10/site-packages/sqlglot/optimizer/annotate_types.py", line 15, in <module>
[ERROR]     from sqlglot.optimizer.scope import Scope, traverse_scope
[ERROR]   File "<frozen importlib._bootstrap>", line 1024, in _find_and_load
[ERROR]   File "<frozen importlib._bootstrap>", line 171, in __enter__
[ERROR]   File "<frozen importlib._bootstrap>", line 116, in acquire
[ERROR] _frozen_importlib._DeadlockError: deadlock detected by _ModuleLock('sqlglot.optimizer.scope') at<PHONE_NUMBER>69520

@goldmedal I found that SQLGlot does not support multiple requests simultaneously. I will add the queue to protect it.

@goldmedal I found that SQLGlot does not support multiple requests simultaneously. I will add the queue to protect it.

Isn't it thread-safe? I'm not sure it's a good idea about use queue. Can we create multiple sqlglot instance to handle the concurrent request? The queue maybe the performance bottle neck of the concurrent queries.

@goldmedal I found that SQLGlot does not support multiple requests simultaneously. I will add the queue to protect it.

Isn't it thread-safe? I'm not sure it's a good idea about using queue. Can we create multiple sqlglot instance to handle the concurrent request? The queue maybe the performance bottle neck of the concurrent queries.

No, the problem is on the sqlglot. If we want to concurrent requests, we need to create many python servers.

I tested the sqlglot with the followed code.
import threading
import time
import sqlglot
sql = """
SELECT * FROM tpch.tiny.orders
"""

sql2 = """
SELECT * FROM tpch.tiny.customer
"""

def task1():
    for _ in range(10):
        print(sqlglot.transpile(sql, read="trino",write="bigquery", identify=True, pretty=True)[0])
        print("Task 1 is executing...")
        time.sleep(1)

def task2():
    for _ in range(5):
        print(sqlglot.transpile(sql2, read="trino",write="bigquery", identify=True, pretty=True)[0])
        print("Task 2 is executing...")
        time.sleep(2)

if __name__ == "__main__":
    thread1 = threading.Thread(target=task1)
    thread2 = threading.Thread(target=task2)

    thread1.start()
    thread2.start()

    thread1.join()
    thread2.join()

    print("All threads have finished executing.")

I think that it's thread-safe. Could you post the error message of the concurrent request?

I tested the sqlglot with the followed code.
I think that it's thread-safe. Could you post the error message of the concurrent request?

[ERROR]   File "/tmp/testing-sqlglot-venv8819346059888102008/lib/python3.10/site-packages/sqlglot/helper.py", line 168, in apply_index_offset
[ERROR]     from sqlglot.optimizer.annotate_types import annotate_types
[ERROR]   File "/tmp/testing-sqlglot-venv8819346059888102008/lib/python3.10/site-packages/sqlglot/optimizer/annotate_types.py", line 15, in <module>
[ERROR]     from sqlglot.optimizer.scope import Scope, traverse_scope
[ERROR]   File "<frozen importlib._bootstrap>", line 1024, in _find_and_load
[ERROR]   File "<frozen importlib._bootstrap>", line 171, in __enter__
[ERROR]   File "<frozen importlib._bootstrap>", line 116, in acquire
[ERROR] _frozen_importlib._DeadlockError: deadlock detected by _ModuleLock('sqlglot.optimizer.scope') at<PHONE_NUMBER>69520

Python is difficult to run concurrently, But Fastapi can easily reappear.

I tested the sqlglot with the followed code.
I think that it's thread-safe. Could you post the error message of the concurrent request?

[ERROR]   File "/tmp/testing-sqlglot-venv8819346059888102008/lib/python3.10/site-packages/sqlglot/helper.py", line 168, in apply_index_offset
[ERROR]     from sqlglot.optimizer.annotate_types import annotate_types
[ERROR]   File "/tmp/testing-sqlglot-venv8819346059888102008/lib/python3.10/site-packages/sqlglot/optimizer/annotate_types.py", line 15, in <module>
[ERROR]     from sqlglot.optimizer.scope import Scope, traverse_scope
[ERROR]   File "<frozen importlib._bootstrap>", line 1024, in _find_and_load
[ERROR]   File "<frozen importlib._bootstrap>", line 171, in __enter__
[ERROR]   File "<frozen importlib._bootstrap>", line 116, in acquire
[ERROR] _frozen_importlib._DeadlockError: deadlock detected by _ModuleLock('sqlglot.optimizer.scope') at<PHONE_NUMBER>69520

Python is difficult to run concurrently, But Fastapi can easily reappear.

I can't reappear this problem after making the test class with a single thread by another test case like sending 100 requests at the same time.


rsl: log now incrementally writes output

Aimed to solve issue #630
The writer, which is now modified to call a buffered Write by default, is now passed into the command to identify all rsl entries and write them to output.
The main command PrintAllEntriesInRangeFor is mostly a copy and paste of GetReferenceEntriesInRangeForRef. So there is duplication of code in internal/rsl/rsl.go.
My reasoning  for this approach is mainly to follow the idea that each function should have one job. If I were to use optional parameters in and conditionals to get GetReferenceEntriesInRangeForRef to print, then this function would both be a getter function as well as a printing function. I think this is worse for the health of the codebase than just repeating myself. Additionally there are four other instances of  GetReferenceEntriesInRangeForRef being used in various parts of the codebase so I reasoned it was best not to tamper with it. What do you ya'll think?
I can add tests to this PR later to test the different pagers less and more because they may not implement a buffered Write by default. But I wanted to get feedback before proceeding.
(P.S I think this project is pretty cool I'd be happy to hack on this with ya'll)

I ended up sleeping on it and tried a different approach. A boolean parameter called isReturnEntriesOrdered, which dictates if  all the reference entries are returned in sorted or reversed order, was added to GetReferenceEntriesInRangeForRef. It should be cleaner implementation because it deletes two functions I had previously added as well as leaves the display package isolated to cmd/rsl/log

Hey @haotran-california, thanks for taking a stab at this! I think it might be worth taking a step back and identifying the key issue. Basically, gittuf rsl log takes a long time if the repository has a bunch of entries in refs/gittuf/reference-state-log, especially on some operating systems where loading git objects is more expensive than others. I think we might want to amend the original issue because it's not just about writing this in a buffered way but also just how many entries are loaded before it's displayed. This might mean more surgery with popping into internal/rsl in how entries are returned to the writer? WDYT?
also cc @wlynch.

It was honestly pretty fun and the codebase is pretty well organized. I'd be happy to give a more thoughtful stab at this issue after it is redefined. Also when I am in agreement with you @wlynch
Here's my understanding so far.
Suppose you have thousands of commits in the refs/gittuf/reference-state-log namespace. In my current solution, the user has to wait for gittuf to read all entries from beginning to end before anything starts printing on screen. It could take a few seconds and make the gittuf rsl log command look broken. So the ideal solution is to write to the screen while reading the commits in the rsl. This way the user instantaneously gets a logs printed to their console while they wait.
Perhaps this can be implemented in rsl/internal by creating and function like GetNextReferenceEntriesFromCurrent(arg1, arg2) which takes in the current reference entry as arg1 and the number of entries to read as arg2 and returns some array of entries. I feel like this is what you're hinting at by saying it's also about how many entries are loaded.
The reason we need to load arg2 number of entries is that to display a log we need to account for AnnotationEntries. Let's say a ReferenceEntry appears at index x, then it's corresponding  annotation could possibly exist at index x + a, where a is len(rsl) - x. So it's possible for the Annotation to exist anywhere in the rsl. But if we assume users will generally annotate a entry within like 50 or so changes to the rsl, then we can just read 50 commits and see if there is an annotation or otherwise move on. Although this might miss some annotations the buffered reading will allow the for user to have immediate output.
I kind of had the idea of reworking the internals/rsl more extensively at first. But I was a bit scared to make such a major change as my first issue. And I honestly didn't have all the ideas in place either.

I think what you're describing aligns with my thinking on this. No amount of buffered writing will solve this issue if we still spend a bunch of time loading all entries into memory. I'm not sure of the best way to handle this. Do we just continually load the next n entries behind the scenes and write to the buffer? Does that interplay well with pager programs? Can we track what the user has seen and lazy load only when necessary? etc

@zilinski @adiyita
Thank you for both getting back to me so quick. I was going to respond earlier but decided to spend some time hacking on things first before replying.
What if we split up the entries in the output like so?

PRINT ALL REF ENTRIES
PRINT ALL ANNOTATIONS
This would mean we can do buffered read of entries followed by buffered write of just the references. While collecting all the annotations along the way. The user will see continuous output without an initial delay. And this log correctly contains and displays all annotations without missing any, which was not guaranteed by the previous methods we thought of together.
My previous buffer method could miss some annotations if they were beyond the length of the buffer.
Apparently in a pager you can track keystrokes as inputs.  In my head I reasoned that if the user spams down arrow or the j key then there's a chance not enough time has passed for the program to get all relevant annotations for that next buffer. But now that I'm writing that down it seems pretty unlikely.
What do ya'll think?

10,000 RSL Entries
command: time gittuf rsl log
Error: write |1: broken pipe
real    1m42.868s
user    1m3.208s
sys     1m1.677s

I also ended up getting curious about the 1000 entries and subsequently the 10,000 entries test case and timed a few different runs. Here's an example of one of those runs with my implementation and some of my observations.
 Secondly, I noticed that 95% of the runtime of the log function was just the GetFirstEntry as it loads all entries into memory via a cache. So when I wrote optimized code for displaying entries it just executed the other 5% more quickly. This meant that my function was marginally faster if not slower sometimes. Thirdly, I suppose test cases will never have to account for more than around 20,000 commits as the largest projects I'm aware of has roughly that amount.
Not sure if this information is super useful besides the pipe breaking but I thought I might share.

@haotran-california take a look at https://github.com/gittuf/gittuf/pull/666/commits/0b20028bf04adcf25dbfce8e9fde6c739b7ac4ca, thanks.
cc @patzielinski

@adityasaky Yeah it can totally run without the GetNextReferenceEntryBuffer function, the changes are succinct

@haotran-california one note, could you clear up the commit history? Also, we prefer not having merge commits when the feature branch is out of date, instead opting for a rebase based workflow. Thanks!

Sure! I'd be happy to try and clean this up, thank you for all the guidance and approvals by @patzielinski

@patzielinski
I ended up failing to cleanup the commit history and made a mess. I think I failed to include the main branch in rebasing. Would it be okay to use a new PR?


no-implicit-dependencies should consider paths compiler option

Bug Report

TSLint version: 5.11.0
TypeScript version: 2.9.2
Running TSLint via: CLI

TypeScript code being linted
import foo from "bar/foo";

with tslint.json configuration:
{
    "defaultSeverity": "error",
    "rules": {
        "no-implicit-dependencies": [true, "dev"]
    }
}

Actual behavior
ERROR: /Users/elena/Projects/demo/ts/main.ts[1, 17]: Module 'bar' is not listed as dependency in package.json

tsconfig
{
  "compilerOptions": {
    "module": "commonjs",
    "lib": ["es2017"],
    "strict": true,

    "baseUrl": "./",
    "paths": {
      "bar/*":["src/bar/*"]
    },
  }
}

Expected behavior
Rule should be able to look into tsconfig and check if imported module matches one of the paths mapping. I think it can be parametrised behaviour.

Seems to be a duplicate of https://github.com/palantir/tslint/issues/3483 Refer to solution in that thread.

It's not a duplicate, it should automatically white-list everything that is listed in tsconfig paths


File input field clears when different field gets focus

Hi, having trouble with file inputs in a complex form scenario. I have a multi-page (wizard) form, where one of the steps contains a file input.
Everything goes as expected when I pick a file through the file input. The FileList containing a single file is passed to validation and afterwards back in react component the fields.file.value is a FileList instance of length 1. But once I focus any other input field on the save form page, the FileList becomes empty.

Code
Relevant code blocks from the above gif example.

the file variable is the field object from this.props.fields.

Currently selected file name box
handleFileRemove () {
  const file = this.props.fields.biometric.file;
  file.onChange(null);
}

let fileName = 'No file selected';
let fileRemoveBtn = null;

if (file.value instanceof FileList && file.value.length) {
  fileName = file.value[0].name;
  fileRemoveBtn = (

  );
}

  {fileName}
  {fileRemoveBtn}

The file input button

    {'Browse file'}
    <input
      type="file"
      {...file}
      value={''}
    />

UPDATE
Found out from debugging redux actions that the redux-form/CHANGE for the file input contains a empty FileList. But the validation function receives the correct/non-empty FileList. Have tried removing the validation, just to check if somehow it does not mutate, which it didn't.

onBlur not called on file input
Also noticed that onBlur is not called, thus touched always stays false. Resolved it by attaching my own onChange listener of the file input, that just proxies the event to the fields onBlur so that touched gets modified.
handleFileChange (ev) {
  const fileField = this.props.fields.biometric.file;
  fileField.onBlur(ev);
}

Setup

react: "15.1.0"
redux: "3.5.2"
redux-form: "5.2.5"

You could try to noop the default onBlur handler since Redux Form will try to override the value by extracting it from the blur event.
onBlur={() => this.props.fields.biometric.file.onBlur()}
                                               ^^^^^^^^
                                               no event

Solved the input file clearing by passing undefined instead of an empty string.
<input
  type="file"
  {...file}
  onChange={this.handleFileChange.bind(this)}
  value={undefined}
/>

And solved the onBlur issue by handling the onChange and sending the event to field.onBlur.
handleFileChange (ev) {
  const fileField = this.props.fields.biometric.file;
  fileField.onBlur(ev);
  this.forceUpdate();
}

Edit2: Be careful with shouldComponentUpdate because diffing FileList may fail

I used forceUpdate() to force a update for the file.


TestTemplateLevelHooksWaitForTriggeredHook fail sometimes (flakey test)

Pre-requisites

[X] I have double-checked my configuration
[X] I can confirm the issue exists when I tested with :latest
[X] I have searched existing issues and could not find a match for this bug
[X] I'd like to contribute the fix myself (see contributing guide)

What happened/what did you expect to happen?
hook pod didn't created.
Version
latest
Paste a small workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: example-steps
spec:
  entrypoint: main
  templates:
    - name: main
      steps:
        - - name: job
            template: argosay
            hooks:
              running:
                expression: steps['job'].status == "Running"
                template: argosay-sleep-2seconds
              failed:
                expression: steps['job'].status == "Failed"
                template: argosay-sleep-2seconds

    - name: argosay
      container:
        image: argoproj/argosay:v2
        command: ["/bin/sh", "-c"]
        args: ["/bin/sleep 1; /argosay"]
    - name: argosay-sleep-2seconds
      container:
        image: argoproj/argosay:v2
        command: ["/bin/sh", "-c"]
        args: ["/bin/sleep 2; /argosay"]

✔ example-stepsjkrkr   Workflow  7s
 └ ✔ example-stepsjkrkr Steps     7s
 └ ✔ job                Pod       4s
 └ ✔ [0]                StepGroup 7s

Condition "to be Succeeded" met after 7s
Checking expectation example-stepsjkrkr
example-stepsjkrkr : Succeeded
    hooks_test.go:506:
        	Error Trace:	/home/runner/work/argo-workflows/argo-workflows/test/e2e/hooks_test.go:506
        	            				/home/runner/work/argo-workflows/argo-workflows/test/e2e/fixtures/then.go:69
        	            				/home/runner/work/argo-workflows/argo-workflows/test/e2e/fixtures/then.go:44
        	            				/home/runner/work/argo-workflows/argo-workflows/test/e2e/hooks_test.go:504
        	Error:      	Not equal:
        	            	expected: "1/1"
        	            	actual  : "2/2"

        	            	Diff:
        	            	--- Expected
        	            	+++ Actual
        	            	@@ -1,2 +1,2 @@
        	            	-(v1alpha1.Progress) (len=3) "1/1"
        	            	+(v1alpha1.Progress) (len=3) "2/2"

        	Test:       	TestHooksSuite/TestTemplateLevelHooksWaitForTriggeredHook
Checking expectation example-stepsjkrkr
example-stepsjkrkr : Succeeded
Did not find node
    then.go:111: Did not find expected node

### Logs from the workflow controller

```text
kubectl logs -n argo deploy/workflow-controller | grep ${workflow}

Logs from in your workflow's wait container
kubectl logs -n argo -c wait -l workflows.argoproj.io/workflow=${workflow},workflow.argoproj.io/phase!=Succeeded

no create hook pod.
2024-03-26T07:06:04.8770095Z controller: time="2024-03-26T07:05:56.115Z" level=warning msg="Non-transient error: pods \"lifecycle-hook-tmpl-level-h84lb-1340600742-agent\" not found"
2024-03-26T07:06:04.8770614Z controller: time="2024-03-26T07:05:56.119Z" level=info msg="Workflow already deleted 'argo/http-template-par-sqx7r'"
2024-03-26T07:06:04.8771635Z controller: time="2024-03-26T07:05:56.156Z" level=info msg="cleaning up pod" action=labelPodCompleted key=argo/lifecycle-hook-tmpl-level-h84lb-argosay-617673753/labelPodCompleted
2024-03-26T07:06:04.8772309Z controller: time="2024-03-26T07:05:56.164Z" level=info msg="insignificant pod change" key=argo/lifecycle-hook-tmpl-level-h84lb-argosay-617673753
2024-03-26T07:06:04.8773000Z controller: time="2024-03-26T07:05:56.286Z" level=info msg="Processing workflow" Phase= ResourceVersion=2390 namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8773543Z controller: time="2024-03-26T07:05:56.290Z" level=info msg="resolved artifact repository" artifactRepositoryRef="argo/#"
2024-03-26T07:06:04.8774174Z controller: time="2024-03-26T07:05:56.290Z" level=info msg="Task-result reconciliation" namespace=argo numObjs=0 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8774752Z controller: time="2024-03-26T07:05:56.290Z" level=info msg="Updated phase  -> Running" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8775452Z controller: time="2024-03-26T07:05:56.290Z" level=warning msg="Node was nil, will be initialized as type Skipped" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8776233Z controller: time="2024-03-26T07:05:56.290Z" level=info msg="was unable to obtain node for , letting display name to be nodeName" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8776930Z controller: time="2024-03-26T07:05:56.290Z" level=info msg="Steps node example-stepsjkrkr initialized Running" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8777712Z controller: time="2024-03-26T07:05:56.290Z" level=info msg="StepGroup node example-stepsjkrkr-3408461935 initialized Running" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8778406Z controller: time="2024-03-26T07:05:56.290Z" level=warning msg="Node was nil, will be initialized as type Skipped" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8779177Z controller: time="2024-03-26T07:05:56.290Z" level=info msg="Pod node example-stepsjkrkr-1690630010 initialized Pending" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8780024Z controller: time="2024-03-26T07:05:56.297Z" level=info msg="Created pod: example-stepsjkrkr[0].job (example-stepsjkrkr-argosay-1690630010)" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8780845Z controller: time="2024-03-26T07:05:56.298Z" level=info msg="Workflow step group node example-stepsjkrkr-3408461935 not yet completed" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8781605Z controller: time="2024-03-26T07:05:56.298Z" level=info msg="TaskSet Reconciliation" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8782152Z controller: time="2024-03-26T07:05:56.298Z" level=info msg=reconcileAgentPod namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8782613Z controller: time="2024-03-26T07:05:56.298Z" level=info msg="Workflow to be dehydrated" Workflow Size=1784
2024-03-26T07:06:04.8783369Z controller: time="2024-03-26T07:05:56.305Z" level=info msg="Workflow update successful" namespace=argo phase=Running resourceVersion=2394 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8783984Z controller: time="2024-03-26T07:05:56.305Z" level=info msg="woc.controller.wfQueue.Len() is 0" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8784176Z port-forward: Handling connection for 9000
2024-03-26T07:06:04.8785008Z controller: time="2024-03-26T07:05:56.997Z" level=info msg="cleaning up pod" action=killContainers key=argo/lifecycle-hook-tmpl-level-h84lb-argosay-617673753/killContainers
2024-03-26T07:06:04.8785728Z controller: time="2024-03-26T07:05:57.286Z" level=info msg="Processing workflow" Phase=Running ResourceVersion=2394 namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8786363Z controller: time="2024-03-26T07:05:57.287Z" level=info msg="Task-result reconciliation" namespace=argo numObjs=0 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8787615Z controller: time="2024-03-26T07:05:57.287Z" level=info msg="node changed" namespace=argo new.message=PodInitializing new.phase=Pending new.progress=0/1 nodeID=example-stepsjkrkr-1690630010 old.message= old.phase=Pending old.progress=0/1 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8788559Z controller: time="2024-03-26T07:05:57.287Z" level=info msg="Workflow step group node example-stepsjkrkr-3408461935 not yet completed" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8789125Z controller: time="2024-03-26T07:05:57.287Z" level=info msg="TaskSet Reconciliation" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8789661Z controller: time="2024-03-26T07:05:57.287Z" level=info msg=reconcileAgentPod namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8790123Z controller: time="2024-03-26T07:05:57.287Z" level=info msg="Workflow to be dehydrated" Workflow Size=2091
2024-03-26T07:06:04.8790878Z controller: time="2024-03-26T07:05:57.293Z" level=info msg="Workflow update successful" namespace=argo phase=Running resourceVersion=2403 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8791500Z controller: time="2024-03-26T07:05:57.293Z" level=info msg="woc.controller.wfQueue.Len() is 0" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8792219Z controller: time="2024-03-26T07:05:59.338Z" level=info msg="Processing workflow" Phase=Running ResourceVersion=2403 namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8792860Z controller: time="2024-03-26T07:05:59.339Z" level=info msg="Task-result reconciliation" namespace=argo numObjs=1 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8793606Z controller: time="2024-03-26T07:05:59.339Z" level=info msg="task-result changed" namespace=argo nodeID=example-stepsjkrkr-1690630010 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8794310Z controller: time="2024-03-26T07:05:59.339Z" level=info msg="node unchanged" namespace=argo nodeID=example-stepsjkrkr-1690630010 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8795136Z controller: time="2024-03-26T07:05:59.340Z" level=info msg="Workflow step group node example-stepsjkrkr-3408461935 not yet completed" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8795704Z controller: time="2024-03-26T07:05:59.340Z" level=info msg="TaskSet Reconciliation" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8796240Z controller: time="2024-03-26T07:05:59.340Z" level=info msg=reconcileAgentPod namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8796807Z controller: time="2024-03-26T07:05:59.340Z" level=info msg="Workflow to be dehydrated" Workflow Size=2127
2024-03-26T07:06:04.8797559Z controller: time="2024-03-26T07:05:59.350Z" level=info msg="Workflow update successful" namespace=argo phase=Running resourceVersion=2411 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8798186Z controller: time="2024-03-26T07:05:59.350Z" level=info msg="woc.controller.wfQueue.Len() is 0" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8798369Z port-forward: Handling connection for 9000
2024-03-26T07:06:04.8799093Z controller: time="2024-03-26T07:06:01.958Z" level=info msg="Processing workflow" Phase=Running ResourceVersion=2411 namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8799716Z controller: time="2024-03-26T07:06:01.959Z" level=info msg="Task-result reconciliation" namespace=argo numObjs=1 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8800457Z controller: time="2024-03-26T07:06:01.960Z" level=info msg="task-result changed" namespace=argo nodeID=example-stepsjkrkr-1690630010 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8801705Z controller: time="2024-03-26T07:06:01.961Z" level=info msg="node changed" namespace=argo new.message= new.phase=Pending new.progress=0/1 nodeID=example-stepsjkrkr-1690630010 old.message=PodInitializing old.phase=Pending old.progress=0/1 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8802530Z controller: time="2024-03-26T07:06:01.966Z" level=info msg="Workflow step group node example-stepsjkrkr-3408461935 not yet completed" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8803218Z controller: time="2024-03-26T07:06:01.966Z" level=info msg="TaskSet Reconciliation" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8803757Z controller: time="2024-03-26T07:06:01.966Z" level=info msg=reconcileAgentPod namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8804217Z controller: time="2024-03-26T07:06:01.966Z" level=info msg="Workflow to be dehydrated" Workflow Size=2229
2024-03-26T07:06:04.8804974Z controller: time="2024-03-26T07:06:01.975Z" level=info msg="Workflow update successful" namespace=argo phase=Running resourceVersion=2417 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8805592Z controller: time="2024-03-26T07:06:01.975Z" level=info msg="woc.controller.wfQueue.Len() is 0" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8805997Z port-forward: Handling connection for 9000
2024-03-26T07:06:04.8806732Z controller: time="2024-03-26T07:06:03.832Z" level=info msg="Processing workflow" Phase=Running ResourceVersion=2417 namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8807367Z controller: time="2024-03-26T07:06:03.832Z" level=info msg="Task-result reconciliation" namespace=argo numObjs=1 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8808103Z controller: time="2024-03-26T07:06:03.832Z" level=info msg="task-result changed" namespace=argo nodeID=example-stepsjkrkr-1690630010 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8809421Z controller: time="2024-03-26T07:06:03.832Z" level=info msg="node changed" namespace=argo new.message= new.phase=Succeeded new.progress=0/1 nodeID=example-stepsjkrkr-1690630010 old.message= old.phase=Pending old.progress=0/1 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8810175Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="Step group node example-stepsjkrkr-3408461935 successful" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8810924Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="node example-stepsjkrkr-3408461935 phase Running -> Succeeded" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8811796Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="node example-stepsjkrkr-3408461935 finished: 2024-03-26 07:06:03.83341557 +0000 UTC" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8812661Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="Outbound nodes of example-stepsjkrkr-1690630010 is [example-stepsjkrkr-1690630010]" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8813662Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="Outbound nodes of example-stepsjkrkr is [example-stepsjkrkr-1690630010]" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8814370Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="node example-stepsjkrkr phase Running -> Succeeded" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8815170Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="node example-stepsjkrkr finished: 2024-03-26 07:06:03.833455654 +0000 UTC" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8815732Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="TaskSet Reconciliation" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8816266Z controller: time="2024-03-26T07:06:03.833Z" level=info msg=reconcileAgentPod namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8816881Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="Updated phase Running -> Succeeded" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8817476Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="Marking workflow completed" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8817935Z controller: time="2024-03-26T07:06:03.833Z" level=info msg="Workflow to be dehydrated" Workflow Size=2413
2024-03-26T07:06:04.8818615Z controller: time="2024-03-26T07:06:03.838Z" level=info msg="cleaning up pod" action=deletePod key=argo/example-stepsjkrkr-1340600742-agent/deletePod
2024-03-26T07:06:04.8819517Z controller: time="2024-03-26T07:06:03.839Z" level=info msg="Workflow update successful" namespace=argo phase=Succeeded resourceVersion=2422 workflow=example-stepsjkrkr
2024-03-26T07:06:04.8820145Z controller: time="2024-03-26T07:06:03.839Z" level=info msg="woc.controller.wfQueue.Len() is 0" namespace=argo workflow=example-stepsjkrkr
2024-03-26T07:06:04.8820833Z controller: time="2024-03-26T07:06:03.840Z" level=info msg="Queueing Succeeded workflow argo/cwft-wf-b2r5b for delete due to max rention(10 workflows)"
2024-03-26T07:06:04.8821354Z controller: time="2024-03-26T07:06:03.840Z" level=info msg="Deleting garbage collected workflow 'argo/cwft-wf-b2r5b'"
2024-03-26T07:06:04.8822400Z controller: time="2024-03-26T07:06:03.841Z" level=warning msg="failed to clean-up pod" action=deletePod error="pods \"example-stepsjkrkr-1340600742-agent\" not found" key=argo/example-stepsjkrkr-1340600742-agent/deletePod
2024-03-26T07:06:04.8823033Z controller: time="2024-03-26T07:06:03.841Z" level=warning msg="Non-transient error: pods \"example-stepsjkrkr-1340600742-agent\" not found"
2024-03-26T07:06:04.8823507Z controller: time="2024-03-26T07:06:03.844Z" level=info msg="Workflow already deleted 'argo/cwft-wf-b2r5b'"
2024-03-26T07:06:04.8824277Z controller: time="2024-03-26T07:06:03.863Z" level=info msg="cleaning up pod" action=labelPodCompleted key=argo/example-stepsjkrkr-argosay-1690630010/labelPodCompleted


Add signs for staged hunks

Is your feature request related to a problem? Please describe.
Thanks for the really awesome plugin. I'd like to suggest adding a new sign for a staged section. If I just staged that section, it is clear that only that section is added, but on a file, when adding multiple pieces of change into a single commit, it can be tricky to know what is included just by looking at the file
Describe the solution you'd like
Another sign, just like add or change, but in a different color (say, cyan, purple...) that would visually indicate that it is staged.
Describe alternatives you've considered
Didn't really think of an alternative. It could be either "let's go for it" or "no can do", just wanted to suggest it :)
Additional context
Nope, just wanted to say thanks once again.

This is something I've wanted to implement for a long time. I already attempted this in #303, but I found it quite difficult to handle all the intersections with different features. Though it is still planned to be implemented eventually.
Basically, #303 adds the ability for 'secondary signs' which can be signs for any comparison, including staged.

Just a thought, would it be possible to apply highlighting to staged regions maybe? Could imagine slightly changed background as a good indicator here.

Yes, signs already allow this.

I imagine the issue might be if, for example, you change a line that contains something that is staged.
I might be completely wrong, but the way I understand this is that the sign column is a flattened projection of whatever happens in the text to the side. Then, there would be a priority between the statuses.
I'll try to demonstrate below.

x: Deleted
~: Changed
*: Staged

Imagine there is some staged block
*   local x = {
*
*     foo = function(a) return a + 1 end
*  }

But there's an error in the function and you fix it, while also cleaning some whitespace:
x   local x = {
~     foo = function(a) return a - 1 end
*  }

The fact that there is a staged block is lower in priority than the fact that there is a change in the line or a deletion. To link to @gegoune's  comment. A slight background change in the staged area could show the whole block, even though it wouldn't represent the whole truth since a deleted line is present in the staged block, but not in the source code, but that should be obvious by the sign of a deleted line on the sign column.
I hope this makes some sense 😅

Yes, signs already allow this
Wait so how do I highlight staged hunks? is there a DiffStaged highlight group?


Fix bad merge

Summary
Fix a bad merge introduced in https://github.com/mattermost/mattermost-plugin-apps/commit/3380a5922c4d7d082cc5e7efccf745db3ebfe7fc.
Ticket Link
None

Missed that in the review :confused:

We need tests


Endpoint: GET /api/customization

The endpoint GET /api/customization should return an object like in GET /api/application for the status.
Like the following example:
      "statusId": {
        "id": 0,
        "applicationss": [
          "Applications"
        ],
        "status": ""
      }

Done


fix(transformer/class-properties): replace this and class name in static blocks

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#8035  👈 (View in Graphite)
#7982 : 1 other dependent PR (#7750 )
#8007
#8001
#7995
#8028
#8031
main

How to use the Graphite Merge Queue
Add either label to this PR to merge it via the merge queue:

0-merge - adds this PR to the back of the merge queue
hotfix - for urgent hot fixes, skip the queue and merge this PR next

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

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


fixed backticks typo in configure-tls.md

Hey Folks,
while I a was reading the docs I found a couple of unnecessary backticks => ` left over from reformatting.
this is nothing serious but still looking better this way.

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "master" git@github.com:axhm3a/swarm.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

LGTM

docs CI is not related, merging

oh, hmf, can't do that on mobile :smile:

ping @svendowideit for the merge :-)

LGTM, OK, @thaJeztah
Merging this.


Llum command package obsolete for Laravel 5.5 with package discovery?

Llum command package obsolete for Laravel 5.5 with package discovery?

Is also sed (problems in multiplatform environments like Windows) only used with package command? We could remove sed dependency?

TODO tasks:

Remove command file
Remove registration
Remove https://github.com/acacha/llum/blob/master/src/config/packages.php


Tesseract Fails on TIF Images

For your consideration...
Let the user perform pre-processing on the file.  RTesseract should enforce that a suitable file is given to the OCR engine, but not pre-process a .tif temp file.
On my machine tesseract fails on the .tif file, but works great on the corresponding source .png, or .jpg
Thanks for a great gem!

Coverage decreased (-12.04%) to 87.96% when pulling c54299490f8658a43580a1f4ec8de9d6a21f0a64 on vanboom:master into e519bfbb9d9245e961b58797b43a8970255724cc on dannnylo:master.

Coverage decreased (-12.04%) to 87.96% when pulling c54299490f8658a43580a1f4ec8de9d6a21f0a64 on vanboom:master into e519bfbb9d9245e961b58797b43a8970255724cc on dannnylo:master.

Coverage decreased (-12.04%) to 87.96% when pulling 7384ea7bbaa900dee30713172fe72c651b641fcc on vanboom:master into e519bfbb9d9245e961b58797b43a8970255724cc on dannnylo:master.

Coverage decreased (-12.04%) to 87.96% when pulling 7384ea7bbaa900dee30713172fe72c651b641fcc on vanboom:master into e519bfbb9d9245e961b58797b43a8970255724cc on dannnylo:master.


bug(v2): href links in Footer append a leading slash to mailto: links

🐛 Bug Report
Using the preset-classic theme, when you add a link to the footer element of the themeConfig using an href, it automatically appends a leading slash if the content of the href doesn't start with an http. This breaks mailto: links.
Have you read the Contributing Guidelines on issues?
Yes.
To Reproduce

Follow installation instructions to install docusaurus v2 with the classic theme. E.g. npx @docusaurus/init@next init my-website classic
Edit the generated docusaurus.config.js to include a mailto: link in the footer element of the themeConfig. E.g.

module.exports = {
  ...
  themeConfig: {
    footer: {
      style: 'dark',
      links: [
        {
          title: 'Demo',
          items: [
	    {
	      label<EMAIL_ADDRESS>	      href<EMAIL_ADDRESS>	    }
          ],
        },
      ],
      copyright: `Copyright © ${new Date().getFullYear()} Bar, Inc.`,
    },

Run yarn start and click on the<EMAIL_ADDRESS>link in the footer

Expected behavior
When clicking the<EMAIL_ADDRESS>link, I expected it to open a mail app.
Actual Behavior
It actually tries to open<EMAIL_ADDRESS>Your Environment

Docusaurus version used: 2.0.0-alpha.50
Environment name and version:

Chrome version 80.0.3987.163 (Official Build) (64-bit)
node v13.12.0

Operating system and version (desktop or mobile):

MacOS Catalina 10.15.4

Indeed, we failed to account for such a use case and assumed all href values are browser URLs

Thanks. Should I try to fix it and submit a PR? Do you think the correct entry point is to update @docusaurus/Link to take a new prop (e.g. mailto)?


cli version in v0.1.7 is v0.1.6

https://github.com/deepsourcelabs/cli/blob/v0.1.7/constants.go#L4
Also can't overwrite it with ldflags because it's a const
https://www.digitalocean.com/community/tutorials/using-ldflags-to-set-version-information-for-go-applications
I guess this is related to #28

Still relevant

Still relevant

@siddhant-deepsource

Hey @06kellyjac 👋
Thanks for reporting this. Really sorry for the delay. We will surely push a fix and patch it in the upcoming release.

@06kellyjac This has been fixed. Do try out the new v0.2.0 and share feedback. Its currently in beta and we will be releasing a stable release soon after rigorously testing it. Thanks 😃


How to clear the login status and clear the cache?

I performed the login operation. When I tried to change the account to perform the operation, I used the cache of my last login by default.
I need to clear the login status after each execution, and the cache is cleared

@monty8800, there are generally 3 ways:

After each login, you script the code to log out. Or at the start of your code, make a check if the account is in logged in status, then logout before you start the workflow.
There is a Chrome user profile folder in r.tagui_location() --> tagui or .tagui folder depending on your OS and --> src/chrome/tagui_user_profile --> you can write code to delete this whole folder at the end of each run to remove all the cached login and history
3rd way is hack source code of the TagUI engine used by rpa package, to launch Chrome in incognito mode, but this is hacky and you may have to rehack each time you upgrade the package. Also, you need to start a new Python run in order to clear the cache in the incognito mode.

I'll recommend 1 because it is more representative of a normal user workflow, rather than playing around with the cache.


Remove redundant modifier for interface members

Important Read
hotfix
What is the purpose of the pull request
Use this small issue to verify the github action.
https://issues.apache.org/jira/browse/INFRA-25953
Brief change log
(for example:)

Fixed JSON parsing error when persisting state
Added unit tests for schema evolution

Verify this pull request
(Please pick either of the following options)
This pull request is a trivial rework / code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end.
Added TestConversionController to verify the change.
Manually verified the change by running a job locally.

cc @jcamachor, thanks for created a ticket with ASF INFRA to address this. These two github workflow have been triggered automatically.

cc @the-other-tim-brown take a review when free, thanks.


varargs support

In order to compile C code that calls printf in libc, we need to implement the caller side of varargs. And in order to compile printf itself, we need to implement the callee side.

Are there any updates with this? Implementing varargs as a frontend with Cranelift is extremely cumbersome.

There hasn't been any change since the last comment here. Also do you need just support for calling variadic functions or also defining them? The former is a lot easier to support than the latter.

Specifically calling them, although both would be nice.

Just calling them.


[Documentation] No documentation available on receiving Object type messages via JMS

When receiving Object type messages, the receiving serializable class has to be on ballerina classpath (in <Ballerina_home>/bre/lib)
In addition to this, each supported broker type may require additional configurations. For example, ActiveMQ versions 5.12.2 and 5.13.0 (probably upper versions too) [1] require some additional configurations.
These have to be figured out, tested and documented.
[1] http://activemq.apache.org/objectmessage.html

This is tracked at: https://github.com/ballerinalang/connector-jms/issues/6


Unexpected token ... - is the spread operator supported?

I am running Node 8.1.0, developing in TypeScript and setting the output to "EsNext".
Now, I can downgrade my TypeScript output to Es2015, and this problem goes away - but I'd really like to use the spread operator.
This is the offending code:

const someObject = {
    ...someOtherObject
};

Mocha chokes on the spread operator.
Will this ever be a supported feature? What can I do to get mocha to run my program?

It's not really in Mocha's control one way or the other, as the only thing Mocha does about it is require the transpiler (and that only if you use --require <transpiler> or --compilers <extension>:<transpiler>); it's Node that chokes on next-gen features that the transpiler isn't configured to backport (or on anything buggy in the transpiler's implementation). Mocha isn't a JavaScript engine, platform or environment, it's just a library. You can always verify this by running the same transpiler and settings against your project's code and running some of it that uses the spread operator without Mocha.
Most likely you'd need to review the difference between ES2015 and ESNext  TypeScript modes, and Node 8's support (if any) for this specific usage of the spread operator, to make sure this isn't just expected behavior -- and if it should work, check the output to see if it's transpiled correctly (to determine whether the issue is on the TypeScript side or the Node side) and open an issue with the respective project.
(Off the top of my head, my guess is that ES2015 vs. ESNext is the output version of JavaScript, meaning that ES2015 backports everything to work in environments that are only up to ES2015 features and ESNext assumes an up-to-date JS environment and does not backport anything; and based on Node 8 being able to use other versions of the spread operator but not object property assignment I suppose the latter may be defined in a newer version of the JS standard. But all that should be verified in documentation.)


removing minimum stability from composer.json, cache fix for travis, making phpstan green

Codecov Report

Merging #4 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             master      #4   +/-   ##
========================================
  Coverage      93.4%   93.4%
  Complexity      323     323
========================================
  Files             5       5
  Lines           713     713
========================================
  Hits            666     666
  Misses           47      47

Continue to review full report at Codecov.

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


[Coverity CID: 183049] Incorrect expression in /tests/lib/c_lib/src/main.c

Static code scan issues seen in File: /tests/lib/c_lib/src/main.c
Category: Incorrect expression
Function: test_stddef
Component: Tests
CID: 183049
Please fix or provide comments to square it off in coverity in the link: https://scan9.coverity.com/reports.htm#v32951/p12996

This looks False Positive to me. Comparing volatile variable with constant in zassert_*. I don't see any problem there


redo(ticdc): fix redo balckhole storage issues

What problem does this PR solve?

Issue Number: close #10024
What is changed and how it works?
Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)
No code

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
`None`.

/test dm-integration-test

/test dm-integration-test

/test dm-integration-test

/test verify

/retest-required

/retest-required


Please publish GPG key associated with repo

I was unable to verify that 9AC5712CABE9635B65663AB0711C0A9A896FE336 is in fact your key -- it's only self-signed, and there's only a few references to the key hash elsewhere (e.g. a couple of places on GitHub). Can you at least confirm here on GitHub with a :+1: that the key is yours, @luben?

Yes, that's the finger print of my key. Here it is again: 9AC5 712C ABE9 635B 6566 3AB0 711C 0A9A 896F E336


kotlin2cpg unit test suite needs performance improvements

takes up to 2min on a mid-range consumer laptop

down to 30s - 1min thanks to https://github.com/joernio/joern/pull/1451

😛

on a more powerful machine it's ~10s atm

echo "number of cores: " $(grep 'cpu cores' /proc/cpuinfo | uniq | awk '{print $4}') && echo $(awk '/model name/{$1="";$2="";$3=""; print $0;}' /proc/cpuinfo | uniq)
number of cores:  8
Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz

current state isn't too bad as to have this be a top priority, closing


Submit works only when clicking directly on the label of the button.

Submit works only when clicking directly on the label of the button.
If I click bellow or above the label the ripple effect is shown but the form is not submitted.
What am I doing wrong?

Make a codepen or provide some code snippet so we can figure out whats the problem.

With Submit button code it works
It doesn't work with Input
 <input type="submit" name="commit" value="Broken Submit" class="btn waves-effect waves-light" data-disable-with="Broken submit">

Clicking near the end of the button, ops the input, doesn't trigger the action. Here is the codepen
http://codepen.io/gudata/pen/wzWArb

Looks like the class .waves-effect is overriding the default behaviour of the input submit tag.
You can replace
<input type="submit" name="commit" value="Broken Submit" class="btn waves-effect waves-light" data-disable-with="Broken submit">

with
<input type="submit" name="commit" value="Working Submit" class="btn" data-disable-with="Working submit">

It works, but without the waves effect.
When presented, the waves effect is interrupted from the submit action, maybe it is not OK to have effect on the submit button. I haven't found what is the correct behavior for  material design.

You can have a look at Google Material Design Website for material design specification on buttons.
Btw I also agree to you on

maybe it is not OK to have effect on the submit button
as on submitting the user will directly land to other page/same page where waves effect will not be useful.
If u still want to use waves effect with submit button u can go for button tag instead of input tag.

On the link you point in the "Behavior" it is shown that the buttons should have effect, after all the material design for giving material feel.
I have workaround, thanks! You decide about the ticket.

Yes actually button should have effect but in this case on using input the waves are overriding so we can use Button tag with waves effect which is working fine!

You should use the  tag when using waves, see documentation:
http://materializecss.com/buttons.html


Add Home frontend

Create Navbar and 4 routes, 1 for each section as planned.

resolved by https://github.com/Evozone/ok_to_be_not_ok/pull/12


Support setting capture device by label

Currently the only way to select the video capture device is using MediaStreamConstraints deviceId. This is not helpful because the deviceId changes with every new browser session and therefore is not predictable.
However the media devices label property is predictable. Supporting the option to specify the device by label would enable creating multiple VideoCaptures for multiple devices

Thanks will investigate and come back to you . PR is welcome


Instructions on enabling?

Previous versions of the gem had instructions on enabling XML parsing, namely adding config.middleware.insert_after ActionDispatch::ParamsParser, ActionDispatch::XmlParamsParser after ActionDispatch::ParamsParser in config/application.rb and possibly require 'action_dispatch/xml_params_parser' to the list of requires in config/application.rb. That doesn't work in Rails 5 as the structure's changed, and I can't see where it should go.
For reference, if I don't add anything and just leave the gem, XML params get interpreted as a lump of text. If I do try to add in the parser, I get cannot load such file errors. Is there something I'm missing here?

It is enabled by default. When you include the gem it is already enabled.
Can you please provide a sample application that reproduces the error?

Thanks for the response. I've been poking away further, and isolated the cause as not setting the post header to XML using headers: { 'CONTENT_TYPE' => 'application/xml' } in my spec files. My apologies for the confusion - I'd assumed this would happen automatically, but it makes sense that it doesn't.


[suggestion] Warning when wrong ChartDataSet is used for view

This is obviously my fault, but I had quite a lot of problems making sample code work as I had put LineChartView in my storyboard and my sample code was trying to set a BarChartDataSet.
The reason this threw me off is that everything but the data visualization loads. So you can click on a point and get the correct data, you just can't see the bar. So I was clueless as to what the problem was. If it had said "no data loaded" or "Data of incorrect type loaded" it would have been easy to debug :)

I guess it is not a very common case ( you are the first one I guess), since you already knows there are bar chart data set and lines'. Debugging such issues should not be a huge overload. You will get faster when you used several times.
It will also crash if you feed incorrect dataSets, when you encounter forcr casting 'as!' to a wrong class.
If we see more coming, we will think about it.

Yeah just a thought. Did take me quite a while to spot :)


Azure 3.0.0 compatibility fix is not available in the PIP package

Curren behaviour:
When installing with python3 -m pip install wal-e[azure] the version from November is installed rather than the version currently on GitHub which includes a very welcome fix for compatibility with the latest version of Azure library (rather than an old and buggy pre-release version). The README states that it depends on azure==3.0.0 but it is not the case when installed via PIP.
Expected behaviour:
When installing with python3 -m pip install wal-e[azure] the latest version (matching the readme) should be installed.

Ahh ><
pip3 install git+https://github.com/wal-e/wal-e
Solves it for now.


place holder front page rotation (cell cycle dependent phosphoproteome)

putting the file in dropbox
swaffer_CCDP
the aspect ratio isn't great for our box size, but if it looks funny I'm sure Matthew will re-jig it

[ ] Quantitative Phosphoproteomics Reveals the Signaling Dynamics of Cell-Cycle Kinases; ~10K sites reported in PomBase

paper
https://www.cell.com/cell-reports/fulltext/S2211-1247(18)30946-X?_returnURL=https%3A%2F%2Flinkinghub.elsevier.com%2Fretrieve%2Fpii%2FS221112471830946X%3Fshowall%3Dtrue

[ ] announce pombelist with details about paper cut off, how to access below threshold annotations

Draft pombelist post
We are now hosting data from
Quantitative Phosphoproteomics Reveals the Signaling Dynamics of Cell-Cycle Kinases in the Fission Yeast Schizosaccharomyces pombe.
Swaffer MP, Jones AW, Flynn HR, Snijders AP, Nurse P.

This study uses quantitative phosphoproteomics to analyze the fission yeast cell cycle at sufficiently high temporal resolution to distinguish fine-grain differences in substrate phosphorylation dynamics on a proteome-wide scale. This dataset provides a useful resource for investigating the regulatory dynamics of cell-cycle kinases and their substrates.
Nearly 10k phosphorylation events are identified (~1000 sites as heavy cell cycle regulated (both reported in PomBase). However, the authors encourage you to check the cell cycle quantifications in the paper for  the other ~9K sites  which show interesting behaviour but did not pass the threshold criteria for the analysis

What is the task for me?

To do the post as I wasn't quite sure of the status. I can do it if you let me know when it's all live.

OK. We probably ought to wait until Matthew says whether there's any other curation to do in Canto - it would be tragic to announce the modification data and then have to take it away, even temporarily.

Yes that's the plan...

@kimrutherford   this spotlight can go live in the morning too, provided the  new file loads OK

Can this Nurse lab spotlight go live today also? Midori plans to announce this dataset later. All loaded OK:
https://www.pombase.org/reference/PMID:29996109
v

Hi kim, can this one go on the rotations?
Cheers
v

That's added now.

thanks! all done here then


Corso should restore permissions by default

Corso restore configuration currently defaults to not restoring permissions.  The default should be the reverse: always restore permissions unless told otherwise.

Fixed with https://github.com/alcionai/corso/pull/4313


How to profile CockroachDB

Expand contributing-to-cockroachdb.md to cover how to profile CockroachDB.
@tamird

Closing as duplicate of #1197. @tamird, let me know if you disagree.


Text Avatar Play

First thing, PLEASE READ THIS: ReactPlay Code Review Checklist

Description
Avatar based on the user's firstname and lastname with random background color
https://github.com/reactplay/react-play/issues/601
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Manual test
Checklist:

[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

Review Ready

Hello @hiimnhan , Thanks for the requested changes, I will do the final review tomorrow.

@Sachin-chaurasiya Raise for merge when done.

@Sachin-chaurasiya Raise for merge when done.

@atapas , Looks good to me, we can merge the PR.

@all-contributors please add @hiimnhan for Code


Upgrade required elixir to 1.11 and fix warnings

Upgrade minimum required elixir version to 1.11
Remove warnings

warning: use Mix.Config is deprecated. Use the Config module instead
  config/test.exs:1

warning: Application.get_env/3 is discouraged in the module body, use Application.compile_env/3 instead
  lib/ex_phone_number/metadata/phone_metadata.ex:71: ExPhoneNumber.Metadata.PhoneMetadata

Thanks for contributing. I have a question though: Why the update to 1.11? is the library not working with 1.4 or versions below 1.11?

Thanks for contributing. I have a question though: Why the update to 1.11? is the library not working with 1.4 or versions below 1.11?

I believe the changes to the config files (i.e. import Config instead of use Mix.Config) is what is mandating the Elixir version requirement upgrade.

I think that the origin of this PR comes from the fact that if you are on Elixir >= 1.11 and you compile dependencies (and this one in particular) you will see a warning:
% mix deps.compile ex_phone_number --force
==> ex_phone_number
Compiling 22 files (.ex)
warning: Application.get_env/3 is discouraged in the module body, use Application.compile_env/3 instead
  lib/ex_phone_number/metadata/phone_metadata.ex:73: ExPhoneNumber.Metadata.PhoneMetadata

and therefore you could want to address this warning.
The downside of this is making this library not compatible with Elixir < 1.11 which - at least in my eyes - is more worth than hiding a warning a decency compilation. Closing.


are older versions of Fermi tools available via conda?

Hello,
following the instruction in the wiki, I was trying to install an older version of the fermitools. The command you specify to do so
conda install -c conda-forge/label/cf201901 -c fermi fermitools=<VERSION>

works only if <VERSION> is replaced with the current release 1.2.1; any older release produces the error:
Solving environment: failed
PackagesNotFoundError: The following packages are not available from current channels:
  - fermitools=1.1.8

Am I doing something wrong?
Thanks for your support!

The 1.1.X version aren't official releases, so to install one of the you need to specify a label, like "-c fermi/label/dev".  You can read more details in the Testing Page.  You can actually see all the version available in our Anaconda Cloud.

Thanks it worked,
I think you should specify it in the wiki
https://github.com/fermi-lat/Fermitools-conda/wiki/Installation-Instructions#obtaining-a-specific-version
to use
conda install -c conda-forge/label/cf201901 -c fermi/label/dev fermitools=<VERSION>

in order to obtain older versions.
The current instruction is not correct.
Cheers,

Again, the 1.1.X aren't official releases, and we don't encourage people to use them unless they have a specific purpose for testing.  The command would work fine if you put in version 1.0.10, the last official release.


Request to add extension to Open VSX marketplace

The Open VSX marketplace is the default extension hub for VSCodium users. It would be handy to be able to install the extension from VSCodium's search function, instead of using other more inconvenient methods to install the extension.
Related resource:
https://github.com/eclipse/openvsx/wiki/Publishing-Extensions

I'm closing this issue due to inactivity.


Add PerFileJSONMetadataStore

(This includes and extends #21, and should be merged/reviewed after that one is merged.)
This adds PerFileJSONMetadataStore. The original JSONMetadataStore wrote all metadata (hashes) to a single JSON file. That is unlikely to be optimal for many workflows. The approach used in this object creates a separate label at metadata/{filename}.json, corresponding to a JSON file with an object carrying the metadata. This way, we don't need to completely re-export all metadata every time we store an new object.

Hello @dwhswenson! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file gufe/tests/storage/test_metadatastore.py:

Line 132:1: W391 blank line at end of file

I think this should move out of gufe, probably to openfe?

@dwhswenson stale or good to go?

@richardjgowers : IMO, good to go, and then once we have all the currently open storage PRs in, I'll migrate most of storage over to openfe. The only thing that stays is externalresource stuff, because that will be used when we switch shared from filelike to something more abstract (#120).


hps: also expose command line options for the Oxide toolchain

The --nextpnr-timingstrict and --nextpnr-seed options are of particular
interest.

Oh, good to know. I guess it's inevitable we will start to have conflicting options as these scripts continue to grow more and more options.
I'm looking forward to a point where we can just use the yosys/symbiflow toolchain everywhere and take out all the extra complexity for choosing vendor toolchains!


Swagger generate oauth2 scope

Hi, I'm trying to use swagger to generate a swagger.json file.
I've defined a route following the referece, in that way:
// Posts handles the request and returns the required posts written by the specified user
func Posts() echo.HandlerFunc {

	// swagger:route GET /users/{id}/posts user posts getUserPosts
	//
	// List posts on user board, filtered by some parameters.
	//
	// This will show the last posts on the user board by default.
	// You can personalize the request via query string parameters
	//
	//	Security:
	//		oauth: profile:read,base:read
	//
	//	Responses:
	//		default: apiResponse

//..... other code
}

Afther that, I generate the file with generate swagger generate spec -o swagger.json
But the ":" character in the oauth2 scope definition is missing as you can see:
    "paths": {
        "/users/{id}/posts": {
            "get": {
                "description": "This will show the last posts on the user board by default.\nYou can personalize the request via query string parameters",
                "tags": ["user", "posts"],
                "summary": "List posts on user board, filtered by some parameters.",
                "operationId": "getUserPosts",
                "security": [{
                    "oauth": ["profileread", "baseread"]
                }],
                "responses": {
                    "default": {
                        "$ref": "#/responses/apiResponse"
                    }
                }
            }
        }

In my API, scopes follows the following syntax: <resource>[:[read,][write]]
Thus something like profile:read,write base:read or comments:read profile:write is fine in my specification (and in OAuth2 specification too, because the list of scopes con contain anything and scopes must be separated by a single space).
Is there something I'm doing wrong or it's a swagger bug / limitation?
Thank you!

this is a bug in the scanner, it should consider other chars.
https://github.com/go-swagger/go-swagger/blob/master/scan/validators.go#L488
that should probably use a different regex to capture those values.


Content in Discussion component breaking out of closed state

What
The Discussion component isn't quite covering all of the content that should be hidden before the 'show more' button is pressed. This is more/less noticeable depending on how wide the browser is and where the lines wrap.
Where
https://wellcomecollection.org/articles/YRU4ExEAAFTsyFIH

Similar to https://github.com/wellcomecollection/wellcomecollection.org/issues/6993 ? Although this is more about things not being hidden, whereas #6993 is more about things being hidden that shouldn't be.


How to make "send" call to be async

Hi
I am sending an email at the end of a registration process..
I want the call to "send" function to be asynchronous and not to wait for the function to come back before I can return from my own function ..
How shall I do it except "schedule it" for after 10 seconds ?
Thanks
Daniel

Hi Daniel,
First you can schedule an email to be sent as soon as the schedule as time (i.e. after 0 seconds). You should also define an high priority for this. Please, refer to the readme for this. Observe that this will not lock your call, since it calls the internal thread of the scheduler. It just register the email to be sent.
Anyway, if you don't want to use the scheduler. You can achieve this using a Spring built in functionality. I'm clearly talking of @Async annotation. Read here for more details.
Essentially you'll call the EmailService inside a component that act in an asyncronous way.
For instance, you could create your own component that execute a function. E.g.:
public interface Function {
    void execute() throws Throwable;
}

and the service is then:
@Component
public class AsyncFunctionExecutorService {

    @Async
    public void execute(@Nonnull Function function) throws Throwable {
        function.execute();
    }

    @Async
    public void waitAndExecute(@Nonnegative long waitInMillis,
                               @Nonnull Function function) throws Throwable {
        Thread.sleep(TimeUnit.MINUTES.toMillis(waitInMillis));
        function.execute();
    }

}

Then, you can do something like:
@Controller
public class MyRegistrationService {
  @Autowired
  private EmailService emailService;

  @Autowired
  private AsyncFunctionExecutorService asyncService

  @RequestMapping("/send-email")
  public void sendEmail(){
    final Email email = ....
    asyncService.execute(() -> emailService.send(email);
  }

}


Bug fixes and minor improvements

The following bug fixes have been included:

add let _ = to_yojson / of_yojson to generated code to avoid warnings when they aren't used
Fix bug where doing [@@deriving of_yojson] causes an unused rec warning

The following minor enhancement has been added

ty_of_yojson_exn created to raise an exception rather than return an error (issue #57)

Thank you for the PR!


Escape double quote inside string

Currently following code seems to be broken, is escaping double quote inside string supported?
match
  foo = "foo\"bar"
bind
  [#pre text: foo]

Weirdly enough this is actually a bug in our JSON parser. We're hoping to land a much better JSON parser today that I've confirmed fixes this. Will close once that hits master.

New parser is in! :)


Zip | Unzip | Map | FlatMap - Higher order functions

Can you provide higher order functions. E.g. zip function to covert a structure of Reactive variables to a reactive stream of the structure

zip is redundant lift(tuple, x, y, z) would do the trick.
for flatten you need the branch called flatten it's a work in progress. You can flatten a signal of signal to make it behave like a single signal.


Release 3.1.0

Update to the same deps as for cardano-node-1.18.0
Bump to version 3.1.0 and update changelogs

bors r+

In cardano-db-sync node CHANGELOG

.... 3.1.0
Updates to support the schema additions, see cardano-db 2.0.0 CHANGELOG.md
2.0.0 is likely wrong

Yes that version number is a typo. We can correct it later and in the unified github release notes.


Unused dependency telusdigital.apt-repository

This role's readme defines a dependency to telusdigital.apt-repository, but I can't find a reference to it in the playbook?

Thank you for using our roles and pointing that dependency out, it has been corrected now.


new plugin: config plugin will load/save your bash-it configuration

So basically what you do:

Create an empty repo on GitHub or whatever
Clone bash-it and run install script as per the directions
Ensure you have config plugin enabled
save-bash-it will prompt for your repo URL, then it will save information on your enabled plugins, aliases and completions
It will also put your custom files under version control
It also puts your .bash_profile under version control
It adds everything to the local repo it just made (living in $BASH_IT/.config), commits, then pushes

So if you change your .bash_profile, enable/disable any plugins, or create custom files, run save-bash-it again and your changes will be pushed to your repo.
Then, log into some other machine,

Repeat steps 2-3 above
load-bash-it will prompt you for your repo URL, clone your repo, then read the config files and enable whatever
It will also stick your custom things back where they go, if you have them
It will overwrite your .bash_profile, if you have that too

This works for me, but may be a bit heavy-handed in places.  Could use some prompts or something because of the files getting overwritten and rm -f'd all over the place.
Let me know what you think.

this is very interesting, but kinda superseded by #1865


Use environment variables for defaults

Defaulting configuration values to values coming in from the environment would be phenomenal. For example:
config.x.aws.access_key_id     # defaults to ENV['AWS_ACCESS_KEY_ID']
config.x.aws.secret_access_key # defaults to ENV['AWS_SECRET_ACCESS_KEY']

I'm happy to contribute the code (it's pretty trivial), but there are two ways to approach this and I'd like your feedback. The basic problem is that environment variables should have higher precedence than values in static environment configuration files.
The first way to approach this is the simplest, and it's just to expect every user to assign to config.x with ||=. The downside is that this requires users to remember to use ||= for every single assignment, or the environment variable isn't higher precedence.
config.x.aws.access_key_id   ||= 6 # good, defaults to environment variable if present
config.x.aws.secret_access_key = 9 # oops, always overrides environment variable

The other approach is to ignore assignment when the environment variable is set. This removes the requirement that users remember to use ||=, and everything works correctly. However, it's a bit of a violation of POLS to have direct assignment be meaningless.
ENV['AWS_ACCESS_KEY_ID'] = 7

config.x.aws.access_key_id = 6 # ignored, uses environment variable if present
config.x.aws.access_key_id     # => 7, what the hell?

I'd lean toward the latter given that the primary use-case would be to have environment variables be higher precedence and it doesn't allow a negligent developer to accidentally screw that up. What are your thoughts?
Like I said, I'm more than happy to write the feature if you think it's a good fit. I'd just like to know your opinion on which way to proceed.
Thanks!

You swapped maps and analytics keys.   Easy to spot.    As to why this config was named "x"   and not "custom" or "application"  or something, now that's got me stumped.   Not very intention revealing.

config.x is the namespace mandated by the custom_configuration gem.

this is the custom_configuration gem, right?

Yes. And again, the config is namespace under that key because it is mandated by the gem itself.


Prevent starting Live migration with host devices

Fix BZ 1945593. Currently, when a VM is running with a local PV or a host device, the migration start but failed. We want to prevent this kind of life migration to start, because it is not suppoeted.
Signed-off-by: Nahshon Unna-Tsameret<EMAIL_ADDRESS>
What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

Fix issue https://bugzilla.redhat.com/show_bug.cgi?id=1945593

/cc @vladikr - could you please review?

@enp0s3 - could you please review?

/lgtm cancel
lets give the opportunity for others to take a look

/cc @jean-edouard
Could you please review?

/test pull-kubevirt-e2e-k8s-1.21-sig-compute

/test pull-kubevirt-e2e-k8s-1.20-sig-compute-nonroot
/test pull-kubevirt-e2e-k8s-1.22-sig-storage

Is it expected that VMIs with host devices fail to migrate? Sounds like a bug to me.

/cc @davidvossel

Is it expected that VMIs with host devices fail to migrate? Sounds like a bug to me.

@jean-edouard It is expected as we cannot migrate the device state.
One pattern, that SR-IOV is using, is to unplug the device before the migration and plug it on the destination. We can consider generalizing this approach going forward.

/test pull-kubevirt-apidocs

/test pull-kubevirt-e2e-k8s-1.21-sig-storage

/retest

/test pull-kubevirt-e2e-k8s-1.22-sig-storage

Is it expected that VMIs with host devices fail to migrate? Sounds like a bug to me.

@jean-edouard It is expected as we cannot migrate the device state. One pattern, that SR-IOV is using, is to unplug the device before the migration and plug it on the destination. We can consider generalizing this approach going forward.

I see, thank you for clarifying!
Following the same logic, if a VM that has host devices and a livemigrate eviction strategy, shouldn't we prevent it from starting?

/test pull-kubevirt-build

/test pull-kubevirt-e2e-k8s-1.21-sig-compute
/test pull-kubevirt-e2e-kind-1.19-sriov

/cc @vladikr

/lgtm

/test pull-kubevirt-e2e-k8s-1.20-operator


Feature/leytech 20220714

A few minor fixes and improvements...

Option to prevent the bound output fields from clearing when a search is initiated (fixes #1)
Allow setting the initial value of the search input (fixes #2)
Deprecates the "label" input configuration in favour of "placeholder"
Bumps version to 2.0.3 (no breaking changes)
Builds additional files with no version in filename so these are always pinned to the latest release

That's a fair point especially for anyone linking to the CDN version. I have left the version suffix in there too so yes I agree the README should still link to that.
However, for anyone who uses this library via NPM and build tools like webpack etc its nice for them to have the option to not have to manually update their build with the version number each time they update the package.

Thanks, but if you're importing in to NPM  you would use the non-versioned JS module. Only the iife version is published to the CDN:
(package.json)
"main": "dist/getaddress-find.mjs",

I hadn't spotted that thanks. I have reverted/removed the build changes.


401 Unauthorized on full access PAT

Hi @aammirmirza
Just installed your extension.
I seem to be getting 401 Unauthorised on a token which has full access to the org and I'm the org admin so can perform the code tasks manually via the UI.
Any idea what am I missing please ?
Thanks in advance !

Just to add - I'm using Microsoft managed ADO (so not on prem)

Think I got it, the token needs to be base64 encoded. Might be useful to add this !

Same issue for me as well it shows 401 un authorized with org admin PAT token. Any other way or solution to find out the license usage.

I had the issue as well.
I had to edit the PAT and under the organization option to select: "All accessible organizations" instead of my organization.

Apologies for delayed response @sioakim @phaneendrakotha @royc75 @brentwolfram @aammirmirza. I might have forgot to add it to readme that "You need to generate the token for All Organization", If you want to run for few of them than you can use the Organizations variable array for running specifically. Please try and confirm.

task: ADOLicenseManagement@1
inputs:
Organizations: $(orgName)
NumberOfMonths: '2'
AccessToken: '$(token)'