Move unread widget to separate module

This moves the unread widget to it's own module to shrink down the :app:common module.
Tasks once reviewed:

[ ] Pull latest translations from weblate, check if moved resources are affected and update this branch
[ ] After Merge update weblate to pickup the new module

Apologies. I merged the translation changes from Weblate before opening this pull request and realizing it moves strings to a different location.
But the merge conflict is an indicator that this change to translated strings in the repository could have lost changes made to translations on Weblate. I think whenever we move strings we need to lock translations on Weblate first, then merge all outstanding changes from Weblate, then create and merge the pull request. Otherwise there's always the potential for conflicts.

But the merge conflict is an indicator that this change to translated strings in the repository could have lost changes made to translations on Weblate. I think whenever we move strings we need to lock translations on Weblate first, then merge all outstanding changes from Weblate, then create and merge the pull request. Otherwise there's always the potential for conflicts.

That is expected, that's why I added the todos. I just didn't wan't to lock weblate for the time this pull-request is waiting for approval.

This PR changes the package name of UnreadWidgetProvider. That leads to existing widgets no longer working. See https://github.com/thunderbird/thunderbird-android/blob/33251e6a0fe1388dcc2a46fe71977795f68ee261/app/common/src/main/java/com/fsck/k9/provider/UnreadWidgetProvider.kt#L25-L26
I propose the following change to deal with this: https://github.com/cketti/k-9/commit/f059a3c9494506271fea3b44dd4ef42e17f42647

I guess then it's better I move the widget to it's final destination: :feature:widget:unread

I propose the following change to deal with this: https://github.com/cketti/k-9/commit/f059a3c9494506271fea3b44dd4ef42e17f42647

These changes break the widget. I'll have a look next week.


Updated dependencies

Fixes a whole lot of security issues from npm audit as well

The Travis issue isn't happening for me locally... but I have node 10 instead of 5

The devDeps upgrades in this PR broke our node version support, but I've published v2.1.2 (via GH-48) to upgrade merge to fix this vulnerability. Thanks for bringing this up!

Hi,
glad to hear you've fixed the vulnerability!
Thanks

Hey, wanted to ask since I have you here... Is there any chance of #46 being merged? I maintain a diverging fork but would like to switch back to upstream...
Thanks.


pretrain accuracy

Dear author, sorry to bother you~
when I use pretrain model (/trained_model_weights/ResNet-12_finetune/model.pth) to train, I found that the accuracy is only 20%. I don't know what's wrong? Maybe I use false pretain model? I don't know~~
Maybe you have some good advice~
hope you have a good day~

thanks for ur interest in our work!
could u please copy-paste the output training log here? thanks!

and when u say "the accuracy", u mean the training accuracy in the log or the validation accuracy?

thank you for your reply~
Although I change the format of log and some code which have no effect on the result, there are validation accuracy

thanks~

could u please copy-paste more of the log? including both the training loss/acc and valid acc? thanks!

ok~
when training epoch is 49 and 99.

the loss function i used is cross - entropy rather than nllloss.
Maybe it will be clearer~

this is  variation trend.
sorry to bother you again^^

from the log and figure u show above, looks like this is the training accuracy instead of the validation accuracy?
the training acc low might be reasonable because we are using high way during training (but i am not sure 20% is what we should expect, I'll check the fine-tuning log tmr on my end)
another thing i think might lead to this issue is replacing NLLLoss directly with CrossEntropyLoss. The model output is produced by LogSoftmax already and in this case, u are supposed to use NLLLoss. Check more in the pytorch doc
so I'll check this on my end tmr (fine-tune using the uploaded pre-trained model) and see how it goes. Meanwhile, could u please just run the original code and script as we provided on ur end and see whether it could produce good validation accuracy? Thanks!

thanks for your reply~
I'll also check out some of my code.
Many thanks for your kind and warm help ^^

I just checked the history finetuning log on my end, for 5-shot 20-way fine-tuning, the training accuracy starts with around 80 and ends with around 90, and validation accuracy starts with around 82 and ends with around 85. So 20% accuracy is definitely something not normal.
I also noticed that you are actually using the final fine-tuned model (trained_model_weights/ResNet-12_finetune/model.pth) to do the training instead of the pre-trained weights we provide (trained_model_weights/mini-ImageNet/FRN/ResNet-12_pretrain/model.pth), but this shouldn't cause the low accuracy issue though.
In order to debug, I highly suggest u first run our original code by following the instructions in the readme, and see whether this could produce normal results, if yes, that probably means there're some issues with your modification and we could debug them together.
Feel free to let me know when u finish the running or if there's anything else I can help with.

thank you sooooo much!
I am going to check my code and run code which you provided. And If I make any progress, I will tell you first time.
Thank you again! And I'll keep getting better at this!!
Hope you have a good day! ^^

no problem!
closing this issue for now, but feel free to re-open it if u have any more questions or updates on this issue.

Hi~
I'm writing to tahnk you for your help and i'm very happy that my accuracy is finally getting close to yours!The pretrain - train accuracy are almost 90%, and val is 70%. It's little difference from yours because i think backbone i used is resnet18.
And the reason why 20% accuracy happened is dataset :( , i am so careless and entrenched ideas made me to set up error target.
Sorry to waste your time. thank you so much for your help and wish you every success :)
------------------ 原始邮件 ------------------
发件人: @.>;
发送时间: 2022年5月15日(星期天) 凌晨4:19
收件人: @.>;
抄送: @.>; @.>;
主题: Re: [Tsingularity/FRN] pretrain accuracy (Issue #8)
Closed #8.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

glad to hear that this issue is sloved and thanks for using our FRN!

Hi~ I'm writing to tahnk you for your help and i'm very happy that my accuracy is finally getting close to yours!The pretrain - train accuracy are almost 90%, and val is 70%. It's little difference from yours because i think backbone i used is resnet18.  And the reason why 20% accuracy happened is dataset :( , i am so careless and entrenched ideas made me to set up error target. Sorry to waste your time. thank you so much for your help and wish you every success :)
…
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2022年5月15日(星期天) 凌晨4:19 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [Tsingularity/FRN] pretrain accuracy (Issue #8) Closed #8. — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

@Glutaredoxin Hello, could you please share the specific reason why your training accuracy is normal but the verification accuracy is very low? I also encountered this problem when I was pre-training on my own dataset.😢The log file is as below：

Any answer will be very helpful to me, thank you very much!😊o(￣▽￣)ブ

Hi~
I think it was because of a small issue where I forgot to shuffle my dataset during pre-training. Maybe you could check if there's a problem with your dataset. Hope this helps, and good luck with your experiments :)


luci-proto-wireguard: WireGuard VPN Protocol (New)

WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes
state-of-the-art cryptography. It aims to be faster, simpler, leaner, and
more useful than IPSec, while avoiding the massive headache. It intends to
be considerably more performant than OpenVPN.  WireGuard is designed as a
general purpose VPN for running on embedded interfaces and super computers
alike, fit for many different circumstances.
It runs over UDP.
Signed-off-by: Dan Lüdtke<EMAIL_ADDRESS>

Related: https://github.com/openwrt/packages/pull/3514

With luci support this is getting better and better hopefully this gets merged into openwrt, really looking foward to get an VPN running with a gui on a 32 MB RAM and 4 MB ROM MIPS device (https://wiki.openwrt.org/toh/unbranded/a5-v11).

@jow-  thank you for taking the time to review my PR. I committed the changes as requested.
Please review again and let me know if there are further changes needed.

What will happen next? Who is responsible for the next step in the merging process?

merged, thanks

It intends to be considerably more performant than OpenVPN.

This certainly does look innovative and promising, but how does it compare to SoftEther, which makes similar performance claims?
http://www.softether.org/


Fixing compilation error on Windows.

Fixes #31
This also updates the CI to include Windows. There may be other changes needed, but we will see what this CI says :joy:

oh sweet green sauce, it worked!


Confirmed uplink - Class A

Hello,
It seems the ReadAck never catch the ack.
I got the issue with previous version but after upgraded to V 2.0.0, still have the same problem.
The simple code:
lora.sendUplink(myStr, strlen(myStr), 1, 1);
ackStatus = lora.readAck();
if (ackStatus) {
  Serial.println("Acknowledged");
}
// Check Lora RX
lora.update();

Class A - TTN V3 - EU868

Dear,
I have the same problem with the same configuration (Class A - TTN V3 - EU868)
Do you have any solution about this problem ?
best regard

hi,
Do you have any response to this problem? Today, I am blocked
Cheers

You have to call lora.update() before lora.readAck(), because lora.sendUplink(...) only fills the TX buffer. LoRa transmission and receive happens in lora.update() only. Does this help?
Best regards


[Element move_unit] Is out of sync for clients

The Element starts to move the unit after the move is completed for the host.
Added a Vibration to visualize the issue in the video.
https://drive.google.com/file/d/1aZ23gH3UL_8T5w_okyGX4hyVW95UfUuJ/view?usp=sharing

BeardLib issue if anything. https://github.com/simon-wh/PAYDAY-2-BeardLib/issues

Just a speculation, this may be caused by the unit having sync on, disable that in the .unit file.

@Luffyyy I looked at the file there is no mention of sync


No video in WebClient

Report

[x ] I have searched existing issues and this is not a duplicate.

Environment

OS Version:
Windows 10

Issues and Steps to Reproduce
I am unable to get the sample WebClient to work. I have set up a coturn server and a signalling server according to the documentation. The StreamingDirectxClient works with the SpinningCubeServer. However, the WebClient shows nothing.
I am able to join the session with the following browser console output:
Created RTCPeerConnnection with config: {"iceServers":[{"urls":"turn:IP_TO_TURN_SERVER:3478","username":"MY_USERNAME","credential":"MY_PASSWORD","credentialType":"password"},{"urls":"stun:stun.l.google.com:19302"}],"iceTransportPolicy":"relay"}
js-3dstk.min.js:1 3.774: Prefer video receive codec: H264
js-3dstk.min.js:18 End of candidates.
Any ideas?

Report

[x ] I have searched existing issues and this is not a duplicate.

Environment

OS Version:
Windows 10

Issues and Steps to Reproduce
I am unable to get the sample WebClient to work. I have set up a coturn server and a signalling server according to the documentation. The StreamingDirectxClient works with the SpinningCubeServer. However, the WebClient shows nothing.
I am able to join the session with the following browser console output:
Created RTCPeerConnnection with config: {"iceServers":[{"urls":"turn:IP_TO_TURN_SERVER:3478","username":"MY_USERNAME","credential":"MY_PASSWORD","credentialType":"password"},{"urls":"stun:stun.l.google.com:19302"}],"iceTransportPolicy":"relay"}
js-3dstk.min.js:1 3.774: Prefer video receive codec: H264
js-3dstk.min.js:18 End of candidates.
Any ideas?

Hi
How can you resolve below issue
Error retrieving WebRTC libraries: Exception calling "GetResponse" with "0" argument(s): "The remote server returned an error: (503) Server Unavailable.
I am unable to proceed further .
Can you please help me on the above error ?

Hi!
setup.cmd fails downloading prerequesits. Do you have downloaded prerequesits?


Fixes typo in React reference docs

Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla - and if you have received this in error or have any questions, please drop us a line at<EMAIL_ADDRESS>Thanks!

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!

This typo is actually intentional :)
It's included to show a type error, which we also show inline:

That'll teach me to pattern match! Thanks.


My one thought tho was that most of the shell scripts probably need set -o errexit -o nounset -o pipefail.


Cosmos Diagnostics Handler for Python SDK

Description
This PR adds a diagnostics handler for the Python SDK of Cosmos DB. In short the python sdk diagnostics handler works a bit differently than the other SDKs in order to best fit the development needs and style of the Python programming language. The way the handler works in the Python SDK is that the handler is used to determine if http requests and responses should be logged using the Cosmos Http Logging Policy. By default, the behaviour is to log every request if the diagnostics is enabled, with the handler the user can customize the conditions for logging by either passing in a custom should_log method or by subclassing the handler and overriding the should_log method. They can also pass in an object with the mapping protocol that matches the key and values (simple lambdas) the http logging policy expects. The most customizable way to make the handler is making a function. The passed in function can also be passed and treated as a class method to allow the user access to log additional things such as cpu usage using their own preferred library or just maximize the customization of what conditions they want to log under. A CosmosDiagnosticsHandler class is also available to use as an easy way to define the logging conditions by simply initializing it and passing in the client. Here is a diagram to show how it works:
flowchart TD
    A[Initialize Cosmos Client] --> B{Is Diagnostics Enabled?}
    B -- No --> C[Continue with Default Behavior]
    B -- Yes --> D{Is Handler Callable?}
    D -- Yes --> E[Set should_log Method to Callable]
    D -- No --> F{Is Handler a Dictionary?}
    F -- Yes --> G[Set should_log Method in Cosmos Logging Policy to dict_should_log]
    F -- No --> C[Continue with Default Behavior]

The following are ways the diagnostics handler can be used:

Using the "CosmosDiagnosticsHandler" class, which has default behaviour that can be modified.
NOTE: The diagnostics handler will only be used if the enable_diagnostics_logging argument is passed in at the client constructor.
The CosmosDiagnosticsHandler is also a special type of dictionary that is callable and that has immutable keys. The values it expects are functions related to it's relevant diagnostic data. (e.g. diagnostics_handler["duration"] expects a function that takes in a int and returns a boolean as it relates to the duration of an operation to complete).from azure.cosmos import CosmosClient, CosmosDiagnosticsHandler
import logging
# Initialize the logger
logger = logging.getLogger('azure.cosmos')
logger.setLevel(logging.INFO)
file_handler = logging.FileHandler('diagnostics1.output')
logger.addHandler(file_handler)
diagnostics_handler = cosmos_diagnostics_handler.CosmosDiagnosticsHandler()
diagnostics_handler["duration"] = lambda x: x > 2000
client = CosmosClient(URL, credential=KEY,logger=logger, diagnostics_handler=diagnostics_handler, enable_diagnostics_logging=True)

Using a dictionary with the relevant functions to filter out the logs you don't want to see.# Initialize the logger
logger = logging.getLogger('azure.cosmos')
logger.setLevel(logging.INFO)
file_handler = logging.FileHandler('diagnostics2.output')
logger.addHandler(file_handler)
diagnostics_handler = {
    "duration": lambda x: x > 2000
}
client = CosmosClient(URL, credential=KEY,logger=logger, diagnostics_handler=diagnostics_handler, enable_diagnostics_logging=True)

Using a function that will replace the should_log function in the CosmosHttpLoggingPolicy which expects certain paramameters and returns a boolean. Note: the parameters of the custom should_log must match the parameters of the original should_log function as shown in the sample.# Custom should_log method
def should_log(self, duration=None, status_code=None, sub_status_code=None, verb=None, resource_type=None, is_request=False):
    return duration and duration > 2000

# Initialize the logger
logger = logging.getLogger('azure.cosmos')
logger.setLevel(logging.INFO)
file_handler = logging.FileHandler('diagnostics3.output')
logger.addHandler(file_handler)

# Initialize the Cosmos client with custom diagnostics handler
client = CosmosClient(endpoint, key,logger=logger, diagnostics_handler=should_log, enable_diagnostics_logging=True)

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-cosmos

/azp run python - cosmos - tests

/azp run python - cosmos - tests


📝 automation

Automate push checks
Automate build and push to pypi

Yep, trying to get it working(ish). Somethings might need additional work after this has been deployed


Still going?

First, thanks for doing this.
A) Is this still a going concern? No updates in a while
B) Is the change to .csv from .tsv file names in /data permanent? The file format seems to be the same.

Hi @MickeyLane

yes, it is still going
and yes, I'm changing everything to tsv


Invalid Link to The Building Blocks of Interpretability in README.md

Link in README.md references: https://github.com/tensorflow/lucid/blob/master
Should be: https://github.com/tensorflow/lucid
-- or --
Should be: https://distill.pub/2018/building-blocks/

Thanks for noticing, fixed in 6a8d2e5!


[goalc] register allocator v2

Reduces stack spill ops from 22757 to 4183.
Increases move elimination from 79.8% to 81.5% successful.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

616 of 983 (62.67%)  changed or added relevant lines in 16 files are covered.
274 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-0.5%) to 68.085%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

