Mixing logs between different containers

When i have 2 or more containers from same image - logs are mixed between different containers and different projects. After refresh log - all is ok.

on screenshot you can see 'node_1' container log in project which not contain this container.

Hi @camohob. Thanks for the issue. I'll check your case and write results.

Hi @igor-lemon, new details: this problem is not related to the same images. When I just run the dockstation (if the projects have already started earlier) - everything is fine, but after restarting any project - the logs are mixed between projects and containers.

Hi @camohob So, we tried to reproduce your issue and couldn't do it. :(
I wanna find a reason of the problem. Can you record video with your issue?
Need to

Show logs before project restart
After
Show logs from some other project
Show container logs from a terminal docker logs CONTAINER_ID/CONTAINER_NAME

Hi @igor-lemon, I record video. As you can see - the problem also appears when switching between projects.

I apologize for the long answer. Ok, thanks for the video. We'll check this case.

Hi @camohob. We've good news, we found and fixed the bug. Fixes will be able in the v1.5

Hi @camohob. We've good news, we found and fixed the bug. Fixes will be able in the v1.5

The problem still remain...

It's strange because we fixed this.
So, I'll recheck this case.


client.del return 0

The client.del api returns 0 when trying to delete a cache key. I have tried other clients and the cache keys are correctly deleted, thus returning 1.
self.client.del(key, function (err, res) {
                // res is null when the key is missing
                if (err) self.logger.error("RedisStore.unset err %@", err);
                else self.logger.debug("RedisStore.unset %@:%@", key, res);
                return callback(err, res);
            });

This should definitely work properly. Did you delete the entry before running your code?

If this is still somehow relevant, the key should be non-absolute but relative to the prefix you specified on creation.


[BUG] Time Partitioner not working as expected for GCS

Data Sent to GCS Bucket is not in the correct date folder.
I have configured timePartitionDuration: 1d   It was working fine but after a few days dates folder was not being created (say after 2022-06-23 folders had not been created) and the data was being sent to the 2022-06-23 folder.
Data being sent to GCS.
To Reproduce
I am using
Function Mesh version: 0.1.11-rc3
Pulsar IO Cloud storage sink connector Version: <IP_ADDRESS>
Expected behavior
Data Sent to GCS Bucket should be in the respective data folder.
Screenshots

Additional context
Add any other context about the problem here.

Hi @shaileshjha061, can you confirm whether your records Message objects have a publishTime associated?


Add encode benchmarks to compare boba with bubblebabble crate

Comparison benchmarks: https://crates.io/crates/bubblebabble
This PR adds an additional encoding benchmark for an all emoji string.
boba::encode is between 15% and 20% faster than bubblebabble::bubblebabble.

bench results: https://github.com/artichoke/boba/pull/33/checks?check_run_id=527882579
boba
test encode::benchmark_encode_emoji             ... bench:         169 ns/iter (+/- 14)
test encode::benchmark_encode_empty             ... bench:          24 ns/iter (+/- 2)
test encode::benchmark_encode_vector_1234567890 ... bench:          93 ns/iter (+/- 2)
test encode::benchmark_encode_vector_pineapple  ... bench:          80 ns/iter (+/- 1)

bubblebabble
test encode::benchmark_encode_emoji             ... bench:         193 ns/iter (+/- 39)
test encode::benchmark_encode_empty             ... bench:          31 ns/iter (+/- 1)
test encode::benchmark_encode_vector_1234567890 ... bench:         109 ns/iter (+/- 5)
test encode::benchmark_encode_vector_pineapple  ... bench:          94 ns/iter (+/- 4)


Segmentation Conditions and Criteria

Description of the change:
Reason for the change:
Link to original source:

Closes #

Hello @Whatthefoxsays,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


session problem in localhost

i have download a fresh copy of CI 2.1.4 on my local machine using xampp
i have made two changes in all

in config.php
$config['encryption_key'] = 'asddsad';
in autoload.php
$autoload['libraries'] = array('database', 'session');
when i open the page in browser (localhost/ci)
the default page of project following error shows up
In order to use the Session class you are required to set an encryption key in your
config file
i googled a lot and tried many codes and changes, also testing in other browsers and in other new copy of CI too. error remains the same for me
i am using windows8 and xampp to do this
can someone suggest a way out of this..

hello there ,
have u solved this issue
"An Error Was Encountered
In order to use the Session class you are required to set an encryption key in your config file."
i am getting this error even after setting up the things  using ci 2.1.3.
please help me out Asap.


Crash if number is greater than Int.max

I'm experiencing a crash while decoding a JSON string containing an int bigger than Int.max. You can add the following test to reproduce it.
func test() {
        var myJSON: JSON?
        do {
            myJSON = try JSON(jsonString: "{\"id\":9223372036854775808}")
        } catch let error as NSError {
            print(error)
        }
        print(myJSON)
}

Should the library allow bigger ints? If not it should throw an exception instead of crashing.

Related: #76

NSJSONSerialization appears to use NSDecimalNumber in this scenario.

@lucatorella The front-running suggestion in the discussion on #76 would be to make bigger-than-Int.max numbers accessible as Strings, at which point you could parse it into a decimal number yourself or just store it as a string. What are you hoping to do with ints of that size?

 Anyway, I'm not sure that crashing is a good option, since it is valid json. I read #76 and I see that there are performance implications in handling this more properly.

Sure, there's no question that crashing is wrong. :) It's better than handling it incorrectly somehow, though.
The problem is what to do with it since it can't be represented as an Int. It sounds like in your case it doesn't matter, since you don't have to deal with it after fixing the bug?

Yes exactly I'm not affected, and sure it's better than handling it incorrectly

Cool. Closing this in favor of #76 then, since there's much more discussion there.


Some console.log in minified code.

I've found some debug messages "console.log" in the minified version.
console.log("HERE1");

I forgot about the min version :)

I've been testing with roster2 and it was also looking for a missing json file.

Is the behaviour changed from 1.2.2 to 1.2.3 ?

Yep, I've got rid of the languages file business. It was just causing confusion. I need to update Roster2. If you want to drop me  a PR, that'd be great :)


Added factory construction method for File job store (Resolves #834)

Azure's constructor will be added when #833 is merged

@hannes-ucsc

Don't you need to change the tests to use the new factory method?
If you do, can you also change "File job store" to "file job store" or "FileJobStore" in the commit message? It would be "Mesos job store" because Mesos is a proper noun, while file isn't. Otherwise, this is ok to merge.

Jenkins, test this please.

note to self: rename these factory methods such that the jobStore suffix is omitted.

Jenkins, test this please.

continued in #900


Update parseDuration

any value <= 0 or >= 1440 (minutes in a day) no longer accepted
added comments to parserUtil's methods and test cases for changes to parseDuration

Codecov Report

Merging #236 (88fc653) into master (762db97) will decrease coverage by 0.03%.
The diff coverage is 75.00%.

@@             Coverage Diff              @@
##             master     #236      +/-   ##
============================================
- Coverage     80.29%   80.26%   -0.04%
- Complexity     1005     1006       +1
============================================
  Files           119      119
  Lines          2989     2989
  Branches        417      417
============================================
- Hits           2400     2399       -1
  Misses          469      469
- Partials        120      121       +1

Impacted Files
Coverage Δ

...va/seedu/address/storage/JsonAdaptedInterview.java
97.53% <50.00%> (-1.24%)
:arrow_down:

...in/java/seedu/address/logic/parser/ParserUtil.java
92.08% <100.00%> (ø)

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 762db97...88fc653. Read the comment docs.


Adds auto_set_content_size for UIScrollview and subclasses.

So that you can add a bunch of things to a scrollview and then call auto_set_content_size and it will not change frame but automatically set the contentSize based on the scroll view's contents (with optional padding)

Once #195 is merged, I'll modify this PR to pull out the subview size calculation into its own method so that it's not repeated in both auto_set_content_size & resize_to_fit_subviews

This is awesome.
I'd like to bring up a major issue that is starting to rear it's head.  @twerth your feedback on this idea would be most appreciated.
this is auto_set_content_size
on labels we have resize_to_fit_text alias size_to_fit
and on UIViews we have resize_to_fit_subviews
Since Mark's code here is not actually resizing a scrollview, should we possibly add aliases to the others, taking the auto_set prefix?
It would be nice to add some conformity in this
We remember one method that changes depending on the object.  I'm going to suggest auto_set_content_size and auto_set_frame_size as the 2 options.

I agree to having some conformity in these names.
IMO, auto_set_content_size means it will automatically set content size when something happens. That's the way I read it. I'd rather that be named something that suggests it's going to happen right now and only right now.

I see your point. I picked "auto_set" because it automatically sets it based on the subviews. I'm open to a different name though :+1:

I'd actually like to eventually have an "auto_set" where it does automaticallyl set it when something changes. But that's a bigger feature.
Imagine you do this st.auto_resize_to_fit_children = true and anytime a child's frame changes it sets the parent if needed and applicable

It's long, but how about: resize_content_to_fit_subviews assuming that's exactly what it does.
I'm a big believer in "make a method name as short as possible and be completely clear, and no shorter"

Also, resize_to_fit_subviews will need documentation on the site along side with whatever the name ends up being.
I'm :+1: with resize_content_to_fit_subviews.
Playing with :fire:
What about view_refit and content_refit ?
It meets all needs.  Name says what it is, and it's short.  Feels clean to me.

I personally don't like view_refit, it's a bit unclear, but I'm curious what Mark thinks.

I'm not a fan of the shorter name. not descriptive enough. It's a complex task we're trying to describe in just a few words.
if we're gonna go with resize_content_to_fit_subviews we should also change the name of the other method to resize_frame_to_fit_subviews, no?

/giphy Take my ball and go home.

Yeah, that makes sense @markrickert. I like that. Leave the alias for now though for backwards compatibility.

Cool. I've renamed the method as well as changing the frame setter and creating an alias to the old method.

Tests passed :)

New feature for resize_frame_to_fit_subviews:
Allows you to pass :only_width or :only_height so that things aren't resized that you don't want to be :)
Useful for when you have views inside a uiview that don't extend all the way to the right and you only want to resize the height of the frame.

@GantMan @twerth i think this one is ready to go. 3 new tests with 26 new assertions!
I'll write documentation once it's merged and a new version is released.

Mark adding tests:

lol

Hey @markrickert I just searched for this today on the docs.  Let me know if you want any help adding them!   I need to go through anyway and add docs for my stuff.


New version: ImageLine.FLStudio version <IP_ADDRESS>04

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.6 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

