Add Upload, Show and Download Artifacts Commands for all Apps

What does this PR do?

This PR upstreams the artifact commands from the development from Lightning HPO.
lightning upload artifacts --files tests/tests_lite/strategies/launchers
You are connected to the local Lightning App.
upload ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸ 100.0%
Your command execution was successful.

lightning show artifacts

You are connected to the local Lightning App.
📂 /drive/
📂 /drive/uploaded_files/
📂 /drive/uploaded_files/file_server/
📂 /drive/uploaded_files/file_server/tests/
📂 /drive/uploaded_files/file_server/tests/tests_lite/
📂 /drive/uploaded_files/file_server/tests/tests_lite/strategies/
📂 /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/__init__.py
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/test_multiprocessing.py
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/test_subprocess_script.py
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/test_xla.py
📂 /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/__pycache__/
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/__pycache__/__init__.cpython-38.pyc
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/__pycache__/test_multiprocessing.cpy
thon-38-pytest-7.1.3.pyc
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/__pycache__/test_subprocess_script.c
python-38-pytest-7.1.3.pyc
   /drive/uploaded_files/file_server/tests/tests_lite/strategies/launchers/__pycache__/test_xla.cpython-38-pyte
st-7.1.3.pyc
Your command execution was successful.

lightning download artifacts --output_dir=./output_dir
ls output_dir -> drive

TODOS:

[] Add tests

Fixes #<issue_number>
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

Hey @tchaton this makes sense in general, since apps have their shared_storage it is a good thing to give (some) users the ability to see and view data. However we need to also have very strict control on who can actually run these commands. By default they should be limited to the app admin, but in order to have that we need to have app auth merged. We could skateboard something where an env var (known to the admin) defines a token that is needed to access the API, although this would prevent Clone&Run from the UI. I propose to wait for app auth to be merged and then activate this. In the meantime we can finalize and merge this, so one can opt-in use them, but let's avoid having the commands available in all apps by default.

Hey @lantiga, you are right ! Security is problematic there.
I have made the commands optional, but overall, we would need to come up with a general mechanism to enable the Rest API utilization, probably token protected.
Best,
T.C

My only concern is regarding the potentially blurred lines between what a dedicated CLI command is and what an app-specific command is. For example, one could have these as dedicated commands in the CLI:
lightning download data ...
lightning upload data ...
etc.
Whereas here we are adding them to the app specific commands, i.e., you connect through lightning connect first. Initially, the app specific commands were intended to be custom commands provided by the user for the app, and not pre-defined ones from us. At least this is how I imagined it.
As discussed offline briefly, an alternative could be to have the command classes as part of the framework, and the user can then choose to add them if they want.

@tchaton is this still required?


Add release note section to PR template

What this PR does / why we need it:
Because we want release notes

Currently i've been writing them manual, is there any tool, which parses the PR's and creates release notes from the PR descriptions?

Not that I know of, but I didn't search either. I created this PR because @scheeles wanted to have the release notes in the PR descriptions and I thought it is better to start collecting that data asap.

Its more work to go trough each closed PR to collect the notes, than opening the diff-page in Github and taking/rewording the commit messages.
So i would rather have something which makes the task easier.

Closing for now as we do not have an auomated way to collect release notes from PRs yet.

I think there is a tool. Let me check with Ihor from CNCF

Here is the tool from k8s https://github.com/kubernetes/release/blob/master/relnotes
And this is the repo fro k8s release https://github.com/kubernetes/release


Bump to 0.6.1?

Any chance you can cut a release and bump the PyPI version? Thanks!

Sorry about this. I'll bump and push in a week or two, if no-one finds problems with the latest codec changes.

Hey @brendonh, could you bump when you get a chance? Thanks!

@brendonh For what it's worth, the 0.6.0 version that is on PyPI does not work fully with Flask.  This gist throws a UnicodeDecodeError when trying to load up your ansi.rtf file from the tests directory.  If I use the latest rev from git, there are no problems.
Also, if / when you do cut a release, the version in your pyth/init.py file is also out of date.
Thank you!


Uncaught TypeError: Cannot read property 'setScrollTop' of null

[Enter steps to reproduce below:]

...
...

Atom Version: 1.1.0
System: Mac OS X 10.11.1
Thrown From: split-diff package, v0.4.4
Stack Trace
Uncaught TypeError: Cannot read property 'setScrollTop' of null
At /Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-element.js:315

TypeError: Cannot read property 'setScrollTop' of null
  at atom-text-editor.TextEditorElement.setScrollTop (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-element.js:315:28)
  at TextEditor.module.exports.TextEditor.setScrollTop (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:2799:39)
  at SyncScroll._scrollPositionChanged (/Users/iyanello/.atom/packages/split-diff/lib/sync-scroll.js:46:19)
  at /Users/iyanello/.atom/packages/split-diff/lib/sync-scroll.js:29:22
  at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:86:11)
  at /Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-element.js:105:47
  at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:86:11)
  at TextEditorPresenter.module.exports.TextEditorPresenter.updateScrollTop (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-presenter.js:1028:29)
  at TextEditorPresenter.module.exports.TextEditorPresenter.commitPendingScrollTopPosition (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-presenter.js:2056:14)
  at TextEditorPresenter.module.exports.TextEditorPresenter.getPreMeasurementState (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-presenter.js:110:12)
  at LinesYardstick.module.exports.LinesYardstick.prepareScreenRowsForMeasurement (/Applications/Atom.app/Contents/Resources/app.asar/src/lines-yardstick.js:24:63)
  at TextEditorPresenter.module.exports.TextEditorPresenter.getState (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-presenter.js:183:27)
  at TextEditorComponent.module.exports.TextEditorComponent.updateSync (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-component.js:196:38)
  at TextEditorComponent.module.exports.TextEditorComponent.becameVisible (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-component.js:278:21)
  at TextEditorComponent.module.exports.TextEditorComponent.checkForVisibilityChange (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-component.js:929:16)
  at atom-text-editor.TextEditorElement.attachedCallback (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-element.js:87:22)
  at atom-pane-container.module.exports.PaneContainerElement.rootChanged (/Applications/Atom.app/Contents/Resources/app.asar/src/pane-container-element.js:38:14)
  at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:86:11)
  at PaneContainer.module.exports.PaneContainer.setRoot (/Applications/Atom.app/Contents/Resources/app.asar/src/pane-container.js:165:20)
  at PaneContainer.module.exports.PaneContainer.replaceChild (/Applications/Atom.app/Contents/Resources/app.asar/src/pane-container.js:175:19)
  at PaneAxis.module.exports.PaneAxis.reparentLastChild (/Applications/Atom.app/Contents/Resources/app.asar/src/pane-axis.js:219:19)
  at PaneAxis.module.exports.PaneAxis.removeChild (/Applications/Atom.app/Contents/Resources/app.asar/src/pane-axis.js:184:21)
  at /Applications/Atom.app/Contents/Resources/app.asar/src/pane-axis.js:227:24
  at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:86:11)
  at Pane.module.exports.Pane.destroyed (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:641:20)
  at Pane.module.exports.Model.destroy (/Applications/Atom.app/Contents/Resources/app.asar/src/model.js:31:58)
  at Pane.module.exports.Pane.destroy (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:632:39)
  at Pane.module.exports.Pane.removeItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:406:21)
  at Pane.module.exports.Pane.destroyItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:448:16)
  at HTMLDivElement.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/tabs/lib/tab-bar-view.js:236:22)
  at space-pen-ul.jQuery.event.dispatch (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4435:9)
  at space-pen-ul.elemData.handle (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4121:28)

Commands
  4x -4:42.7.0 core:confirm (atom-text-editor.editor.mini.is-focused)
 10x -4:15.1.0 core:backspace (atom-text-editor.editor.mini.is-focused)
  2x -4:04.4.0 core:confirm (atom-text-editor.editor.mini.is-focused)
 23x -1:56.1.0 core:backspace (atom-text-editor.editor.mini.is-focused)
     -1:51.9.0 core:confirm (atom-text-editor.editor.mini.is-focused)
 12x -1:03.0 core:backspace (atom-text-editor.editor.mini.is-focused)
  4x -1:00.8.0 core:confirm (atom-text-editor.editor.mini.is-focused)
     -0:38.1.0 fuzzy-finder:toggle-file-finder (atom-text-editor.editor.is-focused)
  5x -0:35.4.0 core:backspace (atom-text-editor.editor.mini.is-focused)
     -0:33.5.0 editor:consolidate-selections (atom-text-editor.editor.mini.is-focused)
     -0:33.5.0 core:cancel (atom-text-editor.editor.mini.is-focused)
     -0:22.5.0 split-diff:diffPanes (atom-text-editor.editor.is-focused)
     -0:17 emmet:insert-formatted-line-break-only (atom-text-editor.editor.is-focused)
     -0:16.9.0 editor:newline (atom-text-editor.editor.is-focused)
     -0:15.8.0 emmet:insert-formatted-line-break-only (atom-text-editor.editor.is-focused)
     -0:15.8.0 editor:newline (atom-text-editor.editor.is-focused)

Config
{
  "core": {
    "packagesWithKeymapsDisabled": [
      "atom-beautify"
    ]
  }
}

Installed Packages
# User
atom-autocomplete-php, v0.18.1
autocomplete-paths, v1.0.2
autocomplete-python, v0.9.4
color-picker, v2.0.13
emmet, v2.3.13
es-identifier-highlight, v0.2.7
language-rust, v0.4.5
linter, v1.10.0
linter-php, v1.0.5
pigments, v0.18.1
split-diff, v0.4.4

# Dev
No dev packages

Were you trying to use this package when this error happened? Or did this error happen randomly even though you thought split-diff was disabled?

