Fixes #532 - fix exception when storage location is nil

Resolves #532
Description
Just adding a return on method (like a pre-condition), so that we avoid 500 because storage_location is nil
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
Tested manually, seems like there is no 500 anymore on this, still, any idea on how to test that part?

@JulienAmoros Hello and thank you for your PRs!
I agree this should resolve the 500 issue. The behavior I would expect to see is that the attempt to create a distribution fails and the user is punted back to the #new action. You could likely either do this as a feature spec (verify that this behavior results in staying on the #new and NOT creating the distribution) or possibly via a controller spec (Submit a POST with a nil storage_location_id and then ensure that it punts you back to :new instead of somewhere else.
Thanks!

@armahillo I tried something, what do you think?
Still there is something strange, if I comment my fix, the test still pass (= the test is useless?)

@JulienAmoros Run rubocop -a, commit and push the result and that should fix it -- It has a rubocop violation. :)

@armahillo my bad, fixed 👌

Thanks @JulienAmoros looks great!


Kodi Icon Addition, Icon If/Else Cleanup, Local Icon Files, and Added Playing Text

Re-Submission with removed VS files.
Added in logic to skip most of the Browser If/Else in exchange for a single check for Jellyfin Web followed by either checking for Browser Type if true or checking for other apps if false. Not totally necessary but just made more sense to me not to check for Jellyfin Web more than once.
Added in logic to get the Kodi icon if using JellyCon or Kodi for Jellyfin.
Moved all icons in use to the project itself to prevent unnecessary calls to Jellyfin. Also eliminates the issue that some SVGs dont exist on some versions of Jellyfin Web. Also enables usage of Infuse (Apple TV) icon. Couldn't personally get an SVG to work for Infuse so I'm still just using the PNG from their site. The current in-progress svg is in the files.
Adjusted new Icon colors to try and better match the SVG to the client colors.
Removed the Server URL in the comments of the Dashboard.
Added a tag in the playback container for "Playing" with the NowPlayingItem.Name in there.
Sorry for the double submission on icon changes!

I know its been a while but I'll check this out soon!


[auth-swift] Auth.swift for Extensions, AuthNotificationManager fixes

Address compile time failures for app extensions in Auth.swift (thanks to @ryanwilson for the incantation)
Similar extension build fix for AuthDefaultUIDelegate.swift
Fix and simplify implementation and unit tests for AuthNotificationManager
Fix a unit test flake

SPM tests are failing because they were previously relying on a nil UIApplication that wasn't detected by the type system

Note the 00000000 on the not nullable UIApplication when running the tests from before this PR


Without the "-upgrade-console", ubuntu control should not be upgraded.

RancherOS Version: (ros os version)
v1.2.0
Where are you running RancherOS? (docker-machine, AWS, GCE, baremetal, etc.)
AWS
Steps to Reproduce:

Launch rancherosv1.2.0 instance
Switch ubuntu console

ros console switch ubuntu

The ubuntu console version is now v1.2.0

Upgrade os and console to v1.3.0-rc1

ros os upgrade -i rancher/os:v1.3.0-rc1

Check the ubuntu console version

# system-docker ps | grep console
5b2081ef73c1        rancher/os-ubuntuconsole:v1.3.0    "/usr/bin/ros entr..."   30 seconds ago      Up 28 seconds                           console

Results:
I think the console version should be "v1.2.0" and not "v1.3.0".
When upgrading os, if you do not use the "--upgrade-console" parameter, the console version will not be upgraded.
The following description comes from denise

Typically, if you are running a persistent console (eg. anything but busybox), when you upgrade from a previous version of rancherOS to a newer one, the console version will not change
if you want the console to be upgraded to the latest version during a RancherOS upgrade, you would pass in the --upgrade-console flag
typically, each version of RancherOS should have a corresponding console verison. for RancherOS v1.0.4, the console tags should be os-debianconsole:v1.0.4
and when you install RancherOS v1.1.0, the console tags if you do a fresh install would be os-debianconsole:v1.1.0
if you started in debian in RancherOS v1.0.4, and upgrade, all the other containers will automatically upgrade to the latest version except for the console. when using --upgrade-console, the console will also be upgrade.

I know the reason.
For v1.3.0-rc1, we have upgraded the system-docker to 17.06, the overlay2 is the default storage driver.
For v1.2.0, the overlay is the storage driver.
When we upgraded os from v1.2.0 to v1.3.0-rc1, all the system containers will be lost because of the storage driver.
In this case, rancher/os-ubuntuconsole:v1.2.0 has been lost, the system-docker will enable rancher/os-ubuntuconsole:v1.3.0 instead.
Keep this open, it's a known issue, others maybe need to know.

As overlay is not recommended for system-docker, we switched the storage driver of system-docker to overlay2 in v1.3.0. Please be noted that all the containers and images in system-docker will be wiped after the upgrade as the strorage driver is changed.
For normal situation, you don't need to backup the data under system-docker, all the images will be re-pulled automatically after the upgrade. However, if you have some custom data under system-docker, you may follow the below steps to backup/restore the containers/images:
To backup data:
1.  system-docker export <CONTAINER ID > > my_container.tar
2.  For images: system-docker save image_id >  image_.tar

To restore data:
1. For container: cat my_container.tar |system-docker import - new_name:new_tag
2. For images: system-docker load < images_.tar

Or you can run below command to keep system-docker unchanged after the upgrade.
sudo ros config set rancher.bootstrap_docker.storage_driver overlay
sudo ros config set rancher.system_docker.storage_driver overlay
sudo system-docker rm -f docker

Does the above also work to back and restore current persistent console? If so, how do you make it the default after loading it back?

As overlay is not recommended for system-docker, we switched the storage driver of system-docker to overlay2 in v1.3.0. Please be noted that all the containers and images in system-docker will be wiped after the upgrade as the strorage driver is changed.

So only if you upgrade from less than v1.3.0 to 1.3.0+ will this problem be reproduced


ios support and namespace support

Review changes....
demo server can recognize namespace "/chat".
demo app joins namespace "/chat".
demo app IOS will allow non ssl connections.
IOS support built to mirror functionality of Android.
Namespace support on both IOS and Android.
Creating socket class no longer triggers an automatic connection attempt.
Did not test IOS support for emit with ack callback.

Fixed up demo-server.
Fixed up android namespacing

Great :smile:


blox: list of avaialbe wifis is not fetched from the backend

When the app connected to box wifi, it does not fetch the list of available wifis from the backend:
this is the structure of response:
[{"address":"66:32:B4:CF:7F:63","encrypted":true},
{"address":"66:32:B1:CH:3Y:32","encrypted":true},
{"address":"BE:21:2E:U1:6E:18","encrypted":true},
{"ssid":"test4","address":"70:32:N1:CF:2C:46","encrypted":true,"essid":"test4"},
{"address":"77:42:B1:CF:2C:46","encrypted":true},
{"ssid":"test3","address":"70:62:V1:CF:3F:22","encrypted":true,"essid":"test3"},{"ssid":"test2","address":"60:32:U1:CF:7E:16","encrypted":true,"essid":"test2"},{"ssid":"test","address":"CB:D7:D2:E3:20:4A","encrypted":true,"essid":"tttt"}]

https://github.com/functionland/fx-design-system/commit/bf9e531474bb46cebdfc0ce4e02c4f6f532027d6


'add markdown cell' button goes away when shrinking

Testing #138103

set "notebook.globalToolbarShowLabel": "dynamic"
Install Jupyter Extension https://github.com/microsoft/vscode-jupyter/suites/4497016960/artifacts/119963878
Create a ipynb file or use menu File -> New File... and choose Jupyter Notebook
Wait for the Jupyter extension to be activated after opening the ipynb file, then shrink the editor group

all buttons stay, but not the 'add markdown cell' button

@aeschli thanks for the feedback. It's currently as designed as the Insert Code and Insert Markdown are using the same + icon, showing both would be confusing. We have some ideas of how to improve this, listed in https://github.com/microsoft/vscode/issues/129728

I suggest to closing it as dup of #129728 then. Thanks!


Inconsistency in pagination for topics

Describe the bug
(A clear and concise description of what the bug is.)
Pagination automatically jumps to Page 1 even if search was initiated on Page 2 or any other page; makes to navigate to the required page multiple times
Set up
(How do you run the app?
Which version of the app are you running? Provide either docker image version or check commit hash at the top left corner. We won't be able to help you without this information.)
https://www.kafka-ui.provectus.io/ui
Steps to Reproduce
Steps to reproduce the behavior:

Go to Topics - Page 2
Start search for any of the topics (e.g. asd123)
Clear the search field
Page 1 is displayed, not Page 2

Expected behavior
(A clear and concise description of what you expected to happen)
Page 2 is still displayed when search field info is cleaned.
Screenshots
(If applicable, add screenshots to help explain your problem)
Additional context
(Add any other context about the problem here)

Always returns to the first page after viewing/editing a topic or schema from the page 2, 3 etc.
Steps to Reproduce:

Go to Topics (Schemas) - Page 2
Click a topic(schema) for viewing it (editing)
Return to the Topics(Schemas) overview page
Page 1 is displayed, not Page 2

Expected behaviour:
Page 2 is still displayed when you returned to the list.


Don't dirty the tree when building in CI

When we build a package, mvn inserts the sha of the commit we are
building from into the tarball. If there have been any changes to the
work tree, it will add the suffix "(dirty)".
CI makes a couple of modifications to the worktree. It creates its own
.repository for maven artifacts. And it create a docker debugging
logfile.
This patch adds these to .gitignore so that they won't be picked up by
git status and won't cause the tree to be 'dirty'.

retest this please


Optimize incremental virtualenv creation

Fixes: #1507

Automated message from Dropbox CLA bot
@umairwaheed, it looks like you've already signed the Dropbox CLA. Thanks!

Cool, can you add a bit more comments/docstrings in the code explaining how this works, what cases it can handle, and what cases it won't handle correctly (if any)?  Would also love a comment on this PR thread on any benchmarks you did.
Also, I notice this is failing the mypy checks.

Also @sharmaeklavya2 you may want to take a look at this (not sure if you have a test environment available, but you can at least take a look at the code), since if this works correctly, it should be able to help a lot with bandwidth issues...

Cool, can you add a bit more comments/docstrings in the code explaining how this works, what cases it can handle, and what cases it won't handle correctly (if any)? Would also love a comment on this PR thread on any benchmarks you did.

Yeah, definitely.

@timabbott, there looks to be good improvement.
Benchmarking result:
Master commit: a648513580f7635e2e2cbccb1d6c59c6b33d7a42
Master time taken:

Optimized code time taken:

@timabbott, please review, thanks.

@timabbott, updated. Please review, thanks.

@sharmaeklavya2 as well!

Wait. There is a small problem. The process of copying executables to the bin directory needs to be more robust. I'll check it out tomorrow.

I am thinking of using https://github.com/matthewhampton/virtualenv-clone

@timabbott, some problem with "tools/setup/emoji_dump/build_emoji" command? I have reverted everything but still build fails on this command on Travis?

I think somehow the fonttools package which contains ttx isn't installed

This usually comes with fonttools.  I bet the problem is that you have a corrupted cache (probably from some test) of your virtualenvs.  Just add code to your provision.py script to rm -rf the venv caches and I bet it'll pass.
$ which ttx
/srv/zulip-venv/bin/ttx

Oh, actually, never mind, I think you bug is just that you're not copying the non-lib stuff from the old venv.  It's possible that the virtualenv-clone project you found would just do this properly.  Worth testing at least :)