goalc/compiler/Compiler.cpp
11
18
61.11%

goalc/regalloc/allocator_interface.h
26
33
78.79%

goalc/compiler/compilation/CompilerControl.cpp
1
10
10.0%

goalc/regalloc/Allocator_v2.cpp
437
487
89.73%

goalc/regalloc/Allocator.h
0
74
0.0%

goalc/regalloc/Allocator.cpp
0
84
0.0%

goalc/regalloc/allocator_interface.cpp
92
228
40.35%

Files with Coverage Reduction
New Missed Lines
%

goalc/compiler/compilation/CompilerControl.cpp
1
36.16%

goalc/regalloc/Allocator.h
1
0%

goalc/emitter/Register.h
2
89.29%

goalc/regalloc/Allocator.cpp
270
0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.5%

Covered Lines:
39249

Relevant Lines:
57647

💛  - Coveralls


Slack talk exception

Occasionally when I run /slack talk someone it fails with this exception
python: error in function "slack_command_cb"
python: stdout/stderr: Traceback (most recent call last):
python: stdout/stderr:   File "/Users/ksmiley/dev/dotfiles/weechat/python/autoload/wee_slack.py", line 871, in slack_command_cb
python: stdout/stderr:     command = cmds[function_name](current_buffer, args)
python: stdout/stderr:   File "/Users/ksmiley/dev/dotfiles/weechat/python/autoload/wee_slack.py", line 919, in wrapper
python: stdout/stderr:     return f(current_buffer, *args, **kwargs)
python: stdout/stderr:   File "/Users/ksmiley/dev/dotfiles/weechat/python/autoload/wee_slack.py", line 949, in command_talk
python: stdout/stderr:     servers.find(current_domain_name()).users.find(args).open()
python: stdout/stderr: AttributeError: 'NoneType' object has no attribute 'open'

This isn't 100% but I thought I should put it on the radar. Let me know if I can provide anything else useful.

Ah this might be happening when attempting to talk to an invalid user name.

will take a look. should probably verify it is being done on a slack buffer via the decorator.

This code has been changed to fail more gracefully and not drop a stack trace. Going to close for now. LMK if you see further issues.

Thanks!


[Feature request] Auxiliary routes (i.e. many routes in a single url)

Hello,
Would it be possible to add support for routing, that resembles Angular 2 auxiliary routes, please?
In short, auxiliary routes work like this. The following route: www.lorem.com/#user/profile(aux1:tab1/point3//aux2:accordion3/foo/bar) would route the default, aux1 and aux2  to the following routes:
<router-view></router-view>: user/profile
<router-view name="aux1"></router-view>: tab1/point3
<router-view name="aux2"></router-view>: accordion3/foo/bar
This way those 3 <router-view>s can be navigated independently.
Vue-router already has a feature called "named views". The difference is, that those "named views" are navigated at the same time, whereas the auxiliary routes would be navigated independently.
More info about Angular 2 auxiliary routes here: https://yakovfain.com/2016/08/16/angular-2-working-with-auxiliary-routes/
Thanks.

+1 This would certainly be a great feature to have.

I'm interested in a convincing use case for this feature. To me this feels like a feature that is quite complex yet only cater to a very niche use case.

Hello Evan.
I can't come up with better use cases than the ones mentioned in the linked article.
I agree, that this feature is not of major importance. If you feel, that it'd introduce too much complexity compared to the benefits, then I'm ok with us closing this ticket and waiting for more people to express a need for this feature. In the meantime, I might do some research on my own to see how this could be implemented.
Thanks.

This hasn't received much attention and I don't find this feature necessary given named and nested routes in Vue Router. If someone thinks this idea is worth pursuing, please go through the RFC process


Fixed compatibility issue 3.4+

