Create Gift: After click on button it is taking long time for next screen.

After clicking this. It takes a long time for the next screen.

Need to put a grey screen with waiting timer here

Need a loader modal with a note "Wrapping your gift"

Looking into gift creation ramp-up at https://github.com/bithyve/hexa/issues/4834

There seems to be not much scope when it comes to ramping the creation process up, however, I've done some changes that may help a little.
We might want to have a loader modal while the creation is ongoing.

@summikhan11 Need UX for the modal like this Or just Image for this modal to add on gift creation

https://xd.adobe.com/view/e8259038-6a8a-4b4f-b88f-780e311438a5-bd76/screen/723f353e-15ed-44f6-982b-38bff01b9bbf/

Verified this issue on staging app v2.0.5(382)


Setup CI build on travis-ci.org

Setup Travis CI for continuous testing and integration of the project
Supersedes #33 Closes #33

Thanks @javornikolov for updates.


MoveMessages not delete message only copy message in destination folder

I'm trying to move mesages from default INBOX folder to specifc folder, but the command copy only the messages in the destination folder but without deleting from the INBOX.
Debugging the DeleteMassages method, the response string passed to SendCommandGetResponse is 'xm010 OK STORE completed.'
The methods ends without throwing exception but al messages are still in the INBOX and a copy has been moved in the requested folder.
Edika

If it's not obvious, this project is dead and has been for quite some time. If you haven't already, you should seriously consider switching over to MailKit instead. You are wasting your time continuing to use this library.


feat: allow reference scripts by id in aggregations

Codecov Report
Base: 100.00% // Head: 100.00% // No change to project coverage :thumbsup:

Coverage data is based on head (c4f7d24) compared to base (81a077b).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##                main        #5   +/-   ##
===========================================
  Coverage     100.00%   100.00%
  Complexity       674       674
===========================================
  Files            121       121
  Lines           1750      1750
===========================================
  Hits            1750      1750

Impacted Files
Coverage Δ

src/Aggregation/Bucketing/TermsAggregation.php
100.00% <100.00%> (ø)

...rc/Aggregation/Metric/ExtendedStatsAggregation.php
100.00% <100.00%> (ø)

.../Aggregation/Metric/PercentileRanksAggregation.php
100.00% <100.00%> (ø)

src/Aggregation/Metric/PercentilesAggregation.php
100.00% <100.00%> (ø)

src/Aggregation/Metric/StatsAggregation.php
100.00% <100.00%> (ø)

...c/Aggregation/Pipeline/BucketScriptAggregation.php
100.00% <100.00%> (ø)

src/ScriptAwareTrait.php
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 at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


FI-2728: Improve JSON Parsing Error Handling for Validator Responses

Summary
Ticket Description: We saw an issue where a validator response contained a null character and it crashed the test runner, so it kept spinning forever. Since we don't control the validator and especially the tx server, make sure an unexpected response doesn't crash anything.
I attempted to reproduce the issue by mocking the validator service with various unexpected response formats, such as null values, bad characters, invalid json (e.g. '{$kd'), etc.. Using Mockoon to simulate these edge cases, I verified that all exceptions were already being handled properly by the existing rescue StandardError => e. The test runner did not crash during any of these scenarios.
The change made in this PR is an improvement in how JSON parsing exceptions are handled to ensure that invalid or malformed JSON responses from the validator are correctly caught and the user is informed with clear messaging.

Ok I was able to reproduce the issue while testing this. The ticket says "bad characters" but I think the only real culprit is the null character. Using mockoon I wasn't able to get a realistic response containing the null character, but I was able to get a response containing the null character, and that produced the same problem as Steve originally reported on the bulk data test kit PR a while back: the test runner hits an exception in SQLite and then the UI spins forever. Can you try again with a response specifically containing a null character? I was able to get a null character to paste with the (mac) terminal command echo "\u0000" | pbcopy .

Thanks! that helped.


feat: add System Status to side nav

Description

Adds side nav link to System Status page

Testing required outside of automated testing?

[X] Not Applicable

Screenshots (if appropriate):

Rollback / Rollforward Procedure

[X] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

:tada: This PR is included in version 1.21.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Update About text for v3.4.0

As per https://github.com/cessda/cessda.cdc.versions/issues/594

Delaying merge, pending final review of text by Service Owner.


Fix to support Windows

I'm using the tool on Windows and receiving the error as documented in #16
The following pull request seems to fix the issue with the invalid signal.

Assumes all other platforms work with sigint instead of sigterm
testcases with os.fork are skipped on Windows

Coverage decreased (-1.4%) to 83.219% when pulling 5d1eac3e11313b38b842f0bc8d418797c0e25a67 on adelosa:fix-windows-support into 738c8eb19a4b064dd74ff851c379dd1cbf11bc65 on tk0miya:master.

Coverage decreased (-1.4%) to 83.219% when pulling 4d3ef9c6c948b0ef7acee3ec5073057c504d0223 on adelosa:fix-windows-support into 738c8eb19a4b064dd74ff851c379dd1cbf11bc65 on tk0miya:master.

Thanks!


Switch health check to use maxJobMemory instead of defaultJobMemory

Coverage increased (+0.004%) to 88.725% when pulling 080e160923ff4a77319a7916d1c106ac677d161c on tgianos:develop into 580fb9b4f36a22c0bafaf636d1bf9824d0a7b74e on Netflix:develop.


glibc

Hi,
would be nice if you compiled vs an older glibc to make it more compatible. I could load the whole toolchain and compile within my container, or use conda, but sometimes the joy of rust is just running a wget and using the binary.
chopper: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by chopper) chopper: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by chopper)
chopper: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by chopper)
I get these errors on Ubuntu 20.04 for example.
Thanks,
Colin

Yes, I agree that would be good. I'll look into it, but yet have to figure out how to do this properly.

Could you test this executable please?
https://github.com/wdecoster/chopper/releases/download/v0.2.0/chopper-musl.zip

Thanks, seems to work on Ubuntu 1804 and 2004 now!

Great, feel free to let me know if you encounter further issues.


validating required file upload not working

//not working
$this->form_validation->set_rules(array(
array(
'label' => 'Image',
'field' => 'upload_image_file',
'rules' => 'required'
)
));
//so i just created a function and call it on rules
'rules' => 'callback_handle_upload'
//function
function handle_upload() {
if (isset($_FILES['upload_image_file']) && !empty($_FILES['upload_image_file']['name'])) {
return true;
} else {
// throw an error because nothing was uploaded
$this->form_validation->set_message('handle_upload', "You must upload an image!");
return false;
}
}

$_FILES is not $_POST, of course it can't work.


What is the cleanest way of getting NMS:ed model outputs of the shape (x, y, x, y, conf, cls)?

💡 Your Question
I am working on implementing tracking functionality for YOLO-NAS in my repository. What is the cleanest way of getting NMS:ed model outputs of the shape (x, y, x, y, conf, cls)?
I have tried:
from super_gradients.common.object_names import Models
from super_gradients.training import models

rgb = torch.rand(1, 3, 640, 640).to("cuda:0")
model = models.get(Models.YOLO_NAS_S, pretrained_weights="coco").to("cuda:0")
preds = model(im)
preds = model(im)
print(len(preds))
print(preds[0].shape)
print(preds[1].shape)
print(preds[2].shape)
print(preds[3].shape)
print(preds[4].shape)

which gives me
6
torch.Size([1, 6300, 80])
torch.Size([1, 6300, 68])
torch.Size([6300, 4])
torch.Size([6300, 2])

I am confused by the outputs and can't find information about my issue in the documentation...
Versions
Versions of relevant libraries:
[pip3] numpy==1.23.0
[pip3] torch==1.13.1
[pip3] torchmetrics==0.8.0
[pip3] torchvision==0.14.1
[pip3] triton==2.0.0

Hi @mikel-brostrom , we have a documentation page about the model.predict(...) method which, from what you described, should cover your need

I have this:
preds = model.predict(im, iou=0.5, conf=0.7)
preds = list(preds._images_prediction_lst)
preds = np.concatenate([
    preds[0].prediction.bboxes_xyxy,
    np.expand_dims(preds[0].prediction.confidence, axis=1),
    np.expand_dims(preds[0].prediction.labels, axis=1),
], axis=1)
print(preds.shape)  # (1, 6)

Feels very convoluted to me. Is there a better way to achieve this?

You can simplify the code slightly like here:
prediction = next(iter(model.predict(IMAGES, iou=0.5, conf=0.7))).prediction # Returns a generator of the batch, which here is 1
concat_preds = np.concatenate([prediction.bboxes_xyxy, prediction.confidence[:, np.newaxis], prediction.labels[:, np.newaxis]], axis=1)

Note that in the master branch we fixed a bug where preds._images_prediction_lst was a generator and not a list. You can access directly index it
prediction = model.predict(IMAGES, iou=0.5, conf=0.7)[0].prediction
concat_preds = np.concatenate([prediction.bboxes_xyxy, prediction.confidence[:, np.newaxis], prediction.labels[:, np.newaxis]], axis=1)

Thanks! This looks much better! I guess you will hear from we soon again regarding  yolo-nas tracking capabilities. Than you for your time :smile:


ResourceProfiler raises NoSuchProcess exception

I have hit this bug reliably on 0.11 and 0.14.1.
I am doing the following, for a moderately complicated graph, on a 16 core machine. The profiling code is taken straight from the dask documentation.
from dask.diagnostics import Profiler, ResourceProfiler, CacheProfiler, visualize
from cachey import nbytes

with Profiler() as prof, ResourceProfiler(dt=0.25) as rprof, CacheProfiler(metric=nbytes) as cprof:
    x.compute()

It reliably gives the following error:
Process _Tracker-50:
psutil.NoSuchProcess: psutil.NoSuchProcess process no longer exists (pid=69516)
Traceback (most recent call last):
  File "/home/pwaller/.local/lib/python3.5/site-packages/psutil/_pslinux.py", line 1332, in wrapper
    return fun(self, *args, **kwargs)
  File "/home/pwaller/.local/lib/python3.5/site-packages/psutil/_pslinux.py", line 1528, in memory_info
    with open_binary("%s/%s/statm" % (self._procfs_path, self.pid)) as f:
  File "/home/pwaller/.local/lib/python3.5/site-packages/psutil/_pslinux.py", line 190, in open_binary
    return open(fname, "rb", **kwargs)
