Build errors - CentOS

Tried to build but running into several problems.

cmake 3 is required, installed and being at least partially detected but the executable is called cmake3, not cmake.   Thus aom_test and build fail.    Unfortunately I don't know much about rust to dig into why but a grep on the build directory shows references to it however building fails.   It appears the fgrep for cmake in README.md overrides everything?

Rust dependency is almost 300M (can cmake be used directly?) -- ultimately I believe causing the final build error which I cannot decipher:

./build.sh
File ‘nyan.y4m’ already there; not retrieving.

   Compiling rav1e v0.1.0 (file:///tmp/build/rav1e)
error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/transform.rs:90:46
   |
90 |     for (raw, clamped) in buffer[c..].iter().step_by(4).zip(temp_in.iter_mut())
   |                                              ^^^^^^^

error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/transform.rs:96:50
   |
96 |       temp_out.iter().zip(output[c..].iter_mut().step_by(stride).take(4)) {
   |                                                  ^^^^^^^

error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/me.rs:35:29
   |
35 |       for y in (y_lo..y_hi).step_by(1) {
   |                             ^^^^^^^

error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/me.rs:36:31
   |
36 |         for x in (x_lo..x_hi).step_by(1) {
   |                               ^^^^^^^

error: aborting due to 4 previous errors

For more information about this error, try `rustc --explain E0658`.
error: Could not compile `rav1e`.

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

Build.sh does not of course accept --verbose however manually adding it results in:
ile ‘nyan.y4m’ already there; not retrieving.

       Fresh cc v1.0.22
       Fresh pkg-config v0.3.13
       Fresh unicode-width v0.1.5
       Fresh libc v0.2.43
       Fresh rustc-demangle v0.1.9
       Fresh rand_core v0.2.1
       Fresh cfg-if v0.1.5
       Fresh strsim v0.7.0
       Fresh vec_map v0.8.1
       Fresh ansi_term v0.11.0
       Fresh bitflags v1.0.4
       Fresh y4m v0.3.1
       Fresh bitstream-io v0.6.5
       Fresh cmake v0.1.33
       Fresh textwrap v0.10.0
       Fresh atty v0.2.11
       Fresh rand v0.5.5
       Fresh num-traits v0.2.5
       Fresh clap v2.32.0
       Fresh backtrace-sys v0.1.24
       Fresh backtrace v0.3.9
   Compiling rav1e v0.1.0 (file:///tmp/build/wrk/rav1e)
     Running `rustc --crate-name rav1e src/lib.rs --crate-type lib --emit=dep-info,link -C opt-level=3 -C codegen-units=1 --cfg 'feature="binaries"' --cfg 'feature="clap"' --cfg 'feature="default"' --cfg 'feature="y4m"' -C metadata=93c5d00589a931bd -C extra-filename=-93c5d00589a931bd --out-dir /tmp/build/wrk/rav1e/target/release/deps -L dependency=/tmp/build/wrk/rav1e/target/release/deps --extern clap=/tmp/build/wrk/rav1e/target/release/deps/libclap-67aa0e1eeb14bfc2.rlib --extern y4m=/tmp/build/wrk/rav1e/target/release/deps/liby4m-1945691963f3ff33.rlib --extern num_traits=/tmp/build/wrk/rav1e/target/release/deps/libnum_traits-d0b1dd0f4bf80312.rlib --extern backtrace=/tmp/build/wrk/rav1e/target/release/deps/libbacktrace-54a555b0f65b75ff.rlib --extern rand=/tmp/build/wrk/rav1e/target/release/deps/librand-d217ea676dd8b85f.rlib --extern bitstream_io=/tmp/build/wrk/rav1e/target/release/deps/libbitstream_io-88e3f0dafbfba2ed.rlib --extern libc=/tmp/build/wrk/rav1e/target/release/deps/liblibc-bd99db9ca5c592bd.rlib -L native=/tmp/build/wrk/rav1e/target/release/build/rav1e-1566397806c53ed0/out/lib -l static=aom -l m -l pthread -L native=/tmp/build/wrk/rav1e/target/release/build/backtrace-sys-787f90aab90eab76/out`
error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/transform.rs:90:46
   |
90 |     for (raw, clamped) in buffer[c..].iter().step_by(4).zip(temp_in.iter_mut())
   |                                              ^^^^^^^

error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/transform.rs:96:50
   |
96 |       temp_out.iter().zip(output[c..].iter_mut().step_by(stride).take(4)) {
   |                                                  ^^^^^^^

error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/me.rs:35:29
   |
35 |       for y in (y_lo..y_hi).step_by(1) {
   |                             ^^^^^^^

error[E0658]: use of unstable library feature 'iterator_step_by': unstable replacement of Range::step_by (see issue #27741)
  --> src/me.rs:36:31
   |
36 |         for x in (x_lo..x_hi).step_by(1) {
   |                               ^^^^^^^

error: aborting due to 4 previous errors

For more information about this error, try `rustc --explain E0658`.
error: Could not compile `rav1e`.

Caused by:
  process didn't exit successfully: `rustc --crate-name rav1e src/lib.rs --crate-type lib --emit=dep-info,link -C opt-level=3 -C codegen-units=1 --cfg feature="binaries" --cfg feature="clap" --cfg feature="default" --cfg feature="y4m" -C metadata=93c5d00589a931bd -C extra-filename=-93c5d00589a931bd --out-dir /tmp/build/wrk/rav1e/target/release/deps -L dependency=/tmp/build/wrk/rav1e/target/release/deps --extern clap=/tmp/build/wrk/rav1e/target/release/deps/libclap-67aa0e1eeb14bfc2.rlib --extern y4m=/tmp/build/wrk/rav1e/target/release/deps/liby4m-1945691963f3ff33.rlib --extern num_traits=/tmp/build/wrk/rav1e/target/release/deps/libnum_traits-d0b1dd0f4bf80312.rlib --extern backtrace=/tmp/build/wrk/rav1e/target/release/deps/libbacktrace-54a555b0f65b75ff.rlib --extern rand=/tmp/build/wrk/rav1e/target/release/deps/librand-d217ea676dd8b85f.rlib --extern bitstream_io=/tmp/build/wrk/rav1e/target/release/deps/libbitstream_io-88e3f0dafbfba2ed.rlib --extern libc=/tmp/build/wrk/rav1e/target/release/deps/liblibc-bd99db9ca5c592bd.rlib -L native=/tmp/build/wrk/rav1e/target/release/build/rav1e-1566397806c53ed0/out/lib -l static=aom -l m -l pthread -L native=/tmp/build/wrk/rav1e/target/release/build/backtrace-sys-787f90aab90eab76/out` (exit code: 101)

 $ rpm -qa |egrep '(cargo|rust-)'
rust-std-static-1.27.2-3.el7.x86_64
cargo-1.27.0-3.el7.x86_64
rust-1.27.2-3.el7.x86_64

You have an old version on rust installed. Please use rustup if your distribution does not provide a current version of the stable rust.

For the cmake error, have you tried upstream libaom? We'd need to fix that there, and then update to pull the fix in.

And yeah, the other error happens on Rust < 1.28.

curl https://sh.rustup.rs -sSf | sh

Is that seriously how rust updates itself? Ouch.
Regarding libaom, I've not checked anything upstream but the fgrep is in build.sh:
 CONFIGURE_CMD=$(fgrep "cmake ../aom" README.md)

Indeed.  Was more piping random websites to shell isn't exactly good security practice.
It compiles with an updated rust but still fails:
Frame 18 - Inter frame
Frame 19 - Inter frame
+ aom_test/aomdec enc_file.ivf -o dec_file.y4m
build.sh: line 85: syntax error near unexpected token `('

I reverted the changes I made with no difference.  Too tired I guess to spot the problem.  This should be completely valid and works from a shell but not script:
cmp <( tail -n+2 dec_file.y4m ) <( tail -n+2 rec_file.y4m )

Hmm okay, that must be something specific to RHEL's shell. Luckily, build.sh isn't actually needed for running rav1e - at this point you can just follow the directions in the README.md to run it. build.sh should probably be renamed, it's more like a "test.sh".

Turned out I was indeed tired.  Passing file descriptors like that is a bashism, I was running the script with sh.   It's still referenced from other parts though.

Worth noting that aom is no longer required to build and run rav1e.


Video sound is muted

Is there way to set volume?

The same bug now with iPhone 5s, iOS 11. Video is muted on both devices with these parameters.


onSelecting is not called on "month" view

Do you want to request a feature or report a bug?
Bug
What's the current behavior?
When selecting a time slot, the onSelecting callback is only called on week and day views - not on the month view.

What's the expected behavior?
I believe onSelecting should also be called on the month view.

That's true, it is not. Says that it is only called in time based views in the documentation. onSelectSlot is though.

Oh ok... But the month view is selectable, so shouldn't onSelecting fire there too then?
I am currently running into the following, which I guess would be a pretty common scenario:

When either a day is clicked or a date slot selected on the month, week or day view, a pop up appears (triggered by the onSelectSlot callback) for the user to create an event, given the "start" and "end" provided by the onSelectSlot event.
I use onSelecting to control whether or not the selection mentioned above should be allowed (I don't want to allow past dates to be selected)

The only fix/work around I see is to set "selectable" equal to false on the month view, but this would also prevent the clicking of a day to create an event on this view. This is not ideal.
I hope that makes sense...
I am curious to know if there is a reason that onSelecting does not fire on the month view?
Thanks

I have no idea why the authors don't fire this in the month view, but I'm sure it has something to do with how the listeners are applied.
You can, in onSelectSlot, do a check of your view (if you control the view), and block there
const onSelectSlot = ({start, end}) => {
  if (view === 'month') { // or some other check
    return;
  }
  // do stuff otherwise
};

Thank you for the suggestion. I had actually implemented your solution earlier, but then realized that now people can no longer create an event by clicking a day in the month view. And, I do want this functionality to be there. I just don't want them to be able to make a multi-day selection.
I find it odd, how you can make a selection on the month view, just as you can on a week/day view, but on the month view the onSelecting callback does not fire. Anyway...
Thank you so much for your help! I really appreciate it

I have that same issue. Sure, it's possible to check the selection in onSelectSlot to find out if it spans across multiple days. However, it is not possible to disable the gray selection indication. Really, onSelectSlot should be called also in the month view.

@johannesd onSelectSlot is called in the month view. And, onSelectSlot and onSelecting both receive a start and end, so it is possible to 'check the selection' to see if it spans across multiple days.

@cutterbl I think there is a misunderstanding. We want to be able to select a single day in the month view, but not multiple ones. I want to be able to prevent the gray selection to appear when I drag the mouse across multiple days. My attempt was to make onSelecting to return false if it spans multiple days, but true, if start and end are on the same day. This is not possible (or please tell me how)

Allowing on to select (through onSelectSlot) multiple days is intentional, as it allows a user to possibly create events that span multiple days from the month view, much like someone marking off their vacation time. If you want to restrict that ability, you would have to write custom functionality into your `onSelectSlot method.


WinAppDriver based automation stops working on windows 10 VM when I close the RDP connection

Hi,
I am doing all the work remotely on my Windows 10 (It's a Windows 10 VM). I am accessing the Windows 10 VM via RDP. Whenever I am logged in to the server, my automation runs fine but when I close my RDP connection, I think the WinAppDriver can't find the elements on the desktop application and thus it can't control anything.
How can I solve it? I want to run my automation on my Windows 10 and close the RDP connection and it should work fine. Please let me know If I am missing something.
Thanks

Winappdriver or Coded UI relies on Active screen interaction for running UI Tests. When you disconnect the session the active screen gets locked and so it's not possible for scripts to interact with UI.
Use the tscon command when disconnecting from remote session this will keep screen active after disconnecting.
More on this below:
https://docs.microsoft.com/en-us/azure/devops/pipelines/test/ui-testing-considerations?view=azure-devops&tabs=mstest#visible-ui-testing-using-self-hosted-windows-agents
https://support.smartbear.com/testcomplete/docs/testing-with/running/via-rdp/keeping-computer-unlocked.html
Hope it helps.

LIke @anshul1goel said, WinAppDriver requires active UI session. You can try FlaUI and UIA patterns to acheive it to some extent if this is absolutely a must for you.


Phase 1 - I was there option for meeting attendance

Placeholder - semifunctional 'but I was there' option for missed meet…ing attendance - Affects #291.  Also, if Aric wants buttons, Aric gets buttons!
Phase two will be deep link email and response handling

GitHub API communication error. Please contact a human. (commit-ID: 3581c04c5f9ddd1fdae20afd1637635ed864dad2).

Ok so I pushed very slight modification i would like your OK on.
I disabled Generic.WhiteSpace.ScopeIndent.IncorrectExact in the schema since you did a  lot of work to reformat it and i like your formatting for that file better than phpcs’  But otherwise cleaned up a few other double lines etc..
As for the sonarcloud duplicate line issue.  It can deal. I will mark them as reviewed or something because I agree with the readability issue.
If you are ok with these changes I can push this version.

Those look good, yes!  Carry on.  And Thank you


Handle interruptions during fetching log segment

This commit addresses the fact that the fetching stream can be interrupted by the broker. In this case, we return an empty stream to prevent useless logging of InterruptedException and ClosedByInterruptException.

As a note, this is only handling the scenarios when is interrupted while fetching log or segment manifest. It can still be badly propagated if it fails when fetching an index as it's handled by a synchronous caffeine implementation on the broker side. Though this would require better exception handling on the API and broker side to be solved as proposed here https://lists.apache.org/thread/8slfhqmwml1xnjmxy8v5jb7d1tq44fsx


feat: recommended policies default registry.

Description
Updates the Air gap installation documentation adding the new configuration field in the kubewarden-defaults Helm chart used to define the default registry used by the recommended policies.
Related to https://github.com/kubewarden/helm-charts/issues/242

Moving this to block until we approve https://github.com/kubewarden/helm-charts/pull/245

@flavio @kubewarden/kubewarden-developers I've added a new commit in this PR to cover the changes from https://github.com/kubewarden/helm-charts/pull/246 as well

Moving to block until we release the helm chart changes.


fix: prefer using "di:" field tags to control injection options to avoid conflicting with tags used by other libraries.

fix: prefer using "di:" field tags to control injection options to avoid conflicting with tags used by other libraries.
old style is still supported but generates a deprecation warning like:
2021/07/16 13:40:19 Deprecation warning: please replace the field tags on 'Server.Tags' with: di:"http=true,server=true"

this fixes #37

Looks good to me


Error running vitest if my components app uses a component from an external lib that does not expose ESM

Describe the bug
I have a React application with Vitest and I have the problem that when I use a component from an external lib that does not use ESM, the tests do not run but if I remove it they do.
I get this error: SyntaxError: Cannot use import statement outside a module
I have tried installing vite plugins that support commonjs but they don't work and I really don't know why.
Also test: // vitest.config.js
export default {
test: {
server: {
deps: {
inline: [
"{{private dependency}}"
]
}
}
}
}
and it doesn't work, what am I missing or is it really a vitest bug?
@antfu
Reproduction
I can't provide it's an internal project
System Info
System:
    OS: macOS 13.5
    CPU: (10) arm64 Apple M1 Max
    Memory: 279.61 MB / 32.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 16.20.0 - ~/.nvm/versions/node/v16.20.0/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v16.20.0/bin/yarn
    npm: 8.19.4 - ~/.nvm/versions/node/v16.20.0/bin/npm
  Browsers:
    Chrome: 116.0.5845.96
    Edge: 116.0.1938.54
    Firefox: 115.0.3
    Safari: 16.6
  npmPackages:
    @vitejs/plugin-react: ^4.0.4 => 4.0.4
    @vitest/coverage-istanbul: ^0.30.1 => 0.30.1
    @vitest/ui: latest => 0.34.2
    vite: ^4.4.9 => 4.4.9
    vitest: ^0.34.1 => 0.34.2

Used Package Manager
yarn
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

We temporarily close this due to the lack of enough information.
Please provide a minimal reproduction to reopen the issue.
Thanks.

Why reproduction is required


Related to issue #283

It removed some ExportNamedDeclaration... errors

@Alphapage Can you update the now failing test (try-block-line-comment.js)?

I'm sorry: I'm using acorn and it is working as expected.
Don't know why it is failing! Probably esprima problem.


Gitolite local code dir can't be blank

After the installation of the plugin I edited the public and private key locations and several other settings successfully. Now I want to change the 'SSH server domain' and 'HTTP server domai'n at the 'Access tab' but when I click on 'Apply' I get this error shown below.

I can't seem to find the setting for 'local code dir'.
Thanks in advance

Never mind. I figured I had to configure the 'Gitolite non-core hooks directory'. The error message is a bit unclear though.

Hm, how did you fix it...?

I fixed it also, forgot to run rake redmine:plugins:migrate RAILS_ENV=production and after that I re-installed hooks, now everything is OK...


TypeError: on_slash() takes 1 positional argument but 2 were given

discord-py-slash-command==1.0.9 (hotfix-command-register branch)
I just added a new command to my bot:
{
	"id": "XXX",
	"application_id": "YYY",
	"name": "help",
	"description": "See Game Basics",
	"version": "807752974251065344",
	"options": [
		{
		"type": 6,
		"name": "user",
		"description": "User to send help tutorial to"
		}
	]
}

Since the option is not required, everything works fine with no options. But when I include a user as specified in the options, I get the following error.
An exception has occurred while executing command `help`:
Traceback (most recent call last):
  File "/Users/xxx/Workspace/discord-bot/venv/lib/python3.7/site-packages/discord_slash/client.py", line 725, in on_socket_response
    await selected_cmd.invoke(ctx, *args)
  File "/Users/xxx/Workspace/discord-bot/venv/lib/python3.7/site-packages/discord_slash/model.py", line 49, in invoke
    return await self.func(*args)
TypeError: on_slash() takes 1 positional argument but 2 were given

Add another arg at your command coroutine.
For example:
@slash.slash(...)
async def help(ctx, user=None):
    ...

..why is this still open...

Closing due to no response.


-AsJob description is absent

The description of -AsJob parameter is not present in the cmdlet.

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

ID: e17ba3b2-f818-6a09-411d-aa8563705325
Version Independent ID: e62b6323-aba4-5286-70f0-fcccd8cf23be
Content: Get-CsTenant (skype)
Content Source: skype/skype-ps/skype/Get-CsTenant.md
Service: skypeforbusiness-powershell
Product: unspecified
GitHub Login: @kenwith
Microsoft Alias: kenwith

All Skype cmdlets are undergoing audit and being tracked internally to make sure every cmdlet has an example and descriptions.


merge package from arlac77/npm-package-template

package.json

chore(scripts): cover@#overwrite c8 --temp-directory build/coverage ava && c8 report -r lcov --temp-directory build/coverage
chore(engines<EMAIL_ADDRESS>chore(package): add xo from template
chore(package): add nyc from template
chore(package): set $.ava.require='esm' as in template
chore(package): set $.ava.files='tests/-test.js,tests/-test.mjs' as in template
chore(package): set $.ava.extensions='js,mjs' as in template

.travis.yml

chore(travis): remove node versions 10.13
chore(travis): add node versions 10.14

Coverage remained the same at 100.0% when pulling 5763e133bc8321dbcd76080049ba3a57641a56f8 on template-sync-1 into 2dc5e71d3e3ac89c9fb9c586a964b0080a727a83 on master.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Pictures not showing

Pictures not showing, when i run the app on my device.

Hi @jspetter20 this application requires an API key to work. Create your key using this Pixabay
Regards


DrawerNavigator Background Dim

Tested in iOS simulator and on actual iOS device:
After updating to beta7 DrawerNavigator does not dim the background no more when opened.
The visible content behind the drawer is not clickable neither (which was closing the drawer in earlier versions).
Is this desired behaviour? If yes: are there options to recover the legacy background-dimming?

Hi @pex,
This is a bug in the drawer library we are using, see https://github.com/react-native-community/react-native-drawer-layout/issues/12. I am currently working on this issue, can you expand a bit on how you found it? It is every content of the drawer or only specific ones?

I just tested it on the drawer example in this project, but it worked there on the iOS Simulator and on a real android device. It would be so great if you could provide further detail or an example so I can debug this issue a little further. Thank you for your help!

Hej @DanielMSchmidt thank you for your quick support. I am also following react-native-community/react-native-drawer-layout/issues/12 which sounds like fixing that resolves this issue as well.
I'm curious about your solution. Good luck!

Seems this was fixed - closing!


FixtureDispatcher thread safe

Hi 👋
I've been having trouble using FixtureDispatcher with concurrent code.
I've had two main problems:

Sometimes the Yaml parser crashes when it's used on concurrent calls. This is a similar issue solved in another repository.
Another crash that I was having was when multiple concurrent calls were dequeueing a queued response as TreeMap is not concurrent.

I haven't added any test for this.
What do you think about these changes?
Should we synchronise also the put and queue methods? My fix is only for running the network calls, but there are still issues if we configure the FixtureDispatcher from multiple threads.
In my case I need these fixes as sometimes it crashes when doing multiple calls on UI tests or when I test concurrent network calls on integration tests.

Great @koral-- , thanks for checking and adding this ❤
Sorry for asking every time, but are you going to release a new version with these changes?
I don't know when do you normally plan to create a new release.
It'll be great to have them so I can fix my flaky tests 🙂
Thanks again!

The release process is semi-automatic.
1.1.5 is on the way.
Feel free to create the next PR.


allow additional characters in usernames and passwords (#1580)

Codecov Report

Merging #1666 (caeeb71) into main (455f88b) will increase coverage by 0.09%.
The diff coverage is 0.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main    #1666      +/-   ##
==========================================
+ Coverage   62.86%   62.95%   +0.09%
==========================================
  Files          87       87
  Lines        9858     9858
==========================================
+ Hits         6197     6206       +9
+ Misses       3206     3197       -9
  Partials      455      455

Impacted Files
Coverage Δ

internal/conf/credential.go
0.00% <0.00%> (ø)

... and 3 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

added in v0.22.1


Wrong prompt or missing translation

Search for GC2RF5
Toast-message says: "Download der Cache-Details fehlgeschlagen, wegen UNPUBLISHED_CACHE".

I do not find UNPUBLISHED_CACHE as a string or as text in the strings.xml

I will check some translations around it if time permits.
Can you give me the relevant strings for the first part of the sentence and the possible second part (the different causes) and I will patch them together for english and german.

I think the best correction may be to remove the string err_dwld_details_failed_reason and always use err_dwld_details_failed (to get rid of "because of"). We can still add the specific reason as the second sentence.
The error would then read "Sorry, c:geo failed to download cache details. The requested cache is unpublished"
If so, English version of err_download_fail should have "because of" removed so they are consistent.

Sounds good to me...maybe the only solution (also for translating it into other languages easily).


Chown files as nobody:nogroup when adding

Docker creates an additional layer with copies of files when
permissions are changed. This commit modifies our build process to
make sure the files are added with these permissions in a single
layer, reducing the uncompressed image size by 170MB.
JIRA Issues: MARATHON-8436

I have confirmed that the docker image test works with this change (including that the environment variable hook can write a file to /marathon)


[Part 1] Collector for Sorting Results

Description
This PR is the first PR of Sorting feature. It covers the collector which will be responsible for getting the sorted results on the basis of the sort criteria.

The HybridTopFieldDocSortingCollector.SimpleFieldCollector is responsible get the individual query results in the sorted form.
The HybridTopFieldDocSortingCollector.PagingFieldCollector is responsible to applying search_after filter pagination on the sorted results of individual query.

The inspiration of the collector is from https://github.com/apache/lucene/blob/main/lucene/core/src/java/org/apache/lucene/search/TopFieldCollector.java
The MultileaffieldComparator is from lucene
https://github.com/apache/lucene/blob/main/lucene/core/src/java/org/apache/lucene/search/MultiLeafFieldComparator.java
Issues Resolved
https://github.com/opensearch-project/neural-search/issues/507
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed as per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Integ tests in secure environment cluster are failing due to https://github.com/opensearch-project/security-dashboards-plugin/issues/2009

At 1000ft overview , here are the high level comments I have
The whole idea was move away from inheritance and use composition. Right now we have two classes one Abstract Class which inherits from collector and other two class which inhertis from this . Instead of this , Write all the common logic in sperate component classes like
1.CollectorState: Manage state variables like totalHits, maxScore, etc. 2.PriorityQueueManager: Handle priority queue operations. 3. ScorerManager: Handle scorer operations and initialization.
these are indiviadual components that needs to be HAS-A relation with PagingFieldCollector and the other one, like below.
public class PagingFieldCollector implements Collector { private final CollectorState state; private final PriorityQueueManager queueManager; private final ScorerManager scorerManager; }
if I look at current implementation also , Abstarct class is doing lots of stuff , If we can extract most of the functionality from this class and put in helper and then have "HAS-A" relation with this abstract class would also help.
I have not looked into other code part, let's fix on structure of classes and then we can have low -level review .

@Vikasht34 The idea is here is to replicate what is there in lucene and not create a whole new level of sort collector. They have given a significant effort in maintaining this class https://github.com/apache/lucene/blob/main/lucene/core/src/java/org/apache/lucene/search/TopFieldCollector.java. I would not like to move away from this pattern as it may break many functionlities.

Can we have few basic unit tests for your new sorting collector and additions to hybrid collector manager?

@martin-gaievski added the basic unit tests.


[BUG] Invoke-PnPTenantTemplate - Teams Security Node Issue - Token not replaced

Reporting an Issue or Missing Feature
Issue
Expected behavior
When running Invoke-PnPTenantTemplate with a PnP Schema file that includes a security node utilizing a replacement token, the token should be replaced when provisioning.
Actual behavior
When running Invoke-PnPTenantTemplate with a PnP Schema file that has a token replacement for the "Owner" in the security node, you receive:
PowerShell_ISE.exe Error: 0 : 2021-03-30 13:24:24.0198	[Teams]	[17]	[Error]	Failed to get user by upn information.
Steps to reproduce behavior
Considering a schema such as:
<pnp:Provisioning xmlns:pnp="http://schemas.dev.office.com/PnP/2020/02/ProvisioningSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Author="Some One" Generator="Human being" Version="1.0" Description="A sample Provisioning template to test Teams provisioning" DisplayName="Teams Provisioning">

  <pnp:Preferences Author="..." Version="1.0" Generator="Human being">
    <pnp:Parameters>
      <pnp:Parameter Key="TEAMTITLE">a Title for the Team5</pnp:Parameter>
      <pnp:Parameter Key="TEAMALIAS">AnAlias5</pnp:Parameter>
      <pnp:Parameter Key="TEAMOWNER">admin@ademotenant.onmicrosoft.com</pnp:Parameter>
      <pnp:Parameter Key="TEAMDESCRIPTION">This is a standard description</pnp:Parameter>
    </pnp:Parameters>
  </pnp:Preferences>

  <pnp:Teams>
    <pnp:Team DisplayName="{Parameter:TEAMTITLE}" Description="{Parameter:TEAMDESCRIPTION}" Visibility="Private" Archived="false" MailNickname="{Parameter:TEAMALIAS}">
        <pnp:FunSettings AllowGiphy="true" GiphyContentRating="Strict" AllowStickersAndMemes="true" AllowCustomMemes="true"/>
      <pnp:Security>
        <pnp:Owners ClearExistingItems="true">
          <pnp:User UserPrincipalName="{Parameter:TEAMOWNER}" />
        </pnp:Owners>
      </pnp:Security>
      <pnp:DiscoverySettings ShowInTeamsSearchAndSuggestions="false" />
      <pnp:Channels>
    </pnp:Team>
  </pnp:Teams>
</pnp:Provisioning>

The token replacement for <pnp:User UserPrincipalName="{Parameter:TEAMOWNER}" /> doesn't happen.
If you replace the token manually with the same string as defined in the "<pnp:Preferences>" block, then it does execute appropriately.
This appears to be the same as Parameter in username makes Teams provisioning fail #2277
What is the version of the Cmdlet module you are running?
1.4.19
Which operating system/environment are you running PnP PowerShell on?

[X] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ ] Azure Functions
[ ] Other : please specify

I have only seen this within the "pnp:Teams" node.

Still an issue

Issue still present.


ctr images export doesn't work

Description

When I try to export an image using ctr, it failed w/ below error message:
ctr -n k8s.io images export image.tar <whatever-my-image-ref>
ctr: failed to get reader: content digest sha256:150b15dcf8cb1d3adc092e340f6d3e1521fcd4e2136d0a2cd457f934a3d22205: not found

By running ctr -n k8s.io images ls, I can see the platform for the image is linux/amd64:
REF                       TYPE                                                      DIGEST                                                                  SIZE      PLATFORMS                                                                    LABELS
<whatever-my-image-ref>   application/vnd.docker.distribution.manifest.v2+json      sha256:92528b54f308d94ed26e8c436948e7d2620bd9b03f4dd6a0c5c1ef4257e6c997 365.3 MiB linux/amd64                                                                  io.cri-containerd.image=managed

However, I see the same error even if I add --platform:
ctr -n k8s.io images export image.tar <whatever-my-image-ref> --platform linux/amd64

What version of containerd are you using:
$ containerd --version
containerd github.com/containerd/containerd v1.5.2 36cc874494a56a253cd181a1a685b44b58a2e34a

Any other relevant information (runC version, CRI configuration, OS/Kernel version, etc.):

runc --version
$ runc --version
runc version 1.0.0-rc95
commit: b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7
spec: 1.0.2-dev
go: go1.16.4
libseccomp: 2.5.1

crictl info
$ crictl info
{
  "status": {
    "conditions": [
      {
        "type": "RuntimeReady",
        "status": true,
        "reason": "",
        "message": ""
      },
      {
        "type": "NetworkReady",
        "status": true,
        "reason": "",
        "message": ""
      }
    ]
  },
  "cniconfig": {
    "PluginDirs": [
      "/opt/cni/bin"
    ],
    "PluginConfDir": "/etc/cni/net.d",
    "PluginMaxConfNum": 1,
    "Prefix": "eth",
    "Networks": [
      {
        "Config": {
          "Name": "cni-loopback",
          "CNIVersion": "0.3.1",
          "Plugins": [
            {
              "Network": {
                "type": "loopback",
                "ipam": {},
                "dns": {}
              },
              "Source": "{\"type\":\"loopback\"}"
            }
          ],
          "Source": "{\n\"cniVersion\": \"0.3.1\",\n\"name\": \"cni-loopback\",\n\"plugins\": [{\n  \"type\": \"loopback\"\n}]\n}"
        },
        "IFName": "lo"
      },
      {
        "Config": {
          "Name": "kindnet",
          "CNIVersion": "0.3.1",
          "Plugins": [
            {
              "Network": {
                "type": "ptp",
                "ipam": {
                  "type": "host-local"
                },
                "dns": {}
              },
              "Source": "{\"ipMasq\":false,\"ipam\":{\"dataDir\":\"/run/cni-ipam-state\",\"ranges\":[[{\"subnet\":\"<IP_ADDRESS>/24\"}]],\"routes\":[{\"dst\":\"<IP_ADDRESS>/0\"}],\"type\":\"host-local\"},\"mtu\":1500,\"type\":\"ptp\"}"
            },
            {
              "Network": {
                "type": "portmap",
                "capabilities": {
                  "portMappings": true
                },
                "ipam": {},
                "dns": {}
              },
              "Source": "{\"capabilities\":{\"portMappings\":true},\"type\":\"portmap\"}"
            }
          ],
          "Source": "\n{\n\t\"cniVersion\": \"0.3.1\",\n\t\"name\": \"kindnet\",\n\t\"plugins\": [\n\t{\n\t\t\"type\": \"ptp\",\n\t\t\"ipMasq\": false,\n\t\t\"ipam\": {\n\t\t\t\"type\": \"host-local\",\n\t\t\t\"dataDir\": \"/run/cni-ipam-state\",\n\t\t\t\"routes\": [\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t{ \"dst\": \"<IP_ADDRESS>/0\" }\n\t\t\t],\n\t\t\t\"ranges\": [\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t[ { \"subnet\": \"<IP_ADDRESS>/24\" } ]\n\t\t\t]\n\t\t}\n\t\t,\n\t\t\"mtu\": 1500\n\t\t\n\t},\n\t{\n\t\t\"type\": \"portmap\",\n\t\t\"capabilities\": {\n\t\t\t\"portMappings\": true\n\t\t}\n\t}\n\t]\n}\n"
        },
        "IFName": "eth0"
      }
    ]
  },
  "config": {
    "containerd": {
      "snapshotter": "overlayfs",
      "defaultRuntimeName": "runc",
      "defaultRuntime": {
        "runtimeType": "",
        "runtimeEngine": "",
        "PodAnnotations": null,
        "ContainerAnnotations": null,
        "runtimeRoot": "",
        "options": null,
        "privileged_without_host_devices": false,
        "baseRuntimeSpec": ""
      },
      "untrustedWorkloadRuntime": {
        "runtimeType": "",
        "runtimeEngine": "",
        "PodAnnotations": null,
        "ContainerAnnotations": null,
        "runtimeRoot": "",
        "options": null,
        "privileged_without_host_devices": false,
        "baseRuntimeSpec": ""
      },
      "runtimes": {
        "runc": {
          "runtimeType": "io.containerd.runc.v2",
          "runtimeEngine": "",
          "PodAnnotations": null,
          "ContainerAnnotations": null,
          "runtimeRoot": "",
          "options": null,
          "privileged_without_host_devices": false,
          "baseRuntimeSpec": ""
        },
        "test-handler": {
          "runtimeType": "io.containerd.runc.v2",
          "runtimeEngine": "",
          "PodAnnotations": null,
          "ContainerAnnotations": null,
          "runtimeRoot": "",
          "options": null,
          "privileged_without_host_devices": false,
          "baseRuntimeSpec": ""
        }
      },
      "noPivot": false,
      "disableSnapshotAnnotations": true,
      "discardUnpackedLayers": true
    },
    "cni": {
      "binDir": "/opt/cni/bin",
      "confDir": "/etc/cni/net.d",
      "maxConfNum": 1,
      "confTemplate": ""
    },
    "registry": {
      "configPath": "",
      "mirrors": null,
      "configs": null,
      "auths": null,
      "headers": null
    },
    "imageDecryption": {
      "keyModel": "node"
    },
    "disableTCPService": true,
    "streamServerAddress": "<IP_ADDRESS>",
    "streamServerPort": "0",
    "streamIdleTimeout": "4h0m0s",
    "enableSelinux": false,
    "selinuxCategoryRange": 1024,
    "sandboxImage": "k8s.gcr.io/pause:3.5",
    "statsCollectPeriod": 10,
    "systemdCgroup": false,
    "enableTLSStreaming": false,
    "x509KeyPairStreaming": {
      "tlsCertFile": "",
      "tlsKeyFile": ""
    },
    "maxContainerLogSize": 16384,
    "disableCgroup": false,
    "disableApparmor": false,
    "restrictOOMScoreAdj": false,
    "maxConcurrentDownloads": 3,
    "disableProcMount": false,
    "unsetSeccompProfile": "",
    "tolerateMissingHugetlbController": true,
    "disableHugetlbController": true,
    "ignoreImageDefinedVolumes": false,
    "netnsMountsUnderStateDir": false,
    "containerdRootDir": "/var/lib/containerd",
    "containerdEndpoint": "/run/containerd/containerd.sock",
    "rootDir": "/var/lib/containerd/io.containerd.grpc.v1.cri",
    "stateDir": "/run/containerd/io.containerd.grpc.v1.cri"
  },
  "golang": "go1.16.4",
  "lastCNILoadStatus": "OK"
}

uname -a
$ uname -a
Linux my-demo-server 5.4.0-80-generic #90-Ubuntu SMP Fri Jul 9 22:49:44 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

i meet same error . related https://github.com/containerd/containerd/issues/5690#issuecomment-900882878

Hello.
Could you try a few things for me? Can you create / start a container using the same image? I would assume not, since you hit that issue you've mentioned in the bug report, but it would be great to confirm.
Now, my follow up question is how did you obtain that image? ctr image pull? ctr image import? Is it a publicly known image that we could try too? The only thing I can guess is that your image has multiple layers (and due to some reason, at least one layer was not labeled as a child of the image, which lead to the Garbage Collector deleting it).
If it's an image you've imported, you could try ctr image import --all-platforms. As mentioned above, there is a known issue about ctr image import, and I've submitted a test that proves the multilayer image import issue [1], and a fix to solve it [2]. From what I've seen, there are multiple types / formats of images by handled by containerd / ctr on import, and this issue still persists for OCI-formatted images. Keep in mind that ctr image export generates OCI images.
If you've obtained that image through ctr image pull, let me know.
[1] https://github.com/containerd/containerd/pull/5933
[2] https://github.com/containerd/containerd/pull/5916

Can you dump the containerd config?

@claudiubelu, actually I was using KIND that wraps containerd and ctr, and the image that I referred to in this issue can be used to start the container w/o problem. So, it is KIND who pulls the image and launches the container for me. What I was trying to do is to export the image pulled by KIND from the KIND container node to the host machine, so that I can push it to my own private registry for further use.
The image is built and published to a dedicated container registry which requires dedicated credential to access. So, I was not able to share it. But I guess you might be right, this image must be somehow special comparing w/ other regular images, e.g.: the KIND node images, which I can export them use ctr command successfully.
@cpuguy83, to dump containerd config, here is the details:
docker exec instana-demo-worker2 containerd config dump

disabled_plugins = []
imports = ["/etc/containerd/config.toml"]
oom_score = 0
plugin_dir = ""
required_plugins = []
root = "/var/lib/containerd"
state = "/run/containerd"
version = 2

[cgroup]
  path = ""

[debug]
  address = ""
  format = ""
  gid = 0
  level = ""
  uid = 0

[grpc]
  address = "/run/containerd/containerd.sock"
  gid = 0
  max_recv_message_size = 16777216
  max_send_message_size = 16777216
  tcp_address = ""
  tcp_tls_cert = ""
  tcp_tls_key = ""
  uid = 0

[metrics]
  address = ""
  grpc_histogram = false

[plugins]

  [plugins."io.containerd.gc.v1.scheduler"]
    deletion_threshold = 0
    mutation_threshold = 100
    pause_threshold = 0.02
    schedule_delay = "0s"
    startup_delay = "100ms"

  [plugins."io.containerd.grpc.v1.cri"]
    disable_apparmor = false
    disable_cgroup = false
    disable_hugetlb_controller = true
    disable_proc_mount = false
    disable_tcp_service = true
    enable_selinux = false
    enable_tls_streaming = false
    ignore_image_defined_volumes = false
    max_concurrent_downloads = 3
    max_container_log_line_size = 16384
    netns_mounts_under_state_dir = false
    restrict_oom_score_adj = false
    sandbox_image = "k8s.gcr.io/pause:3.5"
    selinux_category_range = 1024
    stats_collect_period = 10
    stream_idle_timeout = "4h0m0s"
    stream_server_address = "<IP_ADDRESS>"
    stream_server_port = "0"
    systemd_cgroup = false
    tolerate_missing_hugetlb_controller = true
    unset_seccomp_profile = ""

    [plugins."io.containerd.grpc.v1.cri".cni]
      bin_dir = "/opt/cni/bin"
      conf_dir = "/etc/cni/net.d"
      conf_template = ""
      max_conf_num = 1

    [plugins."io.containerd.grpc.v1.cri".containerd]
      default_runtime_name = "runc"
      disable_snapshot_annotations = true
      discard_unpacked_layers = true
      no_pivot = false
      snapshotter = "overlayfs"

      [plugins."io.containerd.grpc.v1.cri".containerd.default_runtime]
        base_runtime_spec = ""
        container_annotations = []
        pod_annotations = []
        privileged_without_host_devices = false
        runtime_engine = ""
        runtime_root = ""
        runtime_type = ""

        [plugins."io.containerd.grpc.v1.cri".containerd.default_runtime.options]

      [plugins."io.containerd.grpc.v1.cri".containerd.runtimes]

        [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
          base_runtime_spec = ""
          container_annotations = []
          pod_annotations = []
          privileged_without_host_devices = false
          runtime_engine = ""
          runtime_root = ""
          runtime_type = "io.containerd.runc.v2"

          [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]

        [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.test-handler]
          base_runtime_spec = ""
          container_annotations = []
          pod_annotations = []
          privileged_without_host_devices = false
          runtime_engine = ""
          runtime_root = ""
          runtime_type = "io.containerd.runc.v2"

          [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.test-handler.options]

      [plugins."io.containerd.grpc.v1.cri".containerd.untrusted_workload_runtime]
        base_runtime_spec = ""
        container_annotations = []
        pod_annotations = []
        privileged_without_host_devices = false
        runtime_engine = ""
        runtime_root = ""
        runtime_type = ""

        [plugins."io.containerd.grpc.v1.cri".containerd.untrusted_workload_runtime.options]

    [plugins."io.containerd.grpc.v1.cri".image_decryption]
      key_model = "node"

    [plugins."io.containerd.grpc.v1.cri".registry]
      config_path = ""

      [plugins."io.containerd.grpc.v1.cri".registry.auths]

      [plugins."io.containerd.grpc.v1.cri".registry.configs]

      [plugins."io.containerd.grpc.v1.cri".registry.headers]

      [plugins."io.containerd.grpc.v1.cri".registry.mirrors]

        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:5000"]
          endpoint = ["http://kind-registry:5000"]

    [plugins."io.containerd.grpc.v1.cri".x509_key_pair_streaming]
      tls_cert_file = ""
      tls_key_file = ""

  [plugins."io.containerd.internal.v1.opt"]
    path = "/opt/containerd"

  [plugins."io.containerd.internal.v1.restart"]
    interval = "10s"

  [plugins."io.containerd.metadata.v1.bolt"]
    content_sharing_policy = "shared"

  [plugins."io.containerd.monitor.v1.cgroups"]
    no_prometheus = false

  [plugins."io.containerd.runtime.v1.linux"]
    no_shim = false
    runtime = "runc"
    runtime_root = ""
    shim = "containerd-shim"
    shim_debug = false

  [plugins."io.containerd.runtime.v2.task"]
    platforms = ["linux/amd64"]

  [plugins."io.containerd.service.v1.diff-service"]
    default = ["walking"]

  [plugins."io.containerd.snapshotter.v1.aufs"]
    root_path = ""

  [plugins."io.containerd.snapshotter.v1.btrfs"]
    root_path = ""

  [plugins."io.containerd.snapshotter.v1.devmapper"]
    async_remove = false
    base_image_size = ""
    pool_name = ""
    root_path = ""

  [plugins."io.containerd.snapshotter.v1.native"]
    root_path = ""

  [plugins."io.containerd.snapshotter.v1.overlayfs"]
    root_path = ""

  [plugins."io.containerd.snapshotter.v1.zfs"]
    root_path = ""

[proxy_plugins]

  [proxy_plugins.fuse-overlayfs]
    address = "/run/containerd-fuse-overlayfs.sock"
    type = "snapshot"

[stream_processors]

  [stream_processors."io.containerd.ocicrypt.decoder.v1.tar"]
    accepts = ["application/vnd.oci.image.layer.v1.tar+encrypted"]
    args = ["--decryption-keys-path", "/etc/containerd/ocicrypt/keys"]
    env = ["OCICRYPT_KEYPROVIDER_CONFIG=/etc/containerd/ocicrypt/ocicrypt_keyprovider.conf"]
    path = "ctd-decoder"
    returns = "application/vnd.oci.image.layer.v1.tar"

  [stream_processors."io.containerd.ocicrypt.decoder.v1.tar.gzip"]
    accepts = ["application/vnd.oci.image.layer.v1.tar+gzip+encrypted"]
    args = ["--decryption-keys-path", "/etc/containerd/ocicrypt/keys"]
    env = ["OCICRYPT_KEYPROVIDER_CONFIG=/etc/containerd/ocicrypt/ocicrypt_keyprovider.conf"]
    path = "ctd-decoder"
    returns = "application/vnd.oci.image.layer.v1.tar+gzip"

[timeouts]
  "io.containerd.timeout.shim.cleanup" = "5s"
  "io.containerd.timeout.shim.load" = "5s"
  "io.containerd.timeout.shim.shutdown" = "3s"
  "io.containerd.timeout.task.state" = "2s"

[ttrpc]
  address = ""
  gid = 0
  uid = 0

@thehh1974 the pull command output shows that the layers did not exist locally. Make sure discard_unpacked_layers is set to false if you want to keep the layer content for exporting later. You can also verify this by doing ctr content fetch --all-platforms docker.io/weaveworksdemos/queue-master:0.3.1 before doing ctr images export. The containerd export process will not attempt to recover any missing layers on export, they must be kept around after pull or explicitly fetched.

Oh, I have similar problems, but I use --all-platforms flag to pull image and try export again, and then i exports image successfully, i guess my pulled image just using another platform image layer.

Instead of using --all-platforms you can also "pull" only specific platform with --platform linux/arm64 if you only care for single platform of exported image. For clarity, we ended up using specific --platform for both ctr content fetch ... && ctr export ... so it's clear for which platform we're exporting images for. For some multiarch images the download size is huge if you fetch all, especially those that support windows too... 😄
@dmcgowan If I do not specify --platform or --all-platforms for ctr content fetch ..., which platform layers etc will it actually fetch? I would've assumed it fetches the current OS/arch layers but that does not seem to be the case. Did not dive super deep, but with some manual testing it seems that it only fetches the "metadata" bits.

	platformStr          = "--platform=linux/amd64"
		executeCommand(fmt.Sprintf("ctr i pull %s %s", platformStr, newImageName))
		executeCommand(fmt.Sprintf("ctr content fetch --all-platforms %s", newImageName))
		executeCommand(fmt.Sprintf("ctr i check name==%s", newImageName))
		executeCommand(fmt.Sprintf("ctr i export %s %s %s", platformStr, imageTarTmpFilepath, newImageName))

maybe we can improve it for offline special platform image
we can use pull and export with --all-platforms to deal with this problem, but  if containerd extra miss layer to file, the final image file will be less

Hi,
I think the issue persists. Using DefaultString will not match any arm image on an arm64 host, making the export fail.

I would like to know why ctr doesn't have a way to export the image using the layers it has. The amount of layers is clearly sufficient to run the image, but why can't one export it with the squashed layers?


Failed assertion: line 853 pos 14: 'file != null': is not true.

======== Exception caught by widgets library =======================================================
The following assertion was thrown building HomePage(dirty, state: _HomePageState#6848e):
'package:flutter/src/painting/image_provider.dart': Failed assertion: line 853 pos 14: 'file != null': is not true.
Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=2_bug.md
The relevant error-causing widget was:
HomePage file:///C:/Users/WOL-91%20Hamad/AndroidStudioProjects/ImageEditorPro/example/lib/main.dart:12:12
When the exception was thrown, this was the stack:
#2      new FileImage (package:flutter/src/painting/image_provider.dart:853:14)
#3      new Image.file (package:flutter/src/widgets/image.dart:470:68)
#4      _HomePageState.build (package:image_editor_pro_example/main.dart:49:28)
#5      StatefulElement.build (package:flutter/src/widgets/framework.dart:4612:27)
#6      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4495:15)
...
======== Exception caught by widgets library =======================================================
'package:flutter/src/painting/image_provider.dart': Failed assertion: line 853 pos 14: 'file != null': is not true.
The relevant error-causing widget was:
HomePage file:///C:/Users/WOL-91%20Hamad/AndroidStudioProjects/ImageEditorPro/example/lib/main.dart:12:12
======== Exception caught by widgets library =======================================================
The following assertion was thrown building HomePage(dirty, state: _HomePageState#6848e):
'package:flutter/src/painting/image_provider.dart': Failed assertion: line 853 pos 14: 'file != null': is not true.
Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=2_bug.md
The relevant error-causing widget was:
HomePage file:///C:/Users/WOL-91%20Hamad/AndroidStudioProjects/ImageEditorPro/example/lib/main.dart:12:12
When the exception was thrown, this was the stack:
#2      new FileImage (package:flutter/src/painting/image_provider.dart:853:14)
#3      new Image.file (package:flutter/src/widgets/image.dart:470:68)
#4      _HomePageState.build (package:image_editor_pro_example/main.dart:49:28)
#5      StatefulElement.build (package:flutter/src/widgets/framework.dart:4612:27)
#6      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4495:15)
RUN YOUR GITHUB CODE AND IT IS GIVING THIS ERROR.

@HamadBangash353
replace this
Image.file(_image).toCenter()
by this
_image == null ? Container() : Image.file(_image).toCenter()


[Feature-fix] [3324] Fix sort on file-view tree

Purpose
Fixes #3324, which was the problem that in file-view, the file tree was not sorted.
Changes
This makes it so that if there are no Column titles, the file tree is sorted in 'asc' mode.

Side Effects
Files will always be sorted in ascending fashion if there is no column titles for all fangorn derived file trees (if and only if the method Fangorn.Utils.orderFiles is called when there are no titles).

First pass complete - no changes necessary. All yours, @sloria.


Create common UI framework

I propose to think about how we could improve the UI interface (based on og control) for common purposes. Now, we have MenuPanel where we place the buttons, such as LayerSwitcher, not exactly placed but in advance RullerSwitcher, it could be DebugDialog switcher, some timeline interface, etc.
@martyrion proposed MenuPanel interface, as a container for the switchers (buttons). I like the idea, but I don't really like how it works now because often we need to use the power of common control outside of the common UI (switchers). So this is a matter of discussion.
The first is to propose a structure (code design) for the elements which will support the interface.
FYI @martyrion @pavletto

Good morning, If I understood correctly we have to find a way to use the controls both programmatically and by user interface..
Right now - with the way I suggested - the controls can be activate ONLY if user presses a button.
Correct?

Hi @martyrion , yes it's right. Check my last commit for RullerSwitcher, this is how I think it should be.

Yes, it looks very good and readable. So all people who need to access certain controls via UI, can do it via the corresponding switchers . The rest by the control itself.
Another was to have everything related to UI passed to an option, function:
let ruler = new Ruler (
     switcher : true,
     ignoreTerrain : false
)

I can't agree that Ruler  (as in the example) contains a pointer to a switcher. It brings hard links to the design. In my opinion Ruler (or for example, it could be a drawing control, etc.) and other 3D tools are better when they are separate from UI, but UI makes them included for their purposes.
P.S
start, end in the ruler options - good idea.

Yes, I see what you mean. Good then!

All buttons also should be inside a container, og-menu-bar-vertical could be the such container.

I will try to implement during this weekend and send some feedback

Also, LayerSwitcher must have options to show and hide it manually, and the option to not close it when clicking outside, because it is a useful debug option.

Can't figure out, why mouse wheel scrolling doesn't work anymore in the layerswitcher...maybe it didn't work either...

I 'll try to look it also

Hey @Zemledelec, I have just noticed that html has some tags, specifically for dialogs and expandable lists.
https://css-tricks.com/some-hands-on-with-the-html-dialog-element/
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details
Here is the browser compatibility chart:
https://caniuse.com/details - I think it has good support in almost all browsers since ~ 2016-2020.
https://caniuse.com/dialog - Supported by modern browsers ~ 2020-2022
If they are used, they will simplify and reduce the code for LayerSwitcher. I think we can safely use details/summary. Regarding dialog tags, the support is still mediocre.
Regarding the requirements of LayerSwitcher:

Button should be placed inside a menu control.
Dialog should stay open if we choose to (maybe even place it freely like a floating window).
Dialog should have an expandable tree structure (again activated with an option):
-Layer
---Entity/Entity Collection
------Entity

Do you agree?

Absolutely! Very good!

Menu betters say a container, not control. Control is like a plugin in terms of openglobus.
Could the dialog be draggable?

Good. Yes that is what I am planning. If it is not dialog-style (which closes when you click outside) then it will be draggable with "X" button, to close

Hi, isn't it a bit confusing to have entity collections added directly to a planet and to a planet layer? I saw that when adding entity collections directly, they are not presented to the switchers.
Why not add them to a layer first?

A Layer can contain Entities.
Only Vector layer contains entities

Vector layer contains EntityCollections, EntityCollections contains entities, but EntityCollections are not parts of the public data of a layer. EntityCollections are part of the renderer and help to render(visualize) entities. Vector layer public interface works only with entities. From this point of view, entities become part of a planet, which data represents in vector layers.
 EntityCollections live inside a Vector layer. For different types of entities, there are few EntityCollection containers inside vector layer object. Check it out.
https://github.com/openglobus/openglobus/blob/26ced58ca465aef886fb2a64b93cdf3ca6e80d47/src/og/layer/Vector.js#L129

Hi @Zemledelec,
I have almost completed the new LayerSwitcher.
Functionality:

Expandable sections
Entities of a layer are presented and can be selected/unselected
Dialog can be pinned to a position or unpinned and moved freely
Dialog can be reset to original position
Dialog can be minimized/maximized

https://user-images.githubusercontent.com/63229987/190707239-22847c92-9995-4643-ab5e-98aab4c18e10.mov
I would like your thoughts in general and more on the way the entities of a layer are presented.
Q1: Wouldn't it be cool to have a way to group them? (for example the green area and the respective label)
Q2: Also I have noted that entities -  in this example - do not have a zIndex. Do they generally have? If so I will implement drag-and-drop also for the entities, not only layers.
Q3: Should an entity be allowed to be dragged and dropped to another layer?
Dimitris

That's very cool. One thoughts from my side, I would prefer that the layers in each group is unfold instead of collapsed, so users can see all the layers directly without extra operation. what do think?

That's very cool. One thoughts from my side, I would prefer that the layers in each group is unfold instead of collapsed, so users can see all the layers directly without extra operation. what do think?

Hi! If you mean that initial state is unfolded, I think it is good idea. User later can collapse

That's very cool. One thoughts from my side, I would prefer that the layers in each group is unfold instead of collapsed, so users can see all the layers directly without extra operation. what do think?

Hi! If you mean that initial state is unfolded, I think it is good idea. User later can collapse

That's very cool. One thoughts from my side, I would prefer that the layers in each group is unfold instead of collapsed, so users can see all the layers directly without extra operation. what do think?

Hi! If you mean that initial state is unfolded, I think it is good idea. User later can collapse

Yes. exactly

Hi @martyrion ! It looks impressive! Let me review, please:)
I agree that unfolded groups as a default state of the interface are more convenient. If you use a component of the group it could be optional.
About your questions about the entities z indexes.
First of all, I'd like to say that this UI representation makes architecture more obvious! Great job @martyrion!
Secondly, I suggest do not touch the entities z-indexes right now, because it doesn't work the same way as overlay layers, I suggest (for the future) making some properties available through the UI, both for layers and entities, such as isBaseLayer, zIndex(already draggable), url, name, etc, and for an entity: billboard icon, colors, label text, coordinates, etc. if it is polygon some styles...also each entity has children entities, so it could be nested tree, for the future.
Thirdly, I don't think that dragging entities is a good idea...right now, but I've never thought about such kind of perspective of using entities around layers.
In summary, it looks very promising, and reveals some props that would be very helpful, for instance, helps people make their own maps easily! In advance, I think you will like, globus has cameras, and points of interest, and what if it gives creating a demos, where camera fly here and there following a track path...and people can configure this easily!
Cheers!

I am glad you liked it! What do you mean by review? Submit pull request? I will do so in a few days - maybe tomorrow - I want to tidy up the code a bit. I also want you to review the code, I am really interested in your point of view.
So....

Let's leave entities zIndex for now
As for the second, I couldn't agree more! That's what I also have in mind. Click on an edit button on a layer/entity and then be able to do everything through the UI, much like a modern application. I think you will be glad to hear that the records of the dialog window are created use recursion, so it doesn't really matter how much nested are items!
Third --> got that, agree.

have a nice weekend!

Yes, review - merge request:)

Hi, what is the way to capture all picking events in a planet?

Good!
Hey @martyrion, I've made a few things and merged them with your request.
Let's create another issue, and you can close this.
Btw. properties and methods started with _, such as _active are private or protected. You can't use it (actually you can, but better not).
I didn't get your question about events. Let's discuss it in the forum!


Question/Feature Request: .props to work on ES6 class instances

The following does not work because the defined properties are not enumerable:
class Foo {
  get bar() { return somePromise; }
  get baz() { return otherPromise; }
}

Promise.props(new Foo()).then(
  ({bar, baz}) => // doesn't resolve these properties
);

Personally I think it should resolve ES5 non-enumerable properties (such as those defined via ES6 classes). Presently, the code is getting the properties to resolve via Object.keys, which only lists own enumerable properties.
While we're discussing this, I'd expect .props to resolve inherited properties as well. Is there an intentional reason for only resolving own properties that are enumerable? Or was this just an incidental side effect of using Object.keys for the enumeration?
Do others see value in this behaving one way or the other?

I presume the lack of response is that we all only ever used it for enumerable own properties when passing an object literal and not a class.
It was intended to not enumerate enumerable properties since someone might extend Object.prototype with an enumerable property and it'd break .props otherwise.

This:

It was intended to not enumerate enumerable properties

does not make sense. bluebird does resolve enumerable properties. What it does not do is resolve non enumerable properties. I can see a case for not resolving inherited properties so I'll ignore that for now. (Though nothing thus far has addressed inherited enumerable properties.)
So this still leaves my original request of resolving own non-enumerable properties; which would not be susceptible to the Object.prototype extension issue that you mentioned. My proposal would simply change the current Object.keys iteration to Object.getOwnPropertyNames

I obviously meant to say "non enumerable" no need to be snarky.
The point of non-enumerabity being a thing is precisely to opt out of enumerations like Promise.props does. If you want enumerating methods to enumerate your properties - why not make them enumerable?

There was no snark intended.
I could make them enumerable, but the code for that is ugly. So ugly, in fact, that i don't find it worth doing just to get support for a single method. That's why I feel bluebird.props should just support simple ES6 class- created objects like:
class Foo {
  get bar() { return somePromise; }
  get baz() { return otherPromise; }
}

In my current codebase, I converted the entire class into a factory just so I could return a plain object rather than class instance. (which I hated doing) But conceptually, I don't see why bluebird should distinguish: { bar, baz} from new Foo when they are nearly identical objects.

We can't support getter properties without also supporting all non-enumerable properties. Not only would that break backward compatibility, but once we do that, there is no longer a way for users to hide properties from the props method. The capability is easily achieved with a factory function, and will become less ugly for classes via decorators once they become available. So overall I'm -1 on this.

Or a decorator, or your own .props. The point of enumerability in the language is that these things should not be enumerated. Enumerating getters is stateful which is another possible issue. Also -1
@petkaantonov let us know if you strongly disagree.


Getting mouse coordinates from click on heatmap

Hi,
I try to get the clicked coordinate on a HeatMap. Unfortunately, neither does on_click, on_element_click or on_background_click seem to work (see example below).
import numpy as np
from bqplot import (Figure, LinearScale, ColorScale,
                    Color, Axis, HeatMap, ColorAxis)
from ipywidgets import Label, Layout

def print_event(*args, **kwargs):
    print("test!")

x = np.linspace(-5, 5, 200)
y = np.linspace(-5, 5, 200)
X, Y = np.meshgrid(x, y)
color = np.cos(X**2 + Y**2)

x_sc, y_sc, col_sc = LinearScale(), LinearScale(), ColorScale(scheme='RdYlBu')
heat = HeatMap(x=x, y=y, color=color,
               scales={'x': x_sc, 'y': y_sc, 'color': col_sc})

# It doesn't matter which event to catch, none of them fires print_event
heat.on_hover(print_event)
heat.on_element_click(print_event)
heat.on_click(print_event)
heat.on_background_click(print_event)

ax_x = Axis(scale=x_sc)
ax_y = Axis(scale=y_sc, orientation='vertical')
ax_c = ColorAxis(scale=col_sc)
fig = Figure(marks=[heat], axes=[ax_x, ax_y, ax_c],
             title='Cosine',
             layout=Layout(width='650px', height='650px'),
             min_aspect_ratio=1, max_aspect_ratio=1, padding_y=0)

Do I miss something? Or is there another way to get the mouse position when a user clicks on a point in my heatmap?
I tried the solution from #973 but without success, no events were triggered.

Also stuck ...
Found this for GridHeatMap but it doesn't work, i.e. the callback is not triggered ...

# 4. Marks -- lets now re-do our heat map & add in some interactivity:
heat_map = bqplot.GridHeatMap(color = data,
                              scales = {'color': col_sc,
                                        'row': y_sc,
                                        'column': x_sc},
                              interactions = {'click': 'select'}, # make interactive on click of each box
                              anchor_style = {'fill':'blue'}, # to make our selection blue
                              selected_style = {'opacity': 1.0}, # make 100% opaque if box is selected
                              unselected_style = {'opacity': 0.8}) # make a little see-through if not

heat_map.observe(on_selected, 'selected')
def on_selected(change):
    print(change['owner'].selected)


Date/time string showing up in snippets when date constraint is applied

On the Search/Browse page, if a search is performed with a date constraint applied (via the sidebar), a date/time is shown as a snippet in many (possibly all) results. Only content body or title matches should be shown.
Note: This is likely related to the search-related issues documented in #304 and
https://github.com/marklogic/samplestack-internal/issues/179

I have a question for @laurelnaiad .  When I click on the dates, I see a date-ge and date-lt in the URL.  These are not used by the server, and I think they may be confusing the Search API.  Could we remove those?  Or is there something they're expected to do perhaps?

I just noticed this.  Do not be alarmed by the browser URLs. They are there for the browser's/user's purposes alone.
To see what the server gets you need to look at the AJAX requests (e.g. in DevTools).

(and yes, they're there because routing (what you see on the web page) and URLs are bound at the hip. In other words, it's part of the browser keeping track of what you're doing in the app and/or how the browser knows what you want to be doing in the app. This is a feature of the routing system in SPAs generally. In Samplestack, we happen to use the "ui-router" angular module to manage it.

I figure that out eventually, thanks for the clarification.

@grechaw is this issue resolved? is it still external? i thought snippets were in pretty good shape..

I have not verified that.  It's on today's list though as I've wrapped up tags feature.

per status meeting today - @grechaw to characterize whether its a server bug and whether fixable for 8.0-1.

Here's the behavior I've observed.  It's not a server bug, and acutally I don't think it's terrible for samplestack either but it could of course be modified.
Using preferred-matches (as we do) will use the specified elements for snippets if there are indeed matches in those elements... we use text and title as preferred matches.
If however a search matches other text, as it does with tag:xquery or resolved:true, then those matches will appear in snippets.  Since date ranges are matched too, it's possible for lastActivity date to be among the matches.  This happens when:  you search with NO BARE TERM, but include some other search criteria.  If dates are selected as part of the search, then lastActivityDate shows up in snippets.
These snippets could be filtered out in search response transform if you think they should be.

assigned to @popzip for prioritization and consideration.  LOE for a search-response transform fix to this is not high.

FWIW, from a UX perspective I would not expect (or want) metadata matches to show up as snippets. So if I type only a metadata term (such as "tag:foo"), I would not expect to see any snippets in the result list.

That makes sense to me @yawitz
These things can be stripped out I think by the search response transform.  I'll take the external label off here and we can see how this stacks up against other outstanding requests today.

We would need to have the server to parse the search string and decide whether or not there's free text in it. We chose not to do this long ago. What you're describing is an implication of that choice.

Well we can also use the path of the match in the snippet to remove things we don't want returned.  You can tell from the search response path attribute whether the JSON properties "tag" or "lastActivityDate" were matched.

I'm unclear how this issue is separate from the discussion/resolution reached in: https://github.com/marklogic/samplestack-internal/issues/179
We determined the scope for text search should be limited to: Title, Text (of question), Answer text, Comment text.
I made an erroneous 'therefore', but there is an AND that snippets should only display matching text found in the 4 fields within text search scope. I'm fine pushing to 8.0-2 but think we probably still need that lesson in search/snippets because I'm probably missing something here..

That's what I was looking for, the when not the whether.
I don't see it as a big blast radius change.
One think that we need to keep in mind, as I was reminded by @ehennum recently, is that it will be very valuable to have a list of things for which MarkLogic capabilities didn't seem to fix OOTB, so that we could drive some feature development server-side.
This is an example of server functionality that didn't really meet expectations, and/or we picked the wrong data model to do it as well as we'd wanted.
I'll take a look at the response transform and see about removing these pesky matches!

https://github.com/marklogic/samplestack-internal/issues/179#issuecomment-66164173
There is Mitch's assertion about snippets in particular

Okay that all sounds good. Not sure if directly related to this issue but I'd also like to get documented in plain english how the relevance tuning works here (relative priority/weighting, etc).

OK I've got the search transform modified, looks like it addresses the issue.

Date/time string not showing up in snippets when date constraint is applied


Throttling mixed with closed workload model results in increased throughput

Gatling for Java, version 3.7.6.
There is nothing that prevents me from compiling or executing a simulation with both closed workload model and throttling. Documentation says (see text in bold):

What throttle do is that it sets an upper limit on your throughput that would normally be generated with the scenarios and the injection profiles you’ve defined so that you can shape it the way you want. It’s only capable of reducing the normal throughput, not increase it.

While it seems to work this way for open model, it is no longer the case for the closed model. If I run my closed simulation without throttle, check the rps and then execute it again with throttle set to above what was the rps previously, it will bump up the rps.
If I shouldn't be able to mix throttle and closed model, would it be possible to implement a (runtime?) check for that?
If I should be able to mix throttle and closed model, can we have the documentation updated, to reflect the actual behaviour?

Hi,
Could you please share a reproducer as requested in the issue template?

No throttle (avg 10 rps) vs throttle (avg 20 rps). And here is the diff.

Have you checked the mention in the doc:

Enabling throttle disables pauses so that it can take over throughput definition.

So the sentence "It’s only capable of reducing the normal throughput, not increase it." is to be understood as "It’s only capable of reducing the normal throughput with pauses disabled, not increase it."


Fixed the images under the projects section.

Fixed.
The images under the projects section is not horizontally center aligned on phone. It's a bit more inclined towards the right.
Just change the properties of CSS

Hey!
Thanks for submitting a PR but this issue was already assigned to someone else and has been closed.


docs(sdk): update sdk version in the example to 1.0.0

Codecov Report
Patch and project coverage have no change.

Comparison is base (a2edec6) 90.06% compared to head (298218f) 90.06%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #399   +/-   ##
=======================================
  Coverage   90.06%   90.06%
=======================================
  Files          76       76
  Lines        2748     2748
=======================================
  Hits         2475     2475
  Misses        189      189
  Partials       84       84

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

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


update CIs to Go 1.11

This PR removes Go 1.9.x from the CIs, and runs the jobs on 1.11rc1 instead.
In order to make the linter work, a few modifications were necessary:

goimports (which checks formatting, among others) works different in Go 1.10 and Go 1.11. Solution: only run the linters in Go 1.11.
megacheck complains about the http.CloseNotifier being deprecated. We implement the interface, but not the functionality. Solution: Move the implementation check to a separate file, and exclude it from linting.

@lucas-clemente: In the README, we say that we're supporting Go 1.9. While this is still true at the moment, we're not running any CI builds on 1.9, so support might break silently at some time. I don't think we'll use any of the new language feature of 1.10 and 1.11, so I think this is ok. wdyt?

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1489   +/-   ##
=======================================
  Coverage   89.12%   89.12%
=======================================
  Files         121      121
  Lines        8449     8449
=======================================
  Hits         7530     7530
  Misses        626      626
  Partials      293      293

Impacted Files
Coverage Δ

h2quic/response_writer.go
83.67% <ø> (ø)
:arrow_up:

packet_handler_map.go
92.04% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Correct measure_strehl NameError

A report via Kathryn St. Laurent: the code for utils.measure_strehl has rotted a bit. Shouldn't be a difficult fix.
[ssbdev-osx] [stlaurent:Work/NIRISS NRM/Code] kstlaurent% python Make_Models.py
Traceback (most recent call last):
  File "Make_Models.py", line 214, in <module>
    main()
  File "Make_Models.py", line 200, in main
    webbpsf_maker(pup,OPD)
  File "Make_Models.py", line 124, in webbpsf_maker
    strehl = poppy.utils.measure_strehl(HDUlist_or_filename=LOC+PSF_FILE%(pup,OPD,fltr), ext=0, slice=0, center=None, display=True, verbose=True, cache_perfect=False)
  File "/usr/stsci/ssbdev/python/lib/python2.7/site-packages/poppy/utils.py", line 866, in measure_strehl
    inst = Instrument(header['INSTRUME'])
NameError: global name 'Instrument' is not defined

Hmm, this is actually not going to be as simple as we might like. The measure_strehl function was originally written in the context of webbpsf prior to the webbpsf/poppy split into separate packages. It's actually trying to call the webbpsf.Instrument function, which returns a suitable instrument subclass instance if given a string name like "NIRSpec". That's very different from what's now become the Instrument parent class in poppy.
In the more generic case of poppy now, I don't see any feasible way for the measure_strehl function to automatically infer the correct Instrument class instance for computing the perfect PSF for deriving a Strehl ratio.
Perhaps the best fix here is to move measure_strehl to webbpsf? And explicitly not try to tackle the much harder problem of providing a general Strehl calculator for arbitrary instruments in poppy.

Ah yes.. I sometimes forget which repository things live in! Definitely was thinking in terms of a WebbPSF-specific solution.

Code removed from poppy; present in webbpsf.


Dataset not connecting properly via URL

Context
When I was executing the smoke test 1, I copied the dataset URL in step 8 and it didn't upload via our UI, but I was able to download the file (to finder) and then import it via drag and drop in my dataset page.
Process

On step 8 of Smoke Test 1, copy the dataset URL.
I went into my Builder account, and clicked on create a new map --> Connect Dataset
I pasted the URL into the field and pressed 'submit'
It would not connect the dataset.  I was able to download the file (in my browser) and then upload it by dragging and dropping it into my dataset page.

Expected result
I expected the file to import the same way via either import method.
Current result

This has been solved for now. An stale table was created by another import process that made this one to fail. Thanks @iriberri for her help investigating this. She is investigating the root cause here: https://github.com/CartoDB/cartodb/issues/8785


Update POMs and .gitignore

Should close #17

Hi! Thanks for your PR!
This changes will break backward compatibility, because java 1.6 is still declared as supported in README, so I can not accept this PR right now. I think it is would be possible when MAJOR, or maybe  MINOR version will changed.


Some little errors in preparation of conceptual-captions dataset

When I wanted to extract img feature from conceptual-captions following the instructions, I found some errors during inference with this file and it took me sometime to debug and I'd like to share with you:

Firstly, the calling script should be:

python ./tools/generate_tsv_v2.py --gpu 0,1,2,3,4,5,6,7 --cfg experiments/cfgs/faster_rcnn_end2end_resnet.yml --def models/vg/ResNet-101/faster_rcnn_end2end_final/test.prototxt --net data/faster_rcnn_models/resnet101_faster_rcnn_final.caffemodel --split conceptual_captions_train --data_root {Conceptual_Captions_Root} --out {Conceptual_Captions_Root}/train_frcnn/

A little mistake in --def params

Secondly, in Line46 and Line54, should be:

with open(os.path.join(data_root, 'utils/train.json')) as f:  #Line46
with open(os.path.join(data_root, 'utils/val.json')) as f:  #Line54

Thirdly, in Line67, should be:

zip_image = ziphelper.imread(str("/".join(data_root, im_file)))

Fourthly, in Line142, we need another params:

def generate_tsv(gpu_id, prototxt, weights, image_ids, data_root, outfolder):

And correspondly, in Line170, the same problem:
json.dump(get_detections_from_im(net, im_file, image_id, ziphelper, data_root), f)

Really thank you for your sharing of the code!

Thanks for your feedback! Really sorry that I don't carefully check this part. I would make an update or would you like to create a PR? Thanks again for your great work!

Sure. But to be honest, most of the mistakes occur in another repo, I will just create a PR in that repo. Is that ok? Thank you for your reply!

Sure. Thanks!

I have already created a pr in that repo and you can merge it for better usage.

@weiyx16 I just found another mistake about max boxes number in the repo. You can refer to this issue for details.

@weiyx16 I just found another mistake about max boxes number in the repo. You can refer to this issue for details.

Since for the first time to do the reproduce, I used 36 bbox, so I can report another interesting ablation.
For RefCOCO+ Detected Regions val,
in src paper:

precomputed 100 box and half ep: 70.7;
finetune 100 box and half ep: 71.1;
finetune 100 box and full ep 71.6;

in my setting:

precomputed 36 box and full ep: 71.56.

It seems that in this task, if you add ep to src setting, the gap between different bbox or precomputed or not is really small.


HelloWorld!! In Android

What the program do ?
Hello World !!!!
In what programming language it is written?
Android

This pull request exceeds the max deletion limit. Please fix it and reopen


How to alter getQueryName and getQueryNameMany?

Hi @MrHertal !
I realized in latest amplify it generates queries like: dataPointsByMetricID instead of listDatapointsByMetricId which is generated via  getQueryName and getQueryNameMany functions.
Although, there is no way to alter those functions, and DataProvider is not exported nor its parts.
There are two options, which might be helpful:

Make DataProvider customizable including getQueryName
Update getQueryName according to recent updates

Also, I would suggest not using getQueryName and similar functions as class methods preferring simple functions.

After some digging, I realized the following issues with the current approach to query name generation.
First, of all, I do believe the assumption of capitalizing and joining targets, sources, and resources is error-prone.
Since, the idea of generation hundreds of GraphQL queries, provided by amplify-cli is great and it is a subject of constant change, we need to have the ability to override behavior in this library. Otherwise, we had to copy the code of providers folder (thanks it's in TS) and modify it.
Also, the method getQueryNameMany trims the last two letters, and adds Id at the end. Which is, probably, was right in your case, but is wrong in mine. I have a query, ended with ID (both letters uppercased)

So, I came up with the following solution:

I copied the providers folder, kept only buildDataProvider and AdminQueries.ts, Filter.ts, Pagination.ts;
Created utils.ts file;
Modified getQueryName and getQueryNameMany public methods;

// DataProvider.ts

  public getQueryName(operation: string, resource: string): string {
    const pluralOperations = ["list"];

    if (pluralOperations.includes(operation)) {
      return `${operation}${capitalize(resource)}`;
    }
    // else singular operations ["create", "delete", "get", "update"]
    const singularResource = depluralize(resource);
    return `${operation}${capitalize(singularResource)}`;
  }

  public getQueryNameMany(
    operation: string,
    resource: string,
    target: string
  ): string {
    return `${capitalize(resource)}By${capitalize(target)}`;
  }

export const capitalize = (string: string): string => {
  return `${string[0].toUpperCase()}${string.slice(1)}`;
};

export const depluralize = (string: string): string => {
  if (string.slice(-1) === "s") {
    return string.slice(0, -1);
  }
  return string;
};


Identify tables supported in production. Provide schema and examples.

https://cockroachlabs.atlassian.net/browse/DOC-2076
https://cockroachlabs.atlassian.net/browse/DOC-2077

This change is

@kevin-v-ngo, @Azhng I think I addressed everything for the statistics table. PTAL.


There is no way to set per-environment indexes

We have different pip mirror urls (both public and private) depending on environments. Our private mirror is password protected. It would be nice to be able to provide global source configuration, without having to commit urls into all of the repositories, and also avoid having to store passwords in the repo (or enter them every time you are updating dependencies).
Pip does that via .pip/pip.conf file, where you can have [global] section with your per-environment configuration which makes work that Ops have to do a lot easier.
This also would be useful in environments where one wants to prevent global pypi from being used (to avoid depending on resources external to the datacenter in the build process), without modifying code being built/installed.

I would think that determinism is ensured by having hashes in the Pipfile, not by having same source for the tarball each time. Sources can disappear or go down. Do you consider Debian build system to be non-deterministic because debian/control file does not hardcode the apt repository to download build dependencies from?


[Watchbox] Extractor Error

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2018.09.01. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[X] I've verified and I assure that I'm running youtube-dl 2018.09.01

Before submitting an issue make sure you have:

[X] At least skimmed through the README, most notably the FAQ and BUGS sections
[X] Searched the bugtracker for similar issues including closed ones
[X] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

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

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-f', u'best', u'--ffmpeg-location', u'/var/packages/ffmpeg/target/bin/', u'--all-subs', u'--sub-format', u'srt', u'--embed-subs', u'--download-archive', u'ARCHIVE', u'-v', u'https://www.watchbox.de/serien/gintama-15859/']
[debug] Encodings: locale UTF-8, fs UTF-8, out None, pref UTF-8
[debug] youtube-dl version 2018.09.01
[debug] Python version 2.7.12 (CPython) - Linux-4.4.59+-x86_64-with-glibc2.2.5
[debug] exe versions: ffmpeg 3.4.1, ffprobe 3.4.1
[debug] Proxy map: {}
[WatchBox] 15859: Downloading webpage
[WatchBox] 15859: Downloading JSON metadata
ERROR: An extractor error has occurred. (caused by KeyError(u'title',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/youtube_dl/extractor/common.py", line 502, in extract
    ie_result = self._real_extract(url)
  File "/usr/lib/python2.7/site-packages/youtube_dl/extractor/watchbox.py", line 98, in _real_extract
    compat_str) or source['title']
KeyError: u'title'
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 792, in extract_info
    ie_result = ie.extract(url)
  File "/usr/lib/python2.7/site-packages/youtube_dl/extractor/common.py", line 515, in extract
    raise ExtractorError('An extractor error has occurred.', cause=e)
ExtractorError: An extractor error has occurred. (caused by KeyError(u'title',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description of your issue, suggested solution and other information
As you can see, this error occurres without me doing anything. The following url was used:
https://www.watchbox.de/serien/gintama-15859/

Playlists are not supported.


Don't add null string to stacktrace

should be fixed with new stacktrace implementation (add code example if it still happens)


add bevy dynamic linking project test

Conceptualising what more involved testing might look like, probably don't merge this as is :) ?
Runs with cargo test run_bevy_dynamic

Tests using wild through cargo (arguably the most common scenario)
Tests with cargo dependencies
This particular test is with a dependency that relies upon dynamic linking
Tests the actual program can run, this example currently compiles using dynamic linking, but errors when running

I'm not sure if bigger tests like this should live in the repo or not. This example is small, but if we wanted to add tests for something like ripgrep it seems clumsy to bring that in.
Bigger tests could live in a separate repo that is dedicated to integration testing wild with larger projects. Then it wouldn't feel as hacky to have lots of git submodules. It would also make it more straight forward to develop integration testing tooling for running lots of cargo compiles.

I think you're probably right that a separate repository would make sense - especially with git submodules.
Another thought is that I'd be somewhat tempted to leave the compilation directories in-place, then just delete all executables and .so files from the target directory before rerunning. That'd probably save a good bit of time by avoiding the need to rerun rustc.
At a larger scale, I could imagine eventually doing something like a crater run and just bulk downloading lots of crates from crates.io, then running their tests with wild set at the linker.


Add onHighlight prop to fire when row highlighted

This allows the user to tap into Autosuggest.onSuggestionHighlighted.

I updated the snapshots in 1b17afa. Am I missing a step?

@mminer I added a storybook story, updated the failing snapshots. Otherwise this looks good.


opt.diff

PR Details

Description

Related Issue

Motivation and Context

How Has This Been Tested

Types of changes

[ ] Docs change / refactoring / dependency upgrade
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

This optimize the code, simplify unit test and drawing object position calculation


Non-present FRUs are being reported as faulted.

In our IPMI code for OpenBMC, we observed that the hostboot code is setting the fault bit in the FRU sensor for every non-present device.  For DIMM slots that are not populated and for processors with partial-good records, this is probably not the best option.  Can this be changed in the host firmware without breaking other BMC implementations?
See openbmc/openbmc#92.

I'm a little confused here.  What is meant by "fault bit" here?  We do send down information for every part, even the non-present ones, but that data should indicate "not present".  We need to send down something to handle the case where the previous boot had detected the part and we need to clear the old status out.  (Adding @wghoffa and @rjknight to the discussion)

The ipmi fru status sensor has multiple "offsets" asserted. Non-present and non-functional. Hostboot has a simple translation from hwas bits to ipmi bits. 1 to 1 mapping. Instead we should map non-present (plus non-functional) hwas to just non-present ipmi.
Patrick
Sent from my iPhone

On Jan 11, 2016, at 2:36 PM, Dan<EMAIL_ADDRESS>wrote:
I'm a little confused here. What is meant by "fault bit" here? We do send down information for every part, even the non-present ones, but that data should indicate "not present". We need to send down something to handle the case where the previous boot had detected the part and we need to clear the old status out. (Adding @wghoffa and @rjknight to the discussion)
—
Reply to this email directly or view it on GitHub.

The current mappings are

States
IPMI bits

NOT_PRESENT
turn off the present bit, turn on the disabled bit

PRESENT
turn on the present bit

FUNCTIONAL
turn off the disabled bit

PRESENT_FUNCTIONAL
turn on the present bit, turn off the disabled bit

PRESENT_NONFUNCTIONAL
turn on the present bit, turn on the disabled bit

NON_FUNCTIONAL
turn on the disabled bit

Sounds like the suggestion is to update the NOT_PRESENT to turn off the present bit and the disabled bit?

Yes, exactly.
Patrick
Sent from my iPhone

On Jan 12, 2016, at 11:24 AM, Jamie Knight<EMAIL_ADDRESS>wrote:
The current mappings are
States	IPMI bits
NOT_PRESENT	turn off the present bit, turn on the disabled bit
PRESENT	turn on the present bit
FUNCTIONAL	turn off the disabled bit
PRESENT_FUNCTIONAL	turn on the present bit, turn off the disabled bit
PRESENT_NONFUNCTIONAL	turn on the present bit, turn on the disabled bit
NON_FUNCTIONAL	turn on the disabled bit
Sounds like the suggestion is to update the NOT_PRESENT to turn off the present bit and the disabled bit?
—
Reply to this email directly or view it on GitHub.

I'm checking with our service team to see if there are any legacy support issues, so far this request seems reasonable.

There were no objections to this change so have at it.


Ability to copy current & history results

Description
I want to copy history expressions and results to use in current expression. But as I clicked history results and back, the current expression was emptied.

Expected

Do not clear current expression
Add context menus to history results for quick copy results
Add a way to copy the current result

fixed: undetermined equation not to be lost.
https://github.com/shapoco/calctus/releases/tag/v0.0.8362.27168-alpha


Extension stopped working for fantasy basketball

I haven't looked into the why, but I suspect it has something to do with the merge from a few days ago.  The "auto (week)" and "auto (day)" buttons have disappeared, the hot keys don't work (there is an error in the console), and the extension name changed to ESPN NHL Fantasy Team Auto Setup

Yeah, my bad. I accidentally uploaded the upcoming NHL version of the extension as the existing NBA extension because of a typo in my build script. 🤦 Fixed version is coming very soon.

Version 3.0.1 should fix this. Sorry for the inconvenience.


Cannot read properties of undefined (reading 'includes')

Hello team,
I'm trying to open a sar file generated by SUSE supportconfig (https://www.suse.com/c/basic-server-health-check-supportconfig/) but I got error "Cannot read properties of undefined (reading 'includes')"
Upon inspecting the sar file, it seems normal but some of the metrics seems to have extra columns, not sure if that affects the behavior of the tool.
I can provide more information if needed.

Hey! Thanks for reporting this! What is the version of SLES?

Version is SLES 15 SP3, Kernel is 5.3.18-1503<IP_ADDRESS>

Thanks! Let me do some testing, I recall having issues with SLES 15 files. Thanks again for reporting this

Hey @v-fcapra  sorry for the super late reply, I tried a couple of SLES 15 sar files (SP2 and SP3) and both seem to work. Curious as to what is the version for the file you're trying to load?
Thanks!

I was able to identify the issue, the problem seems to be missing disk section on certain SLES sar files, this would crash the app instead of simply showing a "no data found".
Fixed on #43