I'm not sure if it conforms the 1.6 schema changes, I tried to check and it looks good to me, but I'm not deep enough into that stuff to just say "yes, it does".

Is there any reason why it always fails on the same validation?

I always have the problem when updating the version that it fails on the validation, which leads to 5-15x rerunning the pipeline until it is manually validated.
This is the first time that it is approved 7 times.
If there is anything I can do with the developers of FL Studio to ensure that the failing 2 tests are passing and that this is a more smooth flow, please let me know.

Hi @HevyMusic,
This wasn't a failing test - but I believe more of a race between the bots. Sorry to have impacted you.

@stephengillie
No problem, I just ask because that as it was the same issue the last 3 times I updated the version (that 2 of the validation tests did not pass) and it had to be manually approved each time.
Thanks for merging!

Oh - the Internal-Error-Dynamic-Scan reflects a pipeline issue, not a package issue. Or an umbrella for numerous errors, including new errors. A few packages might create a unique situation that causes this error on every run - I've been reporting a list back to our team, to try and mitigate repeated situations like this. I'll mention this package specifically.


Replace the "divert()" abstraction with something simpler

Simplicity is in the eye of the beholder, of course, but the main value prop here is that you can see what the differences are between each version by looking in a single file instead of having to search across the file-system.
 Seems to work pretty well in my testing. Some of the names could perhaps use a tweak.
Originally was going to extract some stuff from https://github.com/liferay/liferay-themes-sdk/pull/174 but ended up going down this different path.

Ah one other thing; builds on https://github.com/liferay/liferay-themes-sdk/pull/178 — which I might just merge to make this all simpler to review.

Just started reviewing :)


Increased max view distance in spatial editor plugin

Increased from 10000 to 1000000. I also removed two related magic numbers.
Closes #30766.

Thanks!


Tackling TypeScript added

What does this PR do?
Add resource
For resources
Description
TypeScript ebook for Javascript developers from Dr. Rauschmayer
Why is this valuable (or not)?
Book from highly appreciated TC39 committee member
How do we know it's really free?
Free online version
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[X] Read our contributing guidelines
[X] Search for duplicates.
[X] Include author(s) and platform where appropriate.
[X] Put lists in alphabetical order, correct spacing.
[X] Add needed indications (PDF, access notes, under construction)

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Thanks, and welcome to free-programming-books!


Errors

I'm getting an error when I try to use the module using python 3.10.
Trying py -m pain001:
Traceback (most recent call last):
File "C:[...]\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:[...]\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:[...]\AppData\Local\Programs\Python\Python310\lib\site-packages\pain001_main.py", line 32, in
from pain001.constants.constants import valid_xml_types
ModuleNotFoundError: No module named 'pain001.constants'
And trying to use it in a file as per the snippet on the main page:
ImportError: cannot import name 'main' from 'pain001' (C:[...]\AppData\Local\Programs\Python\Python310\lib\site-packages\pain001_init_.py)

@thegreengiant27
Sorry to hear that you have encountered some issues.

Let's check the Installation:

First, ensure that you've installed the package correctly. If you used pip, you might want to reinstall it:

pip uninstall pain001
pip install pain001

Let me know if this helps.

Let's verify the module structure:

Please try to navigate to the installation directory (as indicated in the error message, something like C:[...]\AppData\Local\Programs\Python\Python310\lib\site-packages\pain001) and check if the folder constants exists inside the pain001 directory.
I will look on my side to reproduce this on Windows to identify what is the issue.
Thanks for taking the time to report your issue.
Best regards,
Sebastien

@thegreengiant27 this should be fixed now in v0.0.25


cors mode for external domains in service worker

There is a strange problem when loading fonts from google in service worker:
Electron adds credentials: 'include' to fetch call, while Chrome 47 and Canary do credentials: omit.
As a result, request fails in Electron with CORS-violation error. I did an ugly workaround is service worker:
if (/fonts\.gstatic\.com/.test(url.host)) {
  request = new Request(request, {credentials: 'omit'});
}

But maybe there is a cleaner solution?
Full code to reproduce:
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700&subset=latin,cyrillic-ext,latin-ext,cyrillic" rel="prefetch stylesheet" type="text/css">

Service worker:
self.addEventListener('fetch', fetcher);

function fetcher(event) {
  event.respondWith(fetch(event.request));
}

Investigated more that case:
Initial request to google fonts is the same, but then there is a redirect wich differs in credentials field:
In chrome 47 and canary it is omit, but in electron it is include

Updated the issue with new details and workaround

Can you provide a full example? It would makes it much easier for us to look into this.

@zcbenz will be glad too:
main.js for electron:
const electron = require('electron');
const app = electron.app;
const BrowserWindow = electron.BrowserWindow;

app.on('ready', function() {
  const mainWindow = new BrowserWindow({width: 800, height: 600});
  mainWindow.loadURL('http://localhost:8123');
});

You will need a simple server to serve static assets, SW is not working with file: scheme.
If you have ruby, you can do one-liner like that: ruby -run -ehttpd . -p8123
index.html
<!DOCTYPE html>

    <meta charset="utf-8">
    <title></title>
    <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700&subset=latin,cyrillic-ext,latin-ext,cyrillic" rel="prefetch stylesheet" type="text/css">

electron

sw.js
self.addEventListener('fetch', fetcher);

function fetcher(event) {
  console.log('fetch from SW')
  event.respondWith(fetch(event.request));
}

If you run app once and then restart it (to register SW and then allow it to work), you should see something like this:

But in plain Chrome 47 everything works. Hope that helps!


[Chore] remove useless interface

Purpose of this pull request

Remove useless interface for IncrementalSource.
Does this PR introduce any user-facing change?

No
How was this patch tested?

Existed test cases.
Check list

[x] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[x] If necessary, please update the documentation to describe the new feature. https://github.com/apache/seatunnel/tree/dev/docs
[x] If you are contributing the connector code, please check that the following files are updated:

Update change log that in connector document. For more details you can refer to connector-v2
Update plugin-mapping.properties and add new connector information in it
Update the pom file of seatunnel-dist

[x] Update the release-note.

link
https://github.com/apache/seatunnel/pull/5100


Check if local time is too far off

I know a few people who were having problems with Google Authenticator and they didn't know why. The reason was that their device's clocks were too inaccurate and the tokens weren't validating.
I wrote a quick jQuery function that gets the server time from google.com and calculates the offset of the local computer. If the computer's clock is off by too much, it won't be able to validate the tokens, so I think it's a good idea to let the user know if this is the case.
$.ajax({
	type: "HEAD",
	url: 'https://www.google.com',
	success: function(data, status, xhr) {
		var serverDate = new Date(xhr.getResponseHeader('Date'));
		var localDate = new Date();
		var timeDiff = Math.abs(serverDate.getTime() - localDate.getTime());

		if (timeDiff > 30000) {
			alert("Warning: Your computer's internal clock is off by more than 30 seconds. You should fix this before continuing.");
		}
	}
});

It uses google.com, which almost everyone should have in their DNS cache, and only does a HEAD request, so it doesn't download the page content, and is asynchronous. Therefore it's pretty lightweight and won't interrupt anything else. You just need to add the following to your manifest file's permissions:
"https://www.google.com/"

Of course, this just uses alert() to notify the user, but you could do many things with this, such as displaying a javascript pop-up, having some sort of bar that changes length and/or color based on the offset, adding a "troubleshooting" section which shows the actual offset, etc.

Done.

Sorry for taking so long to reply. It might be a good idea to actually let the user know that their clock is too far off. Even though using an offset works, it's probably better to tell them to fix the underlying problem.

Yeah, you are right, I will fix this in the next version. BTW, I just make users be able to store passphrase in cookies, so the passphrase may be removed when the browser is closed and we do not need background page :-D

Interesting. I didn't know you could do cookies with Chrome extensions. Good thinking.

Done in version 4.6


Fix/upload artifact error windows

From issue https://github.com/go-gitea/gitea/issues/27314
When act_runner in host mode on Windows. upload_artifact@v3 actions use path.join to generate itemPath params when uploading artifact chunk. itemPath is encoded as ${artifact_name}\${artifact_path}.
It's twice query escaped from ${artifact_name}/${artifact_path} that joined by Windows slash .
So we need convert Windows slash to linux.
In https://github.com/go-gitea/gitea/issues/27314, runner shows logs from  upload_artifact@v3 like with %255C:
[artifact-cases/test-artifact-cases]   | ::error::Unexpected response. Unable to upload chunk to http://<IP_ADDRESS>:3000/api/actions_pipeline/_apis/pipelines/workflows/6/artifacts/34d628a422db9367c869d3fb36be81f5/upload?itemPath=more-files%255Css.json

But in gitea server at the same time, But shows %5C
2023/10/27 19:29:51 ...eb/routing/logger.go:102:func1() [I] router: completed PUT /api/actions_pipeline/_apis/pipelines/workflows/6/artifacts/34d628a422db9367c869d3fb36be81f5/upload?itemPath=more-files%5Css.json for <IP_ADDRESS>:55340, 400 Bad Request in 17.6ms @ <autogenerated>:1(actions.artifactRoutes.uploadArtifact-fm)

I found %255C is escaped by https://github.com/actions/upload-artifact/blob/main/dist/index.js#L2329.

Isn't that something the runner should do?

Double encoding would definitely be a bug in the runner.
Also util.PathJoinRel seems to be meant for joining 2 or more paths. calling it on a single path seems wrong and I think path.Clean would achieve the same in a cleaner manner.

It's not right to do url.QueryUnescape(ctx.Req.URL.Query().Get("itemPath")) (double decoding)
I think it should figure out the runner's bug first.

It's not right to do url.QueryUnescape(ctx.Req.URL.Query().Get("itemPath")) (double decoding)
I think it should figure out the runner's bug first.

I make a mistake that confusing logs from upload_artifact@v3. I rewrite the description of this bug above.

Double encoding would definitely be a bug in the runner.
Also util.PathJoinRel seems to be meant for joining 2 or more paths. Calling it with a single path seems wrong and I think path.Clean would achieve the same in a cleaner manner.

// PathJoinRel joins the path elements into a single path, each element is cleaned by path.Clean separately.

// PathJoinRelX joins the path elements into a single path like PathJoinRel,
// and covert all backslashes to slashes. (X means "extended", also means the combination of `\` and `/`).

PathJoinRelX is the right function to call.


Add support for scripts in fromProposalProcedure

[!WARNING]
On top of https://github.com/IntersectMBO/cardano-cli/pull/971