fixed compatibility for 3.4+ (see https://github.com/UseMuffin/Crypt/issues/3)

Fixed in #8. Thanks.


Fix typo in example notebook

Hello,
Really cool project!
I believe there is a small typo in this example
-Andres

Good catch. Thanks for correcting this.


Users should be able to remove photos from social/provider profile

Once you have an image uploaded, there is (seemingly) no way to remove it. You can choose a new file from your computer and save changes to update the image, yet there should be a way to explicitly remove an image in case the user chooses to do so.

Not sure if there's an existing issue, but the social_profile model should be merged with the user keep images under the same model.

@remomueller That issue can be found here: #194

Thanks, added #194 to Milestone 7.0


Time Zone issues

Several members on the east coast have mentioned dates showing up incorrectly.  Such as the deadline dates on the main page, and the attendance dates shown in the email.
These dates should be set to be PT and not local time.  I think that in each case, there's a mismatch.

closed as duplicate.


Fix method missing delegation to float ignoring blocks

@esposito We would like to request to become maintainer of this gem and use https://github.com/roqua/greater_less as the main repository for its development.

Please send me the RubyGems account email you'd like to add as a contributor


[CI] Reusable CI

Signed-off-by: Esteban Martinena<EMAIL_ADDRESS>

Two main comments:
Galactic and Foxy are not supported on main anymore, since this package depends on rmf_simulation which itself doesn't support them anymore. We should add the matrix to make sure we only test main under Jammy + Humble / Rolling.
I see linter errors in the rmf_demos_fleet_adapter that I can also reproduce through colcon test locally, not sure whether to include them in this PR or not. I also noticed that they were not caught by the style action, it seems to be a less strict constraint than flake8 / pep257 that are part of tests.
Also there are multiple Python packages (i.e. rmf_demos_tasks, rmf_demos_panel), but only one implements the linting tests (rmf_demos_fleet_adapter).
I would suggest unifying by either:

Remove the flake8 / pep257 tests from rmf_demos_fleet_adapter
Add flake8 / pep257 to all remaining Python packages and remove the style action, only relying on colcon test for style.

My personal preference would be for the second, to make this package in line with the rest of the RMF packages that have no style action but uncrustify / style as part of their tests, but I suspect introducing linting to these packages that never had it in the first place would bring quite a huge diff.

Closed by #208


Itinerary overlay does not clear from map

From Salem-Keizer Transit:

When you have two trip options overlaid, you can click one option to "clear" the display. I think this would still be confusing to most users.

Fixed in fd7a55d37a7693067b52f762513901e06ad364bb


Add air quality

Codecov Report
Patch coverage: 96.00% and project coverage change: -0.61 :warning:

Comparison is base (9e1f44f) 99.07% compared to head (dba42d8) 98.46%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #23      +/-   ##
==========================================
- Coverage   99.07%   98.46%   -0.61%
==========================================
  Files           6        7       +1
  Lines         216      261      +45
==========================================
+ Hits          214      257      +43
- Misses          2        4       +2

Impacted Files
Coverage Δ

src/plots_forecast.jl
98.49% <ø> (ø)

src/plots_air_quality.jl
94.28% <94.28%> (ø)

src/daily.jl
100.00% <100.00%> (ø)

src/helpers.jl
100.00% <100.00%> (ø)

src/hourly.jl
100.00% <100.00%> (ø)

src/request.jl
100.00% <100.00%> (ø)

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

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


Webpack updates

Fixes #

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: jamierytlewski sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Trying to write up how to use Webpack in our docs seems to have put us on a really fast treadmill that we're not actually equipped to keep up with. I'm going to close the old PRs relating to Webpack on the assumption that they're probably just as out-of-date as the content they're trying to update.


Skip notifying if notify_on condition does not match

To fix #24
@dtan4 @koudaiii please review.

LGTM :+1:

LTGM :+1:


:sparkles: Add version flag for operator-controller manager binary

Description

resolves #328
this just adds git commit version for now. Do we want to also show the release version?

Reviewer Checklist

[ ] API Go Documentation
[ ] Tests: Unit Tests (and E2E Tests, if appropriate)
[ ] Comprehensive Commit Messages
[ ] Links to related GitHub Issue(s)

I'd personally like to see release info in the version cmd as well ie 1.0.0 and the GHA's to be updated to accommodate. Since it's easier to go from a release -> commit, then from a commit -> release when trying to trouble shoot or find the culprit of a bug. But is this not something the maintainers what, that is also fine.

Thanks for the comments @acornett21 and @varshaprasad96.
I have made the necessary changes to also show release tag information with git commit.

I have made the necessary changes to also show release tag information with git commit.
@yashoza19 Does the GHA/Makefile need to be updated/enhanced accommodate this? Or do we get that for free somehow?

@acornett21

Thank you for the email. Kindly, please note your case is in progress. Our team will reach out if any documents are needed from your end, as of today, confirming there are  no actions pending from your end.

The MAKEFILE is updated in this PR. We can open another issue to update the GHA's if required.

@joelanford and @varshaprasad96, Thanks for the review. I have made the suggested changes, PTAL whenever you get a chance. Thanks!


Integration Tests

The integration tests are failing on the ADFS v4 test case. All other federated scenarios seem to be working fine, investigating on what is the issue.
Update: After investigation, this seems a bug, opened an issue to track this here
PR details: This adds e2e tests executing the Username password flow. It involves getting the user and application configuration from LabAPI and using this to run the e2e flow. Pointers to Lab API for reference : https://docs.msidlab.com/labapi/intro.html
The build fails because this includes a test which fails because of the bug mentioned above.

@element-of-surprise  Tried arranging the tests in a table driven tests format ! Let me know your feedback if anything can be improved there !


development with docker compose

once run docker compose up command, developers can develop Kokenwiki in Docker.
changes

run db:create and db:migrate in init containers
run javascript:build in Dockerfile

so needs to rebuild container image when fixing javascript or CSS sources.

close #235

thanks for your review!


SyntaxError: Cannot use import statement outside a module

Hello!
Wanted to use this plugin, but I can't get it running.
Using it like this:
import { tableField } from "payload-table-field";
import { type Block } from "payload/types";

export const TableBlock: Block = {
  slug: "Table",
  interfaceName: "TableBlock",
  fields: [
    {
      name: "items",
      type: "array",
      required: true,
      fields: [
        tableField(
          {
            name: "table",
            label: "Table",
          },
          {
            pagination: true,
            paginationPageSize: 10,
            paginationPageSizes: [5, 10, 25, 50, 100],
            editable: false,
            rowSelection: true,
            columns: [
              {
                key: "id",
                name: "ID",
                enableSorting: true,
              },
              { key: "title", name: "Title" },
              { key: "year", name: "Year" },
            ],
          },
        ),
      ],
    },
  ],
};

but getting this error:
/Users/user/dev/node_modules/.pnpm/payload-table-field@1.0.2_payload@2.11.1_react-dom@18.2.0_react@18.2.0/node_modules/payload-table-field/src/index.ts:1
import { Field, JSONField } from 'payload/dist/exports/types'
^^^^^^
@nextgen/cms:dev:
SyntaxError: Cannot use import statement outside a module
    at internalCompileFunction (node:internal/vm:77:18)
    at wrapSafe (node:internal/modules/cjs/loader:1288:20)
    at Module._compile (node:internal/modules/cjs/loader:1340:27)
    at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
    at Object.require.extensions.<computed> [as .ts] (/Users/user/dev/node_modules/.pnpm/ts-node@10.9.2_@swc+core@1.4.8_@types+node@18.19.3_typescript@5.3.3/node_modules/ts-node/src/index.ts:1608:43)
    at Module.load (node:internal/modules/cjs/loader:1207:32)
    at Function.Module._load (node:internal/modules/cjs/loader:1023:12)
    at Module.require (node:internal/modules/cjs/loader:1235:19)
    at require (node:internal/modules/helpers:176:18)
    at Object.<anonymous> (/Users/user/dev/apps/cms/src/blocks/Table.ts:11:26)

@benjick This is odd, what version of Payload are you running / what is your setup like?

This sounds more like an issue with the tsconfig maybe?

same issue

This is odd, your TSConfig looks about the same as mine. Looking into this...

@WillODR How are you running your payload project? I know that a misconfigured start script caused this issue for folks in other plugins

just using default script
"dev": "cross-env PAYLOAD_CONFIG_PATH=src/payload.config.ts nodemon",
i took a look at the ts config and mine is pretty similar had a play with it but couldn't get it to work. on version 2.14.0 not sure if that causes any issues.

Was running payload v1 until last month so might have missed a breaking change

@benjick @WillODR - Quick update: I figured out the initial issue, I wasn't building the project correctly so the npm package was trying to import from src, oops! Now I'm facing an issue where the built version is throwing a bunch of seemingly React-related errors but I'm not sure yet.

This issue should now be fixed. React wasn't part of `peerDependencies', so multiple versions were being pulled in. In addition, there was a bug with rowPinning (that I think is now resolved). Let me know if you run into any issues. @benjick  @WillODR

Thank you will let you know if I encounter any issues.


Use MonadRec for many

Rebased version of #21 (thanks @nwolverson!)
Resolves #21, resolves #9.

Looks great, but should this go in lists instead?

Oh right, we already have it there. In that case I'll drop it and add a re-export instead.

True, but the version in lists isn't stack safe.

How's this?

Looks great!

Nice :)


Model instances with HistoricalRecords do not have changeReason attribute

Describe the bug
Model instances with HistoricalRecords do not have changeReason attribute
Expected behavior
From ReadTheDocs pages, my understanding is, although I may be wrong, that when HistoricalRecords is added to a model, the model should acquire a changeReason attribute that can be used to set the reason for changing a record. For example, for a model like this one
class SaCerevisiaeStrain (models.Model):
    name = models.CharField("name", max_length = 255, blank=False)
    history = HistoricalRecords()

I expect SaCerevisiaeStrain to have a changeReason attribute that can be accessed like so SaCerevisiaeStrain.changeReason. Yet, I cannot see any such attribute. The history DB table does include ahistory_change_reason column, and I can set a value for it using the update_change_reason function.
Environment (please complete the following information):

OS: Debian 8.11
Django Simple History Version: 2.7.2
Django Version: 2.1.8
Database Version: MariaDB 10.2.6

Hi @nicolazilio, that's the expect behavior. changeReason isn't a field on the base instance, but if you set it on the base instance before saving, the changeReason will be saved on history_change_reason on the history table. This is done in this line: https://github.com/treyhunner/django-simple-history/blob/3df2061fb35953e2a59b67c119f2dd1bd57bd971/simple_history/models.py#L472
Thus, you'd have to do the following to set the changeReason on SaCervisiaeStrain:
sa_cervisiae_strain = SaCervisiaeStrain.objects.get(pk=1)
... any changes to the sa_cervisiae_strain object
sa_cervisiae_strain.changeReason = "I wanted to change it"
sa_cervisiae_strain.save()

Then, to query the change reason on an object, you'd have to query the history of that object and look for the history_change_reason.
Closing this since it's expected behavior tho

Great, thanks for the explanation.


Add RPM spec file

I've crafted a spec file to build an RPM named python-pypuppetdb which should work on most RH-flavour distros, but may need some later versions of packages building on some platforms.
I have tested it on CentOS 7 - I built updated versions of python-requests and python-urllib3 from Fedora 21.
I didn't get the tests working in the mock environment so I made them optional with a --with tests flag.
I didn't build the docs because they're not included in the tarball uploaded to pypi.python.org, which I used as the Source.
All RPMs are in my repo at http://repo.yo61.com/el/7

I am having 0 clues as to what's going on here but I'm going to assume you do :smile:.

This probably needed some discussion :) I'll seek you out on the interwebs...


 : Removing binaries that were used for installation but not required post installation.

 : features/config

@swizzlr Whenever you get the time.

@swizzlr @hamin Hello ?

@Khalian so I think that we can probably remove python package with confidence. I don't think we can remove curl since its used by NSURLSession under the covers. At one point i think we just had libcurl instead of curl installed but that stopped working with the swift images and we had to revert to curl. @Khalian if u could investigate if libcurl is sufficient now then we can probbaly just swap curl for libcurl. I'm not a sure about removing git and make either. I might be mistaken but I think the swift package manager does rely on git and perhaps on make for C deps but i could be wrong. @swizzlr thoughts?

@hamin That is very odd. We would need all of curl to work with NSURLSession? Is there a prototype script/bit of code I can try out with just libcurl ?
Not sure I understand git and make. I removed the two post installation. Are there modules other than Swift Package Manager which need it? And if so is there a requirement to keep the Swift Package Manager in the final draft of a build?

@hamin @swizzlr How about now ?

@Khalian I think i like it


os/exec: $HOME not updated when running command as a different UID

What version of Go are you using (go version)?

$ go version
go version go1.12.5 linux/amd64

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/wanrui/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/wanrui/workspace"
GOPROXY="https://goproxy.cn"
GORACE=""
GOROOT="/home/wanrui/go"
GOTMPDIR=""
GOTOOLDIR="/home/wanrui/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build173649310=/tmp/go-build -gno-record-gcc-switches"

What did you do?

there is testfile asynccmd .go
package main

import (
        "bufio"
        "context"
        "flag"
        "fmt"
        _ "net/http/pprof"
        "os/exec"
        "os/user"
        _ "runtime/pprof"
        "strconv"
        "syscall"
        "time"
)

const omg = `ls -al /tmp/ && nohup sleep 1000 &`