FileNotFoundError: [Errno 2] No such file or directory: '/proc/69516/statm'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.5/multiprocessing/process.py", line 249, in _bootstrap
    self.run()
  File "/home/pwaller/.local/lib/python3.5/site-packages/dask/diagnostics/profile.py", line 231, in run
    mem = sum(p.memory_info().rss for p in ps) / 1e6
  File "/home/pwaller/.local/lib/python3.5/site-packages/dask/diagnostics/profile.py", line 231, in <genexpr>
    mem = sum(p.memory_info().rss for p in ps) / 1e6
  File "/home/pwaller/.local/lib/python3.5/site-packages/psutil/_common.py", line 313, in wrapper
    return fun(self)
  File "/home/pwaller/.local/lib/python3.5/site-packages/psutil/__init__.py", line 1108, in memory_info
    return self._proc.memory_info()
  File "/home/pwaller/.local/lib/python3.5/site-packages/psutil/_pslinux.py", line 1338, in wrapper
    raise NoSuchProcess(self.pid, self._name)

I assume the problem here is that the multiprocessing code is waiting on the process before memory_info() is called, so the process has gone away by the time the profiler asks for the memory usage.

Thanks for the bug report. Does this error happen early on in the computation, or towards the end? I can see how we could have a race condition in shutdown of the process tracker, but not in startup, just want to make sure that's what you're seeing.

Judging from the time taken for the error to appear, it's at the end, but it's difficult to be certain. It seems likely that it's a race at the end, given the nature of the bug.

This should be fixed in #2284.

I'm sure if this is a new problem, or this old issue coming up again. I was running a fairly sizeable computation and I got the following error:
Traceback (most recent call last):
  File "C:\Users\rbarnes\AppData\Local\Continuum\Anaconda3\lib\site-packages\psutil\_pswindows.py", line 536, in wrapper
    return fun(self, *args, **kwargs)
  File "C:\Users\rbarnes\AppData\Local\Continuum\Anaconda3\lib\site-packages\psutil\_pswindows.py", line 680, in create_time
    return cext.proc_create_time(self.pid)
ProcessLookupError: [Errno 3] No such process

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\rbarnes\AppData\Local\Continuum\Anaconda3\lib\site-packages\psutil\__init__.py", line 390, in _init
    self.create_time()
  File "C:\Users\rbarnes\AppData\Local\Continuum\Anaconda3\lib\site-packages\psutil\__init__.py", line 655, in create_time
    self._create_time = self._proc.create_time()
  File "C:\Users\rbarnes\AppData\Local\Continuum\Anaconda3\lib\site-packages\psutil\_pswindows.py", line 541, in wrapper
    raise NoSuchProcess(self.pid, self._name)
psutil.NoSuchProcess: psutil.NoSuchProcess process no longer exists (pid=10424)

I'm running dask 0.16.1 on windows machine with 8 cores.
I was essentially doing this:
groups = df.groupby(['ApplicationId']).max()
mem = df[df['index'].isin(groups['index'])]


Directories in .sh files

Rohan, can you please make sure your directories for calling python files are specified using an environmental variable. For example, the current scheme takes the .sh files used in candle and puts them in a different directory (/usr/local/bin) that doesn't have preprocess.py in it.

Closed by #26


How to get raw shaders based on string created via this tool?

I am designing shaders via GUI tool provided by this software, I want to get shaders to use them in my own library where parsers are not used, in this case, I need raw shaders.

Sorry for the late reply.
The GUI tool will be open source in a few days/weeks. Please see the source code then.
I will leave a msg at this issue when it's pushed to github.


Fn::Size intrinsic template function

Scope of request
AWS CloudFormation templates.
Expected behavior
Fn::Size should return the number of elements in a list (the result of Fn::Split, or a CommaDelimitedList parameter).
Test case recommendation
If you combine this with the Fn::Split function it will allow you to see how many items were entered when someone has a CommaDelimitedList parameter, which is helpful when it comes to Conditionals:
{ "Fn::Size" : { "Fn::Split" : [ "delimiter", "source string" ] } }
Links to existing API doc
https://www.kencochrane.net/2017/03/25/my-cloudformation-wishlist/
Category

Other (IoT, Migration, Budgets...)

@josb Thanks for bringing this to our attention. This feature request is a duplicate of #37. I will close this issue and invite you to follow #37 for further updates.

Hi all, we have opened an RFC (here) to address this use case. Any feedback is welcome.

Hello @lejiati, we'll try the new function, thanks for making this happen!

Fn::Length is now available, hence closing this.


03/30/2018 18:42 : Create Pull Request for branch prTesting_2018033018 -> master

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef.md
:white_check_mark:Succeeded

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


FAST multitenant bootstrap

This PR

implements single tenant bootstrap and resource management stages
renames all FAST stages
implements optional tag key creation in the organization module
adds a script to output links needed for each stage (fixes #1050)

There are a couple of features which will be nice to add to tenant bootstrap but which can wait for a subsequent PR, they are noted in its README. The security stage will also need to be changed accept a policy at the folder level, as this is one of the use cases which make sense.

Marked as ready, we need to cut a release before merging this to save the "last known good state" of FAST stages before renaming.


Separate unit and integration tests.

Currently, we have UTs and ITs in the same test suites. It would be more reasonable to have these test cases separated from each other. For instance, create unit and integration packages for both of these test cases.

After implementing this [1] we currently differentiate between UTs (surefire suffix *Test) and ITs (failsafe suffix *IT). So I don't think this is needed anymore.
[1] https://github.com/strimzi/test-container/pull/110


Keajs 2.4  "kea.inline" hard coded.

After reading the 2.4 keajs blog post I noticed it talks about "kea.inline" hard coded
https://github.com/keajs/kea-localstorage/blob/master/src/index.js#L54

Oh, apologies, I forgot to push the changes, but 1.1.1 of kea-localstorage checks for kea.logic instead of kea.inline


Fix hint masking dimensions and restructure deck insertion.

This will add the following two changes:

Fixes dimension for masking when giving out hints. There was an issue when games were played with 3+ players since broadcasting wasn't possible in that case.
Adds a utility function for inserting deck from (color, rank) pairs. Previously, we needed to one hot encode before inserting a deck, now we have another method of inserting the deck. This also led to small refactoring where we extract the one hot encoding into a protected func.

Hey Tin should we wait for all your changes before merging?

Hey Tin should we wait for all your changes before merging?

Yes, working on it!

Closing this, will open a new one when we are done.


Update Composer dependencies (2022-06-15-00-09)

Visual regression test passed!
View the visual regression test report


Add transition to subscribe input in the footer

Fixes #378

Hi @mkermani144, thanks for opening!
I am going to close in favor of this PR I opened yesterday that adds the transition to the .btn class. This will be more futureproof in case someone adds another, non-mailchimp button.

@sophshep Sorry, I didn't spot your PR. :smiley::smiley:


Recommended way to set report path?

  I use a setup.cfg file to configure both pytest and mypy.
Now, ideally, we want the mypy reports to be named accordingly ("unit" vs "component" respectively). Do you have a recommended approach on how to achieve this?
Right now, I've created a simple pytest plugin which analyses pytest's config.args and determines which type of test is executing and then it does the following:
plugin = config.pluginmanager.getplugin("mypy")
plugin.mypy_argv.append(f"--html-report=reports/mypy/{test_type}")

But to me, this seems both hacky and a little excessive. There must be some easier way to achieve this?
Any ideas? 😃

That's the best way I'm aware of (and a pretty cool use-case IMO!)
I know it may seem like a little much, but it's the best balance I've found between requiring all config to be done in Mypy's config files and having to mirror all of mypy's (unstable) CLI a la
https://github.com/dbader/pytest-mypy/blob/18fb2b81fa704d9cf9db1b82ce0e5ee32857a01a/src/pytest_mypy.py#L32-L34
Just to sanity-check, when you say that you have a simple plugin, are you referring to a conftest.py?


sc-3640 GDS UI refresh: Technical Resources - Your Implementation + OS + TR Solutions panels

Codecov Report

Merging #408 (f9aa20f) into main (87161d7) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head f9aa20f differs from pull request most recent head 1331112. Consider uploading reports for the commit 1331112 to get more accurate results

@@           Coverage Diff           @@
##             main     #408   +/-   ##
=======================================
  Coverage   46.26%   46.26%
=======================================
  Files         231      231
  Lines       11531    11531
  Branches      606      606
=======================================
  Hits         5335     5335
  Misses       5243     5243
  Partials      953      953

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 87161d7...1331112. Read the comment docs.


[BUG] Log same comments in multiple lines

Describe the bug
When I try to benchmark model with Raspberry Pi 4B, Successfully got user information sentence always logged in multiple lines.
Have you searched existing issues?  🔎

[X] I have searched and found no existing issues

Reproduction
Execute below python code
from netspresso.enums import DeviceName, SoftwareVersion
from netspresso import NetsPresso
import torch

netspresso = NetsPresso(email="???", password="???")

# 1. Declare benchmarker
benchmarker = netspresso.benchmarker()

# 2. Run benchmark
compression_ratio = 0.2
input_model_path = f'board_test/compression_{compression_ratio}/compression_{compression_ratio}.onnx'
benchmark_result = benchmarker.benchmark_model(
    input_model_path=input_model_path,
    target_device_name=DeviceName.RASPBERRY_PI_4B,
)
print(f"model inference latency: {benchmark_result['result']['latency']} ms")
print(f"model gpu memory footprint: {benchmark_result['result']['memory_footprint_gpu']} MB")
print(f"model cpu memory footprint: {benchmark_result['result']['memory_footprint_cpu']} MB")

Screenshot
No response
Logs
(np_trainer) (base) junho.shin@3090f:/ssd1/junho.shin/netspresso-trainer$ /ssd1/junho.shin/anaconda3/envs/np_trainer/bin/python /ssd1/junho.shin/netspresso-trainer/benchmark.py
2024-05-03 07:47:35.345 | INFO     | netspresso.clients.config:<module>:11 - Read PROD config
2024-05-03 07:47:37.230 | INFO     | netspresso.clients.auth.main:login:38 - Login successfully
2024-05-03 07:47:37.700 | INFO     | netspresso.clients.auth.main:get_user_info:55 - Successfully got user information
2024-05-03 07:47:38.160 | INFO     | netspresso.clients.auth.main:get_user_info:55 - Successfully got user information
2024-05-03 07:48:47.673 | INFO     | netspresso.clients.auth.main:get_user_info:55 - Successfully got user information
2024-05-03 07:48:47.676 | INFO     | netspresso.benchmarker.benchmarker:benchmark_model:171 - 25 credits have been consumed. Remaining Credit: 200
model inference latency: 1107.45 ms
model gpu memory footprint: None MB
model cpu memory footprint: 178.273 MB

System Info
Latest release (v1.6.0)

@illian01 This issue has been resolved!


Modal headers can't be assigned classes?

modal.Header("") returns a bare IHtmlString so no further customization is available.

Correct. Currently it's implemented this way. So far there was no need to make it more robust.
Do you need class on it for styling purposes? If that's the case, you can apply class to the Modal:
using (var modal = Html.Bootstrap().Begin(new Modal().Class("modal-class")))

... and style your headers this way.
.modal-class .modal-header {
   [your styles go here]
}

Seems kinda hackish when everything else has .Class() ext-methods. It's close to what I currently have


Use "/usr/bin/env" in shebangs

Instead of directly executing stuff from /bin or /usr/bin, do it via /usr/bin/env to allow overriding the binaries via PATH. For example, if the user has some local installation of Bash or Python which is set as a priority in PATH, it will be used instead of the one from hardcoded /usr/bin location.
@shadinua has pointed out this observation in #681. This PR applies the same change throughout the entire code base for consistency. Now if someone uses existing scripts as examples, they should notice the /usr/bin/env usage and do the same.
Checklist

[X] Change is covered by automated tests
[X] The coding guidelines are followed
[X] Example projects and code samples are up-to-date
[X] Changelog is updated

Oh great, apparently, Linux has decided that there can be at most one argument on the shebang line, and this is common knowledge on the interwebs. Writing
#!/usr/bin/env bash -e

is not portable.

I got a bit pissed off a bit by this behavior, thought that I might 'fix' it in the kernel. Oh boy, of course it has been discussed multiple times over the years with the general sentiment that it's a backwards incompatible change and hysterical raisins should have their way. A part of me understands the reasoning very well— too well—but a part of me is also saddened by it.

@shadinua, I've added missing -o pipefail options. Thanks for nothing that! I've also fixed up a couple of places where the -u option caused failures.


Remove parentheses from tuples in comprehension target

# Input
{k: v for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension}

# black
{
    k: v
    for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension
}

# Ruff
{
    k: v
    for (
		k,
		v
	)
	in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension
}

Ruff should not add parentheses around k, v.

Interesting. Didn't know black would never format the tuple with parentheses.  It does however expand the tuple fields. That could get... interesting to say the least:
{
    k: v
    for a, [
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
        a,
    ] in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension
}


Need to test Droplet create validations

API V2 now validates SSH key IDs and identifiers passed into the Droplet create call. In addition, API V2 now validates that requested features are available for a Droplet (backups, private networking, IPv6 and user data).

https://developers.digitalocean.com/documentation/changelog/api-v2/new-droplet-create-validations/

Done :)