[!NOTE]
Requires https://github.com/IntersectMBO/cardano-api/pull/692

Changelog
- description: |
    Add support for scripts in fromProposalProcedure
# uncomment types applicable to the change:
  type:
  - feature        # introduces a new feature
  # - breaking       # the API has changed in a breaking way
  - compatible     # the API has changed but is non-breaking
  # - optimisation   # measurable performance improvements
  # - refactoring    # QoL changes
  # - bugfix         # fixes a defect
  # - test           # fixes/modifies tests
  # - maintenance    # not directly related to the code
  # - release        # related to a new release preparation
  # - documentation  # change in code docs, haddocks...

Context
Fixes https://github.com/IntersectMBO/cardano-api/issues/682
How to trust this PR
It's type change only
Checklist

[X] Commit sequence broadly makes sense and commits have useful messages
[X] Self-reviewed the diff

Closing as this is superseded by https://github.com/IntersectMBO/cardano-cli/pull/988


GIF Support via Tenor

Let's add GIF support via tenor. This will allow for more interactive conversations.

This will be doable once #44 is completed.


[Feature request]: fix tray icon's shape

Version

[X] I'm using version 1.7.0

Existing requests

[X] I've checked Existing requests

What operating system are you using?
Linux
Operating System Version
OS: Manjaro 21.1.6 Pahvo, kernel: Kernel: x86_64 Linux 5.13.19-2-MANJARO,  DE: GNOME 40.0
Problem description
the tray icon in top bar will change to a icon with three dots inside every several seconds, and then change back soon, it's annoying, is there any way to fix tray icon showing?
this is the normal tray icon, and the changed icon's time is so short that I can't capture it.

Possible solution
change the preferences configuration file.
Alternative solutions
revising source code is difficult for me
Additional information
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

It's indicator of refresh. But I guess not changing this during update could be done. Still it's not seems like huge issue. Just change check interval to bigger value and all should be just fine.

Hi @xuestrange , that has to be something that your DE is doing, I mean the ... dots behavior. I would suggest filing the bug report there: if the icon stays the same, they should not show those ... dots.
In Stretchly, I am updating tray menu every 10 seconds, as it contains time information for next break.


Adding support for using a variables file to configure runtime values

First out is the devfile_location, which allows for the URL to the CRW devfile to be configured at deployment time.

Tested on both OCP and locally with 100% success. Have not tested on github pages, but don't see why it shouldn't work. If we find it to be a problem with GH pages we can quickly revert.

@oybed / @jfilipcz let's smash it in and see how the docsify on gh-pages works. Im sure it will be fine anyways


feat: add new from params to prover

The existing TachyonSHPlonkProver and TachyonGWCProver were initiated through unsafe_setup after receiving a secret (tau) value as the input. With this PR, the Provers can now be initiated with pre-generated params as the input.
This PR should be merged after https://github.com/kroma-network/tachyon/pull/353

@dongchangYoo How about fixing commit message for 0daa0ef?
feat(c/zk): add method to create c-prover from params

Please add the scope (c/zk) to c7c89cfed614303ba1ddd019ba384fb71e49b44c


Maximum number of levels in Do notation?

Hi,
I am trying to find out can I write transformation with Do notation with more then 5 levels, for example:
Do.forEach(TryInstances::monad)
    .__(this::first)
    .__(this::second)
    .__(this::third)
    .__(this::fourth)
    .__(this::fifth)
    .__(this::sixt)
    .yield(this::yieldResult)
    .fold(fn);

And also is it possible to replace results from this::first and this::second with result of this::third?
Thanks.

Hi @smarijic,
We will need to make a code enhancements to add more levels to the Do notation. There is no reason why this can't be done (it just requires engineering effort). It would involve creating a new inner class D6 (and so on) and some tests. We can add expansion to 8 tiers to the 10.4.0 release.
If you explicitly define the function you ca choose which parameters to pass on / replace / swap, at each stage. It's not as neat as a method reference but it should allow you to get the flexibility you need. And you only have to do it, when you want to make a change.
Option<Integer> res = Do.forEach(OptionInstances::monad)
                        ._of(10)
                        .__(i->some(i/2))
                        .__((a,b)->some(a-b-3))
                        .__((a,b,c)->some(a-c-b-2))
                        .__((a,b,c,d)->some(a+b+c+d+82))
                         .yield((a,b,c,d,e)->a+b+c+d+e)
                        .fold(Option::narrowK);

There are also some selectors on the Function interfaces that allow us to narrow a multi-parameter Function to a lower parameter one. E.g. on Function4 we can use Function4.___14 to select the first and last parameters to pass through to a BiFunction.
import static cyclops.function.Function2._1;
import static cyclops.function.Function2._2;
import static cyclops.function.Function3.*;
import static cyclops.function.Function4.*;

Option<Integer> res = Do.forEach(OptionInstances::monad)
                        ._of(10)
                        .__(i->some(i/2))
                        .__(_2(b->some(b-3)))
                        .__(__12((a,b)->some(a-b-4)))
                        .__(___12((a,b)->some(a+b+85)))
                        .yield((a,b,c,d,e)->a+b+c+d+e)
                        .fold(Option::narrowK)

There are some examples in the tests : https://github.com/aol/cyclops/tree/master/cyclops-pure/src/test/java/cyclops/typeclasses. But feel free to post up more details / questions here (especially if I have misunderstood or not covered what you were asking)

Hi @johnmcclean,
Thanks for fast response.
I have created PR for do notation up to Do8, not sure if I missed anything (except tests).
https://github.com/aol/cyclops/pull/1052

Great thanks @smarijic!

Merged


Add initial string

Add posibility to initialize the module with optional initial value. It is useful, when module is used to edit some already existing settings, e.g. player names.

👌 nice, thanks for your contribution! 😄


Fix PyTorch Android

Description
Supporting v1.8.1 on Android

Codecov Report

Merging #933 (58e3f24) into master (1adcf5b) will decrease coverage by 0.03%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #933      +/-   ##
============================================
- Coverage     70.21%   70.18%   -0.04%
+ Complexity     5089     5088       -1
============================================
  Files           502      502
  Lines         22477    22477
  Branches       2347     2347
============================================
- Hits          15783    15776       -7
- Misses         5448     5460      +12
+ Partials       1246     1241       -5

Impacted Files
Coverage Δ
Complexity Δ

...gine/src/main/java/ai/djl/dlr/engine/DlrModel.java
53.12% <0.00%> (-3.13%)
4.00% <0.00%> (ø%)

api/src/main/java/ai/djl/util/Platform.java
43.47% <0.00%> (-2.18%)
8.00% <0.00%> (ø%)

api/src/main/java/ai/djl/repository/Artifact.java
89.65% <0.00%> (-1.73%)
36.00% <0.00%> (-1.00%)

...g/src/main/java/ai/djl/serving/util/Connector.java
55.40% <0.00%> (-1.36%)
21.00% <0.00%> (ø%)

...ngine/src/main/java/ai/djl/mxnet/jna/LibUtils.java
42.23% <0.00%> (-1.25%)
15.00% <0.00%> (ø%)

...rc/main/java/ai/djl/paddlepaddle/jni/LibUtils.java
51.14% <0.00%> (ø)
14.00% <0.00%> (ø%)

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 1adcf5b...58e3f24. Read the comment docs.


CLI lp needs help

lp --help should show all commands

Also running it without any options should display the help message.

This is not trivial to implement. The problem is, that the command finds the correct class, but getting a list of all classes which might be correctly resolved isn't part of the concept now.
We could just parse the directory, but when we customize the commands with their own namespace, this breaks.
Any ideas?


Refactoring of the MAVLink parameter interface

This is a refactoring of the MAVLink paramter interface. Solves #440.

Ready for review.

@JonasVautherin would be good to get this one in.


enable bs-config.json comments

currently tsconfig.json, typings.json and .vscode/launch.json + settings.json + tasks.json all support use of // and /* */ comments to store details of alternative settings and notes relating to contents of those files.
i tried doing this in lite-server dependent bs-config.json, e.g. as in following example, and this breaks 'npm run lite-server' support.
{
  "port": 3000,  // == default and for specific port use "port": 8080 or "https": true, "port": 44300,
  //"files": ["./src/**/*.{html,htm,css,js}"],
  "files": ["./**/*.{html,htm,css,js}"],
  //"server": { "baseDir": "./src" }
  "server": { "baseDir": "./" }
}

is enabling similar support in lite-server dependent bs-config.json file something that is in the plans already?
would it be change that has to happen in the https://github.com/johnpapa/lite-server or https://github.com/browsersync/browser-sync package release work?

no plans for it. we support what BS supports.


pyepics v3.3.0

Yes, we need an older pyepics for collection-2019C3.0 and analysis-2019C3.0.

Built successfully in https://dev.azure.com/nsls2forge/nsls2forge/_build/results?buildId=735, merging.


Fix double-prefixing in log module when using explicit relative path with -d

CDir::CheckPathPrefix is called twice, both in OnLoad, and again in PutLog. Normally
the second is a no-op, but if the module path is explicitly relative (e.g. to "."),
It will incorrectly add the prefix twice.

What if I'm talking to .. ?

ZNC handles .. poorly with or without the patch.
Without the patch, sPath on :295 has the value:
./users/WugTest/moddata/log/users/WugTest/moddata/log/2018-08-15.log
With the patch, sPath has the values:
./users/WugTest/moddata/log/TestNetwork/../2018-08-15.log
These are both using the default logpath for user modules, $NETWORK/$WINDOW/%Y-%m-%d.log.
The only difference between ordinary behavior and this special case is that CheckPathPrefix elides the .. path element by removing it and the prior one, it doesn't stop the undesirable filesystem traversal.
I can patch this too while I'm here. I propose "." and ".." be substituted with "log.dot" and "log.dotdot" if they appear by themselves in a path element.

if they aren't by themselves, they'll be left alone
$WINDOW's replacement contains a literal dot to prevent collision with nicknames, which never do

If the problem is with relative path in -d, other parts of ZNC can behave
poorly with such path. In that case not log module should be fixed, but -d
flag: it should convert relative path to absolute path upon startup.
2018-08-15 14:55 GMT+01:00 Ryan<EMAIL_ADDRESS>
ZNC handles .. poorly with or without the patch.
Without the patch, sPath on :295 has the value:
./users/WugTest/moddata/log/users/WugTest/moddata/log/2018-08-15.log
With the patch, sPath has the values:
./users/WugTest/moddata/log/TestNetwork/../2018-08-15.log
These are both using the default logpath for user modules,
$NETWORK/$WINDOW/%Y-%m-%d.log.
The only difference between ordinary behavior and this special case is
that CheckPathPrefix elides the .. path element by removing it and the
prior one, it doesn't stop the undesirable filesystem traversal.
I can patch this too while I'm here. I propose "." and ".." be substituted
with "log.dot" and "log.dotdot" if they appear by themselves in a path
element.