@timabbott, there is a little problem with python3 in virtualenv-clone, https://github.com/edwardgeorge/virtualenv-clone/issues/23. I'll try to fix it.

Fix for the virtualenv-clone issue @ https://github.com/edwardgeorge/virtualenv-clone/pull/24

@timabbott, please review.

This looks great, though I haven't had a chance to test it yet.  One question -- can we have a log file where this code adds a record for how the virtualenv was constructed?  Would copy the log from the previous one and append to it so we have the full history.  That would help a lot with reproducing the state if we ever have this go awry.

can we have a log file where this code adds a record for how the virtualenv was constructed?

Sure.

@timabbott, please review. Now, history is maintained in a log file.

@umairwaheed now that the pgroonga issue is fixed I reran the tests, but the new logging code seems to fail the test suite with Python 3?

@timabbott, done.

Hmm, it seems that somehow this has broken the echoing of individual packages during the virtualenv install process to stdout, which provides the feeling that the install process is stuck.  Can we fix that?
As a sidenote, what I'd had in mind for logging was something more minimal that just recorded the series of requirements/ directories used, since that should be enough to reproduce the environment...

I merged a couple commits that seemed ready.

I merged a couple commits that seemed ready.  Also, I'm curious about the casper commit -- can you write a proper commit explaining the issue it's fixing?  And is the issue related to the branch or just something you noticed while working on this branch that was present previously?

The casper issue is not related to this branch. The frontend tests randomly failed a couple of times for me and then after looking at the code I realized that there were race conditions in the code.

OK, I'll change the logging code. Can you please elaborate this?

that just recorded the series of requirements/ directories used

I do it by comparing the packages, I think we need to keep the record of the packages. May be record the packages that were copied from parent venv along with the new packages added by the current venv?

OK, I'll change the logging code. Can you please elaborate this?

that just recorded the series of requirements/ directories used

I do it by comparing the packages, I think we need to keep the record of the packages. May be record the packages that were copied from parent venv along with the new packages added by the current venv?

@timabbott, I have updated logging. Let me know if it works.

Improved formatting for logging.

Merged, thanks @umairwaheed!
I guess if we want to make the virtualenv part faster, we need to clean out some of our packages where we're using a pinned version from git (rather than an actual release).  Might be worth at least doing that for Talon (since I think they've now done a release since merging your Python 3 / installation support work).

Yep.


Allow option MYSQL_ATTR_SSL_VERIFY_SERVER_CERT to be set

This was implemented in early 2017 (see https://github.com/php/php-src/commit/247ce052cd0fc7d0d8ea1a0e7ea2075e9601766a), and is very useful for self-signed certificates.

Looks good to me.
@Incognito ?

@dereuromark can we rebase it on latest? The concept looks great, I just want to see the green checkmarks on 2020 test results.

The author would need to do that, or we need to create a new PR from the patch.

Wow, that's a blast from the past! Did you guys revive this project?

https://github.com/propelorm/Propel2/pulse

@dereuromark @Incognito rebased on master and pushed. :)


Suggestion for active tab highlighting

Hello:
This is the only place where I could contact you.
Thank you for the high contrast UI & syntax themes.
Since the tabs for each file are of ALMOST same color,
it is hard to see which is active since the active tab is only slightly darker than
the inactive tabs.
The LCD screen angle can make the contrast between active and inactive tabs much poorer.
It would be a good idea to swap the tab background color and tab title text color
to indicate an active tab, almost similar to browser tab highlighting.
For dark theme, you now have white text and black (or off-black) tab background color for all tabs.
So with the suggestion, you should have an active tab of
black text and white tab background color.
Or if it is easier, just use a different high contrast color text on the active tab.
Thank you.

Thank you.  I will try to fix this as soon as possible.
Michael

From: Hoe-Phuan Ng<EMAIL_ADDRESS>Sent: Thursday, June 11, 2015 7:05 AM
To: michardy/contrast-ui
Subject: [contrast-ui] Suggestion for active tab highlighting (#1)
Hello:
This is the only place where I could contact you.
Thank you for the high contrast UI & syntax themes.
Since the tabs for each file are of ALMOST same color,
it is hard to see which is active since the active tab is only slightly darker than
the inactive tabs.
The LCD screen angle can make the contrast between active and inactive tabs much poorer.
It would be a good idea to swap the tab background color and tab title text color
to indicate an active tab, almost similar to browser tab highlighting.
For dark theme, you now have white text and black (or off-black) tab background color for all tabs.
So with the suggestion, you should have an active tab of
black text and white tab background color.
Or if it is easier, just use a different high contrast color text on the active tab.
Thank you.
—
Reply to this email directly or view it on GitHubhttps://github.com/michardy/contrast-ui/issues/1.

Than you.
When I look at settings view, the blue font is good, but could use a little better contrast.
If you can make the blue a little lighter ( e.g. bright light blue?), it will have better
contrast against the black background.
Do you have a high contrast theme for Vim?
I am also new to vim.... :-)
Thanks again.

Is this an improvement?:

The "your keymap file" blue font on black background is very hard to read.
Here is black background color comparison from:
http://www.w3schools.com/tags/ref_color_tryit.asp?color=black
After picking the font color, say "LightCoral", from above link, you
append "color=LightCoral" to the URL like so in a new browser page:
http://www.w3schools.com/tags/ref_color_tryit.asp?color=LightCoral
Comparing the browser tab views would give you a good idea of contrast for the chosen color
for white on chosen color and chosen color on black.
Looks like LightCoral works well with black background and white font on LightCoral background,
Also RoyalBlue may be good too:
http://www.w3schools.com/tags/ref_color_tryit.asp?color=RoyalBlue
Also it looks like RoyalBlue works well with black background and white font on RoyalBlue background,
I also think Salmon color has good contrast for white on slamon and salmon on black:
http://www.w3schools.com/tags/ref_color_tryit.asp?color=Salmon
If you tell me which source file line to make changes on which, I can also test it for you.
Thanks.

Here are some other suggestions for the "low contrast" areas:

Color of line numbers ( vertical gutter ) and comments are gray-white ob black background.
For comments, consider changing it to say yellow on black or some other higher contrast combination.

I understand the line number  gets brighter when a cursor is on the line.
Consider changing it to a better contrast combination and still allow for
a highlighted line number when cursor is in focus.
Thank you.

I fixed the link colors and made the settings page background darker:

I also made comments stand out more in contrast-syntax:

I could not find how to lighten the text in the gutter but I will look.

Thanks.
I suggest you should consider Salmon for the link.
The royal blue did not change / improve the contrast as much as I hoped,
as least for my eyes.
See screenshot below.

Thank you again for your generous time.


added ItemList markup to category view

Coverage decreased (-0.04%) to 69.597% when pulling b318d47efe3ec7543af3d462ba899b6aa9e1da52 on #131_add_itemList_markup into f8f165a608e071fd4a0d239010822e81e7896bc4 on master.


Best way to add user to image for use in Docker image

For Docker best practices images should be configured to not run as root if they do not need the privileges, this also jives with the Least Privilege Principal. I would like to use gentoo-bb to make Docker images that do not run as root. I'm not sure of the best way to achieve this. This might seem simple to others but I'm still learning.
Extending on the figlet example from the README, in the Dockerfile I want a line like USER figlet, this requires that /etc/passwd in the image has the user figlet. As I want to create minimal images I don't want to rely on having useradd (or similar tools like adduser) in the image. I don't complete grok how gentoo-bb works yet, and if I can use tools like adduser at the build time inside the bob container or if I should modify the build.sh or similar.

Currently the build script just copies /etc/passwd from the build container root to the custom root as one of the last  build steps. This works around a bug/limitation in portage when using a custom ROOT, any users or groups created during a package install are instead created in the real root path. As we commit the build container state after each image build this is actually suprisingly clean.
tl;dr: Just run adduser foo in configure_bob or configure_rootfs_build hook and you should be set. You probably need to copy/create the home folder if required though.
You can also use the install_suexec helper function in the finish_rootfs_build which will you give you su-exec in your final image. Example.

Thanks I see how it works now. I did as you said. install_suexec is good to know if I'll need that in an image.
I have: -
Dockerfile.template:
FROM ${IMAGE_PARENT}
ADD rootfs.tar /
USER figlet
CMD ["gentoo-bb"]
ENTRYPOINT ["figlet"]

builld.sh
PACKAGES="app-misc/figlet"

configure_rootfs_build() {
        useradd figlet
}

I didn't need a home dir, so I don't create one.


Adding a "scope" property to PackageManagementSource

Hello,
I'm currently using the DSC Resource "PackageManagementSource" and realized that the changes are only applying to the "System" user account. I'd like the ability to have this apply system-wide.
Thank you for your time.

@PrahlM93 I added a new generic PackageManagement DSC resource. This has AdditionalParameters which can be used for your needs. Can you please give this a try?

Thanks!


[TASK] Configure a git commit message prefix for Dependabot

coverage: 38.622%. remained the same
when pulling a1a7a8f76bd1ba828717ffae3c5ab5d4b103c2fb on task/dependabot-commit-message
into b56f7c6976379575a8ee179e6d1aeee49037f2e7 on main.


install.sh problem

Hi:
I just try your install.sh to install registrar
I found this problem:
# Import SQL files into the database
mariadb -u $db_user -p$db_pass registrar < /var/www/install/sql/structure.sql
mariadb -u $db_user -p$db_pass registrar < /var/www/install/sql/content.sql
those commands above in lines 273,306
it must fail due to Nginx server just installed and this directory /var/www is empty
you're too early to run those commands

Thanks, will solve it asap.

Fixed. Please reopen if you still experience issues.


Recent react-native version range in peerDependencies

I would favor a range such as: >= 0.57.0 <1.0.0
and update react-native version in devDependencies
This would likely need another 0.x version bump.

I just downvoted my own proposal. The disadvantage is that this would lead to (yet another) ugly warning message for any users who are only using react-primitives for web development.
I think part of the idea of react-primitives are to help web app developers prepare for the possibility of using React Native in the future, without incurring the extra workload of installing RN before they are ready. Closing now.