Add Dorgesh-Kaan agility course overlay

This pull request adds a simple overlay in the upper left corner, when the player is within the Dorgesh-Kaan agility course region, that displays the last part the engineer required the player to retrieve.

This PR closes #3440

It is within the original agility code. :)

My bad.
Apart from the style issue, I support this PR.

The Agility Plugin has things generic to all agility courses, but the stuff you added is specific to only one. You should try adding it in a way that is not intrusive to the existing plugin which will help to keep it maintainable if many things specific to individual courses are added. For example, you should try to move the regex/currentParts to within the Overlay class.
Also why does currentHeavyPart/currentLightPart need to be saved to a config? I never did this course before, but it seems like these values are always changing.

I think I did a good job of adding it in a way that is not intrusive to the AgilityPlugin code, I just reused a lot of the agility plugin code as a foundation for my add-on. Also I think the agility plugin has parts that doesn't apply to all courses such as mark of graces, so I don't think it is necessary to have it completely separated from the current agility plugin. I could indeed move the regex pattern to the overlay class, but I think it would just make the logic more obscure.
The values are kept in memory and will stay the same until you retrieve a new part, putting the values in a hidden config is a way for the client to keep track of the values through client restarts, therefore why it is in my opinion necessary to add those config variables.


Request: Wrap tailwind classes when there are more then X

See https://github.com/prettier/prettier/pull/11827

Totally agree that this should exist, at least as an option that can be enabled explicitly, something similar to how it's already done for proseWrap, it can be named classWrap, the values should be preserve | always | never


Add Discussion Forms for Feature Request and Help

This PR adds discussion forms for feature requests and ask for help from #144

Thanks! Let's merge and see if it is working.


use PB to predict on ios

I use the transform code to pb,and the use it in ios,but it get the question: libc++abi.dylib: terminating with uncaught exception of type std::runtime_error: Seesion run failure: Attempting to use uninitialized value resfcn256/Conv/BatchNorm/moving_mean
[[Node: resfcn256/Conv/BatchNorm/FusedBatchNorm = FusedBatchNorm[T=DT_FLOAT, data_format="NHWC", epsilon=0.001, is_training=false, _device="/job:localhost/replica:0/task:0/device:CPU:0"](resfcn256/Conv/Conv2D, Const_1, Const_2, resfcn256/Conv/BatchNorm/moving_mean, resfcn256/Conv/BatchNorm/moving_variance)]]...  I use https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/graph_transforms/README.md#fold_old_batch_norms to transform the pb and remove the BatchNorm nodes,but  it doesn't work,can you help me?

I don't know libtensorflow works well on iOS.
You are better to convert .pb model to tflite.
We've confirmed tflite version of PRNet pretty works well on iOS and Android(25 ms on iPhone11 Pro for single image inference)

I don't know libtensorflow works well on iOS.
You are better to convert .pb model to tflite.
We've confirmed tflite version of PRNet pretty works well on iOS and Android(25 ms on iPhone11 Pro for single image inference)

what's the version of tensorflow?I tried the tensorflow 2.0,1.9,1.8,but the question is tf 1.x don't have the  function TFLiteConverter ,tf 2.0 had the question  that can't  find the saved model,i found that tf 2.0 can only use saved model and freezen graph,so i want to know what's your version of tf?

what's the version of tensorflow?I tried the tensorflow 2.0,1.9,1.8,but the question is tf 1.x don't have the function TFLiteConverter ,tf 2.0 had the question that can't find the saved model,i found that tf 2.0 can only use saved model and freezen graph,so i want to know what's your version of tf?

I don't know libtensorflow works well on iOS.
You are better to convert .pb model to tflite.
We've confirmed tflite version of PRNet pretty works well on iOS and Android(25 ms on iPhone11 Pro for single image inference)

what's the version of tensorflow?I tried the tensorflow 2.0,1.9,1.8,but the question is tf 1.x don't have the function TFLiteConverter ,tf 2.0 had the question that can't find the saved model,i found that tf 2.0 can only use saved model and freezen graph,so i want to know what's your version of tf?

We have used tf r1.14 and r1.15

r1.12 would work, but not recommended.
https://github.com/lighttransport/prnet-infer#dependences

r1.12 would work, but not recommended.
https://github.com/lighttransport/prnet-infer#dependences

thanks for your help

r1.12 would work, but not recommended.
https://github.com/lighttransport/prnet-infer#dependences

I had found what's question in my pb,I forgot to freeze the PB when I use the  code to write graph in function graph,after freeze the graph i can use the pb to predict on python,thank you!

Yes, you need to create freezed model for the inference.
so is it ok to close this issue? > @1372072273

yes,thank you


[BUG] Sliding animations don't work with revealer

Describe the bug
All slide animations just don't work with the reveler widget, however, the fade animation works.
Reproducing the issue

Use this config

<eww>
    <windows>
        <window name="bar_window" stacking="fg" focusable="false">
            <geometry anchor="top left" x="0px" y="0px" width="100%" height="48px"/>
            <reserve side="left" distance="50px"/>
            <widget>
                <revealer transition="slideright" duration="1s" reveal="{{show}}">
                    <box hexpand="false">
                        <label text="lolololololol"/>
                    </box>
                </revealer>
            </widget>
        </window>
    </windows>
</eww>

eww daemon
eww open bar_window
eww update show=true
As you can see the label shows instantly and without animation
eww update show=false
As you can see the label hides abruptly after 1 second and without animation

Expected behaviour
I expect the sliding animations to work.

The dimension of the widget in the direction you want the animation need to be null.

I don't understand, can you let me know what modifocations to the xml will I need to do for it to work?

Make the width or height of the window 0

It works when showing but not when hiding...
https://user-images.githubusercontent.com/36672196/123415487-66362f00-d5c6-11eb-84a8-83e2126f6b0b.mp4
code:
<eww>
    <windows>
        <window name="bar_window" stacking="fg" focusable="false">
            <geometry anchor="top left" x="0px" y="0px" width="100%" height="0"/>
            <reserve side="top" distance="40px"/>
            <widget>
                <revealer transition="slidedown" duration="1s" reveal="{{show}}">
                    <box class="main_box_bar_window" orientation="h">
                        jeff
                    </box>
                </revealer>
            </widget>
        </window>
    </windows>
</eww>

Try this https://github.com/snakedye/eww/tree/revealer-patch

Is this already fixed somewhere? I guess so, it does work in my case since when I started using eww (probably the last month).
https://user-images.githubusercontent.com/26714676/132976860-044e527c-d83c-4388-9be5-388531c36a78.mp4

Well the main issue here seems to be that the window size doesn't get reset to 0 when hiding the contents. This means that it works within a window, but it breaks if you try to hide/show the entire window using revealer

Wait window can be embedded into widgets? 👀

no, but you can make the revealer be at the root of your window. In that case, the revealer being hidden pretty much means that the window is hidden

Tried testing in different scenarios, there seem to be two condition for the animation to happen:

Ancestor at least must be a window containing widget like expander or eventbox.
Parent widget's orientation must be parallel to the animation (EventBox behave like horizontal | Expander behave like vertical | Box can have configurable orientation etc.)

A sample widget that works with slideup/slidedown using expander:
(defvar winrev false)

(defwindow topbar
  :monitor 0 :stacking "fg" :wm-ignore false :windowtype "dock"
  :reserve (struts :side "top" :distance "30px")
  :geometry (geometry :x "0" :y "0" :width "100%" :height "30px" :anchor "top center")
  (expander :expanded true
;    (box                ; still works
      (revealer :transition "slidedown" :reveal winrev :duration "1s"
        "Hello World!")))

with eww update winrev=true

is there any other conditions ? i can't get a slideleft / slideright animation to work,
i have this right now:
(defvar rev false)

(defwindow sidebar
  :monitor 0
  :geometry (geometry :x "0%"
              :y "0%"
              :width "25%"
              :height "100%"
              :anchor "top left")
  :stacking "fg"
  :wm-ignore "true"
  :windowtype "normal"
  (eventbox
    (revealer :transition "slideright"
      :reveal rev
      :duration "1s"
      "things")))

which should follow the conditions, but just doesn't work. Setting the width of the window to 0 gives the same behaviour as a @ahmedkhalf above, animation on enter, but not on leave (window width doesn't go back to zero as well, but content goes away).
Also, @Animeshz did you have to do anything notable to make your horizontal sliding animations work ? because yours does and i couldn't find any real difference.