if they aren't by themselves, they'll be left alone
$WINDOW's replacement contains a literal dot to prevent collision
with nicknames, which never do

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/znc/znc/pull/1591#issuecomment-413204890, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAT15OjmjmVnHcAnuBCDGKCO8CbjY1uuks5uRChQgaJpZM4VuTkY
.

I disagree.  If something behaves badly when you give it a relative path, then I think ensuring all paths are absolute just masks possible bugs.
I think CDir::CheckPathPrefix is poorly named, poorly documented, and its implementation very inelegant. If a function like that were included now in a pull request, you would surely reject it. I think a much better solution would be to replace it with a new function whose behavior is more strongly defined.

Well, both. -d should be fixed, and CDir::CheckPathPrefix should be fixed.
2018-08-15 15:37 GMT+01:00 Ryan<EMAIL_ADDRESS>
I disagree. If something behaves badly when you give it a relative path,
then I think ensuring all paths are absolute just masks possible bugs.

Are you willing to provide test cases for every possible ZNC codepath which
happens to use file paths? Ensuring all paths are absolute is more
self-contained change which fixes not only issue you discovered, but also
future issues with relative paths.

I think CDir::CheckPathPrefix is poorly named, poorly documented, and its
implementation very inelegant. If a function like that were included now in
a pull request, you would surely reject it. I think a much better solution
would be to replace it with a new function whose behavior is more strongly
defined.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/znc/znc/pull/1591#issuecomment-413217727, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAT15NIUyHje4k-s7qrGRbdg2bqDzdzHks5uRDIPgaJpZM4VuTkY
.

I have a build now that replaces CDir::CheckPathPrefix with 2 new functions, CFile::GetRelativeFile and CFile::Contains, that do the same thing, but generalized to relative paths.  CFile::GetRelativeFile in conjunction with another new function CFile::Canonize can also probably replace CDir::ChangeDir.  The only thing I'm not sure about is whether to kill them completely, or leave them around but deprecated, since the python and perl bindings use them, and removing them will break any python/perl scripts that depend on them.  I'll clean it up and push it to a new branch tonight.


command-line error: invalid option: --using_directory

Does this issue occur when all extensions are disabled?: No

VS Code Version: 1.74.0
OS Version: Linux x64 5.8.0-63-generic

Steps to Reproduce:

Thanks for creating this issue! We figured it's missing some basic information or in some other way doesn't follow our issue reporting guidelines. Please take the time to review these and update the issue.
Happy Coding!

In a selected Directory, I type in the cmd  : "code ."
VSCode opens up but the include directories of header/cpp files are not being recognized. For instance , if I have the files
"directoryA/test.h" and "directoryB/test.cpp" , and do --> include "directoryA/test.h" in the test.cpp file, then VSCODE cannot link these two files together, meaning Defined variables of test.h are not showing up automatically. Compilation works fine.
The "command-line error: invalid option: --using_directory" line is showing in both .h and .cpp files.
It also does not matter if the .h and .cpp files are in the same directory.

I have the same problem now. How was this problem finally solved?

I have the same problem now. How was this problem finally solved?

It was not.... I will write an issue to the cpp extension experts! If you find a solution please let me know.
Thanks :)

I have the same problem now. How was this problem finally solved?

There is already a thread concerning this issue :
https://github.com/microsoft/vscode-cpptools/issues/10249

Fixed with https://github.com/microsoft/vscode-cpptools/releases/tag/v1.13.8


Tailwind CSS v2.0

Is there an easy way to update the tw_dict as new versions of Tailwind are released?  Also, see below for those of us who have purchased tailwind ui.
https://tailwindui.com/changes-for-v2
"Tailwind UI for Tailwind CSS v2.0 relies solely on the default Tailwind configuration, with certain examples also requiring first-party plugins like @tailwindcss/typography, @tailwindcss/aspect-ratio, or the new @tailwindcss/forms plugin."
Just looking for the best route to use the newest tailwind features.
Thank you

I also use Tailwind extensively and love it. The update of tw_dict will have to wait for a new version (unless of course you want to take the task on...)
In order to use the latest version of Tailwind add:
NO_INTERNET = False

to justpy.env
This will fetch the latest version of all libraries from the web instead of using the version that comes with JustPy.
You can then use all the new classes but the justpy functions that deal with changing classes will not work for all classes (that requires changing tw_dict).
For tailwindui, there is an undocumented template option that you can use:
wp = jp.WebPage(template_file='tailwindui.html')

This adds support for the tailwindui classes.
Let me know how it goes.

I did find template_file='tailwindui.html' and also found it referenced in the documentation for Inter font.
https://justpy.io/how_to/change_font/. That works well.
The tailwind ui specific classes have gone away as of tailwind 2.0 and they have added some features as plugins.  I'll see if I can make the required changes.  Thank for the help and all the work on this project.

Do you have an ETA on when Tailwind 2.0 will be supported?
I tried the NO_INTERNET flag in the .env, but it grabbed Tailwind 1.4.6 rather than 2.x

Do you have an ETA on when Tailwind 2.0 will be supported?
I tried the NO_INTERNET flag in the .env, but it grabbed Tailwind 1.4.6 rather than 2.x

My bad, I didn't realize that unpkg does not get the latest version, just the latest version of the major version number specified.
I do not have a release date yet but expect it to be this month.
In the meantime, this should work. Please add the following to your pages:
wp.head_html = """
                <link rel="stylesheet"<EMAIL_ADDRESS>                <link rel="stylesheet"<EMAIL_ADDRESS>                <link rel="stylesheet"<EMAIL_ADDRESS>                <link rel="stylesheet"<EMAIL_ADDRESS>"""

For reference: https://justpy.io/reference/webpage/#head_html-and-body_html
Let me know if this does not work.

My bad, I didn't realize that unpkg does not get the latest version, just the latest version of the major version number specified.
I do not have a release date yet but expect it to be this month.
In the meantime, this should work. Please add the following to your pages:
wp.head_html = """
                <link rel="stylesheet"<EMAIL_ADDRESS>                <link rel="stylesheet"<EMAIL_ADDRESS>                <link rel="stylesheet"<EMAIL_ADDRESS>                <link rel="stylesheet"<EMAIL_ADDRESS>"""

For reference: https://justpy.io/reference/webpage/#head_html-and-body_html
Let me know if this does not work.

https://tailwindcss.com is a moving target and handling such moving targets might be a separate issue


add_be_host_mapping_list_config

What type of PR is this：

[ ] BugFix
[x] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：
Fixes #
Problem Summary(Required) ：
add support for spark connecter read from starrocks on k8s, by adding starrocks.be.host.mapping.list config
Usage Note for StarRocks BE Host Mapping Configuration on Kubernetes
Overview:
When running Apache Spark on Kubernetes environments, the internal service names of StarRocks backend (BE) nodes might differ from their corresponding external IPs or domain names. To facilitate seamless connectivity, we support configuring a mapping between these internal service names and their external counterparts using the starrocks.be.host.mapping.list configuration.
Configuration:
The starrocks.be.host.mapping.list property allows users to specify a list of mappings between the external IPs or domain names and internal service names of StarRocks BE nodes.
Format:
<external_ip>:<port>,<internal_service_name>:<port>;...

Example:
For instance, suppose the following mappings are required:

External IP <IP_ADDRESS>:6666 maps to internal service name <IP_ADDRESS>:1234.
External IP <IP_ADDRESS>:5555 maps to internal service name <IP_ADDRESS>:1234.

You can specify these mappings as:
starrocks.be.host.mapping.list = "<IP_ADDRESS>:6666,<IP_ADDRESS>:1234;<IP_ADDRESS>:5555,<IP_ADDRESS>:1234"

Checklist:

[x] I have added test cases for my bug fix or my new feature
[x] This pr will affect users' behaviors
[x] This pr needs user documentation (for new or modified features or behaviors)
[ x] I have added documentation for my new feature or new function

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Deng Ziwu seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@banmoy @wyb i need review

@starrocks-xupeng @starrocks-robot


plugin not enabled

Hi,
first of all thanks for great tooling.
I got following error when running plugin tests:
Plugin: token-auth (access) setup
/kong-plugin/spec/token-auth/01-access_spec.lua:41: [postgres] schema violation (name: plugin 'token-auth' not enabled; add it to the 'plugins' configuration property)

If I enable plugin manually by editing kong_tests.conf inside docker, I am able to run tests.
sed -i '/plugins/ s/$/,token-auth/' spec/kong_tests.conf
Did I miss something in setup procedure?
Regards,
Jan

Have a look at the template plugin. Specifically how Kong is started for the tests: https://github.com/Kong/kong-plugin/blob/master/spec/myplugin/02-integration_spec.lua#L28-L35

Have a look at the template plugin. Specifically how Kong is started for the tests: https://github.com/Kong/kong-plugin/blob/master/spec/myplugin/02-integration_spec.lua#L28-L35

Thank you Tieske!

Thank you Tieske!


feat: allow using webpack defines to override the dir that the native modules are loaded from

This is used in electron-forge for the webpack plugin as the __dirname field is in an unexpected location resulting in this path lookup failing.  Using this we can use the defines plugin to override ASSET_RELOCATOR_BASE_DIR to ensure the native module is loaded correctly.

Thanks for the PR. Could you perhaps give some background on why the __dirname reference isn't working in your target environment?
Is there no way you could do this __dirname replacement in the target environment itself?

@guybedford The __dirname variable in the target environment (Electron) is set to the __dirname of module.parent (this is how webpack works).  Unfortunately module.parent is not in your source directory, rather it is in Electron's internal JS path which is not where we want it to be.
Replacing __dirname everywhere is a bad idea as it works in some cases for what people want to do, replacing just this usage so folks can get native modules Out Of The Box was the best thing I could come up with.

Thanks for the follow up on this. The thing I don't quite follow is that __dirname is just __dirname in the target environment though right? Where is this module.parent access coming from, as that certainly isn't in the bundled code?
I must admit it sounds more like something that should be configurable on the Electron side, but if you can point me to any resources or clarifications on this further that would help.

Hi guys, @MarshallOfSound , any update on this? would be cool to consolidate and use the upstream.