Bug - Exercise - Explore the Learn sandbox

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az interactive
Errors:
The command failed with an unexpected error. Here is the traceback:
No module named 'prompt_toolkit.interface'
Traceback (most recent call last):
  File "/usr/lib64/az/lib/python3.9/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
  File "/usr/lib64/az/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/usr/lib64/az/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/usr/lib64/az/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
  File "/usr/lib64/az/lib/python3.9/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
  File "/usr/lib64/az/lib/python3.9/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
  File "/usr/lib64/az/lib/python3.9/site-packages/azure/cli/command_modules/interactive/custom.py", line 41, in start_shell
    azext_interactive.start_shell(cmd, style=style)
  File "/home/j_eduardo_freitas/.azure/cliextensions/interactive/azext_interactive/__init__.py", line 10, in start_shell
    from .azclishell.app import AzInteractiveShell
  File "/home/j_eduardo_freitas/.azure/cliextensions/interactive/azext_interactive/azclishell/app.py", line 33, in <module>
    from prompt_toolkit.interface import Application, CommandLineInterface
ModuleNotFoundError: No module named 'prompt_toolkit.interface'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az interactive

Expected Behavior
Environment Summary
Linux-5.4.0-1094-azure-x86_64-with-glibc2.35 (Cloud Shell), CBL-Mariner/Linux
Python 3.9.14
Installer: RPM

azure-cli 2.41.0 *

Extensions:
interactive 0.4.5
ai-examples 0.2.5
ml 2.10.0
ssh 1.1.2

Dependencies:
msal 1.20.0b1
azure-mgmt-resource 21.1.0b1

Additional Context

Duplicate of https://github.com/Azure/azure-cli/issues/24213


TP2000-156 - Component sequence number start at 1, fixing the importer.

Component sequence numbers start at 1 not 0, fixing the importer.
Make test_measure_form_wizard_create_measures a little more batch oriented making it easier to test this, should save some queries too.

Codecov Report

Merging #515 (99ee7a5) into master (2a599b4) will decrease coverage by 0.01%.
The diff coverage is 90.47%.

:exclamation: Current head 99ee7a5 differs from pull request most recent head 4b3ed64. Consider uploading reports for the commit 4b3ed64 to get more accurate results

@@            Coverage Diff             @@
##           master     #515      +/-   ##
==========================================
- Coverage   92.66%   92.64%   -0.02%
==========================================
  Files         298      298
  Lines       18519    18501      -18
  Branches     1474     1473       -1
==========================================
- Hits        17160    17140      -20
- Misses       1084     1085       +1
- Partials      275      276       +1

Impacted Files
Coverage Δ

measures/patterns.py
90.86% <50.00%> (-0.47%)
:arrow_down:

measures/tests/conftest.py
91.04% <66.66%> (-0.56%)
:arrow_down:

geo_areas/forms.py
79.03% <100.00%> (ø)

measures/tests/test_views.py
100.00% <100.00%> (ø)

measures/views.py
90.95% <100.00%> (-0.05%)
: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 2a599b4...4b3ed64. Read the comment docs.


Fix jest-editor-support Runner test

Summary
jsonFilePath => outputPath
Test plan
jest

woops, seems like Flow should have yelled at me, something must be wrong with the types! :)

thank you!


Cantara version should be pinned per project

Use a similiar technique like CRA did: Creating an extra "script" package which is installed and used by Cantara's global CLI

Instead of this, always make sure that all not-major releases are backward compatible by applying an extensive test suit before each release. This way, CI builds are also guaranteed to not fail.


Allow the player to only fire the weapon while aiming

Allow the player to only fire the weapon while aiming and stop firing the weapon when stops aiming.

Fixed in commit 4d1ea751a6859b7358dcc61388826f2ec92c9548.


Request: Allow editing items from the character sheet

Currently players need to be granted access to create items or the GM needs to create items for their players to add to their character sheets.
Would it be possible to allow players to edit or create items directly on their character sheet?

I think the issue you're seeing here is actually a feature of Foundry. To give the GM total control of their game the onus is on them to create the items they want to exist and manage access permissions for players. I don't think it makes sense to allow players to create items on the fly and the existing system permissions might even prevent any functionality that I did try and implement.

I'm not sure what you mean, most of the popular system modules allow players to create and modify foundry items from their character sheets (pf1, pf2, 5e, OSE, etc). I find this to be a much quicker method than doing so myself during gameplay.
Thanks for the response.

Well, I'll take a look at it but the systems I've played in with Foundry have had item creation restricted to the GM. Players could still drag and drop items to their sheet but I don't believe they could actually create them.

I can confirm that players can add their own items on character sheets in both OSE and D&D 5e. Additionally, it would be handy to be able to modify items (equipment, armor, equipment, and abilities) that are already on the character sheet even as the GM.


[VCDA-4477] Remove lines generating a kubeadm token in the cloud init script

Signed-off-by: Aniruddha Shamasundar<EMAIL_ADDRESS>Description
Please provide a brief description of the changes proposed in this Pull Request

Remove cloud init lines where kubeadm join token is being generated as it is not used anywhere in the code.

Checklist

[x] tested locally
[ ] updated any relevant dependencies
[ ] updated any relevant documentation or examples

API Changes
Are there API changes?

[ ] Yes
[x] No

If yes, please fill in the below

Updated conversions?

[ ] Yes
[ ] No
[x] N/A

Updated CRDs?

[ ] Yes
[ ] No
[x] N/A

Updated infrastructure-components.yaml?

[ ] Yes
[ ] No
[x] N/A

Updated ./examples/capi-quickstart.yaml?

[ ] Yes
[ ] No
[x] N/A

Updated necessary files under ./infrastructure-vcd/v1.0.0/?

[ ] Yes
[ ] No
[x] N/A

Issue
If applicable, please reference the relevant issue
Fixes #

This change is

controllers/cluster_scripts/cloud_init.tmpl line 153 at r1 (raw file):
Previously, sahithi (Sahithi Ayloo) wrote…
Aniruddha, do you know why we are doing this? - kubectl get pods -A -owide.
If not, can you please find out and add a comment here on why we are doing this.

As discussed, I removed these lines as they are not used.


Add BigInt two's complement conversions

This PR provides the methods from_signed_bytes_le, from_signed_bytes_be, to_signed_bytes_le, and to_signed_bytes_be to BigInt. This concern came around with this SO question, in which we realized that there was no readily available conversion from arrays in two's complement binary representation to a BigInt.
Please let me know what further changes should be made before it's good to go. In particular:

Should the helper functions twos_complement_(le|be) go elsewhere? The algorithms module seems to be tied to biguint right now.
The from_... methods currently require an extra copy by taking ownership of a Vec<u8>. Should this be avoided before it's merged?

@cuviper Thanks for the review. I really did screw up in some places!
I think I managed to tackle each concern in the latest commit, but further feedback is still welcome.

Thanks!  I'll try @homu again here, but it didn't respond on #303, so I may have to merge+test manually...
@homu r+


[CAPI] Fix potential issue in capi

Changes proposed in this PR:

Change logic to feature check first for ml_train_construct_with_conf
Add exception boundary to all make_shared
Add noexcpt to layer::getName since errors are not handled in capi

Self evaluation:

Build test: [X]Passed [ ]Failed [ ]Skipped
Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee<EMAIL_ADDRESS>

:memo: TAOS-CI Version: 1.4.20191203. Thank you for submitting PR #502. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/502-202009021144230.49971508979797-ed7af6da71fa09b620b789862ec0154eacc48fa8/.

:octocat: cibot: @zhoonit, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnsuite.mooo.com/nntrainer/ci/repo-workers/pr-checker/502-202009021153020.45968794822693-bf7ba44031974bde30d27bd14818f92d2df7a9df/.


Create example DAGs for the currently supported checks

Context
At the moment the Astro Python SDK exposes three types of checks:

AggregateCheck
BooleanCheck
StatsCheck

However, we have not written significant documentation about them.
Acceptance Criteria

[ ] One or multiple example(s) DAG illustrating these use cases
[ ] Enable these new example DAGs to run as part of our CI checks

Since we removed these checks we can close this ticket - and have as a goal to add example DAGs as we introduce/reintroduce these operators.


Minor cleanups to fzf plugin

I have this cleanup that's been lingering on one of my workstations. I probably copied my config to a new host and got an error about no fzf and wrote this. Just re-tested locally in linux and it seems fine. Let me know what you think.

Great, thanks!


Customize commit messages

This change adds a new input to the action. It can be used to customize
the message of the commit created by this action.
This input is not required and has the default value Update Gradle Wrapper from %sourceVersion% to %targetVersion%, where %sourceVersion%
will be replaced by the current/old version of the Gradle Wrapper and
%targetVersion% will be replaced by the new version of the Gradle
Wrapper.
The PR title and body remain unaffected by this change.
Implements #246

Thanks for the review @ChrisCarini. I've rebased my branches onto main to resolve the conflicts.

Hi @cristiangreco, I hope all is well 😊
Just checking if there is anything I can improve here to get this merged. I would appreciate any feedback.
If you just haven't gotten around to take a look that's of course fine too.

The PR title and body remain unaffected by this change.

will be very useful for me if this also supports PR title

The PR title and body remain unaffected by this change.

will be very useful for me if this also supports PR title

I can look into that over the weekend. It might become it's own PR though, to keep the changes limited in their scopes.

The PR title and body remain unaffected by this change.

will be very useful for me if this also supports PR title

I can look into that over the weekend. It might become it's own PR though, to keep the changes limited in their scopes.