As this SO answer would suggest, all operations that could have possibly caused a dynamic content resize need to issue a resize request to the smallest window possible, from where GTK will constrain check it into its smallest.
This would mean resizing on each expander and revealer state change (those are the only two places I think this happens). Performance-wise, this window size recalc would happen inside GTK (if GTK did it for you) anyways, so it's practically unavoidable.
On a side-note, this link might be useful to let clicks and (probably) other events pass through to other windows below.

Encountered this issue during my setup. Both for hiding the window (this issue) and dynamic sizing (#254). A work-around for hiding the window is hideIt.sh. However, a proper fix would be great as it allows for more dynamic widgets overall.


Connecting to Mediornet - inconsistent source or target counts in matrix

Hi,
I've just started exploring and studying the Ember+ protocol. Started following the Lawo.EmberPlusSharp.Model Namespace Tutorial couple of days ago and ran in some problems.
First thing that i've done is starting the Ember+ Viewer v<IP_ADDRESS> and connected to the ip/port of the Mediornet. It lists the whole Ember tree including labels, parameters, matrices...
Saving this three and opening it in Tiny Ember+ also works. I've started a new project and a problem appears in the main method when I want to connect async to the ip of the Mediornet.
It throws an exception Lawo.EmberPlusSharp.Model.ModelException: Inconsistent source or target counts in matrix.
If i want to connect to localhost with the Tiny Ember+ running (opened is the saved file/tree from the Ember+ Viewer) it listst the tree and the children.
I am trying to make an app which can easily switch between connections and accessing parameters in the Mediornet, simmilar to the switching done in Ember+ Viewer in the matrix tab.
How can I send commands to the Mediornet using the Ember+ protocol?
Can someone please help?

Also experiencing the inconsistent source or target counts issue, did you find a solution @mczgvp?

We are also experiencing the same issue, I wonder if it is to do with the static ID's within the Mediornet 3rd party configuration. They have reserved Source ID of 1001,1002,1003,1005 in the system I am looking at and I only have a handful of ID's 0,1,2, could this be the cause as all the ID's in between are missing from the sources list. I am able to use the legacy Ember+ Viewer to connect and adjust the matrix there. Is a solution possible?

Hi - was there ever a resolution to this issue?


Events for impress.js actions

There should be a possibility to attach custom listeners to various events triggered by impress.js such as step changes, entering step, leaving step, etc.
Please put your event suggestions in comments.

Would definitely use this. I'm building a presentation and the one thing I really want (and maybe this is easy already, so let me know if I'm missing something obvious) is the ability to fade a part of the slide in after I get there. Right now I'm attaching a transition effect on the opacity once the slide gets an .active class, but it's not the smooth fade-in I want.

Didn't read this until after I posted [[102]]. I implemented a speaker notes plugin, and found the only event really needed was when a slide was changing- that is, at the end of impress::goto(). The event happens before the transition finishes, as bartaz pointed out why the other is really hard.
https://github.com/bartaz/impress.js/issues/102
https://github.com/DavidSouther/impress.js/commit/6e80e7f51bf573c2e909ee8cA0c075e9cdb9543a2


Issues when generating excellion cnc job object