Hey @MarshallOfSound - any updates here? The upstream repo has some essential bug fixes but your fork is still required to get things working with electron (and is referenced in the electron-forge docs).

I just tried using the main branch again but I get build errors without this patch. eg Error: Cannot find module '@sentry/electron'. No clue why but this patch seems essential there.

Any chance for a merge or should we continue using the fork?


C14396: Necessary breaklines

Hello, @sdwheeler,
Localization team has reported source content issue that causes localized version to have different format compared to en-us version. We need to add breaklines to avoid localization problems.
Please, help to check my proposed file change into the article and help to merge if you agree with fix. If not, please, let me know either if you would like me to fix it in another way within this PR, if you prefer to fix it in another PR or if I should close this PR as by-design. In case of using another PR, please, let me know of your PR number, so we can confirm and close this PR.
Many thanks in advance.

@carolinacmoravia You shouldn't have to add the breaklines. But there are Markdown errors that need to be fixed. I will submit a new edit to this PR.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-conceptual/azurermps-5.5.0/release-notes-azureps.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.


[Ironsworn] - add +edge option for Enter the Fray (cave lion asset)

Changes / Comments

added missing +edge option for Enter the Fray (cave lion asset)
housekeeping: updated package-lock, gitignore

Roll20 Requests
Comments are very helpful for reviewing the code changes. Please answer the relevant questions below in your comment.

[x] Does the pull request title have the sheet name(s)? Include each sheet name.
[ ] Is this a bug fix?
[x] Does this add functional enhancements (new features or extending existing features) ?
[ ] Does this add or change functional aesthetics (such as layout or color scheme) ?
[ ] If changing or removing attributes, what steps have you taken, if any, to preserve player data ?
[ ] If this is a new sheet, did you follow Building Character Sheets standards ?

If you do not know English. Please leave a comment in your native language.

Character Sheet Info Roll20 Internal Use only.

@rsek Just wanted to check, you appear to be merging a package-lock.json into this file. Usual practice is to add this to the gitignore and upload just package.json.
Happy to merge either way, but wanted to check!

@rsek Just wanted to check, you appear to be merging a package-lock.json into this file. Usual practice is to add this to the gitignore and merge just package.json.

hmm. the npm docs recommend otherwise: https://docs.npmjs.com/cli/v7/configuring-npm/package-lock-json

admittedly, that's not necessarily the same as what makes sense in practice or in all projects (there might be some r20-specific thing i'm missing here, heh). but if it's all the same to you, i'd like to merge it; i reckon doing it 'by the book' is the best choice for the long term. :)


Blizzard not updating

Hi, @mintopia @mikeweyandt  @GotenXiao  @astrolox  @JasonRivers,
I was trying to use generic image with steamcache and steamcache-dns.
I installed the generic image on another server, it seemed to work fine, but now blizzard is not updating
Any idea? Is it working fien for you guys?
Best Regards,

Came here to log an issue about this. Blizzard not working on my fresh install at our Internet Cafe of 80+ computers either.
It's not just this steamcache either. Our mate's own edition opensourcelan/origin-docker is also making clients fail to connect when downloading updates with similar DNS entries.

Thanks for reporting this.

A reply from the nginx mailing list recommends a fix for the ETag issue with Blizzards CDN and sounds like it also has other desirable affects. This was also used in ti-mo/ansible-lanparty. I've been seeing Etag issues for some time now and this seems to have resolved it for me.
Example error:
[error] 20#20: *4161 etag mismatch in slice response, client: <IP_ADDRESS>, server: , request: "GET /tpr/pro/data/db/1f/db1faa8860dfe0c8e51407cc62ac0569 HTTP/1.1", subrequest: "/tpr/pro/data/db/1f/db1faa8860dfe0c8e51407cc62ac0569", host: "blzddist1-a.akamaihd.net"
https://forum.nginx.org/read.php?29,271744,271750#msg-271750

Try
proxy_hide_header ETag;
instead, it should help.
The other side effect of this is that there will be no ETag in
responses returned. This is clearly a good thing in the scenario
described, as ETag in your case is broken as it changes from one
request to another. Removing it altogether will also help clients
to use range requests and local caching.