I hit this error, too. I was trying to diff something staged (as if I were to do `git diff --staged) so the new pane was empty. The error happened when I closed the empty pane.

I found a way to reproduce this each time:
Launch split-diff when you have only one file open ; it will try to diff with an empty file. Close the emplty file, it will then trigger this error.
Currently on
Atom v1.1.0
WIndows 10

Thank you! Not sure how I missed that use case. Perhaps this is a sign that I should actually write tests..
Anyway, I don't really know why it is trying to sync the scrolls on close of an editor. There doesn't appear to be anything I can check on the editor objects to determine if they are valid to call setScrollTop() on. Therefore, I put a try/catch in that solves the problem.


Refactor Isbn to move format specific logic into dedicated classes.

Merged to develop for release with 2.6.0.


Fix code scanning alert - High severity - Denial of Service (DoS) vulnerability in com.google.protobuf:protobuf-java

Tracking issue for:

[x] https://github.com/joeljeremy7/externalized-properties/security/code-scanning/2

Fixed in https://github.com/joeljeremy7/externalized-properties/pull/6


two-cols layout is missing a gap between the two columns when code blocks are side by side

Hello!  Not sure if this is the correct repo to report this, feel free to move the issue. I noticed a small theme problem using two-cols layouts. It seems that two code box get very close together when they are in their own columns.
---
layout: two-cols-header
---

# Exception Handling

::left::

```ruby
def divide(x, y)
  x / y
rescue ZeroDivisionError => e
  puts "Error: #{e.message}"
end
```

::right::

```ruby
class Person
  attr_accessor :name, :age

  def initialize(name, age)
    @name = name
    @age = age
  end
end

person = Person.new("Alice", 30)
```

---

This is what it looks like using the seriph theme. I haven't tried the other, but I guess they might have the same problem.

It's intentional to leave that to users to define (it's easier to add padding than removing).
You can use calss: gap-2 in frontmatter to configure it, or wrap the inner content with padding - up to you!


Issue with domains that cross international dateline

Summary:  Current LISF contains certain domain and interpolation routines that require grids to go from -180 to 180 in longitude, which is causing issues for users wanting to run a domain that crosses the international dateline of -180.
Need to investigate those routines, including LDT, LIS and LVT, and prepare solution so all domains can be supported.
Note: There may be routine in either interp or core that requires longitudes to be specified within -180 to 180.
Some users implemented a simple fix in the interim (e.g., not allow LDT gridmapping module apply any subsetting).

Updated the Issue #117, Crossing the International Dateline,
testcase in LIS to account for open water surface in addition
to Noah LSM land surface type.
Updated the ldt.config and lis.config files in LIS directory:
lis/testcases/domains/latlon_idlcross
New tarball input and output testcase files can be found here:
/discover/nobackup/projects/lis/Projects/LDT/LISF_Testcases/Cross_Dateline/Testcase
Input LDT testcase tarball:  LDT_Test/testcase_ldt_input.tar.gz
Input LIS testcase tarball:  LIS_Test/testcase_lis_input.tar.gz
Output LIS testcase tarball:  LIS_Test/testcase_lis_output.tar.gz


Unreadable error messages on linking failure

This is a very annoying aspect of cargo - if it fails to link a library, it doesn't tell you the path, it doesn't tell you which library it couldn't find, it just spits out a completely unreadable error message and quits. For example:
   Compiling deflate v0.7.17
error: could not exec the linker `cc`: No such file or directory (os error 2)
  |
  = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/home/felix/.rustup/toolchains/stable-
x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib"
"/home/felix/Development/srtmtoimage/target/debug/build/kernel32-sys-
23866d7aeb753806/build_script_build-23866d7aeb753806.build_script_build0.rust-cgu.o" "-o"
"/home/felix/Development/srtmtoimage/target/debug/build/kernel32-sys-
23866d7aeb753806/build_script_build-23866d7aeb753806"
"/home/felix/Development/srtmtoimage/target/debug/build/kernel32-sys-
23866d7aeb753806/build_script_build-23866d7aeb753806.crate.allocator.rust-cgu.o" "-Wl,--gc-
sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" "-L"
"/home/felix/Development/srtmtoimage/target/debug/deps" "-L" "/home/felix/.rustup/toolchains/stable-
x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic"
"/home/felix/Development/srtmtoimage/target/debug/deps/libbuild-055e23f8aa405a7b.rlib"
"/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-
gnu/lib/libstd-fe0b1b991511fcaa.rlib" "/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-
gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librand-3d7b10e850a67e89.rlib"
"/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-
gnu/lib/liballoc_jemalloc-28484309357fd6f1.rlib" "/home/felix/.rustup/toolchains/stable-x86_64-
unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc_system-751808ba756769d5.rlib"
 "/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-
gnu/lib/libpanic_unwind-8cb97051d8238386.rlib" "/home/felix/.rustup/toolchains/stable-x86_64-
unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-25cc9b024a02d330.rlib"
 "/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-
gnu/lib/liblibc-d42e80cee81b06ce.rlib" "/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-
gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-78c21267a2dc15c1.rlib"
"/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-
gnu/lib/libstd_unicode-0e1b544c94586415.rlib" "/home/felix/.rustup/toolchains/stable-x86_64
-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-0c5e3d6c117f8c44.rlib"
 "/home/felix/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-
gnu/lib/libcompiler_builtins-bd7cc5ada1e908e0.rlib" "-Wl,-Bdynamic" "-l" "dl" "-l" "rt" "-l" "pthread" "-l"
 "pthread" "-l" "gcc_s" "-l" "c" "-l" "m" "-l" "rt" "-l" "pthread" "-l" "util"

error: aborting due to previous error

error: Could not compile `rayon-core`.
warning: build failed, waiting for other jobs to finish...
error: Could not compile `kernel32-sys`.
warning: build failed, waiting for other jobs to finish...
error: build failed

Right, now try and read what the actual error is. Please:

Don't just quit with "No such file or directory" - it's one of the most useless error messages ever. Please include at least the file name!
If it is a linker error, please don't output the whole paths to the libraries. Just tell me which library wasn't found

That would be my suggestion for improving cargo. It's simply annoying to figure out which library is missing (99,99% it's a system dependency!). If this isn't part of cargo, ignore this issue.

Thanks for the report! This error message is actually generated by rustc itself, so can this be reopened over there?
The message here indicates that cc itself is missing, which means that you probably need to install gcc or clang from your package manager. I agree that rustc could do a better job of letting you know this though!


Add default_time_offset to TimeConfig

Fix #41.

please review

I think this should be unix_tz a bool or enum with two options.

or enum with two options

It is an enum with two options

I think this should be unix_tz a bool or enum with two options.

Do you mean the name of the field on TimeConfig? Or something else?
https://github.com/pydantic/speedate/pull/45/files#diff-cfec27eeae2a2cc474bfb3a8809608dfd6168b8de369109b327128904fda24c8R555-R560
#[derive(Debug, Clone, Default, Copy)]
pub enum DefaultTimeOffset {
    #[default]
    Naive,
    Utc,
}

// ...

#[derive(Debug, Clone, Default)]
pub struct TimeConfig {
    pub microseconds_precision_overflow_behavior: MicrosecondsPrecisionOverflowBehavior,
    pub default_time_offset: DefaultTimeOffset,
}

Are you just suggesting changing default_time_offset to unix_tz?

If the input is a number or a numeric string both of which are interpreted as Unix timestamps, then this setting should decide if the timezone is None or Some(0).
Hence the struct member name should change to unix_tz.

Is this what you mean? https://github.com/pydantic/speedate/pull/45/commits/d39415f2d0efc9c3be31b884c0e4173808b961ef#diff-cc856031f5a2bd26067d2ed100ee6e0dc576d5ed7c354a6f223468b7e5b85664

please review


TypeError: '<' not supported between instances of 'str' and 'int'

I need more info. please provide:

Plugin version
Method of installation (1,2, or 3)
ControlNet version

Method 2，

same issue here with method 3 and hash 99408b9 of control net extension. i also tried other hashes (controlnet) but same results

Same for me:
Error running process: F:\SD\stable-diffusion-webui\extensions\sd-webui-controlnet\scripts\controlnet.py
Traceback (most recent call last):
  File "F:\SD\stable-diffusion-webui\modules\scripts.py", line 451, in process
    script.process(p, *script_args)
  File "F:\SD\stable-diffusion-webui\extensions\sd-webui-controlnet\scripts\controlnet.py", line 751, in process
    if unit.threshold_a < 0:
TypeError: '<' not supported between instances of 'str' and 'int'

Plugin V 1.2.5
Installation method 3
ControlNet - v1.1.220
Pretty sure it ran errorless 24 hours ago.
Oh, and thanks for this amazing work!

This is the latest version of ControlNet that I’ve tested the plugin with. You might want to use it until I have time to test the new version.

thank you and wait for the next Version

fixed in v1.3.0


Predicted next cycle does not include titan kill (minor cosmetic)

After defeating Hadad this week, and the Intermediate result correctly showing a Titan kill, the predicted next cycle does not include this information.
In the grand scheme of things this is a minor cosmetic issue on a most useful site.

The idea is to have the same numbers there as in-game.
FDev made the decision to only remove the Titan system from the in-game war overview after 2 cycles. Since a tick just happened and the numbers from the "next cycle" should be the current numbers in-game we can compare:

Only in the next cycle the Titan is no longer counted in-game. Therefore, also in Overwatch it will be visible like that:

Ah that's fair enough, if a somewhat counter-intuitive.
There's still something a little strange going on here though: I'm now seeing 6 titans reported as active! Is this a function of the tick occuring part the way through the day?

Thanks for the quick response!

Tinfoil hat time: do we need to be looking for another incoming Titan?

Thanks for your feedback.
Indeed there is one Titan too much in there. :smile:
Looks like some old code reactivated Taranis. I updated Taranis manually, already removed the old code that I suspect reactivated it and will deploy it in the next days.

Thanks for the update and taking a deeper look. I don't know of any other community that has this level of technical expertise available in external tools. It really is an awesome site.
o7 CMDR.

Thank you, appreciated. o7


[WIP] add feature name to Booster

Hi @wxchan, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;


Adding an example of implementing chatgpt.com in jupyter notebook

The lightweight and interactive ChatGPT interface for Jupyter Notebooks.
It enables users to send messages, view Markdown-rendered responses, and reset conversations.
Example of usage (model gpt-4o-mini):

that's a really great idea - I love it - who needs to spend the $20 pro subscriptions when they have this!! Terrific


License link in readme is broken. Check casing.

In
https://github.com/monax/eris-db/blob/master/README.md
The license link
https://github.com/monax/eris-db/blob/master/license.md
should be
https://github.com/monax/eris-db/blob/master/LICENSE.md

changed: https://github.com/monax/eris-db/commit/3ac86da5567d3a9bbb2be8affb58a8844b9b1ce7
thanks


[SDS-867] Update qtt for python 3.11

Update name of requirements lock file
Update documentation for 3.11 and for WSL
Update version of qilib

@eendebakpt the build has passed now and I marked the PR as ready for review.


RCNN regression loss not calculated

Hello,
It is apparent from the code and config files that the rcnn regression loss is not calculated, although the function exists in roi_head_template.py . If this is correct, what is the motivation behind this?

We just aim at regressing IoU score for SECOND and add an roi head. Adding extra rcnn regression loss is actually an potentially strategy to improve performance, but we already have two-stage PVRCNN as a comparsion. Therefore, we just keep SECOND as simple as possible to verify our pipeline works on both one-stage and two-stage architectures.


Switch to MIT license (or similar)

I wrongly believed that CC-BY was functionaly equivalent to MIT/BSD/Apache and licensed this software with CC-BY to handle the code, book, notebooks, etc. all with one license. But it seems that CC-BY is less liberal that MIT/BSD/Apache due to a couple of clauses in the license. See this:
https://opensource.stackexchange.com/questions/9242/why-does-creative-commons-recommend-not-using-cc-by-licenses-for-software
So, I'd like to switch this repository to MIT.

@ixjlyons Do you have any objections to me changing the license for this repo to MIT?

No objections from me.

Thanks.


perf: evaluate use of requestIdleCallback

Looks like we can effectively delay expensive operations with a chrome-only api. We should polyfill it.
https://developer.mozilla.org/en-US/docs/Web/API/Window/requestIdleCallback
https://developers.google.com/web/updates/2015/08/using-requestidlecallback
http://caniuse.com/#feat=requestidlecallback
Thanks for the idea @douglasduteil at ngEurope !

I think this is a great idea! requestIdleCallback is also being implemented in Firefox (in fact i think it is in the latest nightly build).

As a matter of education can you give an example of an expensive operation in Ionic 2 that can/should be scheduled for requestIdleCallback? As DOM changes should not be done within it I wonder what else?

Hello everyone! I'm going to move this issue over to our internal list of feature requests for evaluation. We are continually prioritizing all requests that we receive with outstanding issues. We are extremely grateful for your feedback, but it may not always be our next priority. I'll copy the issue back to this repository when we have begun implementation. Thanks!

This issue was moved to driftyco/ionic-feature-requests#102


Krill name appears in some files

You may want to review the files to remove what appears to be a leaked code name.
'krill' appears in at least these places:

aws-cpp-sdk-cdi/include/aws/cdi/model/PutMetricGroupsRequest.h
doc/rx_reorder_sglist.png

I did not do an exhaustive search.

Thank you for taking the time to provide us with this feedback. We are reviewing the information you provided and will update this issue with progress accordingly.

We are marking this issue resolved. Please reopen the issue if you see something that would require further action.


Improve Feedback After Failed Panorama Commit Jobs

Is your feature request related to a problem?
If Panorama pushes new configuration to a managed firewall, and the Panorama commit succeeds but the subsequent firewall commit fails, the result is an error message which describes a timeout, not a failed commit. For example, when a firewall commit initiated by Panorama failed, this error was received:
.....panos/base.py\", line 4705, in syncjob\n    \"Timeout waiting for \" + \"job %s completion\" % job\npan.xapi.PanXapiError: Timeout waiting for job 536 completion\n"

Describe the solution you'd like
I'm no Python expert, but I assume that the current implementation waits for an arbitrary time, and if the Panorama job is not observed as completed by the timer expiring, it is assumed timed out. Then we get the error currently on line 4721 in base.py:
raise pan.xapi.PanXapiError(
    "Timeout waiting for " + "job %s completion" % job
)

Ideally, the preceding code would check if the problem is a real timeout in communication or connectivity between the relevant components, or if the problem is a downstream commit fail on the firewall itself, after Panorama attempts to push new configuration to that firewall.
Describe alternatives you've considered
One could alternatively: 1) attempt the changes via Panorama, then 2) after receiving success or timed out from the Python code, try to check the firewall and manually check if the firewall commit was successful. However, ensuring you're checking the same commit job that Panorama instigated would be potentially difficult. Also, this seems like something which would ideally be fixed within the commit procedure in this SDK, not something one has to put in their own code, especially given this particular error instance was observed whist using the Ansible modules that wrap around this SDK.
Additional context
This error instance, where what was reported as a commit timeout was actually a commit fail, was observed whilst executing an Ansible playbook. Here is the full error detail:
TASK [Commit] ***********************************************************************************************************************************************************************************

An exception occurred during task execution. To see the full traceback, use -vvv. The error was: pan.xapi.PanXapiError: Timeout waiting for job 536 completion

fatal: [panorama]: FAILED! => {"changed": false, "module_stderr": "Traceback (most recent call last):\n  File \"/home/vagrant/.ansible/tmp/ansible-tmp-1617784945.4697285-3010-161434147552941/AnsiballZ_panos_commit_push.py\", line 102, in <module>\n    _ansiballz_main()\n  File \"/home/vagrant/.ansible/tmp/ansible-tmp-1617784945.4697285-3010-161434147552941/AnsiballZ_panos_commit_push.py\", line 94, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/home/vagrant/.ansible/tmp/ansible-tmp-1617784945.4697285-3010-161434147552941/AnsiballZ_panos_commit_push.py\", line 40, in invoke_module\n    runpy.run_module(mod_name='ansible_collections.paloaltonetworks.panos.plugins.modules.panos_commit_push', init_globals=None, run_name='__main__', alter_sys=True)\n  File \"/usr/lib64/python3.6/runpy.py\", line 205, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n  File \"/usr/lib64/python3.6/runpy.py\", line 96, in _run_module_code\n    mod_name, mod_spec, pkg_name, script_name)\n  File \"/usr/lib64/python3.6/runpy.py\", line 85, in _run_code\n    exec(code, run_globals)\n  File \"/tmp/ansible_panos_commit_push_payload_vh_qtedl/ansible_panos_commit_push_payload.zip/ansible_collections/paloaltonetworks/panos/plugins/modules/panos_commit_push.py\", line 201, in <module>\n  File \"/tmp/ansible_panos_commit_push_payload_vh_qtedl/ansible_panos_commit_push_payload.zip/ansible_collections/paloaltonetworks/panos/plugins/modules/panos_commit_push.py\", line 183, in main\n  File \"/home/vagrant/ansible/lib/python3.6/site-packages/panos/base.py\", line 4482, in commit\n    sync=sync, exception=exception, cmd=cmd, admins=admins, sync_all=sync_all\n  File \"/home/vagrant/ansible/lib/python3.6/site-packages/panos/base.py\", line 4583, in _commit\n    result = self.syncjob(commit_response, sync_all=sync_all)\n  File \"/home/vagrant/ansible/lib/python3.6/site-packages/panos/base.py\", line 4705, in syncjob\n    \"Timeout waiting for \" + \"job %s completion\" % job\npan.xapi.PanXapiError: Timeout waiting for job 536 completion\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}

PLAY RECAP **************************************************************************************************************************************************************************************
panorama                   : ok=2    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0

Job 536 had not timed out, there was no "time out" of communication or connectivity between the host running Ansible and Panorama, or between Panorama and the managed firewall. The job had generated config which was valid at Panorama, but once attempted to be committed on the firewall caused a validation fail. Panorama showed this output for the Ansible execution shown above:
admin@Panorama> show jobs id 536

Enqueued              Dequeued           ID                              Type                         Status Result Completed
------------------------------------------------------------------------------------------------------------------------------
2021/04/07 01:45:36   01:45:36          536                         CommitAll                            FIN     OK 100 %

Description:
 -  441113F4BC075AB          commit timed out   FAIL 01:45:36

It seems Panorama describes a failed commit on the firewall as "timed out" too, unfortunately.

Hey , I am also getting the same error in ansible, do we have any solution for same? Panorama panos_commit module should have a timeout parameter.


pull request for e2e test at 12/30/2016 21:45:11

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


Add Firebase Version to header

This PR allows the Admin SDK to pass its version to our SDK. We then add it as a header value to the existing x-goog-api-client header.
This looks like this:
x-goog-api-client: gl-node/v8.11.3 grpc/1.15.1 gax/0.20.0 gapic/0.18.0 gccl/0.18.0 fire/6.1.0

Ping :)

It looks the code will add fire/x.x.x, not firebase/x.x.x as the description states. LGTM if that's expected. If you can create an issue for googleapis/gapic-generator to have better support for multiple library-version pairs, it would be great.

It looks the code will add fire/x.x.x, not firebase/x.x.x as the description states. LGTM if that's expected. If you can create an issue for googleapis/gapic-generator to have better support for multiple library-version pairs, it would be great.

We updated the code to use fire/. I changed the description to match this.
Issue: https://github.com/googleapis/gapic-generator/issues/2400


⚠ Home NAS has degraded performance

In 27bf6b9, Home NAS ($MY_NAS_URL) experienced degraded performance:

HTTP code: 200
Response time: 11841 ms

Resolved: Home NAS performance has improved in 0d2c054.


TEST: need negative tests for validation of CHash

OpenIdConnectValidation tests need negative tests for chash.
see: OpenIdConnectProtocolValidatorTests.Validate_CHash()

@brentschmaltz I think this is now fixed. we do have negative tests for chash now. Can we close it?


Makefile: build & build-mainnet targets are identical (?)

Perhaps I am missing something, but what is the difference between make build and make build-mainnet?
https://github.com/scrtlabs/secret-vrf-challenge-contract/blob/353b378ecf601274d12525363516258fc319dd2b/Makefile#L1-L6
https://github.com/scrtlabs/secret-vrf-challenge-contract/blob/353b378ecf601274d12525363516258fc319dd2b/Makefile#L23-L29

Hey,
I don't think you're missing anything, it's just that it wasn't that important to differentiate between the two. For the most part it's a hacky simple contract, so that file was probably copy-pasted from somewhere and not looked at too deeply. Sometimes contracts like to have a different test/debug setup than mainnet, but for smaller scope I prefer defaulting to production compilation

Thanks!


fix(markdown): remove margins of admonition-heading

to save some space in the UI and make it look nicer

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Server] Race condition in K8s component registration

In the following code, the reference to range value ctx at line 86 generates a race condition because it is a reference in the body of a gorutine.
https://github.com/meshery/meshery/blob/f2b1ef8c7b987175f6e3af8e1d1cee2d0a9f3163/server/models/k8s_components_registration.go#L50-L96
(here a simplified version of the bug)
Bug found by revive

Thanks for not only identifying this issue, @chavacava, but proposing a fix, too. 👏

I am a beginner in golang.
As far as i know to avoid race conditions with go routines we can use waitgroups to avoid that.
Example (modified this here ):
https://go.dev/play/p/I93VZw6P8te

Hi @webbdays, using wait groups for these kind of problems is not recommended.
For example, the solution you propose does not work: running it results in
Iteration at context-1
Iteration at context-2
Iteration at context-3
Iteration at context-4
Iteration at context-5
Concurrently using context-5
Concurrently using context-5
Concurrently using context-5
Concurrently using context-5
Concurrently using context-5

Program exited.

Concurrent goroutines are still all working with the context 5
Wait groups can fix de problem by creating wait groups of size = 1 (waiting inside the loop thus making all the process sequential)
Please check how I fixed the problem (even if it seems to be a lot of modifications, the single modification needed to fix the bug is to pass the context as an argument of the goroutine: lines 80 (parameter declaration) and 107 (argument binding))

@chavacava
I didn't notice that. Thanks for pointing out.
The possible solution that you have proposed here waiting inside the loop is great.
But i think with that we need to wait until we process go routine to process next ctx.
But it totally depends on logic/use case whether to wait or not.
I will check your first proposed fix and get back to you.

Can i know any problems with using waitgroups as it is not recommended?

Can i know any problems with using waitgroups as it is not recommended?

Wait groups are there to help you create synchronization points for goroutines (for example when yo spawn a bunch of goroutines and you need to wait for all them to finish before going further in the processing). If you use them for anything else it is a symptom of  a potential design problem.

@acald-creator @sudo-NithishKarthik @paularah you might have some feedback to offer here.

@leecalcote No recent activity & no merged PRs. Shall I take this up?

@Azanul that'd be great, yes.

I also considered changing the type of ctxRegStatusMap from map[string]RegistrationStatus to sync.Map. It'd be a good practice for this use case (manipulating a map in goroutines) but trading type-safety for thread-safety doesn't sound that good considering the fact the we don't play with the same key in multiple goroutines.
Would love to hear any thoughts on this.

@Azanul Btw the race condition was fixed and the ctx variable is properly passed into the go routine's scope. So the original PR only refactors and makes the code pretty. Will you go ahead and rename the PR to say something like "Refactoring registration function to conform to idiomatic go"
About the concern regarding concurrent map access, I think adding a mutex Lock and Unlock while writing on the map in the deferred function is good enough.

As per the documentation, the Map type is optimized for 2 use cases and the 2nd one seems like the case here. @Revolyssup checkout the 3rd para here.
But either way, I agree that mutex will work just fine while maintaining type-safety.

As per the documentation, the Map type is optimized for 2 use cases and the 2nd one seems like the case here. @Revolyssup checkout the 3rd para here. But either way, I agree that mutex will work just fine while maintaining type-safety.

Yes I am aware of this tradeoff. Not very strongly opinionated to go with one approach or another but given the size of map and usage I had decided to go with the tradeoff. You can add mutex but if you want to write some extra code for type safety and want to follow the convention, you can go ahead and make those changes as well. It's in your ballpark.

You can add mutex but if you want to write some extra code for type safety and want to follow the convention, you can go ahead and make those changes as well. It's in your ballpark.

Ok then, I'll send it for review once I've added the mutex.
No extra code will be required for keeping type-safety. We'd lose type-safety by using Map is what I meant.

You can add mutex but if you want to write some extra code for type safety and want to follow the convention, you can go ahead and make those changes as well. It's in your ballpark.

Ok then, I'll send it for review once I've added the mutex. No extra code will be required for keeping type-safety. We'd lose type-safety by using Map is what I meant.

Cool. And yes my type safety comment was in case you go with sync.Map

And yes my type safety comment was in case you go with sync.Map

Oh! ok

@Revolyssup added mutex, you can check it out.


Bug in ISQA Stock Price Checker example

Describe your problem and how to reproduce it:
The problem is, that you can not like a stock twice. It is stuck on one like even when using different connections and devices.
Reproduce by opening the link below on two devices.
Fix: Obtain client IP with this code
req.get('x-forwarded-for').split(",")[0] || req.ip.split(",")[0]
instead of this code

req.connection.remoteAddress.

Your code always returns the same remoteAddress.
Also, maybe add a hashing function if you implement this. This could be a security issue.
Add a Link to the page with the problem:
https://stock-price-checker.freecodecamp.rocks/api/stock-prices?stock=GOOG&like=true
Tell us about your browser and operating system:

Browser Name: /
Browser Version: /
Operating System: /

If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box):

I was able to get the google stock to 3 likes. I'm not sure if I added zero or one likes to it - but I wasn't able to add a fourth from a different device. So there does seem to be some sort of issue here. I added the help wanted label in case someone wants to try and give it a fix - I'm guessing @Chris6077's suggestion would work since he probably looked into pretty good. The code is here.

Hi @moT01
I made a few tests and @Chris6077 's solution appears to be correct. This is quite old but I'd like to do it if it's still available.
Please let me know. Thanks.

@alirezaghey,
Thank you for your interest in contributing - issues labelled with the help wanted tag are open for contribution and PRs are reviewed in the order they are received.
You are welcome to submit a PR that resolves this issue.

Hey all, just left a review in @Chris6077's PR. I also think that's an interesting point about whether storing IP addresses is a security issue.
I did some reading and it seems like a bit of a grey area. There's not much a person can do with just an IP address. At the same time, GDPR regulations consider an IP address, even dynamic ones that most of us have, to be personal identifying information.
I'm not a lawyer, or very familiar with the regulations, but I think it's fine in this case. The project doesn't require storing other identifying information (an email or home address) that can be used with a person's IP address to identify them.
Though if we want to cover all our bases, we could add a short message next to the "Like" checkbox. Something along the lines of "I consent to my IP address being collected and stored" should be enough.
Or it seems like anonymizing the IP address by leaving out the last octet would also work. Then we shouldn't need to get consent to be compliant.
But what do you all think?

I think anonymising the IP address is a good route to go - it ensures we aren't putting campers in a position where they need to handle data deletion requests, and offers a good opportunity to talk about the GDPR and data privacy compliance.

How would this work? Like keeping hashes of the IPs and checking against them? Would this be GDPR compliant? How strong needs the hashing function be for GDPR compliance? Or does anonymizing here means just a reversible change, say ROT 13, that prevents only instant recognition upon seeing?

We'd leave off the last octet, so rather than storing <IP_ADDRESS> we'd store 125.0.0.


Fixed accessibility support for "Done" button

Switched button type from "bordered" to "done", which has the same effect as setting attributed text style to bold, but leaves accessibility support (increased font sizes!) intact.
Additional commit: Updated to latest CocoaPods and Xcode and fixed the version number (Which should be further increased on next submit! - How did you manage to increase the version number at CocoaPods but not in the master podspec file, anyway??)

I now also changed some other labels to support growing fonts for accessibility. This changes the optics slightly as we cannot use fixed size fonts anymore to fully support them, so you might not want to consider these.
But at least, use commit 6bcf11d! Thanks!


[BUG] Indrev pump is not working

i've tried alot with the pump but i cannot get it to work neither can others we've followed the guide and are unable to get it working

Please open a new issue following the correct template and providing more information like screenshots and steps to reproduce.


Simplify install and build from source

Much simpler.

I wonder if GitHub does transparent HTTP gzip compression if the payload isn't already compressed. That could allow us to drop a requirement for either gzip / unzip binaries, while still benefiting from the download size improvement.
If not I still think we should perhaps switch to gz, either curl might be able to decompress it inline, or a system is more likely to have gzip than unzip (not sure about Windows, however). I'll look in to this a bit more.

Great idea. One way to check is to do curl -v to see the HTTP headers when downloading from GitHub.

Unfortunately they don't auto-gzip, I think the best would be to just switch to gziping our artifacts, and use gunzip in these scripts (Windows has tar support built in from the same time as curl - which I presume includes gunzip)

(Windows has tar support built in from the same time as curl - which I presume includes gunzip)

@cb22 Windows curl is a bedeviled alias for Invoke-WebRequest. Its parameters are nothing like real curl.

@eatonphil just thought of two annoying edge cases unfortunately:

We publish a broken release that has no binaries (like we currently have)
A user tries to grab a release in between the release being created and the binaries being uploaded...

Not sure what a good solution would be at the moment...

Yeah I was thinking about them too because of yesterday. As soon as we want to we get to mark releases as not pre-release but release. Then we can use the github API to grab the latest prerelease. Although using the Github API is a potential area for failure because if the user somehow messes up and keeps retrying, maybe they then get rate limited. But it's something we could do first off and then back off if it doesn't work to just latest release.
Or alternatively we could also just build it for you if there is not release. Or we could list through releases and keep checking their assets until we find one that exists.
However, we could leave that to a second pass!

@cb22 ping for review or thoughts :)

@eatonphil

Or we could list through releases and keep checking their assets until we find one that exists.

I think we should do this - we could stop after the first 5 and error out if we don't find anything? I don't think it can be left to a second pass because even though the window for failure might be small (I think ~10 minutes) - we do merge quite often currently, and it's not a great experience if it fails on your first try!

Or we could list through releases and keep checking their assets until we find one that exists.

I think we should do this - we could stop after the first 5 and error out if we don't find anything? I don't think it can be left to a second pass because even though the window for failure might be small (I think ~10 minutes) - we do merge quite often currently, and it's not a great experience if it fails on your first try!

Doing this makes the script much more complicated and makes me nervous about it breaking.
I think it would be best if we just had somewhere that marked what the last good release was? So we could just check one place rather than duplicating retry logic in shell and powershell?

I think it would be best if we just had somewhere that marked what the last good release was? So we could just check one place rather than duplicating retry logic in shell and powershell?

Also, if we did this, we might not need to download the entire repo just to get the tags!
Could we have the CI autocommit a successful build (since we've just built up all that logic too) to either this repo or some other repo? And then we can just check github usercontent / raw files to see the last good release and just download that?

Doing this makes the script much more complicated and makes me nervous about it breaking.

Very true.

Could we have the CI autocommit a successful build (since we've just built up all that logic too) to either this repo or some other repo? And then we can just check github usercontent / raw files to see the last good release and just download that?

I think we can fix this (and get an added benefit of not having incomplete releases on the release page) by creating our release as draft and then when the validation passes, marking it as non-draft. I'll check this out.

It looks like GH will only actually cut the tag when the release is marked as a non-draft, too!
This tag will be created from the target when you publish this release.

That's amazing. Then I think this is ready to go @cb22 ?

That's amazing. Then I think this is ready to go @cb22 ?

Yep! Some small improvements but we can do those in a second pass - this is a massive win already!


multilog to handle fluent logs in a rotated manner instead of writing them to stdout

.

This is outdated due to #270


admin messaging

How can I use this messaging system for  only users to talk to the admin .Admin  is using another model

Is there any progress on this issue ?

To allow multiple models as participant you have to make the user_id column in the participants table polymorph https://laravel.com/docs/5.6/eloquent-relationships#polymorphic-relations
After this you can send to all models you want. I think that this could be also a good library change to allow multiple user models. But this needs a lot of changes, will produce BC (new major version) and I have no usecase for this atm.
But in general I recommend to use authorization, roles, groups and abilities to handle admin and other things instead of two different models. This makes everything just a lot more complicated (authorization, middlewares, user resolving and so on).


Duplicate Dates when in Week Mode

(Required) Version Number: 8.0.3
Description
When configuring the calendar for week view (one row) as shown in your example with the exact parameters, there is duplicated dates being created.
in willScrollToDateSegmentWith outputting visibleDates.monthDates gets this output...clearly there is duplicate dates here:
https://gist.github.com/alexjameslittle/a313b82e8d6f62aa4090340a31e2b5e4

Steps To Reproduce
return ConfigurationParameters(startDate: startDate,                                            endDate: endDate,                                            numberOfRows: 1,                                            generateInDates: .forFirstMonthOnly,                                            generateOutDates: .off,                                            hasStrictBoundaries: false)
Expected Behavior
There should not be duplicated dates
Additional Context

do you have a sample app reproducing this?

I believe it's to do with the formatting of dates, we can close this...I'm using SwiftDate library, when formatting in a sample app without SwiftDate it works as expected :) Will try in my main project now

awesome. cool.


Add EditCommand implementation in DG

Codecov Report

Merging #108 (0e8cc9a) into master (3b32c3f) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #108   +/-   ##
=========================================
  Coverage     71.19%   71.19%
  Complexity      472      472
=========================================
  Files            79       79
  Lines          1451     1451
  Branches        157      157
=========================================
  Hits           1033     1033
  Misses          374      374
  Partials         44       44

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

LGTM, remember to do the sequence diagram and activity diagram in v1.4


svcat: bind and provision now support optional --external-id

Users can now set external ID for instances and the bindings using svcat's bind and provision commands.
Earlier this was only possible using kubectl.

@carolynvs Thanks for the review! I have made the changes you requested. Can you PTAL?

@n3wscott I have made changes regarding the examples that you suggested. Can you PTAL?

@jboyd01 I have made the changes according to your suggestion and rebased. Could you PTAL?

@jboyd01 @carolynvs @n3wscott Thanks a lot for the review and suggestions!


Unexpected behavior of '$' as anchor

Test strings:
Game
FunAndGames
MiddleGame
GameTaste
LastGame
Regular Expression:
Game$
Comments:
I think it should match lines 1, 3, and 5, in multiline mode; it only matches 5 and that only if this line does not end with a newline.
If the RegEx is ^Game, it will match 1 and 4 in multiline and 1 in non-multiline (as I expect).
As far as I can tell, $ is behaving exactly like \Z, independent of the flags used.
I tested the behavior in Chrome, Firefox and Internet Explorer.

This is one of those weird edge cases where the web interface itself affects the matching. Browsers actually insert 2 characters when you hit enter in a textarea: \r\n. It's the \r that throws off the regex.
Here's a modified pattern that probably gives you what you're looking for: http://regexstorm.net/tester?p=Game\r%3F%24&i=Game
FunAndGames
MiddleGame
GameTaste
LastGame&o=m
Personally, I've found that \r creeps up in various cases, so I usually craft my regex to optionally accept it when appropriate.

Thanks for replying! And the permalink is a great thing, too!
That's one of the beauties of browsers: too many of them, each doing its own
thing.
Thanks for the help and advice!
On Fri, Apr 28, 2017 8:53 PM, Will Boyd<EMAIL_ADDRESS>wrote:
This is one of those weird edge cases where the web interface itself affects the
matching. Browsers actually insert 2 characters when you hit enter in a
textarea: \r\n. It's the \r that throws off the regex.
Here's a modified pattern that probably gives you what you're looking for:
http://regexstorm.net/tester?p=Game\r%3F%24&i=Game
FunAndGames
MiddleGame
GameTaste
LastGame&o=m
Personally, I've found that \r creeps up in various cases, so I usually craft my
regex to optionally accept it when appropriate.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Show runestone on transaction page

what properties do you want to show? I can do it.
I think they should be:

id
mint
divisibility
symbol

maybe I misstake:

maybe I had some mistakes:
do you want to show some info as
pub struct Runestone {
  pub cenotaph: bool,
  pub claim: Option<RuneId>,
  pub default_output: Option<u32>,
  pub edicts: Vec<Edict>,
  pub etching: Option<Etching>,
}

in transaction page?

Yup, that's correct.


Financial reporting transaction data version 3

Hi there,
In FnO 10.0.14 we get a "Can't display the visuals" error from power BI even though we refreshed the 6 mentioned entities.
I think that I need to refresh the "Financial reporting transaction data version 3" too to see data in reports.
Regards,
István Márovics

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

ID: 84992dbc-779a-2e46-de21-556a6031c561
Version Independent ID: 04d7cf2c-f55e-8765-d3ed-44502e259bc2
Content: Financial Insights - Finance & Operations | Dynamics 365
Content Source: articles/fin-ops-core/dev-itpro/analytics/financial-insights.md
Service: dynamics-ax-platform
Product: ****
Technology: ****
GitHub Login: @kweekley
Microsoft Alias: kweekley

Bug 548895 created to track this issue.

Bug 548895 created to track this issue.

The document has been updated to add "Financial reporting transaction data version 3" to the list of items to be updated.

Thank you for your question! We appreciate the input on our content. Hope you have a good week!


All my pictures are gone

I ran this tool and stopped and continued later because of too many files and used the --trash option. Now after emptying the trash all my pictures are gone in the generated directories.
So the tool has created the entire tree of directories even with dates and locations but all directories are empty.
I even checked if it was working half way and it was fine. All pictures were there in the respective directories and now all are gone.
How is this possible?

Literally dozens of GB of pictures and videos have completely vanished.

@sebastiaandegeus can you include the operating system and the exact commands you ran?

OS X El capitan 10.11.6
./elodie.py import --destination=/Users/sebas/Pictures/Organized /Users/sebas/Pictures --trash

It processed everything just fine. Even the .png files that could not be processed are still there. But everything else is gone in the source and destination directories.

Thanks. Do you still have the output from when the script ran?
Can you also include command the result of an ls -lsah /Users/sebas/Pictures/Organized/{leaf folder}?
I did try it myself and after emptying the trash the files remained in the destination.
Python version.
~ python --version
Python 2.7.11

~ ./elodie.py import --destination=/Users/jaisen/Downloads/gh-145 /Users/jaisen/Downloads/samples --trash
/Users/jaisen/Downloads/samples/_DSC3872.JPG -> /Users/jaisen/Downloads/gh-145/2016-10-Oct/Unknown Location/2016-10-01_19-19-00-_dsc3872.jpg
/Users/jaisen/Downloads/samples/_DSC3873.JPG -> /Users/jaisen/Downloads/gh-145/2016-10-Oct/Unknown Location/2016-10-01_19-19-04-_dsc3873.jpg
/Users/jaisen/Downloads/samples/_DSC3874.JPG -> /Users/jaisen/Downloads/gh-145/2016-10-Oct/Unknown Location/2016-10-01_19-19-04-_dsc3874.jpg

After running script.
~ tree /Users/jaisen/Downloads/gh-145
/Users/jaisen/Downloads/gh-145
└── 2016-10-Oct
    └── Unknown\ Location
        ├── 2016-10-01_19-19-00-_dsc3872.jpg
        ├── 2016-10-01_19-19-04-_dsc3873.jpg
        └── 2016-10-01_19-19-04-_dsc3874.jpg

2 directories, 3 files

After emptying Trash.
tree /Users/jaisen/Downloads/gh-145
/Users/jaisen/Downloads/gh-145
└── 2016-10-Oct
    └── Unknown\ Location
        ├── 2016-10-01_19-19-00-_dsc3872.jpg
        ├── 2016-10-01_19-19-04-_dsc3873.jpg
        └── 2016-10-01_19-19-04-_dsc3874.jpg

2 directories, 3 files

Another thought. Is it possible that the script was run, the photos in the destination folder were deleted, the trash was emptied and then the script was run again?

I've been testing the script and it seems that processing the same directory multiple times doesn't work most of the time. I keep starting the script and nothing happens. The only output that shows up are files like .DS_Store or .PNG that cannot be processed.
The .jpg files that are not processed get moved to trash with the --trash flag.
The result it catastrophic because files have been moved to the trash and none of the have been added to the destination directory.

python --version
=> Python 2.7.12

total 16
 0 drwxr-xr-x   6 sebas  staff   204B Oct 29 16:50 .
 0 drwxr-xr-x  51 sebas  staff   1.7K Oct 29 11:21 ..
16 -rw-r--r--@  1 sebas  staff   6.0K Oct 29 16:50 .DS_Store
 0 drwxr-xr-x   2 sebas  staff    68B Oct 29 15:34 Amsterdam
 0 drwxr-xr-x   2 sebas  staff    68B Oct 29 16:39 Rotterdam
 0 drwxr-xr-x   2 sebas  staff    68B Oct 29 16:11 Unknown Location

tree Organized/2016-07-Jul
Organized/2016-07-Jul
├── Amsterdam
├── Bonn
├── Den\ Haag
├── Dordrecht
├── Nordrhein-Westfalen
├── Rotterdam
├── Unknown\ Location
└── Zuid-Holland

10 directories, 0 files

I haven't manually deleted anything in the generated directories. But I have emptied the trash. I'm not really sure it is actually related to the emptying of the trash. I think the script emptied the directories or removed them and recreated them while at the same time not processing the files at all except for moving everything to the trash where I deleted them.

It's 60 GB of files in many many directories that elodie created.
tree of all directories.
https://gist.github.com/sebastiaandegeus/77999780e8d049a07913bc9990a49bbe

If you process the same pictures over and over again to test (which I did as well :) ) it is normal if nothing happens. elodie will check the checksum of the pictures to verify if it has them already. there is a .elodie directory in your home dir, check the files in there. There is a hash.json which is the reason for this.

@sebastiaandegeus I would try and follow the steps in this guide before using your computer much more. http://web.archive.org/web/20100524162402/http://www.squidoo.com/recovertrashmac
@phifogg is correct.
I think I may have recreated the issue on my machine. Let me continue to investigate but please follow the steps in the link above which suggests minimizing writes to the hard disk.

My destination directory was inside the source directory. Could the script with the --trash option processed also the destination directory and removed everything?!

My destination directory was inside the source directory.

I don't believe that is the issue. Give me some time to reply but for now focus on getting the files back.

I think the following happened:

script runs with destination directory inside source directory and trash option
script processes files and starts creating directories and puts the files in there and moves the originals to the trash like it's supposed to
script stores processed file hashes in the hash.json
script starts also processing the destination directory files (bug)
5?. script checks hash and sees the file has been processed before
5?. scripts actually processes the file and puts in the same place
script decides to move that file to trash
scripts keeps doing this until all files are in the trash.
I look in the trash this morning and conclude, hooray all files have been processed. Script is finished and empty the trash.  Ignoring or processing would result in the same file in the same place and then it gets trashed.
I would like to add that I really love this tool regardless of what happened. I think I have most of my missing files in a backup.

I think I have most of my missing files in a backup.

That's really all I care about right now. 👍
I will have a much more thorough look tonight. I think your explanation is accurate but there might be something else going on with the --trash option but I'll confirm that.
Ultimately, it should be much harder than this to shoot oneself in the foot.

@sebastiaandegeus I think you're right that the destination folder being inside the source folder was part of what caused the problem you encountered. Precisely for the reason you explained.
I've added checklist of things to address for this issue. You hit a really nasty set of behaviors that are ultimately bugs because the library should know not do delete photos under these circumstances.
This uncovered some other potential bugs if the script were used in a way we hadn't considered. Feel free to add suggestions to the checklist.
Thanks and sorry about that.

Closing this issue after checking off the todo list. Thanks for reporting and helping debug.


Installing on Debian errors out due to missing rsync command

A simple apt get rsync fixes it.

Just confirming this also happens on Arch with a similar fix of sudo pacman -S rsync

It has been fixed on both platforms! Thanks.

Thanks for approving the merge and thanks for the great tools !


Testing Render PRs

This was better tested in https://github.com/buildkite/docs/pull/1476 so closing this


Messages reference JWT when OAuth2 tokens are being used

This may be a misunderstanding on my part, but when choosing to use OAuth2 tokens, JWT shouldn't be used at all, but the messages here:
https://github.com/edgexfoundry/security-api-gateway/blob/a1603d1c9a577cf3e8018701906c3cb1a7d5a40d/core/accounts.go#L181
and here:
https://github.com/edgexfoundry/security-api-gateway/blob/a1603d1c9a577cf3e8018701906c3cb1a7d5a40d/core/accounts.go#L185
still reference JWT.

The log should change from JWT to bearer token. This will be addressed in the Delhi dot release.

addressed in PR #47.


A Small Suggestion

On some OSes, python be default refers to python2, which will not work well with the script.
So maybe you can mention one will need python3 for this:
python ../src/rdf.py --config test.yml --test
Also, on my end (Ubuntu 18.04), package libtcl8.5 is needed. Except for that, the test seems running well.
Thanks!

I mentioned that Python 3 and libtcl8.5 is needed, in README.md. Thanks!


retweeted attribute is not working

retweeted attribute is not at true when the post is a retweet. I need to be able to determine if the post is a retweet or not.

Can you provide the code that fails for this? Cheers.

Closing due to no reply.


The MQTT ONLINE status does not work as expected

Describe the bug
After Power ON, the MQTT sends an ONLINE once in the field McL/config. A connected client receives this status. A new client or a new query brings an OFFLINE, although the McL is still switched on and working.
To Reproduce

MQTT Broker Mosquitto
MQTT-client Node-Red
MQTT-Client Laptop
ESP McL with SK6812

a) Node-Red is connected to the broker. The field McL/config is subscribed.
Power on ESP. Node-Red MQTT says ONLINE
b) Laptop establishes a new connection to the broker The McL/config field is subscribed to. I see an OFFLINE. But the ESP is ONLINE
c) Node-Red MQTT-Client makes a reconnect to Broker. Subscribes to new McL/config. The answer is OFFLINE. But the ESP is ONLINE
d) Power OFF from ESP all MQTT clients get an OFFLINE

Have to check that

Can't reproduce.
Please send your  htp://your_device_ip/esp_status

Works as expected here but i think that the out message for the new status could be sent faster e.g my HASS shows the "old" state for around 5-10 seconds after switching on/off as it waits for the feedback...

Works as expected here but i think that the out message for the new status could be sent faster e.g my HASS shows the "old" state for around 5-10 seconds after switching on/off as it waits for the feedback...

There is a programmable delay in the definitions.h file.
#define DELAY_MQTT_HA_MESSAGE 5
This is so that it doesn't flood HA with too many messages all at the same time.  It waits for it to be in a stable state and then sends the message.  But it is configurable in the sketch.

There is a programmable delay in the definitions.h file.
#define DELAY_MQTT_HA_MESSAGE 5
This is so that it doesn't flood HA with too many messages all at the same time.  It waits for it to be in a stable state and then sends the message.  But it is configurable in the sketch.


Add system.cpu.interrupt on linux

What does this PR do?
Add system.cpu.interrupt on linux
Motivation
Being able to graphs which portion of System account for interrupts.
Additional Notes
Anything else we should know when reviewing?
Describe how to test your changes
Write here in detail how you have tested your changes
and instructions on how this should be tested in QA.

Feel free to ignore the python linting CI job, we are having some issues with it


narrow: Convert typing-status code to all user IDs

This follows #4364 and the chain of PRs that led to that one.
It eliminates one of the two remaining places we use the emails from a PM narrow, in the typing-status code. Along the way it pulls in https://github.com/zulip/zulip/pull/16987 and some other changes to the code shared from the webapp.
The last remaining consumer of the email data in a PM narrow is an important one: it's where we actually fetch messages from the server, or rather in apiNarrowOfNarrow where we prepare the ApiNarrow value we'll use to do so. As documented in the tip commit of this PR, the server only started accepting IDs there in Zulip Server 2.1. So we can't eliminate that code, or the code that stores emails into Narrow values in the first place, until we drop support for server versions 2.0.x and older.
Zulip Server 2.1 was released a little over a year ago, so it's possible that that's already something that would be reasonable to do. I want to make that decision after getting some data, though, about how many of our users are still on an older server version -- I believe the app currently works with a server as old as 1.8.x, maybe older. We'll get that data in Sentry once the next release is out, containing #4326; it's past time for a release anyway, so that should be soon.
In the meantime (and particularly in case the answer turns out to be that a lot of users are still on older servers), I plan to do some small refactoring so that all the other code that consumes narrows can be completely unaware that they contain emails, other than the few bits that still have to touch them.

LGTM, thanks! Merged.


#1799: Update the lagoon-kickstart process to use the Lagoon API

Checklist

[x] Affected Issues have been mentioned in the Closing issues section
[ ] Documentation has been written/updated
[x] PR title is ready for changelog and subsystem label(s) applied

Changelog Entry
Update the lagoon-kickstart process to use the Lagoon API
Closing issues
Fixes #1799

LGTM


iptables failed to populate.

Occasionally saw this error, and as a result, iptables is not populated:
2018-10-11 10:00:16.341 [ERROR][3215] main.go 120: nsenter failed: exit status 4 err=exit status 4 out="Environment:\n------------\nENVOY_PORT=\nISTIO_INBOUND_INTERCEPTION_MODE=\nISTIO_INBOUND_TPROXY_MARK=\nISTIO_INBOUND_TPROXY_ROUTE_TABLE=\nISTIO_INBOUND_PORTS=\nISTIO_LOCAL_EXCLUDE_PORTS=\nISTIO_SERVICE_CIDR=\nISTIO_SERVICE_EXCLUDE_CIDR=\n\nVariables:\n----------\nPROXY_PORT=15001\nINBOUND_CAPTURE_PORT=15001\nPROXY_UID=1337\nINBOUND_INTERCEPTION_MODE=REDIRECT\nINBOUND_TPROXY_MARK=1337\nINBOUND_TPROXY_ROUTE_TABLE=133\nINBOUND_PORTS_INCLUDE=9080\nINBOUND_PORTS_EXCLUDE=15020\nOUTBOUND_IP_RANGES_INCLUDE=\nOUTBOUND_IP_RANGES_EXCLUDE=\n\n+ iptables -t nat -N ISTIO_REDIRECT\n+ iptables -t nat -A ISTIO_REDIRECT -p tcp -j REDIRECT --to-port 15001\n**Another app is currently holding the xtables lock. Perhaps you want to use the -w option?\n+ dump\n+ iptables-save**\n# Generated by iptables-save v1.6.0 on Thu Oct 11 10:00:16 2018\nmangle\n:PREROUTING ACCEPT [0:0]\n:INPUT ACCEPT [0:0]\n:FORWARD ACCEPT [0:0]\n:OUTPUT ACCEPT [0:0]\n:POSTROUTING ACCEPT [0:0]\nCOMMIT\n# Completed on Thu Oct 11 10:00:16 2018\n# Generated by iptables-save v1.6.0 on Thu Oct 11 10:00:16 2018\nnat\n:PREROUTING ACCEPT [0:0]\n:INPUT ACCEPT [0:0]\n:OUTPUT ACCEPT [0:0]\n:POSTROUTING ACCEPT [0:0]\n:ISTIO_REDIRECT - [0:0]\nCOMMIT\n# Completed on Thu Oct 11 10:00:16 2018\n# Generated by iptables-save v1.6.0 on Thu Oct 11 10:00:16 2018\nfilter\n:INPUT ACCEPT [0:0]\n:FORWARD ACCEPT [0:0]\n:OUTPUT ACCEPT [0:0]\nCOMMIT\n# Completed on Thu Oct 11 10:00:16 2018\n"

The reason for this error is that the iptables operations are performed in the pod's network namespace but on the host pid and storage namespaces. Since kube-proxy mounts hostPath /run/xtables.lock, these iptables operations and kube-proxy iptables operation would collide on the lock. It's not possible to run iptables in the pause container since the container doesn't have access to iptables.
iptables has a -w option since version 1.6.0 (in newer versions, it also has a wait-interval). This requires each iptables call has to use this option in the script. iptables-restore added the -w option in newer version (1.6.2, in Feb 2018), but it can't be depended on for availability.
with -w, a timeout value needs to be specified, and there is still a chance to fail. So retry logic needs to be added as well.
A reliable solution would be to use a container to run the iptables operations.
So we have two options now:
-- use the -w option with a retry logic for each iptables call
-- invoke a container to install the iptables
When sidecar is moved out the application pod, then the iptables can be installed by the sidecar.


Forwarder Agent grabs random port. Sometimes that port is important and not-ephemeral.

What we expect to happen
Forwarder-agent only uses ephemeral ports to talk to the syslog agent.
What actually happened
Forwarder-agent uses non-ephemeral ports. In our case it grabbed 8080 and stopped gorouter from starting!

We've tried reproducing this on xenial, bionic and jammy without success so far.

I could reproduce it specifically on a router VM.
I believe it's due to this:
https://github.com/cloudfoundry/routing-release/blob/b70c6a59c5fe06b88f9c081d20fb05fe42b848f9/jobs/gorouter/spec#L447-L449

Agreed. We will resolve there. Thanks for digging in, sorry for the false alarm


Bump cargo to latest version

As raised in this issue, the exercism rust test runner build fails because some dependencies are using "2021" as the rust edition and cargo-local-registry, which relies on an older version of Cargo, fails to process that.
This PR bumps cargo to the latest version. I've updated the code to adapt to the new cargo API as well as the tests as the registry package files now look a bit different.
I've also updated flate2 because compiling version 1.0.9 with newer versions of rustc results in a runtime error when using GzEncoder (something related to zero-initialization). Bumping the dependency solved this problem.

@dhovart - thanks for the PR. :-)

Thank you! Please let me know when a new version will be published on crates.io so that we can pull the latest version.

I thought you might ask that. I doubt I'll manage it before the second half of the week. If I've not done it by Monday next week - give me a gentle reminder.

I was thinking it would actually be better for us to grab a binary release rather than pull it from crates.io. (for now I guess we can use cargo install --git ... to fix our broken build)

I would make new binaries too. But again, it won't be for a few days.

Hello, please note before releasing a build that I made a small mistake while working on this.
If the format of the registry packages has changed, it's actually because namespaced-features seem to have been turned on.
I should have investigated some more and found a way of disabling it instead of updating the tests JSON.
For now my local builds using my local registry created with the version of cargo-local-registry that is on master only work if I set the argument -Z namespaced-features.
Working on a fix.


fix impossibly high eval bets

occasionally bets with impossibly high evals crop up. Find the cause and fix if possible.

side effect of #16 it appears


Animation state incorrect when logging in while falling

Another interesting SL/Halcyon animation state mismatch: TP to a great altitude, say 4040.  Let your avatar fall, but log out long 'ere you reach ground or any objects.  Some time later, log in again and note your avatar's animation while your altimeter continues to unwind.
SL: falling with flailing limbs (assuming no AO).
IW: standing still.

I think the trigger on login that starts anims is the first avatar movement update, so if you just login and don't move the avatar, it may just stand and stand regardless.  But take one step and it's fine. So it sounds like something that happens in the AgentUpdate is missing from the initial data send.

This issue was moved to HalcyonGrid/halcyon#10


DotNET C# demo not working

The Demo seems to be only a fragment. Three tables should be sync, but they are never added to sync. As a consequence the program runs in ArgumentNullException

I assume the demo server is not prepared anymore for the demo client.
I switched to my test installation of amplisync server and added a table by hand
http://macmini:8080/SqliteSync-3.2.14/API3/AddTable/Documents
After editing LoadData() in Form1.cs and another re-initialize() I could see the Documents Data.

The process should look like this:

Reinitialize (you need to do it only once, at first synchronization)
Send/Receive.

If you want to only refresh data - repeat only step 2.
On Thu, Nov 14, 2019 at 1:11 PM fhintsch<EMAIL_ADDRESS>wrote:

I assume the demo server is not prepared anymore for the demo client.
I switched to my test installation of amplisync server and added a table
by hand
http://macmini:8080/SqliteSync-3.2.14/API3/AddTable/Documents
After editing LoadData() in Form1.cs and another re-initialize() I could
see the Documents Data.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sqlite-sync/SQLite-sync.com/issues/26?email_source=notifications&email_token=ACNU5N6XV53JYUS56AHYHRTQTU55TA5CNFSM4JNJ2EW2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEBT3LI#issuecomment-553860525,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACNU5N7A4TCVCY4TIIS6MM3QTU55TANCNFSM4JNJ2EWQ
.

--
Best regards
Tomek Dziemidowicz
E-mail<EMAIL_ADDRESS>Take care of the Environment with us!
Do not print this message or other documents if it is not necessary.

Did you add all three tables to synchronization?
https://projects.ampliapps.com/projects/ampli-sync/wiki#AddTable-control-method
On Thu, Nov 14, 2019 at 12:11 PM fhintsch<EMAIL_ADDRESS>wrote:

The Demo seems to be only a fragment. Three tables should be sync, but
they are never added to sync. As a consequence the program runs in
ArgumentNullException
[image: Bildschirmfoto 2019-11-14 um 11 52 43]
https://user-images.githubusercontent.com/3294876/68852230-c7eaa380-06d7-11ea-9225-a05e28020c3b.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sqlite-sync/SQLite-sync.com/issues/26?email_source=notifications&email_token=ACNU5N73QYWUJX6YHES7EOLQTUW6JA5CNFSM4JNJ2EW2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HZJEG5Q,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACNU5NYJAISBXZCV2N4RMZDQTUW6JANCNFSM4JNJ2EWQ
.

--
Best regards
Tomek Dziemidowicz
E-mail<EMAIL_ADDRESS>Take care of the Environment with us!
Do not print this message or other documents if it is not necessary.


libcamera-apps doesn't build with tensorflow-lite

With the meta-tensorflow layer added to bblayers, enabling TFLITE in the libcamera-apps build will result in:
fatal error: tensorflow/lite/builtin_op_data.h: No such file or directory
|    16 | #include "tensorflow/lite/builtin_op_data.h"
|       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| compilation terminated.

This happens regardless of having tensorflow-lite listed as a build dependency or not, as fixed by 2cdb97a.

As of 76263ba, libcamera-apps builds for raspberrypi3 and raspberrypi4, but tensorflow-lite fails for raspberrypi with:
Linking tensorflow/lite/libtensorflowlite.so failed: (Exit 1): arm-poky-linux-gnueabi-gcc failed: error executing command

Run-time dependency tensorflow-lite found: NO (tried pkgconfig and cmake)
there will be some .txt files for errors generated by cmake in builddir. So please share those.

The package is now using meson instead of cmake. Here's the related snippet from /build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/build/meson-logs/meson-log.txt :
Determining dependency 'tensorflow-lite' with pkg-config executable '/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/recipe-sysroot-native/usr/bin/pkg-config'
env[PKG_CONFIG_DISABLE_UNINSTALLED]: yes
env[PKG_CONFIG_SYSTEM_LIBRARY_PATH]: /lib:/usr/lib
env[PKG_CONFIG_PATH]: /build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/recipe-sysroot/usr/lib/pkgconfig:/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/recipe-sysroot/usr/share/pkgconfig
env[PKG_CONFIG_DIR]: /build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/recipe-sysroot/usr/lib/pkgconfig
env[PKG_CONFIG_SYSROOT_DIR]: /build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/recipe-sysroot
env[PKG_CONFIG_LIBDIR]: /build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/recipe-sysroot/usr/lib/pkgconfig
env[PKG_CONFIG_SYSTEM_INCLUDE_PATH]: /usr/include
Called `/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libcamera-apps/1.2.1+gitAUTOINC+1c1d1c1a2a-r0/recipe-sysroot-native/usr/bin/pkg-config --modversion tensorflow-lite` -> 1
stderr:
Package tensorflow-lite was not found in the pkg-config search path.
Perhaps you should add the directory containing `tensorflow-lite.pc'
to the PKG_CONFIG_PATH environment variable
No package 'tensorflow-lite' found

Adding inherit pkgconfig to the tensorflow-lite recipe results in the same error.

you might want to look at tensorflow-lite recipe and see why it is not generating and/or packaging the .pc file

So tensorflow-lite from meta-tensorflow is not installing any tensorflow-lite.pc file, it isn't installed the header neither. While this can be fixed, it doesn't provide the missing flatbuffers files too. I switched to tensorflow-lite from meta-neural-network, which works with a few fixups. I now have libcamera-detect on raspberrypi4-64.

interesting, I dont know which layer should be considered more official some indicators I use is activity and on that meta-tensorflow is on https://git.yoctoproject.org/meta-tensorflow so it should be the one people usually will default to and therefore should be fixed. I would suggest to inform the meta-tensorflow maintainers about this issue. meta-neural-network is for NNstreamer and they might maintain tensorflow-lite in a narrow sense of just NNstreamer which makes sense for what the layer is about.

So this doesn't look RPi-specific, does it?

Indeed, these are issues in meta-tensorflow and compilation issue on 32-bit ARM. I'm closing this issue for now but I'll push a few tweaks for libcamera-detect integration soon though.


Add CoffeeScript adder.

I made a CoffeeScript adder. How do I finish contributing it?
Tested with SvelteKit. I'm not sure if non-SvelteKit Vite works; I tried to leave the necessary code in there.
Special highlight: this adder makes an effort to preserve existing sveltePreprocess() options:
https://github.com/Leftium/coffeescript-adder/blob/cc0f2004cbc00c3224b0c095d01bd3a068f0eaef/preset.ts#L3-L14

Hey! I'd be happy to help you out. It's just that, right now, school is quite overwhelming.
I'm a bit paranoid about the eval call so I think we'll leave this out of the svelte-add organization until I can create the solution mentioned in https://github.com/svelte-add/postcss/issues/17.
By the way, if you want people to use the adder as it is now (outside of the svelte-add organization), the command is actually
npx svelte-add Leftium/coffeescript-adder

OK, I updated my repo to use Leftium/coffeescript-adder until it's added to the org.
I think eval is very low risk because it's only executed when running svelte-add. To attack, another adder would have to put malicious code inside svelte.config.cjs. It would be simpler to just attack from the malicious adder itself.
Looking forward to your solution!

Thanks! I'm merging this in its current state even though the problems aren't resolved. That's a future thing for me to do.


Add detailed guides routes under /guidance

This also changes the locations that the detailed guides are
registered at when in Panopticon.
This is part of our plan to move detailed guides paths from root to guidance/. See also detailed steps here.
cc @edds @boffbowsh @benilovj

:+1: this looks good to me now.


Add minion health check endpoint

Add /health API to minion to be able to monitor minion health
GH issue: https://github.com/apache/pinot/issues/8515

Codecov Report

Merging #8574 (1503ea4) into master (fe14231) will decrease coverage by 36.66%.
The diff coverage is 23.80%.

@@              Coverage Diff              @@
##             master    #8574       +/-   ##
=============================================
- Coverage     63.89%   27.23%   -36.67%
=============================================
  Files          1645     1679       +34
  Lines         86524    88106     +1582
  Branches      13183    13358      +175
=============================================
- Hits          55284    23994    -31290
- Misses        27228    61848    +34620
+ Partials       4012     2264     -1748

Flag
Coverage Δ

integration1
27.23% <23.80%> (?)

unittests1
?

unittests2
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...inot/minion/api/resources/HealthCheckResource.java
0.00% <0.00%> (ø)

...ava/org/apache/pinot/minion/BaseMinionStarter.java
70.54% <20.00%> (+70.54%)
:arrow_up:

...apache/pinot/controller/BaseControllerStarter.java
76.02% <100.00%> (-2.53%)
:arrow_down:

...apache/pinot/minion/MinionAdminApiApplication.java
91.89% <100.00%> (+91.89%)
:arrow_up:

...in/java/org/apache/pinot/spi/utils/StringUtil.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../java/org/apache/pinot/spi/utils/BooleanUtils.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...java/org/apache/pinot/spi/trace/BaseRecording.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...java/org/apache/pinot/spi/trace/NoOpRecording.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...ava/org/apache/pinot/spi/config/table/FSTType.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...ava/org/apache/pinot/spi/data/MetricFieldSpec.java
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 1385 more

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 fe14231...1503ea4. Read the comment docs.


Paket update downloads wrong file for http dependency (and fails for invalid zip)

In my repository I have a http dependency
http http://www.w3.org/2013/N-QuadsTests TESTS.zip

paket update does download something but instead of the TESTS.zip it fetches the index of http://www.w3.org/2013/N-QuadsTests.
What's more it fails because the expected zip file is invalid. I think paket should only issue a warning like it now does for invalid nupkgs.

did you try
http http://www.w3.org/2013/N-QuadsTests/TESTS.zip

instead?

Yes and the behaviour is the same

Oh, I take it back. It worked the second time. I'll investingate some more

will try to debug...

Interesting, when I changed the dependency as you suggested update worked fine but when I tried doing restore I got Paket failed with: invalid remote details.

so I close this one and we check restore in #536


Added sbt-typelevel plugin to the build.

Tried to get the lowest hanging fruit (at least in my point of view): issue #195. Let's see if I reached it.

@milessabin you might want to test this a bit. I think there are outstanding issues with sbt-typelevel and I'm not sure how active the project is. I'm currently using the plugin on only one project and it is a bit idiosyncratic.

I think the main thing I was looking to gain from the sbt-typelevel plugin was the release plugin configuration and the support for MiMa. The first of those has been superseded by the new multi-branch release script, and the second has just been addressed in #407.
So I'm really, really sorry to have led up the garden path @andrelfpinto, but I'm afraid I this isn't actually needed any more :-(
I hope this doesn't put you off contributing in future, I think it was a case of unfortunate timing in this case.
My apologies again ...

No problem, @milessabin. I will try to get the next lowest fruit as soon as I can. I'm just waiting for me to get a little taller: it's a wonderful project but it's a bit out of my league.


CR feedback from attribute dictionary

@dougbu - cleaning up bounds checking, and turning these into asserts since it shouldn't actually ever happen.

:shipit:


Divison by zero?

Non blocking, no workaround needed. Just wanted to let you know.

Pushed a commit that changes this to print a message that there are no coverable lines found


Add generic delete functions in test/util

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Add generic delete functions in test/util
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
The relevant changeless are mainly in test/util/util.go
Does this PR introduce a user-facing change?

None

/cc @alculquicondor

/retest

/test pull-kueue-test-e2e-main-1-29
Looks like it's a common issue #2581.

/lgtm
/approve

/retest

/retest

/retest

/retest


fix(types): use middlewares with different env types

Hello!
First off, thank you for creating Hono. I'm using it in my personal projects and it's been a great experience!
This pull request aims to improve type inference when extending context variables in middlewares.
Currently, When using handlers like app.get to register middlewares that extends context variables, the context type is correctly inferred.
const app = new Hono()
const mw = createMiddleware<{ Variables: { foo: string } }>(async () => {});

app.get(mw, async (c) => {
    // this is correctly typed.
    const foo: string = c.var.foo
})

However, when using app.use, the types aren't as well defined.
app.use(mw).get(async (c) => {
    // this isn't correctly typed before merging this PR.
    const foo: string = c.var.foo
})

While app.use can accept path parametrers like app.use('/foo', ...), but the type inference in these cases is quite complex and isn't covered in this PR.
I believe this improvement will make Hono even more robust for TypeScript users. Looking forward to your feedback!
Author should do the followings, if applicable

[x] Add tests
[x] Run tests
[x] yarn denoify to generate files for Deno

Sorry, I forgot run yarn denoify after yarn format:fix. I fixed it and force-pushed.

Thank you for the quick response! I'm looking forward to the release of v4!


EMPLOYEE_SPEC SUPERVISOR $TERM

For admins to set supervisor of an arbitrary employee.

Implemented in 0.203


Union

I would like to see a union in this programming language, not very convenient without a union

Union FTW 🙌

Duplicate of https://github.com/dart-lang/language/issues/83


testnet gateways seem to be malfuntiong?

i have been getting this error when deploying on multiple nodes to include, 2, 7, 124, but i think the issue is affecting all gateway workloads as ive been attempting troubleshoot funkwhale and peertube not deploying domains properly on testnet node 219.

I believe the issue is coming from one of the nodes 2,7,124 that didn't reply in realtime during deployment


Style: Changed looks of user register page

Closes: #625
Screenshots (if any) 📸

@Deva-1903 Please fix the name of the PR as suggested by the bot.

@Deva-1903 Please fix the name of the PR as suggested by the bot.

Done

The changes look good to me, however, can we do the same for the User Login page? We have some unused emojis there which can be removed.

Done.👍


Fixed out of bounds

Thanks for the contribution.
This is kind of off topic, but I'd highly recommend to write a more robust version of syscall id retrieval if you use this library. This is more of an example / placeholder to try stuff out.


Consider merging this crate and pin-utils

The pin-utils crate provides three macros: pin_mut, unsafe_pinned, and unsafe_unpinned.
The #[pin_project] attribute provided by this crate is strictly more powerful than unsafe_pinned and unsafe_unpinned - it ensures safety by default, but lets you opt-out via unsafe to get the unchecked behavior of unsafe_pinned and unsafe_unpinned.
The only thing this crate is missing is the pin_mut macro, which is a small macro_rules! macro.
I think it would be useful for there to be a single crate which handles all of these pinning operations. Currently, users that want both safe pin projections and stack pinning need to use two separate crates.

I think it would be useful for there to be a single crate which handles all of these pinning operations. Currently, users that want both safe pin projections and stack pinning need to use two separate crates.

I agree with you. I submitted https://github.com/rust-lang-nursery/futures-rs/pull/1686 for this, but, we can consider redefining in pin-project.

cc @Nemo157 Any thoughts on this?

I actually find pin_mut! quite annoying to use in practice because of the extra binding needed (I fall into the “less having to think of names is better” camp, so commonly the thing that needs pinning is something that I wouldn’t normally bind to a variable). When I last wrote some code that involved a lot of pinning I threw together this crate as an experiment in better ergonomics, but I didn’t get around to actually publishing it.

I actually find pin_mut! quite annoying to use in practice because of the extra binding needed (I fall into the “less having to think of names is better” camp, so commonly the thing that needs pinning is something that I wouldn’t normally bind to a variable).

Yeah, I also feel pin_mut! is not ergonomic (nevertheless, I added it to futures 😁.).

When I last wrote some code that involved a lot of pinning I threw together this crate as an experiment in better ergonomics, but I didn’t get around to actually publishing it.

As long as you look at the code in the tests directory, it looks like it's easy to use...

The ergonomic API for stack pinning has not been established yet, so if adding these support to pin-project at this time, I think it needs to add unergonomic pin_mut to keep stability.
And if we want to experiment with ergonomic things, I think it should be done in another library.

Can we not add pin_mut at a later time or what ever the "ergo" api will be. Don't think I've needed pin_mut where I have pin-project and not futures-util?

Small update to my comment above, I've now published ergo-pin. My primary reason for writing that was while experimenting with pinning collections and pinned iterators (to allow using generators to create an iterator), so that was a usecase where I could have been using pin-project (although wasn't) and be completely outside the futures ecosystem.

