.asar not adding roles

i added the bot new to a testserver to try and set her up once befor going in for real but i keep having the problem that she doenst react if i try to add a role with .asar as she doenst respond to it

i keep having the feeling that i have missed something, but the roles got full rights in all so i dont know what im missing

Make sure that Nadeko's highest role is higher than any role you want Nadeko to interact with as well as Nadeko's role itself has enough permissions to do it so. Just give it admin since it always works out.
A quote from discord server.

The role need to exist first before making it self-assignable


chore: moving dev deps to dev

What does this PR do?
Some deps are in the dev dependencies when they should not
Screenshot / video of UI

What issues does this PR fix or reference?

How to test this PR?

LGTM, i wonder why we never face any issue

in fact as we're using a bundler (vite) at the end there is mostly one .js produced embedding the libs


Weak network circumstances, the connection is not released

I used the latest version of netty-socket.io, when my webim client was on connection, I pulled out the cable, but the server did not release the connection. How could I make it released? Thank you very much!

but the server did not release the connection

All connections should be released automatically then ping timeout for each connection has reached. pingTimeout = configuration.getPingTimeout() + configuration.getPingInterval()

I had read the source code, and i know the setting. But it is useful only when the net is on connection. If you mad it dis-connected suddenly, the TCP level hasn't got it yet.
What i use is the latest virsion of client socket.io-1.4.4. js.
You can have a try in my way: make the net disconnected or pull  out the cable when it is on connection，then you will find that it does't release the connection.
Thanks.

ok, i'll try it later

For example, 5674 is my server port,The client is connected for a long time, It's not released.

@ChinaSimon Can't reproduce it. You have an ESTABLISHED state for all connections. It's strange because it's hard to have such state if client has already gone. State should be TIME_WAIT.