FWIW (I'm not the owner of this repo), it'd make sense to do that in a separate change. I personally think this change is ready for an approval and to be merged+released, so I wouldn't want to delay that on a separate (although, very related) feature.
@cristiangreco - thoughts? Think we can get this PR merged in and released to folks soon?

As follow up to https://github.com/gradle-update/update-gradle-wrapper-action/pull/695#discussion_r1240984905 this PR needs some adjustments. I am about to leave for a short vacation and can tackle it some time next week.

Updated this PR to match the nullability behaviour of #695

Codecov Report
Patch coverage: 91.66% and project coverage change: +0.39 :tada:

Comparison is base (5b054c1) 83.10% compared to head (65bfe63) 83.50%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #679      +/-   ##
==========================================
+ Coverage   83.10%   83.50%   +0.39%
==========================================
  Files          16       16
  Lines         580      588       +8
  Branches       80       82       +2
==========================================
+ Hits          482      491       +9
+ Misses         98       97       -1

Impacted Files
Coverage Δ

src/git/git-commit.ts
50.00% <50.00%> (+10.00%)
:arrow_up:

src/inputs/index.ts
100.00% <100.00%> (ø)

src/messages.ts
100.00% <100.00%> (ø)

src/tasks/main.ts
83.17% <100.00%> (+0.32%)
:arrow_up:

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

@cristiangreco - are you able to take a look at this PR that @paulschuberth has put forth when you have a moment?

Hi @cristiangreco
Is there still something that's blocking the merge? Something to improve or change on my end?

@cristiangreco - are you able to take a look at this PR that @paulschuberth has put forth when you have a moment?

Hey @cristiangreco - any chance you could take a look at this PR when you have a moment? 🙏 I'd love to see it merged in.

Hi @cristiangreco - I'm sure you're very busy with other work, but when you have ~5 min, would you mind taking another peak at this PR that @paulschuberth put forward? It's been open ~14 months now, and I'd love to see it reviewed / merged in, if you feel it's ready!


Normalizing camera position without GUI

Dear Radu,
First of all, thanks for the code and your paper especially the RGB regularization part is impressive.
I am currently attempting to run your code on my own data, which is a large scale scene. However, I have encountered some issues. I tried to obtain the 'scene scale' and 'scene translation' parameters from the geometric measurements of the 'dense point cloud' provided by 'Colmap'. Unfortunately, the results were not satisfactory, with a loss of around '0.1'. It appears that the camera positions are not normalized properly. As I am running the code on a Cluster, I am unable to use your GUI. I was wondering if you had any suggestions on how to check if the camera positions are normalized correctly without using your GUI. Any guidance or advice would be greatly appreciated.
Thank you for your time and assistance.
Best regards.
Mulin

I found out the solution by using ’save_to_file‘ in easypbr.Mesh class.

Hi there!
Currently I don't have an easy way to enable rendering on headless machines.
I will try soon to add a more automatic way of detecting the correct scale and translation but it might still require some manual tuning depending on your scene.
As you mentioned, you can try to write your mesh to file  and find their normalization parameters manually.
Another way would be to open the colmap point cloud and find it's scale and centroid with something like:
from easypbr  import *

mesh=Mesh("path_to_colmap_cloud.ply")
centroid=mesh.centroid()
scale=mesh.get_scale()

and then use the centroid and scale of the mesh to get your scene within the bounding sphere.

Hi there!
Currently I don't have an easy way to enable rendering on headless machines. I will try soon to add a more automatic way of detecting the correct scale and translation but it might still require some manual tuning depending on your scene.
As you mentioned, you can try to write your mesh to file and find their normalization parameters manually. Another way would be to open the colmap point cloud and find it's scale and centroid with something like:
from easypbr  import *

mesh=Mesh("path_to_colmap_cloud.ply")
centroid=mesh.centroid()
scale=mesh.get_scale()

and then use the centroid and scale of the mesh to get your scene within the bounding sphere.

. You have to modify this manually for your current dataset using SCENE_SCALE and SCENE_TRANSLATION as it's difficult to provide a reliable and automatic way of selecting these parameters. When you run the run_custom_dataset.py script it will also print the scale and the origin of all the cameras you defined. Note that you don't need to get your cameras to be within the bounding sphere, only the object you want reconstructed needs to be contained within it, the cameras can be outside of the sphere.
the run_custom_dataset.py script print the scale and the originof all the cameras?but we need  the  scale and the originof the object i want reconstructed?

I found out the solution by using ’save_to_file‘ in easypbr.Mesh class.

how should you do to use the ’save_to_file‘ in easypbr.Mesh class


fix(themes): exported src/common/utils to dist/utils for peggysPastels, fixed RGB colors in aiee

Fixes #231
(This is my first time seeing rollup so please excuse me if this was not the right way to fix it 😉)

Hey @burk96 ! Sorry for late response. And thanks for contributing <3
Actually I have a different plan on fixing the missing util issue. I'll simply convert all themes that use mapFromWindowsTheme util to the React95 format (see the default theme). I am currently working on React Native version of the library and I already did that there, so I'll just port it to the web version.
But we still need to fix the AIEE theme. Can you open up a new pull request with just the fix for the AIEE theme? Also we're using standaridzed commit messages (see https://www.conventionalcommits.org/) to automate versioning. Please put something like "fix: aiee theme colors" as a commit message, or run git cz to use commiting CLI.
Thanks again and welcome to React95 ❤

Hey @burk96 ! Sorry for late response. And thanks for contributing <3 Actually I have a different plan on fixing the missing util issue. I'll simply convert all themes that use mapFromWindowsTheme util to the React95 format (see the default theme). I am currently working on React Native version of the library and I already did that there, so I'll just port it to the web version.
But we still need to fix the AIEE theme. Can you open up a new pull request with just the fix for the AIEE theme? Also we're using standaridzed commit messages (see https://www.conventionalcommits.org/) to automate versioning. Please put something like "fix: aiee theme colors" as a commit message, or run git cz to use commiting CLI.
Thanks again and welcome to React95 heart

Hi @arturbien there are news for this issue? Thanks

We have fixed this on #289 and it is part of v3.12.2.


Yarn support

Did you drop the updates / support of the yarn package or did you just forget to push it there ?
We are currently using this package via yarn :D
Thank you in advance :D

Hey, I thought 1.1.1 fixed the issue... What's the current problem for you?

I'm sorry, I didn't quite write it correct.
I have no problem with the library as it is. I just saw (https://yarnpkg.com/package/axios-cache-interceptor) still has v 1.0.1 and I wondered if you are still going to update the yarn package of the library in the future or only the npm one.
Sorry for the inconvenience.

Hey @Snotax, I was using yarn publish before v1.1 but now I migrated to pnpm. I have no plans to come back to use yarn. I have no idea on how to publish to the yarn registry manually. Would this be a problem for you?

@arthurfiorette Hmm yes... this would be a problem for us. We're using react-native with a yarn monorepository. We would have to migrate to another caching solution.

@arthurfiorette  Thank you for your insights. We will try to configure it this way. I will hit you up again if anything failes :D

Casually passing by: Yarn registry is actually just a CNAME on the npm registry, so there shouldn't be any difference with npm.

Well, now I'm confused... I do not have any idea on why there's only up to 1.0.1 on yarn.

Oh right, on the website search, it doesn't show new versions. May be related to this https://github.com/yarnpkg/berry/issues/5451 issue (TLDR: Yarn uses an algolia index that seems not up to date)


Draft / preview page hyperlinks should keep editor in "draft mode"

Issue Summary
When viewing a draft version of a page, it would be nice if links to other wagtail pages used the draft URL instead of the live URL.
Steps to Reproduce

Start the bakery demo
Log in to Wagtail admin
Preview any page, or view a draft version
Click a hyperlink to another page
Notice that you are no longer viewing pages in "draft mode"

Our content editors usually edit groups of sibling pages at once. They would like to be able to click page links on the front-end and not get sent to the live pages.
Feature Request
This is almost certainly not a bug, probably a feature request
Related PR https://github.com/wagtail/wagtail/pull/4506

I'm a little wary that treating 'draft-ness' as a property of a site as a whole, rather than individual pages, is going to lead to inconsistent behaviour - if we set the expectation that the draft site is something that can be browsed around, users will regard it as a bug that (for example) listings on index pages don't display all the draft articles.

users will regard it as a bug that (for example) listings on index pages don't display all the draft articles

This is a good point that I hadn't considered (when @mikemonteith and I discussed it briefly). Nevertheless, there are advantages to the behaviour proposed here, and issues with the current behaviour. I suggested that there might be a 'you are in draft mode' banner, along the lines of wagtail-sharing's approach.

listings on index pages don't display all the draft articles

This issue has come up before several times in wagtail-sharing. The specific use case in question is one where someone wants to share an entire new section of a site, instead of just a single page. A user may want to create a new section of the page tree, using existing page types, and share it for preview via wagtail-sharing.
Consider a simple example where you have a standard parent page type and a standard child one. Typically you'd do something like this:
class ParentPage(Page):
    def get_context(self, request):
        context = super().get_context(request)
        context['children'] = ChildPage.objects.child_of(self).live()
        return context

It'd be tricky to include draft pages only on a draft request. You could remove the live() request and then do some additional filtering depending on whether the request is for a draft page, but that becomes boilerplate that you'd have to remember to duplicate everywhere.
More generally, I've imagined something like a PageQuerySet.for_request(request) method that returns pages appropriate for a request -- this could encapsulate getting pages on the same site (which otherwise needs an additional .in_site(request) filter) and also filter on draftness, if that became a thing. This might be something that wagtail-sharing could provide somehow.

Updated title to include preview - added labels.
Not sure if this should become a discussion maybe.


Just to kick-off :)

Remove unused ';'
Add private access for private stuff
Code cleaning

Last commit adds the basics to internacionalize the project.

Wrapped the call inside the request authorisation call and performing the query only on success.

Ready to merge!


Github Profile Image Scrapper

Created the Github Profile Image Scrapper
Libraries Used :

webbrowser
requests
BeautfulSoup

Screenshots
Displaying the profile image url in the console

Opening the profile image url in a new tab

@kishanrajput23
Please review my PR.


version and orientation change fix

maybe layout transition should be removed :/ (and the animation is flickering now, when the history size increases)
some marked //TODO changes on sample is just for test, please remove them after
btw 4.0 is awesome

Hi, thanks for this. I will try to check every change and then I will add it to master.

It has been pushed to my private repository. And I am working on it.

Ok, thank you. Restoring saved state is crashing my app sometimes on 25.0.0 (filter list null), so that change is important. I will work on replacing layout transition.


searching again when click on the input in angucomplete-alt

Hello everybody!
The First, Thank you for your angucomplete-alt plugin, it's very helpful. But i have a problem, please help me.
When I press any key such as "table", it's will show a Dropdown with result. It's nice. But when i focus outside the input, the Dropdown hidden. And i focus in the input again, it's not show Dropdown again. How do we show it again. Or how do we make it not hidde when i focus outside the input.
Please help me. Many thanks. Sorry because my English is not good.

I can do this by add focusIn event.but i can not to hightlight  or scroll to that item

I can do this by add focusIn event.but i can not to hightlight  or scroll to that item

Really! Can you help me?

Really! Can you help me?

I'm seaching more to implement it. It's not really good at this moment. I'm trying to hightlight and scroll to the item that selected before focusing out

I'm seaching more to implement it. It's not really good at this moment. I'm trying to hightlight and scroll to the item that selected before focusing out

OK. Thanks for your reply. If you can do it, it's really nice :+1:
And when you had completed, please share for me. Many thanks.

OK. Thanks for your reply. If you can do it, it's really nice :+1:
And when you had completed, please share for me. Many thanks.

Ok. But  i can show the dropdown again as you want when focusin. I will send it to you tomorrow. I left my code at company

Ok. But  i can show the dropdown again as you want when focusin. I will send it to you tomorrow. I left my code at company

Thank for your help :+1:

Thank for your help :+1:

I forgot it. Sorry. Tomorrow !

function focusinHandler(event) {
           if (scope.searchStr.length >= minlength) {
                initResults();
                if (searchTimer) {
                    $timeout.cancel(searchTimer);
                }
                scope.searching = true;
                searchTimer = $timeout(function () {
                    searchTimerComplete("");
                }, scope.pause);
            }
            if (validState && validState !== scope.searchStr && !scope.clearSelected) {
                callOrAssign(undefined);
            }
        }

inputField.on('focusin', focusinHandler);
Just add this code.

Thank you for your help. But when i focus in the Input, it only show searching..., but not show the results :(
Like this
http://i1112.photobucket.com/albums/k490/trangchuvn_2000/Untitled-1.png

It works from my side. I just customed a litle bit. I think it also works with you Because i can ses the hint text "searching..." This means that it is working  . Have you handled the case that will search all with empty keyword ??.

this is my code

this is my code
<div angucomplete-alt placeholder="Search product" initial-value="{{item.summary.name}}" field-required="true" input-changed="inputProductChanged" pause="100" ng-click="getIndexPro($parent.$index)" selected-object="productSelected" remote-url="{{data.site}}restapi/searchproduct/{{getIdProduct()}}/{{item.summary.productId}}/" remote-url-data-field="items" search-fields="name,code" title-field="name" description-field="code" minlength="1" input-class="form-control" input-changed="inputCountryChanged" match-class="auto-highlight" text-searching="Searching..." text-no-results="Not found">
</div>

try to set minlength to 0, can this Url get data with empty keyword ?

i'm sorry, i was tried set minlength to 0 and edit Url can get data with empty keyword, but it is also not working :(.

You are basically asking for changing the typical behavior of autocomplete. I'm sorry. Autocomplete does not work that way. You have to create your own.

Hi, @trangchuvn  I;m meeting the same problem now , did you resolve it? If you do not mind, can you share it to me? Thanks a lot.

@ghiden Hi how to solve this problem? Could you please tell me? Thanks very much.


Confirm Build Results

As far as I can tell, everything is good. More research and learning will confirm over time!


36 user accounts store and load exercise settings

closes 36 for the exercises implemented so far

Why are the GitHub workflows changed in this PR? Can I exclude those files?

Yes please exclude them; I didn't mean to change any of them, I might have opened the PR or committed before updates were made.


Feature/430 add assessment flow

Hm, non-assessment needs don't seem to be showing on a person's profile for me. I have to hop on a call otherwise I'd diagnose further

Can't recreate the assessment vs non-assessment needs here, would be great if someone else could check this too

Thanks for the comments @timwis and the review - will fix the comments tomorrow in another PR


Allow re-reading Kubernetes service token for each authentication

The discussion at https://github.com/spring-cloud/spring-cloud-vault/issues/339 explains a use-case where short-lived TTLs are used in combination with Kubernetes. Kubernetes Service Account JWTs have a short-lived TTL. Caching these tokens (read: not re-reading the token file) causes subsequent login attempts to fail (assuming the login attempt happens after the JWT token has expired).
We should:

Change KubernetesServiceAccountTokenFile that it re-reads the JWT token on each request
Introduce a cached KubernetesJwtSupplier to retain current functionality and configure the KubernetesAuthenticationOptions accordingly
Update our docs

Was this fixed? Or is there a reason it won't be fixed?

This is fixed in 28976b1 for Spring Vault.


switch to a standards compliant versioning scheme (NormalizedVersion)

Use version strings that are compatible with NormalizedVersion (http://www.python.org/dev/peps/pep-0386/#normalizedversion)
To test if the version string is compatible, use verlib (pip install verlib)
from verlib import NormalizedVersion as V

Our current version for beta versions (3.0.0.beta3) does not follow it correctly. Instead the correct notation should be used: 3.0b3.
I also propose following the following version scheme for development snapshots: 3.0b4.dev1, 3.0b4.dev2 and include the git commit hash inside __init__.py to make it easy to verify what version of the code is in a development package.
Also 3.0.0 is not strictly correct. It should be 3.0.
Will make a pull-request.

Closing this: we've setup a PEP440 versioning scheme


[InfoBar] Styling issues

Describe the bug
The default styling has the following issues:

Incorrect brushes (hardcoded vs. theme aware)

The icon / title is not perfectly aligned horizontally:

Incorrect spacing

To Reproduce
See sample gallery
Expected behavior
Correct styling
Screenshots
No response
OS version
Windows 11
.NET version
NET 7
WPF-UI NuGet version
Preview-3
Additional context
No response

Closed by #681


[Docs] Troubleshooting page

Docs page for troubleshooting. This does not update the nav because we need a final PR for nav updates for all the "in progress" docs updates.
Also, there is a "TODO" link to a page in progress about SSL certificates.

Not sure should we mention it. But it's required to have correct hostName in JssNextWeb.config because some issues with GraphiQL can happen (graphql results can contain invalid urls, because of site resolving).


Constrain tuple_member forwarding constructor

...to not act as a copy/move-constructor
Fixes #2261

LGTM, thanks!


⚠ Bofrost.be has degraded performance

In 5ef2eb4, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1175 ms

Resolved: Bofrost.be performance has improved in 692752a after 6 minutes.


Allow overriding architecture info from Release file

Adds a flag -force-architectures to ignore missing architectures from
mirrors. This flag can be used in cases where the mirrored repository
does not provide an "Architecture: " line.
Example Release file:
http://mitaka-jessie.pkgs.mirantis.com/debian/dists/jessie-mitaka-backports/Release

👍 thank you!


Indirect shared libraries built by vcpkg are not found on Linux

I use vcpkg to build a number of packages on Linux as shared libraries (.so-files) using the setting
set(VCPKG_LIBRARY_LINKAGE dynamic)

in the triplet.
It works fine, but there is a problem with shared libraries that are not directly referenced by my application. For example, my program uses libblosc library, which depends on liblz4 library. So when starting the program I get a dynamic linker error. And not surprisingly, because ldd output is as follow:
libblosc.so.1 => /home/fed/vcpkg/installed/x64-linux-dynamic/lib/libblosc.so.1 (0x00007f4ada176000)
liblz4.so => not found

And libz4.so is present in the same folder with libblosc.so.1, but it is not searched there because it is not the direct dependency of the application.
Is there a way to install dynamic packages in vcpkg on Linux and make sure that just built application will find them?

I think you should add a new triplet file x64-linux-dynamic.cmake and put it into VCPKG_ROOT/triplets/community, then build every port using ./vcpkg install PORT_NAME:x64-linux-dynamic:

set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)

set(VCPKG_CMAKE_SYSTEM_NAME Linux)

Or add the path where the library installed(VCPKG_ROOT/installed/x64-linux/lib) to /etc/ld.so.conf then run command ldconfig .
That's why we set to build static by default in Linux and OSX.

@JackBoosY

Thank you, I used the same triplet before asking the initial question. And not-direct dependent .so-files could not be found without your point 2.
Thanks again, this method works fine. But what if I want to build both Release and Debug configurations of my program. If I add in /etc/ld.so.conf both Release and Debug folders with vcpkg built .so-files (vcpkg/installed/x64-linux-dynamic/lib and vcpkg/installed/x64-linux-dynamic/debug/lib), which in many cases have exactly same names, then I guess .so-files from incorrect configuration can be used sometimes. How this issue can be solved?

@Fedr For question 2, if the generated debug and release library names are the same, the compiler will find the first path when adding debug/lib and lib to ldconfig. So I think this cannot be solved at present.

@JackBoosY
I see. Personally I very like how vcpkg behaves on Windows, where it automatically copies all required dlls from proper configuration in the output folder of the application. It works great for both Release and Debug. Could you plan to do something similar on Linux as well?

@Fedr There are some differences between Windows and Linux, which makes us temporarily unable to unify the behavior of the two platforms.

And I remember @BillyONeal mentioned about this.

Is there a way to install dynamic packages in vcpkg on Linux and make sure that just built application will find them?

In the general case, the platform fights you here; the whole system must agree on the version of any given .so installed in any of the default library paths, because under POSIX all symbols are smashed into a single process-wide symbol table. Only one entity on the system gets to say what vector::vector does, for example. That makes "follow your code" systems like vcpkg and conan unable to provide a fantastic experience for deploying shared libraries. That's why there's no triplet, even under community status, which delivers dynamic libraries on Linux right now; most of the time you have to use what comes with your distro there.
This is why the system-wide package managers dnf/yum/apt/etc. took off on Linux: without them getting to a functional system is effectively impossible.
(Contrast this with Windows where any program can choose the versions of their dependencies by copying DLLs next to their EXE; you can get much the same effect by statically linking everything which is what we do on the POSIX-ish platforms)

Thanks for the detailed explanation. The reason why we use shared libraries is because our software package contains a few executables. And if all executables had been statically linked, each of them would be huge in size. So, we are forced to use shared libraries even despite the difficulties discussed here.

I wonder if I can create a small wrapper app with something like this in main(): system("LD_LIBRARY_PATH=. ./my_app")
Will it work?

Thanks for the detailed explanation. The reason why we use shared libraries is because our software package contains a few executables. And if all executables had been statically linked, each of them would be huge in size. So, we are forced to use shared libraries even despite the difficulties discussed here.

I know this is what you want, but the POSIX platforms are designed very explicitly to not give you that.

I wonder if I can create a small wrapper app with something like this in main(): system("LD_LIBRARY_PATH=. ./my_app")
Will it work?

Using current directory would be exploitable and bad. Using relative-to-current-executable may work; I don't know the detailed nitty gritty on when dependencies are resolved in ELF land.

We could also try to use BUILD_RPATH_USE_ORIGIN cmake target property in our custom x64-linux-dynamic triplet and in project's CMakeLists.txt.
As per documentation,

On platforms that support runtime paths (RPATH) with the $ORIGIN token, setting this property to TRUE enables relative paths in the build RPATH for executables and shared libraries that point to shared libraries in the same build tree.
This is exactly what we need - relocatable and reproducible builds, same as on Windows.

We could also try to use BUILD_RPATH_USE_ORIGIN cmake target property in our custom x64-linux-dynamic triplet and in project's CMakeLists.txt.
As per documentation,

On platforms that support runtime paths (RPATH) with the $ORIGIN token, setting this property to TRUE enables relative paths in the build RPATH for executables and shared libraries that point to shared libraries in the same build tree.
This is exactly what we need - relocatable and reproducible builds, same as on Windows.

To my understanding that only works if the relative path between your exe and the libraries is the same relative path on the build machine and on the customer box, which isn't going to be true here (since we build the libraries in different directories then you deploy them).
You might be able to use something like patchelf on deployment https://github.com/microsoft/vcpkg/pull/15134

I would like to try setting rpath=$ORIGIN in all .so-files built by vcpkg. Could you please suggest how to specify this setting in the triplet?

I would like to try setting rpath=$ORIGIN in all .so-files built by vcpkg. Could you please suggest how to specify this setting in the triplet?

We don't have a ready-to-hand option for this. You can try yourself to see if it would work by using patchelf on the resulting binaries though.

I would like to try setting rpath=$ORIGIN in all .so-files built by vcpkg. Could you please suggest how to specify this setting in the triplet?

Not sure if you can specify it in triplet, but take a look at the toolchain file:
https://github.com/microsoft/vcpkg/blob/master/scripts/toolchains/linux.cmake

I mean if the triplet is as follows:
set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)

set(VCPKG_CMAKE_SYSTEM_NAME Linux)

set(VCPKG_CXX_FLAGS "-Wl,-rpath,'$ORIGIN'")
set(VCPKG_C_FLAGS "-Wl,-rpath,'$ORIGIN'")
set(VCPKG_LINKER_FLAGS "-Wl,-rpath,'$ORIGIN'")

Then all .so-files produced by vcpkg should search its dependencies in the same folder:
$ objdump -p installed/x64-linux-dynamic/lib/liblz4.so | grep RUNPATH
  RUNPATH              :$ORIGIN

and potentially solve the issue with indirect .so-dependencies. But probably I miss something?

You can try it and report back; like @BillyONeal mentioned, this is a thorny issue that is counter to the way software is typically built and distributed for these platforms.

This is fixed in https://github.com/microsoft/vcpkg/pull/23035


SQOOP-3043: Sqoop HiveImport fails with Wrong FS while removing _logs

Closing conflicting PRs older than a year. Please reopen if it is still applicable.


Optional max groups size & number of groups

one bug fix:

_ask_for_new_file_name had multiple default values.

two new functionalities added:

one can now specify n_groups instead of min_size to get matchings according to the defined number of groups. This option checks if  min_size can still be fulfilled.
the optional max_size limits the members per group by excluding participants (those with most matchings in history). This is especially useful to enforce pair-wise matchings. This option checks if it can be combined with n_groups and min_size.

All added functionalities have been tested on the example list of participants.

Hey @arrjon,
Thanks for re-opening this PR! I like the idea of adding an n_groups argument. I'm not entirely convinced that we need the max_size argument, though. Isn't the idea of this grouping algorithm to allocate participants into groups, and this would lead to people being excluded? Could you provide a real-world example where this improves the allocation (verbally and briefly)?
As you've seen, I've added new checks. Please make sure to:

Install the pre-commit hooks locally and run them before pushing. They will run automatically before each commit after doing the following:conda activate randomgroups
pre-commit install

Add tests for your new feature. You can find inspiration in test_create_matching.py. I'd like a simple test where the new feature produces a different matching. The codecov check will tell you which parts of the new code is still untested (not called in any of the tests). You can check that the tests run by doing the following:conda activate randomgroups
pytest

Once you're happy with your changes, please request a review it via the GitHub interface. If you have any questions that go beyond this GitHub discussion, feel free to write me an email :slightly_smiling_face:

Okay, that sounds sensible; thank you for elaborating!
Great, if you need any help, just ping me. If you don't have the time to write the tests, I can also do that. I believe your above explanation is already the perfect test case, though. You run the algorithm twice and check that the person left out in the first meeting is included in the second. And yes, I would've said something about the print statement. I'm pretty sure we want either a warning or add a line to the output like:
Group 1: Alice, Bob
Group 2: Dave, Oscar

Excluded: Eve

I like the automatic testing!


vagrant-libvirt doesn't install successfully

check https://wiki.archlinux.org/index.php/Vagrant under vagrant-libvirt section

For simplicity, I've decided to remove any vagrant plugin


[CI][Flaky] Skip zephyr_qemu-x86 tests that are part of task_python_microtvm

These tests fail sometimes with beef3 due to small size of ring buffer. RPC client ends with
SessionTerminatedError. Skipping these tests until a permanent solution is found to https://github.com/apache/tvm/issues/14004.
cc @Mousius @gromero @leandron

@tvm-bot rerun


a useless closing html tag i

    <button
          class$="{{_getPageupClass(currentPage)}}"
          on-click="goToPreviousPage"><iron-icon icon="fa:fa-angle-left"></iron-icon></i></button>

https://github.com/PredixDev/px-data-table/blob/master/px-pagination.html#L37

Thanks for finding that. Would you like to help us fix it? We love pull requests!


update udf constructors

Closes #794

Move make_user_transformation into transformations
Move make_user_measurement into measurements
Move make_user_postprocessor into core and rename to new_function
Reorder arguments to make_user_transformation and make_user_measurement to dom/met convention

Current dependencies on/for this PR:

main

PR #884   👈

This comment was auto-generated by Graphite.


Persist best epoch per trial

System information.
TensorFlow version (you are using): 2.9.2
Feature and the current behavior/state
Currently, For train_end() method of keras callback, the output of the last call to on_epoch_end() is saved as logs, though it is not the best epoch for a given trial. Apparently it must be the output of best of all epochs.
Description

Why it would be helpful to have the best epoch to be passed to train_end() method is because, at the end of the trial all we would be interested in, is the best metrics only with given objectives to monitor(val_f1/f1/loss..).
Currently its misleading to see the latest epoch metrics being logged, even though its not the best one
This is causing major issues while integrating with platforms like MLFLow using callbacks, because for every trial the latest epoch's model and metrics are stored, though they are not the best ones among all the epochs for a particular trial.
On top of it, it would be seamless to log and view the best metrics for a trial. I don't see a way currently to view the best epoch and metrics for a given trial.

Will this change the current api? How?
No
Who will benefit from this feature?
Everyone who is keen on logging and monitoring the metrics for every trial

@rakshithvsk,
Could you please elaborate about your Feature. Also, please specify the Use Cases for this feature. Thank you!

@tilakrayal
Let me explain with a requirement...
If I want to train my model with trials=1 and epoch=10, ideally out of 10 epochs for a trial, the best one can fall anyway between Epoch-0 and Epoch-9.
Now at end of every trial, I need to get the details of best epoch for a given trial(Details can include metrics, model).  Currently I see that this is possible with "keras.callbacks.Callback.on_train_end()" callback.
However, As I noticed, the input for "on_train_end()" method is output of last call to epoch_end, in my example it is output of epoch-9. Which means though the  epoch-9 might not be the best one, but still we have model and metrics of  epoch-9 available on_train_end(), which shouldn't be the case.
In fact, it should be the best epoch available on train_end.
Feature:-
How this can be handled?
At end of every epoch, Persist details only if there's improvement in epoch, very similar to "keras.callbacks.ModelCheckpoint(save_best_only=True)".
Let me know if it makes sense @tilakrayal
Also let know if already there's a  way to achieve this, if I'm missing on something
thanks!!

I don't think we would want to change the inputs to on_train_end, that would be disruptive to all users relying on the current behavior. If anything, the more general case would seem to be to return the entire epoch history rather that last or best, but that would break all the on_train_end users relying on logs today.
I think the best option would be to write your own callback here, overriding on_epoch_end and on_train_end. Use on_epoch_end to track your logs according to whatever metric you want for "best" and then access that callback state during on_train_end. ModelCheckpoint might be a good reference here, but given a specific model yours could probably be significantly simpler.

Hi @mattdangerw,
I definitely agree with your thought of not modifying inputs for on_train_end.
However issue with overriding on_train_end/on_epoch_end and having implementation similar to ModelCheckpoint  is that, at on_epoch_end method, no objective details on which best models is to be picked up is available. Hence without this it would be difficult to decide on the best ones on every call to on_epoch_end .
On the other hand this objective is readily available in Modelcheckpoint save_model.
Let me know you thoughts @mattdangerw
Thanks!!


Sending command output by e-mail

As a King Arthur user,
I want to receive long command output by e-mail,
such that I can read outputs that are too long for Discord.
Joe said e-mail credentials for King Arthur are already ready. This
functionality is an import smtplib away.

I can't wait for this feature.


Paste Issue from Google Spreadsheet or MS Excel. Data breaks and added into new columns.

Issue is while pasting from MS Excel or Google Spreadsheet cell data to jexcel cell.
Data have some break lines in data-content. In Jexcel while pasting it is making extra new column for every break-line and is putting data into new column with braked data. But it should have to be in one single cell same as in Google Sheet or MS Excel. I am attaching two screenshots :
1-one is source from Google Spreadsheet or MS Excel.
2-other one is after pasting into jexcel cell.
Source Data from Google spreadsheet

After pasting data into jsexcel

Please help me thank you very much.

This feature is available in the version 1.3.0 in a different repository while we are testing this new version.

@paulhodel  Thanks for this
Actually I was using from 1.3.0 branch with JS version 1.3.1 so it was not there but now in 1.3.0 branch with latest version 1.3.2 js is working fine. Thanks again 👍

The new features are now described in our new documentation website.


Find and build all packages individually

Closes #21
So, the basic idea is: find all Cargo.tomls and run an optimized build in their directories. An optional argument serves as a filtering path.
The verification process for cosmwasm-plus is still not solved because:

Running the default command in the repo will build all of . ./contracts/cw20-base ./contracts/cw20-escrow ./contracts/cw1-whitelist ./contracts/cw1-subkeys ./packages/cw1 ./packages/cw20 ./packages/cw2 in no defined order, such that the build in . can override the individual contracrt builds. This can only be solved by providing a path argument for filtering.
It is still unclear which source code will be used for verification. If we use the full repo for creating the builds, we also need to use the full repo for verifying them.

Closing as this is a dead end as described in https://github.com/CosmWasm/rust-optimizer/issues/21#issuecomment-677475126


unknown attributes doesn't get error even if strictTemplate: true is set (regression from 1.4.0)

<template>
  bar
</template>

unknown-attr attribute doesn't exist in  so I expect an error to happen. The error happened with vue-tsc pre-1.4.0.
Reproduction
Reproduction: https://github.com/sapphi-red-repros/vue-language-tools-strict-template-html-attribute-repro (stackblitz)
npm run tsc doesn't throw an error. (actual)
npm run tsc13 throws an error. (expected)
My thoughts
I dug down this a bit and tried to create a PR but failed. I'll describe my thoughts here.
The virtual file of the file above is like below.
let __VLS_templateComponents!: {} & __VLS_WithComponent<'a', typeof __VLS_components, "A", "a", "a">;
const __VLS_0 = __VLS_templateComponents['a'];
const __VLS_1 = __VLS_asFunctionalComponent(__VLS_0, new __VLS_0({...{ }, unknownAttr: ("foo"), }));
const __VLS_2 = __VLS_1({ ...{ }, unknownAttr: ("foo"), }, ...__VLS_functionalComponentArgsRest(__VLS_1));

The type helpers are:
type __VLS_IntrinsicElements = __VLS_PickNotAny<import('vue/jsx-runtime').JSX.IntrinsicElements, __VLS_PickNotAny<JSX.IntrinsicElements, Record<string, any>>>;

type __VLS_WithComponent<N0 extends string, Components, N1 extends string, N2 extends string, N3 extends string> =
	__VLS_IsAny<__VLS_IntrinsicElements[N0]> extends true ? (
		N1 extends keyof Components ? N1 extends N0 ? Pick<Components, N0> : { [K in N0]: Components[N1] } :
		N2 extends keyof Components ? N2 extends N0 ? Pick<Components, N0> : { [K in N0]: Components[N2] } :
		N3 extends keyof Components ? N3 extends N0 ? Pick<Components, N0> : { [K in N0]: Components[N3] } :
		${vueCompilerOptions.strictTemplates ? '{}' : '{ [K in N0]: any }'}
	) : Pick<__VLS_IntrinsicElements, N0>;

// ---

interface IntrinsicElements extends NativeElements {
  [name: string]: any
}
type NativeElements = {
    [K in keyof IntrinsicElementAttributes]: IntrinsicElementAttributes[K] & ReservedProps;
};

So this is something like:
const __VLS_0: { href: string };
const __VLS_1 = __VLS_asFunctionalComponent(__VLS_0, new __VLS_0({...{ }, unknownAttr: ("foo"), }));
const __VLS_2 = __VLS_1({ ...{ }, unknownAttr: ("foo"), }, ...__VLS_functionalComponentArgsRest(__VLS_1));

I guess changing __VLS_WithComponent to use { [K in keyof __VLS_IntrinsicElements]: { new (attrs: __VLS_IntrinsicElements[K]): unknown /* I don't know what this part should be */ } } instead of __VLS_IntrinsicElements would work.
I don't know what __VLS_asFunctionalComponent is used for.
Also I tried to create a test but I noticed that #2366 is required for that. But that issue would take much time to tackle for me.

Thanks for the report, fixed by https://github.com/vuejs/language-tools/commit/f255d1c17999c3c34d15ecbe284908f40efbd9d8.
__VLS_asFunctionalComponent was used for support generic without jsxTemplates, you can see the TS playground link from #2677.
#2366 is currently avoided on purpose, it's not technically correct behavior, if we support it it might make it the norm in the future, I'll look for a way to add a test for this.

Thank you for the quick fix and the explanation! I see. That’s smart.
I also noticed that you implemented #3215. Awesome! Thanks for that too.


No space left on device when running buildDockerImage.sh for OracleDatabase

I'm running this on Windows 10 with still plenty of disk space:

I git cloned this repository into a local directory and then copied Oracle <IP_ADDRESS> Enterprise Edition for Linux into /c/Users/lukas/docker/oracle/docker-images/OracleDatabase/dockerfiles/<IP_ADDRESS> and then ran buildDockerImage.sh only to get a "no space left on device" error

What might be the cause of this?

You will have to dig configuration of Docker Toolbox for Windows. It uses a VirtualBox VM behind the scenes. That is where I believe disk space is not sufficient, not your host (Windows).

@lukaseder, I don't think there is anything we can do in the Dockerfiles to fix this. It is up to the user to adjust its Docker installation and host environment

Thanks for your help. I was afraid I had to dig into how these things work in detail :)