func main() {
        timeout := flag.Int("timeout", 120, "")
        command := flag.String("cmd", omg, "")
        runUser := flag.String("user", "www", "")
        pgid := flag.Bool("pgid", true, "Setpgid 开关。")

        flag.Parse()

        ctx, cancle := context.WithTimeout(context.Background(), time.Second*time.Duration(*timeout))
        defer cancle()
        cmd := exec.CommandContext(ctx, "/bin/bash", "-c", *command)

        user, _ := user.Lookup(*runUser)
        uid, _ := strconv.Atoi(user.Uid)
        gid, _ := strconv.Atoi(user.Gid)
        sysProcAttr := &syscall.SysProcAttr{
                Setpgid: *pgid,
                Credential: &syscall.Credential{
                        Uid: uint32(uid),
                        Gid: uint32(gid),
                },
        }
        cmd.SysProcAttr = sysProcAttr

        stdout, _ := cmd.StdoutPipe()
        stderr, _ := cmd.StderrPipe()
        if err := cmd.Start(); err != nil {
                fmt.Println("cmd.start occur error", err)
                return
        }

        go func() {
                b := bufio.NewReader(stdout)
                for {
                        buf, err := b.ReadBytes('\n')
                        if err != nil {
                                fmt.Println("read stdout err:", string(buf), err)
                                return
                        }
                        fmt.Println("read stdout buff:", string(buf))
                }

        }()

        go func() {
                b := bufio.NewReader(stderr)
                for {
                        buf, err := b.ReadBytes('\n')
                        if err != nil {
                                fmt.Println("read stderr err:", string(buf), err)
                                return
                        }
                        fmt.Println("read stderr buff:", string(buf))
                }

        }()

        if err := cmd.Wait(); err != nil {
                syscall.Kill(-cmd.Process.Pid, syscall.SIGKILL)
                fmt.Println("cmd.wait occur error ", err)
        }

}

there is file : /home/www/.bash_profile
# .bash_profile
# Get the aliases and functions
echo $HOME
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
export PATH

in /root dir run follow command:
./asynccmd -user="www" -cmd=" source /home/www/.bash_profile"

What did you expect to see?
read stdout buff: /home/www

read stdout buff:

read stdout err: java: read |0: file already closed
read stderr err:  read |0: file already closed

What did you see instead?
out is:
read stdout buff: /root

read stdout buff:

read stdout err: java: read |0: file already closed
read stderr err:  read |0: file already closed

some properties doesn't set?

Per http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03 (emphasis mine):

The system shall initialize this variable at the time of login to be a pathname of the user's home directory.

os/exec is not a login operation, so it doesn't update $HOME for you. I'm not sure whether it updates USER, either.
You can set both explicitly for the command using something like:
cmd.Env = append(os.Environ(), "USER="+user.Username, "HOME="+user.HomeDir)

We probably need clearer documentation about it either way.

CC @bradfitz @kevinburke @ianlancetaylor; see previously #26463.

I don't think os/exec should be in the business of adjusting the environment too much. We do a bit on Windows to make sure there's a minimally functional environment for loading DLLs, but I don't think we should do much more than that.

we hope it can simulate working of shell, as we specified the user. like subprocess in python, it works well.

when Current User is root  run shell as another User  like flow
sudo -u www  sh -c "source /home/www/.bash_profile  whereis java"

output like
/home/www

as @bcmills says we can code
like follow
        fmt.Println("current:cmd.env", cmd.Env)
        fmt.Println("current:os.Environ", os.Environ())
        cmd.Env = append(os.Environ(), "USER="+user.Username, "HOME="+user.HomeDir)
        sysProcAttr := &syscall.SysProcAttr{
                Setpgid: *pgid,
                Credential: &syscall.Credential{
                        Uid: uint32(uid),
                        Gid: uint32(gid),
                },
        }

os.Environ() is current User root 's ENV , May be cmd.Env should set like follow:
cmd.Env = append(cmd.Env, "USER="+user.Username, "HOME="+user.HomeDir)


go.micro.api.Request.Body contains invalid UTF-8

@asim after update the last version, i found this problem when send request containing files with content-type mulipart/form-data. it gives a error response
{
    "id": "go.micro.client.codec",
    "code": 500,
    "detail": "proto: field \"go.micro.api.Request.Body\" contains invalid UTF-8",
    "status": "Internal Server Error"
}

i have already update all dependency. not sure what happened to this.
before update it's work, i can get files from request with content-type mulipart/form-data.
help me! thanks!

bump....I ran into this issue just now - @prksu  just clarifying - were you sending images or txt docs?

Additional note when I was googling around - I think this is related?
https://github.com/golang/protobuf/pull/499

@mdere-unbound i'm trying sending mp4 file :sweat_smile:

The request body is a string. It's not possible to send bytes via this request type. Unfortunately changing this would be a breaking change so it's unclear how to move forward

Thanks @asim  - I spoke with you earlier - I'll look to the community and gather their thoughts.

@prksu  How did you solve it?

On my end we decided to go with go web and use http/net handler.
On Sat, Mar 9, 2019, 2:26 AM 周超<EMAIL_ADDRESS>wrote:

@prksu https://github.com/prksu How did you solve it?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/micro/go-api/issues/16#issuecomment-471154200, or mute
the thread
https://github.com/notifications/unsubscribe-auth/Asll2TeIqC_lHJV-ZGRIp5bgdQgHpXWDks5vU2IOgaJpZM4aOL3j
.


Hide a Lady Gaga Reference in this codebase

Hi @deepakunni3 I just stumbled on this and when I saw ghga I immediately thought Gaga. Keep up the great stuff :)

Thanks @cthoyt! :D
Now that is a "typo" waiting to happen ;)


Demo does not compile

