Clean up tuf-prototype branch

This removes files related to prototype 1 from the tuf-prototype branch

I believe this can be done by re-basing, as opposed to deleting.

I believe this can be done by re-basing, as opposed to deleting.

I believe this can be done by re-basing, as opposed to deleting.

Agreed, that's a bit cleaner. I rebased in this pr, but I don't know if that'll update the history for the branch.

I believe this can be done by re-basing, as opposed to deleting.

Agreed, that's a bit cleaner. I rebased in this pr, but I don't know if that'll update the history for the branch.

If you look at the resultant state of the PR: https://github.com/notaryproject/nv2/tree/a9824cf0aec79859a3269f9ffd43ac8511a48dee it looks clean, so that's goodness.
I would suggest updating the root readme to reflect a summary as we've done in https://github.com/notaryproject/nv2/blob/prototype-1/README.md
If you can articulate the content flow between registries, as pictured here, it would be helpful to understand how TUF would work. The ability to move signatures with the content is key.

If you look at the resultant state of the PR: https://github.com/notaryproject/nv2/tree/a9824cf0aec79859a3269f9ffd43ac8511a48dee it looks clean, so that's goodness.
I would suggest updating the root readme to reflect a summary as we've done in https://github.com/notaryproject/nv2/blob/prototype-1/README.md
If you can articulate the content flow between registries, as pictured here, it would be helpful to understand how TUF would work. The ability to move signatures with the content is key.

I would suggest updating the root readme to reflect a summary as we've done in https://github.com/notaryproject/nv2/blob/prototype-1/README.md
If you can articulate the content flow between registries, as pictured here, it would be helpful to understand how TUF would work. The ability to move signatures with the content is key.

I wrote a quick description of the content flow in #34.

I would suggest updating the root readme to reflect a summary as we've done in https://github.com/notaryproject/nv2/blob/prototype-1/README.md
If you can articulate the content flow between registries, as pictured here, it would be helpful to understand how TUF would work. The ability to move signatures with the content is key.

I wrote a quick description of the content flow in #34.

This didn't remove the extra files. It looks like I have to force push my local branch directly to the GitHub branch


Use mjs for index

change: entry point to index.mjs
remove: icons and update README on how to import them
fix: documents reference causing error for svelte-kit SSR

Theming and typography and material icons are still not working properly.

closing this as it is no longer a major version change. Will reopen another PR with same changes but correct commit message.


React Warning: componentWillReceiveProps has been renamed, and is not recommended for use

After upgrading React to v16.9.0, I started getting this warning in the console:

Warning: componentWillReceiveProps has been renamed, and is not recommended for use.
See https://fb.me/react-async-component-lifecycle-hooks for details.

Move data fetching code or side effects to componentDidUpdate.
If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://fb.me/react-derived-state
Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 17.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run npx react-codemod rename-unsafe-lifecycles in your project source folder.

Please update the following components: DataCell

It would be nice if this was addressed before React 17.x I guess.
Many thanks!

Wouldn't it be enough to follow the third advice for now:

Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps [...]

I would still keep this ticket open though.

This is fixed with this merged PR: https://github.com/nadbm/react-datasheet/pull/178

Many thanks @nadbm!


Baichuan model encounters an error when use_inflight_batching.

When I was converting the Bai Chuan model and wanted to enable inflight batching, an error occurred. The error message is as follows:
[10/30/2023-09:28:34] [TRT] [W] Unused Input: position_ids
[10/30/2023-09:28:34] [TRT] [W] [RemoveDeadLayers] Input Tensor position_ids is unused or used only at compile-time, but is not being removed.
[10/30/2023-09:28:34] [TRT] [I] Graph optimization time: 0.0630199 seconds.
[10/30/2023-09:28:34] [TRT] [I] [MemUsageChange] Init cuBLAS/cuBLASLt: CPU +0, GPU +8, now: CPU 15556, GPU 1786 (MiB)
[10/30/2023-09:28:34] [TRT] [I] [MemUsageChange] Init cuDNN: CPU +2, GPU +10, now: CPU 15558, GPU 1796 (MiB)
[10/30/2023-09:28:34] [TRT] [I] Global timing cache in use. Profiling results in this builder pass will be stored.
[10/30/2023-09:28:35] [TRT] [E] 9: Skipping tactic0x0000000000000000 due to exception PLUGIN_V2 operation not supported within this graph.
[10/30/2023-09:28:36] [TRT] [E] 10: Could not find any implementation for node {ForeignNode[BaichuanForCausalLM/layers/0/attention/PLUGIN_V2_GPTAttention_0]}.
[10/30/2023-09:28:36] [TRT] [E] 10: [optimizer.cpp::computeCosts::4040] Error Code 10: Internal Error (Could not find any implementation for node {ForeignNode[BaichuanForCausalLM/layers/0/attention/PLUGIN_V2_GPTAttention_0]}.)
[10/30/2023-09:28:36] [TRT-LLM] [E] Engine building failed, please check the error log.
[10/30/2023-09:28:36] [TRT-LLM] [I] Config saved to /home/kas/models/word_layout/baichuang/lora_v10_merge_2/trt_engines/fp16/1-gpu-page-kv-cache/config.json.
Traceback (most recent call last):
File "/home/kas/kas_workspace/zhengweining/TensorRT-LLM/examples/baichuan/build.py", line 477, in
build(0, args)
File "/home/kas/kas_workspace/zhengweining/TensorRT-LLM/examples/baichuan/build.py", line 449, in build
assert engine is not None, f'Failed to build engine for rank {cur_rank}'
AssertionError: Failed to build engine for rank 0
Could you please let me know how to resolve this issue?

Hi @viningz ,
Can you share the command-line you used to build the engine, please?
Thanks,
Julien

Hi @viningz ,
Can you share the command-line you used to build the engine, please?
Thanks, Julien

Thank you very much for your reply! The input command line I have is:
python build.py --model_version v1_7b
--model_dir baichuan-inc/Baichuan-13B-Chat
--dtype float16
--use_gemm_plugin float16
--use_gpt_attention_plugin float16
--output_dir ./tmp/baichuan_v1_13b/trt_engines/fp16/1-gpu/ --use_inflight_batching

Hi @viningz ,
Can you share the command-line you used to build the engine, please?
Thanks, Julien

When I don't use the --use_inflight_batching option, the converted model works fine.

same issue for llama_7b

Could you follow this document and try again on latest main branch?

do u still have further issue or question now? If not, we'll close it soon.


[doc] Enhance documentation about performance log directories

Codecov Report

Merging #1710 (a5cf72f) into master (294ec08) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1710   +/-   ##
=======================================
  Coverage   87.31%   87.31%
=======================================
  Files          46       46
  Lines        7640     7640
=======================================
  Hits         6671     6671
  Misses        969      969

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 294ec08...a5cf72f. Read the comment docs.

Codecov Report

Merging #1710 (a5cf72f) into master (294ec08) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1710   +/-   ##
=======================================
  Coverage   87.31%   87.31%
=======================================
  Files          46       46
  Lines        7640     7640
=======================================
  Hits         6671     6671
  Misses        969      969

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 294ec08...a5cf72f. Read the comment docs.


Issue with PIP

🐛 Bug
Hi, pip install sb3-contrib is giving this error:
ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: '/home/kr/miniconda3/envs/venv/lib/python3.7/site-packages/numpy-1.21.6.dist-info/METADATA'
Any suggestions to solve this?
To Reproduce
No response
Relevant log output / Error message
No response
System Info
No response
Checklist

[X] I have checked that there is no similar issue in the repo
[X] I have read the documentation
[X] I have provided a minimal working example to reproduce the bug
[X] I've used the markdown code blocks for both code and stack traces.

Ok just had to remove the folder named numpy-1.21.6.dist-info
PIP is working fine now :)


build(gradle): fix git hooks installation on Windows

On Windows symlinking directories requires elevated permission.

Thanks for your contribution!
I think it's a special case. So let's write OS-specific logic instead of doing copy for all systems. Symlinking is much better than copying, it never makes Gradle miss caches.
I'll do it later.

Might indeed be better, I can quickly push a fix, should be trivial.


HACS (no Issue)

Hey, maybe i´m completly stupid but the description says "Lovelace Horizon Card" is on HACS - but where ? I dont find it ?
Not under SunCard or Lovelace Horizon Card...

Hello, I was unable to find it too so I've added it in the custom repo in HACS.

Same question, I guess it's being prepared for first lauch

It's still not on the HACS default repos list (but will be soon). For the time being you need to add it as a custom repo in HACS.

Thank you - maybe you should remove then the installation via HACS if it not available for now. :) Thanks for the Info.

@whyisthisbroken check the new README in my open PR :)


How to easily update a chain of internal projects?

I have a tree of internal projects that use each other via .nupkg files. I increase the version number of some Tools library. How do I then update the .locked version of this package in all other solutions? There is no way to do it other than calling paket update manually on each solution, right?

If you would like to update all solution simultaneously you probably want to have simple .dependency and .lock file for all solutions. Why do you separate them?

Because a solution is a self-contained unit. It would be ridiculous to have the Tools library in a shared .dependencies used by Tools.sln.

To approach this problem from another point of view.
I have the projects (and dependencies):
A
B (A)
C (A, B)
Say, currently they are all 1.0.0 and reference each other via some feed/folder with .nupkg and have that versions in their .dependencies and .lock files.
Now, I introduce a CI strategy. I change AssemblyInformationalVersion in TeamCity on each build, so A builds as version 1.0.0-pre001. What should I do with B and C?
I can think of two approaches.

Do not submit the .lock file to the source control. Do paket install each time instead of paket restore.
Submit the .lock file, call paket update <groupname>. This requires .lock file to be checked out (from Perforce), which is ugly.

I can't understand how to make it all work together, would be greatful for any comments.

Do B and C always have to automatically use the newest version of A, meaning you do not actually want to control the versions at all (thus no need for repeatable builds)? Or is this just one specific CI build e.g. to detect potential conflicts early on?

On 1) wouldn't you then have to check out the project files, since paket install may affect them?

since paket install may affect them?

Yes, I also just realized the project files are always affected, even if no changes are made.