OK, for the record (i.e. for other docker newbies like myself), this is the command to increase the default disk (and memory) size:
$ docker-machine create --driver virtualbox --virtualbox-disk-size "40000" --virtualbox-memory 2048 default

Will edit and adapt if the above is not sufficient.

Folks: Just wanted to say that this is really excellent. Thanks a lot for doing this. Will definitely advertise this to everyone, also on the jOOQ blog :)

We are glad to hear @lukaseder and appreciate the valuable feedback! Have fun dockering around :)


How to find performance metics in AWS Cloudwatch?

Hello, I've built&run cdi sdk&test application, everything works fine, but I can't find performance metrics (like DroppedPayloads, LatePayloads, PayloadTimeP99, etc) in AWS Cloudwatch. Could you please describe how to find these performance metrics in CloudWatch?
Configuration&build was done by INSTALL_GUIDE_LINUX.md manual. Looks like, performance metrics are being sent. If I put invalid valued to ~/.aws/credentials I can see error message when I start cdi_test app. If I put correct values to this file, I don't see any errors.

It is required to add --stats_period 60 --stats_cloudwatch ... to ./cdi_test application

Sergey, you can find documentation at user_guide. How to view the metrics is described near the end of the guide.
Concerning your question about cdi_test command line options, the default value for --stats_period is 1, so specifying it is not necessary. However, the --stats_cloudwatch option must be specified. An example is:
--stats_cloudwatch CDIStats us-west-2 Stream1
The example showing the full command is in the guide referenced above. Please let us know if you are still unable to find the metrics or have other questions.