@mrniko I also have this problem.server cann`t relaese connections. I use 1.7.10 version of netty-socketio,Thank you very much!

@ChinaSimon are you solve this problem?

I have the same issue using socket.io.js-2.3.0 and netty-socketio-1.7.18. When the connection falls to polling it opens a lot of sockets and they keep opened (ESTABLISHED) until I close the browser.


Activation email with JWT Token as the token_generator

When using JWT Tokens with djoser, I can use it to register and login as expected. However, when using activation emails, the token_generator is set to default_token_generator from django.contrib.auth.tokens.
It seems that after getting an activation url, the Token and UID from there is only good enough to set the user to "is_active", but doesn't have enough information there to continue the login process and automatically log the user in.
Is that the case?

Yes that is the case. It would be viewed as a slightly greater security risk to provide a valid login token in that way, I believe.

Hi @n3rdftw!
As @mcgeeco said this is exactly the case. In activation link itself or even after following this link, there should be no valid login token because somebody could steal this link and gain access to the account without providing credentials.
However if you really need to have this option you can override ActivationView class to return login token in response once activation link is validated successfully.


Revert " changed background of home page"

@prichoms  please work on it again as mentioned in the comment.
Thanks!

Background image changed.


RadzenDropDown Not Automatically Focus on SearchBox When Opening DropDown

Describe the bug
RadzenDropDown component works nicely, except for not focusing on the search box when opening the dropdown. It works in the demo page, but not works on my device with multi tests.
To Reproduce
Steps to reproduce the behavior:

Add Radzen to a new VS hosted web assembly template project
Check it out

Expected behavior
Focus on Searchbox automatically when opening dropdown.
Desktop (please complete the following information):

OS: Windows 10 64Bit
Browser Chrome 89.0.4389.90
Visual Studio 16.9.2 community
.Net 5
Web Assembly Hosted model of VS template project
Radzen.Blazor 3.1.7

Hey @fericode,
Indeed it works normally on our demo. You can attach the source code to debug why it's not working for you.

Hi again Vladimir
Thanks for the reply. I get the source code and from the first look, I suspected the issue cause is Blazor Server. I created the same VS Blazor template project as I described above, with the exact same config, but this time I chose Blazor Server instead of Blazor Web Assembly and it worked in my machine like the source code which is in Blazor Server too.
I think the issue would happen only in Web Assembly mode. Can you check it out, please?

This issues still seems to happen in the latest release when running under Blazor Web Assembly.  It does not happen when running under Blazor Server.  Is there a reason this issue was closed?

Unfortunately, this issue still exists, and because I do not have the time and maybe the knowledge to fix the issue and the owner relied on me to fix it (I believe it was the reason to close the issue!), I use another package for my dropdowns in Blazor WebAssembly.
Thanks


Feat/v3

Codecov Report
Attention: 2 lines in your changes are missing coverage. Please review.

Comparison is base (0aa72ac) 100.00% compared to head (c26693f) 99.02%.

Files
Patch %
Lines

src/ServiceModel.php
97.80%
2 Missing :warning:

Additional details and impacted files
@@              Coverage Diff              @@
##                main      #66      +/-   ##
=============================================
- Coverage     100.00%   99.02%   -0.98%
- Complexity        93       95       +2
=============================================
  Files             11        9       -2
  Lines            216      206      -10
=============================================
- Hits             216      204      -12
- Misses             0        2       +2

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


TSC does remove comments even when removeComments to false

TypeScript Version:  2.4.0
Code
var a = /*#__PURE__*/(function () { })()

Expected behavior:
var a = /*#__PURE__*/(function () { })();

Actual behavior:
var a = (function () { })();

If I wrote the comment above the declaration, it works, but I need that comment because is going to help me with Uglify to know that this is a pure function with no side-effects.

You mean does remove comments, correct?
The compiler does seem to erase comments in some surprising ways.

This sort of seem related to #1665 in that the compiler will erase comments where it thinks the comment is related to some code it is not emitting, but obviously it is getting a but over active in some positions.

You're right, I edited my question. It's erasing the comments as you mention.
Ohh, I was afraid it was a bug, thanks for pointing that issue.

As per #3844 using /*! should work. But it doesn't work either.
this.form['additionalName'].customValidationMessage = /*! i18nextract */ 'Some message';

while if the comment is moved to another line, it works.
this.form['additionalName'].customValidationMessage =
                /*! i18nextract */ 'Some message';

As per @yuit it was fixed, but it seems it is not fixed for all cases.

looks like a duplicate of https://github.com/Microsoft/TypeScript/issues/17606

Automatically closing this issue for housekeeping purposes. The issue labels indicate that it is unactionable at the moment or has already been addressed.

I think I found one of the "mysterious ways" TSC would ignore the removeComments: false, see this example:
http://www.typescriptlang.org/play/#src=let stuff %3D [
    1%2C
    2%2C
    %2F%2F 3%2C
    %2F%2F 4
]
In case the link expires, here is the code:
let stuff = [
    1,
    2,
    // 3,
    // 4
]

The commented out lines 3 and 4 will be removed. But if one removes the trailing comma next to 2, the two lines will be preserved.
Not sure if this is a feature or bug -__-

For React with typescript user, adding 'removeComments': false to ts-loader options is working rather than adding 'removeComments': false to tsconfig.json.


error

Traceback (most recent call last):
File "/opt/homebrew/bin/aspeak", line 8, in
sys.exit(main())
File "/opt/homebrew/lib/python3.9/site-packages/aspeak/cli/main.py", line 138, in main
speech = create_speech(args.locale, args.voice, audio_format)
File "/opt/homebrew/lib/python3.9/site-packages/aspeak/api/api.py", line 138, in init
super().init(locale, voice, audio_format, output)
File "/opt/homebrew/lib/python3.9/site-packages/aspeak/api/api.py", line 43, in init
self._config()
File "/opt/homebrew/lib/python3.9/site-packages/aspeak/api/api.py", line 51, in _config
assert token is not None
AssertionError

我也遇到同樣的問題，直接發音可以，但是無法輸出到音樂檔
例如：
aspeak -t "你好，世界！" -l zh-CN -o test.wav
這樣就會出現同樣的錯誤了

Sometimes it is just a result of poor internet connection. v3 still works for me.
I have just released v4, which is a rust-rewritten version of aspeak.


The MIT License (MIT)

Copyright (c) 2016 Katrina Owen<EMAIL_ADDRESS>Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
 IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Ooops. Overzealous issue creation here. Ignore this.


Implement Ref::try_into_{ref,mut}

Wip. Currently a borrow-checker puzzle.

Wip. Currently a borrow-checker puzzle.

I believe this is impossible to fix w/o adding bounds. IntoByteSlice doesn't imply Copy, and so self.0.into() irrevocably moves self.0. You'd need to add a Copy bound or some way of reversing the into() operation (ie, to reconstruct the value stored in self.0 given the error).

Perhaps there's a way forward doing &*self.0 instead? We only need to call is_bit_valid, here.

Unfortunately that wouldn't live long enough. It would have the lifetime of the stack frame, but we need to return from the stack frame

Unfortunately that wouldn't live long enough. It would have the lifetime of the stack frame, but we need to return from the stack frame

Would you like me to provide that hat you'll eat, or will you be providing your own? ;-)


Does not work on git 2.8.1 + Ubuntu

The simplest git commit example on the docs just fails showing git's help message.
This,
gulp.task('commit', function(){
  return gulp.src('./*')
    .pipe(git.commit('initial commit'));
});

Ends up with:
[12:37:33] Starting 'commit'...
[12:37:33] 'commit' errored after 27 ms
[12:37:33] Error: Command failed: /bin/sh -c git commit -m "initial commit"   'package.json'

    at ChildProcess.exithandler (child_process.js:213:12)
    at emitTwo (events.js:87:13)
    at ChildProcess.emit (events.js:172:7)
    at maybeClose (internal/child_process.js:827:16)
    at Socket.<anonymous> (internal/child_process.js:319:11)
    at emitOne (events.js:77:13)
    at Socket.emit (events.js:169:7)
    at Pipe._onclose (net.js:475:12)

I can see that the arguments sent to /bin/sh are not quoted. In fact, running the command manually fails, indeed.
$  /bin/sh -c git commit -m "initial commit"   'package.json'
usage: git [--version] [--help] [-C <path>] [-c name=value]
           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
           [-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
           <command> [<args>]
...

$ echo $?
1

But if you properly quote the command, it works as expected:
$ /bin/sh -c "git commit -m 'initial commit'   'package.json'"
On branch develop
Changes not staged for commit:
	modified:   gulpfile.js

no changes added to commit

@stevelacy Tested on,

git 1.9.1 on Ubuntu 14.04
git 2.8.1 on Mint 17.3

Same result.


feat: enhance stream density function

Now the increment of pipeline numbers can be larger if the system is high power and performed well:
The increment number is dynamically adjusted based the actual average FPS per stream and the target FPS.
The searching policy is greedy to attempt to get to the maximum pipelines first and then decrement by 1 at a time
to find the maximum number of pipelines reaching the target FPS.
Closes: #51
The PR review is to check for sustainability and correctness.  Sustainability is actually more business critical as correctness is largely tested into the code over time.   Its useful to keep in mind that SW often outlives the HW it was written for and engineers move from job to job so it is critical that code developed for Intel be supportable across many years.  It is up to the submitter and reviewer to look at the code from a perspective of what if we have to debug this 3 years from now after the author is no longer available and defect databases have been lost.  Yes, that happens all the time when we are working with time scales of more than 2 years.  When reviewing your code it is important to look at it from this perspective.
Author Mandatory (to be filled by PR Author/Submitter)

Developer who submits the Pull Request for merge is required to mark the checklist below as applicable for the PR changes submitted.
Those checklist items which are not marked are considered as not applicable for the PR change.
Items marked with an asterisk suffix are mandatory items to check and if not marked will be treated as non-compliant pull requests by the developers for Inner Source Development Model (ISDM) compliance

PULL DESCRIPTION
Now the increment of pipeline numbers can be larger if the system is high power and performed well:
The increment number is dynamically adjusted based the actual average FPS per stream and the target FPS.
The searching policy is greedy to attempt to get to the maximum pipelines first and then decrement by 1 at a time
to find the maximum number of pipelines reaching the target FPS.
REFERENCES
Reference URL for issue tracking (Github): <URL to be filled>

[x] Added label to the Pull Request for easier discoverability and search

CODE MAINTAINABILITY

[x] Commit Message meets guidelines as indicated in the URL*

https://github.com/edgexfoundry/edgex-go/blob/main/.github/Contributing.md

[x] Every commit is a single defect fix and does not mix feature addition or changes*
[ ] Added required new tests relevant to the changes

[ ] PR contains URL links to functional tests executed with the new tests

[ ] Updated Documentation as relevant to the changes
[ ] Updated Build steps/commands changes as relevant
[ ] PR change contains code related to security
[ ] PR introduces changes that breaks compatibility with other modules (If YES, please provide description)
[ ] Specific instructions or information for code reviewers (If any):

Maintainer Mandatory (to be filled by PR Reviewer/Approving Maintainer)

Maintainer who approve the Pull Request for merge are required to mark the checklist below as appropriate for the PR change reviewed as key proof of attestation indicating reasons for merge.
Those checklist items which are not marked are considered as not applicable for the PR change.
Items marked with an asterisk suffix are mandatory items to check.

QUALITY CHECKS

[ ] Architectural and Design Fit
[ ] Quality of code (At least one should be checked as applicable)*

[ ] Commit Message meets guidelines
[ ] PR changes adhere to industry practices and standards
[ ] Adopted domain specific coding standards (SBL Coding Standards)
[ ] Error and exception code paths implemented correctly
[ ] Code reviewed for domain or language specific anti-patterns
[ ] Code is adequately commented
[ ] Code copyright is correct
[ ] Tracing output are minimized and logic
[ ] Confusing logic is explained in comments
[ ] Commit comment can be used to design a new test case for the changes

[ ] Test coverage shows adequate coverage with required CI functional tests pass on all supported platforms*
[ ] Static code scan report shows zero critical issues*

CODE REVIEW IMPACT

Summary of Defects Detected in Code Review: <%P1xx,P2xx,P3xx,P4xx%>
Note P1/P2/P3/P4 denotes severity of defects found (Showstopper/High/Medium/Low) and xx denotes number of defects found

Code must act as a teacher for future developers

will change the way on handling the pipelines when we are doing decrementing


feat(ansi): add Scanner for splitting ANSI encoded strings.

Hi,
Thought this might be helpful for manipulating styled strings without getting into the details of the Parser and all the encodings of styled strings. It could be very useful in other modules like lipgloss or when using it.
Here are a few samples of functions rewritten using this..
// Strip removes ANSI escape codes from a string.
func Strip(s string) string {
	var (
		buf bytes.Buffer // buffer for collecting printable characters
	)
	scanner := NewScanner(s)
	for !scanner.EOF() {
		tk, txt := scanner.Scan()
		switch tk {
		case TextToken:
			buf.WriteString(txt)
		}
	}
	return buf.String()
}

// Truncate truncates a string to a given length, adding a tail to the
// end if the string is longer than the given length.
// This function is aware of ANSI escape codes and will not break them, and
// accounts for wide-characters (such as East Asians and emojis).
func Truncate1(s string, length int, tail string) string {
	var (
		ignoring  bool
		sb        strings.Builder
		tailWidth = StringWidth(tail)
		width     = 0
	)
	scanner := NewScanner(s)
	for !scanner.EOF() {
		tk, txt := scanner.Scan()
		switch tk {
		case TextToken:
			if ignoring {
				continue
			}
			if txWidth := scanner.Width(); width+txWidth <= length {
				width += txWidth
				sb.WriteString(txt)
				continue
			}
			// text is too big and needs to be truncated
			// read characters until out of space
			// append with tail if there is room
			g := uniseg.NewGraphemes(txt)
			for g.Next() && width+g.Width() <= length-tailWidth {
				sb.WriteString(g.Str())
				width += g.Width()
			}
			if width+tailWidth <= length {
				sb.WriteString(tail)
			}
			ignoring = true

		default:
			sb.WriteString(txt)
		}
	}
	return sb.String()
}

I was trying to do something like transpose a line to a column.
\x1b[31mHi\x1b[0m
to
\x1b[31mH\x1b[0m
\x1b[31mi\x1b[0m

Here is a sample function to do that..
// Transpose breaks a line into individual lines for each rune preserving ANSI
// escape codes which are distributed to each new line.
//
// todo minimize the ANSI codes. Currently if there are multiple codes they are
// just concatenated, which may lead to redundancy in some cases.
func Transpose(s string) string {
	var (
		prefix  strings.Builder
		lines   = make([]strings.Builder, 0, len(s))
		scanner = NewScanner(s, ScanRunes)
	)

	for !scanner.EOF() {
		tk, txt := scanner.Scan()
		switch tk {
		case ControlToken:
			prefix.WriteString(txt)
			for i := range lines {
				lines[i].WriteString(txt)
			}
		case RuneToken:
			n := len(lines)
			lines = append(lines, strings.Builder{})
			lines[n].WriteString(prefix.String())
			lines[n].WriteString(txt)
		}
	}
	var sb strings.Builder
	for i, l := range lines {
		if i > 0 {
			sb.WriteString("\n")
		}
		sb.WriteString(l.String())
	}
	return sb.String()
}

Let me know if you are interested and if you think it still needs some changes..
Thanks.
Tom

Hi @pachecot, this looks cool ngl. I've thought about a similar idea before but performance was more important and thus that led us to implement both ansi.Parser and ansi.DecodeSequence.
In terms of the PR, I think this adds a lot of code surface to the ansi package that already exists. You can already "scan" an input using either ansi.Parser and/or ansi.DecodeSequence. The thing i would argue is adding a bufio.SplitFunc implementation that wraps ansi.DecodeSequence and sub sequently, uses bufio.Scanner to scan for sequences. The ansi package define a "sequence" as one of the following:

Escape sequences i.e. the ones that start with CSI, OSC, DCS, ESC, etc for example SGR style sequences \x1b[31m
Control codes in the unicode spaces C0 and C1, this includes things like newlines \n, carriage returns \r, and tabs \t
Grapheme clusters and UTF-8 sequences which includes the ASCII character set, UTF-8 encoded characters, and multi-codepoint characters such as wide emojis and CJK wide characters.

The cellbuf package has a good example of using ansi.DecodeSequence that you can check out.
Another thing to keep in mind, is that the purpose behind the ansi package is to provide a low-level performant ANSI parser and helpers, and using a scanner can introduce unnecessary memory allocations and cpu cycles.
Let me know what you think about the bufio.ScanFunc idea and if you're interested in working on something like that 🙂

Hi @aymanbagabas thanks.
Still learning this library, will need to play with it some more.
The buffio.Scanner is for tokens, there is no additional information, how would you distinguish the sequence type (cluster, control, or escape)? Not sure how to make that work nicely.

The buffio.Scanner is for tokens, there is no additional information, how would you distinguish the sequence type (cluster, control, or escape)? Not sure how to make that work nicely.

That's a fair point. We can use the ansi.HasCsiPrefix and others to distinguish the sequence/token types. It would be nice to have a bufio.SplitFunc implementation that wraps ansi.DecodeSequence to be used with bufio.Scanner. I think it makes sense to have our own ansi.Scanner type that conforms to a similar interface.
func NewScanner(r io.Reader) *Scanner

// bufio.Scanner scanner interface to conform to
type Scanner interface {
  Bytes() []byte
  Text() string
  Err() error
  Scan() bool
}

// extra functions we need for ansi.Scanner
func (s *Scanner) Width() int // returns the cell width of the last scanned token
func (s *Scanner) Len() int // returns the bytes length of the last scanned token

// bufio.SplitFunc implementation to be used with bufio.Scanner
func SplitFunc(data []byte, atEOF bool) (advance int, token []byte, err error)

I'm a little hesitant about introducing a new type just to distinguish the sequence type. I want to keep using primitive types everywhere possible. Let me know if you have a good solution for this.

Removed the Token Type and simplified it some to be more inline with buffio.Scanner
type Scanner interface {
  Bytes() []byte              // returns last token
  EOF() bool
  Error() error
  IsEscape() bool             // returns the if the last scanned token is a control/escape
  Len() int                   // returns the bytes length of the last scanned token
  Scan() bool
  Split(f SplitFunc)          // set the split function
  Text() string               // returns last token as a string
  Token() ([]byte, int, bool) // returns token, width, escape (same as s.Bytes(), s.Width(), s.IsEscape())
  Width() int                 // returns the cell width of the last scanned token
}

type SplitFunc func(data []byte, width int, atEOF bool) (advance int, token []byte, err error)

I was thinking the width in the split function was needed. But, maybe its not needed anymore without the TokenState.
Still just using the parser for this and not ansi.DecodeSequence.  Currently this is not inspecting the escape sequences, so it doesn't seem necessary.
Is there something you would want to do with the escape sequences here? I was looking at this as ansi.Split function to safely get at the text and separate the escape codes.

Hey @pachecot, I wonder how's the performance of Scanner compared to Parser and DecodeSequence?


Loxone MotionSensor and ContactSensor do not show up.

Hallo everybody
The plugin works fine for me and after renaming my Humidity- and Temperatur-Sensors I can see all of them in my Home App.
I tried the same with my Loxone Motion Sensor naming them e.g. „MotionSensor Kitchen”. However, they do not show up in my Home App.
I have the same issue with my window contacts which I renamed to ContactSensor ... but they also don‘t appear in my Home App.
Dose anybody has an idea what I’m doing wrong?
Thanks
Theo
Sent with GitHawk

I think everything what has to be shown at the home kid, it must ne shown at the Visu.

Did you solve this issue?
I cannot see these sensors in my home either 👎
The temperature is also not showing up

No I did not solve it ... but I had also no time during the last months to look into it ... that’s why I was hoping someone could provide me a quick solution.
I tried to play with the naming of the sensors in Loxone but in my case it did not make any difference. I have not yet looked into the source code.
Sent from my iPhone

On Oct 26, 2019, at 10:33, elmocito<EMAIL_ADDRESS>wrote:

Did you solve this issue?
I cannot see these sensors in my home either 👎
The temperature is also not showing up
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Not getting any transaction nor Blocks

So i am trying to get information from a trusted node that i am running on a server, but i cant seen to be able to get any blocks or even connect, and I doing something wrong?
using System;
using System.IO;
using System.Reflection;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using NBitcoin;
using NBitcoin.Protocol;
using NBitcoin.Protocol.Behaviors;
using NBitcoin.SPV;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace TestingBlocksExplorer
{
[TestClass]
public class UnitTest1
{
static Network network = Network.Main;
	public static string ChainFile => Path.Combine(Directory.GetCurrentDirectory(), ChainName());

	static string ChainName()
	{
		if (network == Network.Main)
			return "chainmain.data";
		return "chaintest.data";
	}

	[TestMethod]
	public void TestMethod1()
	{
		// parse address from command line
		var addr = BitcoinAddress.Create("1JmjsGZrKdRTiodeLy85kU8zPK1WsqTKc");

		// use local trusted node
		NetworkAddress peer = new NetworkAddress(IPAddress.Parse("<IP_ADDRESS>"), network == Network.Main ? 8333 : 18333); ;

		// initial scan location
		var scanLocation = new BlockLocator();
		scanLocation.Blocks.Add(network.GetGenesis().GetHash());
		var skipBefore = DateTimeOffset.MinValue;
		//skipBefore = DateTimeOffset.Now.AddMonths(-1);

		// load chain
		var chain = new ConcurrentChain(network);
		if (File.Exists(ChainFile))
			chain.Load(File.ReadAllBytes(ChainFile));

		// connect node
		ConnectNode(addr, peer, chain, scanLocation, skipBefore);

		int chainHeight = 0;
		while (true)
		{

			if (chain.Height != chainHeight)
			{
				chainHeight = chain.Height;
				Console.WriteLine("Chain height: {0}", chain.Height);
				using (var fs = File.Open(ChainFile, FileMode.Create))
					chain.WriteTo(fs);
			}
			System.Threading.Thread.Sleep(5000);
		}
	}

	private static void ConnectNode(BitcoinAddress addr, NetworkAddress peer, ConcurrentChain chain, BlockLocator scanLocation, DateTimeOffset skipBefore)
	{
		var script = addr.ScriptPubKey; // standard "pay to pubkey hash" script

		var parameters = new NodeConnectionParameters();

		// ping pong
		parameters.TemplateBehaviors.FindOrCreate<PingPongBehavior>();

		// chain behavior keep chain in sync
		parameters.TemplateBehaviors.Add(new ChainBehavior(chain));

		// tracker behavior tracks our address
		parameters.TemplateBehaviors.Add(new TrackerBehavior(new Tracker(), chain));

		var addressManager = new AddressManager();
		addressManager.Add(peer, IPAddress.Loopback);

		parameters.TemplateBehaviors.Add(new AddressManagerBehavior(addressManager));
		var group = new NodesGroup(network, parameters);
		group.AllowSameGroup = true;
		group.MaximumNodeConnection = 1;
		group.Requirements.SupportSPV = true;
		group.Connect();
		group.ConnectedNodes.Added += (s, e) =>
		{
			var node = e.Node;

			node.Disconnected += n =>
			{
				var _trackerBehavior = n.Behaviors.Find<TrackerBehavior>();
				scanLocation = _trackerBehavior.CurrentProgress;
				Console.WriteLine("Node disconnected, chain height " + chain.Tip.Height + ".");
			};

			// Start tracker scanning.
			var trackerBehavior = node.Behaviors.Find<TrackerBehavior>();
			Console.WriteLine("Tracking {0}", addr);
			trackerBehavior.Tracker.Add(addr.ScriptPubKey);
			trackerBehavior.Tracker.NewOperation += (Tracker sender, Tracker.IOperation trackerOperation) =>
			{
				var walletTransaction = trackerOperation.ToWalletTransaction(chain, "default");
				Console.WriteLine("TX ID: {0}.", walletTransaction.Transaction.GetHash());
			};

			trackerBehavior.Scan(scanLocation, skipBefore);
			trackerBehavior.SendMessageAsync(new MempoolPayload());

			trackerBehavior.RefreshBloomFilter();
		};
	}
}

}
https://github.com/djpnewton/NBitcoin.SPV.TrackAddressBasic/blob/master/NBitcoin.SPV.TrackAddressBasic/Program.cs
i am using that code as a reference, I also tried to use the code you did on the SPVWallet Example, but failed big time

SPV stuff is now deprecated, do not use it.
Try var node = Node.ConnectToLocal(Network.Main); then node.Handshake();, the you can do what you want with node.

And is there a way to track addresses without using spv?

The only way I can recommend is by having your own full node, running NBXplorer and call the API.

Check https://programmingblockchain.gitbooks.io/programmingblockchain/content/wallet/ for an introduction.

if SPV is deprecated, how does your example of SPVWallet still works?

Btw, Thanks for your help.

It is based on very old code. SPV will disappear, it has too much practical problem and privacy issues.

So the best solution is to use NBXplorer, do you know if that can also run on linux servers?

@compilenewbe yes it can. It has a docker image if you need as well.


Avoid directly reading environment variables

Cargo has a snapshot of the environment in Config.env. This environment snapshot is primarily used for loading config environment variables.
However, other environment variables (like RUSTFLAGS) do not go through the snapshot. In an effort to try to have a unified location where environment variables are accessed, we would like to consider updating the codebase so that all environment variables are read through the config snapshot.
One would need to scour the codebase for calls to the std::env functions (var, var_os, vars, etc.). The scope of this is uncertain, since there may be some places where it is difficult to access the Config object. This may require some exploration to evaluate the impact.
As for the API, I would consider renaming the existing get_env to something else (like get_config_env), and then adding some public methods like get_env or get_env_os.

Hi! Can I help out with this?
I played around a bit in src/cargo and found a lot of places where this looks easy to change (Config is available or can be added without too much hassle). Also some other spots that seem harder to deal with.
If it'd be helpful, I'll open a PR with what I have so far as a start.

Oops sorry, could you reopen this? I shouldn't have said "Fixes" in my PR, as there are still several places that weren't handled by #11727.

I just opened another PR with a few call sites that I missed in #11727 but are hopefully straightforward.
After that, there are still a handful of calls to env::var, which fall into three main categories:

Before Config is constructed. This happens in src/bin/cargo/cli.rs and core::features::channel. One option is to make a dummy object (maybe called PreConfigEnv or something) that just wraps calls to env::var(_os). Maybe this would make things a little more explicit and easier to keep track of in the future, though it does add a little clutter.
Test-related stuff. There are few places where it seems like the call to env::var is being used only for tests. For example:
https://github.com/rust-lang/cargo/blob/b6c7fbeb13448dc0c6ae5d214f0968ca7befaa4f/src/cargo/core/source/source_id.rs#L416-L426
This method can't easily be made to take &Config as a parameter since it ends up getting called in the Display impl.
There's a similar thing in shell::TtyWidth, and resolver::types::ResolverProgress (though the latter is behind a #[cfg(debug_assertions)]). Not sure if the best thing here would be to try to factor these out somehow, gate them behind a #[cfg(..)], or just leave them.
Issues because Config isn't Sync + Send + 'static. There are a few places (like 2 or 3) where environment variables are read inside of a closure that has these bounds. One way to fix this could be having config.env hold a newtype struct Env(HashMap<OsString, OsString>) and have config.env() return an &Env. Env can implement get_env and get_env_os and will be Sync + Send. (As a side benefit, this might also be a cleaner way to encapsulate all of the valid UTF-8 checks that are currently done by Config.)

Thoughts on these? (I'm also fine just leaving them, since there's not too many remaining now after #11727.)

Sure, sorry, I didn't realize there were more updates.

Thanks!

Some variables read from snapshot starting from #11727 may need a double check:

The meaning of RUSTUP_HOME RUSTUP_TOOLCHAIN is not clear to me. Will user get a inconsistent view of rustc/cargo invocations because of that overridden?
__CARGO_DEFAULT_LIB_METADATA is for Rust releases, not expected to be set via config by users.
__CARGO_FIX_DIAGNOSTICS_SERVER is for internal communication, not expected to be set via config by users.
cargo fix related variables are not intended to be set via config I believe.

__CARGO_FIX_BROKEN_CODE
__CARGO_FIX_YOLO
CARGO_FIX_MAX_RETRIES (https://github.com/rust-lang/cargo/pull/5842#discussion_r206679963)
(maybe it should be __CARGO_FIX_MAX_RETRIES or just a constant?)

Internal test only can read from env directly

__CARGO_TEST_INTERNAL_ERROR
__CARGO_TESTS_ONLY_SRC_ROOT
__CARGO_TEST_CRATES_IO_URL_DO_NOT_USE_THIS
__CARGO_TEST_DISABLE_GLOBAL_KNOWN_HOST
__CARGO_PACKFILE_LIMIT
__CARGO_TEST_MAX_UNPACK_SIZE
__CARGO_TEST_MAX_UNPACK_RATIO

It seems to be fixed by #11727, #11754, and #11828. Going to close out this. If you have any update or I misunderstand the current status, please call it out and we can re-open. Thank you.


Update DG

Updated the Use cases section of developers guide.

Codecov Report

Merging #55 (46115f2) into master (6c44554) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #55   +/-   ##
=========================================
  Coverage     71.48%   71.48%
  Complexity      407      407
=========================================
  Files            73       73
  Lines          1287     1287
  Branches        130      130
=========================================
  Hits            920      920
  Misses          332      332
  Partials         35       35

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 6c44554...46115f2. Read the comment docs.


Create local authentication to connect to third party standalone applications - Enhancement

This is an enhancement request:
It would be useful to create a local authentication for third party standalone applications installed on the same desktop or mobile to be able to connect in a secure way similar to remote login.

That's exactly what local login does, sessions/create/local.


feat: remove raise that limits using --config with dicts

Description
Snakemake use through other Python scripts using its API class
>>> import snakemake
>>> snakemake.snakemake(snakefile='Snakefile', config={"this_option": "does_not_break", "test": {'this_dict':'will_break'}})

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/lpla/bitextorment/lib/python3.8/site-packages/snakemake/__init__.py", line 508, in snakemake
    config_args = unparse_config(config)
  File "/home/lpla/bitextorment/lib/python3.8/site-packages/snakemake/__init__.py", line 960, in unparse_config
    raise ValueError("config may only be a flat dict")
ValueError: config may only be a flat dict

allows setting any kind of parameters but dictionaries. The code this PR removes was triggering an exception when there is no issue in using dictionaries as a setting inside the Python dictionary given to the Snakemake class through config.
A simple test named test_dicts_in_config(), similar to the code above, is added to tests/testapi.py file to reproduce this issue. Test could be even simpler, as the Snakefile can be completely empty to reproduce the issue, but the one I wrote shows a rule using dicts through config working without the raise.
QC

[x] The PR contains a test case for the changes or the changes are already covered by an existing test case.
[x] The documentation (docs/) is updated to reflect the changes or this is not necessary (e.g. if the change does neither modify the language nor the behavior or functionalities of Snakemake).

Thanks! Actually a test is of the CLI possible. This works via the shellcmd argument of the test run function, see this example: https://github.com/snakemake/snakemake/blob/main/tests/tests.py#L267

Hi. Sorry about the initial version of the pull request. I thought we were running Snakemake through a Bash script, but it was a Python one, so we were using the Snakemake API. I updated the description and added a simple test. Let me know if this style is correct, or if I could do anything else to fix it better or cleaner.

Also, I saw you edited the title as "feat:". Isn't this a bug?

Just want to second this request. I ran into this limitation yesterday; as it is right now I'd have to choose between changing the config values I want to alter to be flat, or something janky like having a template config file in which I do string replacement. Passing a (nested) python dict is so much cleaner. Hope to see it in the next version so I can use it in production!

Actually, there is a somewhat dirty hack to make this behaviour work correctly, by specifying some valid, or a meaningless dummy "config_args" value when calling snakemake from python:
snakemake.snakemake(
  ...
  # dict with just the values to be updated, properly nested as the config expects it
  config=config_overrrides,
  # some dummy config arg, as would normally be passed on the command line via --config-args
  config_args=["dummy=0"]
  )

This is because the throwing function unparse_config is only called if there is a config specified, but no config_args, see here


Portuguese & Spanish & Japanese GTFS and GTFS-rt reference.md up & need review!

The Portuguese (Brazil) and Spanish (Latin America) translations of the reference.md files are up for both GTFS static and GTFS-realtime. If you have the ability to review or can connect with folks who can review, please do!

cc @Cristhian-HA @scmcca Are these translations still useful?

I would say yes what about you @scmcca ?

@scmcca Good question. At one point MobilityData created a Transifex account (free for OSS):
https://www.transifex.com/mobilitydata/public/
Looks like there is some work for gtfs.org and GTFS reference.
I think this issue is related to the GTFS reference link:
https://www.transifex.com/mobilitydata/gtfs-reference-translations/
Looks like there are completed Portuguese, Spanish AND Japanese translations.

Outdated. Translations in these languages are available at https://github.com/MobilityData/gtfs.org and can be updated and improved there.


Set milestone to closed issues that fixed by PRs of current milestone

Set milestone to closed issues that fixed by PRs of current milestone

gh api /repos/nushell/nushell/issues/13991/timeline | from json | where event == 'closed' | filter { $in.commit_id | is-not-empty } | get 0 | select commit_id commit_url


Updating ServiceBus extension to 5.7.0

Issue describing the changes in this PR
Updating the worker extension to use version 5.7.0 of the Functions extension.
resolves #1031
Pull request checklist

[x] My changes do not require documentation changes

[ ] Otherwise: Documentation issue linked to PR

[x] My changes should not be added to the release notes for the next release

[ ] Otherwise: I've added my notes to release_notes.md

[x] My changes do not need to be backported to a previous version

[ ] Otherwise: Backport tracked by issue/PR #issue_or_pr

[x] I have added all required tests (Unit tests, E2E tests)

/check-enforcer evaluate


Set DEBUG environment variable to automatically set verbose mode

In a few packages that are dependencies of electron-packager, you can set the DEBUG environment variable to a comma-separated list of module names that (if they have support for it) will print debug information as they're run. (A known list is in electron-packager's CONTRIBUTING document.)
Since this package has opts.verbose, it would be nice if DEBUG was found to contain electron-osx-sign, then verbose mode was automatically enabled.

@malept Sound nice. I'll go have a check on this, perhaps having a function that checks opts.verbose flag and then outputs the logs.

Move to #24


Xamarin.Forms - UWP solution breaks, because of netstandard2.0

I created a new Xamarin.Forms solution with iOS, Android and UWP projects. iOS and Android can be build in AppCenter, but the UWP project breaks, because of:
##[error]C:\Program Files\dotnet\sdk\5.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(241,5): Error NETSDK1005: Assets file 'D:\a\1\s\ArticleWorkbench\ArticleWorkbench\obj\project.assets.json' doesn't have a target for 'netstandard2.0'. Ensure that restore has run and that you have included 'netstandard2.0' in the TargetFrameworks for your project.
Locally I can build and run the application  in debug and release.
Thanks
logs_60.zip

My team is having the same problem with UWP projects.

I also encounter the same issue for the Xamarin.Forms UWP project

I am also running into this for a Xamarin.Form UWP project.

Hi, my problem is solved. 5 days ago I got a message in AppCenter, that the Nuget would be  updated to the latest version 5.8, if I save the build configuration. I did it and the buid worked better. I got a problem with too big pictures in the assets and than the build was green!!!

Hi, my problem is solved. 5 days ago I got a message in AppCenter, that the Nuget would be updated to the latest version 5.8, if I save the build configuration. I did it and the buid worked better. I got a problem with too big pictures in the assets and than the build was green!!!

I confirm that it is enough to save the build configuration and you are able to compile correctly again
Thanks!

App Center build for UWP is showing white screen after launch


For ease of use, I have provided the particle files (in the required order) which should be extracted in /rain-rendering/data/particles/ found here.

found here  This link won't work

https://drive.google.com/file/d/1Dkle1mFBUR2qKfamxoWZE88FoHmcUyzC/view?usp=sharing This link doesn't work. Thank you.

Hello, this should now be fixed. Please look back at the read me https://drive.google.com/file/d/1h3P_-g-vgJmnt7IkDlM7xjuN6MAqvCDX/view?usp=sharing

Thank you


Redirect back to original page when leaving scrum poker view

After a scrum poker session there shall be the option to navigate back to the page where you came from before starting the scrum poker session.

Solution in mind:

We are going to store the returnUrl in the session
We return to returnUrl and default to task if no returnUrl exists

Solved with c0a3873012eb851e00e92adf86d0140411c15cd2


dbt rpc's "run_sql" method can hang forever

Describe the bug
Given a snowflake environment with client_session_keepalive set to True, the run_sql RPC call will successfully run and then never finish. This manifests as the rpc poll call showing the task as still running, forever.
The process will show up in the process table and the RPC server's ps output as being active on the OS level, but it won't be actually doing anything. In particular it'll be blocking on join()ing the process.
The problem here is that the background thread that the snowflake connector starts is hanging, because dbt never calls close() on the handle.  The fix is to update dbt.adapters.base.connections.ConnectionManager.release() to always call close(), even when the connection state is "open" (currently it only calls it if the state is not "open", which seems pretty silly).
Steps To Reproduce

set up a profile with client_session_keepalive: true
run dbt rpc and point it at that profile
call run_sql with select 1 as id as the argument, or anything else you like
wait forever

Expected behavior
The API call should return pretty much immediately.
Screenshots and log output
N/A
System information
Which database are you using dbt with?

[ ] postgres
[ ] redshift
[ ] bigquery
[X] snowflake
[ ] other (specify: ____________)

The output of dbt --version:
dbt==0.17.1
The operating system you're using:
macos or linux
The output of python --version:
Any? 3.6 and 3.8 both have it.
Additional context
I was able to reproduce this behavior on macos with dbt 0.17.0, but not on Linux, so I assume it has to do with some oddity of spawn vs fork behavior.

Resolved by #2650


minor perf improvements

Codecov Report

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

@@            Coverage Diff            @@
##             master       #6   +/-   ##
=========================================
  Coverage          ?   77.11%
=========================================
  Files             ?        7
  Lines             ?      900
  Branches          ?        0
=========================================
  Hits              ?      694
  Misses            ?      206
  Partials          ?        0

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 8280dd1...8040d38. Read the comment docs.


Set sidbebar_menu_foldabe = true for better glancing experience

This is a Feature Request

What would you like to be added

Set sidbebar_menu_foldabe = true for Docsy [params.ui]
Why is this needed
Setting the sidebar_menu_foldable = ture can make a better experience for glancing the menu tree.
After setting sidebar_menu_foldable = true appearance shows like belowed:

When I'm reading chapter Kubernetes API I can also expand the menu tree for looking for next chapter I want to read.
Current appearance shows like belowed:

If I am reading chapter Kubernetes API, I can only see the menu under Kubernetes API. If I want to see other menu I must click the menu and enter a new page.

Hi @FOWind
Why should we make this change? Can you explain the benefit for readers?

For the new version, reader can only expand the menu tree for only glancing the indexes, and the old version can't do that.

After expanding the menu tree, readers can enter the deep level chapter they want to read directly without click the menu step by step.

For the old versions,  if you want to enter the deep level chapter, you should click the menu many times.

For the new version, the upper level menu is still dispalyed when enter deep level chapter, and the old version the upper level menu will disappear

I think the new version is more convenient for me.
You can try it on https://deploy-preview-31818--kubernetes-io-main-staging.netlify.app/docs/home/

/triage accepted
I think this this is explained well enough to justify merging the change.
I wonder: would it be better to introduce the new UI with the v1.24 release, rather than arbitrarily?

/area web-development

/assign

@championshuttler there is already a PR open for this.

#31818 is fixing this.

After #31818 merges, I'd like (nice to have) to see that change backported to older docs.

https://github.com/kubernetes/website/pull/31818 has merged.
Close.


AttributeError: 'IGService' object has no attribute 'subscribe'

I have installed trading_ig (0.0.22) via pip, and I am running on Ubuntu 24.04. I have downloaded sample/sample_ticker.py from the git website. When I run it I get the following error: AttributeError: 'IGService' object has no attribute 'subscribe'.
I have tried un installing trading_ig with 'pip uninstall trading_ig', checking that the code does not run at all, downloading trading_ig with 'pip install git+https://github.com/ig-python/ig-markets-api-python-library', reinstalling trading_ig and then running the coide again. I still get the same results' The full stacktrace is as follows:
INFO:trading_ig.rest:Creating new v3 session for user 'XXXXXXXXXXXXX' at 'https://demo-api.ig.com/gateway/deal'
INFO:trading_ig.rest:POST '/session', resp 200
INFO:trading_ig.streamer.manager:Consumer: Running
Traceback (most recent call last):
File "/data/stuart/Projects/Python/BackTesting/TradingPkg/Test_IG_1.py", line 35, in
main()
File "/data/stuart/Projects/Python/BackTesting/TradingPkg/Test_IG_1.py", line 23, in main
sm.start_tick_subscription(epic)
File "/data/stuart/Projects/Python/Env/lib/python3.12/site-packages/trading_ig/streamer/manager.py", line 39, in start_tick_subscription
self.service.subscribe(tick_sub)
^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'IGService' object has no attribute 'subscribe'
I have not been able to find anything else on google to help. Am I missing something here?
Regards Stuart

I have re-downloaded the code for sample_ticker.py and it now appears to be running. Don't know where I wnt wrong, but I will now close this issue.

Not sure how to actually close the issue


[feature request]yurtappdaemon need a node pool type selector

What would you like to be added:
Add selector to select node pool by its type for yurtappdaemon CRD.
Why is this needed:
When the time developing pool-coordinator feature, we found that pool-coordinator should be deploy to the node pool which type is edge. But yurtappdaemon only supports to select node pool by label.
If we add node selector to the podSpec of yurtappdaemon, we will see that the pool-coordinator in cloud type of node pool will always be the pending status.
others
/kind feature

@donychen1134 maybe it's a good idea to remove this issue to openyurtio/yurt-app-manager repo where yurtappdaemon resource is hosted.

@rambohe-ch OK, I will close this issue and open another in yurt-app-manager.


unexpected behavior (or not?) when there are overlapping on_start, on_finish, etc.

Hi, I'm wondering what happens when there are overlapping on_start (or on_finish) and whether the expected behavior is documented anywhere.
In the (dummy) code below, I was expecting z, x, and y to be printed to the console.  However, only x and y are printed, presumably because the on_start (and also related parameters like on_finish) in objects  x  and y take precedence over the on_start in z? Is this how overlapping on_start  parameters are treated?
Is it possible (or sensible) to run multiple on_start "sequentially" so the resulting output is z, x, y instead of just x, y? If not, what is the correct way to specify object var z so that the output is z, x, y?
Thanks!
var x = {
  on_start: function() {
    console.log('x');
  }
}

var y = {
  on_start: function() {
    console.log('y');
  }
}

var z  = {
  timeline: [x, y],
  on_start: function() {
      console.log('z');
  }
}

// console output: x, y
// expected output: z, x, y

Update: I think I have figured it out. In the latest version of jspsych, in object z,  I should use on_timeline_start instead of on_start (and on_timeline_start isn't available in previous versions).


KAFKA-15045: (KIP-924 pt. 21) UUID to ProcessId migration

This PR changes the assignment process to use ProcessId instead of UUID.

Tests failures are unrelated, merging to trunk

Merged and cherrypicked to 3.8


Changing a reference to .kproj to .xproj

Hi @moozzyk, I'm your friendly neighborhood Microsoft Open Technologies, Inc. Pull Request Bot (You can call me MSOTBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Pawel Kadluczka). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla2.msopentech.com.

TTYL, MSOTBOT;

@danroth27

Thanks!


How to contribute my GitHub profile to the awesome-github-profiles repo

As the title says, how to add my profile to the table over at the readme.
Could you guide me through?
My screenshot:

Hey, as I mentioned above. Coudl you explain me how to contribute my GitHub profile to the awesome-github-profiles repo?

From the current documentation...

create an issue, with the title as your name, and in the description put a screenshot of the customised GitHub profile page
take the url created by github from the screenshot in step 1 and add it to this README.md as an image at the bottom of the table (use other submissions with the table as an example)
use your created issue url under the image you added

Great question 👍 , after this discussion I am sure there are more improvements we can make to the documentation
From looking at your profile, I have put green tick ✅  on the steps I think you have already done:

✅ Create an issue on that the awesome-github-profiles repo with your screenshot, before submitting the issue, copy the generated image url (don't worry if you have submitted it, you can click edit to get the url afterwards)
✅ Go back to the README.md file, and at the top right click the edit icon (looks a bit like ✏ )
✅ GitHub will fork the project which means to make a copy for you, then you can make yours changes to the README.md, then commit to save (these are still currently in your fork)
Next is to create a Pull Request on the source project for review and approval

@eddiejaoude Okay thanks, so I need to pull a request here: https://github.com/EddieJaoudeCommunity/support/pulls ?

Yes 👍 . Raise a pull request there, which means you are requesting changes from your forked repo to the main/source repo for review

Okay thanks, one more question. What should I select at "Comparing changes". If you can tell what I need to enter there, that would help me out. I never pulled a request, that's why I am so confused

Raising a pull request is confusing, you are not alone 🤓
If you click on compare across forks you will be given more options

Which will look like this, then select your branch in your repo that you made changes to

Okay so I made that issue and now I am about to make that pull request, but I am still confused, I didn't made changes, I created an issue with my screenshot and name,
So I have no clue what to select from there.
Do I need to change the (README.md)[https://github.com/EddieJaoudeCommunity/awesome-github-profiles/blob/master/README.md] and add my stuff?

From your fork (copy) of the repo in your GitHub account, it looks like you have made a branch with your changes...

So you need to raise a Pull Request like in my previous comment so it can be reviewed.

@eddiejaoude Done :D.

Awesome 👍 . I will close this then 🤓


Fix function comments based on best practices from Effective Go

Hi, we updated an exported function comment based on best practices from Effective Go. It’s admittedly a relatively minor fix up. Does this help you?

Thx ;)


Instagram logo

Implement a widget for displaying the Instagram's official logo.

@rafamizes the puzzle #64 is still not solved.


A Tool Proposal For Translation Process Management

I have contributed translation processes of some projects on Github. After finishing some of them manually, I'm convinced that using a tool to translate is more accurate than doing it manually. I have translated this document to Turkish by using GitLocalize.

The two main reasons for me to use it;

Creates text segments from content and manages translation segment based
Notifies when the master content is updated

As this repository contains many documents and most of the translation requirements comes from the content updates (very rare new content), GitLocalize may be a good choice. It has also team management functions such as language moderators, reviews and discussions.
By the way, I have no connection with this tool :).

Yes, I have used GitLocalize in some of the translation projects that I involved in. I also used it for the Turkish translation of this repo.
Can you please create an account on GitLocalize? So, I can add you to the team of one of my forks.

@umutphp Done! If you could add me to your opensource.guide fork that'd be great.

@MikeMcQuaid added you as admin to my fork.

@MikeMcQuaid
Just circling back on the translation of the guide :).
Can you please provide me an update about your comments about the tool? Did you have time to check? Do you think it can be used for managing the translation flow of this guide?

I have an account on github.
Sent from Yahoo Mail on Android
On Wed, Oct 9, 2019 at 5:37 AM, Umut<EMAIL_ADDRESS>wrote:
Yes, I have used GitLocalize in some of the translation projects that I involved in. I also used it for the Turkish translation of this repo.
Can you please create an account on GitLocalize? So, I can add you to the team of one of my forks.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@umutphp I haven't had time to check yet, sorry. This repository is not part of my job at GitHub so I've got stuff here bookmarked to review when I next have some free time (and am working hard on a GitHub Universe ship at the moment). Apologies again!

No
Sent from Yahoo Mail on Android
On Mon, Oct 21, 2019 at 3:28 AM, Umut<EMAIL_ADDRESS>wrote:
@MikeMcQuaid
Just circling back on the translation of the guide :).
Can you please provide me an update about your comments about the tool? Did you have time to check? Do you think it can be used for managing the translation flow of this guide?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

@MikeMcQuaid
@umutphp
Hi Mike and Umut, I'm from GitLocalize team, so if you ever need assistance with setting up a project or have any questions feel free to reach out to me directly at<EMAIL_ADDRESS>

@ilyaspiridonov Will do, still planning on getting to this at some point 🤞

I'm curious to try this, but sceptical. Having used several of those tools for UI l18n, but only observed Transifex.com/carpentries-i18n I'm a bit sceptical that those tools also work well for free-flowing text. Also, wherever a legal matter is touched, the different translations shouldn't even be too "tightly coupled". Thus, tools that promote such close alignment of translations might even do harm to some topics.
Is there a positive example for "segment based" translation? Do professional (book) translators use such tools?

Hi @katrinleinweber ,
I agree with your concerns about such possible issues.
I think the biggest problem with translations of this kind of documents is that they cannot follow updates in the master content. My motivation in creating this issue was to find a way to identify changes in master content as a translator to keep the translation up-to-date.
I do not have any professional or book translations with such tools. I hope there will someone to share experience :).

I'm sorry that it's taken so long for me to properly look at this but unfortunately I'm getting an "application error" every time I try to create a new repository here: https://gitlocalize.com/repo/new
As a result I'm not (yet) confident that we can begin a move over to using this tool CC @ilyaspiridonov @umutphp. I'm open to other tools and taking a look again when these issues are addressed.

@MikeMcQuaid Mike, you might have caught a moment where we were rolling out an update, sorry about that. Should be working fine now - can you please give it another try?

@ilyaspiridonov I'm still seeing "An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details. You can do this from the Heroku CLI with the command" every time I visit https://gitlocalize.com/repo/new.

@MikeMcQuaid thanks, I’ve just finished an urgent session with our dev team and I think we found the reason. Looks like you have quite a few repositories (1000+ I’m being told ), and Gitlocalize is hitting GitHub’s API rate limit and our memory quotas while trying to process the list of repos - that’s why you can’t even see the Add Repo screen. Obviously, our logic is not optimized for that kind of use case, and we are now working on a solution.
On the other hand, it was a great test case, so thanks! )
I will update once we find a solution, but should you have a second, more “lightweight” GitHub account, please feel free to try adding a repo from that account.
Sorry for the inconvenience, we’re doing our best to make GitLocalize better.

@ilyaspiridonov My personal account and organisations I'm administrators of have relatively small numbers of repositories but I have read access to >1000 private repositories for sure.

I will update once we find a solution, but should you have a second, more “lightweight” GitHub account, please feel free to try adding a repo from that account.

I'm afraid I don't have any I could use, sorry. I'd need to be the one that could set this up so I'm sorry but we'll need to pass on GitLocalize for now (a shame as it looks like a wonderful too).
Give me a shout or post in this issue when you reckon it's ready for testing again and we can consider reopening.
Thanks again!


Refactor thermo_hydraulic_model

In GitLab by @js0164 on Jul 20, 2022, 15:05
Make more general where possible and set up for use with liquid metals (MHD). Pumping option for single-coolant and dual-coolant breeding blanket.

This is not an issue but a comment of a whole range of things that might be nice.


Debug

This fixes a few different bugs, more detail in the individual commits.

I added some comments on the parts I added and understand. I agree the other parts are unclear, but they're also unclear to me, so I don't think I should be composing the comments to explain them, as that might just be reinforcing misunderstandings.
I think that's a symptom of a problem we can't solve in this PR: as far as I can tell, the initial deploy for this never went through a code review.


Ensure all scripts are desktop agnostic

Specifically, KDE and Gnome are my targets, though contributions are welcome for any others.

[ ] monitor.sh - Setting color temperature - GNOME only.
[x] bedtime.sh - Not applicable, this is a GNOME extension.
[ ] theme.sh - Setting light/dark mode, plus terminal color change (this part should be retired) - GNOME only.
[ ] screen.sh - Getting screenshot - GNOME only
[x] theme-nightthemeswitcher.sh - Not applicable, this is a GNOME extension.
[x] screenlock.sh - Locking/unlocking and checking screen lock state - 🎉 Supports KDE and GNOME!


attention mode crop problems (0.18)

To continue https://github.com/lovell/sharp/issues/727.
I do image thumbnals, with slightly reduced width (170*150px), and some images a cropped on wrong side. See sources below for experiments.
Properly cropped:

https://www.flickr.com/photos/dproductions57/8911435334/

Improperly cropped (at wrong side):

https://www.flickr.com/photos/136807076@N07/24161551991/
https://www.flickr.com/photos/136807076@N07/24161549231/

Result:

I don't know where the problem happens, because this bug was reported to libvips and fixed there.

I think this is the result of libvips check for the presence of skin tones, see:

vipsthumbnail -s 170x150 --smartcrop attention input.jpg gives the same results as you've specified.
/cc @jcupitt

@kleisauke thanks! Seems i'm lucky with finding bad images, those were first 3 random ones :).
smartcrop.js works better.
@jcupitt should we move to to libvips tracker?

Hello, thanks for the samples, I've made an issue on libvips for this: https://github.com/jcupitt/libvips/issues/672

@lovell https://github.com/jcupitt/libvips/issues/672#issuecomment-307365416

@lovell I think we need to update sharp to use libvips 8.5.7 to get the improvements?

@KyleAMathews Yes, that's right. sharp v0.19.x will depend upon (and provide) libvips v8.6.0.

Great!
What version of libvips is sharp 0.18 on? It looks like 8.5.5 still? My question was about getting the libvips improvements created from this thread which were added in libvips 8.5.7.

@KyleAMathews sharp v0.18.2 requires a minimum of libvips v8.5.5 and therefore pre-built binaries for this specific version are provided for local use. During installation, sharp will look for and work with a globally-installed version of libvips equal to or greater than this. This means libvips v8.5.7 can be used with sharp v0.18.2 but you'll need to globally install it first.

@lovell any reason not to bump the version of libvips that gets installed to the latest in the 8.5.x series? 8.5.9 was just released yesterday https://github.com/jcupitt/libvips/releases/tag/v8.5.9

@KyleAMathews The version of the prebuilt libvips binaries is fixed per sharp release. To bump the patch version to libvips v8.5.9 we'd need to also bump a new patch version of sharp, e.g. v0.18.5. Unfortunately this would pick up an SVG bug introduced in libvips v8.5.7 that v8.6.0 fixes - see https://github.com/jcupitt/libvips/pull/724
To makes things a little easier (for me at least) to manage and help troubleshoot, I've been providing the same version of libvips for all patch releases of a given minor version of sharp.
sharp v0.19.0 is currently sitting in the suit branch and will be merged to the master branch and published as soon as libvips v8.6.0 is out.
It'll be interesting to see how much impact moving gatsby from sharp v0.17.3 to v0.19.0 will have on the libvips download stats. Currently ~60% of libvips binaries requests are for v8.4.2 (as used by sharp v0.17.x).

Makes sense! Looking forward to libvips 8.6 & sharp v0.19.0!


Configure Dockerfile for staging environment

Resolves #191

This pull request includes several changes to the docker-compose-staging.yaml, frontend/Dockerfile.staging, and nginx/staging.conf files to integrate and serve the frontend application in the staging environment. The most important changes are listed below:
Docker Compose configuration updates:

[x] Added a new frontend service configuration to the docker-compose-staging.yaml file. This includes setting up the container, build context, environment variables, and networking.
[x] Updated the nginx service configuration to use staging.conf instead of nginx.conf and added dependency on the frontend service.
[ ] Commit the requested changes and test in local env

@arkid15r  can i work on this ?...the image will be served from docker-hub for frontend.

Implemented in https://github.com/OWASP/Nest/commit/31626655b0cb5ea68ccbcc9f4bbb874496c6b83c


Add CircleCI and fix issues

@martonsereg @matyix please have a quick look; golint issues have been fixed, the project is wired to CI; thanks to @colin014


Official NW.js support

Hey, I'm the creator of UGUI a framework for NW.js. I just tested your project and with a one line change it works fine in NW.js.
Do you have plans to officially support NW.js, or be willing to accept pull requests regarding it. It would take very little effort to set this project up proper for NW.js. And maintenance would require a small amount of changes to your current automated grunt system.
If you've not used it before, they're very similar (except NW.js beats out Electron by a little bit in almost every category). You should try it out, of course you'll need to change your "Electron is the easiest way to build cross-platform desktop applications" line on the website after wards though... since ya know, it's not um... factual.
I'll go now.

I think you may have been reading the comparison table incorrectly, as it seems to point to Electron as the better option.  Both projects are great, however one would be remiss to overlook the multi-process support built into Electron that is (last I checked) missing from NW.js.

To make it easier to understand, I've updated the chart, corrected some items and color coated it to show what I mean:

I removed stuff that was equal, and fixed the file size part and other minor details to make things cleaner.
And "multi-process support" is kinda vague. But in some senses, yes you can. In the sense of multi-process meaning multiple executables running for different windows, extensions, plugins, and child processes, yes it can do that with very little effort. In the sense of a single process using 100% of your multi-core CPU, I'd be surprised if any Chromium based project could do that. Unless you count 3rd party executables that are launched as a child process. But that would be true with anything using Node/IO.js.
The only thing Electron does better is branding and a slight lead in one benchmark. If you remove the branding and just compare "Product A" to "Product B", NW.js is a clear winner. They both have stuff they need to improve on, and right now they are VERY similar, but if you have to say one is better, objectively you can't say it's Electron.

but if you have to say one is better, objectively you can't say it's Electron.

Objectively, you couldn't say either as 'better' is a subjective term. But I digress.

Electron now supports Node v4. I'm not at all familiar with NW.js, is it still using io.js?
Why is Chromium better than libchromium?
Isn't there some JavaScript context issue that a dev needs to worry about when using NW.js?

Thanks for helping to fill in the gaps of my misunderstanding.

 My point was relating to NW.js re-using the same event loop for both web and Node content, which was the case when heard about it at JSConf in 2012.  Your comparison table is lovely, but there are more differences between the two projects than you can attempt to objectively categorize and present in a table. Community aspects, package management and ES6 support are a few that come to mind.
Though I'm not in any way affiliated with Photon, I can tell you it is a CSS library and has nothing to do with Electron itself.  However, the author @connors works at Github alongside the people who build Electron, and he chose to promote the project as a great way to kickstart Electron-based apps.  Personally, I think that was the right decision considering the rapid pace of adoption the Electron project has been seeing.
@jprichardson Correct, NW is using an older io.js build. I can imagine it is slightly harder to keep up with new Node versions since they have much fewer maintainers.

Yeah we're pretty sold on Electron over here at GitHub :grimacing:... and I'm not really interested in officially supporting NW.js.

So, rather than pay for professional software developers, GitHub abuses the open source community to get free work from them. Then refuses to contribute back to the open source community by implementing simple automated systems that benefit everyone, rather than just them directly.
You guys are the devil.

Friendly and open competition is actually one of the reasons Open Source is
better then commercial software. I fail to see how Electron benefits only
Github. I don't work for github and I use it every day, both as a platform
and by way of the Atom text editor.
On Fri, Oct 23, 2015, 8:09 AM The Jared Wilcurt<EMAIL_ADDRESS>wrote:

So, rather than pay for professional software developers, GitHub abuses
the open source community to get free work from them. Then refuses to
contribute back to the open source community by implementing simple
automated systems that benefit everyone, rather than just them directly.
You guys are the devil.
—
Reply to this email directly or view it on GitHub
https://github.com/connors/photon/issues/28#issuecomment-150555741.

--

Jason


Contributions menu: deleted interposed questions are wrongly listed

Description: If an interposed question without time is deleted from the list of speakers, it is nevertheless listed in the contributions menu. This is wrong.
Reproduction:

enable interposed questions
create an agenda item and project it
open Autopilot, add a user on the list of speakers and push the play button
add an interposed question. Now stop the main speaker and accept dialog form to delete empty interposed question
In the last list of speakers list, the empty interposed question will not appear
open participants > contributions > empty interposed question is listed.

What should happen:
If an interposed question is deleted from the list of speakers it is also not listed in the last list speakers overview. Following this logic, the deleted interposed question should also not be listed in the contributions list.

I can reproduce this. After a reload, the interposed question is gone.


[firebase_messaging] Fatal: failed to find callback

onLaunch, onResume are not working after update flutter 1.17.1 stable.
when tap notification, show error.
Fatal: failed to find callback.

Same error here!

Hi @YeomDongUk
can you please provide your flutter doctor -v ,
your flutter run --verbose,
your pubspec.yaml
and a reproducible minimal code sample.
Thank you

same here

it is result of flutter doctor -v.

I have same issue on Android platform, but no issue on iOS platform. The push notification does not trigger the onMessage for Android platform although same code for both platform.

Hi @YeomDongUk
thank you for your doctor
could you please provide the remaining info listed above
Please refrain from posting pictures if not necessary.
Thank you

it is my pubspec.yaml

Hi @YeomDongUk
could you please provide
a reproducible minimal code sample.
Please refrain from posting pictures if not necessary.
Thank you

void main() async {
WidgetsFlutterBinding.ensureInitialized();
AppConfig.init();
FirebaseMessage.init();
await LocalNotification.init();
Analytics.init();
SystemChrome.setSystemUIOverlayStyle(
SystemUiOverlayStyle.dark.copyWith(
statusBarColor: Colors.black,
statusBarIconBrightness: Brightness.light,
statusBarBrightness: Brightness.light,
),
);
await SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
runZoned(() => runApp(MyApp()), onError: (error, stackTrace) async {
Logger().e(error.toString());
await FlutterCrashlytics()
.reportCrash(error, stackTrace, forceCrash: false);
});
}
class FirebaseMessage {
static void init() {
if (instance == null) {
_instance = FirebaseMessage();
if (instance._firebaseMessaging == null) {
instance._firebaseMessaging = FirebaseMessaging();
instance._firebaseCloudMessagingListen();
}
}
}
void configure(String userId) {
try {
instance.firebaseMessaging.configure(
onMessage: (Map<String, dynamic> fcm) async {
Logger().i("onMessage: $fcm");
Map<String, dynamic> data = Map<String, dynamic>.from(fcm);
if (fcm['data'] != null) data = Map<String, dynamic>.from(fcm['data']);
switcher(
clickAction: data["click_action"],
callback: () =>
LocalNotification.instance.onFeedback(fcm: data, userId: userId),
);
}, onLaunch: (Map<String, dynamic> fcm) async {
Logger().i("onLaunch: $fcm");
Map<String, dynamic> data = Map<String, dynamic>.from(fcm);
if (fcm['data'] != null) data = Map<String, dynamic>.from(fcm['data']);
switcher(
clickAction: data["click_action"],
callback: () => goFeedbackPage(
lectureId: data['lectureId'],
userId: userId,
),
);
}, onResume: (Map<String, dynamic> fcm) async {
Logger().i("onResume: $fcm");
Map<String, dynamic> data = Map<String, dynamic>.from(fcm);
if (fcm['data'] != null) data = Map<String, dynamic>.from(fcm['data']);
switcher(
clickAction: data["click_action"],
callback: () => goFeedbackPage(
lectureId: data['lectureId'],
userId: userId,
),
);
});
} catch (error) {
Logger().e(error);
// throw Exception(error);
}
}
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
FirebaseMessage.instance.configure(user.authId);
return ....;
}
}
I can receive onMessage but can't not receive onLaunch and onResume. This happens only on Android.

Hi there,
Is this issue resolved. I am also facing same issue on Android. onLaunch and onResume are not getting called. Can anyone help me here?


[HxTooltip] Enabling/disabling tooltip

I would like to be able to control whether HxTooltip component is enabled or not.
See Bootstrap docs:
https://getbootstrap.com/docs/5.2/components/tooltips/#methods

@alexax578 In the end I decided for methods for now as these correspond to the Bootstrap API and the use-case for enabling/disabling tooltips/popovers seems quite rare. If the usage won't be comfortable enough, please fill in a new issue.


[ ] Yes
[x] No

Types of changes

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

Documentation

[x] I have updated the list of tools in README.md if (required) with ./arkade get -o markdown
[ ] I have updated the list of apps in README.md if (required) with ./arkade install --help

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I've read the CONTRIBUTION guide
[x] I have signed-off my commits with git commit -s
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

[x] I have tested this on arm, or have added code to prevent deployment

@mrkurt this brings flyctl to arkade get flyctl / arkade get flyctl@version - downloading the correct version for the OS / CPU mixture.
Feel free to take a look. I think you'd find arkade system install useful too with the various programs it supports today for a simple, super fast installation from binaries.


fix memleak

Fix memory leak in filter operation.

Codecov Report

Merging #62 (88f0e60) into master (f90712e) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##           master      #62   +/-   ##
=======================================
  Coverage   85.47%   85.48%
=======================================
  Files          39       39
  Lines        7238     7242    +4
=======================================
+ Hits         6187     6191    +4
  Misses       1051     1051

Flag
Coverage Δ

pytest
85.48% <100.00%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

tablite/core.py
78.98% <100.00%> (+0.03%)
:arrow_up:

tablite/version.py
100.00% <100.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


OctopusDeploy missing option to deploy to an environment when release is created

While creating Octopus Deploy Release through octo.exe there is an option to deploy the release to an environment: see --deployto option here: http://docs.octopusdeploy.com/display/OD/Creating+releases
But this is not available in Cake as far as I can see: https://github.com/cake-build/cake/blob/develop/src/Cake.Common/Tools/OctopusDeploy/CreateReleaseSettings.cs
It'll be nice to have all the options provided by octo.exe. I've almost started a PR for that, but decided to check first.

@trailmax sounds good to me!

Fixed by #1229


Remove redundant scripts

Currently, the source code is packed with methods and full scripts that are not used.
We should just remove most of these, as most of these are from the old solution which is quite different from the current framework.
We will also always have the commit history. Hence, we can find these old methods and scripts if necessary.

Fixed in bcec8c8457ac43279b9273fbf49d602c7a375553


FormBuilderSearchableDropdown getting the value

_formKey.currentState.fields['name'].currentState.value  : not working

Did you try this?
_formKey.currentState.value['name']

I just tried it but not achieving what I am trying to do here: Change the item list on the second formbuilder based on the value of the first one. The code below

FormBuilderSearchableDropdown(
name: 'Category',
items: EventItemsList.category,
initialValue: 'Choose',
),
FormBuilderSearchableDropdown(
initialValue: 'Music',
name: 'Subcategory',
items: _formKey.currentState.value['Category'] == 'Music'
? EventItemsList.music_sub_category
: [],
),

How about using the onChanged property to create a new list with values that match the category?

@andrewzakhartchouk example code please

Can't really come up with a solution, but I would suggest to try using setState() and/or Provider to change the items of the 'Subcategory' field.

Thanks @andrewzakhartchouk. Works like a charm

This issue is resolved? If yes, close please

Can be close this issue?


Add getSessionQuestions

I needed this method so I am contributing to this trait.

@upwebdesign was out of office for a couple of days. Merging now.

@slakbal thanks for merging that pull request in!


fix fix that load channel failed to be released in time

Proposed changes
Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

Does it affect the original behavior:

[ ] Yes
[ ] No
[ ] I don't know

Has unit tests been added:

[ ] Yes
[ ] No
[ ] No Need

Has document been added or modified:

[ ] Yes
[ ] No
[ ] No Need

Does it need to update dependencies:

[ ] Yes
[ ] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[ ] No

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 34.14 seconds
load time: 443 seconds
storage size:<PHONE_NUMBER>4 Bytes
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20221109111945_clickbench_pr_42719.html


Let duration be passed to $timeout and $interval

I just came with a conclusion that if I'm using moment in my project then it's redundant to write:
$timeout(someFunction, moment.duration(2, 's').asMilliseconds())

each time we pass a duration (conceptual) using Duration (as in moment.isDuration(duration) === true)
I'm about to write 2 simple decorators for both $interval and $timeout to allow passing Duration instead of number of milliseconds like this:
$timeout(someFunction, moment.duration(2, 's')))

Do you think it fits into a concept of "angular-moment" (as in "a module to integrate moment in an angular app)?

note to self: it would be nice to be able to patch $timeout.flush and $interval.flush test helpers as well. This might not actually fit here out of the box

@jrencz I believe that patching $timeout and $interval is not the right way to go.
We can either provide amTimeout and amInterval services, that provide this functionality (e.g. amTimeout(callback, 5, 's')) or just create these methods in the amMoment service

In my oppinion there's no point in doing that. The point is to reduce number of services one has to remember of, not add another 1 or 2.

@urish since Duration object has valueOf implemented and it returns number of milliseconds and angular passes the delay argument directly to browser's setTimeout which calls valueOf internally (for that one I haven't found a source actually so it has to be checked if all browsers behave this way).
So it's probable that it's save to pass a duration directly to $timeout and $interval

Ok, I've got a quote for the last part:
http://www.w3.org/TR/2011/WD-html5-20110525/timers.html#timers

When the above methods are to get the timeout, they must run the following steps:

Let timeout be the second argument to the method, or zero if the argument was omitted.
Apply the ToString() abstract operation to timeout, and let timeout be the result. [ECMA262]
3. Apply the ToNumber() abstract operation to timeout, and let timeout be the result. [ECMA262]
If timeout is an Infinity value, a Not-a-Number (NaN) value, or negative, let timeout be zero.
Round timeout down to the nearest integer, and let timeout be the result.
Return timeout.

So:
http://www.ecma-international.org/ecma-262/6.0/index.html#sec-tonumber
calls http://www.ecma-international.org/ecma-262/6.0/index.html#sec-toprimitive
which calls valueOf

So it seems like our job is already done, that's great :-)


hey buddy why'd you yank my version

broke my damn build

Yeah, really sorry about that. I don't have a good explanation besides carelessness and misunderstanding. Not the smoothest thing I've ever done.

…but the new (basically unchanged) version is available and it will not be yanked. Promise.


[Event Request] Codeunit 267 CheckManagement - OnAfterFinancialVoidCheckPreValidation

Please add a new publisher event to the function FinancialVoidCheckPreValidation as follows:
LOCAL FinancialVoidCheckPreValidation(VAR CheckLedgEntry : Record "Check Ledger Entry")
.
.
IF TransactionBalance <> 0 THEN
  ERROR(VoidingCheckErr);

//>> Start New Publisher Call
OnAfterFinancialVoidCheckPreValidation(CheckLedgEntry, BankAccLedgEntry2);
//<< End New Publisher Call
.
.

New Publisher Event:
LOCAL [IntegrationEvent] OnAfterFinancialVoidCheckPreValidation(CheckLedgerEntry : Record "Check Ledger Entry";BankAccountLedgerEntry : Record "Bank Account Ledger Entry")

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Allow command install to be set in a specific directory even in a Git directory + handle the branch in install command

What: I added the feature to allow the user to specify where the install command should place the files from the OpenApi repository, allowing it to be placed inside another directory which is also a git directory (nested repository)
I added the feature to change the branch by using the one specified in the specmatic.json whe using the command install

Why: Install by default was installing in the home directory which can be an issue while working with docker container and k8s pods, or even with a CI tool a bit too old like bamboo

How:

I added an option to the command install which is called --targetDirectory wich by default is home if not specified
I used the clone command from the GitRepo.kt instead of the sourceGit.clone(....) to handle the branch specified in the specmatic.json
I check that if the directory is a git directory but the remote is not the same and the sub direcotries are empty or the directory is not a git directory then clone from the repo

Checklist:

[ ] Documentation added to the README.md OR link to PR on https://github.com/specmatic/specmatic-documentation
[ ] Tests
[ ] Sonar Quality Gate

Issue ID:
Closes: /

@Snorkell Thanks for your PR. Really appreciate the effort. We will review you PR shortly.

Thanks @Snorkell, really appreciate the PR!


Add a hint to logger docs about the synchronization

Describe your idea
Related to: #4089

Maybe this could be a useful hint on https://wix.github.io/Detox/docs/next/config/logger/?

These specific logs are caused by this param: https://wix.github.io/Detox/docs/next/config/session/#sessiondebugsynchronization-number (as the docs say, set it to zero).

Some more info on this: I ended up copying the example, changing from the default of 10,000 to the example of 20,000. This actually hides a lot of the debug output, but still keeps some when tests take a long time. For now that seems more useful.
I still don't really understand what this option does - if the recommendation is to turn it off, what would I loose? Why is it enabled by default?

One more note: https://wix.github.io/Detox/docs/articles/how-detox-works explains about Detox syncs with the app state, which sounds related to the session.debugSynchronization setting, but there's no mention of it. If it's related, a link would be great. If not, an explainer how that's unrelated would help, too.

I've finally discovered https://wix.github.io/Detox/docs/troubleshooting/synchronization/, too. Links to this page from how-detox-works, logger and config/session pages would be valuable as well.

Trying to answer my own, earlier question:

I still don't really understand what this option does - if the recommendation is to turn it off, what would I loose? Why is it enabled by default?

Setting it to 0 would turn off the logging, making it harder to understand why tests time out. So for me changing it to 20000 (20s) as the docs example suggest worked out fine. I get some debug output if tests are stuck a long time, but not from all the other tests.
At some point we need to investigate why so many tests have to wait 10+s for synchronisation though.

@jzaefferer thanks for your involvement. I've been a bit busy lately, but I'm going to take this in the next couple of days for sure. Thanks for your patience and your helpful input.


Misleading docs on duplicate required component constructors

The required components documentation describes the algorithm for resolving multiple constructors for the same component in a required components tree as follows:

In general, this shouldn’t happen often, but when it does the algorithm is simple and predictable:

Use all of the constructors (including default constructors) directly defined in the spawned component’s require list
In the order the requires are defined in #[require()], recursively visit the require list of each of the components in the list (this is a Depth First Search). When a constructor is found, it will only be used if one has not already been found.

However, this is not what actually happens. For example, consider this case:
#[derive(Component)]
#[require(B)]
struct A;

#[derive(Component, Default)]
#[require(C, D(|| D(1)))]
struct B;

#[derive(Component, Default)]
#[require(D(|| D(2)))]
struct C;

#[derive(Component)]
struct D(u8);

Now suppose we spawn A. Following the steps described in the docs to determine which constructor will be used for D:

The "spawned component" is A, which does not have a constructor for D, so go to step 2.
A DFS will visit the components in the order A B C D(2) D(1). So when D(2) is visited, it will be used because D hasn't been found yet; and when D(1) is visited, it will not be used because D has been found already.

This suggests that D(2) will be used as the constructor. But that's incorrect: D(1) is actually used.

@cart, do we prefer the implemented behavior or the documented behavior?

The implemented behavior is what we want. The documented behavior was intended to capture the implemented behavior:

recursively visit the require list of each of the components in the list (this is a Depth First Search)

This was intended to define the "visiting" behavior as depth-first. Not to run a new naive Depth First Search algorithm, ignoring the previous aspects of the algorithm being defined. The recursion is depth first, but we insert the constructors of the direct requires for a given component before recursing.
I'd support a rephrase that makes it clearer.

IIRC it does traverse depth-first, but if a requirement with a higher precedence (lower depth) is found, it overwrites

From @Jondolf on Discord. The updated docs doesn't mention this, so it's still wrong. For example:
A: B, D
B: C
C: E(1)
D: E(2)

Here E(2) will be chosen because it's higher up in the tree, even though the DFS finds E(1) before E(2).
Assuming the algorithm is indeed "DFS in require(...) order but prefer lower-depth constructors", then the fact that it's a DFS is effectively an implementation detail. Every node of the tree will be visited eventually, and in the end the search will select the leftmost matching node of the highest layer with a match, which could equally be implemented with a BFS.
In summary, the updated docs are still inaccurate and describing the algorithm as a DFS is a red herring.


Various changes to job execution to appropriately close services and …

…executors.
There are three main changes here:

Make JobLauncherExecutionDriver a FutureTask (which also makes it a RunnableFuture) and a ListenableFuture, and it not longer implements Service. Futures have a concrete end, which is appropriate for the job driver. FutureTask additionally offers a concrete start, which was the other requirement for the job driver. Finally, ListenableFuture allows adding callbacks.
Make JobCatalog a Service so it can be shut down allowing it to clean up whatever threads it spawned. Also extended JobCatalogBase to handle the service part of the catalog, and implemented MutableJobCatalogBase that does the same for MutableJobCatalog. Most JobCatalog implementations were simplified taking advantage of the base job catalogs.
Make CallbackDispatcher closeable to allow it to shut down its ExecutorService. All classes that use CallbackDispatcher were updated accordingly.

Additionally, some small, unrelated changes to EmbeddedGobblin that make it easier to run from a command line.

@chavdar can you review?

Addressed comments, merging.


Develop IWearRemapper

This class should provide the following features:

Read multiple ports streaming WearData
Combine the data of all the input ports
Provide a single output containing the merged data
Allow using it as a device by implementing the IWear interface

Since the implementation has been completed I think we can close this issue.
Concerning the name, we can document it and eventually change the name in a second instance (it should not require many changes since the usage of the devices is still limited to HDE).
@diegoferigo @Yeshasvitvs

Yes, closing.


excessive neighbors

We were finding an excessive number of neighbors because our distance calculation made no sense. First, it was computing taking the cos of degrees---but cos in Julia an argument in radians. Second, there's no reason to take that cosine anyway, as as I can tell. Pixel scale is 0.396 arc seconds everywhere in SDSS, regardless of the declination. (@rcthomas Is that correct? Is there any reason to scale the difference in RA by the cosine of the DEC?)
@gostevehoward  Heads up! I think this "distance" formula shows up in Stripe82Score.jl too--you were wondering about it, I seem to recall. It probably doesn't throw things off as much there because the stripe 82 declinations are all around 0, and cos(0) is about 1, but still, wow, that's a serious bug.
Fixes #562 .

This is the distance calculation I should use instead?
dist(ra1, dec1, ra2, dec2) = (3600 / 0.396) * max(abs(dec2 - dec1), abs(ra2

ra1))

On Wed, Feb 15, 2017 at 8:45 PM Jeffrey Regier<EMAIL_ADDRESS>wrote:

Merged #563 https://github.com/jeff-regier/Celeste.jl/pull/563.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jeff-regier/Celeste.jl/pull/563#event-964358538, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABC_kPPFDn0tcpl7CZfEcgMkB4is-h0Kks5rc9R9gaJpZM4MCkQK
.

Euclidian distance (just dropping the cos(dec2-dec1)) might be even better than that for matching across catalogs, but either should be fine.

@jeff-regier @gostevehoward Be very careful about dropping the cos(dec).  A trick to avoid cos altogether might be to compare squared 3D Euclidean distances.

Antarctica gets elongated on a 2D map, and the cos of the latitude/declination adjusts for that. I'm unclear about whether that kind of adjustment is relevant here. 1) We're concerned with how far apart lights sources appear in images, not how far they are if projected onto a hollow sphere. 2) Each image is only a fraction of a square degree.
If cosine is appropriate, I'm pretty sure it should be cosd (degrees) though rather than cos (radians).

... distance in RA depends on cos(Dec); right?

Are pixels everywhere in SDSS nearly 0.396 arc second x 0.396 arc seconds ? Or does that depend on the declination?


Update storage-import-export-ship-drives.md

Updating doc on packing the devices securely

Duplicate PR (269760)

#please-close


Add notice that form is outdated

This is a stop-gap pull request until #51 can be properly reviewed and merged. Note that once this PR is merged, that one will need to be updated to also effectively revert this PR (or perhaps change the notice to green and say "This form is up-to-date as of version -10".

The above image shows that the notice says

Form is out-of-date
This form is for version -08, but the latest published draft is -10. It's missing the Expires: field, so you will have to manually insert it into the generated file yourself. You can learn more about it from the specification.

The hyperlink links directly to the 'Expires' section and opens in a new tab.
Let me know if you'd like the wording changed up, or the notice moved to e.g. the 'Step 2' section (where the output is displayed)
cc: @EdOverflow

Thank you, @joker314!


Install Extension does not work

VSCode Version: Code 1.3.0 (e724f269ded347b49fcf1657fc576399354e6703, 2016-07-07T16:50:12.291Z)
OS Version: Linux x64 4.4.0-28-generic (Ubuntu 16.04)

Steps to Reproduce:

Open VSCode
Open Extension view
Type PHP in search field
Click on "Install" Button

neither the Button(s) in the left panel nor those in the detail view on the right are working.

No chance for Extensions anymore? Bummer...

I had the same bug, but I fixed it by killing the old vscode processes from the previous version that where still running somehow.

Yeah, after closing all (visible) instances of vscode, there were still plenty of vscode processes running!
Killed them all and now it works.
Thanks!