Hello,
First of all, thank you for keeping this Flatcam project up to date !
I tried it recently but I got this error when I try to make a cnc job object on an excellion file :
"Couldn't build proto file into descriptor pool: Invalid default '0.5' for field operations_research.sat.SatParameters.clause_cleanup_ratio of type 1"
It seems to be related to "ortools" or "protobuf".
I cannot find a way to fix it :-(
I run the program on Ubuntu 22.04 with python 3.10.12
ortools version is : 9.11.4210
protobuf version is : 5.26.1
Any help would be welcome !
Cheers,
Benjamin.

I just found a workaround by uninstalling ortools.
Not sure if it is okay to work without it ?
I saw in the "requirements.txt" file that ortools is optional.


Fix Issue Unsubscription

since #9535 will take it's time ...
a quick fix
how to reproduce the bug:

watch a repo
unwatch a issue of this repo
reload (issue is shown as subscibed - its not) -> if you try again you get a 500 :/

and for the api (witch use this function GetIssueWatchers too) https://github.com/go-gitea/gitea/blob/master/models/issue_watch.go#L116 take kare of it ...

I'd recommend popping a comment on explaining why this one differs from the other watcher functions and needs to get the negative watchers too.

otherwise LGTM

Codecov Report

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

@@            Coverage Diff            @@
##             master    #9634   +/-   ##
=========================================
  Coverage          ?   42.22%
=========================================
  Files             ?      582
  Lines             ?    77103
  Branches          ?        0
=========================================
  Hits              ?    32557
  Misses            ?    40546
  Partials          ?     4000

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 6842d55...b6e6316. Read the comment docs.

ready to merge :rocket:


[stdlib] Fix for initFromArray test on big endian

Account for byte order in initFromArray test.  This will allow the test to pass on s390x

Can we retest this?  The tests for the 3.1 pull request (#9459) passed.  Thanks.

@swift-ci please smoke test

I'm not sure the PR against the 3.1 branch is still useful, but this one we could still take.

Thanks.  Please merge this.

Can we please merge this if it's OK?  I can create another PR for swift-4.0-branch.  Thanks.

@moiseev ping

@swift-ci Please smoke test and merge


Bug With Controlled Component Implementation

Controlled Components allow you to set value, however this effectively conflates two different concerns.
Setting the currently selected value should be equivalent to changing the selection the user has made.
Setting the currently selected inputValue should be equivalent to the user entering new text.
Currently setting value does not update the suggestion list.
What I'm really looking for is a way to simply reset the component between submissions, but there is no easy way to do this. Using the Controlled Component approach results in subtle bugs where the previous options are still displayed even when the input is blank.
Ideally I would like to either implement a "reset" functionality as an uncontrolled component or to switch the way "value" is treated as a prop and actually make it trigger a fresh search for options (or optionally to  replace the value prop with 2 props. inputValue and selectedValue.

This is being addressed in the v2 branch

@idolize  This IS a bug report about the v2 branch, is it opened in the wrong area?

@pathsny Sorry, I didn't realize you were referring to the 2.0 branch. To clarify: the issue is that you can't set an "empty" selected suggestion via value?
It looks like that should be possible in the code, as long as your parent component (the one controlling the Autosuggest) doesn't rely purely on using onSuggestionSelected to maintain the value in it's state, because right now that callback will not be triggered unless an actual suggestion is selected.
Perhaps a workaround would be adding an empty string to your suggestions array? Or using onChange instead of onSuggestionSelected to maintain the value...

@idolize the issue is that even when the value is set to empty string, the list of suggestions does not update (ideally to an empty list). The problem is that "value" could be referring either to the value in the textbox as a user had typed it, or it could be referring to the selected value when the user highlights a specific option from pre-selected text.
I was proposing two different props. One to represent inputValue. When the prop changes, the function to fetch suggestions should be executed again. The other is selectedValue. When the prop changes, the only change should be to change the highlighted suggestion. The former "inputValue" prop is what I'm looking for.
The whole reason I'm doing this is because right now there is no way to reset the component state to a completely fresh state. I also propose that a "reset" function would be very useful when this component is used as an uncontrolled component

I ran into this issue too (I need the ability to prepopulate the input field in a form).  Any idea when v2 will be ready?  I'm happy to help if needed.

Sorry guys it took me so long to get back to this. I just released 2.0 which supports controlled components. However, I'm not sure that it solves the issue that @pathsny describes.
In a controlled component, I see value to simply be input's value. It has nothing to do with the selected suggestion.
@pathsny Do you basically expect the suggestions function to be called when value changes?

Hi Misha, that's correct. I expect the suggestions function to be called
when the value changes. The easiest way to see the issue is when you set
the value to blank string. When the focus is on the input you get a popup
of suggestions even though the string is blank.
On Fri, Sep 18, 2015 at 10:40 PM, Misha Moroshko<EMAIL_ADDRESS>wrote:

Sorry guys it took me so long to get back to this. I just released 2.0
which supports controlled components. However, I'm not sure that it solves
the issue that @pathsny https://github.com/pathsny describes.
In a controlled component, I see value to simply be input's value. It has
nothing to do with the selected suggestion.
@pathsny https://github.com/pathsny Do you basically expect the
suggestions function to be called when value changes?
—
Reply to this email directly or view it on GitHub
https://github.com/moroshko/react-autosuggest/issues/53#issuecomment-141623171
.

Hey Vishnu, Do you expect the suggestions list to close when the value is updated to  empty string and the input is focused? I created a small demo here. Could you please modify it to highlight the issue?

yep, will do today thanks. My underlying thesis is that setting the value
of the text field should result in the suggestions list updating (and
potentially becoming empty for an empty string for example). One option
would be to move the value field from the top level component to the
textfield so that it's clear that it represents the value of the text field
and not the selected value.
On Mon, Sep 21, 2015 at 2:56 AM, Misha Moroshko<EMAIL_ADDRESS>wrote:

Hey Vishnu, Do you expect the suggestions list to close when the value is
updated to empty string and the input is focused? I created a small demo
here http://jsbin.com/kineromico/1/edit?html,js,output. Could you
please modify it to highlight the issue?
—
Reply to this email directly or view it on GitHub
https://github.com/moroshko/react-autosuggest/issues/53#issuecomment-141929073
.

Hi Misha, your demo is actually perfect to demonstrate the issue. When the
text changes to 'n' I would expect the suggestions list to be "nunawading"
but the suggestions list still starts with 'm'.  Is there a reason you do
not believe that is appropriate?
On Tue, Sep 22, 2015 at 3:27 PM, Vishnu<EMAIL_ADDRESS>wrote:

yep, will do today thanks. My underlying thesis is that setting the value
of the text field should result in the suggestions list updating (and
potentially becoming empty for an empty string for example). One option
would be to move the value field from the top level component to the
textfield so that it's clear that it represents the value of the text field
and not the selected value.
On Mon, Sep 21, 2015 at 2:56 AM, Misha Moroshko<EMAIL_ADDRESS>wrote:

Hey Vishnu, Do you expect the suggestions list to close when the value is
updated to empty string and the input is focused? I created a small demo
here http://jsbin.com/kineromico/1/edit?html,js,output. Could you
please modify it to highlight the issue?
—
Reply to this email directly or view it on GitHub
https://github.com/moroshko/react-autosuggest/issues/53#issuecomment-141929073
.

@pathsny Sorry for the late reply. What you suggest sounds more than reasonable! Mind creating a PR?

@pathsny This should be solved in 3.0. Check out this example.
npm install<EMAIL_ADDRESS>--save


Header a11y fix

Changes

https://github.com/iTwin/iTwinUI/issues/1148 - The only example Main is currently failing. This is due to the lack of an accessible label for the HeaderSplitButton.

Passing solution: Implemented  VisuallyHidden text "Dropdown menu button" for HeaderSplitButton. This helps the screen reader communicate the purpose of the button to the user.

Testing

Testing will be conducted through the Cypress web a11y script. Any breaking changes will be evaluated through unit testing & visual tests. Example also read through NVDA to assess screen reader compatibility.
Docs

TBD

Conflicted on whether to implement the accessible name through VisuallyHidden or a title for the button. I'm going with title for now since it serves the extra function of displaying the label in a popover when it's hovered on. I could change it if we decide that it's unnecessary for this component.


Image preview is too zoomed in on screen capture.

After the screen capture and image preview is shown. However, its zoomed in really far and not in the correct area where I clicked.

working on this

fixed in commit 306ee67


updates queue and message body settings, adds message class

Pull Request Test Coverage Report for Build 130

105 of 133 (78.95%)  changed or added relevant lines in 7 files are covered.
3 unchanged lines in 2 files lost coverage.
Overall coverage increased (+9.02%) to 54.603%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

aws_message/processor.py
7
8
87.5%

aws_message/sqs.py
0
1
0.0%

aws_message/crypto.py
0
3
0.0%

aws_message/gather.py
0
7
0.0%

aws_message/message.py
37
53
69.81%

Files with Coverage Reduction
New Missed Lines
%

aws_message/gather.py
1
0.0%

aws_message/processor.py
2
84.85%

Totals

Change from base Build 123:
9.02%

Covered Lines:
232

Relevant Lines:
392

💛  - Coveralls


How to send commands like KICK, ME, STAT, etc.

Hey, I've been trying to figure out how to send / commands. Like /me /kick etc.
I tried using the RAW interface, ie: [ME, '#channel', 'does computering']
But that doesn't work. However with KICK it does: [KICK, '#channel', 'annoyingperson']
So, how can we send ME commands? and is there a way to uniformly handle all / commands?

/me isn't actually a standard IRC command, it's implemented by most clients but underneath it's just a PRIVMSG.
If you take a look at https://github.com/ircanywhere/irc-factory/wiki/Setup-&-Usage and look for Client.me you'll see a function call for it.

Ah, of course, must have overlooked that, thanks!


Add safe sysctl net.ipv4.ip_unprivileged_port_start

https://github.com/kubernetes/kubernetes/pull/103326
Sync status with #103298.
And need cherry-pick to 1.22 too.

/sig node

/lgtm
/approve


Pico 0.2.0 doesn't load for me

When i put plugin and then go to singleplayer, it mostly didn't work for me, when i clicked ok, and game starts, here are the proof of what happened

It happens even if my classicube file name is always ClassiCube.exe
Can you fix it please
I have Windows 8.1 32-bit and it runs classicube 32-bit for me

Hello, sorry for the delay in addressing this issue. The Windows 32 bits version was cross-compiled from Linux and I did not have the chance to test it on real hardware (this is what I did: https://github.com/ClassiCube/ClassiCube/blob/master/doc/plugin-dev.md#cross-compiling-for-windows-32-bit-using-mingw-w64).
Which version of ClassiCube are you using? v1.3.6 or a later development build?

Hello, sorry for the delay in addressing this issue. The Windows 32 bits version was cross-compiled from Linux and I did not have the chance to test it on real hardware (this is what I did: https://github.com/ClassiCube/ClassiCube/blob/master/doc/plugin-dev.md#cross-compiling-for-windows-32-bit-using-mingw-w64).
Which version of ClassiCube are you using? v1.3.6 or a later development build?

Later development build?

Did you compile ClassiCube by yourself from https://github.com/ClassiCube/ClassiCube ?

Did

no


fix(pkg/action): Allow name re-use for helm template

Signed-off-by: Ian Howell<EMAIL_ADDRESS>
What this PR does / why we need it:
Fixes #6101
Special notes for your reviewer:
If applicable:

[ ] this PR contains documentation
[ ] this PR contains unit tests
[ ] this PR has been tested for backwards compatibility

Thanks! This will fix helm template, but it doesn't fix helm install --replace, right?

It does fix helm install --replace, but only if the release was deleted with helm delete --keep-history. Otherwise it still fails. I'm not sure exactly whether that should be the expected behavior should be in that case.

Yep, that sounds like expected behaviour. Thanks!


Multiple revolutions lambert solution

I'm using the izzo.lambert function to solve the lambert problem. Trying to implement the multirevolution solution, taking the transfer time from [1,100] days interval. I got
    for v0, v in sols:
ValueError: No feasible solution, try lower M

These are the vectors:
r0=[-5396.060601014418, -2995.128313159499, -6223.416953125992] *u.km
r =[8916.202484966101, 18190.886121079544, 37797.86948723022] *u.km
First orbit:

apogee 8000
perogee 600
inc 64.3*math.pi/180
raan 0
aop 310*math.pi/180

Second orbit

apogee 39000
perigee 800
inc 64.3*math.pi/180
raan 0
aop 270*math.pi/180

How could I use multi-revolution solution?

Hi @Tarlan0001, sorry for the delay! In this case it's perfectly possible that there are no multi-revolution solutions for this particular case. You should check the maximum M that does not give an error.
If you want to know more about the mathematical preconditions for a multi-revolution solution to exist, I recommend you this paper:
https://arxiv.org/pdf/1403.2705v2.pdf
This is not really a problem in poliastro, so with your permission I'm closing. Feel free to keep adding comments though!

Is it possible, using poliastro, to get a more optimal trajectory, than via izzo.lambert(Earth_k, r0, r, tof, M=0)?

@Tarlan0001 Just looking at a quick plot, it seems that the two orbits intersect:

Therefore, you shouldn't need to perform a Lambert maneuver, and it fact using lambert here is dragging you because you are forced to select a specific point in the orbit.
In this case, I would try to (either using pen and paper, or finding the two local minima of the function that gives the distance between the two orbits) find the orbit intersection points, and changing from one to the other should be one finite burn. As there seem to be two intersections, there will be one burn that should be cheaper than the other.

Are you sure?
Single burn requires more than 2km/s impulse (the intersection is at 330 and 10 true anomaly).
However, lambert needs 1.5km/s (from 282 to 168 true anomaly in 270 minutes).

Interesting. Can you share the code you are using to compute both costs? I guess you are sampling both orbits and computing the best pair for the Lambert transfer?

I plotted your results and I just can conclude that you're right!

Several recommendations:

You can use from poliastro.util import norm to compute the norm of vectors with units.
Instead of your own keplerian2cartesian, you can do this:

from poliastro.core.elements import coe2rv

Earth_k_val = Earth_k.decompose([u.m, u.s]).value

def keplerian2cartesian_alt(kepler):

    a=(kepler[0]+kepler[1]+Req*2)*1000/2  # m
    e=(kepler[0]-kepler[1])/(kepler[0]+kepler[1]+Req*2)
    i=kepler[2]
    OMEGA=kepler[3]
    omega=kepler[4]
    tetta=kepler[5]

    p = a * (1 - e ** 2)

    return coe2rv(Earth_k_val, p, e, i, OMEGA, omega, tetta)

r, v = keplerian2cartesian_alt([...])

And finally, if you want to try more optimal strategies, maybe you can try to change the argument of perigee using continuous thrust:
https://docs.poliastro.space/en/latest/safe.html#poliastro.twobody.thrust.change_argp.change_argp
https://docs.poliastro.space/en/latest/user_guide.html#studying-artificial-perturbations-thrust

Thanks for recommendations!
How did you plot this?
I tried, nothing happens..
from astropy import units as u
from poliastro.plotting import OrbitPlotter
from poliastro.twobody import Orbit
from poliastro.twobody import Orbit
from poliastro.core.elements import coe2rv

Earth_k_val = Earth_k.decompose([u.m, u.s]).value

def keplerian2cartesian_alt(kepler):

    a=(kepler[0]+kepler[1]+Req*2)*1000/2  # m
    e=(kepler[0]-kepler[1])/(kepler[0]+kepler[1]+Req*2)
    i=kepler[2]
    OMEGA=kepler[3]
    omega=kepler[4]
    tetta=kepler[5]

    p = a * (1 - e ** 2)

    return coe2rv(Earth_k_val, p, e, i, OMEGA, omega, tetta)

op = OrbitPlotter()

r0, v0= keplerian2cartesian_alt([200, 200, 64.3*math.pi/180, 0, 310*math.pi/180,0])
r1, v1= keplerian2cartesian_alt([8000, 200, 64.3*math.pi/180, 0, 310*math.pi/180,math.pi])
r2, v2= keplerian2cartesian_alt([8000, 600, 64.3*math.pi/180, 0, 310*math.pi/180,math.pi])

o0=Orbit.from_vectors(Earth, r0*u.km, v0*u.km/u.s)
o1=Orbit.from_vectors(Earth, r1*u.km, v1*u.km/u.s)
o2=Orbit.from_vectors(Earth, r2*u.km, v2*u.km/u.s)

op.plot(o0, label="Initial orbit")
op.plot(o1, label="Transfer orbit")
op.plot(o2, label="Final orbit")

If you try that from a script, you are missing this:
import matplotlib.pyplot as plt
plt.show()
# plt.savefig("figure.png")  # Alternatively

Just add this at the end? Now it doesn't show the graphs, only the coordinate system with labels.

Thanks!


Add ML Pipelines AppTile

Add ML Pipelines AppTile
https://github.com/opendatahub-io/odh-dashboard/pull/388

cc @jkoehler-redhat

@andrewballantyne let's sync.  All dashboard work should be coming in via issues.


cmd/go: TestNoteReading fails on Solaris with linkmode=external

See http://build.golang.org/log/c7559674bb66a323958ebc8f8b51aaa0908c46f9
--- FAIL: TestNoteReading (0.36s)
	go_test.go:251: running testgo [build -ldflags -buildid=TestNoteReading-Build-ID -o /tmp/gotest473966932/hello.exe /tmp/gotest473966932/hello.go]
	go_test.go:251: running testgo [build -ldflags -buildid=TestNoteReading-Build-ID -linkmode=external -o /tmp/gotest473966932/hello.exe /tmp/gotest47396693	2/hello.go]
	note_test.go:39: buildID in hello binary = "", want "TestNoteReading-Build-ID" (linkmode=external)
FAIL

Disabling test for Go 1.5.

Debugging this now; short version is .note section is likely in first ~1MB when using external linking on Solaris instead of first 16K due to how Go is linking things in external linking mode.  I'll submit a CL once I feel like I have the right fix.
The naive fix at the moment is to read the first ~1MB of the file instead of the first ~16K, but that's obviously undesirable.

So the root cause of this is a subtlety in the System V ABI; the ABI specification defines .note sections as "special" sections that are not allocable (SHF_ALLOC):
Name	Type	Attributes
...
.note	SHT_NOTE	0
...

http://refspecs.linuxbase.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/specialsections.html
However, Go relies on the fact that it manually marked the section as allocable, and GNU ld will apply any specified flags to the sections.  As a result, on Linux or other platforms where the allocable flag is honoured, the .note.go.buildid section will be placed roughly in the first 16K or so of the file.
Solaris ld(1), however, follows the System V ABI specification strictly and ignores any section attributes that the developer specified by "cleaning" the section flags by default to match System V although this can be "overridden" via a mapfile.
As such, it seems like there are two possible solutions:

use a .data or other "expected" allocable section entry instead of a .note section to store the buildid
use a mapfile on Solaris only to force the .note section to be allocable:

$ cat /tmp/note.mapfile
$mapfile_version 2

LOAD_SEGMENT text {
        ASSIGN_SECTION {
                TYPE = SHT_NOTE;
        };
};
$ LD_OPTIONS=-M/tmp/note.mapfile go test -run TestNoteReading
PASS
ok      cmd/go  3.289s

Comments?

On Thu, Aug 20, 2015 at 3:18 PM, Shawn<EMAIL_ADDRESS>wrote:

So the root cause of this is a subtlety in the System V ABI; the ABI
specification defines .note sections as "special" sections that are not
allocable (SHF_ALLOC):
Name    Type    Attributes
...
.note   SHT_NOTE    0
...
http://refspecs.linuxbase.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/specialsections.html

Although it's true that the ABI says that sections named ".note"
should not have any flags, the Go linker is not creating a section
named ".note".  It's creating a section named ".note.go.buildid".  The
ABI doesn't say anything about such a section.
Also, the ABI defines a PT_NOTE segment.  Both the GNU linker and gold
will take a SHF_ALLOC SHT_NOTE section and put it into a PT_NOTE
segment.  Is there any way to tell the Solaris linker to create a
PT_NOTE segment?

use a .data or other "expected" allocable section entry instead of a .note
section to store the buildid

This seems like the simplest solution if there is no way to create a
PT_NOTE segment.  I think we would probably want a .text section so
that it goes very early in the binary.
Ian

Although it's true that the ABI says that sections named ".note" should not have any flags, the Go
linker is not creating a section named ".note". It's creating a section named ".note.go.buildid". The
ABI doesn't say anything about such a section.

I think this is another one of those "matter of interpretation due to vague or non-explicit wording in standard" cases. For example, taking other statements in the standard into consideration:

"sh_type
This member categorizes the section’s contents and semantics.
Section types and their descriptions appear below."
...
"Section names with a dot (.) prefix are reserved for the system, although applica-
tions may use these sections if their existing meanings are satisfactory.  Applica-
tions may use names without the prefix to avoid conflicts with system sections."

...one could interpret those statements to imply that sections generated by the application, if marked with SHT_NOTE, such as a .note.go.buildid are system sections since they start with a '.' prefix and while the name is not exactly ".note", I could understand why someone would interpret that to mean that any section with type SHT_NOTE should have the attributes listed in the ABI specification.
Regardless, our tentative plan for future versions of Solaris is to mimic the GNU linker's behaviour that you describe below and that I also found in an older blog post: http://www.airs.com/blog/archives/45 ...in that we'll change it to honour SHF_ALLOC for those sections.

Also, the ABI defines a PT_NOTE segment. Both the GNU linker and gold will take a SHF_ALLOC
SHT_NOTE section and put it into a PT_NOTE segment. Is there any way to tell the Solaris linker to
create a PT_NOTE segment?

The Solaris linker will create a PT_NOTE segment regardless of whether SHF_ALLOC is set, it just ignores the SHF_ALLOC flags per the table in the ABI:

"The note segment captures all sections of type SHT_NOTE. The link-editor provides a PT_NOTE > program header entry to reference the note segment."

The GNU linker appears to only create a PT_NOTE section though if SHF_ALLOC is set on a SHT_NOTE section, which seems potentially at odds again, with some readings of the standard.
As an example of what happens today with Go's -linkmode=external:
$ go build -ldflags -linkmode=external hello.go
$ elfdump hello
...
Program Header[7]:
    p_vaddr:      0                   p_flags:    0
    p_paddr:      0                   p_type:     [ PT_NOTE ]
    p_filesz:     0x38                p_memsz:    0
    p_offset:     0xbfa80             p_align:    0
...
Section Header[34]:  sh_name: .note.go.buildid
    sh_addr:      0                   sh_flags:   0
    sh_size:      0x38                sh_type:    [ SHT_NOTE ]
    sh_offset:    0xbfa80             sh_entsize: 0
    sh_link:      0                   sh_info:    0
    sh_addralign: 0x20
...

Note the SH_OFFSET of the .note.go.buildid section.  That's about ~786K into the file, which is because the SHF_ALLOC on the original section is ignored.
If we apply the mapfile I showed originally with -linkmode=external:
Section Header[23]:  sh_name: .note.go.buildid
    sh_addr:      0x4be700            sh_flags:   [ SHF_ALLOC ]
    sh_size:      0x38                sh_type:    [ SHT_NOTE ]
    sh_offset:    0xbe700             sh_entsize: 0
    sh_link:      0                   sh_info:    0
    sh_addralign: 0x20

...but we don't get a PT_NOTE segment because of our override.  In talking with the local linker aliens, there doesn't seem to be any way to get the desired result (SHT_NOTE section with SHF_ALLOC set and a corresponding PT_NOTE section).  The Solaris linker makes the explicit assumption that note sections were never meant to be loaded into memory; only used for on-disk purposes.

For the record, the test does not actually pass with mapfile example I showed earlier; I failed to remove the "skip" for LinkExternal on Solaris from note_test.go after doing a "git sync".  While the mapfile gets us halfway there, the previous mapfile doesn't ensure that a PT_NOTE segment is created.
Anyway, short of changing Go to use something other than a SHT_NOTE section to record the buildid, the only other option I can see is to use a mapfile whenever linking the executables to leave space for a PT_NOTE header, ensure that the .note.go.buildid section stays within the first 16K of the binary, and ensure that the .note.go.buildid section is allocable:
$ cat /tmp/note.mapfile
$mapfile_version 2

PHDR_ADD_NULL = 1;

LOAD_SEGMENT text {
        ASSIGN_SECTION {
                IS_NAME = .note.go.buildid;
        };
        OS_ORDER = .note.go.buildid;
};

$ elfdump /tmp/gotest963298988/hello.exe
...
Program Header[4]:
    p_vaddr:      0                   p_flags:    0
    p_paddr:      0                   p_type:     [ PT_NULL ]
    p_filesz:     0                   p_memsz:    0
    p_offset:     0                   p_align:    0
...
Section Header[1]:  sh_name: .note.go.buildid
    sh_addr:      0x400200            sh_flags:   [ SHF_ALLOC ]
    sh_size:      0x28                sh_type:    [ SHT_NOTE ]
    sh_offset:    0x200               sh_entsize: 0
    sh_link:      0                   sh_info:    0
    sh_addralign: 0x20
...

Then, to leverage the above, Go would have to either transform the PT_NULL header into a PT_NOTE header itself or use an 'elfedit' script to do the same.

So it isn't pretty, but if Go wants to continue using the SHT_NOTE section for .note.go.buildid, the following appears to work:
diff --git a/src/cmd/go/note_test.go b/src/cmd/go/note_test.go
index 3d64451..9b7e246 100644
--- a/src/cmd/go/note_test.go
+++ b/src/cmd/go/note_test.go
@@ -33,9 +33,6 @@ func TestNoteReading(t *testing.T) {
 		// no external linking
 		t.Logf("no external linking - skipping linkmode=external test")

-	case "solaris":
-		t.Logf("skipping - golang.org/issue/12178")
-
 	default:
 		tg.run("build", "-ldflags", "-buildid="+buildID+" -linkmode=external", "-o", tg.path("hello.exe"), tg.path("hello.go"))
 		id, err := main.ReadBuildIDFromBinary(tg.path("hello.exe"))
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
index 8ccbec9..79e1b96 100644
--- a/src/cmd/link/internal/ld/lib.go
+++ b/src/cmd/link/internal/ld/lib.go
@@ -1071,6 +1071,35 @@ func hostlink() {
 		argv = append(argv, peimporteddlls()...)
 	}

+	if HEADTYPE == obj.Hsolaris {
+		// Before linking, create a mapfile that directs the Solaris
+		// linker to reassign the .note.go.buildid section to the text
+		// segment so that it remains allocable.
+		p := fmt.Sprintf("%s/mapfile", tmpdir)
+		var err error
+		f, err := os.OpenFile(p, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0666)
+		if err != nil {
+			Exitf("cannot create %s: %v", p, err)
+		}
+
+		b := bufio.NewWriter(f)
+		_, err = b.WriteString(`$mapfile_version 2
+PHDR_ADD_NULL = 1;
+LOAD_SEGMENT text {
+	ASSIGN_SECTION {
+		IS_NAME = .note.go.buildid;
+	};
+	OS_ORDER = .note.go.buildid;
+};
+`)
+		if err != nil {
+			Exitf("cannot write to %s: %v", p, err)
+		}
+		b.Flush()
+
+		argv = append(argv, "-Wl,-M," + p)
+	}
+
 	if Debug['v'] != 0 {
 		fmt.Fprintf(&Bso, "host link:")
 		for _, v := range argv {
@@ -1087,6 +1116,30 @@ func hostlink() {
 		Bso.Flush()
 	}

+	if HEADTYPE == obj.Hsolaris {
+		// After linking, transform the PT_NULL entry created by
+		// Solaris linker using a mapfile into a PT_NOTE for the
+		// .note.go.buildid section.
+		f, err := elf.Open(outfile)
+		defer f.Close()
+		if err != nil {
+			return
+		}
+
+		sect := f.Section(".note.go.buildid")
+		f.Close()
+
+		argv := []string{"elfedit", "-e", fmt.Sprintf("phdr:p_vaddr PT_NULL %d", sect.Addr), "-e", fmt.Sprintf("phdr:p_paddr PT_NULL %d", sect.Addr), "-e", fmt.Sprintf("phdr:p_offset PT_NULL %d", sect.Offset), "-e", fmt.Sprintf("phdr:p_memsz PT_NULL %d", sect.Size), "-e", fmt.Sprintf("phdr:p_filesz PT_NULL %d", sect.Size), "-e", fmt.Sprintf("phdr:p_align PT_NULL %d", sect.Addralign), "-e", "phdr:p_type PT_NULL PT_NOTE", outfile}
+		if out, err := exec.Command(argv[0], argv[1:]...).CombinedOutput(); err != nil {
+			Exitf("running %s failed: %v\n%s", argv[0], err, out)
+		}
+
+		if Debug['v'] != 0 {
+			fmt.Fprintf(&Bso, "elfedit: %s\n", strings.Join(argv, " "))
+			Bso.Flush()
+		}
+	}
+
 	if Debug['s'] == 0 && debug_s == 0 && HEADTYPE == obj.Hdarwin {
 		// Skip combining dwarf on arm.
 		if Thearch.Thechar != '5' && Thearch.Thechar != '7' {

It accomplishes this by a combination of what I outlined earlier:

ensure .note.go.buildid is placed in text segment via mapfile
ensure a stub program header is created via mapfile
after linking, invoke elfedit to transform stub program header into a PT_NOTE and link to .note.go.buildid

$ elfdump hello
Program Header[4]:
    p_vaddr:      0x400200            p_flags:    0
    p_paddr:      0x400200            p_type:     [ PT_NOTE ]
    p_filesz:     0x38                p_memsz:    0x38
    p_offset:     0x200               p_align:    0x20
...
Section Header[1]:  sh_name: .note.go.buildid
    sh_addr:      0x400200            sh_flags:   [ SHF_ALLOC ]
    sh_size:      0x38                sh_type:    [ SHT_NOTE ]
    sh_offset:    0x200               sh_entsize: 0
    sh_link:      0                   sh_info:    0
    sh_addralign: 0x20
...
/builds/srwalker/golang/go/pkg/tool/solaris_amd64/link -o $WORK/cmd/go/_test/go.test -L $WORK/cmd/go/_test -L $WORK -w -extld=gcc -buildmode=exe $WORK/cmd/go/_test/main.a
$WORK/cmd/go/_test/go.test -test.v=true -test.run=TestNoteReading
=== RUN   TestNoteReading
--- PASS: TestNoteReading (0.35s)
	go_test.go:251: running testgo [build -ldflags -buildid=TestNoteReading-Build-ID -o /tmp/gotest494547271/hello.exe /tmp/gotest494547271/hello.go]
	go_test.go:251: running testgo [build -ldflags -buildid=TestNoteReading-Build-ID -linkmode=external -o /tmp/gotest494547271/hello.exe /tmp/gotest494547271/hello.go]
PASS
ok  	cmd/go	2.886s
...

The test now passes as expected.  However, I feel like this solution is pretty ugly given the amount of additional platform-specific code I had to add to the linking step.

The Solaris linker will create a PT_NOTE segment regardless of whether SHF_ALLOC is set, it just ignores the SHF_ALLOC flags per the table in the ABI:

Huh.  It seems very weird to me to have a segment that refers to non-allocated sections.  The whole point of segments is so that the dynamic linker can find things in memory at run time.  That fails if the segment only points back to the file.
Does the Solaris linker set the p_vaddr, p_paddr, and p_memsz fields to zero?

I think that on Solaris we just shouldn't use a SHT_NOTE section.  We really don't care what the type of section is.  On GNU/Linux SHT_NOTE is appropriate--it's convenient for readelf and objdump, for example--but if Solaris needs something else, we should use something else.

Huh. It seems very weird to me to have a segment that refers to non-allocated sections. The whole point of segments is so that the dynamic linker can find things in memory at run time. That fails if the segment only points back to the file.

The specification seems to strongly imply that non-allocable sections are expected in the segments by calling some segments "loadable" and others not.  For example, in the "Program Header" section of the specification (5-1), it states: "Some entries describe process segments; others give supplementary information and do not contribute to the process image."  That seems to pretty clearly imply that some process segments found in the program header will not be loaded into memory.  Again, another one of the dark corners of the standard I think.

Does the Solaris linker set the p_vaddr, p_paddr, and p_memsz fields to zero?

Yes, as I showed earlier:
$ go build -ldflags -linkmode=external hello.go
$ elfdump hello
...
Program Header[7]:
    p_vaddr:      0                   p_flags:    0
    p_paddr:      0                   p_type:     [ PT_NOTE ]
    p_filesz:     0x38                p_memsz:    0
    p_offset:     0xbfa80             p_align:    0
...
Section Header[34]:  sh_name: .note.go.buildid
    sh_addr:      0                   sh_flags:   0
    sh_size:      0x38                sh_type:    [ SHT_NOTE ]
    sh_offset:    0xbfa80             sh_entsize: 0
    sh_link:      0                   sh_info:    0
    sh_addralign: 0x20
...

Which is logical; the specification states that "[p_memsz] gives the number of bytes in the memory image of the segment; it may be zero."  That implies that p_vaddr may also be zero since there is no memory-resident data.  And p_paddr is obsolete, so doesn't matter: " Because System V ignores physical addressing for application programs, this member [p_paddr] has unspecified contents for executable files and shared objects.".

I think that on Solaris we just shouldn't use a SHT_NOTE section. We really don't care what the type of section is. On GNU/Linux SHT_NOTE is appropriate--it's convenient for readelf and objdump, for example--but if Solaris needs something else, we should use something else.

That's fine by me; as I said, future versions of Solaris will attempt to more closely mimic the GNU linker's behaviour, but for the foreseeable future, we'll have to pursue another solution for Go.
I'll see what I can come up with using a different section type instead of SHT_NOTE.  Thanks for your patience.

The specification seems to strongly imply that non-allocable sections are expected in the segments by calling some segments "loadable" and others not. For example, in the "Program Header" section of the specification (5-1), it states: "Some entries describe process segments; others give supplementary information and do not contribute to the process image." That seems to pretty clearly imply that some process segments found in the program header will not be loaded into memory. Again, another one of the dark corners of the standard I think.

OK, fair enough.  On GNU/Linux systems, the sense has always been that you can have a PT_LOAD segment, you can have a segment like PT_INTERP or PT_TLS that refers to in-process memory, you can have a segment ilke PT_GNU_STACK that conveys information but does not refer to any contents of the file, but you will never have a program header that refers to file contents not loaded into memory, because such a segment is not useful.  The kernel loads the PT_LOAD segments into memory, and passes them to the dynamic linker.  We never want the dynamic linker to look at anything other than what the kernel already loaded into memory, so a segment that refers to unloaded memory is useless.
But you seem to be right that the ELF ABI permits it.


missplaced comma in default PDF documents

since the last PDF iteration there is a misplaced comma (',') under the headline
perhaps one wanted to test doubled headlines?
@emanuelschuetze

fixed in #2640


update dependencies management instruction in CONTRIBUTING.md

Signed-off-by: Dominic Yin<EMAIL_ADDRESS>Updated dependencies instruction in CONTRIBUTING.md:

The dependency management tool has changed from go dep to go module.
Kubernetes documents has moved to new repository, so the link should be updated. See https://github.com/kubernetes/kubernetes/pull/39120

/assign @bowei


fix google.api.http URLs with proper hierarchy

see https://github.com/opiproject/opi-api/pull/186#discussion_r1013458476
see https://github.com/opiproject/opi-api/pull/186#issuecomment-1302808971
we might want to prefix the path with nvme, virtio, etc. i.e. instead of implicit assumptions we can keep the nvme path to /v1/nvme/subsystems, /v1/nvme/controllers, etc.
or i.e. /v1/nvme/frontend/subsystems or /v1/nvme/fe/subsystems vs. /v1/nvme/subsystems
also relationship between subsystems and controllers something like: post: "/v1/subsystems/{subsystem}/controllers"

Recommend:
Nvme: /v1alpha/nvme/frontend/...
iSCSI: /v1alpha/iscsi/frontend/...
Virtio: /v1alpha/virtio/frontend/...
Middleend: /v1alpha/middleend/...
happy to submit a PR if we agree.

not frontend before the protocol ?

also see https://google.aip.dev/122#resource-uris
//calendar.googleapis.com/users/vhugo1802
vs
https://calendar.googleapis.com/v3/users/vhugo1802


Update repo path to point to langchain-ai GitHub org.

The repo is now part of the langchain-ai GitHub org and not under the hwchase17 account.

Thank you!


Request textDocument/codeAction failed

I am getting random errors while running command
GroovyLint: Analyze Code
Message: Request textDocument/codeAction failed with message: Cannot read property 'split' of undefined
 Code: -32603

I'm currently building test classes, so the extension may not be perfectly stable for now, sorry for that ^^
Please can you send me information to reproduce the problem ?

It's random and I am now unable to reproduce it today. You may close the issue

I released a new version yesterday, it probably solved the issue you detected :)
Thanks for your feedback, do not hesitate to post new issues if you see any problem :)

Hi, I'm getting this persistently with 0.6.3 on MacOS 10.15.4, NodeJS v12.16.1 and OpenJDK 11.0.6:

Message: Request textDocument/codeAction failed with message: Cannot read property 'split' of undefined
Code: -32603

I'm also getting an "Unable to start CodeNarc Server" error right when it starts linting - is this related or should I open another issue? Thanks for publishing this promising extension!


Source address dropdown incomplete on Outbound NAT rules

After switching Outbound NAT to manual on 18.7.5 I tried to re-create the automatic rules. I found that the "Source address" dropdown is missing the networks list (automatic rule includes "LAN networks").

LAN networks is a macro inside pf(4) only used for automatic rule generation.
Why do you emulate automatic with manual? Hybrid mode not what you're looking for?

The automatic rule does not include the "static-port" option, which I need. I read in multiple tutorials that I need to duplicate the rules manually but none actually said how to do it. Am I missing something simple? Is there another way to set "static-port"?

No, you're right. Not sure how tricky this is to add. @AdSchellevis what do you think?

@monreal @fichtner just to be sure, only the network portion in the source address dropdown? That shouldn't be too hard, I can probably fix that for the next version.

Yes, the same mechanic that automatic rules are using :)

This https://github.com/opnsense/core/commit/9be373ff759efbebb0af8056d603c832bbbe4c9d should do the trick. rule parsing is generic indeed, no changes needed there.

@monreal @fichtner just to be sure, only the network portion in the source address dropdown?

Well, after looking at this again it looks like the "Networks" list is missing from the "Destination address" selection, too. Seems to be the same problem.
Then I also noticed a second problem in the same dialog, which however is probably not related: I get an error when saving if I select "WAN address" for "Translation / target". I can only save if I use "Interface address". Should I open another issue for this?

@monreal what's the error?

It says:
The following input errors were detected:
A valid target IP address must be specified.

I can't seem to replicate this on my end, can you post some screenshots of the settings?

"LAN_networks" is an alias for "<IP_ADDRESS>/24 <IP_ADDRESS>/8" btw, which is what the automatic rule contains

I can't replicate this, this message can't appear when selecting "Interface address", since targetip is empty in that case:
Empty assigned here:
https://github.com/opnsense/core/blob/9be373ff759efbebb0af8056d603c832bbbe4c9d/src/www/firewall_nat_out_edit.php#L654
Output when not valid...
https://github.com/opnsense/core/blob/9be373ff759efbebb0af8056d603c832bbbe4c9d/src/www/firewall_nat_out_edit.php#L191-L193
I can look at the destination field, can't help you with this, maybe some weird browser issue on your end.

I can look at the destination field, can't help you with this, maybe
some weird browser issue on your end.

Big thanks anyway! Let's keep this issue about fixing the dropdowns. Would be nice if you could fix the destination address dropdown in addition to the source address dropdown. After that I guess this issue can be closed as resolved.

@monreal ok, I'll close it with the commit, feel free to reopen if you experience issues with the network dropdowns.


fix(@angular/build): use Node.js available parallelism for default worker count

The Node.js os.availableParallelism API now provides more accurate values when used within containers such as many CI environments. This provides a better default when using resource limited CI setups. The value is still set to a maximum default of four. However, the NG_BUILD_MAX_WORKERS environment variable can be used to set the value to an explicit value if required.

The changes were merged into the following branches: main, 18.0.x


Define a vscode.executeSemanticHighlightProvider command

Providers also define a command so that extensions can use them. See
https://code.visualstudio.com/api/references/commands
for examples.
The semantic highlight provider should offer something similar.
Uses cases:

get semantic highlighting for a virtual document

What we want for the markdown preview is actually #56356

@aeschli I don't know exactly what to do here. Should this block in any way the stabilization of the API? The SemanticTokens are not sufficient without a legend to help decipher the result. i.e. it is not like a request to provide references, etc. which work without a leged to decipher the result.

Hm, no one has really asked for that feature yet, so it's hard to justify this a to be a blocker of any kind.
But yes, it seems that the new API is not suited to be used programmatically.
Let's say the legend comes as part of the result. But that means when using virtual documents to get semantic tokens for the pieces of embedded languages, you might receive tokens types/modifiers back that you didn't anticipate. In order to use them you would have to re-register the provider with a new legend, or filter these.


Support for links and shortcuts

I am currently porting an app from Angular 1 to 2. This app uses the links and shortcuts feature of Angular-Translate. It seems like it's not supported, could this be in the plans ?

That would be a nice feature, it's not really on my todo list but I'd like a PR with this

Definite +1 (especially if {{'HELLO'|translate:{value:'@WORLD'} }} would indeed do Hola Mundo in spanish per #141)...

I guess there's nobody working on this. I've just found myself in the same need as for #141. Have anyone found a workaround for having the key value translated outside the translation pipe so the translated result can be provided as a parameter's key value?

hey
I temporarily solved this problem. ^^;;
as problem : {{ 'Forms.Validation.Required' | translate : { field: 'Users.Reference' | translate } }}
to solved :

Was it helpful? :)

I've tried this and got the error: "Can't bind to 'translate-value-field' since it isn't a known property of..."

@cronosxfiles binding to translateParams accomplishes what #141 asked for.
Example:

"FIELD_REQUIRED": "{{field}} is required"
"FIRST_NAME": "First Name"

results in

First Name is required

I made a pipe that can be used like this :
{{ 'KEY_TO_TRANSLATE' | translate: (values | ParamsTranslate) }}
Here is the pipe code :
`import { Pipe, PipeTransform } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { first } from 'rxjs/operators/first';
import { map } from 'rxjs/operators/map';
@Pipe({
name: 'ParamsTranslate'
})
export class ParamsTranslatePipe implements PipeTransform {
constructor(private _translate: TranslateService) {}
transform(obj: Object): Object {
    const newObject = Object.assign({}, obj);
    Object.keys(obj).forEach(
        key =>
            obj[key].length
                ? this._translate
                      .get(obj[key])
                      .pipe(first(), map(value => value))
                      .subscribe(value => (newObject[key] = value))
                : undefined
    );
    return newObject;
}

}`

I'm struggling with the same problem as @Bouzmine. Have anyone has found any solution, except modifying the translation file?

I want to comment for others facing this problem.
If you want to use translation as attributes, then look at @acantrell answer.
If not, then @ibenjelloun answer is the right one.


Complete Observability Stack Realtime example

NB: Before opening a feature request against this repo, consider whether the feature should/could be implemented in the other OpenTelemetry client libraries. If so, please open an issue on opentelemetry-specification first.
Is your feature request related to a problem? Please describe.
Real World project demonstrating Complete Observability Stack utilizing Prometheus, Loki (For distribute logging), Tempo ( Distribute tracing, this basically uses Jaeger : OpenTelemetry Auto / manual Instrumentation), Grafana for NodeJS applications involving microservices with DB interactions
Describe the solution you'd like
Node Js Applications : https://github.com/mnadeem/nodejs-opentelemetry-tempo
Describe alternatives you've considered
N/A
Additional context
With just docker-compose up things would work out of the box.

This looks like a cool example project but what feature are you requesting?

This would be helpful for the community to get started with observability quickly and appreciate the benefit it provides.
If we could add the link  to examples / getting stated page then it might be helpful. Or add the project itself to OT examples

I'm not sure I want to link out to a project we don't control, I would consider adding it as an example, but I have some concerns.

We would need to ensure every commit has a valid CLA and the licensing for all dependencies is acceptable to the CNCF.
I would prefer to use fluentd instead of loki since it is a CNCF project, but OpenTelemetry will be eventually adding its own logging. I would worry that this example will become out of date when that happens.
The metrics API/SDK is in its infancy and an example like this is very likely to quickly become out of date and nobody will want to maintain it until everything is stable. We have already seen this with our tracing examples which are much smaller.
While I think end to end examples are a good idea, I don't know how the community at large wants to handle things like this. I think @tedsuo may be a good person to ask.

Closing this as today we have https://github.com/open-telemetry/opentelemetry-demo, which includes examples in various languages, including Node.js


Foraging showing twice

Foraging is showing twice. One time from vanilla game, and another from the mod.
Tested with EN language.

This issue should be solved in the test 0.1.5. Thanks for reporting it, soon will be live


Successfully ingest all of 1000 Genomes Phase 3 VCF data

ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/

I downloaded the VCFs into HDFS with the following
for chr in $(seq 1 22); do
  echo $chr
  hadoop fs -rm vcf-1000genomes/ALL.chr${chr}.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf
  curl ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/ALL.chr${chr}.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf.gz | gunzip -c | hadoop fs -put - vcf-1000genomes/ALL.chr${chr}.phase3_shapeit2_mvncall_integrated_v5a.20130502.genotypes.vcf
done

hadoop fs -rm vcf-1000genomes/ALL.chrX.phase3_shapeit2_mvncall_integrated_v1b.20130502.genotypes.vcf
curl ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/ALL.chrX.phase3_shapeit2_mvncall_integrated_v1b.20130502.genotypes.vcf.gz | gunzip -c | hadoop fs -put - vcf-1000genomes/ALL.chrX.phase3_shapeit2_mvncall_integrated_v1b.20130502.genotypes.vcf

hadoop fs -rm vcf-1000genomes/ALL.chrY.phase3_integrated_v1b.20130502.genotypes.vcf
curl ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20130502/ALL.chrY.phase3_integrated_v1b.20130502.genotypes.vcf.gz | gunzip -c | hadoop fs -put - vcf-1000genomes/ALL.chrY.phase3_integrated_v1b.20130502.genotypes.vcf

Next step is to run LoadVariantsTool on them.

I loaded chr1 and it took 4hrs, 14mins on a 6 node cluster. This was using the shuffle to do the sort.
When I tried to do the sort on the reduce side it ran out of memory after loading 24 million records into memory (for the first reducer that failed). (The YARN container had 64 GB of pmem, and 134.40 GB of vmem allocated to it.) Now, according to the successful run (shuffle sort) there are 16 billion records, so with 64 reducers, that's around 250 million records per reducer (on average; with skew it's not even since variants are not evenly distributed over the position buckets). That means the reducer loaded <10% of its variants into memory before it  ran out of memory. So, sorting in memory for 1000 genomes does not seem feasible.
Extrapolating to the whole dataset: it would take 4.23 hrs * (795.0 GB/61.3GB) = 55 hours (2 days, 7hrs) to run (using shuffle sort).

I realised that the above used too few reducers, so I reran with 250 reducers (since chr1 covers 250Mbps). The job completed in 3hrs 1 min. (So would take around 39hrs on the full dataset.)
I also tried re-running using sort on the reduce side (since each reduce would be doing less, since there were more of them), and giving each reducer 16GB of memory. The job still failed (time outs during sort, duplicate partition file names after retry), but with only a few reducers to go (at around the 2hrs mark) - so this may be feasible after all.

I've now added an option to restrict the samples that are loaded, and this makes it easier to load samples in batches. For example, you can load the 1K genomes dataset 100 samples at a time, and put each into a separate sample group. I've documented this approach here: https://github.com/cloudera/quince#loading-the-1000-genomes-vcf-data. Loading 100 samples (for the entire genome, not just chr1) takes 3hrs.

Running on a 10 node EC2 cluster, looks like the job takes ~2 hrs (with no shuffle)

(using c3.8xlarge I should say)

With the refactored code I managed to ingest 1K genomes in 5.5hrs on a 6 node cluster (with no shuffle).
hadoop jar target/quince-0.0.1-SNAPSHOT-job.jar \
  com.cloudera.science.quince.LoadVariantsTool \
  --sample-group 1000genomes \
  --flatten \
  vcf-1000genomes \
  datasets/variants_flat_locuspart

Closing this now.