aursync: use $EDITOR instead of forcing the use of vifm

It's probably not a good idea to force the use of a specific third party tool to view PKGBUILD. Instead, using the standardized $EDITOR variable might be preferable.

I went with vifm because:

I wanted to have all build files in one window, to avoid repeated confirmations
It takes directory and file names from stdin
I'm not sure how EDITOR works with that, though I guess you could implement a fallback mechanism.

As a compromise, I've set PAGER as a fallback when vifm is not available (9f5da3a3ae14c64c3f893856415feb32d2bdb893). It keeps in line with avoiding many "View X" prompts, and you can paste paths to another terminal.

@AladW do you think vipe might work as well?  If you use vim then you have access to gf from netrw and I believe vipe honours EDITOR.  With that you could set EDITOR=vifm - and get more or less the same effect.
However there may be a bug with vipe because even the it claims and the code seems to support it, my value for EDITOR is getting lost through the code, so moreutils may need to get fixed.
The theory should be sound though.

I'd probably still need to hardcode vifm since it requires the special argument +view! to enable previews, unless you split VIEWER on whitespace or such.
Are there some other programs that use the VIEWER variable?

Any "command" environment variable like EDITOR, CC will always have to suffer wordsplitting in shells, it's basically expected.  The typical solution used when spaces were an issue is to write a wrapper script and use that in, for example CC.