It seems the demo does not compile:
/usr/bin/ld: libVFRendering.a(glad.c.o): undefined reference to symbol 'dlclose@@GLIBC_2.2.5'
/usr/lib/libdl.so.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/VFRenderingDemo.dir/build.make:99: VFRenderingDemo] Error 1
make[1]: *** [CMakeFiles/Makefile2:143: CMakeFiles/VFRenderingDemo.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

I believe this is because the -ldl is missing in the linking. If I append this manually to the linkline:
/usr/bin/c++     CMakeFiles/VFRenderingDemo.dir/demo.cxx.o  -o VFRenderingDemo libVFRendering.a /usr/lib/libglfw.so.3.2 qhull-prefix/src/qhull-build/libqhullcpp.a qhull-prefix/src/qhull-build/libqhullstatic_r.a -ldl
it works.

Something like
### OSX and Unix need libdl
if( APPLE )
    target_link_libraries( ${PROJECT_NAME}Demo dl )
elseif( UNIX )
    target_link_libraries( ${PROJECT_NAME}Demo dl )
elseif( WIN32 )
endif()

in the main CMakeLists.txt should resolve this.

I added GitLab CI builds that build the demo and 0f4835be8396734113a94716e7b85da31883747a should fix this issue.


Provide examples for Hive Metastore Database for Deltalake

Provide examples for Hive Metastore Database for Deltalake

@ulixius9 is this ok to close?


closes #67 | add search support

Codecov Report

Merging #88 (1d1ec42) into master (238fa98) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #88   +/-   ##
=======================================
  Coverage   99.15%   99.15%
=======================================
  Files          14       14
  Lines         119      119
  Branches        2        2
=======================================
  Hits          118      118
  Partials        1        1

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 238fa98...1d1ec42. Read the comment docs.


Fix upgrade script and add new ENV changes to documentation

This reverts a last minute change I made to the upgrade script, caused by a misunderstanding.
Changes documentation to reflect changes to .env files and the existence of .env.development
Adds documentation around how to disable user registration

converting to draft while I confirm docker


Add a check to see if Jenkins is clobbering tags

If the git tag begins with "jenkins", there's a pretty strong chance
that Jenkins is clobbering our git tag. I've added logic that checks for
a new env var, semverIfJenkins. If that is set to 1 when ldflags.sh is
called, ldflags.sh will check to see if the git tag begins with
"jenkins", and, if so, it grabs the latest git tag beginning with the
character "v" assuming that is a semver tag.
If semverIfJenkins is set but there is no semver tag, gittag will be
empty string.
Usage:
semverIfJenkins=1 source ldflags.sh

(Also, thanks for the PR! Sorry for the delay in reviewing it.)

Sorry if I've let this sit too long. I think that's wise. I'll see if I can find time to hack on it some more.

Not at all! If you want help, let me know, and I can probably implement some of this, too. I don't have a jenkins server handy, but I can do some of the bash stuff if necessary.
Also, as a note, just make sure your PR adds you (or DramaFever, if that's who owns the work you're contributing) to the AUTHORS file, and you (regardless of who owns the work) to the CONTRIBUTORS file.
... neither of which exists. I'll remedy that right now. I'm the worst.
(Basically, this just makes sure that the copyright owner retains their copyright claim on the code, and the people that actually wrote the code get the credit they deserve for writing it.)


correct something about oracle

all varchar types converted to varchar2 in oracle tags and a commented section moved to uncommented region.

This is correct. On Oracle you would almost always use VARCHAR2 data type, not VARCHAR.  In fact Oracle discourages the use of VARCHAR as they threaten to change its definition in the future.
It is all down to history.  When the ANSI standard began to formalize the VARCHAR data type, Oracle already had one and unfortunately for Oracle it was slightly different then the ANSI definition.

We need to have a JIRA ticket about the issue you describe here ( in https://issues.apache.org/jira/browse/JAMES ).
You will also need to prefix the commit message with the ticket number...
Here JAMES-XXXX correct something about oracle
Furthermore, maybe we can get a more meaningful commit message. I would propose JAMES-XXXX Enforce varchar2 usage for WhiteLists on top of Oracle database

Thanks to @phansson  @chibenwa.
I will close the pull request.


Compress Open Knowledge Foundation Nepal logo

The logo ok_lg_logo_nepal_white_rgb.png itself is 256KB causing load delay.

And redirect it to new Website: http://oknp.org, Currently used site is an old one.

@nikeshbalami Fixed redirect.


Product with 'force in stock' stock status is shown as out of stock

Environment Details

Spartacus:  1.2
Browser: Google Chrome Version 76.0.3809.132
OS: MacOS jave version 10.14.6
Device: laptop

Steps to Reproduce

change the stock status as force in stock

go to PDP for this product

Observed Results
the product is shown as out of stock

Expected Results
should show 'available online' like on-premise
Repository Used
Offer to Fix
Additional Information

when setting the stockstatus as 'force in stock', the response is:
"stock" : {
"stockLevelStatus" : "inStock"
},
when setting the stock status as 'not specified', the response is:
"stock" : {
"stockLevel" : 22,
"stockLevelStatus" : "inStock"
},
however, in add-to-cart component, the stock logic is
this.hasStock =
product.stock &&
product.stock.stockLevelStatus !== 'outOfStock' &&
product.stock.stockLevel > 0;
it doesn't consider the situation 'force in stock'

Investigate if it's a spartacus issue or if we need to request an update in the api.

+1
Besides, in SAP Commerce, if you don't associate any warehouse to the basestore, it will generate by default a stock with StockLevel == 0 (see de.hybris.platform.commercefacades.product.converters.populator.StockPopulator), so the condition on (product.stock.stockLevel > 0) fails.

Looks like it fixed:
QA:
When changing the stocks, it takes a while before it updates its in the backend. Wait ~45s and refresh the product page or navigate to it if you closed it.

Used 358639 product
change available amount to 0
change in stock status to force in stock
in spartacus, it should be show in stock for that product

Tested it on dev10 with hybris-commerce-suite-1905.6.zip (and develop branch of spartacussampledataaddon and commercewebservicesdata).
It is working like you describe it.

Setting it to 'force in stock', then going back to PDP, I can see that the product is in stock.
I can add it to cart, and place an order.
Sometimes it's just slow and you just have to wait a bit like Brian said... ~45s.


Promotion Logic Bug

There seems to be a problem with the Hyperband promotion logic.
How to reproduce:
Add type="promotion" to https://github.com/awslabs/syne-tune/blob/main/benchmarking/nursery/benchmark_automl/baselines.py#L69
Run python benchmarking/nursery/benchmark_automl/benchmark_main.py --num_seeds 1 --method ASHA --benchmark lcbench-airlines
  File "/syne-tune/benchmarking/nursery/benchmark_automl/benchmark_main.py", line 209, in <module>
    tuner.run()
  File "/syne-tune/syne_tune/tuner.py", line 240, in run
    raise e
  File "/syne-tune/syne_tune/tuner.py", line 175, in run
    new_done_trial_statuses, new_results = self._process_new_results(
  File "/syne-tune/syne_tune/tuner.py", line 345, in _process_new_results
    done_trials_statuses = self._update_running_trials(
  File "/syne-tune/syne_tune/tuner.py", line 465, in _update_running_trials
    decision = self.scheduler.on_trial_result(trial=trial, result=result)
  File "/syne-tune/syne_tune/optimizer/schedulers/hyperband.py", line 779, in on_trial_result
    task_info = self.terminator.on_task_report(trial_id, result)
  File "/syne-tune/syne_tune/optimizer/schedulers/hyperband.py", line 1124, in on_task_report
    rung_sys.on_task_report(trial_id, result, skip_rungs=skip_rungs)
  File "/syne-tune/syne_tune/optimizer/schedulers/hyperband_promotion.py", line 221, in on_task_report
    assert resource == milestone, (
AssertionError: trial_id 1: resource = 4 > 3 milestone. Make sure to report time attributes covering all milestones```

Hi Martin,
when testing DEHB, I also ran into an issue like this, for FCNet. It does not happen when you use max_resource_attr and pass it to the simulator backend as well, but this is of course not a proper fix.
Can we sync, and you tell me what you observed so far?

I can give this a try

num_layers: 3
max_units: 181
batch_size: 91
learning_rate: 0.003162277660168382
weight_decay: 0.050005
momentum: 0.545
max_dropout: 0.5

INFO:syne_tune.optimizer.schedulers.searchers.bayesopt.utils.debug_log:[1: random]
num_layers: 1
max_units: 144
batch_size: 411
learning_rate: 0.009322270368292423
weight_decay: 0.05591940112979374
momentum: 0.7192215979996427
max_dropout: 0.11133237466616985

DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 43.93, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 43.93, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 43.94, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 65.91, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 88.05, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 110.15, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 132.23, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 154.31, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 176.51, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 198.60, trial_id = 0]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push CompleteEvent:time = 1063.64, trial_id = 0]

DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 20.28, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 20.28, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 20.28, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 30.35, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 40.39, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 50.39, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 60.40, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 70.41, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 80.39, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push OnTrialResultEvent:time = 90.36, trial_id = 1]
DEBUG:syne_tune.backend.simulator_backend.simulator_backend:[push CompleteEvent:time = 480.27, trial_id = 1]

OK, there are two things here.
First, there seems to be data errors in some of our blackboxes. For example, in lcbench-airlines, results for the first 3 epochs return the same value for metric_elapsed_time.
Martin, can you confirm this? I hope this is not some other bug somewhere.
Second, the simulator backend should still work correctly even if some epochs take no time at all, and it does not. Fixing this is a bit more tricky, it relates to the fact that the simulator backend simulates behaviour with checkpointing without actualluy storing info about the trials. In particular, we need to know from which resource to resume a trial.

I should say that everything works fine if you use max_resource_attr instead of max_t with HyperbandScheduler, and also pass max_resource_attr to the simulator backend. The value of this field is often "epochs".
To me, this is anyway the preferred way of doing things. The training script usually has information about the maximum resource in its config, and both scheduler and backend should get this info from there.
If this is used, the backend knows how many resources a trial will emit when it gets started, and this prevents this bug from happening.

OK, so #317 fixes this, in the sense that code will run. But the data errors in the BB tables remain.

I am closing this issue, but instead we have another one, namely validating (and maybe fixing) data in lcbench, and maybe also in fcnet.
The issue is that for many configs (maybe for all?), the elapsed_time values in the first 3 epochs are identical or very close to identical.

I can't find the one issue so I'll leave my comment here: I can confirm that apparently the first epoch requires much more time while the following two don't need any. I could not find anything in the raw data which would explain this behavior.

OK, I keep getting this error that the elapsed_time (called "time") and also "val_accuracy" are exactly the same for the first 3 epochs.
This does not happen for all configs sampled, but for the large majority of them.
I pushed code with debug outputs to branch debug_martin

Debug code here: https://github.com/awslabs/syne-tune/blob/debug_martin/syne_tune/blackbox_repository/simulated_tabular_backend.py#L156
And here: https://github.com/awslabs/syne-tune/blob/debug_martin/syne_tune/blackbox_repository/utils.py#L54

If I then run python benchmarking/nursery/benchmark_automl/benchmark_main.py --num_seeds 1 --method ASHA --benchmark lcbench-airlines
I get output like this:
Index(['val_accuracy', 'time'], dtype='object') {'val_accuracy': 54.633484, 'time': 33.52457, 'epoch': 1} {'val_accuracy': 54.633484, 'time': 33.52457, 'epoch': 2} {'val_accuracy': 54.633484, 'time': 33.52457, 'epoch': 3} {'val_accuracy': 55.08092, 'time': 50.357838, 'epoch': 4} {'val_accuracy': 55.907024, 'time': 67.25511, 'epoch': 5} {'val_accuracy': 56.68802, 'time': 84.19331, 'epoch': 6} {'val_accuracy': 57.218803, 'time': 101.09334, 'epoch': 7} {'val_accuracy': 57.582386, 'time': 118.04459, 'epoch': 8} {'val_accuracy': 57.81063, 'time': 135.03284, 'epoch': 9} {'val_accuracy': 57.95385, 'time': 152.08, 'epoch': 10} {'val_accuracy': 58.067047, 'time': 169.16852, 'epoch': 11} {'val_accuracy': 58.141846, 'time': 186.28845, 'epoch': 12} {'val_accuracy': 58.18696, 'time': 203.40231, 'epoch': 13} {'val_accuracy': 58.220665, 'time': 220.46123, 'epoch': 14} {'val_accuracy': 58.24464, 'time': 237.45142, 'epoch': 15} {'val_accuracy': 58.243977, 'time': 254.37263, 'epoch': 16} {'val_accuracy': 58.246155, 'time': 271.27945, 'epoch': 17} {'val_accuracy': 58.26594, 'time': 288.19318, 'epoch': 18} {'val_accuracy': 58.282715, 'time': 305.1667, 'epoch': 19} {'val_accuracy': 58.286236, 'time': 322.18546, 'epoch': 20} {'val_accuracy': 58.30233, 'time': 339.26794, 'epoch': 21} {'val_accuracy': 58.31726, 'time': 356.34616, 'epoch': 22} {'val_accuracy': 58.31894, 'time': 373.41287, 'epoch': 23} {'val_accuracy': 58.321625, 'time': 390.44696, 'epoch': 24} {'val_accuracy': 58.326984, 'time': 407.4664, 'epoch': 25} {'val_accuracy': 58.333534, 'time': 424.4817, 'epoch': 26} {'val_accuracy': 58.336884, 'time': 441.51205, 'epoch': 27} {'val_accuracy': 58.336548, 'time': 458.55728, 'epoch': 28} {'val_accuracy': 58.336548, 'time': 475.6127, 'epoch': 29} {'val_accuracy': 58.338898, 'time': 492.60458, 'epoch': 30} {'val_accuracy': 58.338726, 'time': 509.54263, 'epoch': 31} {'val_accuracy': 58.341076, 'time': 526.4424, 'epoch': 32} {'val_accuracy': 58.34728, 'time': 543.30194, 'epoch': 33} {'val_accuracy': 58.353485, 'time': 560.1487, 'epoch': 34} {'val_accuracy': 58.3612, 'time': 577.0582, 'epoch': 35} {'val_accuracy': 58.36808, 'time': 594.0279, 'epoch': 36} {'val_accuracy': 58.373608, 'time': 611.07294, 'epoch': 37} {'val_accuracy': 58.375286, 'time': 628.1597, 'epoch': 38} {'val_accuracy': 58.3778, 'time': 645.2522, 'epoch': 39} {'val_accuracy': 58.379982, 'time': 662.3246, 'epoch': 40} {'val_accuracy': 58.383003, 'time': 679.3447, 'epoch': 41} {'val_accuracy': 58.385017, 'time': 696.27783, 'epoch': 42} {'val_accuracy': 58.388203, 'time': 713.1839, 'epoch': 43} {'val_accuracy': 58.390717, 'time': 730.07983, 'epoch': 44} {'val_accuracy': 58.39256, 'time': 746.9867, 'epoch': 45} {'val_accuracy': 58.391724, 'time': 763.9096, 'epoch': 46} {'val_accuracy': 58.391724, 'time': 780.819, 'epoch': 47} {'val_accuracy': 58.391216, 'time': 797.7084, 'epoch': 48} {'val_accuracy': 58.39038, 'time': 814.5716, 'epoch': 49} {'val_accuracy': 58.39038, 'time': 814.57153, 'epoch': 50} {'val_accuracy': 58.39038, 'time': 814.5716, 'epoch': 51} INFO:syne_tune.blackbox_repository.simulated_tabular_backend:Trial 23: Fetching results:   r=1, elapsed_time = 33.525   r=2, elapsed_time = 33.525   r=3, elapsed_time = 33.525   r=4, elapsed_time = 50.358   r=5, elapsed_time = 67.255   r=6, elapsed_time = 84.193   r=7, elapsed_time = 101.093   r=8, elapsed_time = 118.045   r=9, elapsed_time = 135.033   r=10, elapsed_time = 152.080   r=11, elapsed_time = 169.169   r=12, elapsed_time = 186.288   r=13, elapsed_time = 203.402   r=14, elapsed_time = 220.461   r=15, elapsed_time = 237.451   r=16, elapsed_time = 254.373   r=17, elapsed_time = 271.279   r=18, elapsed_time = 288.193   r=19, elapsed_time = 305.167   r=20, elapsed_time = 322.185   r=21, elapsed_time = 339.268   r=22, elapsed_time = 356.346   r=23, elapsed_time = 373.413   r=24, elapsed_time = 390.447   r=25, elapsed_time = 407.466   r=26, elapsed_time = 424.482   r=27, elapsed_time = 441.512   r=28, elapsed_time = 458.557   r=29, elapsed_time = 475.613   r=30, elapsed_time = 492.605   r=31, elapsed_time = 509.543   r=32, elapsed_time = 526.442   r=33, elapsed_time = 543.302   r=34, elapsed_time = 560.149   r=35, elapsed_time = 577.058   r=36, elapsed_time = 594.028   r=37, elapsed_time = 611.073   r=38, elapsed_time = 628.160   r=39, elapsed_time = 645.252   r=40, elapsed_time = 662.325   r=41, elapsed_time = 679.345   r=42, elapsed_time = 696.278   r=43, elapsed_time = 713.184   r=44, elapsed_time = 730.080   r=45, elapsed_time = 746.987   r=46, elapsed_time = 763.910   r=47, elapsed_time = 780.819   r=48, elapsed_time = 797.708   r=49, elapsed_time = 814.572   r=50, elapsed_time = 814.572   r=51, elapsed_time = 814.572

Interestingly, for this record, the values are the same for r=1,2,3 and also for r=49,50,51.
Maybe whoever created this data, did some funny "imputing"?

This "r=1,2,3" and "r=49,50,51" being the same happens for all sorts of other configs as well.

OK, I confirm Martin's observation that these errors are not in the raw data.
My best guess is this has something to do with the surrogate regression. This should really only be done with the config as input, so that a record (config1, resource1) can only be interpolated with data from the same resource level.

A safe way of making sure things work would be to use surrogate regression for each resource level separately

The bug as stated has been resolved, but follow-up error moved to #319


How can I COPY a file to docker image's directory '/usr/local/bin/'?

In Dockerfile,I can do this by "COPY xxx.sh /usr/local/bin/". How do it in Jib?

See the extraDirectories item (Maven, Gradle).

extraDirectories can‘t solve my problem. @briandealwis .I need copy a file into a folder of docker i mage. I didn't  found a way of extraDirectories to solve it. extraDirectories:
<configuration>
  <!-- Copies files from 'src/main/custom-extra-dir' and '/home/user/jib-extras' instead of 'src/main/jib' -->
  <extraDirectories>
    <paths>
      <path>src/main/custom-extra-dir</path>
      <path>/home/user/jib-extras</path>
    </paths>
  </extraDirectories>
</configuration>

But I wan't to do this.
in Dockerfile:
...
COPY  wait-for-it.sh   /usr/local/wait-for-it.sh
...

copy the the file wait-for-it.sh into docker images's /usr/local/wait-for-it.sh.

@andyzhaozhao you can place the wait-for-it.sh file at <project root>/src/main/jib/usr/local/wait-for-it.sh. No configuration is needed in this case (when using the default extra files directory src/main/jib). Then Jib will put the file at /usr/local/wait-for-it.sh in the image.

@briandealwis @chanseokoh Thank you. But I don't wan't to change my src codes. So high coupling of it. The 'ops' codes invade into the 'dev' codes. I think this‘s not
a good way to copy the wait-for-it.sh file to my src directory. I want separate the Dev and Ops.Are there any other way to solve my problem? May be I need use the Dockerfile directly instead of Jib?

Then, how about making a custom base image that has wait-for-it.sh pre-installed and have Jib base on it? Or, maybe the other direction: for example, you could run Jib without the script, and the later ops step could put the script using a Dockerfile, if that is the loose coupling you are talking about?

Will Jib Support COPY in the pom.xml now？

I'd say that is basically what <extraDirectories> does. You can configure the source path and control the destination.

@chanseokoh thank you as same. But ,either preparing a docker image which contains the wait-for-it.sh or putting script in other ops step is not a simple way to solve my problem.

How can I control the destination by extraDirectories ? @chanseokoh

For now, you have to layout the file structure as you would want to see in the image. For example, let's say locally you have /tmp/foo/bar/baz.txt in your laptop. Then if you specify /tmp as <extraDirectories><path>, the baz.txt will be placed under /foo/bar/ in the image. This is how you control the destination.

@chanseokoh Can extraDirectories support "../" ?

"Note that Jib does not follow symbolic links. If a symbolic link is present, it will be removed prior to placing the files and directories."

The follow config is wrong:
<!--将外部文件打包到镜像的配置-->
					<extraDirectories>
						<paths>
							<path>../docker/wait-for-it</path>
						</paths>
					</extraDirectories>

Is there a way to not override the entire destination folder but just copy the files?
Currently below configuration overrides the destination folder. So if existing files in the base image under /lib64 deleted and replaced with src/main/custom-extra-dir/lib64.
<path>
  <from>src/main/custom-extra-dir/lib64</from>
  <into>/lib64</into>
</path>

@chanseokoh Yeah seems it is pointing to lib64 -> usr/lib64. Thanks a lot for the clarification.
Can confirm if I use usr/lib64 which is not a symlink but a directory it copies the files without overriding the destination directory.


Unable to load file from URL due to CORS issue,

When loading from URL it fails to due to missing CORS headers

Hey @josedaudi , it won't be able to fetch pdf if the CORS policy is does not allow it. You may have to enable the CORS in the backend or call it via another backend server. Hence closing the issue as its an invalid one.


The following string occured many times in sources: '/profile-not-created'

webui.go:426:34:1 other occurrence(s) of "/profile-not-created" found in: webui.go:624:18
webui.go:624:18:1 other occurrence(s) of "/profile-not-created" found in: webui.go:426:34

Fixed via https://github.com/RedHatInsights/insights-operator-web-ui/pull/52


Master

@hernanramirez Thank you very much for this huge pull request, but django-twoscoops-project is at end-of-life (see https://github.com/twoscoops/django-twoscoops-project#what-about-django-17-or-higher). If you like we can link to your project much like we do with Kevin Xu's fork.


non root user can not run sealer apply

What happened:

What you expected to happen:
any user can exec sealer
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

sealer version (use sealer version):
Cloud provider or hardware configuration:
OS (e.g: cat /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

#160  fix it


Add Kirklevington Grange prison - DO NOT MERGE

We have been asked by Gary Monaghan to step back from implementing PVB at Kirklevington Grange for the time being.

Closing as no realistic prospect of onboarding Kirklevington Grange.


[FEATURE REQUEST] Optimize a version to use with ESP32 and microphone for assist

In my lab I made (hacked together with duck tape and hot glue) a version that works with microphone as an assist satelite.
The functionality was there but the display had some hiccups. I think because of timing issues. Voice is very depdendent on timing so the esp32_rmt_led_stripplattform.
My dream is to have some ehmtx devices in some rooms with a microphone for assist (Goodbye Alexa)

Woah.  I thought I saw some things in the repo that looked like that...
Did you add a microphone or mic array?  There's a speaker in there but I assumed that could only be used as a speaker?
Would you be able to share pictures, diagrams, anything?

These are old videos with the press button to speak assist :https://www.youtube.com/shorts/wHDdW07svjc and https://www.youtube.com/watch?v=CsOir14DCbM
With wake word the source has to be adapted but the impression is more or less the same

Oh.  I thought you had experimented with getting the Ulanzi to act as a voice assistant.  I have my doubts that a bare ESP32 such as exists in the Ulanzi can handle wakeword...
All the other examples I've seen, voice assistant still struggles with wakewords even though the assistant is the only component of the ESPHome device.
I myself have just ordered a ESP32 Korvo https://www.aliexpress.com/item/1005002803964499.html to play with.  It seems to have a lot of dedicated hardware to it to make a voice assistant...
I'd almost think that it would be better to simply stuff another ESP32 inside the Ulanzi case, replace the speaker and just have 2 different devices in the same box.

the esp32 is capable to do voice activation. The case of the ulanzi is hard to open, I will buy a new one and try this: https://github.com/lubeda/EspHoMaTriXv2/wiki/ulanzi-hardware-mode and try also to add a mic.


Upgrade preview command to match behaviour of express static server

Feature Description
Current preview command differs from the behaviour of most deployment environments. It would be good to better match production environments when running the preview command.

Workarounds
Use another preview server e.g.

npx http-server build
npx serve build


NanThrowError(Handle)

NAN_INLINE void NanThrowError(v8::Handle<v8::Value> error) {
    NanScope();
    v8::Isolate::GetCurrent()->ThrowException(error);
  }

This should probably be changed to
NAN_INLINE void NanThrowError(v8::Handle<v8::Value> error) {
    NanScope();
    v8::Isolate::GetCurrent()->ThrowException(v8::Exception::Error(error));
  }

and the same goes for the old version.

:+1: but should we check to see if it's already an Error first though?

Indeed. Best way is adding an overload taking a Handle, doing old behavior, and making the Handle version wrap it in an Error and calling the afforementioned version.
On April 29, 2015 3:41:07 AM EEST, Rod Vagg<EMAIL_ADDRESS>wrote:

:+1: but should we check to see if it's already an Error first
though?

Reply to this email directly or view it on GitHub:
https://github.com/iojs/nan/issues/322#issuecomment-97273341

perfect


Ensuring data-scientists group is added in prod

DS AAD group needs to exist in prod.

/test

:robot: pr-bot :robot:
:runner: Running tests: https://github.com/UCLH-Foundry/FlowEHR/actions/runs/4736134829 (with refid 8342a5b0)
(in response to this comment from @damoodamoo)

/test

:robot: pr-bot :robot:
:runner: Running tests: https://github.com/UCLH-Foundry/FlowEHR/actions/runs/4736825797 (with refid 8342a5b0)
(in response to this comment from @damoodamoo)

/test

:robot: pr-bot :robot:
:runner: Running tests: https://github.com/UCLH-Foundry/FlowEHR/actions/runs/4741459256 (with refid 8342a5b0)
(in response to this comment from @jjgriff93)

/test

:robot: pr-bot :robot:
:runner: Running tests: https://github.com/UCLH-Foundry/FlowEHR/actions/runs/4741570505 (with refid 8342a5b0)
(in response to this comment from @damoodamoo)

:robot: pr-bot :robot:
/test-destroy-env is not recognised as a valid command.
You can use the following commands:
    /test - deploy any modified modules and destroy
    /test-all - deploy everything (ignoring path filters) and destroy
    /test-force-approve - force approval of the PR tests (i.e. skip the deployment checks)
    /destroy - delete the PR environment (e.g. to enable testing a deployment from a clean start after previous tests)
    /destroy-no-terraform - delete the PR environment without terraform
    /help - show this help
(in response to this comment from @damoodamoo)

/destroy

:robot: pr-bot :robot:
Destroying environment (with refid 8342a5b0)
(in response to this comment from @damoodamoo)

/test-force-approve
build + destroy failed on AML storage account, unrelated

:robot: pr-bot :robot:
:white_check_mark: Marking tests as complete (for commit c16fb68e717ecc4ab20e158c5c66e120c61b23be)
(in response to this comment from @damoodamoo)


Label the kube-system namespace with managed-by label

Description
Similarly to istio-system and kyma-system namespaces, we should treat the kube-system namespace with the managed-by label.
Reasons
This will indicate that kube-system namespace should not be interacted with by the user.
It will also simplify filtering out traces/logs.
Acceptance Criteria

[ ] kube-system namespace is labelled with the operator.kyma-project.io/managed-by=kyma label

Feature Testing
No response
Testing approach
No response
Attachments
No response

Blocked by: https://github.com/kyma-project/lifecycle-manager/issues/1821

we have a decision that kyma infrastructure manager takes responsibility for labeling it.


[bug] Add command to clear mask

/wsm default_exclude
Now only way to reset exclude list is disconnected

fixed in #4


feat: add fallback to .ruby-version file

Summary
A common pattern for ruby apps is to load the ruby version in the Gemfile dynamically from a file named .ruby-version in the workspace root. This adds a fallback for when the ruby version can't be found in the Gemfile to try and read .ruby-version.
Use Cases
Quite a few ruby version managers use this file. Due to this, people started loading the loading the ruby version dynamically in the Gemfile:
ruby File.read('.ruby-version').strip

This breaks the current Gemfile version detection as it's a simple pattern matcher. To read it out dynamically during detect seems quite a bit more complex than just reading this additional file directly. It would require running a ruby parser.
Checklist

[x] I have viewed, signed, and submitted the Contributor License Agreement.
[ ] I have linked issue(s) that this PR should close using keywords or the Github UI (See docs)
[ ] I have added an integration test, if necessary.
[x] I have reviewed the styleguide for guidance on my code quality.
[x] I'm happy with the commit history on this PR (I have rebased/squashed as needed).

@ctrox thanks for submitting this! I think I'm fine with this in principle, but I think we have to clarify the logic under various permutations (and then backfill the tests as appropriate).
What should be the behavior of this buildpack when:

Gemfile.lock exists and has a valid ruby version (that doesn't require a ruby parser).
a. .ruby-version file does not exist
b. .ruby-version file exists but does not have a valid version
c..ruby-version file exists and has a valid version

Gemfile.lock exists but does not have a valid ruby version
a. .ruby-version file does not exist
b. .ruby-version file exists but does not have a valid version
c..ruby-version file exists and has a valid version

Gemfile.lock does not exist.
a. .ruby-version file does not exist
b. .ruby-version file exists but does not have a valid version
c. .ruby-version file exists and has a valid version

Many of these use-cases will coalesce into the same logic, but I think it's worth being explicit - both in this conversation and in the tests

You are right, there are a few things I have not yet thought about, especially doing some validation of the version we read out of .ruby-version.
With Gemfile.lock you mean just Gemfile, right? My thinking was to keep as much of the current behavior as possible and only fall back to .ruby-version if the version can't be determined from the Gemfile.

What should be the behavior of this buildpack when:
1. `Gemfile.lock` exists and has a valid ruby version (that doesn't require a ruby parser).
   a. `.ruby-version` file does not exist
   b. `.ruby-version` file exists but does not have a valid version
   c.`.ruby-version` file exists and has a valid version

The ruby version of Gemfile has precedence no matter if the .ruby-version exists or has a valid version in it.

2. `Gemfile.lock` exists but does not have a valid ruby version
   a. `.ruby-version` file does not exist
   b. `.ruby-version` file exists but does not have a valid version
   c.`.ruby-version` file exists and has a valid version

The ruby version is used from .ruby-version if it exists and is valid. If .ruby-version is invalid, mriVersion should be empty. So we'll need to add at least some validation of the version number as is already the case with the Gemfile version.

3. `Gemfile.lock` does not exist.
   a. `.ruby-version` file does not exist
   b. `.ruby-version` file exists but does not have a valid version
   c. `.ruby-version` file exists and has a valid version

I'd say behaviour is the same as before, without a Gemfile bundle can't do anything so detection fails before even looking at versions.
Do you think this makes sense?

My thinking was to keep as much of the current behavior as possible and only fall back to .ruby-version if the version can't be determined from the Gemfile.

@ctrox the path you've laid out makes sense to me as long as this is the experience we'd expect in a typical Ruby build (a valid Gemfile Ruby version takes precedence over a .ruby-version file). Let's see if Rob agrees

With Gemfile.lock you mean just Gemfile, right?

Yeah, sorry!

My thinking was to keep as much of the current behavior as possible and only fall back to .ruby-version if the version can't be determined from the Gemfile.

Agreed - that seems like the best guiding principle to ensure no breaking changes to the behavior.

[When the Gemfile contains a valid ruby version]
The ruby version of Gemfile has precedence no matter if the .ruby-version exists or has a valid version in it.

Great. That's clear.

[When the Gemfile does not contain a valid ruby version]
The ruby version is used from .ruby-version if it exists and is valid. If .ruby-version is invalid, mriVersion should be empty. So we'll need to add at least some validation of the version number as is already the case with the Gemfile version.

This makes sense, and just to be crystal clear, in this situation you're saying you'd expect that this buildpack would still participate in the build like it does today, it just wouldn't provide a MRI version / source combination in the Detect response?
I think this is an area where the code will need expanding to handle these extra edge cases. As you point out, this PR doesn't currently validate the ruby version returned from the .ruby-version file.

[When there is no Gemfile]
without a Gemfile bundle can't do anything so detection fails before even looking at versions.

That seems reasonable. I wanted to make sure we weren't adding scope-creep to this buildpack to parse the .ruby-version when it otherwise wouldn't participate in the build process.

@robdimsdale do all your comments seem resolved now? I'm good to go


TypeError: init() got an unexpected keyword argument 'to_onehot_y'

Describe the bug
The code from A U-Net model for lung lesion segmentation from CT images could not be runned.
The error information is: TypeError: __init__() got an unexpected keyword argument 'to_onehot_y'.
To Reproduce
Steps to reproduce the behavior:

Go to https://github.com/Project-MONAI/tutorials/tree/master/3d_segmentation/challenge_baseline/
Install MONAI by pip install "git+https://github.com/Project-MONAI/MONAI#egg=monai[nibabel,ignite,tqdm]"
Run commands python run_net.py train --data_folder "COVID-19-20_v2/Train" --model_folder "runs"

Expected behavior
Start training of the model.
Screenshots

Environment (please complete the following information):

OS: CentOS
Python version: 3.6
MONAI version [e.g. git commit hash]: 0.3.0
CUDA/cuDNN version:
GPU models and configuration

Additional context
https://covid-segmentation.grand-challenge.org/Resource/

Hi @Ordgod ,
This is a known issue, @yiheng-wang-nv is working on it to update all the tutorials and examples.
Please use the code under tag 0.3.0 instead of the master branch.
Thanks.

I'm currently working on a fix for the baseline. cc @yiheng-wang-nv @Nic-Ma (v0.3.0 won't work as we created a new network instance for it.)

I'm currently working on a fix for the baseline. cc @yiheng-wang-nv @Nic-Ma (v0.3.0 won't work as we created a new network instance for it.)

OK, I see. This is the new added tutorial.
@yiheng-wang-nv is already working on a PR to update all the notebooks and examples, will finish it soon.
Thanks.


⚠ Samsung has degraded performance

In 1c1456c, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2448 ms

Resolved: Samsung performance has improved in 8b2b347.


Uncaught Error: Cannot decorate a destroyed marker

[Enter steps to reproduce below:]

Create a JSX script.
Create a React object in it.
Attempt to collapse one of the methods in the React object by selecting the arrow next to the number.

Atom Version: 1.5.3
System: Mac OS X 10.11.3
Thrown From: Atom Core
Stack Trace
Uncaught Error: Cannot decorate a destroyed marker
At /Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:1052

Error: Cannot decorate a destroyed marker
    at DisplayBuffer.module.exports.DisplayBuffer.decorateMarker (/Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:1052:15)
    at DisplayBuffer.module.exports.DisplayBuffer.decorateFold (/Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:1356:19)
    at DisplayBuffer.module.exports.DisplayBuffer.createFold (/Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:628:16)
    at TextEditor.module.exports.TextEditor.createFold (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:2659:33)
    at LanguageMode.module.exports.LanguageMode.foldBufferRow (/Applications/Atom.app/Contents/Resources/app.asar/src/language-mode.js:147:30)
    at TextEditor.module.exports.TextEditor.foldBufferRow (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:2599:32)
    at LineNumberGutterComponent.module.exports.LineNumberGutterComponent.onClick (/Applications/Atom.app/Contents/Resources/app.asar/src/line-number-gutter-component.js:137:30)
    at HTMLDivElement.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/line-number-gutter-component.js:3:61)

Commands
     -0:34.5.0 core:save (atom-text-editor.editor.emacs-plus.is-focused)
  2x -0:29.7.0 core:move-left (atom-text-editor.editor.emacs-plus.is-focused)
     -0:27.5.0 core:backspace (atom-text-editor.editor.emacs-plus.is-focused.autocomplete-active)
  2x -0:25.2.0 core:save (atom-text-editor.editor.emacs-plus.is-focused)
 11x -0:22.4.0 core:move-down (atom-text-editor.editor.emacs-plus.is-focused)
  8x -0:20 core:move-up (atom-text-editor.editor.emacs-plus.is-focused)
 10x -0:18.2.0 core:move-down (atom-text-editor.editor.emacs-plus.is-focused)
  2x -0:15.1.0 core:move-up (atom-text-editor.editor.emacs-plus.is-focused)
     -0:12 snippets:next-tab-stop (atom-text-editor.editor.emacs-plus.is-focused)
     -0:12 snippets:expand (atom-text-editor.editor.emacs-plus.is-focused)
     -0:12 editor:indent (atom-text-editor.editor.emacs-plus.is-focused)
  6x -0:10.6.0 core:backspace (atom-text-editor.editor.emacs-plus.is-focused.autocomplete-active)
     -0:07.2.0 editor:newline (atom-text-editor.editor.emacs-plus.is-focused)
     -0:06.6.0 editor:move-to-end-of-screen-line (atom-text-editor.editor.emacs-plus.is-focused)
     -0:06.2.0 core:move-down (atom-text-editor.editor.emacs-plus.is-focused)
  8x -0:05.0 core:backspace (atom-text-editor.editor.emacs-plus.is-focused)

Config
{
  "core": {
    "themes": [
      "atom-dark-ui",
      "atom-dark-syntax"
    ]
  },
  "editor": {
    "fontSize": 16,
    "invisibles": {}
  }
}

Installed Packages
# User
emacs-plus, v0.9.11
react, v0.14.1

# Dev
No dev packages

Can you try reproducing this in safe mode (atom --safe)?  Thanks!

I just tried it, in safe mode on the same file. Nothing happened.
The collapse worked perfectly, the first time without reporting the error.
Before it would error on the first click of arrow and work on the second click, by both highlighting the arrow and collapsing the method without an issue.

Ok.  If it doesn't happen in safe mode, and you were working on a React object, the issue is probably coming from the React package - you'll probably want to report this issue over there.
I'll leave this open just in case this can be better handled in Atom core though.

Happens not only with the React package.
[Enter steps to reproduce below:]

Open a py (Python) file
Try to collapse a class, method, function, … (stack trace below is from trying to collapse a method)

Atom Version: 1.5.3-3e71894
System: Debian GNU/Linux
Thrown From: Atom Core
Stack Trace
Uncaught Error: Cannot decorate a destroyed marker
At /home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/display-buffer.js:1052

Error: Cannot decorate a destroyed marker
    at DisplayBuffer.module.exports.DisplayBuffer.decorateMarker (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/display-buffer.js:1052:15)
    at DisplayBuffer.module.exports.DisplayBuffer.decorateFold (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/display-buffer.js:1356:19)
    at DisplayBuffer.module.exports.DisplayBuffer.createFold (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/display-buffer.js:628:16)
    at TextEditor.module.exports.TextEditor.createFold (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/text-editor.js:2659:33)
    at LanguageMode.module.exports.LanguageMode.foldBufferRow (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/language-mode.js:147:30)
    at TextEditor.module.exports.TextEditor.foldBufferRow (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/text-editor.js:2599:32)
    at LineNumberGutterComponent.module.exports.LineNumberGutterComponent.onClick (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/line-number-gutter-component.js:137:30)
    at HTMLDivElement.<anonymous> (/home/mfk/repos/coffeescript/atom-install/share/atom/resources/app.asar/src/line-number-gutter-component.js:3:61)

Commands

Config
{
  "core": {
    "audioBeep": false,
    "autoHideMenuBar": true,
    "disabledPackages": [
      "linter-pylint",
      "git-grep",
      "language-python"
    ],
    "themes": [
      "atom-light-ui",
      "atom-light-syntax"
    ]
  },
  "editor": {
    "backUpBeforeSaving": true,
    "fontFamily": "Inconsolata",
    "fontSize": 13,
    "invisibles": {},
    "showIndentGuide": true,
    "showInvisibles": true,
    "softTabs": false,
    "softWrap": true,
    "tabLength": 4
  }
}

Installed Packages
# User
MagicPython, v0.5.8
atom-django, v0.3.2
atomatigit, v1.5.5
autocomplete-python, v1.6.1
clipboard-plus, v0.5.1
emacs-plus, v0.9.11
ember-snippets, v1.4.0
formatter, v2.12.3
language-diff, v0.4.0
language-docker, v1.1.6
linter, v1.11.3
linter-pylama, v0.2.6
python-autopep8, v0.1.3
python-iresolve, v0.0.3
python-isort, v0.0.7
python-jedi, v0.3.6
python-tools, v0.6.7
standard-formatter, v2.0.0

# Dev
No dev packages

@michael-k Please try reproducing this in safe mode: atom --safe.

As I wrote above, I cannot reproduce this in safe mode, because the icon to collapse a piece of python code is not there in safe mode.

Sorry, I missed that.  Can you try the package-cop package to track down which package is giving you this error?

The same issue here. I guess it might caused by emacs-plus package.
Atom Version: 1.5.4
System: Mac OS X 10.11.3
Thrown From: Atom Core
Stack Trace
Uncaught Error: Cannot decorate a destroyed marker
At /Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:1052

Error: Cannot decorate a destroyed marker
    at DisplayBuffer.module.exports.DisplayBuffer.decorateMarker (/Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:1052:15)
    at DisplayBuffer.module.exports.DisplayBuffer.decorateFold (/Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:1356:19)
    at DisplayBuffer.module.exports.DisplayBuffer.createFold (/Applications/Atom.app/Contents/Resources/app.asar/src/display-buffer.js:628:16)
    at TextEditor.module.exports.TextEditor.createFold (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:2659:33)
    at LanguageMode.module.exports.LanguageMode.foldBufferRow (/Applications/Atom.app/Contents/Resources/app.asar/src/language-mode.js:147:30)
    at TextEditor.module.exports.TextEditor.foldBufferRow (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:2599:32)
    at LineNumberGutterComponent.module.exports.LineNumberGutterComponent.onClick (/Applications/Atom.app/Contents/Resources/app.asar/src/line-number-gutter-component.js:137:30)
    at HTMLDivElement.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/line-number-gutter-component.js:3:61)

Commands
     -0:09.4.0 autoflow:reflow-selection (atom-text-editor.editor.is-focused.emacs-plus)
  2x -0:08.7.0 core:move-up (atom-text-editor.editor.is-focused.emacs-plus)
     -0:08.1.0 core:move-right (atom-text-editor.editor.is-focused.emacs-plus)
     -0:07.7.0 core:move-left (atom-text-editor.editor.is-focused.emacs-plus)
     -0:07.5.0 core:move-right (atom-text-editor.editor.is-focused.emacs-plus)
  2x -0:07.4.0 core:move-left (atom-text-editor.editor.is-focused.emacs-plus)
     -0:06.9.0 core:move-right (atom-text-editor.editor.is-focused.emacs-plus)
  2x -0:06.6.0 core:move-left (atom-text-editor.editor.is-focused.emacs-plus)
     -0:06.1.0 core:move-right (atom-text-editor.editor.is-focused.emacs-plus)
  2x -0:06.1.0 core:move-left (atom-text-editor.editor.is-focused.emacs-plus)
     -0:05.5.0 core:move-down (atom-text-editor.editor.is-focused.emacs-plus)
  2x -0:05.3.0 core:move-left (atom-text-editor.editor.is-focused.emacs-plus)
     -0:04.8.0 core:move-down (atom-text-editor.editor.is-focused.emacs-plus)
  2x -0:04.7.0 core:move-left (atom-text-editor.editor.is-focused.emacs-plus)
     -0:03.7.0 core:move-right (atom-text-editor.editor.is-focused.emacs-plus)
     -0:03.3.0 core:move-left (atom-text-editor.editor.is-focused.emacs-plus)

Config
{
  "core": {
    "disabledPackages": [
      "line-ending-selector",
      "browser-plus",
      "latex",
      "fancy-bracket-matcher",
      "atom-bracket-highlight",
      "language-mustache"
    ],
    "projectHome": "/Users/shou/project",
    "themes": [
      "yosemate-ui",
      "atom-light-syntax"
    ]
  },
  "editor": {
    "autoIndent": false,
    "backUpBeforeSaving": true,
    "fontSize": 12,
    "invisibles": {},
    "preferredLineLength": 70,
    "showIndentGuide": true,
    "softWrap": true
  }
}

Installed Packages
# User
animated-page-scroll, v1.0.0
clip-history, v0.1.12
emacs-plus, v0.9.12
file-type-icons, v0.7.4
highlight-selected, v0.11.2
keyboard-sounds, v0.2.0
language-latex, v0.6.1
latex-autocomplete, v0.3.1
latex-plus, v0.8.4
minimap, v4.20.0
pdf-view, v0.50.0
yosemate-ui, v0.7.1

# Dev
No dev packages

FYI I get this very frequently during rebases when using git in 1.18

I've just started encountering this with version 1.263.1 x64. Stack trace:
/usr/share/atom/resources/app/src/decoration-manager.js:191
Hide Stack Trace
Error: Cannot decorate a destroyed marker
    at DecorationManager.decorateMarker (/usr/share/atom/resources/app/src/decoration-manager.js:183:27)
    at TextEditor.decorateMarker (/usr/share/atom/resources/app/src/text-editor.js:2137:41)
    at new Selection (/usr/share/atom/resources/app/src/selection.js:20:41)
    at TextEditor.addSelection (/usr/share/atom/resources/app/src/text-editor.js:3276:27)
    at /usr/share/atom/resources/app/node_modules/text-buffer/lib/display-marker-layer.js:79:24
    at Function.module.exports.Emitter.simpleDispatch (/usr/share/atom/resources/app/node_modules/event-kit/lib/emitter.js:25:20)
    at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app/node_modules/event-kit/lib/emitter.js:141:34)
    at MarkerLayer.module.exports.MarkerLayer.createMarker (/usr/share/atom/resources/app/node_modules/text-buffer/lib/marker-layer.js:450:28)
    at MarkerLayer.module.exports.MarkerLayer.markRange (/usr/share/atom/resources/app/node_modules/text-buffer/lib/marker-layer.js:225:25)
    at DisplayMarkerLayer.module.exports.DisplayMarkerLayer.markBufferRange (/usr/share/atom/resources/app/node_modules/text-buffer/lib/display-marker-layer.js:105:58)
    at TextEditor.addSelectionForBufferRange (/usr/share/atom/resources/app/src/text-editor.js:2873:38)
    at TextEditor.createLastSelectionIfNeeded (/usr/share/atom/resources/app/src/text-editor.js:3328:18)
    at TextEditor.getLastCursor (/usr/share/atom/resources/app/src/text-editor.js:2665:16)
    at TextEditor.getCursorBufferPosition (/usr/share/atom/resources/app/src/text-editor.js:2448:23)
    at SubsequenceProvider.bufferToSubsequenceMatches (/usr/share/atom/resources/app/node_modules/autocomplete-plus/lib/subsequence-provider.js:136:60)
    at Array.map (native)
    at SubsequenceProvider.getSuggestions (/usr/share/atom/resources/app/node_modules/autocomplete-plus/lib/subsequence-provider.js:252:18)
    at providers.forEach.provider (/usr/share/atom/resources/app/node_modules/autocomplete-plus/lib/autocomplete-manager.js:300:58)
    at Array.forEach (native)
    at AutocompleteManager.getSuggestionsFromProviders (/usr/share/atom/resources/app/node_modules/autocomplete-plus/lib/autocomplete-manager.js:271:21)
    at AutocompleteManager.findSuggestions (/usr/share/atom/resources/app/node_modules/autocomplete-plus/lib/autocomplete-manager.js:263:23)
    at AutocompleteManager.requestNewSuggestions (/usr/share/atom/resources/app/node_modules/autocomplete-plus/lib/autocomplete-manager.js:704:18)
    at AutocompleteManager.showOrHideSuggestionListForBufferChanges (/usr/share/atom/resources/app/node_modules/autocomplete-plus/lib/autocomplete-manager.js:770:18)
    at Function.module.exports.Emitter.simpleDispatch (/usr/share/atom/resources/app/node_modules/event-kit/lib/emitter.js:25:20)
    at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app/node_modules/event-kit/lib/emitter.js:141:34)
    at TextBuffer.module.exports.TextBuffer.emitDidChangeTextEvent (/usr/share/atom/resources/app/node_modules/text-buffer/lib/text-buffer.js:1748:32)
    at TextBuffer.module.exports.TextBuffer.transact (/usr/share/atom/resources/app/node_modules/text-buffer/lib/text-buffer.js:975:18)
    at TextEditor.transact (/usr/share/atom/resources/app/src/text-editor.js:1839:30)
    at mergeIntersectingSelections (/usr/share/atom/resources/app/src/text-editor.js:1386:25)
    at TextEditor.mergeSelections (/usr/share/atom/resources/app/src/text-editor.js:3249:53)
    at TextEditor.mergeIntersectingSelections (/usr/share/atom/resources/app/src/text-editor.js:3223:42)
    at TextEditor.mutateSelectedText (/usr/share/atom/resources/app/src/text-editor.js:1385:23)
    at TextEditor.insertText (/usr/share/atom/resources/app/src/text-editor.js:1349:31)
    at TextEditor.object.(anonymous function) [as insertText] (/usr/share/atom/resources/app/node_modules/underscore-plus/lib/underscore-plus.js:77:33)
    at TextEditorComponent.didTextInput (/usr/share/atom/resources/app/src/text-editor-component.js:1661:30)

package-cop identified Atom as the offending package.

I've also had this issue when resolving Git merge conflicts. When issuing a GitHub: Resolve as Ours then Theirs command from the palette, I receive this error. I think it may be because I resolved some conflicts myself, and then I tried to automate the rest from the palette.


chore: cleaned up guide

This PR cleans up the contributor guide now that we have autogenerated documentation. I wanted to focus on just calling out some of the nuances of these things, and let the auto gen docs do most of the explaining.

had one little typo i found @nr-kkenney ... if i can get that 👍 again.. I can merge.