Do B and C always have to automatically use the newest version of A

Well, I think they can reference A as ~> 2.0, for example. So if I also have a local folder into which I build a local 2.0.0 version, that way paket install/update will grab that local version instead of anything prerelease in the global feed.
It comes down to what to do with paket.lock or project.csproj files. Maybe if the project files are not changed, they should not be overwritten at all?

Just to understand your scenario: If you do two builds form exactly the same source code revision of B you would expect two different results/outputs if a new version of A has been built in between (without touching A at all)?

@cdrnet So basically, after https://github.com/fsprojects/Paket/issues/1471 and https://github.com/fsprojects/Paket/commit/c6bfd752ddac8531782f2557fbeb69101c63fc90 project files are always touched when doing paket install in abscence of paket.lock, even if nothing was changed.
Can it be covered with some optional flag? Maybe reuse the same --touch-affected-refs?
To reiterate, what i want is to get the latest available versions on each build without touching/updating/checking out anything.

@forki Can you please explain? Now, after https://github.com/fsprojects/Paket/pull/1493, without "forceTouch" paket install works as before, does not update the .csproj files?

:(

Yes that's what @cdrnet did right?

@forki, no.
https://github.com/fsprojects/Paket/releases/tag/2.50.9 (before https://github.com/fsprojects/Paket/issues/1471 / https://github.com/fsprojects/Paket/pull/1485) did not update .csproj files on clean install if they were not changed. So in abscence of packages and paket.lock it was possible to restore all packages by doing paket install.
https://github.com/fsprojects/Paket/releases/tag/2.50.10 (with https://github.com/fsprojects/Paket/issues/1471 / https://github.com/fsprojects/Paket/pull/1485) always updates project files. This causes issues when working with Perforce because all files are read-only by default.
The latest https://github.com/fsprojects/Paket/releases/tag/2.54.0 (with https://github.com/fsprojects/Paket/pull/1493) claims "with forceTouch to only modify the last write time without content if unchanged". But it doesn't matter, it fails on read-only files anyway.
I suggest to make it not change anything in the .csproj file if there are no changes and forceTouch is not specified. The way it was before https://github.com/fsprojects/Paket/issues/1471 / https://github.com/fsprojects/Paket/pull/1485.

I suggest to make it not change anything in the .csproj file if there are no changes and forceTouch is not specified

yes that's the goal

Currently on restore, "forceTouch" is disabled by default and can be enabled with --touch-affected-refs. For install it is always enabled. Maybe we could add an argument to optionally disable it on install (but keep it enabled by default)?

tbh I think it should not touch if nothing changes.

So what about doing it the same way as for restore, i.e. disabling forceTouch by default on install, add etc but enable it optionally with --touch-affected-refs?

yes that's what I meant --touch-affected-refs should work for paket and install. Default should be: don't touch if you don't need

That would work for me. The change should be straight forward, I can provide a PR.

thanks that would awesome!
2016-03-22 16:02 GMT+01:00 Christoph Ruegg<EMAIL_ADDRESS>
That would work for me. The change should be straight forward, I can
provide a PR.
—
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub
https://github.com/fsprojects/Paket/issues/1484#issuecomment-199855497

@cdrnet Christoph, I don't want to be bragging, but is there any chance this can be implemented?

@orloffm Ah right; I've scheduled some time later today to put the PR together

@orloffm does v2.58.2 resolve your issues?

@cdrnet Yes. Amazing, thank you very much!


Adding examples

looks good
Maybe in README we can add some explanation/links of profiles and some notes like dont use parallelism for svc tests
We can also add another example file where it just shows our defaults (64,1024... tcp,udp ...3 samples etc)


can't reproduce preview configuration

Neovim version (nvim -v | head -n1)
NVIM v0.10.0
Operating system/version
Linux 6.9.3-arch1-1
How to reproduce the issue
cat mini.lua
vim.o.foldcolumn = "1" -- '0' is not bad
vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value
vim.o.foldlevelstart = 99
vim.o.foldenable = true
vim.o.fillchars = [[fold: ,foldopen:-,foldsep:│,foldclose:+]]

nvim --clean +'so mini.lua'

select all lines

zf
za

select lines 2..4

zf
za

Expected behavior
smth like this, without weird numbers

Actual behavior

in #4 same problem, but all answers doesn't have this

https://github.com/kevinhwang91/nvim-ufo/issues/4#issuecomment-1500925173


Add async methods

Is there a way to run multiple requests in parallel?
It would be really nice to be able to execute requests asynchronously, e.g.
future = Query('MyKind').fetch_async()
result = future.get_result()

NDB has a great support for async operations using an event loop.
Is it something you guys might consider for future versions of the client?

I'm closing this and folding into #557

I don't understand, why are you tying these (sync=datastore, async=ndb) together?
NDB has much more than an async API. I've traditionally used NDB synchronously, mainly for its ORM and memcaching.
The datastore sync API, meant it was unfortunately difficult to migrate this query:
CityTable.query(CityTable.city.IN(city_names)).fetch(100)

Because it would need to be rewritten as this (slower) serialized operation:
results = []
for city in city_names:
  q = client.query(kind='CityTable')
  q.add_filter('city', '=', city)
  results.extend(q.fetch(100))

Are you suggesting that NDB (along with the baggage of its ORM, memcaching-that-doesnt-work-outside-GAE, and sometimes-problematic eventloop) will be the only way to perform these parallelized lookups?


Update Plugin.php unhide snippets form area

unhide snippets form area
Retrieve snippets in backend pages

This would break the plugin when using TailwindUI, what is the underlying issue that's causing the problem?

In the latest release it looks like the data-content-id attribute value was changed from snippet to snippets and that broke the snippets section and are no longer visible.
https://github.com/wintercms/wn-pages-plugin/compare/v2.1.2...v2.1.3#diff-4cac0956d5e7331650b7a41c11f104d7f902592225b5afadb3739fa5d4a86e3aR23

I can confirm this PR fixes the issue by updating the sidebar nav item link to match the most recent change that was made.

@ericp-mrel right, but it was changed from snippet to snippets because the exact same issue was occurring when using the Winter.TailwindUI plugin with this plugin except in reverse. Are you able to dig a bit further into what's causing the issue between the stock backend skin and the Tailwind UI skin that's causing it to break in one and work in the other?

It looks like problem is coming from the TailwindUI plugin where it's setting the data-menu-item attribute using a different value / source compared to the standard skin. It's setting the value of the data-menu-item from the sideMenu snippets array key rather than using the attributes array values.

Here's the default skin:

Thanks for digging into this issue that deeply @ericp-mrel, that was very helpful! And it shows that this PR actually fixes it for both the standard and the TailwindUI skin, so that's awesome too :)
We should probably still improve how the attribute is generated (I prefer the approach in the TailwindUI plugin where it's automatically generated instead of manually specified in the menu item definition), but that's an issue for another day.


Tutorial command is wrong for configuring function app settings

Thanks for the great tutorial. There is a small mistake in the 3rd command in the section Configure the function app in the Azure CLI commands with Node.js v10 SDK. The --settings parameter is shown with multiple settings encased in double quotes (") which makes all the settings a single string. The quotes should be removed to have the settings correctly parsed as multiple space separated values.
Current (wrong):
az functionapp config appsettings set --name $functionapp --resource-group $resourceGroupName --settings "FUNCTIONS_EXTENSION_VERSION=~2 BLOB_CONTAINER_NAME=thumbnails AZURE_STORAGE_ACCOUNT_NAME=$blobStorageAccount AZURE_STORAGE_ACCOUNT_ACCESS_KEY=$blobStorageAccountKey AZURE_STORAGE_CONNECTION_STRING=$storageConnectionString FUNCTIONS_WORKER_RUNTIME=node"
Should be:
az functionapp config appsettings set --name $functionapp --resource-group $resourceGroupName --settings FUNCTIONS_EXTENSION_VERSION=~2 BLOB_CONTAINER_NAME=thumbnails AZURE_STORAGE_ACCOUNT_NAME=$blobStorageAccount AZURE_STORAGE_ACCOUNT_ACCESS_KEY=$blobStorageAccountKey AZURE_STORAGE_CONNECTION_STRING=$storageConnectionString FUNCTIONS_WORKER_RUNTIME=node
URL with parameters:
https://docs.microsoft.com/en-us/azure/event-grid/resize-images-on-storage-blob-upload-event?toc=%2Fazure%2Fazure-functions%2Ftoc.json&tabs=nodejsv10%2Cazure-cli
regards
Marcus
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: cad5909e-e1c6-aa8e-82f1-f2851c1caced
Version Independent ID: 42292330-aa69-9df0-5bd7-e07c9daed995
Content: Tutorial: Use Azure Event Grid to automate resizing uploaded images - Azure Event Grid
Content Source: articles/event-grid/resize-images-on-storage-blob-upload-event.md
Service: event-grid
GitHub Login: @spelluru
Microsoft Alias: spelluru

@mrobst, Thanks for taking time to bringing this to our attention! We are taking a look into this and will get back to you soon.

@mrobst Thanks for catching that! We have worked up a PR to address this, which once merged should reflect in a couple of hours.


Mark's hybrid feedback

I am processing Mark's feedback from our doc critique here.

Needs more work offline...


make up fails as ":dev" tag not on docker hub

Single change to the tag from :dev to :latest which is present on this projects docker hub page.
make up now works after clone instructions from the readme.

thanks for doing this : )

Thanks Greg, this is a great tool that i used to use, now i can again, and thanks to TRSTruth.


ERROR messagePump - unexpected exception

Describe the bug
Seen in HA log.  No clear correlation with HVAC activity.
Screenshots/Logs
If applicable, add screenshots to help explain your problem.
2024-08-29 20:25:57.409 ERROR (MainThread) [lennoxs30api.s30api_async] messagePump - unexpected exception - please raise an issue to track
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/lennoxs30api/s30api_async.py", line 706, in messagePump
    resp_json = json.loads(resp_txt)
                ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/json/decoder.py", line 353, in raw_decode
    obj, end = self.scan_once(s, idx)
               ^^^^^^^^^^^^^^^^^^^^^^
json.decoder.JSONDecodeError: Expecting ',' delimiter: line 1 column 1976 (char 1975)

Version

Home Assistant:
Core 2024.8.3
Supervisor 2024.08.0
Operating System 13.1
Frontend 20240809.0
This Integration: 2024.8.0

**Integration Configuration **

Cloud or Local Connection: Local
Inverter or Sensor Diagnostics Enabled: No

It looks like the message sent from the s30 was unable to be parsed.  Unfortunately, the error handling does not log the message text that failed to parse and we don't have info on the root cause. That need to be enhanced so we can see what is in the message that has improper formatting.
What version firmware is on the S30s. Easiest place to find is on the s30 device for the integration.

Two s30's

3.81.207 - South
3.81.213 - North

This is a strange error.  Has this been reoccuring?  I'm going to update the API to log the text of the message that fails to decode.

This has not been a reoccurring error.


C++ factoring: starting _getitem_next.

This PR implements all types of slices allowed by NumPy on Awkward Arrays. Awkward's extensions of NumPy's slicing rules will be covered in a future PR.
In principle, there are 12 classes to cover: BitMaskedArray, ByteMaskedArray, EmptyArray, IndexedArray, IndexedOptionArray, ListArray, ListOffsetArray, NumpyArray, RecordArray, RegularArray, UnionArray, and UnmaskedArray with 10 types of slice items: no-slice (head == ()), integer (int), range-slice (slice), field (str), fields (list(str)), np.newaxis (which is None), Ellipsis (...), flat array (Index64), jagged array (ListOffsetArray), and option-type array (IndexedOptionArray). 120 cases.
However, putting off Awkward's extensions reduces this to only 8 types of slice by dropping jagged arrays and option-type arrays. (They can be left as NotImplementedError.) 96 cases.
Also, I did the "weird" classes, so that what remains would be more straightforward: all of EmptyArray (because it's a leaf), NumpyArray (because it's a leaf and very different—much simpler—in Python), RecordArray (because fields are fundamentally different from other slices), and RegularArray (because fake RegularArrays are used to structure the getitem procedure). 64 cases.
Also, I did the "weird" slice types, so that what remains would be more straightforward: no-slice, field, fields, np.newaxis, and Ellipsis. 24 cases.
Here's what remains, for you to finish off this PR:

BitMaskedArray

[ ] integer slice
[ ] range-slice
[ ] flat array

ByteMaskedArray

[ ] integer slice
[ ] range-slice
[ ] flat array

IndexedArray

[ ] integer slice
[ ] range-slice
[ ] flat array

IndexedOptionArray

[ ] integer slice
[ ] range-slice
[ ] flat array

ListArray

[ ] integer slice
[ ] range-slice
[ ] flat array

ListOffsetArray

[ ] integer slice
[ ] range-slice
[ ] flat array

UnionArray

[ ] integer slice
[ ] range-slice
[ ] flat array

UnmaskedArray

[ ] integer slice
[ ] range-slice
[ ] flat array

As you finish implementing each one, uncomment the corresponding tests in test_1031-start-getitem_next.py. When the PR is done, all of the code should be uncommented. test_1031b-start-getitem_next-specialized.py is for any additional tests you need to add while working things out.

@ioanaif As a hint for how to go about translating and debugging, I showed some examples of my own debugging: 86377cc51b7ec42907a68297ee4d7749f4b55196 adds debugging code to compare the Python with the original C++ and 3878e10d3ecbbfa1ab8503f9a29f2473fbd2a170 is the subsequent commit that removes that debugging code (not sure which would be easier to read).
Once the C++ codebase is compiled, adding std::cout is fast to recompile (if you're using the localbuild.py), so you can add equivalent print statements on both sides when something is different, to try to figure out why something is different. The new Python code goes through all of the same steps as the C++ (in these "non-weird" cases), so you can check the intermediate Indexes to be sure that they're exactly the same at each step (or narrow in on where they're different).

I should have done this when you first started!
@all-contributors please add @ioanaif  for code, test


Wrong alignment of buttons on MacOS version

Godot version: 3.1 alpha 4
OS/device including version: MacOS 10.14
Issue description:
Buttons are by default shown aligned like this on MacOS (doesn't happen on Windows):

The lower part of these buttons isn't clickable. Resizing the window aligns the buttons properly and fixes the issue.

CC @Calinou

I couldn't reproduce this on https://github.com/godotengine/godot/commit/04c8a43741656814c86923c89f2dd23646751b96 on Linux (with the editor scale set to 200%).
I don't see why this would be OS-specific, but I can't test this on macOS with a hiDPI display anyway.

@Calinou I've just tried today's nightly and it still happens on MacOS 10.14.2.

Might be fixed by #25858.

Assumed fixed by #25858, please comment if you can still reproduce it.


Bug memory dataset: order on field(s) with nil value raise exception

I found bug in enumerable_dataset.rb (memory dataset) in sort_by (order) method. When one field is nil and you want call order on this column it will raise error.
Example: You have data: [{ name: 'Jane', age: 24 }, { name: 'Joe', age: nil }] and you want order(:age)
comparison of Array with Array failed
/.../rom-2874edfbe4f4/lib/rom/support/enumerable_dataset.rb:53:in `sort_by’
/.../rom-2874edfbe4f4/lib/rom/support/enumerable_dataset.rb:53:in `sort_by'
/.../rom-2874edfbe4f4/lib/rom/memory/dataset.rb:51:in `order'

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/10741934-bug-memory-dataset-order-on-field-s-with-nil-value-raise-exception?utm_campaign=plugin&utm_content=tracker%2F155789&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F155789&utm_medium=issues&utm_source=github).

Shall we put nils before numbers?

based on csv exmaple:

based on csv example:
id;name;age
1;Jane;24
2;Joe;
We have nil age for Joe, of course we can put for example 0 or " " but it doesn't look good

I'm just wondering what the order should be, should it be nil, 0, 1 or 0, 1, nil :) Some dbs allow you to configure that behavior.

good point, but i think we can nil treat like 0

not quite ... nil != 0, particularly if you include negative numbers in your sorting.
Nil values don't flow into the sort; the question is if they should lead or trail the sorted order.    Different RDBMS' have different opinions on if it goes first or last, so it's a judgement call, but they SHOULD NOT appear in the middle of the list.  Personally, I'd sort nil's to the end.

I agree with @cflipse - anybody up to fixing it? I'm planning to release 0.7.0 next Monday. I'm done with my tasks and won't have much time to do anything else.

Fixed via 74b74dc


{@inheritDoc} tags are not being processed

When the documentation of a subclass/interface is extended using a {@inheritDoc} tag, such a tag is not processed by javasphinx.
Instead of showing the documentation from the superclass/interface, the {@inheritDoc} tag just shows up in the built documentation.
An example of this issue can be found here.

We're thinking about moving over to Sphinx for our documentation as well and we make heavy use of the inherit doc tag.

Sorry for not responding sooner. This might be do-able, but I think it will be a decent chunk of work. I believe the difficult part will be actually determining which method is being overridden. At a minimum the type hierarchy would need to be modeled and some understanding of generics would need to be added (to handle overriding methods with generic parameters).
I'd be happy to review a PR (a design proposal might actually be a better place to start for this), but I unfortunately don't have the time to work on this myself in the near term.


stable/sematext-agent: Update autodisco config manifest

What this PR does / why we need it:
This PR brings changes to autodisco configuration manifest to support more integrations.
Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[ ] DCO signed
[x ] Chart Version bumped
[ x] title of the PR contains starts with chart name e.g. [stable/chart]

/lgtm


Create a executable file to run on Windows

Existing setup of creating exe files fails on executing on certain version of windows, fix it

I would like to try to work on this. What version of windows did the exe not work at?

Windows 10 and windows 8.1

Issue assigned to @michaelchristopher-ui
🌟 Star it 🍴Fork it 🤝 Contribute to it!
Happy Coding..
Feel free to drop in https://discord.gg/59TDJgt

zip the .exe file before pushing it to the repo @michaelchristopher-ui

Un assigning u since i haven't got any updates yet !! @michaelchristopher-ui

Issue assigned and fixed by @Yagueteiro

🌟 Star it 🍴Fork it 🤝 Contribute to it!
Happy Coding..
Feel free to drop in https://discord.gg/e47wmTW

#18


increase fluentd memory to avoid oom kill

seeing fluentd being oom killed during the mux tests - interesting
that it is fluentd being killed and not mux
Raise the memory request/limit (they are controlled by the same
ansible parameter) for fluentd to avoid this

@jcantrill @portante Not sure if this is related to k8s 1.8 upgrade or origin 3.8/3.9, or possibly moving to jemalloc for fluentd, which maybe increases the memory usage in the short term, but prevents long term unbounded memory growth?  At any rate, I've seen several oom kills of fluentd during the tests, primarily the mux tests

btw - how do I tell if a pod has been oom killed?  Since we disabled the supervisor on fluentd, I don't see oom-killer messages in /var/log/messages

You should be able to see the reason for termination in the pod status. For instance:
oc get pod $podname -o jsonpath={.status.containerStatuses[0].state.terminated.reason}

not jemalloc - it is off by default - trying a test with jemalloc on by default


Usage instructions?

I want to play!   Can you give me a nudge in the right direction?

Totally - unfortunately, I'm preoccupied and can't take the time right now to give you a nudge on this particular repo.
Take a look at the following repo which has a much more robust implementation of this type of idea. You'll get different (and much more practical) results than you would from using supervised learning, which is what nn_psychadelics uses, since the following repo uses a GAN frame predictor.
https://github.com/dyelax/Adversarial_Video_Generation

I will do, thanks.
Your naming convention appealed, thassall :)

If you want to shoot me an email at matthewturnshek at gmail dot com, I have a couple videos I can share with you for a little peek of nn_psychadelic when I had the environment and a dataset up and running.


[#15] Add circleci pipeline

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@86a052f). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             main       #16   +/-   ##
========================================
  Coverage        ?   100.00%
========================================
  Files           ?        79
  Lines           ?       851
  Branches        ?        69
========================================
  Hits            ?       851
  Misses          ?         0
  Partials        ?         0

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


Cannot use more than one request ?

Laravel Version: 5.5
PHP Version: 7

Description:
I'm using Laravel's request class to validate my request. I've done that for my register post method and trying to do it for Login Post but it wont work. I'm now using 5.5 but this happened to me in 5.4 also. I would just ignore it and try to write my validation logic in controller but it's ugly.
Steps To Reproduce:
I've created RegisterRequest with php artisan make:request command and used it in my controller like this:
public function RegisterPost(\App\Http\Requests\RegisterRequest $request)
    {
      $request->persist();
      return $this->RegisterShowMnemonic();
    }

Now I'm trying to do the same for my LoginPost. Used same command just replaced RegisterRequest with LoginRequest , and used it in my method but I get Class App\Http\Requests\LoginRequest does not exist like i haven't included it.
My method:
public function LoginPost(\App\Http\Requests\LoginRequest $request)
    {

    }

I've also try to include it on the top with Use and and then try it like that but same thing happens. I've manually check if file is there, if class match and it looks right to me. Weird thing is that everything just works with RegisterRequest

Hi there,
Welcome to Laravel and we are glad to have you as part of the community.
Unfortunately this github area is not a support area for general application issues. This is only for issues/bugs with the framework code itself.
Can I please suggestion closing your issue ticket here. Instead trying asking your question on one of the many great community support areas that will likely give you a better answer more quickly:

Laravel Slack (https://larachat.co/)
Laravel.io Forum (https://laravel.io/forum)
Laracasts Forum (https://laracasts.com/discuss)
StackOverflow (http://stackoverflow.com/questions/tagged/laravel)

Thanks in advance.


feat(DCOS_OSS-744) Make edit button in service configuration visible

DCOS_OSS-744 This PR makes the edit button always visible in the service configuration page, this also updates to show apply when the user change to older versions.
before

after

Checklist

[x] Did you add a JIRA issue in a commit message or as part of the branch name?
[ ] Did you add new unit tests?
[ ] Did you add new integration tests?
[ ] If this is a regression, did you write a test to catch this in the future?

@leemunroe please confirm the design, thanks.

Ran those failing integration tests locally and they passed. retest this please

Minor UX issue: we've got a floating edit button while everything else in the configuration is loading:
https://cl.ly/3r3i2z213O1l
Happens the first time you go to that tab after launching, or creating a new version.

Thank you @ahoskins it's addressed. now I only render the buttons when the config is available.

@MatApple @ahoskins @Poltergeist updated design.

Side Note: Please use the footer to reference issues as documented in https://github.com/dcos/dcos-ui/blob/master/CONTRIBUTING.md#referencing-issues


SPIKE: NCSC: Logging and Monitoring - best practice

User Story
Following review with NCSC they have made the following recommendations

Logging and Monitoring
The platform captures the following log data: VPC Flow Logs, Firewall Logs, CloudWatch Logs. Currently, log data is stored but no ongoing analysis is performed.
Risk: A compromise of the platform is unlikely to be detected as analysis is not performed on log data.
Recommendation: Consider the following NCSC guidance.
https://www.ncsc.gov.uk/blog-post/what-exactly-should-we-be-logging
https://www.ncsc.gov.uk/collection/building-a-security-operations-centre

The second document might lead to recommendations to SOC team
Also make any other suggestions for improvement
MoJ Response: We will review this document as a separate ticket.
This is to review the documentation and make recommendations
Value / Purpose
to improve security within the platform
Definition of Done

[x] Document reviewed and recommendations made
[ ] Agreement on which recommendations to implement and which to ignore - saying why we are ignoring them
[ ] If required, raise tickets to implement any new changes

For the most part, the recommendations on what logs to keep have already been met and those logs are shipped to our SOC-PM team's tool of choice. I'll expand on my thoughts on the recommendations themselves in a following comment.

1. Reconnaissance:
From a platform perspective we would surface this information from VPC flow logs showing attempts against public-facing interfaces (eg. load balancers or elastic IPs). Things like simple port scans should be visible here. Other methods such as checking applications for available endpoints - my-application.service.justice.gov.uk/api for example - would be in the domain of an application support team and not a platform-level thing. We're deliberately very open with how we work so reconnaissance for the platform would be as simple as browsing our repositories.
2. Resource Development
Hard to say but the givenI don't think example here we do rely heavily on GitHub for authentication and to my knowledge we're good at keeping login credentials fresh (revoking / suspending accounts and access keys, using OIDC and SSO for logins). Potentially we need to consider how our DNS records are secured through DNSSEC but I think that's a bigger question than just us and should be considered for the justice.gov.uk and service.justice.gov.uk domains (https://dnssec-debugger.verisignlabs.com/modernisation-platform.service.justice.gov.uk).
3. Gaining Initial Access
Mostly we'd expect to see attempts - failed or successful - through CloudTrail logs. We do rely on other services (and could view logs in Auth0 for example) but we're consumers of these things. For application-specific logs we don't have sight, nor would we expect to. The guidance here is quite broad - an enterprise campus for example. Our points of access are all public API endpoints. We mitigate the risk of personal compromise with mandated 2FA, so again I'm not sure what we would need to look at that isn't in our risk register.

4. Execution of Attacker controlled code
From a platform perspective the obvious route here is that a GitHub repository containing Terraform code is compromised but we mitigate this through the use of source code hashes to pin our versions. A supply chain attack isn't highly likely but is conceivable yet not something we could meaningful do - for example if we span up a parallel infrastructure to archive Hashicorp terraform provider versions, is it likely that we'd discover compromised code before anyone else and thus stay away from a compromised version?
5. Persistence
I don't think there's much relevance here. Given that the source of truth for the platform is infrastructure as code we're not exposed in the way that an enterprise could be by having a malicious application existing on its internal network.
6. Privilege escalation
We've discussed this in our platform risk register. I don't see this a high risk for us. We use SSO for login and control trust chains through IAM policies - there aren't options for privilege escalation that exist outside of misconfigured IAM policy. If there are, then they exist outside of our platform or ability to influence.
7. Defence evasion
The guidance here reads as very application focused - an application running on the platform rather than the platform itself. For us the risk would be supply chain focused; the AWS CLI or Terraform (and provided plugins) but this should be easily mitigatable by checking against publised secure hash values.

8. Credential access
I think this is reasonably defended against (SSO & 2FA), and as we log access attempts in CloudTrail (and then ship those logs to SIEM) then there's not much more I can think of for us to do. We also expire users and access/secret keys after reasonable periods of non-use so the risk of stale credentials being used is low.
9. Discovery
On this topic we're extremely discoverable by design. If we can make something open we have done so (user guidance and runbooks, documentation, diagrams, code). This is something across the wider GDD/Justice Digital landscape - https://mojdigital.blog.gov.uk/2017/02/21/why-we-code-in-the-open/. We do keep some things defended (application secrets, tokens) and these should be rotated anyhow in case they're leaked. We have also reviewed our logs and improved our masking to prevent accidental disclosure.
10. Lateral movement
On a platform level we mitigate against this for our customers by design (no movement between live_data/non_live_data), but they also have to take reasonable steps to mitigate (EG with correctly configured security groups). This information (failed attempts to assume a role for example) should also be covered by CloudTrail logs and shipped to SIEM.

11. Collection
As a platform we don't really hold anything that this advisory would cover; internal code artefacts for example or sensitive design documents. Potentially customer S3 buckets could be in scope, but those are private by default and should be the subject of a Security Hub /Guard Duty alert if they're improperly secured (https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-s3.html#policy-s3-bucketpublicaccessgranted).
12. Command and control
This feels like a potential risk for applications rather than the platform itself (EG. hijacking an instance and using it to serve traffic), but I don't think the risk here is high given how traffic flows are controlled through different layers of protections (AWS-provided, NACLs, SGs, Network Firewall scanning of traffic going from platform to internet). With regard potential malicious domains we do supply Route53 resolver logs to SIEM for scanning.
13. Exfiltration
As noted above, we don't really have anything that's at risk of exfiltration. We have everything out in the open where possible and don't hold anything sensitive beyond application secrets and tokens. Those can be revoked & regenerated, and their compromise is hard to leverage outside of a bigger compromise.

I will add a following comment summing up potential actions but I don't expect there will be anything that's not already in our risk register.

As a follow-up, there are no obvious platform-specific actions that stand out to me after reviewing the guidance. Our CloudTrail logs are probably the most interesting thing we hold for security audit purposes, and those are shipped off to the Security Operations Monitoring - Protective Monitoring team through a kinesis firehose connection. Beyond that we supply our VPC flow logs, firewall logs, and Route53 resolver logs to provide visibility of customer applications deployed on the Modernisation Platform.


[Bug] Using Resource String creates no coverage mutation.

Create .NET 7 Library Project
Create Assembly Resource with one Resource String
Create Custom Exception with one parameter
3.1 Create property
3.2 Create Constructor with one Parameter.
Constructor calls base with Resource String.
Constructor assigns parameter value to property
Create .NET 7 MSTestTest Project
Create Test:
Create the Custom Exception with a valid value.
Assert the property (= parameter value) and the message (= Resource String).
Check that the test passes.
Open terminal on solution folder
run stryker (3.6.1) using "dotnet-stryker"

Stryker terminal output:
Identifying projects to mutate in [..]\StrykerError\StrykerError.sln. This can take a while.
Found 1 source projects
Found 1 test projects
The project [..]\StrykerError\StrykerError\StrykerError.csproj will be mutated.
Analysis complete.
Total number of tests found: 1.
Initial testrun started.
1 mutants created
Capture mutant coverage using 'CoverageBasedTest' mode.
1     mutants got status NoCoverage.   Reason: Not covered by any test.
1     total mutants are skipped for the above mentioned reasons
0     total mutants will be tested
It looks like all non-ignored mutants are not covered by a test. Go add some tests!
Killed:   0
Survived: 0
Timeout:  0
Your html report has been generated at:
[..]mutation-report.html
You can open it in your browser of choice.
Time Elapsed 00:00:29.8427304
The final mutation score is 0.00 %

Stryker correctly adds a Block removal mutation for the Property assignment in the constructor.
Stryker assumes that no tests is covering the mutation.
Code:
namespace StrykerError;
public class NameException : Exception
{
  public NameException(string name)
    : base(Properties.Resources.MyHelloResourceString) // fails
    //: base("Hello") // works
  {
    Name = name;
  }

  public string Name { get; }
}

Test:
namespace StrykerError.Tests;

[TestClass]
public class NameExceptionTest
{
  [TestMethod]
  public void Constructor()
  {
    var name = "Stryker";

    var result = new NameException(name);

    Assert.AreEqual(result.Name, "Stryker");
    Assert.AreEqual(result.Message, "Hello");
  }
}

Stryker Testresult:

Problem exists in .NET Stryker and not JS


Health Check return "Unhealthy" if Destination refuses to connect

What should we add or change to make your life better?
In ReverseProxy.Health.ActiveHealthCheckMonitor when calling ProbeDestinationAsync when trying to get a response from the destination if the destination port is not available, the method fails to the catch with HttpRequestException "No connection could be made because the target machine actively refused it." causing the entire probe to fail and status to be updated. By catching this particular exception an "Unhealthy" status can be returned for the destination endpoint.
Why is this important to you?
I am looking at using this as a micro-service api endpoint with some of the services potentially being unavailable.  It would help to know which endpoints are not reachable by having an "Unhealthy" state.

I was apparently setting up the IActiveHealthCheckPolicy incorrectly.  Maybe show in the documentation how to implement a custom IActiveHealthCheckPolicy similar to how the IProbingRequestFactory shows implementing via DI?


[Feature Request] Disallow workflow attributes on anything static

Describe the solution you'd like
Workflow methods (and the workflow class itself) should not be static.

We already disallow this for WorkflowRun, doing it for WorkflowSignal and WorkflowQuery now too


raise error if CVE bug missing labels

if a bug missing tracker label bug have CVE-XXXX in summary, raise the suspicious bug

@Ximinhan We should think about where to raise this type of warning / issue. One place could be check-bugs job, and IMO this fits nicely there than say find-bugs:sweep. For that we would need to have this in verify-bugs and verify-attached-bugs command


testapp upgrade to RC7

The testapp is currently using angular2 rc4 and should be upgraded to the latest.

Done!


docs: update sponsors

updated sponsors list
sorted alphabetically

The website says

We should find out if they want to be credited as "Nginx (Part of F5)" or "F5" and make it consistent.

Given we got the logo from them, it's best to use that phrase until further notice.


Error in dartium on literal object without named parameters

In dartium 1.13.0-dev.7.4 I get an error but it works in dart2js
import 'dart:html';
import 'package:js/js.dart';

@JS()
class B {
  external factory B();
}

main() {
  window.console.dir(new B());
}

Dartium does not seems to handle correctly an external factory without named parameters. The patch generated is :
patch class B {
  factory B({}) {
    var ret = new js_library.JsObject.jsify({});
    return ret;
  }
}

As you can see factory B({}) is not a valid syntax.

@jacob314 Can we figure out ASAP if this is critical for 1.13? Looks like @a14n may have a patch...

This should be a one line fix to dartium. Not sure how critical this is as
having a typed interop class with zero properties doesn't seem that useful
in general.
You could always add an optional parameter that you just don't use if you
really want to create a typed interop class with zero properties.
On Mon, Nov 2, 2015 at 10:35 AM, Kevin Moore<EMAIL_ADDRESS>wrote:

@jacob314 https://github.com/jacob314 Can we figure out ASAP if this is
critical for 1.13? Looks like @a14n https://github.com/a14n may have a
patch...
—
Reply to this email directly or view it on GitHub
https://github.com/dart-lang/sdk/issues/24780#issuecomment-153118791.

@jacob314 that work-around seems very hard to document.
@a14n Are you blocked on this at all?

Not blocked. It was just the first test I did : anonymous object with empty constructor and getters/setters.

CL containing a test sent out for review.
https://codereview.chromium.org/1431513004/
On Mon, Nov 2, 2015 at 1:29 PM, Alexandre Ardhuin<EMAIL_ADDRESS>wrote:

Not blocked. It was just the first test I did : anonymous object with
empty constructor and getters/setters.
—
Reply to this email directly or view it on GitHub
https://github.com/dart-lang/sdk/issues/24780#issuecomment-153163000.

Closing as the CL was landed. Do we need to cherry pick this?

Cherry-pick request already live - https://github.com/dart-lang/sdk/issues/24802

Fix landed and merged into dev.


ME Conduits and Dense ME Conduits

MCP v9.05
FML v<IP_ADDRESS>
Minecraft Forge <IP_ADDRESS>2
EnderIO-1.7.10-<IP_ADDRESS>3_beta
EnderCore-1.7.10-<IP_ADDRESS>_beta
When I try connecting a Dense ME Conduit to a standard ME Conduit, it overwrites the standard conduit and leaves only the Dense ME Conduit instead of connecting the two together. This also happens in the reverse order (Standard ME Conduit over Dense ME Conduit).

Screenshots? I'm not sure what you mean. Are you trying to place the dense conduit into the bundle? Or next to an existing bundle?

https://drive.google.com/file/d/0B_wljXPJi507RjN4cVdHZjVtSHc/view?usp=sharing
I think "replace" is a better word to use. I'm not sure if they're supposed to replace each other.

Oh right! That. That's actually intentional, so that you can upgrade conduits in-place. Shift should cancel it. If it doesn't, that's a bug.

For most types of conduits there is no reason to attach different "tiers" together, ME conduits are a bit of a special case in that regard.

Okay, that makes sense. I do like the upgrade feature, but I did test shift-right-click in the video and it didn't work.

Yes, MEs are the only conduits where the different tiers of the same type actually connect. I overlooked that when implementing the replacement feature. I didn't add shift-handling, because it's usually not relevant for block placing.


Virtuoso implementation doesn't load the whole dataset

Hi,
I'm checking the results for the implementation of Virtuoso for the SQL queries, as published in this repository, with the SF1 of the SNB interactive workload.
Trying to manually issue the complex query1 with the params person.id =<PHONE_NUMBER>527 and person.firstname = Lin, the output is http://pastebin.com/raw/B7hREJdv
Given the semantics of the query, I'd have expected that the tuple related to person id<PHONE_NUMBER>5331 would appear with distance 1. In the relation, id<PHONE_NUMBER>5331 and<PHONE_NUMBER>527 are connected:
# awk 'BEGIN { FS = "|" } $2 ==<PHONE_NUMBER>5331 && $1 ==<PHONE_NUMBER>527'  person_knows_person_0_0.csv;
2199023260527|10995116285331|2011-01-24T07:20:12.577+0000

and the name of the person is Lin:
# awk 'BEGIN { FS = "|" } $1 ==<PHONE_NUMBER>5331' person_0_0.csv
10995116285331|Lin|Yang|male|1988-12-17|2011-01-21T15:25:36.713+0000|<IP_ADDRESS>|Internet Explorer|310

So I'm assuming the process of loading the initially data only partially fills the database:
SQL> SELECT COUNT(*) FROM knows;
count
INTEGER
_______________________________________________________________________________

180802

1 Rows. -- 1 msec.

Interestingly enough, when running the validation set against Virtuoso SQL from the readwrite results of neo4j, all queries pass but 2 instances for Q6 and Q14.
Did anyone else experience similar issues?

The query has a limit of returning the top-20 entries using <distance, last name, person id> all ascending. Could be that this specific entry falls outside the top 20?
Regarding Q6 and Q14 on validaion set, Could you test against the Sparksee validation set as well? It would help us track the problem
Best

Hi,
In the case of the SF1, the entry should appear because the result set is primarily ordered by the distance. In the output there are several entries with distance 2, even the targeted person is reported with distance =2. Though these two persons are directly connected, their distance should be 1 and therefore appear in the result set.

Ok, just tried to set up against the sparksee validation set, my first results are almost completely incorrect: http://pastebin.com/DcZYVGRj . I am likely making some mistake in the driver set up ./

I think it is because  it doesn't properly load for some reason the data from the table person_knows_person_f into the table knows:
SQL> SELECT COUNT(*) FROM knows;
17028

SQL> SELECT COUNT(*) FROM person_knows_person_f;
16589

Thanks @whatsthecraic
I'll try to validate my Sparksee implementation agains neo's validation set and see if I observe discrepancies. I'll let you know.
Best

The Virtuoso implementation is currently not supported as we're moving towards supporting standard SPARQL (work-in-progress in #47). I am closing this now, please reopen if someone picks up the Virtuoso implementation and the issue is still present.


nav.size is not a function

Hi,
I got this error on using your library.
Note that The .size() method is deprecated as of jQuery 1.8. Use the .length property instead.
Please use length instead of size().
Regards,

Hi all,
I must say I have the same issue regarding nav.size() is not a function.
Would you update the gem ?
Or shall I make a pull request ?
Thx

@adrazek :
ok, I think I found the glitch.
The problem is not the .size().
It's because nav is undefined. Cause $container is undefined...
Anyway, you must declare the context in your .infinitePages config, with something like : context: '.divClass',
This line goes where you wrote debug: true, buffer:200, loading: ...
If you do it, the browser js console won't raise an error anymore. At least, not on nav.size().
I don't know why the context don't take its default setting though.

jquery.size is deprecated in later jquery version, use .length instead.

Replacing if nav.size() == 0 with if nav.length == 0 worked for me.

Get same error when integrate with Rails app, solution is setup using the Non-Rails ways and fix the library file as @clemensg:

Replacing if nav.size() == 0 with if nav.length == 0 worked for me.

There is a PR with this fix waiting for further review: #27

+1


Allow disabling recipe interpolation

There are many tools that use go-template to get field values, such as
kubectl get secret nfluxdb2-auth -n monitoring --template={{index .data "admin-password"}} | base64 -d
which are difficult to render with the escept.
I tried {{ '{{index .data "admin-password"}}' }}
and "{{" '{{index .data "admin-password"}}' "}}"
that didn't work properly

Did you get this working?
I think you'll need another set of single quotes:
foo:
  kubectl get secret nfluxdb2-auth -n monitoring --template=--template='{{ '{{index .data "admin-password"}}' }}' | base64 -d

I think it would be good to be able to disable interpolation in individual recipes. It would probably need attributes, as proposed #604. It might be hard though, since the lexer would need to be know when it was lexing a recipe without interpolation.

I finally got the right result, but I think it's an inelegant solution, and in a complex scenario, the expression becomes extremely difficult to read.
kubectl get secret influxdb2-auth -n monitoring --template='{{'{{index .data "admin-password"}}'}}' | base64 -d

I agree, it's definitely not very nice.

I just released v0.8.5, which allows escaping a {{ by writing {{{{, so this should be much better now.


Xcode 12.0 support

Adding Xcode 12.0 support (Ref: Issue https://github.com/linkedin/bluepill/issues/453)
\cc @ob @chenxiao0228 @oliverhu @RainNapper @jerrymarino

Links for future reference...
https://github.com/marketplace/actions/setup-xcode-version
https://github.com/actions/virtual-environments/blob/main/images/macos/macos-10.15-Readme.md#xcode

Thanks @ob for the fix. Please take another look and give a 👍? Thanks.


Saves Record without Select Organization

Path: Organizational Structure
Issue:  Drop down for Select Organization  is not showing, but records are being saved without selecting it.

I mentioned it as known issue

fixed

Fixed


fix(cdk/drag-drop): incorrectly sorting element inside dialog with blocked scrolling

We use the ViewportRuler to determine how much a page has been scrolled in order to compensate for it in some of the ClientRect-related calculations. This breaks down when the drop list is inside a dialog with blocked scrolling, because scroll blocking works by offsetting the html node which in turn throws off the ViewportRuler. These changes switches to reading the values off the window which won't be thrown off.
Fixes #14280.

Same issue here: the reordering is broken when inside a dialog component while the page is scrolled. We're  absolutely interested by a fix for that bug.

Any updates here?

I got around to rebasing this one and fixing the CI failures. Also bumping the priority since this issue has come up multiple times now.


Add class to expandableScrollFiller

Hi!
A css class in the "expandableScrollFiller" template would be very usefull for designers. This would open the possibility of changing the background color , add inset box-shadow , etc ...
Thanks!

@jpuri: is this something you'd consider adding?

Sure @PaulL1 , thats good suggestion. I will implement it.

:+1:

Hi,
This one got much delayed. I am taking it up now.

This should be working now.

cool!


⚠ ClamAV has degraded performance

In 3d2aebf, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 80 ms

Resolved: ClamAV performance has improved in be35aba after 5 minutes.


ASD data fails to be convert to VDC

One ASD data file, /glade/derecho/scratch/kkchandr/ASD_sample_data/cm1out_s_000022.nc, fails to be converted to VDC format.

Pablo Mininni also reported a failure when converting raw data to VDC, but there's not a sample data set provided yet.


Composable MapView/SceneView: remember default parameters

Previously in the MapView/SceneView, default parameter values were not remembered. This could cause issues on recomposition as new instances of the objects were being created. For example, the SceneView's cameraController parameter was defaulted to GlobeCameraController(). When the SceneView recomposes, a new instance would be created and set on the underlying sceneView in the update block. If the SceneView was in the middle of navigating to a viewpoint, this would interrupt the navigation.
This PR updates the default parameters which should not be recalculated in recomposition when left undefined by the user. This includes types which have reference equality (ie. are equal if the instances are equal) and types that probably shouldn't be recalculated if unchanged (namely PaddingValues and Instant). It does not change, for example, WrapAroundMode (because the SDK types like this which act like enums are actually defined as objects) nor Color (because this is actually a value class).
Also updates the SceneViewSetViewpointApp to have a progress indicator like the MapView version, and fixes compile errors in the SceneViewLightingOptionsApp, which was still using SceneViewpointOperation.

LGTM 👍


Should I learn knowledge and then work on a project or practice before I finish? Should code frontend or backend first? Thank you for all.

Ahihi

Frontend first
Vào 18:03, Th 2, 2 thg 3, 2020 Bạch Hiệu<EMAIL_ADDRESS>đã viết:

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ltv/nodejs-course/issues/3?email_source=notifications&email_token=AILPVHLK6R2KUJQTLGHZNI3RFOG7ZA5CNFSM4K7R3FI2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IRU665Q,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AILPVHJYAOJBTXUERXHCINLRFOG7ZANCNFSM4K7R3FIQ
.

@TuyetRoiMuaHe cái nào cũng được e nhé. :)

Ahihi


Added IOP (Register|Release)IntrHandler test

I wanted to verify that it's only possible to register one handler for an interrupt line. I've also tried to cover all the error codes that those functions can return.

The tests should be a bit more complete now.

Cool.  The null handling turned out to be a bit interesting.  Thanks.
-[Unknown]


UDT modify

Fixes

Ensuring control flow window gets updated.
Changed RTT and RTTvar formula according to the UDT specs.

I've reviewed the code and applied the set congestion window patch in master.
I've also implemented a working version of the ACK interval setting.


error: uninitialized constant JSON::Parser. Use --trace to view backtrace

I keep getting this when using distibute:testflight

it didnt work to me :(
`': uninitialized constant JSON (NameError)
it shows me this error...any help? please ):


MQTT overran with Battery messages

My AM43 supposedly can't decide between 97 and 100 percent, and is reporting everything back to Home Assistant.
Maybe add an interval between MQTT publishes to not push at every state change, if something like this happens?
My other one does not behave like this.

Yes this has annoyed me also. I've pushed an update to the repo which limits messages to once every 30s.

Thanks for the quick fix. I also have some problems with the curtains becoming unavailable in HA after a while, but that's a separate issue i haven't been able to get any logs for yet. I'll open a new issue when i have isolated the fault. Maybe a reflash will fix it as well.


Move self-hosted runners to GCP

We should move our self-hosted github action runners to GCP. That's bee done by other projects already, and basic docs are within Confluence (CECO/Self-hosted+runner+in+GCP).
So we will need to check if that fits our needs as well, and come up with a plan for moving Epinio self-hosted runners to GCP.

By the way, if you want a no-maintenance method to achieve that, you can use cirun.io for the same.


Test with redis-rb 4.0.0 RC1

I just released redis-rb 4.0.0 RC1.
Can you please test against it and report back?
Thank you!

@djanowski sure, I'll do and post results here!!!

FYI redis-rb 4.0 is out.

We are blocked for upgrading redis-rb to version 4.0.0, if you want me to I can give it a go for upgrading fakeredis to support the new release.
Do you have any checklist or guidance on how to accomplish an upgrade @djanowski ?

This seems to be working fine with redis-rb 4.0!!


fatal: unable to access 'https://github.com/cloudflare/lua-resty-cookie.git/': gnutls_handshake() failed: The TLS connection was non-properly terminated.

apisix master-0 depends on lua-resty-cookie 0.1.0 (not installed)
Installing https://luarocks.org/lua-resty-cookie-0.1.0-1.rockspec
Cloning into 'lua-resty-cookie'...
fatal: unable to access 'https://github.com/cloudflare/lua-resty-cookie.git/': gnutls_handshake() failed: The TLS connection was non-properly terminated.

Error: Failed installing dependency: https://luarocks.org/lua-resty-cookie-0.1.0-1.rockspec - Failed cloning git repository.
Makefile:151: recipe for target 'deps' failed
make: *** [deps] Error 1

https://blog.csdn.net/shaopeng568/article/details/114919318


Add ability to subscribe to storage events

This PR adds a prototype for subscribing to storage events. It currently only implements for the web target, though I have a plan to add filesystem support too.
This PR adds a watcher closure for the Web API StorageEvent and publishes these events as messages on a common channel that the application components can listen on. It then uses the use_listener_channel hook to subscribe to these messages and filter out the relevant ones for the current component based on key.
The approach for filesystem will be a little more complicated. I will use the notify crate to create a common watcher and then each new key we need to subscribe to will need to be explicitly added as a path to the watcher. I am planning on utilizing the ScopeState.span_forever function to create a background task that will own the watcher for the lifetime of the application. It will use an identical response channel to the one used by the web target. It will subscribe to a management channel will be used to let the application register new paths with the watcher. For correctness, this channel should be a multi-producer-single-subscriber channel, but an async_broadcast can work too if we want to reduce dependencies.
As another correctness improvement, separate channels could be registered for each key, with the background task managing these for us and using something like a tokio::oneshot channel to send back the long-lived channel that the subscriber should use to listen for future changes.
I've also swapped the use_ref for the StorageEntry with use_signal, though that was mostly while I was experimenting with some other approaches. I can revert that if you would rather use use_ref

While I've used use_persistent as my example here for subscription mainly because it was already implemented, I think it's actually a bad candidate for subscription. I think use_persistent should be adjusted so that it uses a session-specific store that expires and is cleaned up when the current session ends. I don't think there's a good use case for these values to persist between sessions, since this could easily lead to leakage of storage when the source code changes. Adding a function to purge persistent storage could help, but I feel like it's a burden to put this on the developer to remember to do.
I think instead we should align to the web API and create two StorageBacking impls per target - a LocalStorage that persists between sessions and supports synchronization, and a SessionStorage that is purged at the end of a session and does not support synchronization. I think that use_persistent falls more into the SessionStorage.

I've updated the web target to include a second StorageBacking that points to SessionStorage. I've updated this to split out the subscription into its own trait, allowing for separate implementations of StorageBackings that do not support subscription (such as the SessionStorage).
I've updated the example too so that it has two different counts: one that persists for only the current session and one that persists for all sessions with synchronization.
I'm not super happy with the way that dereferencing now happens for the use_synced_storage_entry. I tried moving back to using UseRef but I ran into some borrowing issues. Do you have any pointers for this?
I think my next order of business will be to swap the use of async_broadcast channels for tokio::sync::watch and assigning one per key, rather than sharing. Watch channels allow for polling on the Sender closed condition, meaning I wouldn't need to explicitly unsubscribe keys from the watcher (this isn't relevant for web, since we only have one watcher on all events, but it will be for filesystem). I will hand all subscription and channel creation over to the watcher task and will use oneshot channels to communicate the watch receiver back to the subscriber.

I tried simplifying the setup even more, not sure if I took it too far lol. Here's an implementation where the data inside StorageEntry is now stored in a signal, rather than storing the StorageEntry struct itself in a signal. This lets me just return back a vanilla Signal on deref. I use the subscriber model to then listen for changes and save them back to the storage. I think I could even decompose StorageEntry further with this, not sure if I should...
https://github.com/esimkowitz/dioxus-std/pull/1

I tried simplifying the setup even more, not sure if I took it too far lol. Here's an implementation where the data inside StorageEntry is now stored in a signal, rather than storing the StorageEntry struct itself in a signal. This lets me just return back a vanilla Signal on deref. I use the subscriber model to then listen for changes and save them back to the storage. I think I could even decompose StorageEntry further with this, not sure if I should...
esimkowitz#1

I like that approach better because it exposes all the same methods as a signal!

The web stuff is ready to go. I still need to implement the subscribe for the filesystem. I got swamped this week with work, probably will have time to work on this on Monday. I have a pretty solid idea of how to implement that, I just haven't sat down to actually bang it out yet.

The web stuff is ready to go. I still need to implement the subscribe for the filesystem. I got swamped this week with work, probably will have time to work on this on Monday. I have a pretty solid idea of how to implement that, I just haven't sat down to actually bang it out yet.

Sounds good! No rush at all, I just wanted to make sure you were not waiting on me

I've updated my implementation to use Watch channels instead of UseChannel. This lets me implement a stronger subscription mechanism, where each key gets its own channel. Now, I can fetch from storage once on an event and only notify the contexts that subscribe to the specific keys triggering the event. I can also more easily clean up old subscriptions, as I can watch for when the Sender gets closed (which happens automatically once all the Receivers are dropped) and then clean up any backing resources (like file watchers).
I've added a new trait for common StorageEntry functions and created a new wrapper struct SyncedStorageEntry to separate out the synchronization logic from the main struct even more.
I've also had to rework some of the internal hooks given this change to use a trait to encapsulate common StorageEntry functions.

The filesystem impl is now complete. I added a separate example for desktop. I want to add to this so that it demonstrates the multi-window support, then I think this will be ready

I updated the desktop example to support multiple windows. The syncing is working the first time the page comes into scope, but then it isn't resubscribing if you route away from the entry and return to it. It got me thinking though that since the desktop windows all run in the same thread, I can just use ThreadLocal to notify subscribers of changes and skip the file watcher altogether. This would be a lot cheaper, but would break if we ever change the desktop behavior to use separate threads per window

This is now fixed. I've verified that everything works as expected without the notify watcher.

I found a bug in the in-memory store. It is getting shared between windows since they are all on the same thread. I am going to see if I can tie it to the Dioxus context

This is my ideal approach to solve the above:
Make a hashtable that we encapsulate in an Arc and tie to the context lifetime using cx.provide_root_context. This has the advantage of cleaning up after itself when a scope is dropped, but it requires a rewrite of the StorageBacking trait to expose the context to it, even though it will only be used in one implementation.
Ideally, provide_root_context should be exposed as a global function similar to https://github.com/DioxusLabs/dioxus/pull/1572. This is already possible in dioxus-core using the with_runtime function, the same function that underpins provide_root_context.

Added a new issue for the above: https://github.com/DioxusLabs/dioxus/issues/1583

I've fixed the in-memory store issue, thanks @ealmloff for the tip!

Thank you! There are some trait bound issues with the web example, but it seems pretty easy to fix, so I can fix those after I merge this


Resume training from checkpoint with same hyperparameter

🚀 The feature, motivation and pitch
Hi
I have trained trained both speech encoder (whisperL-v3) and linear projector with freezed llama 3.2- 1b model for ASR task
. I found that all steps were completed  but eval loss still not saturate and there was still room for improvement in the model.
Now when i started resuming training from last saved checkpoint(which just saved trainable parameter (using original code's method to resume) . i found that result got degraded which was unexpected.
is there any way to resume training from same state with last saved hyperparameter.
I write this function to save checkpoint which save all detail like this
def save_model_checkpoint_peft(model, optimizer, lr_scheduler, epoch, step, best_val_loss, best_val_acc, scaler, cfg, checkpoint_name="checkpoint"):
logger.info(f"--> saving model checkpoint...")
save_dir = os.path.join(cfg.output_dir, checkpoint_name)
os.makedirs(save_dir, exist_ok=True)
save_full_path = os.path.join(save_dir, "checkpoint.pt")
if cfg.enable_ddp:
    model = model.module

# Save only trainable parameters
trainable_params = OrderedDict()
for name, param in model.named_parameters():
    if param.requires_grad:
        trainable_params[name] = param.data.cpu()

checkpoint = {
    'model_state_dict': trainable_params,
    'optimizer_state_dict': optimizer.state_dict(),
    'lr_scheduler_state_dict': lr_scheduler.state_dict() if lr_scheduler else None,
    'epoch': epoch,
    'step': step,
    'best_val_loss': best_val_loss,
    'best_val_acc': best_val_acc,
    'random_state': torch.get_rng_state(),
    'cuda_random_state': torch.cuda.get_rng_state_all() if torch.cuda.is_available() else None,
    'config': cfg.__dict__,
    'scaler': scaler.state_dict() if scaler else None,
}

torch.save(checkpoint, save_full_path)
logger.info(f"Checkpoint saved at {save_full_path}")

can some one help me with this ->does all these details are necessary to save ? and also how to use this aved lr_scheduler in train function .

it will be a great help for me and others too .

Thank you

Alternatives
No response
Additional context
No response

Hi, we did not implement the resuming of hyperparameters. Only the model parameters are saved. We want to implement it if time permits and welcome to contribute.


[QUESTION] - What is the best way to implement async calls?

Hello,
Thanks for the library, it is good attempt as a framework TUI applications, so I took it as a backbone for my application.
In short, I'm implementing a tool to watch remote execution of a bunch of jobs, some of them can be completed, while others may be still running, and there are dependencies between jobs like job "A" must wait until job "B" completes.
So there are 3 of things, that I cannot directly figure it out from the stdlib and the code of tui-realm:

Every, say 400ms, I need to make an async calls to the server for the jobs' statuses and grab the changes.
How do I integrate the results of the calls to the Event - Msg pipeline?

When a job is running, I need to show to the user that the job is running. The best way is to do it with spinners, and the spinners must spin, i.e. every e.g. 100ms to change its contents with the next symbol in an array (and when the end is reached, start from the first symbol again). I put the jobs in the List, table with several columns, so on every tick I need to update the first column separately for each row.
This makes it difficult since:
a. I see no natural way to integrate the application with a timer, namely tokio::timer;
b. The obvious attempt to wrap spinner into component bumps in with the following obstacle: TableBuilder allows TextSpans only, not Components.
So, could you give me a piece of advice, how it can be implemented and is there more optimal way to do it?

Thanks for listening 🙇

Hi there!

The update (via update()) pipeline is used to process input events coming from the user (e.g. keyboard input) and forward them to components. So in this case I think you'll need a worker which only has to wait for input events from the user via crossterm. The best thing to do here is to use a shared data, which holds the View to do that. So when you receive the result from the worker polling the server you will eventually call update() to update a component and forward the eventual event to the view with on().

Let's say that spinners are a hassle for tui, because they're a waste of resource, since you'll have to redraw the interface at each cycle, instead that only when you have to actually refresh the view (e.g. after input event / update). Anyway if you want to actually implement a spinner you'll have to create a custom component. Personally I think there are two options here:

Extend the List: I would start from the stdlib List and I would create a component to create a list with the job status rendered at the beginning of the row. Just use two TextSpan on the Line, one for the state and one for the text as-is. Then I would extend the PropsBuilder to accept the list of tuples made up of (State, Text) and I would store in the own map the count of items and in a Vec the states and in another the texts, or I would store each element as Tup2(Usize, String) with key TASK_n with n as the current index. Then in OwnState just add a spinner_step which tracks which step of the spinner you're in and at each step you increase the spinner, you could use a property in the props and call update after each step, since render doesn't take a mutable reference. I know it's kinda a mess and it would probably make sense to make render accepting a mutable reference (and unless there is a problem in implementing it, it will in the next version).

Anyway you should be able to use the timer I guess, as long yo're able to pass a Context containing the View.

Thank you for the answer, I will try to dig into it.


Always getting "Token not found in response"

Hi,
I'm currently trying to use the aurelia-authentication plugin with an already existing C# server infrastructure but can't get the login to work properly since I'm always getting an Token not found in response error.
I'm currently using the aurelia-fetch-client with the following base config:
let config = {
	baseUrl: 'https://<IP_ADDRESS>:446/',
	signupUrl: 'register',
	loginUrl: 'login',

	// Don't change hash on login/logout. Not needed since we switch shells...
	loginRedirect: undefined,
	logoutRedirect: undefined
};

export default config;

The server responds to my login request with status code 200 and some JSON which holds the user information including some user token which is later sent within the authentication header of every request which needs authentication.
The JSON looks something like this:
{
    email: "...",
    firstname: "...",
    lastname: "...",
    id: "....",
    userToken: "...."
}

I'd really appreciate some insights on how to properly form the response or change the config to get rid of the Token not found in response error.
Thanks & best regards

Login is working if I change my server response to something like this:
{
    email: "...",
    firstname: "...",
    lastname: "...",
    id: "....",
    access_token: "...." // <-- "UserToken" in original response
}

Therefore I've tried to adjust my base config accordingly by adding a dedicated accessTokenProp setting:
let config = {
	baseUrl: 'https://<IP_ADDRESS>:446/',
	signupUrl: 'register',
	loginUrl: 'login',

	// Don't change hash on login/logout. Not needed since we switch shells...
	loginRedirect: undefined,
	logoutRedirect: undefined,

	accessTokenProp: 'userToken' // <-- This line is new
};

export default config;

Unfortunately this sole change (adding the accessTokenProp) leads to an unhandled exception on app start:
Unhandled rejection Error: Error invoking AuthService. Check the inner error for details.
------------------------------------------------
Inner Error:
Message: Token not found in response
Inner Error Stack:
Error: Token not found in response
    at Authentication.getTokenFromResponse (https://localhost:9000/scripts/vendor-bundle.js:27028:25)
    at Authentication.getDataFromResponse (https://localhost:9000/scripts/vendor-bundle.js:26967:145)
    at Authentication.setResponseObject (https://localhost:9000/scripts/vendor-bundle.js:26903:14)
    at AuthService.setResponseObject (https://localhost:9000/scripts/vendor-bundle.js:27229:27)
    at new AuthService (https://localhost:9000/scripts/vendor-bundle.js:27187:12)
    at Object.invoke (https://localhost:9000/scripts/vendor-bundle.js:12426:14)
    at InvocationHandler.invoke (https://localhost:9000/scripts/vendor-bundle.js:12379:168)
    at Container.invoke (https://localhost:9000/scripts/vendor-bundle.js:12643:25)
    at StrategyResolver.get (https://localhost:9000/scripts/vendor-bundle.js:12096:37)
    at Container.get (https://localhost:9000/scripts/vendor-bundle.js:12570:41)
    at Object.invoke (https://localhost:9000/scripts/vendor-bundle.js:12426:81)
    at InvocationHandler.invoke (https://localhost:9000/scripts/vendor-bundle.js:12379:168)
    at Container.invoke (https://localhost:9000/scripts/vendor-bundle.js:12643:25)
    at StrategyResolver.get (https://localhost:9000/scripts/vendor-bundle.js:12096:37)
    at Container.get (https://localhost:9000/scripts/vendor-bundle.js:12570:41)
    at Object.configure (https://localhost:9000/scripts/vendor-bundle.js:27706:49)
End Inner Error Stack
------------------------------------------------

I'd really appreciate some help with this...

@suamikim Sorry, it has been a bit busy and I must admit I didn't see the notifications for this issue.
It can't find the token, so perhaps the accessTokenProp is broken. It's worth checking out why it's not being set. Would you mind taking a look and perhaps submitting a PR? The relevant code can be found around here: https://github.com/SpoonX/aurelia-authentication/blob/435e8b8898b6447b8d4b4ae49b6f18d0f42c777e/src/authentication.js#L211
Otherwise, I won't be able to look at this until (if I'm lucky) this weekend.
In case you can't, and you can wait, could you post an example response (JSON string) from your server here? That makes it easier to test.

@RWOverdijk Thanks for pointing out the relevant part in the source! I'm not sure if I find the time to look into this myself this week but I'll try. If not, I can wait until you find the time ;)
The response from our server looks something like this:
{
    email: "...",
    firstname: "...",
    lastname: "...",
    id: "....",
    userToken: "...."
}

Please let me know if I can give you any more detailed information!

@suamikim That should work... Weird.

I've finally found time to actually tackle this issue just to realize that adding accessTokenProp: 'userToken' to my config actually works as expected. I've no idea why it lead to an unhandled exception when I tried this 22 days ago (see my earlier post)...
Thanks for the help either way!

Great news! Thanks for the update. Appreciate it!

After a little more fiddling, I was now able to reproduce the above mentioned exception which actually had nothing to do with the config itself.
I'm using 2 different app shells for authentication & the main app and tried to set the correct shell on app start based on whether the user is already authenticated or not. I've tried to do this with the following code in app.ts:
import {Aurelia} from 'aurelia-framework'
// ...
import {AuthService} from 'aurelia-authentication';
// ...

export function configure(aurelia: Aurelia) {
	const auth = aurelia.container.get(AuthService);

	aurelia.use
		.standardConfiguration()
		.feature('resources')
		.plugin('aurelia-authentication', (baseConfig) => {
			baseConfig.configure(authConfig);
		});

	// ...

	aurelia.start().then(() => aurelia.setRoot(auth.isAuthenticated()? 'login' : 'main'));
}

What actually triggers the exception is the line const auth = aurelia.container.get(AuthService); which instantiates the AuthService. I guess this fails due to the fact, that the config has not been applied correctly at the time it is called.
I'm not quite sure if this is intended behavior or a bug but I was able to work around it using the following code:
// ...
export function configure(aurelia: Aurelia) {
	aurelia.use
		.standardConfiguration()
		.feature('resources')
		.plugin('aurelia-authentication', (baseConfig) => {
			baseConfig.configure(authConfig);
			aurelia.setRoot(
				aurelia.container.get(AuthService).isAuthenticated()
					? './app/main/main'
					: './app/login/login'
			);
		});

	// ...

	aurelia.start(); // Don't call setRoot after the app start but after the auth plugin has been configured...
}

The thing is that I'm not quite sure if moving the initial setRoot away from the start promise resolution into the auth plugin configuration is some kind of bad practice or has any drawbacks.
I'd really appreciate some input on this!

I should mention that isAuthenticated is async. If it needs to refresh tokens for instance, the result will always be false. Best is to wrap it in a callback.
Another thing to note, is that you can use aurelia-config for this. You can find an example of the config here: https://github.com/SpoonX/swan-example-client/blob/master/src/scripts/main.js#L21,L30
aurelia-config allows you to easily configure plugins, in order of being defined. It also merges configs, making it easier to have a local configuration file.

Thanks for the additional info! I'll definitely have a look at aurelia-config and use the callback.
I just realized one more thing:
The Token not found in response exception is also thrown, when initializing the AuthService on a machine which already has some authentication information saved in the local storage which differs from the apps current configuration.
E.g. I've already had some auth info saved in the local storage of my system at home. This auth info held the access token in the property access_token whilst my new config was looking for userToken.
I really think that this shouldn't happen since this exception effectively prevented the app from starting up correctly. Removing the existing auth info from the local storage "solved" the issue.

@suamikim That's something that I've seen happen as well, but only in dev. It might be nice to validate that in some way. I agree.

Hi @RWOverdijk I know this issue is so long time and to fix it, I have to return token in response. But It's weird and it should not be like that.
When I call login function, the Authorization in header will be set after successful login.
So why we need to get token from response?

@doktordirk  Thanks for your response.
I am using rails for backend. And in backend I use devise and devise-jwt to authenticate user.
When we request login api to backend, backend will authenticate user and the Authorization will be set to header.
Response now just is a user object. Example:
{"id":1,"uuid":"6dbc1dd7-ccb4-4b35-af35-22ad3d0aef19","name":"Test","email":"abc@gmail.com","deleted_at":null,"created_at":"2018-05-19T07:53:19.299Z","updated_at":"2018-05-19T07:53:19.299Z"}
In Frontent, aurelia-authentication plugin get the response from backend, it will check to get the token from the backend's response and raise the error 'Token not found in response'.
So to resolve it, the token must be included in response.
I just ask to know why dont we get the Authorization token from request header instead get it from response? Or something I was wrong in config.
Can you help me to figure out it?
Thank you so much

i see. well, using the header to return the token isn't done to often. this lib had the more common case in mind where the token is returned in the response.
to make it work with with plugin you'd have to add an interceptor to the fetch client which extracts the token from the header an adds it to the response.
.plugin('aurelia-api', config => {
      config
        .registerEndpoint('auth', 'http://auth/endpoint')  ;

        let fetchClient = config.getEndpoint('auth').client;
        fetchClient.interceptors.push(
          {
           response: (response, request) => {
             // that's maybe applied to often. could use an if(needed) {..} else return response;
             return response.json().then(body => {

               // get token from header and add it to the body (needs tweaking)
               body.token = response.headers.token;

               return new Response(JSON.stringify(body));
             });
           }
        }
    });

@doktordirk Hi guy. Thanks for your time to response this.
But the code didn't work anymore.
So I think I should custom the response from backend to sure that token will be included to response body.
Thank you.

// ...
export function configure(aurelia: Aurelia) {
	aurelia.use
		.standardConfiguration()
		.feature('resources')
		.plugin('aurelia-authentication', (baseConfig) => {
			baseConfig.configure(authConfig);
			aurelia.setRoot(
				aurelia.container.get(AuthService).isAuthenticated()
					? 'main'
					: 'login'
			);
		});

	// ...

	aurelia.start(); // Don't call setRoot after the app start but after the auth plugin has been configured...
}

The thing is that I'm not quite sure if moving the initial setRoot away from the start promise resolution into the auth plugin configuration is some kind of bad practice or has any drawbacks.
I'd really appreciate some input on this!

I just encountered the same problem, and it seems the configuration of the plugin is complete if you get the authservice after aurelia.start():
aurelia.start().then(() => {
     const auth = aurelia.container.get(AuthService);
     aurelia.setRoot(auth.isAuthenticated() ? 'main' : 'login');
});

Or async/await version
await aurelia.start();
const auth = aurelia.container.get(AuthService);
await aurelia.setRoot(auth.isAuthenticated() ? 'main' : 'login');

Looks and feel a bit better than setting root inside the plugin, at least to me.

That does look better 👍


test assembly skipped with weird message.  netcoreapp1.1 and net452

I have a library and a test library.  The test library references the library.  They are both using multitargeting of net452 and netcoreapp1.1.   The netcoreapp1.1 side tests fine.  The net452 gives me a weird error.
When do the following:
dotnet test testlib.csproj -f net452
I get this:
Skipping:  testlib (could not find dependent assembly 'testlib, version 6.10.2')
It's saying it's going to skip testlib because it can't find testlib.  But testlib is there with what seems to be all the necessary aux files in the net452 folder.
Any idea what might be going on here?
This is with VS 2017 RTM and .NET core 1.1

@rykr does diagnostic logs say anything? dotnet test testlib.csproj -f net452 -d:log.txt; the log.host.*.txt file generated may have interesting information.

Here is my log file.    Do you see anything weird?  I see one area where there is a failure to enumerate some types.
log.txt

@rykr can you please share log.host.17-03-17_13-44-08_89009_1.txt file too?

@rykr are you still facing this issue? or it get resolved?

we got it resolved.  not sure what the team did but don't think it's still an issue for us.