Another issue is that only vifm appears suitable if you want to actually interact with the files, rather than display their paths. I've tested the console file managers listed in archwiki with either printf '%s\n' * | foo - or foo* in my aurutils cache and got the following:

ranger which was suggested in #263 simply opens one tab for each given path
mc ignores anything past the first two arguments
lfm turns into a christmas tree to eventually crash
dired fails with a segmentation fault
nffm errors with "Inappropriate ioctl for device" and asks to delete /boot/grub/fonts (?!?)
pilot either displays a long string or the first argument
netrw (vim) opens one buffer for every argument; when taking paths from stdin, they are only printed.

Depressing. If you wanted to support these awful programs, you could symlink all relevant directories (read: all directories in the build queue) someplace and visit that directory with the file manager. Which has more problems:

ln -s is slow as you need one fork per file
cp -rs gives 5 million warnings due to symlinks in .git directories
lndir ignores .git directories, but it can only link directories verbatim, such that false positives need to be removed by hand.

Just cloning everything to a new directory each time is another option, but then git diff becomes problematic. The best I can think of in that case is intertwine aur-fetch with the viewer...
tl;dr unless someone has a better idea or proposes a better lndir I'm closing this one as wontfix.

It doesn't matter of there are other program that support this currently (which I suspect is a false premise anyway, Dired does not segfault for me), so long as the option exists, I can write my own script to support it.
All you need is some AURUTILS_BROWSER envvar set to some script/program that is called with the path to the unpacked directory as a single argument and exits when "viewing" is complete.

All you need is some AURUTILS_BROWSER envvar set to some script/program that is called with the path to the unpacked directory as a single argument and exits when "viewing" is complete.

That doesn't make sense to me. There is no such thing as "the unpacked directory" since the build files required for the current process are scattered amongst all other files in AURDEST.

It doesn't matter if there are other program that support this currently (which I suspect is a false premise anyway, Dired does not segfault for me),

Note that by dired I meant the standalone version from AUR, I haven't tried how emacs dired works in this case.

I would prefer just the directory names either as arguments or in a file passed as the first argument.

I guess this is what you actually meant instead of the "unpacked directory" thing. I would prefer if I could use the same logic for vifm and some exposed wrapper script (the claim of "unfriendly API for stdin" is unfounded as you put it, since stdin is in the end, a file - /dev/stdin)

So, for the simplest editing, isn't it possible to just use nano ? Tbh all I use the editor for is to edit the pkgbuild itself, and very very rarely other files. I could create a synlink to nano in my own path maybe, and make aurutils use that but that doesn't sound clean nor doable. I really tried vim but I just can't get used to it... So any help would be appreciated.

@AladW The problem with using stdin to pass in the list of files is that if I am running an interactive program, there is some expectation that stdin is actually the user's input from the terminal.  However, the user cannot actually provide input to stdin because you have stolen it from the program.
This can be worked around by directly querying for the pty file for the controlling terminal, such as in my example, but it's a hack that should not be needed.
For example, if I had cause to use a command line oriented program of my choosing (which would work like ed or bash, i.e. a CLI), I would have to do the following dance:
#!/bin/bash
tmp=$(mktemp)
trap "rm -f $tmp" EXIT
cat >"${tmp}"
some-program </dev/$(ps hotty $$) "${tmp}"

@xogium you can set the default editor in vifm to nano in ~/.vifm/vifmrc:
set vicmd=nano

Thanks a lot for that. I will just have to get used to quitting the
file manager with :q now
:D
. I thought it was really enforcing vim as editor.

-------- Message original --------

  @xogium you can set the default
    editor in vifm to nano in ~/.vifm/vifmrc:
  set vicmd=nano

  —
    You are receiving this because you were mentioned.
    Reply to this email directly, view it on GitHub, or mute the thread.

  {"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/AladW/aurutils","title":"AladW/aurutils","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/AladW/aurutils"}},"updates":{"snippets":[{"icon":"PERSON","message":"@AladW in #51: @xogium you can set the default editor in vifm to nano in `~/.vifm/vifmrc`:\r\n```\r\nset vicmd=nano\r\n```"}],"action":{"name":"View Issue","url":"https://github.com/AladW/aurutils/issues/51#issuecomment-368443945"}}}

--

Ellie Reeves

