Making Atom show a lot less errors

Dropped from ~120 errors to 2 when editing the flutter_gallery sample app in Atom.io

You're probably using an old version of the Dart SDK.  We recommend configuring Atom to use the version of the Dart SDK in flutter/bin/cache/dart-sdk.
In particular, these trailing commas are now allowed in the Dart language (and they make dartfmt produce prettier code in these cases).

The dart version for the flutter/bin/cache/dart-sdk is Dart VM version: 1.20.0-dev.10.2 (Wed Oct 12 10:35:48 2016) on "macos_x64", but my brew installed dart version is Dart VM version: 1.19.1 (Wed Sep  7 08:59:17 2016) on "macos_x64", which is the one I assume Atom is using to run the analysis from?

If you look at the plugin settings for the dartlang plugin in Atom, it will tell you which one it is using.

Would you believe Atom was using a 1.17 version of dart? Sorry for the noise!

Ah!  Yeah, I thought we had waited until trailing commas were in the stable version of the SDK before using them.  Thanks for digging into the issue.

I can confirm everything is happy, now that Atom is configured to use the flutter/bin/cache/dart-sdk with a fresh checkout of flutter.

Does flutter doctor check whether the IDEs are configured to use the right Dart SDK?

@Hixie as yet, no. Want me to raise a FR somewhere?

Yes please! That would be a good thing to catch. Thanks!


TransactionEndConfirmDialog uses 100% CPU until the dialog becomes visible

Description
I'm running dbeaver on linux with a multiple desktop layout, e.g. dbeaver left running on desktop 2 while I'm doing something else on desktop 1 (i.e. desktop 2 with dbeaver in it is not currently visible on the screen).
When dbeaver decides that it wants to close the connection due to inactivity, it shows a pop-up dialog with a confirmation choice to keep the connection alive, with the button showing a countdown from 10 seconds once it becomes visible.
However, the countdown only starts when the pop-up actually becomes visible, which only happens if and when I change my screen to show desktop 2, where dbeaver is placed. In the meantime, dbeaver hogs the CPU with 100% usage.
As soon as I switch to that desktop, CPU usage drops to near zero.
I took stack traces with jcmd before and after switching to dbeaver's desktop, this is where I saw the main thread (common methods ommitted):
before becoming visible:
"main" #1 prio=6 os_prio=0 cpu=226755.24ms elapsed=934.84s tid=0x00007fdd48016100 nid=0x4c7c2 runnable  [0x00007fdd4cbfd000]
   java.lang.Thread.State: RUNNABLE
	at org.eclipse.swt.internal.gtk3.GTK3.gtk_main_iteration_do(Native Method)
	at org.eclipse.swt.widgets.Shell.setVisible(Shell.java:2973)
	at org.eclipse.swt.widgets.Shell.open(Shell.java:2032)
	at org.eclipse.jface.window.Window.open(Window.java:795)
	at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.java:609)
	at org.jkiss.dbeaver.ui.actions.datasource.DataSourceHandler$TransactionEndConfirmDialog.open(DataSourceHandler.java:405)
	at org.jkiss.dbeaver.ui.actions.datasource.DataSourceHandler$TransactionEndConfirmer.run(DataSourceHandler.java:357)

after becoming visible:
"main" #1 prio=6 os_prio=0 cpu=270254.95ms elapsed=983.86s tid=0x00007fdd48016100 nid=0x4c7c2 runnable  [0x00007fdd4cbfd000]
   java.lang.Thread.State: RUNNABLE
	at org.eclipse.swt.internal.gtk.OS.Call(Native Method)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:5641)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:824)
	at org.eclipse.jface.window.Window.open(Window.java:799)
	at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.java:609)
	at org.jkiss.dbeaver.ui.actions.datasource.DataSourceHandler$TransactionEndConfirmDialog.open(DataSourceHandler.java:405)
	at org.jkiss.dbeaver.ui.actions.datasource.DataSourceHandler$TransactionEndConfirmer.run(DataSourceHandler.java:357)

DBeaver Version
Community Edition <IP_ADDRESS>308061649
Operating System
linux with Xfce 4.18 and GTK 3.24.38
Database and driver
seems irrelevant to the bug
Steps to reproduce
See description:

connect to database with default settings (maybe relevant property: automatically end long idle transactions: 1800)
leave dbeaver alone, switch to different desktop
wait for timeout to occur, observe CPU usage spiking and staying at 100% indefinitely
switch back to desktop with dbeaver on it, pop-up dialog appears and starts countdown
observe CPU usage dropping instantly

Additional context
see description

@Destrolaric couldn't reproduce on KDE

Confirmed for XFCE


tag_autocomplete_helper.py script breaks on colab, works on local.

Reproduce: Install the automatic1111 tag completion script from extensions tab
Error loading script: tag_autocomplete_helper.py
Traceback (most recent call last):
  File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/modules/scripts.py", line 170, in load_scripts
    exec(compiled, module.__dict__)
  File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/extensions/a1111-sd-webui-tagcomplete/scripts/tag_autocomplete_helper.py", line 77, in <module>
    write_tag_base_path()
  File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/extensions/a1111-sd-webui-tagcomplete/scripts/tag_autocomplete_helper.py", line 63, in write_tag_base_path
    f.write(TAGS_PATH.relative_to(FILE_DIR).as_posix())
  File "/usr/lib/python3.7/pathlib.py", line 900, in relative_to
    .format(str(self), str(formatted)))
ValueError: '/content/gdrive/MyDrive/sd/stable-diffusion-webui/extensions/a1111-sd-webui-tagcomplete/tags' does not start with '/content/gdrive/MyDrive/sd/stable-diffusion'

in the last cell, change
with capture.capture_output() as cap:
  %cd /content/gdrive/MyDrive/sd/stable-diffusion-webui

to
with capture.capture_output() as cap:
  %cd /content/gdrive/MyDrive/sd/stable-diffusion

let me know if it works so I'll revert the pull request

Fixed. Thank you.


No Access to minidump files

I am on MY computer. I have no acces to the *.dmp files using WINDBG app installed from the Microsoft store. How is that possible? I cannot take possesion of the file either.

I am the only Administrator?????

Yes, but have you launched the debugger with administrator privileges? You should see (Administrator) in the window title:

I tried to open it as an admin, but still cant open stupid minidump folder(((


ENH: query price presentation (uses pyfiglet fonts)

Hi,
to keep up the momentum I'm sharing my fancy query price print outs.
Feel free to abandon this if you do not like it.
At RTBHOUSE we are using it with pleasure :)
Feature:
Query price is printed with ascii art font. Font gets larger as price increases.
Sample outputs

below $0,1 (plain text)

Processed: 10.3 Gb
Price: 0.05 $
Retrieving results...

between $0,1 - $0,5 (first level of ascii font)

Processed: 31.3 GB
Price:
 ||_    __         __
(||    /  \    /| |_
_||)   \__/.    | __)
 ||

Retrieving results...

between $0.5 - $1

     __,--,_.     ___      ______   _____
    /       |    / _ \    |____  | | ____|
   |   (----`   | | | |       / /  | |__
    \   \       | | | |      / /   |___ \
.----)   |      | |_| |  __ / /     ___) |
|_    __/        \___/  (__)_/     |____/
  '--'

between $1 - $2

Processed: 219.2 Gb
Price:
 .----------------.  .----------------.  .----------------.  .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| |     __       | || |              | || |     ____     | || |   _______    | |
| |    /  |      | || |              | || |   .'    '.   | || |  |  ___  |   | |
| |    `| |      | || |              | || |  |  .--.  |  | || |  |_/  / /    | |
| |     | |      | || |              | || |  | |    | |  | || |      / /     | |
| |    _| |_     | || |      _       | || |  |  `--'  |  | || |     / /      | |
| |   |_____|    | || |     (_)      | || |   '.____.'   | || |    /_/       | |
| |              | || |              | || |              | || |              | |
| '--------------' || '--------------' || '--------------' || '--------------' |
 '----------------'  '----------------'  '----------------'  '----------------'

Retrieving results...

between $2 - $5

Processed: 501.9 Gb
Price:

       .            .--~*teu.                   xeee      cuuu....uK
       E           dF     988Nx                d888R      888888888
    .x+E:..       d888b   `8888>              d8888R      8*888**"
  u8~  E  `b.     ?8888>  98888F             @ 8888R      >  .....
 t8E   E d888>     "**"  x88888~           .P  8888R      Lz"  ^888Nu
 88N.  E'8888~          d8888*`           :F   8888R      F     '8888k
 88888b&.`""`         z8**"`   :         x"    8888R      ..     88888>
 '88888888e.        :?.....  ..F    .   d8eeeee88888eer  @888L   88888
   "*8888888N      <""888888888~  .@8c         8888R    '8888F   8888F
  uu. ^8*8888E     8:  "888888*  '%888"        8888R     %8F"   d888"
 @888L E `"88E     ""    "**"`     ^*       "*%%%%%%**~   ^"===*%"`
'8888~ E   98~
 `*.   E  .*"
   `~==R=~`

Retrieving results...

above $5

       $$$$$
       $:::$
   $$$$$:::$$$$$$              66666666                000000000<PHONE_NUMBER>7777777777
 $$::::::::::::::$            6::::::6               00:::::::::00   7::::::::::::::::::7
$:::::$$$$$$$::::$           6::::::6              00:::::::::::::00 7::::::::::::::::::7
$::::$       $$$$$          6::::::6              0:::::::000:::::::0777777777777:::::::7
$::::$                     6::::::6               0::::::0   0::::::0           7::::::7
$::::$                    6::::::6                0:::::0     0:::::0          7::::::7
$:::::$$$$$$$$$          6::::::6                 0:::::0     0:::::0         7::::::7
 $$::::::::::::$$       6::::::::66666            0:::::0 000 0:::::0        7::::::7
   $$$$$$$$$:::::$     6::::::::::::::66          0:::::0 000 0:::::0       7::::::7
            $::::$     6::::::66666:::::6         0:::::0     0:::::0      7::::::7
            $::::$     6:::::6     6:::::6        0:::::0     0:::::0     7::::::7
$$$$$       $::::$     6:::::6     6:::::6        0::::::0   0::::::0    7::::::7
$::::$$$$$$$:::::$     6::::::66666::::::6        0:::::::000:::::::0   7::::::7
$::::::::::::::$$       66:::::::::::::66  ......  00:::::::::::::00   7::::::7
 $$$$$$:::$$$$$           66:::::::::66    .::::.    00:::::::::00    7::::::7
      $:::$                 666666666      ......      000000000     77777777
      $$$$$

Codecov Report

Merging #71 into master will decrease coverage by 72.73%.
The diff coverage is 6.66%.

@@            Coverage Diff             @@
##           master     #71       +/-   ##
==========================================
- Coverage   73.37%   0.64%   -72.74%
==========================================
  Files           4       4
  Lines        1540    1554       +14
==========================================
- Hits         1130      10     -1120
- Misses        410    1544     +1134

Impacted Files
Coverage Δ

pandas_gbq/gbq.py
1.66% <6.66%> (-73.48%)
:arrow_down:

pandas_gbq/__init__.py
16.66% <0%> (-83.34%)
:arrow_down:

pandas_gbq/tests/test_gbq.py
0% <0%> (-82.88%)
:arrow_down:

pandas_gbq/_version.py
0% <0%> (-44.41%)
:arrow_down:

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 dd53b5c...66ecb06. Read the comment docs.

now it's clean and easy! please revie

@parthea, good point, thx
now price is well formatted with '$' prefix and USD suffix

Sample output is:
Requesting query... ok.
Job ID: job_XXXxXxXX0xxXxX00xxx00X_XxXx
Query running...
Query done.
Processed: 18.9 GB
Standard price: $0.09 USD

Retrieving results...
Got 1 rows.

Total time taken 4.08 s.
Finished at 2017-07-12 15:17:38.

generally wait for comments on PRs before merging pls

Generally, ok.
But in this specific case, there were two approval comments, and since my further changes does only changed string literal, which pass my local manual checks and Travis builds as well, I've decided to go forward and merge them.
Is there any problem with merged code?

@tworec not a problem.

ok :)


Mods

Description

Related Issue

This PR fixes or closes issue: fixes #
Motivation and Context

How Has This Been Tested

Types of changes

[ ] 🐛 Bug fix (non-breaking change which fixes an issue)
[ ] 🚀 New feature (non-breaking change which adds functionality)
[ ] 🌎 Translation (addition or update a translation)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have tested the change locally.

Thanks @akonkol for making updates and really excited to see your Home Assistant Add-On that wraps this.


Bug: Manpages previewer does not work

RTFM Checklist

[X] I have searched exisiting issues / discussions
[X] I have read the Wiki including the Advanced section
[ ] I have read man fzf / I am well versed in shell fzf

Operating system
Linux
Shell
Nushell (Also tried in Bash)
Neovim version (nvim --version)
NVIM v0.10.1 Build type: Release LuaJIT 2.1.1720049189
Fzf version (fzf --version)
0.54.0 (9e92b6f1)
Output of :lua print(os.getenv('FZF_DEFAULT_OPTS'))
nil
Is the problem reproducible with mini.sh?

[X] My issue is reproducible with mini.sh
[ ] My issue IS NOT reproducible with mini.sh
[ ] I have not tested with mini.sh (not relevant, requires LSP, Windows, etc)

Fzf-lua configuration
require('fzf-lua').setup({
  "telescope",
  winopts = { backdrop = 100 },
})

Describe the bug / steps to reproduce
:FzfLua manpages

:FzfLua manpages previewer=man_native

Only the preview is like that, upon <CR> the man page itself renders well.
What should I do to trace down more information about the problem?

That’s a problem with your spesifc system, try to run in the shell man -c nvim, you’ll most like get the same error, once you fix that man previewer will work as expected.

Btw, if man nvim works (without the -c) you can change your preview command:
require'fzf-lua'.setup({
  previewers = { man = { cmd = "man %s | col -bx" } },
})

Also see https://github.com/ibhagwan/fzf-lua/issues/826#issuecomment-1650152071, the solution I posted above should work, feel free to reopen if you can’t fix it.

So this is mostly due to the difference between the 2 major provider of the man command: man-db and mandoc.
I tried both packages, with and without the -c flag. And it turns out mandoc actually works without the -c flag as well.
Is there a reason why you put this flag by default? Did it not use to work without it?

So this is mostly due to the difference between the 2 major provider of the man command: man-db and mandoc. I tried both packages, with and without the -c flag. And it turns out mandoc actually works without the -c flag as well. Is there a reason why you put this flag by default? Did it not use to work without it?

I don’t recall the exact reason, it was long time ago and I wasn’t aware of the many different man providers, user contributions helped sort it out as well, the fact this isn’t more of an issue tells me this is still rare so I’d like to avoid changing the command yet again only to find out some obscure man version on a Mac/Linux that doesn’t work as intended due to missing the -c arg.

Understandable, sometimes it's best to not change what has been working.
However, man-db is far more common than mandoc in many distros.
Ubuntu, Fedora, OpenSUSE etc. uses it by default, and on Arch man-db is in core while mandoc is in extra.
So I imagine this issue with the default option would apply to many people.
Although it's easy to fix it, it's nice to have a default working out of the box.
What do you think about setting a different option if man-db or macOS is detected and falling back to the current default otherwise? Would you accept it if I make a PR on it?

Understandable, sometimes it's best to not change what has been working.
However, man-db is far more common than mandoc in many distros. Ubuntu, Fedora, OpenSUSE etc. uses it by default, and on Arch man-db is in core while mandoc is in extra. So I imagine this issue with the default option would apply to many people. Although it's easy to fix it, it's nice to have a default working out of the box.
What do you think about setting a different option if man-db or macOS is detected and falling back to the current default otherwise? Would you accept it if I make a PR on it?

If you can detect it in a consistent manner that would be welcome, MacOS already has a different default:
https://github.com/ibhagwan/fzf-lua/blob/ae22b4bb8d7d514717253ff956ca3ce53fb01a30/lua/fzf-lua/defaults.lua#L169
The issue with such PR is that it would have to be done outside of the defaults as running man command at startup would affect neovim startup time when loading the plugin which wouldn’t be acceptable.

local t0 = os.clock()
local mandb = vim.fn.executable("mandb") == 1
local t1 = os.clock()
print(t1 - t0)
print(mandb)

3.0000000000197e-05
true

Yep, it should be fine.

local t0 = os.clock()
local mandb = vim.fn.executable("mandb") == 1
local t1 = os.clock()
print(t1 - t0)
print(mandb)

3.0000000000197e-05
true

Yep, it should be fine.

Nope, this is on your machined, I had a vim.fn.executable call to detect git-delta and it caused a delay for some users so I changed to a lazy detection (you can see in the code).
This will have to be a function called on previewer init, like delta:
https://github.com/ibhagwan/fzf-lua/blob/ae22b4bb8d7d514717253ff956ca3ce53fb01a30/lua/fzf-lua/defaults.lua#L20-L23

Noted. I'll work on this tomorrow.

@WieeRd, https://github.com/ibhagwan/fzf-lua/commit/afcc4b76ad3ab80526b6f1932a1514b22de8c187
If this still doesn't work feel free to submit a PR fixing this section:
https://github.com/ibhagwan/fzf-lua/blob/afcc4b76ad3ab80526b6f1932a1514b22de8c187/lua/fzf-lua/defaults.lua#L24-L39

Works great! Thank you for the quick response and fixes.


Could not compile probe-run v0.1.6 on macOS 10.15.7

So far I have installed probe-run without problems on macOS (x86_64) with:
cargo install --git https://github.com/knurling-rs/probe-run --branch main --features defmt

Now I tried to install release version with:
cargo install probe-run

And got following error:
  = note: Undefined symbols for architecture x86_64:
            "_NSAppKitVersionNumber", referenced from:
                _hid_init in libhidapi-6c82a0d52f552184.rlib(hid.o)
                _hid_enumerate in libhidapi-6c82a0d52f552184.rlib(hid.o)
                _hid_open_path in libhidapi-6c82a0d52f552184.rlib(hid.o)
          ld: symbol(s) not found for architecture x86_64
          clang: error: linker command failed with exit code 1 (use -v to see invocation)

error: aborting due to previous error

error: failed to compile `probe-run v0.1.6 (https://github.com/knurling-rs/probe-run?branch=main#013c0bd3)`, intermediate artifacts can be found at `/var/folders/5b/jlxfj70x1fb_n2l6qh21xxfh0000gn/T/cargo-installcEziMp`

Caused by:
  could not compile `probe-run`.

To learn more, run the command again with --verbose.

Full log
Rust version:
rustc 1.46.0 (04488afe3 2020-08-24)

thanks for the report. I think this may have been caused by a recent update in the hidapi crate. Could you try to build this crate for me:
use hidapi as _;

fn main() {}

# Cargo.toml
[dependencies]
hidapi = "1.2.4"

If that also produces a linker error then this would be a upstream issue in the hidapi crate

with help from @justahero we have confirmed that this is an issue in hidapi 1.2.4
this fails to link
# Cargo.toml
[dependencies]
hidapi = "1.2.4"

this works:
# Cargo.toml
[dependencies]
hidapi = "=1.2.3"

we'll report the issue upstream in a bit.
I think we can work around the problem in the next patch release of probe-run.

This was actually successful:
   Compiling cc v1.0.65
   Compiling pkg-config v0.3.19
   Compiling libc v0.2.80
   Compiling hidapi v1.2.4
   Compiling hello v0.1.0 (/Users/andres/Downloads/hello)
    Finished dev [unoptimized + debuginfo] target(s) in 2.11s

@andresv was that with cargo build? and did you include use hidapi as _ in the source file? (cargo check will not perform linking. omitting the import will not link the library)

was that with cargo build? and did you include use hidapi as _ in the source file?

if it still builds and links OK with those, what Rust version are you using? please report rustc -V

rustc 1.48.0 (7eac88abb 2020-11-16)
main.rs
use hidapi as _;

fn main() {

}

cargo.rs
[package]
name = "hello"
version = "0.1.0"
edition = "2018"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
#hidapi = "=1.2.3"
hidapi = "=1.2.4"

strange! maybe cargo install probe-run will work for you now @andresv

if not it could an interaction of different crates what causes the issue ...

Just tried cargo install probe-run again with both 1.46 and 1.48 (i am using 1.46 because scroll does not build on later versions) and still got the same error although simple example builds nicely.

I am searching which commit killed it.

Whaatt.
Actually if i just do:
git clone https://github.com/knurling-rs/probe-run.git
cd probe-run
cargo build

Then it works.

@andresv that's probably because the repo contains a Cargo.lock file. when you do cargo install --git $something the Cargo.lock file included in the checkout is ignored.
cargo install --git $something --frozen should also work (I think it's "frozen"; it could be "locked")

@andresv could you try (see #114)
$ cargo install --git https://github.com/knurling-rs/probe-run --branch pin-hidapi

I'm assuming that cargo install --git https://github.com/knurling-rs/probe-run --branch main errors like in the issue description

Yes same error with
cargo install --git https://github.com/knurling-rs/probe-run --branch main

however
cargo install --git https://github.com/knurling-rs/probe-run --branch pin-hidapi

works!

ok, we'll ship #114 in the next patch release to fix cargo install probe-run on macOS
there seems to be some issue with hidapi 1.2.4 on macOS but we have not been able to nail down the cause. The minimal repro from https://github.com/knurling-rs/probe-run/issues/113#issuecomment-734188076 failed to link for @justahero in some cases but linked fine most of the time.
I'll report the issue in the hidapi repo and see if the hidapi devs have a better idea about what's going on

Should be fixed in hidapi 1.2.5: https://github.com/ruabmbua/hidapi-rs/commit/76e0f904e5151179d0c927b9d06a5600702d388f


Formatting: add space between ){

In R the convention is to write
if (thing) {
then
}
rather than
if (thing){
then
}
In the below R documentation
https://cran.r-project.org/doc/manuals/r-release/R-intro.html

a search for "){" reveals 0 results;
a search for ") {" reveals 22 results.

Will do a general lint pull request later once the installation scripts have been sorted.


policy/api: Rework Rule.MarshalJSON() to ease maintainability

Instead of listing all fields of Rule manually, use reflect.
@aanm What do you think of this approach?

test-me-please

Coverage increased (+0.0003%) to 36.88% when pulling d61a72f827820ac5213a89ed50afcbc5991f4384 on pr/pchaigno/rework-rule-marshaljson into df16d5d011ebadc37fead0e1c296f1ab6e99bf5c on master.

retest-4.19

test-me-please

test-me-please

test-me-please

@aanm I've updated with your diff and added you as co-author to the commit. Please take a look.

test-me-please

retest-runtime

K8s-1.11-Kernel-netnext hit known flake #11634, K8s-1.17-Kernel-4.19 #11235. Other required builds are passing and GKE has the usual failures. I'm marking as ready.


style: fixed style issues for language switcher modal

changes:

changed language items height to auto and added padding-y
changed the margin-x to auto for the modal container

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
223

Relevant Lines:
343

💛  - Coveralls


Nautobot 1.4 Deprecation Notices

Environment

Python version: 3.7
Nautobot version: 1.4.0
nautobot-circuit-maintenance version:

When running nautobot-server check with this plugin installed I see a number of deprecation notices:
Class CustomFieldModelForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitImpactForm from CustomFieldModelForm, please migrate your code to inherit from class CustomFieldModelFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldModelForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitImpactForm from CustomFieldModelForm, please migrate your code to inherit from class CustomFieldModelFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitImpactBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitImpactBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldModelForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitMaintenanceForm from CustomFieldModelForm, please migrate your code to inherit from class CustomFieldModelFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldModelForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitMaintenanceForm from CustomFieldModelForm, please migrate your code to inherit from class CustomFieldModelFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldFilterForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitMaintenanceFilterForm from CustomFieldFilterForm, please migrate your code to inherit from class CustomFieldModelFilterFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldFilterForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitMaintenanceFilterForm from CustomFieldFilterForm, please migrate your code to inherit from class CustomFieldModelFilterFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitMaintenanceBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving CircuitMaintenanceBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldModelForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving NoteForm from CustomFieldModelForm, please migrate your code to inherit from class CustomFieldModelFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldModelForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving NoteForm from CustomFieldModelForm, please migrate your code to inherit from class CustomFieldModelFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving NoteBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving NoteBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldFilterForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving RawNotificationFilterSetForm from CustomFieldFilterForm, please migrate your code to inherit from class CustomFieldModelFilterFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class CustomFieldFilterForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving RawNotificationFilterSetForm from CustomFieldFilterForm, please migrate your code to inherit from class CustomFieldModelFilterFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving NotificationSourceBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42
 Class AddRemoveTagsForm is deprecated, and will be removed in a future Nautobot release. Instead of deriving NotificationSourceBulkEditForm from AddRemoveTagsForm, please migrate your code to inherit from class TagsBulkEditFormMixin instead. - nautobot.utilities.deprecation - deprecation - /usr/local/lib/python3.7/site-packages/nautobot/utilities/deprecation.py:42

Expected Behavior

Plugin doesn't use deprecated models
Observed Behavior

Steps to Reproduce

fixed with new cookiecutter updates


Conformance: Adds Test to Exercise Gateway AttachedRoutes

What type of PR is this?
/kind test
Optionally add one or more of the following kinds if applicable:
/area conformance
What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #2402
Does this PR introduce a user-facing change?:

NONE

Thanks @danehans!
/cc @arkodg @mlavacca @sunjayBhatia

thanks @danehans, hope this has been tested with at least one implementation

@arkodg I have not tested this with an implementation yet but I'll start doing that today. Let's /hold until I complete this task.

thanks @danehans, hope this has been tested with at least one implementation

@arkodg I have not tested this with an implementation yet but I'll start doing that today. Let's /hold until I complete this task.

thanks, I hope in the future there are more automated ways of doing this in this project itself, but unfortunately for now this burden is falling on the contributor and drops the overall velocity of constributions

I successfully tested this PR against Envoy Gateway. I had to use this patch since Envoy Gateway does not pass this test until https://github.com/envoyproxy/gateway/pull/1918 is fixed. I also had to use v1beta1 APIs since https://github.com/envoyproxy/gateway/issues/1160 is required for Envoy Gateway to support v1 APIs.

/lgtm
Thanks @danehans!


refactor(config): move extraction logic to config.ts

prevent potential future code duplication by moving config extraction that is required at that beginning of a visitor function to ´config.ts`

Codecov Report

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

@@          Coverage Diff          @@
##           master     #1   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           3      3
  Lines          27     28    +1
  Branches        4      4
=====================================
+ Hits           27     28    +1

Impacted Files
Coverage Δ

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

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

Continue to review full report at Codecov.

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


[vcpkg/scripts] add variable VCPKG_CROSSCOMPILING

LGTM.

Marking requires:discussion since this is an auto-stable new name.

@Neumann-A please merge the changes; VCPKG_CROSSCOMPILING has been agreed upon (2F, 1A)

@strega-nil done

/azp run

Thanks!


unable to install on existing project

gems/hyper-operation-0.5.12/lib/hyper-operation/call_by_class_name.rb:57:in `method_missing': undefined method `find_asset' for nil:NilClass (NoMethodError)
when trying: rails g hyperloop:install
I was trying to follow the webpacker tutorial on the website but failed..

I ran into a few issues since I'm not relying on active_record..
Seems like hyperloop has a strong an active_record dependency and I wasn't able to install individual gems like hyper-component either.
My fallback was to install the JS files and follow the JS import guides instead of the Rails guides..

For the error method_missing you got , it is a config error.
You should have set config.eager_load = false in config/development.rb or remove hyperloop dir from eager_load.
What do you mean by not relying on active_record and what are the issues you got.

I tried the tutorial after updating all my gems and it appears to be working now..
I get some warnings but loading the components seems to be working:
.gem/ruby/2.4.2/gems/hyper-react-0.12.7/lib/reactive-ruby/serializers.rb:1: warning: constant ::Bignum is deprecated
19:12:46 http.1 | /Users/sambit/.gem/ruby/2.4.2/gems/hyper-react-0.12.7/lib/reactive-ruby/serializers.rb:1: warning: constant ::Fixnum is deprecated

Okay lets explore having the hyperloop gem be a bit "smarter" such that if it does not detect active-record, it drops hyper-model, likewise for any other dependencies.  I.e. it auto-adapts to whatever...

i would first favour a config.require_hyper_model = true by default, likewise for other dependencies. later on this can then be made autodetect on app start.

also we could make thems not depend on each other and let the gem ‘hyperloop’ then instead include the complete set.

auto detect is no harder just do it...


Perform mention report search only in policy rooms

Details

Fixed Issues

$ https://github.com/Expensify/Expensify/issues/390367
PROPOSAL:
Tests

Open the developer tools and watch the network tab
In a DM/Group chat start typing # and verify that no request is made to SearchForRoomsToMention and no auto complete widget pops up
In a policy room start typing # and continue typing until there are less than 5 results, verify that a call to SearchForRoomsToMention is made

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[User A] In a DM/Group chat start typing # and verify that no auto complete widget pops up
[User B] Create a new room
[User A] In a policy room start typing # and continue typing to find the room created in the previous step, verify that the room shows up in the auto complete after a while

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/5201282/68ff7fad-58e3-4bbc-8181-59f774f030b4
https://github.com/Expensify/App/assets/5201282/e26abcc7-743e-4af2-a47e-f271553c6032
https://github.com/Expensify/App/assets/5201282/32273345-83c1-482b-aa8f-4e1cf38485b2

MacOS: Desktop

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

@mananjadhav It's a simple change, I can test it, no worries!

@rlinoz I would also have Applause do the steps you listed in Tests with the network tab to make sure it is not being called.

Oh nice, I wasn't sure they did that kind of testing as well, let me update.

Compiling on the phone platforms takes forever, so I am going to merge it since I tested it on desktop and web.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/pecanoro in version: 1.4.66-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.4.66-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


[KOGITO-1248] Add casemgmt tests

Signed-off-by: ruromero<EMAIL_ADDRESS>Fix https://issues.redhat.com/browse/KOGITO-1248
Added case management processes from JBPM7.x and implemented visitors and missing methods for DynamicNodes, MilestoneNodes and StateNodes

jenkins retest this

I have done all the changes

Only CompositeNode has its own nodeContainer? I mean it seems it is returning itself.
Why not just overriding the original getNodeContainer on CompositeNode, or whatever node that has a different behavior other than returning the parent.

Because it also has to return the parentNode for some generic methods. It's not only the CompositeNode but also it's descendants.

@cristianonicolai would you like to take a look at the PR, or are we ok to merge it?
Thanks.

@ruromero not sure if the failures on kogito-examples are related, you might need to rebase your PR, please take a look.


adjust shp build run -F e2e so that buildpacks build actually fully completes successfully

Changes
Fixes #57
/kind cleanup
Submitter Checklist

[ /] Includes tests if functionality changed/was added
[ n/a] Includes docs if changes are user-facing
[ /] Set a kind label on this PR
[ /] Release notes block has been filled in, or marked NONE

See the contributor guide
for details on coding conventions, github and prow interactions, and the code review process.
Release Notes
NONE

/approve

/assign @coreydaley
/assign @otaviof
OK with the assists from @SaschaSchwarze0 / @HeavyWombat have the buildpack build working end to end in the e2e's
PTAL
the verify failure seems to be a new problem with github action golint .... sorting that our separately

FYI these changes also should address a data race we were seeing intermittently in the unit tests.  The race took the form of:
==================
WARNING: DATA RACE
Read at 0x00c0001967c0 by goroutine 12:
  github.com/shipwright-io/cli/pkg/shp/cmd/build.(*RunCommand).onEvent()
      /home/runner/work/cli/cli/pkg/shp/cmd/build/run.go:173 +0x1af
  github.com/shipwright-io/cli/pkg/shp/cmd/build.TestStartBuildRunFollowLog()
      /home/runner/work/cli/cli/pkg/shp/cmd/build/run_test.go:184 +0x1684
  testing.tRunner()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1259 +0x22f
  testing.(*T).Run·dwrap·21()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1306 +0x47

Previous write at 0x00c0001967c0 by goroutine 20:
  github.com/shipwright-io/cli/pkg/shp/cmd/build.(*RunCommand).Run()
      /home/runner/work/cli/cli/pkg/shp/cmd/build/run.go:237 +0x44c
  github.com/shipwright-io/cli/pkg/shp/cmd/build.TestStartBuildRunFollowLog.func3()
      /home/runner/work/cli/cli/pkg/shp/cmd/build/run_test.go:174 +0x59

Goroutine 12 (running) created at:
  testing.(*T).Run()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1306 +0x726
  testing.runTests.func1()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1598 +0x99
  testing.tRunner()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1259 +0x22f
  testing.runTests()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1596 +0x7ca
  testing.(*M).Run()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1504 +0x9d1
  main.main()
      _testmain.go:101 +0x324

Goroutine 20 (running) created at:
  github.com/shipwright-io/cli/pkg/shp/cmd/build.TestStartBuildRunFollowLog()
      /home/runner/work/cli/cli/pkg/shp/cmd/build/run_test.go:173 +0x15c4
  testing.tRunner()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1259 +0x22f
  testing.(*T).Run·dwrap·21()
      /opt/hostedtoolcache/go/1.17.4/x64/src/testing/testing.go:1306 +0x47
==================

That translated to these prior lines of code:
https://github.com/shipwright-io/cli/blob/d3e2e62e934fb5befbc040bad732998db640ae94/pkg/shp/cmd/build/run.go#L237
https://github.com/shipwright-io/cli/blob/d3e2e62e934fb5befbc040bad732998db640ae94/pkg/shp/cmd/build/run.go#L173
while the race seems artificial since https://github.com/shipwright-io/cli/blob/d3e2e62e934fb5befbc040bad732998db640ae94/pkg/shp/cmd/build/run.go#L173 should never get called until after https://github.com/shipwright-io/cli/blob/d3e2e62e934fb5befbc040bad732998db640ae94/pkg/shp/cmd/build/run.go#L247
this change further resolves things, as the setting of the struct's buildRunName was moved out of the Run method and into NewFollower


Add PySurrealDB

Adding PySurrealDB - Unofficial python driver with some additional query building tools.

There is already an official Python driver,

There is already an official Python driver,

Yes, but it isn't released yet. The official repo has no docs, virtually no readme, and the surreal website doesn't even list it.
PySurrealDB for people who want an easy way to get going in python without waiting for the official one to be finished.


minor change #1

@anandpatel504 Please describe the change briefly. For example : Removed offer letter PDF from email assets


improved object serialization

improved object serialization:

hide object attributes that start with _
add object properties names and values to JSON hash
close #1.

Coverage remained the same at 100.0% when pulling 20f10e46103664253cc8ca047a946617a4971682 on develop into 0a8b99dd453704f15a8feb60f70c1eb7c34f77d4 on master.

closes #1


Documentation

I almost certainly won't use this any time soon, but it would be interesting to read about the general idea :)

Documentation added!
https://zorbathut.github.io/def/


Add images: Android Basics with Compose

URL of codelab
Add images to your Android app
In which task and step of the codelab can this issue be found?
3. Add an Image composable
Describe the problem
Steps to reproduce?

Go to heading: Resources in Jetpack Compose -> Accessing resources
Count to the fifth paragraph starting with "Android Studio displays an error that says that"
The second sentence is "the arguments don't match the function signature."
Because this is a new sentence, the first word should be capitalized, or "The arguments don't match the function signature." instead

Versions
_Android Studio version: N/A
_API version of the emulator: N/A
Additional information

Hi @devjsullivan
Thank you for writing in and bringing this to our attention.
The section has been revised and republished.
Hope you are enjoying the course!
Regards.


Missing optdata and sigdata

I don't know when this bug first surfaced, but it seems like the optdata and sigdata is not in the extensions bin folder. I added them manually from another project I have to the extensions folder and things began to work again. I don't know where to add it in ionide though.
System info:
OS: OSX
Mono verison: <IP_ADDRESS>
Ionide-Fsharp version: 2.25.12

Has it ever been there? ;)

Not sure... don't even know why I need it, I just followed the error messages :)

Maybe you don't have F# 4.0 installed?

Oh, mono... nvm

I guess it has something to do with the fact that mono 5 bundles F# 4.1... so maybe it can't find optdata / sigdata for 4.0 FSharp.Core

but it did work before, that's why I think it is strange. Hmm... maybe I updated mono?

If you updated XS / VS for Mac recently it included mono update AFAIK.

ok, maybe it is that.
With that said, should ionide includ sigdata and optdata to be sure to run?

@mastoj For some some context, .sigdata and .optdata are resource files that are usually baked into assemblies compiled by fsc (or fsharpc in your case). They were recently baked into the FSharp.Core assembly, just like every other F# assembly (consistency, yay!).
Older versions of the F# compiler will still special-case FSharp.Core.dll and look for these files next to it. Are you on an older compiler? What does fsharpi in terminal tell you?
Are you using FSharp.Core from Nuget?

@rojepp, thanks for adding context.
fsharpi- F# Interactive for F# 4.1
Not sure which version of FSharp.Core that ionide is using, but when I added the optdata and sigdata files to the extension of ionide, next to FSharp.Core, everything started working.

Are you using FSharp.Core from Nuget?

As I understand the problem is not with @mastoj's project but with FSAC.
FSAC is compiled against F# 4.0 (<IP_ADDRESS> from NuGet) and probably latest mono is lacking  .sigdata and .optdata for FSharp.Core 4.0. We have 2 solutions - either bump FSharp.Core version to latest (not requiring separate .sigdata and .optdata) or distribute .sigdata and .optdata for FSharp.Core 4.0 together with Ionide.

Isn't ionide using the version of FSharp.Core that's in the extensions folder, how is my version of mono affecting that? Just trying to understand.

As far as I know, there are several places when runtime looks for the .sigdata and .optdata - next to the FSharp.Core.dll and in couple of global locations (no idea what's that in case of the mono).  Since we don't  distribute  .sigdata and .optdata next to FSharp.Core.dll  in bin folder, I think that runtime tries to find those file in some global locations and they're probably not there (since mono 5 bundles F# 4.1).
At least, that's my understanding of the problem... it might be completely wrong ;)

You're probably more right than me :)
I didn't check all the locations it were looking for, I just noticed that the runtime looked in the extension bin folder.
However, the question still stands, should those file be included in the extension? My guess is that more people than me have the same versions of fsharp, mono and other relevant pieces and will cause them problem as well.

Downgraded to latest stable versiopn of mono, 4.8.1, and now it works again.

5.2 work fine

Mono 5.0 is bad mono.
As I understand (know) mono team merges mono with corefx, to have an implementation as close to .net core as possible as it possible. And Mono 5.0 released include corefx forked approximately around 2017/02 (and a lot of bug where fixed since then)
We found that Fsharp.Data Http module does not work on Mono 5, because this fix https://github.com/dotnet/corefx/commit/a6c7e23421701870c1eb855eae95e4605e5b04b3 is not included in the release.
The good part is that Miguel promised that they will do their best to release next Mono asap
https://github.com/fsharp/FSharp.Data/issues/1053#issuecomment-301138733
Also, FCS story is not perfect on Mono, especially on Mono 5 https://github.com/fsharp/FSharp.Compiler.Service/pull/772
So for now, is better to wait and continue with 4.8.1 or install 5.2 or nightly release (5.3)


Fix #1518: Use open_out/open_out_bin conditionally

Issue: The Format module only outputs LF (\n) newlines - when the channel is opened in binary mode on Windows, we'll get non-windows line endings.
Fix: Conditionally open in binary/non-binary mode depending on the desired output. There are cases where we actually need to output binary data (via output_value, so for now, only set binary_mode = false when we are outputting Reason or ML print types).

One question: On windows it's possible to configure your editor for either mode. I think one bug we saw was that we weren't preserving the line endings mode. What do you recommend? Should it be that if the file had even just one CRLF then we could turn all of the line endings into CRLF? I don't think we need to support "mixed" line ending files, but I think we need to preserve the file's current line endings assuming they are all one or the other.

As a rule of thumb, if you are writing a new file, then use CRLF on Windows (i.e. for new files, obey the platform norms) but, yes, if you have read a file then you need to track whether the original was LF or CRLF. Even the new Windows LF-reading Notepad gets that right, just to provide a baseline 🙂

Good catch @jordwalke @dra27 ! Yes, we should be preserving newlines. I'll update the PR to account for this.

For refmt, we could probably use a convention that the first (CRLF or LF) that we witness determines the kind of newline we output for the whole file. Then as long as files aren't mixed the output newlines are retained. If the file was mixed then the first "newline like" character we saw is as good of a heuristic as any.
(Longer term, what convention do streaming transform like programs use? How do you output a newline when you haven't seen any newlines in the input yet? You could default to CRLF, but then what if you later discover that the first newline like character is actually a LF?). Doesn't seem like there's any solution there. Luckily for refmt the situation is easier.

For refmt, we could probably use a convention that the first (CRLF or LF) that we witness determines the kind of newline we output for the whole file.

Sounds good. I spent of time today looking at this strategy. It looks like our Lexer expects 'normalized' newlines here: https://github.com/facebook/reason/blob/a59c9fd6985f64e7b3073c36ba052ab9ada9f531/src/reason-parser/reason_toolchain.ml#L102
I think it would be risky to change this logic to open_in_bin (which we need to do to detect newlines) because it looks like some code depends on the newline normalization behavior here.
I was considering 'peeking' at the file prior to lexing - examine the first line and determine the EOL from that, then close it prior to lexing / parsing. Open to other suggestions, though!

Longer term, what convention do streaming transform like programs use? How do you output a newline when you haven't seen any newlines in the input yet? You could default to CRLF, but then what if you later discover that the first newline like character is actually a LF?

Yeah, we actually hit this with use_stdin here - my plan was just to default to the platform-specific EOL in that case. I don't think there is a great solution, other than pushing the problem up a layer (making the EOL behavior configurable)

Alright, implemented the logic we discussed - if it's use_stdin + ML/RE, we'll use the default platform EOL. Otherwise, we'll check the first line in to detect the newline - and use that to decide if we should use text mode / binary mode.
As noted in the code - there is one current gap in the implementation. If you run refmt on a CRLF file on OSX/Linux, we'll output the file in text mode, but the line endings wouldn't be converted in that case (although, there'd likely be more problems - they also wouldn't be converted on input, which might bust parsing). @jordwalke and I discussed this and felt it was reasonable (this is the least likely case to run into).

Also - I had some basic test cases here: https://github.com/facebook/reason/pull/2275/commits/bd1dac71003498c6f642e4462254f068e71d3be0#diff-1ac7c12e03995e9441471c0e90889302L38 - would be a great place to leverage https://github.com/facebookexperimental/reason-native/tree/master/src/test-runner 😄

Yeah, the Reason tests are probably a great use case for snapshot testing.

As noted in the code - there is one current gap in the implementation. If you run refmt on a CRLF file on OSX/Linux, we'll output the file in text mode, but the line endings wouldn't be converted in that case (although, there'd likely be more problems - they also wouldn't be converted on input, which might bust parsing). @jordwalke and I discussed this and felt it was reasonable (this is the least likely case to run into). We could always add a post-format conversion step if this is necessary.

This case - reading a CRLF file on Unix - is (as I noted in my OCaml workshop talk) the most compelling reason for never using text mode for cross-platform applications, IMO.

This case - reading a CRLF file on Unix - is (as I noted in my OCaml workshop talk) the most compelling reason for never using text mode for cross-platform applications, IMO.

@dra27 - cool! I'm 100% on board with that message 😄
Was your talk recorded? I would be very interested.

@bryphe The video is up here, along with a few others from the session: https://youtu.be/1DAuSSljLFI

@hcarty - thank you!
Excellent talk @dra27 - really interesting background on some of these issues, learned a lot.
Great summary slide at the end too - worry about windows at the beginning, use abstractions that cover all OSes, and continuously test across platforms, Couldn't agree more!

Hmm, seeing this error on CI:
#=== ERROR while compiling conf-pkg-config.1.1 ================================#
"pkg-config": command not found.

I don't believe this is related to my change (but I have seen it twice in a row...)

I think this is all set now - I added a CRLF test and we now handle CRLF on all platforms - so line endings should be preserved in any case. Please let me know if you have any additional feedback!
It'd be nice to hook up some additional tests to the internals via rely at some point, too... the Eol_detect and Eol_convert modules would be amenable to that kind of coverage.

I'm not sure if it's entirely safe to assume if the first newline doesn't have \r then none of them do; I think inconsistent line endings is an edge case that happens often enough that we can't ignore it.
With that said, searching the entire file for \r is understandably a pretty expensive operation so I'm a little conflicted on this. Would make your detect_eol a lot simpler with String.contains s '\r' though 😄

I'm not sure if it's entirely safe to assume if the first newline doesn't have \r then none of them do; I think inconsistent line endings is an edge case that happens often enough that we can't ignore it.

Ah ya, good catch @kpsuperplane ! @jordwalke and I discussed this a bit -  I believe our conclusion was that it was an OK with this heuristic for now (although, as you mention, it's not perfect - we won't handle files with mixed-line endings).
The mixed-line-ending case becomes a bit more complicated - do you try and preserve the newlines for particular lines? What happens when a line gets split or merged as a result of formatting? Ends up complicating things a bit.
An alternative, and potentially simpler approach, is for mixed-case files, to just use the platform default and emit a warning. But detecting that case becomes more expensive.

Great! We should publish some of these utilities for dealing with cross plat windows nuances so people don't have to think about them as much.


Scoop Last Updated

📋 Description
Scoop
Last Updated | 6 days ago
🔗 Data
IDK, however it is that the existing Scoop version badge works.
🎤 Motivation
It's like the other "Last Updated" badges.

Scoop's manifest format does not explicitly expose a last updated property.
Looking at the scoop site, this is based on the last commit modifying the manifest.
If we can get the date of the last commit without adding a third network round-trip on the network, I think this one could work.


Provide C API to be called by onnxruntime

To support migraphx as an execution provider, onnxruntime need to call migraphx APIs to run models on migraphx. We have an prototype implementation using the C++ API as the inteface, but it could have ABI issues with different binaries.
This task is to propose and implement a set of C APIs to be called by onnxruntime to avoid the above issues.

Fixed


Extensions shows wrong ratings

Sometimes the extension gives a video the wrong rating, which is definitely not good since it could deter me from watching potential good videos in the future. These pictures should tell you what I mean.

As you can see, it gives the video a completely wrong rating, and when you actually click on the video, it shows the correct rating. Any thoughts on why it does this?
Addition: It seems this doesn't happen on searches, but I just did a quick search for the same video.

Dang, that's really bad.
I recently fixed a bug that was occurring when trying to update over 50 thumbnails at once, which may have been related to this. Can you make sure you're on the latest version (at least 0.0.24), you can see the version in the chrome://extensions/ window if you turn on the "Developer mode" switch at the top right of the page.
Was that on a suggested video that it gave the wrong rating? If you are somehow able to figure out how to reproduce this so I can debug it, that'd be great. I'll try to see if I can get it to happen for me.

Yep, I'm on the latest version according to chrome. Checked and it said 0.0.24. Even on videos that aren't recommended to me, it still happens. Here it is with another video.

Okay. Can you link me to the page where it occurred?

Sure, here you go.
https://youtu.be/CzueOh-d15M

Hmm, maybe.
When not in the incognito window, would it happen every time you reloaded that page for that thumbnail, or only some of the times?

Sorry if my edits were a bit confusing. When I said I refreshed the page I did it in the normal window, not the incognito one. I still have the same everything, so I don't know why it'd be different results.

Ah, ok. I'm about to head to bed, but I'll work on it more tomorrow. I'll try to add something in the next release that will make it easier to debug that issue when it happens, like some html tag data on the bar element that says which exact video ID the bar's data is for.

Damn it happened again, that's a shame. Would it help if I included a local copy of the page with my comment?

Yeah, I think it's unlikely that the Iridium extension would affect the rating bars.
Yeah, there isn't much info on the page at the moment to debug the issue, but in the next update, probably released tomorrow, I'll add in all the hidden meta data tags. Then if you see it happen again, you can just do a right click on the page, and then click inspect to bring up the elements tab in the developers console, then copy the entire html element and then paste it here, and hopefully that will help with figuring out what is going on. I'll let you know when I release that update.
Also, thank you for taking the time to help me debug this. I appreciate it.

Yea no problem, we have a similar goal, a bug-free extension 😄

Ah, I figured out what is happening. On a page change, sometimes some of the thumbnail elements don't get completely recreated. Instead, their internal video data just gets swapped out. So the rating bar doesn't get deleted and it just displays the rating for the video previously in that spot.
Working on a fix.

Oh sweet, glad you figured it out

Just released an update that should have fixed the issue (0.0.25). I was able to predictably reproduce the problem while debugging it by simply doing 2 different searches then pressing the back and forward history buttons to navigate between those two pages. But yeah, should be fixed now.
Let me know if you notice it messing up at still.

Thanks for taking the time to figure out the problem, and I'll let you know if I notice it again now. I just checked the version and it seems it already updated to .25, that was fast.

Nice. I was wondering how long it takes for updates to get to the users. I guess it happens pretty quickly.

I'm going to close this issue for now, but please reopen it if you ever notice it happening again.

https://www.youtube.com/channel/UCf_67twWOb9eYH-HX562r6A/videos
It doesn't change when you refresh.

Hmm, that's a strange one. The data returned by the YouTube Data API says that video has 67 dislikes.
{
 "kind": "youtube#videoListResponse",
 "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/cmQM5MaVsgy_hu9deDiU8VUoimE\"",
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 1
 },
 "items": [
  {
   "kind": "youtube#video",
   "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/Z-ivz1gfcn62KUm6pi9rIDp-IRg\"",
   "id": "Z_-XeSa9Fo0",
   "statistics": {
    "viewCount": "3713",
    "likeCount": "337",
    "dislikeCount": "67",
    "favoriteCount": "0",
    "commentCount": "139"
   }
  }
 ]
}

This might be a bug with the YouTube Data API. I created a new issue for it on Google's issue tracker:
https://issuetracker.google.com/issues/111179602
We'll see what they say.

Any update on this?

It looks like a Googler has been assigned to the issue in the bug tracker, but not sure if there's been any other progress yet. The issue can be tracked here: https://issuetracker.google.com/issues/111179602

Since this extension no longer uses the YouTube Data API, I going to close this issue since it no longer applies. But thank you for reporting this issue.


SOTA Model

Hi!
One of the notebook states the current SOTA model. Is there any paper on how you came up with this model? How does the SOTA compared to other model architectures?
If I get that right, the model you are referring two is a 4 layer more-or-less basic CNN with some sparsity induced in the convolutional layers.
Is sparsity also applied to the output?  The concept of readout refers, to how the extracted latent CNN features are mapped to neural responses, is that right? Can you provide any detailed information on this?

Hi, thank you for raising these issues!
We'll release a white paper on biorxiv that has further details on the dataset and model architecture (we should have added this to the readme probably).
Our SOTA model is based on this publication from our group: https://openreview.net/forum?id=Tp7kI90Htd
Yes, our core is more or less a basic CNN, but it's using depth-separable convolutions in layers 2-4. The first layer is regularized with a laplace-regularizer, to achieve smooth kernels.
The readout is doing what you have said, mapping the output features of the last core layer to a scalar response per neuron. It finds a single position (in height, width), and extracts the features at this location. Then it's multiplied with the per-neuron readout features (n=64 learned parameters per neuron). How to learn the spatial position is an interesting problem, and in the article above, we propose the "gaussian" readout to solve it.
You can find the definitions of our core and readout in these repositories:
https://github.com/sinzlab/neuralpredictors/blob/0d3d793cc0e1f55ec61c5f9f7a98318b5241a2e9/neuralpredictors/layers/cores/conv2d.py#L27
https://github.com/sinzlab/neuralpredictors/blob/main/neuralpredictors/layers/readouts/gaussian.py
If you are in how the behavior can be included in the model, have a look at this publication too:
https://www.biorxiv.org/content/10.1101/2<IP_ADDRESS>8870v2
Hope that was helpful, don't hesitate to discuss any issues here!
Konstantin


fix(plugin): plugin types error.

Summary
fix(plugin): plugin types error.
Related Links

Checklist

[x] I have added changeset via pnpm run change.
[ ] I have updated the documentation.
[ ] I have added tests to cover my changes.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.congzhe seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


ok

Sorry for replying you so late.
I'm not sure what your submission is about. This repository is just a lightweight template and does not require too much specific details.


Add outreach committee members to cd.foundation

include headshots and short bios - similar format to board.

For reference: https://www.cncf.io/people/marketing-committee/

@danlopez00 - clarifying question on who the members of the outreach committee are? I just want to make sure that if I need to reach out to everyone for bios and preferred headshots that I know who I need to talk to. Thanks!

per the CDF charter:
 Outreach Committee
a) The Outreach Committee will include one appointed voting representative from each Premier Member. Each General Member may appoint a non-voting representative to observe and contribute ideas to the Outreach Committee.

We can pull the latest fro SFDC

similar to https://www.cncf.io/people/marketing-committee/

In progress: https://github.com/cdfoundation/foundation/projects/1

The first version will entail all premier member marketing contacts, and the outreach chair

First pass is now live: https://cd.foundation/about/outreach-committee/
@jsalinas29 will also help maintain moving forward


Yarn GPG key expired

When attempting to use this image as part of a dev container with docker outside of docker feature enabled, the container fails to build because the Yarn GPG key is expired:
GPG error: https://dl.yarnpkg.com/debian stable InRelease: The following signatures were invalid: EXPKEYSIG 23E7166788B63E1E Yarn Packaging<EMAIL_ADDRESS>Please update the image with the new key

the same

For reference, the image I was attempting to use was mcr.microsoft.com/azure-functions/python:4-python3.9-core-tools

When can I expect this to be resolved?


WebKitBrowser: Amazon: Allow configuring width and height

Add the new 'PLUGIN_AMAZON_WIDTH' and 'PLUGIN_AMAZON_HEIGHT' cmake
variables to allow externally configuring the width/height used by the
Amazon's WebKitBrowser instance.
This is needed to take advantage of the new Amazon Prime Video UI, now supporting 1920x1080 resolution.
Keep the defaults of 1280x720 for backwards compatibility.

@pwielders, can this be reviewed please?

@vijs / @anand-ky this is just an additional setting for amazon (hybrid) from a Metrological customer for his project. It does not cause any regression.

@emutavchi - Pls review.

@pwielders, @anand-ky, @emutavchi, how can we follow up on this PR to get it merged?

@rjpdasilva - Change has been cherry-picked to 2107 branch. Please add ticket details, get this tested and go thru release process so that we can bring it to main (stable2) branch.

@anand-ky,

@rjpdasilva - Change has been cherry-picked to 2107 branch. Please add ticket details, get this tested and go thru release process so that we can bring it to main (stable2) branch.

Not something I can do, we're only using the 2101 branch and have no way to test this on other branches, that's why we've opened this PR to the 2101 branch.
Let me know if I can help otherwise.


PATH problem under zsh

$ ~/.local/bin/vex test zsh -f -d
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/<me>/.virtualenvs/test/bin

I renamed all of my .z* files, and ran zsh -f -d, which ensures that zsh doesn't load RC files. In others words, this starts zsh as cleanly as I can, ignoring all of my personal and OS config. And yet, my virtualenv's bin still ends up at the end of my PATH instead of at the beginning.

Keep looking at your shell environment. I use zsh, but there are too many degrees of freedom for me to immediately know what is going on. Maybe you will need to use something like strace to figure out more about what zsh is up to on your system.
If you can replicate on a clean VM or something that would be more interesting.

vex --version
0.0.18

echo $PATH
/home/sasha/bin:/home/sasha/.local/bin:/home/sasha/.npm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

vex --python python3.4 -m test echo done
Already using interpreter /usr/bin/python3.4
Using base prefix '/usr'
New python executable in /home/sasha/.virtualenvs/test/bin/python3.4
Also creating executable in /home/sasha/.virtualenvs/test/bin/python
Installing setuptools, pip, wheel...done.
done

vex test zsh -f -d
rex% echo $PATH
/home/sasha/.virtualenvs/test/bin:/home/sasha/bin:/home/sasha/.local/bin:/home/sasha/.npm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
rex%

I find that zsh -f -d actually does at least source /etc/zsh/zshenv:

vex test strace zsh -f -d -c "echo hi" 2>&1 | grep open
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libcap.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libtinfo.so.5", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
open("/dev/pts/12", O_RDWR|O_NOCTTY)    = 3
open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 11
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 11
open("/lib/x86_64-linux-gnu/libnss_compat.so.2", O_RDONLY|O_CLOEXEC) = 11
open("/lib/x86_64-linux-gnu/libnsl.so.1", O_RDONLY|O_CLOEXEC) = 11
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 11
open("/lib/x86_64-linux-gnu/libnss_nis.so.2", O_RDONLY|O_CLOEXEC) = 11
open("/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 11
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 11
open("/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache", O_RDONLY) = 11
open("/proc/self/loginuid", O_RDONLY)   = 11
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 11
open("/var/run/utmp", O_RDONLY|O_CLOEXEC) = 11
open("/etc/zsh/zshenv", O_RDONLY|O_NOCTTY) = 3
open("/dev/null", O_RDONLY|O_NOCTTY)    = 3

vex, by design, can only modify the shell environment of the process it is launching. vex does not know or care whether that process is a shell because it doesn't matter. Once the shell process starts, the shell can do whatever it wants to the environ it presents. If the shell is told to put certain things at the head of $PATH, it will do so. That could be any number of things, since shell is a messy environment. vex does not get any further opportunity to bicker with zsh and say "no, that's wrong, put the virtualenv path first." Once the process has started, that ship has sailed.

But if your ~/.bashrc says "SMASH PATH" then when you run bash under vex, vex will hand off a perfectly good virtualenv-activated environment for bash to use, and then after vex hands off bash will smash PATH as you instructed, and something else will have priority before your virtualenv stuff.

there is also zsh -xv

Thanks for the strace suggestion! Apparently zsh under OS X sources /etc/zshenv, which contains:
# system-wide environment settings for zsh(1)
if [ -x /usr/libexec/path_helper ]; then
	eval `/usr/libexec/path_helper -s`
fi

And /usr/libexec/path_helper outputs:
PATH="<stuff>"; export PATH;
MANPATH="<stuff>"; export MANPATH;

A quick sudo mv /etc/zshenv /etc/zshenv.bak and vex is working as expected, with the virtualenv at the front of $PATH.
path_helper is also run in /etc/profile. Given that OS X is very commonly used by developers, perhaps you could add a note to the README about this problem?

This is a bug in the zsh package you got for OS X. I don't know where that comes from, but if they want to break your shell environment there is nothing I can do about that.
Despite the brokenness of your /etc/zshenv, simply disabling the system's zshenv isn't something I can recommend in good conscience.

I still encourage you to add a note to the vex README. A very significant portion of the people using (or interested in using) vex will be on OS X, and vex will not work for them as intended unless they stumble across this issue or do a lot of troubleshooting.

I also use a Mac.  I'm adding a comment here in case someone else ends up stumbling around.  I found out a little late that all of my packages were actually being added to my host environment under /usr/local/lib/...
I had this same symptom, but my solution and actual problem was different.
Zsh honors /etc/paths where as bash does not immediately use that file.  I had to remove /etc/paths.

Thanks for your input. I would complain about removing system files in /etc as a solution, but it seems a lot of basic shell stuff is broken in natural OS X environments :(


Retrieve subject information

This might be a feature or a doc request; taking the Project Gutenberg edition of A Tale of Two Cities for reference, I'd like to be able to retrieve the tags or subjects from the mobi file. The result for this title would be the following list

idx
Tag

0
Historical fiction

1
France -- History -- Revolution, 1789-1799 -- Fiction

2
London (England) -- History -- 18th century -- Fiction

3
War stories

4
Executions and executioners -- Fiction

5
French -- England -- London -- Fiction

6
Lookalikes -- Fiction

7
British -- France -- Paris -- Fiction

8
Paris (France) -- History -- 1789-1799 -- Fiction

Unfortunately I'm not familiar enough with the mobi format to find this data in the headers.

If you're familiar with libmobi, this would be the same functionality provided by mobi_meta_get_subject.

I added necessary changes in 28543519bd and 50f2db914eb. Example usage:
fn main() {
    match mobi::Mobi::from_path("book.mobi") {
        Ok(mobi) => {
            println!("{:#?}", mobi.metadata.subjects().unwrap_or_default());
        }
        Err(e) => eprintln!("{}", e),
    }
}

prints:
[
    "Historical fiction",
    "France -- History -- Revolution, 1789-1799 -- Fiction",
    "London (England) -- History -- 18th century -- Fiction",
    "War stories",
    "Executions and executioners -- Fiction",
    "French -- England -- London -- Fiction",
    "Lookalikes -- Fiction",
    "British -- France -- Paris -- Fiction",
    "Paris (France) -- History -- 1789-1799 -- Fiction",
]

I've tested the latest changeset and it works perfectly for me.
Thanks so much for this, I really appreciate it! 😄

Glad to hear that it worked for you! :) Will release a new version soon.


[FEATURE]: Add -r flag to each command

Feature Name
Add -r flag to each command
Your Name
Daniel Wu
Description
For each command, adding a -r flag should print out bash cmds to the console instead of running the actual cmd, so the dev can copy/paste into the terminal and/or use as a reference in case if the dev is unable to execute dlp-cli's cmds for some reason.
For example, dlp-cli backend start -r should print something like this:
Activate dlp env:
conda activate dlp
Start training backend:
poetry run python manage.py runserver .....
But of course worded and displayed better.
PTerm package may be worth looking into for making the console output look good.

@dwu359 eta on this?

@dwu359 eta on this?

There's a bunch of other important tasks that I'll need to do first, not sure yet. Anyone else who wants to can pick up this task, I don't expect this one to be that hard

@dwu359 is it a good issue someone new can take on?

deprioritized


refactor: route manifest

In this PR:

Fix Nextjs prebuild to static export with app router cases;
Create new manifest format. Example (nextjs compute):

{
    "routes": [
        {
            "from": "/_next/static/",
            "to": ".edge/storage",
            "priority": 1,
            "type": "deliver"
        },
        {
            "from": "/_next/data/",
            "to": ".edge/storage",
            "priority": 2,
            "type": "deliver"
        },
        {
            "from": "\\.(css|js|ttf|woff|woff2|pdf|svg|jpg|jpeg|gif|bmp|png|ico|mp4)$",
            "to": ".edge/storage",
            "priority": 3,
            "type": "deliver"
        },
        {
            "from": "/",
            "to": ".edge/worker.js",
            "priority": 4,
            "type": "compute"
        }
    ],
    "fs": []
}

:tada: This PR is included in version 2.2.0-stage.1 :tada:
The release is available on:

npm package (@stage dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


chore: blog4

:tada: This PR is included in version 0.10.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Suggestion: add binding for opening the Context Menu or just the spelling suggestions

I'm so use to vscode Ctrl + . opening the spelling menu, and I think it's so convenient. I'm amaze there is not a shortcut binding for this in the original app. It's addition to the plugin would be nice. Are PR's actively reviewed here?

Closed because it's possible to do this in the native app. Bind the command show context menu under cursor to anything. :)


22 descriptor pools and sets

this is the second half of the uniform buffer section with descriptor pools and sets

I'll look into macOS issues.
As far as windows, this is because its trying to write a path name thats more than 260 characters and msbuild fails. (https://github.com/google/shaderc-rs/issues/33) (https://github.com/Microsoft/msbuild/issues/53) which is a known issue in shaderc-rs and has been requested from microsoft multiple times. At the moment the workaround is to either use cargo run --target-dir <DIR> to set it to a path closer to root so it doesn't overflow the max limit or to use ninja instead of msbuild (https://ninja-build.org/manual.html). I don't see any way around this while still using shaderc.
Noted regarding the readme update. Will do this for all other prs

Finally it works - I had already tried ninja, but Python was missing (and the cargo target dir doesn't work even with C:\b).
Now the steps up to 25 look fine on Windows/Nvidia.

Found the issue on MacOS. I'm pretty sure its this: https://github.com/vulkano-rs/vulkano/issues/1135.
I made some changes in the pr, and would like to get your feedback on it. Essentially we were chaining a ton of futures as you said and then the image stutters when the GPU catches up since we never actually waited for them. I added a call to wait for the future and it seems to clear up the stutter on my machine. I'm not sure if this means we can just get rid of previous_frame_end altogether now that we're waiting on the future or not. I'm still no expert on vulkano so going to keep investigating but wanted to get your input

Fixes the issue for me too.  Not sure about the previous_frame_end either - I would have expected that the .join(acquire_future) should have the same effect as explicitly waiting.
I also wonder if should be marked as a hack and restricted to macOS (#[cfg(target_os = "macos")]). The CPU and GPU should not be synchronized at this point (right after submitting commands) - that's where the C++ version used all those semaphores (-> https://vulkan-tutorial.com/Drawing_a_triangle/Drawing/Rendering_and_presentation#page_Frames_in_flight).

Noted. Will make those changes. But I also had a chance to test on a different mac machine today and found it didnt work -- just a black screen pops up. It only happens on 22 and after so I'm going to look into whats going on with that. What model mac were you able to test on? I found it worked on a Macbook Pro 2015 but not on a Macbook Pro 2018. Going to look into whether other people have had issues and what the hardware differences are.

Weird. After updating the vulkan sdk from <IP_ADDRESS> to <IP_ADDRESS>, everything now works on the 2018 Pro. Not sure if its worth digging into this more?

I've got a Macbook Pro 2015 with Vulkan SDK 1.1.82. I'd say it's fine if it works with the latest SDK. Perhaps we can add a note to the readme to make to use the latest SDK on macOS.

Looks good (apart from that small conflict). I think I'll find time to finish reviewing this and a few more  chapters in a week or two.