Any Progress on this?
Origin is not updating for me either :( makes the whole thing unuable

Having similar problems here. Running four containers: Steamcache, generic, steamcache-dns and sniproxy. As yet the Steam caching is working great, but Blizzard (Overwatch) errors out on download of the game (about 4GB into the process!). Attached the Access and Error log from the generic cache for your perusal. There are plenty of errors, mostly stating "etag mismatch in slice response while reading response header from upstream.
generic-logs.zip

I've been spending the last few days trying to setup a LANCache, for Steam and Blizzard games, and I am having issues downloading Heroes of the Storm.
I am currently using Steamcache/Generic with Docker on Ubuntu 16.04. Overwatch downloads/caches with no issues and so does all Steam games.
While trying to download Heroes of the Storm, I am flooded with this message in my error.log

2017/11/03 21:13:42 [error] 9#9: *23960 etag mismatch in slice response, client: <IP_ADDRESS>, server: , request: "GET /tpr/Hero-Live-a/data/a9/ff/a9ffbffa31bbe89213c11d350cd282ff HTTP/1.1", subrequest: "/tpr/Hero-Live-a/data/a9/ff/a9ffbffa31bbe89213c11d350cd282ff", host: "blzddist1-a.akamaihd.net"

Should be fixed in the 2017-updates branch. This is on dockerhub now - if you can re-test and let me know how it goes for you.

Definitely seems fixed now. Able to download and reinstall Heroes of the Storm and StarCraft with no issues.
Thanks

Fixed by #21  now merged to master


Add CSetEqualExact

It's currently only in the temporal branch, but is required to boot modern CheriBSD (although only used on kernel panics and CheriABI mmap/shmat, plus in userspace for printing capabilities with the alt format).

Cherry-picked to CHERI in<PHONE_NUMBER>87ae50fea427cde9ccea7a3b3dbe63.


Blog app: add devise

In this PR, we implemented the following 👎🏼

Remove current_user method in ApplicationController, devise will provide us with one.
Install and setup devise.

Can register a new user.
User logs in with a combination of email and password.
Hashed password should be stored in the database.
Ask for confirmation of email.
Can reset password.

Hello @brytebee,
Thank you for the review.
Please kindly state the changes required of me.

@RitaDee and @Divinity-dev and @HanaSabih I think it was a mixup with the network and it was pending on my PC but it is foxed now and you guys can make the updates.

Thank you for the review @codepantha


JavaScript dynamically load the content

The goal of jsoup is that is will sensibly parse any real-world HTML page into effectively the same parse tree that a modern browser would.

does not read entire contence, but according to upper statement it should.
first post -- see problematic link
last post -- see the problem:
see here
http://stackoverflow.com/questions/35600919/jsoup-followredirectstrue-does-not-work

Javascript is not supported. Jsoup parses HTML.


chore(deadline): added tests for configure_identity_registration_settings.py

Wrote a bash script to execute the python unit tests and added a script entry in package.json called testpy to run the bash script. The tests are really lightweight, so I expanded the test target to run them along with the other CDK unit tests.
Wrote unit tests for configure_identity_registration_settings.py. I think coverage is pretty good but likely not 100%
Updated _camel_to_snake_case()  because the old version didn't cover some conversions properly.
Fixed 2 small bugs found with the unit tests for using a Secret from file. Not sure if we should bother supporting this feature though.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

Redid the PR to target our feature branch: https://github.com/aws/aws-rfdk/pull/593


Programming Exercises: Download repository button broken for auxiliary repository locally

Checklist
General

[ ] I tested all changes and their related features with all corresponding user types on a test server.
[ ] This is a small issue that I tested locally and was confirmed by another developer on a test server.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Server

[ ] Important: I implemented the changes with a very good performance and prevented too many (unnecessary) database calls.
[ ] I strictly followed the server coding and design guidelines.
[ ] I added multiple integration tests (Spring) related to the features (with a high test coverage).
[ ] I added pre-authorization annotations according to the guidelines and checked the course groups for all new REST Calls (security).
[ ] I documented the Java code using JavaDoc style.

Client

[x] Important: I implemented the changes with a very good performance, prevented too many (unnecessary) REST calls and made sure the UI is responsive, even with large data.
[x] I strictly followed the client coding and design guidelines.
[x] Following the theming guidelines, I specified colors only in the theming variable files and checked that the changes look consistent in both the light and the dark theme.
[ ] I added multiple integration tests (Jest) related to the features (with a high test coverage), while following the test guidelines.
[x] I added authorities to all new routes and checked the course groups for displaying navigation elements (links, buttons).
[x] I documented the TypeScript code using JSDoc style.
[ ] I added multiple screenshots/screencasts of my UI changes.
[x] I translated all newly inserted strings into English and German.

Changes affecting Programming Exercises

[ ] High priority: I tested all changes and their related features with all corresponding user types on a test server configured with the integrated lifecycle setup (LocalVC and LocalCI).
[ ] I tested all changes and their related features with all corresponding user types on a test server configured with Gitlab and Jenkins.

Motivation and Context

Issue #8605 describes the current state in which the download of non-existent auxiliary repositories fail silently. This is not a problem for building or testing programming exercises, but heavily limit the usability for novice users.
When auxiliary repos are created during exercise creation, the auxiliary repos are created and linked correctly. In this case, the current implementation successfully provided a download.
However, when aux. repos are added to existing exercises, the repositories are not created properly and no directory is created in LocalVC. The instructor performing the action is informed about this situation but no fix is suggested nor is a permanent error message raised. When trying to clone or download the non-existent repository, an internal server error (500) arises but no information is shown in the UI. This leaves teams of multiple instructors with the situation that they might not understand why an aux. repo does not work.
Description

As a first step, I implemented an error handler for failing repository downloads. Users are not informed about the situation and know that their repository does not exist. This fights the symptoms but not the root-cause.
I propose a more sophisticated solution changing the way how auxiliary repositories are added to already existing exercises.
Adding new aux repos to existing exercises (and a set of already existing aux repos), poses the challenge of not overwriting those aux repos that are already referenced in tests etc.
This code contains the logic for detecting "illegal" auxiliary repo changes. As soon as a name or checkoutDirectory are changed, it is considered illegal.
Discussion for further improvement
The main problem which reasons such restrictive behavior is, that already existing aux repos are identified by their name and would loose a "HEAD" pointing to them when an instructor changes the name.
We could use the following approaches that allow adding aux repos after the fact:

Append-Only Auxiliary Repositories
By making all existing auxiliary repository's  name read-only, pointers/access to those repos is secured. I see no reason why we shouldn`t add new repositories to the collection then. Add an explicit "delete" logic could allow the instructor to correct any spelling mistake by recreating a correct repo.

Trust Instructors
We can also trust the instructors to know what they change and where they referenced to the checkout directory. Assuming the builds and tests work, this approach has the disadvantage of possibly having repositories around that are not linked by anything anymore.

I´m sure there are other ways to solve it as well - let´s discuss it 👍
As it´s quite relevant for instructors, please share your opinion @krusche @rabeatwork
Steps for Testing

Prerequisites:

1 Instructor
1 Course

Verify successful download

Log in to Artemis
Create a new programming exercise and add an auxiliary repository before saving the exercise
Verify that you can download the aux repo

Verify that the banner is shown

Verify error handling

Log in to Artemis
Create a new programming exercise or open an old one
Add a new auxiliary repository to the exercise and save
Click on the Download Repository button and verify that you see an error banner

Exam Mode Testing

Testserver States

[!NOTE]
These badges show the state of the test servers.
Green = Currently available, Red = Currently locked
Click on the badges to get to the test servers.

Review Progress

Performance Review

[ ] I (as a reviewer) confirm that the client changes (in particular related to REST calls and UI responsiveness) are implemented with a very good performance
[ ] I (as a reviewer) confirm that the server changes (in particular related to database calls) are implemented with a very good performance

Code Review

[ ] Code Review 1
[ ] Code Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

Exam Mode Test

[ ] Test 1
[ ] Test 2

Test Coverage

Screenshots

Summary by CodeRabbit

Style

Improved the layout of the detail overview list by adding top margin to list items.

Bug Fixes

Enhanced error handling in repository export functionality for programming exercises, providing better feedback when an export fails.

Documentation

Added error messages for failed repository exports in both German and English to improve user feedback during export processes.

Don´t close it. @krusche is this a relevant feature to implement as @JohannesStoehr suggested?

I suggest we fix the root cause and allow more options for adding / editing / removing aux repos in LocalVC

Ideally, we provide more options in a follow-up and fix the root cause / bug first quickly, this PR is already open too long

@BBesrour I think for more complicated Build Jobs this could make sense. Regardless of this, it was initially implemented like this - I only removed the alert for creation and deletion 👍


x-axis label centering

On a Stackedbar+line chart,  x-axis labels are not aligned to bars, can someone please help on this issue

Happens to me too with the mixed chart, also you can notice this in the official demo
http://krispo.github.io/angular-nvd3/#/multiChart


Added custom color for the projector chyron and reset buttons for colors

@emanuelschuetze Ready to test

I added some space, value and smaller max value to mat-slider.


translation to top of screen

in some games, like Yakuza 3, the translation cannot be displayed at the top of the game screen

Yakuza is always covering the translation window because it is set to Top Most
Please use the layer translation window. And the translation window should be placed outside the game.


Show which Youtube video is downloaded + Add option to remove cutoff prevention (function that adds empty seconds at the end)

I've been actually using SpotDL since it's v2 release, and what I liked there is the ability to choose which video is to be used especially when the song's very old, and it's not international. Now with improved algorithms and a better selection (plus the 1-3 second cutoff prevention added), I'm a little paranoid if the song has multiple versions available and I want to ensure that I'm getting the correct one.
The song I've downloaded is:
https://open.spotify.com/track/7mmnql6xmYP03z5f3VVQSI?si=A08LClOUQUCHKz1CcAoOew
(Sharon Cuneta - High School)
The closest Youtube DL match is this video:
https://www.youtube.com/watch?v=1DC4TDNESEE
However, that song is also a rename of the same song with a different length (which is why I don't like the cut-off prevention SpotDL adds) called "High School Life":
https://open.spotify.com/track/0E1n7KS1iBw4iaGgItFfu0?si=vAoMe8n2Tg-P4Xs1Hu4IUw
The downloaded audio for "Sharon Cuneta - High School Life" via SpotDL v3 adds 6 seconds to the actual song, unless the Youtube video it took is not the actual video, as it's really just 3:43. (The one I downloaded from SpotDL v2 and with manual Youtube video selection is 3:45, which shows as 3:44 sadly but I lived with it. The one it can probably choose is this video when I download it via SpotDL v3 is this: https://www.youtube.com/watch?v=clBb19oNou8)

Well, that's not a feature a lot of user would use, we don't want to build up a large codebase that we can't maintain. That being said, we will not be implementing this.
Theres an update coming to the download sub-module to make it easier to use as a library. You could use that to write up a script for yourself. Alternatively, fork spotDL, make the changes and we'll put a link to your fork on out home page for others who want the same functionality.

Secondary notes,

I just checked, only 2 seconds of silence is appended to the tracks. Removing this will result in you randomly looking the last 10-15 seconds of your song.

spotDL v3 has nothing to do with YoutubeDL, we source our search results from YouTube Music (all oftheir big data goodness)

Theres a limit to how accurate we can get, that seems to be 99% accuracy (that's just 10 mistakes in 1000 songs, we ran a sample test with 800 songs)

Dude, spotdl v3 is much easier to use as a library, just download your song manually and apply metadata using spotDL.

The spotDL match is https://www.youtube.com/watch?v=1DC4TDNESEE&list=RDAMVM1DC4TDNESEE which is from Sharon Cuneta's official channel ¯_(ツ)_/¯

I apologize for the stuff I asked, and I guess I'll see to attempt to make it. Glad to know that we're actually using an actual music database instead of Youtube itself, haha!

Chill. Everyone rages over minor things once in a while.


Added GraphQL alternative to fetchThreadList; fixes #241

Quick fix for function fetchThreadList() as Facebook migrated it to GraphQL.

I went ahead and renamed fetchThreadListGraphQL to fetchThreadList, and removed the old function, since it wasn't working anyways. This is a slight compatablitity break, and the offset parameter won't work anymore, but I'll say it's the best possible solution ;)


Dockerfile for nano_llm and Ros Iron

@dusty-nv
You have a container dustynv/nano_llm:humble-36.3.0 in the hub which has Ros version = Humble baked in. I want to create one which includes nano_llm but uses Ros version =Iron. Is there a Dockerfile that i can use? Else, what should be the base container that I should use to create a customized container?

@Fibo27 try jetson-containers build nano_llm:iron - there are combinations defined for the ROS2 distros + nano_llm here:
https://github.com/dusty-nv/jetson-containers/blob/master/packages/llm/nano_llm/config.py

Thanks - I did that but i get this error
File "/home/jetson-containers/jetson_containers/packages.py", line 457, in check_requirements     if Version(f"{CUDA_VERSION.major}{CUDA_VERSION.minor}") not in SpecifierSet(r.replace('cu','')): AttributeError: 'str' object has no attribute 'major'

Are you able to build other containers from jetson-containers, or is it just that one?  Are you setting CUDA_VERSION in your environment, or not have it installed under /usr/local ?   Or if you don't have it installed, then run it like:  CUDA_VERSION=12.2 jetson-containers build nano_llm:iron

Thanks that works and I am building the container now.

To run the container, do i simply use this command "jetson-containers run" followed by the image name or should I modify this script "https://github.com/dusty-nv/jetson-containers/blob/master/run.sh"? This run script takes care of all the volumes that need to be mounted for the docker run and I presume those will remain the same.
To modify the container to add features from ROS, should I follow the script in this Dockerfile https://github.com/dusty-nv/jetbot_ros/blob/d8e5ee1b17f5c66d038017b86f8920a496197ea9/Dockerfile#L72? In the past you have directed me to this one. I would presume that I can use the newly created image as the base and the modify the same for additional ROS features.

Yes, after building you can do jetson-containers run nano_llm:iron-r36.3.0 , it should automatically source the ROS2 workspaces upon container start-up

Yes, and if there are no additional ROS dependencies, this Dockerfile.ros also does a simpler version that doesn't need rosdep/rosinstall_generator:  https://github.com/dusty-nv/jetson-containers/blob/master/packages/llm/nano_llm/Dockerfile.ros

@dusty-nv
This was an interesting (long) build on a Jetson Orin NX -  there were many intermediate images that got built - eventually the default image name was nano_llm:iron-r36.3.0-cu122 so one has to use jetson-containers run nano_llm:iron-r36.3.0-cu122 .
I had to prune the intermediate images as it would take up a lot of space (in the process i had to upgrade to a larger ssd storage device)
Thanks


Add new SubsampledImage model with endpoints

Resolve #201

New SubsampledImage with POST/GET endpoints.

POST endpoint for creating a subsampled image from the three options:

simple pixel coordinate bounding box: umin,umax,vmin,vmax
geospatial bounding box: xmin,xmax,ymin,ymax (world coordinates)
GeoJSON polygon we serve the region of the image surrounding that polygon

Sample parameters are passed as JSON field
When using a GeoJSON polygon, a masked raster is returned and it cannot be in COG format.

New wrapper for pairing with signal receivers: skip_signal

Makes it easy to set an attribute on an instance and have the event signal ignored. This is particularly useful to the TaskEventMixin where a celery task is launched on the post_save -- if we are calling save from within a task and need it to finish then we might want to synchronously call that code rather than launching another task.

Improved admin interface for ImageEntry - now a thumbnail is shown in the list view
Added GET endpoints to download files directly from the storage system (e.g. S3) for: ArbitraryFile, ImageEntry, and ConvertedImageFile
Added new endpoint to GET a single SpatialEntry and fixed how the outline field is serialized
Better error handling for the download_file endpoint
Testing!

Basic tests to verify things are running as expected. These don't really verify the results/output

I added a notebook to show off these new endpoints in demos/Geodata-API.ipynb. It shows how to use a GeoJSON polygon to subsample a raster image entry and fetch the result:

Source
Shape
Result


VR: Send VM password to all Running VRs in network/vpc

Description

Currently, the cloudstack sends VM password only to the first
router in the network even if its the backup and return the result.
In some cases the first router will be back up and the second will be master.
Since password server is not running in backup, when the user resets the password,
it is sent to the first router which can be backup.
In that case, the new password is not stored in the password server and users cant log in with a new password.
This change ensures that we send the password to both the routers instead
of the first router so that a new password is stored in the master router.

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[X] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Screenshots (if appropriate):
How Has This Been Tested?

1 . Create and isolated network with redundant VR and a VM in it.
2 . Note down the password of the newly created and try to ssh to it from VR
3 . Ssh works with the existing password.
4 . Now reboot the master VR so that it will become BACKUP and the BACKUP will become MASTER
5 . Now stop the VM and reset it's password.
6 . Try to login to VM using the new password
Expected Result:
Ssh should work with new password
Actual result:
Ssh wont work

@ravening it looks the title is not correct. vm password is sent to all Running VRs , not MASTER VR.

@blueorangutan package

@DaanHoogland a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: ✖centos6 ✔centos7 ✔debian. JID-935

@blueorangutan test

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Additionally to what I mentioned on the previous comment:
BasicNetworkTopology.applyRules(Network, VirtualRouter, String, boolean, Long, boolean, RuleApplierWrapper<RuleApplier>) is the method that will return true or false on savePasswordToRouter. Most of the issues that can happen there will either raise an exception or log it so I don't see much problem; however, I got interested in the fact that it might make sense to break the loop (and maybe add a log to that explaining).
Again, overall it looks OK :)

Is it OK to have one of the routers returning false? Would it make sense do break de loop and log an error/warn/debug message?

@GabrielBrascher good point. if result is false, we can simply log a error message and return false.

Is it OK to have one of the routers returning false? Would it make sense do break de loop and log an error/warn/debug message?

@GabrielBrascher good point. if result is false, we can simply log a error message and return false.
@ravening what do you think ?

@GabrielBrascher Looked at the code and the function applyRules is throwing exception if anything bad happens. So yeah returning false makes sense if it fails for the first router and no need to continue

@blueorangutan package

@DaanHoogland a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: ✖centos6 ✔centos7 ✔debian. JID-952

@blueorangutan test

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Trillian test result (tid-1133)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 27970 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr3903-t1133-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_privategw_acl.py
Smoke tests completed. 76 look OK, 1 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

test_02_vpc_privategw_static_routes
Failure
179.14
test_privategw_acl.py

test_03_vpc_privategw_restart_vpc_cleanup
Failure
182.24
test_privategw_acl.py

test_04_rvpc_privategw_static_routes
Failure
236.95
test_privategw_acl.py


exponentially weighted moving average would provide more accurate "time left"

Instead of using the global average time per entry to calculate the remaining time, using EWMA would give more weight to recent times per entry and would likely provide a more accurate estimate.

Hey, what's the current state here? I can see some commits by @harshavardhana, but I was unable to find any of them in the repo.

Hey, what's the current state here? I can see some commits by @harshavardhana, but I was unable to find any of them in the repo.

@cheggaaa decided not to do it @fd0 - it became complex and wasn't adding value.

Here's the code I use for my own progress lines: https://github.com/dgryski/trifles/blob/master/ewmaest/ewmaest.go

I'm doing the second version of the progress bar. With EWMA and other features. It's will be released soon)