Actually, futures_util::pin_mut/futures::pin_mut are sufficient for my use-case and I'm also interested in trying ergo-pin, but I don't have a strong opinion about whether to do this on pin-project or pin-utils itself.

I'm still torn about this. Here are some updates and my opinions (TL;DR: I feel there are one advantage and some relatively minor drawbacks):

I'm now a maintainer of pin-utils.
pin-utils will only provide stack-pinning util in the future (https://github.com/rust-lang/pin-utils/issues/29)
There are two pin-project crates, and the decision here is also propagated to lite.
Adding a futures-util dependency for use only a stack pinning utility is not good. (However, as pin-project and dependencies require relatively long compile times, "add pin-project dependency for use only a stack pinning utility" may not happen very often.)
I think after removed the project attributes (#225) should allow the API to be considered stable enough (i.e., v1.0). Not so when adding stack pinning API.
pin-utils is a really small crate that won't impact compile time with or without merging. (Depending on the situation, but using pin-project's stack pinning utility instead of pin-utils should increase overall compile time because pin-project is only compiled after proc-macro is compiled. But I feel some users are more sensitive to the increasing number of dependencies than the actual compile time.)
It's convenient to have all pin related utilities in one place.
If we don't add this, the name of pin-project is descriptive about what this crate does.

I'm relatively indifferent about adding pin_mut to this crate. However, I think it would be a good idea to reach a decision one way or the other, as this is the only remaining open issue :smile:

I'm going closing this because the benefits of doing this don't seem to outweigh the drawbacks I said in the comment above, at this time.
If anyone can explain more about the benefits of doing this, we can reopen it.


Add metrics opt-out section to metrics doc

Opting out of metrics was in release notes. This PR adds that content to the ASP.NET Core metrics doc.

Internal previews

📄 File
🔗 Preview link

aspnetcore/log-mon/metrics/metrics.md
ASP.NET Core metrics

David Pine's VSC extension provides the right xref link format -- the format for generic methods is complicated. It's using the xref link format now, with custom link text.

@guardrex FYI I got the broken xref link format from your online tool: https://xrefgen.azurewebsites.net/ If you're still maintaining it then it's something to fix.

Have you got that to work recently? I believe the docs authoring pack version isn't maintained either anymore because it relies on the same discontinued source for APIs. The tool that does work now is this VS Code extension created in the recent hackathon: https://github.com/IEvangelist/xref-helper/blob/main/README.md