Untested lndir prototype:
if ((view)); then
    tmp_view=$(mktemp -d)
    lndir "$tmp_view" "$PWD"
    lndir "$tmp_view" "$tmp"/patch

    # remove links to build files that are not part of the queue
    find "$tmp_view" -xtype d -maxdepth 1 | grep -Fxvf "$tmp"/queue | xargs -d '\n' rm -rf

    if [[ -v AURUTILS_VIEWER ]]; then
        command -- "$AURUTILS_VIEWER" "$tmp_view"
    else
        printf -- '%s\n' "$tmp_view"/* | command -- "${PAGER:-less}"
    fi
fi

Besides that it appeals to the lowest common denominator (it should even work with abominable programs like nautilus), the tmp_view directory is preserved until aur-sync exits. Priorly the state for the queue was lost in vifm simply by browsing to a different directory.

What is the expected behavior when sending files/dirs over stdin to a differen file viewer like vifm?
I might try adding this feature to ranger when I find some time for it.

Personally I expect the file manager to display the files/directories from stdin, and those files only.

Until then I updated the lndir prototype above (it should actually work now).

...and updated again. Now the file manager doesn't even have to accept arguments.h

Testing e120894 with ranger atm. Works pretty well when I filter out stuff I don't care about, but unfortunately I can't tell ranger to run a command after initialization because the way it is launched (via command) prevents me from doing so.
To clarify:
$ AUR_PAGER="ranger --cmd aur" aur sync --repo aur -u
…
/usr/lib/aurutils/aur-sync: line 327: ranger --cmd aur: command not found

For the first, I removed the quotes from AUR_PAGER so it should work as intended. You're probably right on the second, but there's not much I can do apart from writing something myself in C/C++, which is not something I had planned.
At least the patch files could be moved over to the view directory if that makes it easier to copy them.

Scratch that, you can just use ln -t
$ cd /tmp/tmp.crL4xFOOc8/
$ find /etc -maxdepth 1 -mindepth 1 -type d -exec ln -t "$PWD" -s {} +

New proposal:
if ((view)); then
    if [[ -v AUR_PAGER ]]; then
        # link build files in the queue
        find "$aur_workdir" -maxdepth 1 -mindepth 1 -type d -printf '%f\0' \
            | complement "$tmp"/queue --null | xargs -0 ln -st "$tmp_view"

        # link diffs
        ln -st "$tmp_view" "$tmp"/patch/*

        command -- $AUR_PAGER
        cd_safe "$aur_workdir"
    else
        printf '%s\n' "$tmp"/patch/* | cat - "$tmp"/queue \
            | xargs -I{} find {} -maxdepth 1 | viewer
    fi
fi

@FichteFoll https://github.com/AladW/aurutils/commit/91bd7ee889ad524d3bed0966d8f2368b24aa91a2

$ AUR_PAGER="ranger --cmd aur" aur sync --repo aur dropbox
  -> Using [aur] repository
  -> dropbox: 46.4.65-2 -> 47.4.74-2
From https://aur.archlinux.org/dropbox
 = [up to date]      master     -> origin/master
mv: missing file operand
Try 'mv --help' for more information.

↪ 127 2018-04-12 20:55:21 ionasal@cielnosurge:~ $ AUR_PAGER=dired2 aur sync st
  -> Using [custom] repository
  -> st: (none) -> 0.8.1-1
Cloning into 'st'...
remote: Counting objects: 22, done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 22 (delta 9), reused 10 (delta 2)
Unpacking objects: 100% (22/22), done.
mv: missing file operand
Try 'mv --help' for more information.

If there are no wildcard matches, mv fails https://github.com/AladW/aurutils/commit/0013a083e8564af1d0c349cda90cfef5929bcf82#diff-09d049907497fdb78fd83e6ce9d0ec0bL324

https://github.com/AladW/aurutils/commit/017b70ead64a2526faf93707070b874809137e70

@FichteFoll if you decide to add stdin support to ranger anyway, let me know and I'll add it to the viewer function

[fichte@pinaceae aurutils]$ [[ /tmp/.* ]] && echo "ok" || echo "no"
ok
[fichte@pinaceae aurutils]$ [[ /tmp/aur* ]] && echo "ok" || echo "no"
ok
[fichte@pinaceae aurutils]$ x=$(echo /tmp/.*)
[fichte@pinaceae aurutils]$ echo $x
/tmp/. /tmp/.. /tmp/.esd-1000 /tmp/.font-unix /tmp/.ICE-unix /tmp/.Test-unix /tmp/.X0-lock /tmp/.X11-unix /tmp/.XIM-unix
[fichte@pinaceae aurutils]$ [[ $x ]] && echo "ok" || echo "no"
ok
[fichte@pinaceae aurutils]$ x=$(echo /tmp/aur*)
[fichte@pinaceae aurutils]$ echo $x
[fichte@pinaceae aurutils]$ [[ $x ]] && echo "ok" || echo "no"
no

Looks like file expansion doesn't happen in [[ ]].

How about https://github.com/AladW/aurutils/commit/2aafcf422b51b78a57f9bc78723c7dd4d8b96313

Works now! (I patched it locally for testing in a similar way.)

I have an idea, with the recent changes, vifm opens with current directory set to ~/.cache/aurutils/sync:

I think it should use the $tmp_view as the current directory instead:

As something like vifm - /tmp/view. or vifm /tmp/view. - does not have the desired effect, options are:

Specify all files on the vifm command line with a glob

Less robust approach as additional prompts may occur on permission errors

cd to $tmp_view before running vifm

can be either done in a subshell in viewer() or in main if a second cd $aur_workdir is done afterward

Treat vifm like any other file manager and just run it as vifm $tmp_view '+view!

However, in each of these cases files contained in these directories are not in the vifm prompt. This is the best you can expect for a generic file manager, but with vifm (and consequently, in aurutils 1.5) the path to every file was fed to vifm - with find.

I noticed that files in the directories are not immediately visible, but that's acceptable I think, as long as patches are shown directly in $tmp_view :)

1647720d00f22c76ed778389697dcc475421115c

Hi Alad, thanks so much for all the work you do with this. I hope this question isn't a duplicate: I was curious if it's possible to select packages or cancel operates from the vifm menu? Not sure how to abort besides closing the terminal (Ctrl-C doesn't work).

:cq. Although I will ask the same question for less.

@Morganamilo https://unix.stackexchange.com/questions/287818/cause-less-to-exit-with-a-non-zero-status-code ?

The man page mentions:

Note that use of this option makes it impossible to return to the command prompt from the "F" command.

Is that problematic to someone?

Hi @AladW. I'm using a dedicated user for builds as one of the examples in the man pages shows, but I'm having troubles editing files inside vifm. No matter what key I press (enter, i) I cannot edit any file and output in the console looks like this:

/sbin/nologin: invalid option -- 'c'
Try 'nologin --help' for more information.

I can use vifm normally with my regular user, so the problem is either the build user or something related with sudo. Any ideas?
Thanks.

vifm assumes the account shell supports -c to run commands (in
particular, vim). As nologin is not a shell, it won't work. I should
probably remove --nologin from the example; feel free to open a new
issue for this.
On Fri, Mar 01, 2019 at 12:59:46PM -0800, Miguel Casal wrote:

Hi @AladW. I'm using a dedicated user for builds as one of the examples in the man pages shows, but I'm having troubles editing files inside vifm. No matter what key I press (enter, i) I cannot edit any file and output in the console looks like this:

/sbin/nologin: invalid option -- 'c'
Try 'nologin --help' for more information.

I can use vifm normally with my regular user, so the problem is either the build user or something related with sudo. Any ideas?
Thanks.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/AladW/aurutils/issues/51#issuecomment-468809825


Missing a nice main.cpp example?

I'm working on it :)

Yes, and can u make better comments? There are functions without any help (ex: SetRect). Im not sure about how to use this....

I would really appreciate a small example that works on its own.
At the moment I call
ImGuizmo::BeginFrame();
ImGuizmo::Enable(true);

ImGuiIO& io = ImGui::GetIO();
ImGuizmo::SetRect(0, 0, io.DisplaySize.x, io.DisplaySize.y);

glm::fmat4 view = m_camera->modelViewMatrix();
glm::fmat4 projection = m_camera->projectionMatrix();

ImGuizmo::DrawCube(&view[0][0], &projection[0][0], &matrix[0][0]);
ImGuizmo::Manipulate(&view[0][0], &projection[0][0], ImGuizmo::ROTATE, ImGuizmo::WORLD, &matrix[0][0]);

right after ImGuiGlfw3NewFrame() in the render loop but nothing is drawn. The matrix variable is initialized to the identity matrix and I tried to supply my real view and projection matrices as well as identity matrices. Standard ImGui windows are drawn correctly btw. Do you have any advice?

Hi Fabian,
Can you dump the view & projection matrices?
I don't see anything strange in your code.
best
Cedric
On Fri, May 26, 2017 at 3:22 AM, Fabian Löschner<EMAIL_ADDRESS>wrote:

I would really appreciate a small example that works on its own.
At the moment I call
ImGuizmo::BeginFrame();
ImGuizmo::Enable(true);
ImGuiIO& io = ImGui::GetIO();
ImGuizmo::SetRect(0, 0, io.DisplaySize.x, io.DisplaySize.y);
glm::fmat4 view = m_camera->modelViewMatrix();
glm::fmat4 projection = m_camera->projectionMatrix();
ImGuizmo::DrawCube(&view[0][0], &projection[0][0], &matrix[0][0]);
ImGuizmo::Manipulate(&view[0][0], &projection[0][0], ImGuizmo::ROTATE, ImGuizmo::WORLD, &matrix[0][0]);
right after ImGuiGlfw3NewFrame() in the render loop but nothing is drawn.
The matrix variable is initialized to the identity matrix and I tried to
supply my real view and projection matrices as well as identity matrices.
Standard ImGui windows are drawn correctly btw. Do you have any advice?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/CedricGuillemet/ImGuizmo/issues/21#issuecomment-304246808,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABQIyO09-lHm4NJOTvhnEufN2eoCbognks5r9qfYgaJpZM4LdUI6
.

--
Cedric Guillemet
http://www.skaven.fr http://twitter.com/skaven_

Thanks for the reply, I use the following code to compute the matrices:
void Camera::updateModelViewMatrix()
{
	m_modelView = glm::scale(glm::dmat4(), m_scaling);
	m_modelView = glm::rotate(m_modelView, glm::angle(m_rotation), glm::axis(m_rotation));
}

void Camera::updateProjectionMatrix()
{
	const double diag = std::hypot(m_viewportSize.x, m_viewportSize.y);
	m_projection = glm::ortho<double>(-0.5*m_viewportSize.x*m_zoom, 0.5*m_viewportSize.x*m_zoom, -0.5*m_viewportSize.y*m_zoom, 0.5*m_viewportSize.y*m_zoom, -diag, diag);
}

please add a main.cpp

added mine with object picker http://www.github.com/edselmalasig/ImGuizmo_pick_and_choose

@CedricGuillemet, I found the problem why nothing was drawn: In my call
ImGuizmo::Manipulate(&view[0][0], &projection[0][0], ImGuizmo::ROTATE, ImGuizmo::WORLD, &matrix[0][0]);

I forgot to initialize matrix to anything meaningful (e.g. identity matrix). facepalm