Have a look at mpb. It uses ewmaest based ETA.

Nice, thanks!

Now it's realized in v2


Remote access docs

@ivelin Updated the docs so hopefully the images should be visible now

The issue was fixed by an earlier PR with a similar fix. Closing this one as a duplicate.


Add actions for actions and aliases services

This PR introduces:
Two more services namely actions and aliases along with their tests and associated types.

@hemant-hc this one needs to be rebased.

@sneridagh this can be merged now


Flash messages improvements (Alert widget)

Hi, I have some idea to improve Alert widget:
I want add new Flash message like that:
// succes (default)
Alert::add(Yii::t('msg', 'Operation completed successfully.'));
// error/danger
Alert::add(Yii::t('msg', 'Operation failed.'), Alert::TYPE_ERROR);
// few errors
Alert::add(['Error 1', 'Error 2'], Alert::TYPE_ERROR);
// ActiveRecord validate errors
Alert::add($model->getErrors(), Alert::TYPE_ERROR);

not like that:
Yii::$app->getSession()->setFlash('success', Yii::t('msg', 'Operation completed successfully.'));
Yii::$app->getSession()->setFlash('error', Yii::t('msg', 'Operation failed.'));
Yii::$app->getSession()->setFlash('error', ['Error 1', 'Error 2']);
// ...

Main goals is:

easy print ActiveRecord errors as bootstrap alerts
add new flash message via "write less do more"
avoid to write strings like "success" / "error" as message type (use const)
alert message can be: string, array or multidimensional array

I make some ugly fork to do that in my private project here maybe someone have time to improve it (made more correct in Yii terms)?
PS. Yes, its minor priority :-)

I too am missing the properties inside a model for success messages. We do have error messages but not a success message(s) for a particular model.
$model->getErrors() //we have
$model->getSuccess()

@njitram if model validation succeeds there should be no need for any messages. Note that validation error messages are completely unrelated with flash messages.
About this issue: I think this is an application specific thing and should be implemented per application as needed.


feat(clustermesh): Deploy in parallel the connections

Context: If you manage multiple Kubernetes clusters, it can be beneficial to parallelize the connection processes. However, running helm upgrade in parallel consumes significant CPU resources. Therefore, it's important to customize the resource limits accordingly.
Example of cli for 2 connections in parallel:
cilium clustermesh connect --destination-context kindB,kindC,kindD,kindE --parallel 2
By default --parallel=1
How it works:

A connection is created for the current context.
Only Remote context connections are created in parallel.

An improvement could be to parallelize both the current context and the remote contexts. However, it seems like a lot of work for minimal gain.
Example of log with timestamp (7 clusters kind and --parallel=5):
Wed, 25 Sep 2024 07:30:53 GMT ℹ Configuring Cilium in cluster kind-cmesh1 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh7
Wed, 25 Sep 2024 07:31:00 GMT ℹ Configuring Cilium in cluster kind-cmesh6 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:00 GMT ℹ Configuring Cilium in cluster kind-cmesh5 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:00 GMT ℹ Configuring Cilium in cluster kind-cmesh3 to connect to cluster kind-cmesh2,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:00 GMT ℹ Configuring Cilium in cluster kind-cmesh2 to connect to cluster kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:00 GMT ℹ Configuring Cilium in cluster kind-cmesh4 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh5,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:16 GMT ℹ Configuring Cilium in cluster kind-cmesh7 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh1
Wed, 25 Sep 2024 07:31:29 GMT ✅ Connected clusters kind-cmesh2, kind-cmesh3, kind-cmesh4, kind-cmesh5, kind-cmesh6, kind-cmesh7, and kind-cmesh1!

The first line is the current context (it takes 7 seconds)
The 5 next lines are the connection parallels
When one connection is finished (after 16 seconds), it creates connection for the cluster (kind-cmesh7). It takes 14 seconds.

In total it took 36 seconds (estimated with no parallel: 7x7 = ~49 seconds)
Example of log with timestamp (7 clusters kind and --parallel=3):
Wed, 25 Sep 2024 07:31:07 GMT ℹ Configuring Cilium in cluster kind-cmesh1 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh7
Wed, 25 Sep 2024 07:31:13 GMT ℹ Configuring Cilium in cluster kind-cmesh4 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh5,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:13 GMT ℹ Configuring Cilium in cluster kind-cmesh2 to connect to cluster kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:13 GMT ℹ Configuring Cilium in cluster kind-cmesh3 to connect to cluster kind-cmesh2,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:24 GMT ℹ Configuring Cilium in cluster kind-cmesh5 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh6,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:25 GMT ℹ Configuring Cilium in cluster kind-cmesh6 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh7,kind-cmesh1
Wed, 25 Sep 2024 07:31:25 GMT ℹ Configuring Cilium in cluster kind-cmesh7 to connect to cluster kind-cmesh2,kind-cmesh3,kind-cmesh4,kind-cmesh5,kind-cmesh6,kind-cmesh1
Wed, 25 Sep 2024 07:31:40 GMT ✅ Connected clusters kind-cmesh2, kind-cmesh3, kind-cmesh4, kind-cmesh5, kind-cmesh6, kind-cmesh7, and kind-cmesh1!

The first line is the current context (it takes 6 seconds)
The 3 next lines are the connection parallels
When one connection is finished (after 11 seconds), it creates connection for the cluster kind-cmesh5
Similar with kind-cmesh6 and kind-cmesh7 (it takes 15 seconds)

In total it took 33 seconds (better option than 5 parallels because the server only has 4 vCPU)
Please ensure your pull request adheres to the following guidelines:

[x] For first time contributors, read Submitting a pull request
[x] All code is covered by unit and/or runtime tests where feasible.
[x] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[x] If your commit description contains a Fixes: <commit-id> tag, then
please add the commit author[s] as reviewer[s] to this issue.
[x] All commits are signed off. See the section Developer’s Certificate of Origin
[x] Provide a title or release-note blurb suitable for the release notes.
[x] Are you a user of Cilium? Please add yourself to the Users doc
[x] Thanks for contributing!

Fixes: #issue-number

/test

@thorn3r in github action integration tests, i saw a problem "github.com/cilium/cilium/operator/pkg/ciliumidentity". i don't think it's related to my feature.

LGTM, thanks for the contribution.


net/http: Is this a bug? Net/http is used to create an HTTP client to send a request. Instead of sending FIN packets, RST and ACK are sent when waving four times

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

set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Administrator\AppData\Local\go-build
set GOENV=C:\Users\Administrator\AppData\Roaming\go\env
set GOEXE=
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\Administrator\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=linux
set GOPATH=C:\Users\Administrator\go
set GOPRIVATE=
set GOPROXY=https://goproxy.cn,direct
set GOROOT=D:\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=D:\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.18
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=0
set GOMOD=E:\Project\test\test_httpclient\go.mod
set GOWORK=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-fPIC -m64 -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\ADMINI~1\AppData\Local\Temp\go-build3528424264=/tmp/go-build -gno-record-gcc-switches

Does this issue reproduce with the latest release?
YES
What operating system and processor architecture are you using (go env)?
centos  amdx64
What did you do?

1.I used the following code to create an HTTP client, send a get request, and then capture packets on the centos server.

func main() {
	resp, err := http.Get("http://<IP_ADDRESS>:20171/api/v1/portal/news?newsType=10&page=1&limit=50")
	if err != nil {
		fmt.Println(err)
		return
	}
	body, err := ioutil.ReadAll(resp.Body)
	fmt.Println(string(body))
	fmt.Println(resp.StatusCode)
	if resp.StatusCode == 200 {
		fmt.Println("ok")
	}
	_ = resp.Body.Close()
}

2.centos server capture packets  as  follows:

19:48:38.422375 IP ..8598 > VM-0-13-centos.20171: Flags [S], seq<PHONE_NUMBER>, win 64240, options [mss 1412,nop,wscale 8,nop,nop,sackOK], length 0
19:48:38.422510 IP VM-0-13-centos.20171 > ..8598: Flags [S.], seq 314920111, ack<PHONE_NUMBER>, win 29200, options [mss 1460,nop,nop,sackOK,nop,wscale 9], length 0
19:48:38.454949 IP ..8598 > VM-0-13-centos.20171: Flags [.], ack 1, win 512, length 0
19:48:38.455966 IP ..8598 > VM-0-13-centos.20171: Flags [P.], seq 1:180, ack 1, win 512, length 179
19:48:38.456017 IP VM-0-13-centos.20171 > ..8598: Flags [.], ack 180, win 60, length 0
19:48:38.456783 IP VM-0-13-centos.20171 > ..8598: Flags [P.], seq 1:764, ack 180, win 60, length 763

#  NOTICE next  row，Instead of sending fin, HTTP client  sends RST and ACK packets

19:48:38.500583 IP ..8598 > VM-0-13-centos.20171: Flags [R.], seq 180, ack 764, win 0, length 0

What did you expect to see?

1.I want to see packets sent out like postman

tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes
19:47:20.999654 IP ..8542 > VM-0-13-centos.20171: Flags [S], seq 117586486, win 64240, options [mss 1412,nop,wscale 8,nop,nop,sackOK], length 0
19:47:20.999768 IP VM-0-13-centos.20171 > ..8542: Flags [S.], seq<PHONE_NUMBER>, ack 117586487, win 29200, options [mss 1460,nop,nop,sackOK,nop,wscale 9], length 0
19:47:21.038163 IP ..8542 > VM-0-13-centos.20171: Flags [.], ack 1, win 512, length 0
19:47:21.039984 IP ..8542 > VM-0-13-centos.20171: Flags [P.], seq 1:1057, ack 1, win 512, length 1056
19:47:21.040044 IP VM-0-13-centos.20171 > ..8542: Flags [.], ack 1057, win 62, length 0
19:47:21.040933 IP VM-0-13-centos.20171 > ..8542: Flags [P.], seq 1:764, ack 1057, win 62, length 763

#NOTICE ,this  is  postman  send data  package,  it  send  FIN

19:47:21.091855 IP ..8542 > VM-0-13-centos.20171: Flags [F.], seq 1057, ack 764, win 509, length 0
19:47:21.091999 IP VM-0-13-centos.20171 > ..8542: Flags [F.], seq 764, ack 1058, win 62, length 0
19:47:21.131111 IP ..8542 > VM-0-13-centos.20171: Flags [.], ack 765, win 509, length 0

What I don't understand
Is it golang intention that the HTTP client created by net/http  did not send fin when waving four times? Or what?
I want to get a brief answer

Unlike many projects, the Go project does not use GitHub Issues for general discussion or asking questions. GitHub Issues are used for tracking bugs and proposals only.
For questions please refer to https://github.com/golang/go/wiki/Questions


Enhancement: Return types and general clean up

This PR adds return types to a lot of functions. Functions that could also return null/ other types of responses haven't been updated. The Immutable trait has also been deleted since it wasn't implemented anywhere.
Added or removed whitespace between the <?php tag and the namespace to make it more consistent. And added a php cs rule to enforce that.

@BackEndTea
This needs a good rebase after all of your other outstanding PRs have been merged!

@localheinz I'll get to that once @chartjes has finished most PR's.


Add Polish translation

Added pl

Fantastic, I'll let you know which version this is published.

This is now available from version 4.9.0.


Not for merge, work in progress - testCatalogItemIdInReferencedItems

For testCatalogItemIdInReferencedItems, work in progress.
Current status, updates BrooklynObject and BrooklynObjectSpec to support nested catalogItemIds. This lets testCatalogItemIdInReferencedItems work in its modified form, i.e. it correctly identifies the nested items structure of outer/inner, but there is still plenty to do as noted below. The unit tests of brooklyn-server all work with this change in place, but will have to think about how to get good enough test coverage in place for this when remaining changes are done.
TODO:

doesn't include changes to persistence to allow the nested item ids to be persisted and retrieved during rebind
Need to review what changes may be needed to EntityTransientCopyInternal.
Looks like catalogItemIdIfNotNull can be removed.

Things to review
Everything, really; but some things I made a note of particularly

review places where setCatalogItemIdIfNotNull has been replaced with nestCatalogItemIds and see if they make sense from a sanity viewpoint
review use of setCatalogItemIds()

Whoops not in this repo!

Re-opening with fixed comment/title, just for review.


login issues

what is default username & password
i run docker image and everything starts ok, but cant login

It sounds like you didn't run koel:init.

On the first start (after an upgrade or initial installation), the database needs to be migrated. Run koel init with docker exec in the koel runtime container:
docker exec -it <container name here> php artisan koel:init


NotFoundHttpException in api request and Illegal offset type in isset or empty in route:list command

Hi I have recently read about tenancy. Great work team.
I have a application with Angular on front end and want use tenancy, so using the api route.
For the time being I am trying to use tenancy with Path Identification method. following the https://tenancyforlaravel.com/docs/v3/tenant-identification this documentation. added the same sample route and when I try to hit the link in Post man 'localhost:8000/api/test1' then the error 'Symfony\Component\HttpKernel\Exception\NotFoundHttpException'
route not found error raised. Then I tried to check how route is listed but route:list command, it raised an error like below
ErrorException    Illegal offset type in isset or empty   at vendor/laravel/framework/src/Illuminate/Routing/Router.php:1267     1263▕      1264▕         foreach ($middleware as $value) {     1265▕             $key = \is_object($value) ? \spl_object_id($value) : $value;     1266▕    ➜ 1267▕             if (! isset($seen[$key])) {     1268▕                 $seen[$key] = true;     1269▕                 $result[] = $value;     1270▕             }     1271▕         }
My current route tenent file is
`<?php
declare(strict_types=1);
use Illuminate\Support\Facades\Route;
use Stancl\Tenancy\Middleware\InitializeTenancyByDomain;
use Stancl\Tenancy\Middleware\PreventAccessFromCentralDomains;
Route::middleware([
'web',
InitializeTenancyByDomain::class,
PreventAccessFromCentralDomains::class,
])->group(function () {
Route::get('/', function () {
return 'This is your multi-tenant application. The id of the current tenant is ' . tenant('id');
});
});
Route::middleware([
'prefix' => '/{tenant}',
'middleware' => [InitializeTenancyByPath::class],
])->group(function () {
Route::get('/', function () {
return 'This is your multi-tenant application. The id of the current tenant is ' . tenant('id');
});
});
`
And my current RouteServiceProvider.php
`<?php
namespace App\Providers;
use Illuminate\Cache\RateLimiting\Limit;
use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\RateLimiter;
use Illuminate\Support\Facades\Route;
class RouteServiceProvider extends ServiceProvider
{
public const HOME = '/home';
/**
 * Define your route model bindings, pattern filters, etc.
 *
 * @return void
 */
public function boot()
{
    $this->configureRateLimiting();
    $this->mapWebRoutes();
    $this->mapApiRoutes();
}

/**
 * Configure the rate limiters for the application.
 *
 * @return void
 */
protected function configureRateLimiting()
{
    RateLimiter::for('api', function (Request $request) {
        return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip());
    });
}

protected function mapWebRoutes()
{
    foreach ($this->centralDomains() as $domain) {
        Route::middleware('web')
            ->domain($domain)
            ->namespace($this->namespace)
            ->group(base_path('routes/web.php'));
    }
}

protected function mapApiRoutes()
{
    foreach ($this->centralDomains() as $domain) {
        Route::prefix('api')
            ->domain($domain)
            ->middleware('api')
            ->namespace($this->namespace)
            ->group(base_path('routes/api.php'));
    }
}

protected function centralDomains(): array
{
    return config('tenancy.central_domains');
}

}
`
Can you please where is I am wrong?

Please use the correct channels for support questions.

post the same in discussion is fine right?


added FAQ in the nav bar

Related Issue
added FAQ in the nav bar
Fixes:  #1924
Description
added FAQ in the nav bar

Type of PR

[ ] Bug fix
[x ] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
before

After

Checklist:

[x ] I have made this change from my own.
[ ] I have taken help from some online resources.
[x ] My code follows the style guidelines of this project.
[x ] I have performed a self-review of my own code.
[x ] I have commented my code, particularly in hard-to-understand areas.
[x ] I have made corresponding changes to the documentation.
[x ] My changes generate no new warnings.
[x ] I have tested the changes thoroughly before submitting this pull request.
[x ] I have provided relevant issue numbers and screenshots after making the changes.

@anuragverma108 now you can see
i have added before and after screen shots
and pulled before making changes


Ensure we only process true Arrays and Objects - This fixes keys with Date values

Fixes https://github.com/rhalff/dot-object/issues/15 and extended current test to include testing Date formats.

Thanks, seems one of the builds is failing, however if you update the dependencies the error goes away.
I use https://www.npmjs.com/package/npm-check-updates to do this.
ncu -a && npm update
Then just also add the updated package.json to the pull request.

Nevermind, I'll do that :)

No problem, thanks for solving the build process.

Pushed a new released with your changes, thanks for fixing it.


remove optimum-intel commit limit

Type of Change
feature or bug fix or documentation or others
API changed or not
Description
detail description
JIRA ticket: xxx
Expected Behavior & Potential Risk
the expected behavior that triggered by this PR
How has this PR been tested?
how to reproduce the test (including hardware information)
Dependency Change?
any library dependency introduced or removed

This PR is to fix baseline, need to merge


Secondary devices

Feature description
It would be great to use the cwa also on secondary devices like kind of keychains or wristbands, etc...
Problem and motivation
Children do not carry their phone the whole day and so they could not use the app correctly.

I find this idea very good. I am carrying my smartwatch much more frequently than my phone, especially since I am able to pay with it.

Yes, I agree with this feature request.

That’s a good point. In #37 , there is also some more discussion about the implications of that. Since rhis is a duplicate, I‘ll close it but invite you to upvote the existing issue!


Avatar -> blank pop up is displayed if user select 'jpg' file without preview

Open FP web app and login using valid email/password
navigate to user profile and click on camera icon to upload a avatar
select some random image with no preview

Issue: You will observe that the pop up to select the picture is BLANK.
Refer below screenshot and GIF.

Please note this issue exist in PROD too. Thanks.

Hi @rabbi08,

I have been able to reproduce this problem locally. I believe the issue only happens on a larger image. I will add the fix soon