Can't see titles IOS10

Hi
Thanks for awesome competent.
My error is; item titles of segments aren't seen for IOS10. But everything works well for IOS11.

`
var segmentItems = [SegmentioItem]()
for item in orderedLocationList {
  let segmentItem = SegmentioItem(title: item.location, image:nil)
  segmentItems.append(segmentItem)
}

let indicatorOptions =  SegmentioIndicatorOptions(type: .bottom, ratio: 1.0, height: 3.0, color: .focepGreenColor())

let states = SegmentioStates(
  defaultState: SegmentioState(
    backgroundColor: .clear,
    titleFont: UIFont.systemFont(ofSize: 15),
    titleTextColor: .black
  ),
  selectedState: SegmentioState(
    backgroundColor: .clear,
    titleFont: UIFont.systemFont(ofSize: 15),
    titleTextColor: .focepGreenColor()
  ),
  highlightedState: SegmentioState(
    backgroundColor: .clear,
    titleFont: UIFont.systemFont(ofSize: 15),
    titleTextColor: .focepGreenColor()
  )
)

let  horizontalSeparatorOptions = SegmentioHorizontalSeparatorOptions(
  type: SegmentioHorizontalSeparatorType.topAndBottom, // Top, Bottom, TopAndBottom
  height: 0,
  color: .gray
)

locationSegmentedControl.setup(
  content: segmentItems ,
  style: SegmentioStyle.onlyLabel,
  options: SegmentioOptions(backgroundColor: .white, segmentPosition: .fixed(maxVisibleItems: 3), scrollEnabled: false, indicatorOptions: indicatorOptions, horizontalSeparatorOptions:  horizontalSeparatorOptions , verticalSeparatorOptions: nil, imageContentMode: .center, labelTextAlignment: .center, labelTextNumberOfLines: 1, segmentStates:states, animationDuration: 0.25)
)

locationSegmentedControl.valueDidChange = { segmentio, segmentIndex in
  self.segmentedControlValueDidChange(segmentIndex: segmentIndex)
}

`

Same issue when segmentioView is loaded in viewDidLoad.

Did it get resolved? @yatanadam @grifas

@chetan5476 I initialised it in viewDidAppear and that works.

@grifas I tried doing that too but dint work for me.. so I took other library.

also here, same issue.
Loading from xib loads the control "fine" you can see  how it kinda scrolls up to the right position, but after selecting some tab, the labels scrolls down and are right under the bottom border.  I tried disabling in the xib "safe areas". also loading the segmented control on viewDidAppear. But nothing seems to help.

Same issue. Any suggestion on how to fix the issue?

I didn't do anything and now that works when I initialised it in the viewDidLoad.
here my code:
class MultipleViewController: UIViewController {

	var segmentedControl = Segmentio(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 44))
	var containerView = UIView()
	var scrollView = UIScrollView()

	var titles: [String]?
	var images: [UIImage]?
	var controllers: [UIViewController]?

	init(titles: [String]? = nil, images: [UIImage]? = nil, and controllers: [UIViewController]? = nil) {
		super.init(nibName: nil, bundle: nil)

		self.titles = titles
		self.images = images
		self.controllers = controllers
	}

	required init?(coder aDecoder: NSCoder) {
		fatalError("init(coder:) has not been implemented")
	}

	override func viewDidLoad() {
		super.viewDidLoad()

		initialize()
		setupScrollView()

		if let titles = titles {
			SegmentioBuilder.buildSegmentioView(segmentioView: segmentedControl, content: titles, segmentioStyle: .onlyLabel)
		} else if let images = images {
			SegmentioBuilder.buildSegmentioView(segmentioView: segmentedControl, content: images, segmentioStyle: .onlyImage)
		}

		segmentedControl.selectedSegmentioIndex = 0
		segmentedControl.valueDidChange = { [weak self] _, segmentIndex in
			print("Selected item: ", segmentIndex)

			if let scrollViewWidth = self?.scrollView.frame.width {
				let contentOffsetX = scrollViewWidth * CGFloat(segmentIndex)

				self?.scrollView.setContentOffset(CGPoint(x: contentOffsetX, y: 0), animated: true)
			}
		}
	}

	func initialize() {
		scrollView.accessibilityLabel = "scrollView"
		scrollView.isPagingEnabled = true
		scrollView.showsHorizontalScrollIndicator = false
		scrollView.bounces = false

		containerView.addSubview(scrollView)
		view.addSubview(containerView)
		view.addSubview(segmentedControl)

		containerView.snp.makeConstraints { (make) in
			if #available(iOS 11, *) {
				make.left.right.bottom.equalTo(view.safeAreaLayoutGuide)
				make.top.equalTo(segmentedControl.snp.bottom)
			} else {
				make.left.right.equalToSuperview()
				make.top.equalTo(segmentedControl.snp.bottom)
				make.bottom.equalTo(self.bottomLayoutGuide.snp.top)
			}
		}

		scrollView.snp.makeConstraints { (make) in
			make.edges.equalToSuperview()
		}
	}

	private func setupScrollView() {
		guard let controllers = controllers else { return }

		scrollView.delegate = self

		scrollView.contentSize = CGSize(
			width: UIScreen.main.bounds.width * CGFloat(controllers.count),
			height: containerView.frame.height
		)

		for (index, viewController) in controllers.enumerated() {
			viewController.view.frame = CGRect(
				x: UIScreen.main.bounds.width * CGFloat(index),
				y: 0,
				width: scrollView.frame.width,
				height: scrollView.frame.height
			)
			addChildViewController(viewController)
			scrollView.addSubview(viewController.view, options: .useAutoresize) // module's extension
			viewController.didMove(toParentViewController: self)
		}
	}
}

Hope it helps you guys.

Hello, for those interested, this worked for me..
I reworked my main container viewcontroller's view.
Before I had components in a stackview,  and I tried to do it. "old fashion" way without the stackview. Results, now it works as expected.
I was debugging the code a little bit to see what was happening.  And when the call to scrollToVisibleRect on the collection view used, the content offset was to -20 on the Y axis. thats why the resulted behaviour.  Funny thing was that the passed rect contained origin Y value to 0.   Seems scrollview inside somehow in a stack view are not very good friends.
I hope this info helps

I get this error on console
2018-07-26 11:06:45.708 SDK Test App[20547:211414] the behavior of the UICollectionViewFlowLayout is not defined because:
2018-07-26 11:06:45.708 SDK Test App[20547:211414] the item height must be less than the height of the UICollectionView minus the section insets top and bottom values, minus the content insets top and bottom values.
2018-07-26 11:06:45.708 SDK Test App[20547:211414] Please check the values return by the delegate.
2018-07-26 11:06:45.709 SDK Test App[20547:211414] The relevant UICollectionViewFlowLayout instance is <UICollectionViewFlowLayout: 0x7fe4c042e9c0>, and it is attached to <Segmentio.MyCollectionView: 0x7fe4c2091600; baseClass = UICollectionView; frame = (0 0; 414 54); clipsToBounds = YES; gestureRecognizers = <NSArray: 0x7fe4c042f920>; layer = <CALayer: 0x7fe4bff08cb0>; contentOffset: {0, 0}; contentSize: {600, 54}> collection view layout: <UICollectionViewFlowLayout: 0x7fe4c042e9c0>.
2018-07-26 11:06:45.709 SDK Test App[20547:211414] Make a symbolic breakpoint at UICollectionViewFlowLayoutBreakForInvalidSizes to catch this in the debugger.

It happens only in iOS 9 and 10. iOS 11 works fine.
Seems that Segmentio's collection view gets extra 49pt bottom content inset.
That's because UIKit wants to use nice translucent bar for tab bar and navigation bar.
To fix that you need to disable Adjust Scroll Views Insets.
I didn't check how to keep adjusted insets for all scroll views but not Segmentio's.


18847 - update certify text for amalgamations

Issue #: /bcgov/entity#18847
Description of changes:
update certify text for amalgamations

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

/gcbrun

Temporary Url for review: https://business-create-dev--pr-603-1861qqa1.web.app


Realtime Character Counter

Title and Issue number
Real Time Character Counter #2048
Close #2048
Checklist:

[X] I have mentioned the issue number in my Pull Request.
[X] I have commented my code, particularly in hard-to-understand areas
[X] I have created a helpful and easy to understand README.md

https://github.com/pranjay-poddar/Dev-Geeks/assets/133862694/f27a6fe2-d93e-497e-bef1-e432fc1276a8

Check out @pranjay-poddar @MohitGupta121


Remove some overhead in big file read

What changes are proposed in this pull request?
Remove some overhead in big file read (cache hit/ cache miss) in fuse sdk.
Why are the changes needed?
Improve overall read performance
Does this PR introduce any user facing changes?


Upgrade default gcc to 6.x

Title says all. This will be nice to have for 17.03.
We should set up a branch+jobset with gcc 6 to see how much breaks.
http://hydra.nixos.org/jobset/nixos/gcc-6

Out of curiosity, why not LLVM+clang? Are there any major blockers for that left nowadays?

That's a separate issue really.

Do we really need a separate branch with all the merge work it implies?
Wouldn't it be possible to only have a jobset that overrides gcc = gcc6 but uses master?
If we fix a package for gcc6, it should not break gcc5.

I don't think it will need much "merge work".

There's a new problem with -isystem<EMAIL_ADDRESS>On Hydra it currently shows up with openjdk but I've already seen another instance.

How far is this work?

In this branch I can't see any commits towards fixing the general problem from my last comment (and I didn't work on it since posting that comment).

Hmm, I guess we might skip gcc-6 default, as gcc-7 is expected in about a month.  We've done at least one similar leap already, some time with 5.x.

Looks like gcc 7 is out. Anyone still looking at this?

Yes, I am. GCC 7 is probably too bleeding edge for the next release, so GCC 6 would be better. I'd like to merge the gcc-6 branch into staging soon.

Awesome, thanks!
On Fri, Jun 30, 2017 at 9:47 AM, Eelco Dolstra<EMAIL_ADDRESS>wrote:

Yes, I am. GCC 7 is probably too bleeding edge for the next release, so
GCC 6 would be better. I'd like to merge the gcc-6 branch into staging soon.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/issues/19456#issuecomment-312271379,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAKPw71Wvscwfv6jUvbfWTgbMbeDwMdks5sJPxbgaJpZM4KTzTz
.

GCC 7.1 is from May and the next release is in September, so it might not be that bad, but it seems safer and perfectly OK to wait after that.

FYI, I've changed the nixos/gcc-6 jobset (as well as the nixos/staging jobset) to build on x86_64-linux only. Otherwise evaluation kept barfing with a Boehm out-of-memory error. (No idea why, given that master does evaluate...)
http://hydra.nixos.org/eval/1378105
The last eval (from > a month ago) showed only a handful of major failing dependencies (mostly clucene-core and akonadi, breaking a lot of KDE, and gnome-control-center, breaking some of Gnome). So I think we should fix those and then merge this into staging in a few days. Remaining failures can be dealt with as part of a ZHF push for 17.09.
@fpletz

@edolstra: any particular reason why you haven't staged this yet?

@vcunat Sorry, I've been on vacation. I've merged gcc-6 into staging now.

Thanks!


Changelog for 0.70.0

@alexr00 Just wanted to comment my appreciation for the updated create view: it such an improvement and sparks joy every time I use it. Thanks!


VM should have multiple accounts and a shared folder where the code lives

title

Accounts made, shall I just clone the repo into a new folder? At the moment, it only exists in 'samuel'


Training Code

Are you planning to release the training and finetuning code?

That’s sad

I've been working with my own code for training a transformer Audio-to-Audio models, even before this project came out. I'm going to try and adapt my code to work with their model design and the way they break down audio data. My goal is to train a model directly on audio, without relying on text transcripts. They claim it's difficult for smaller models to understand the long-term patterns in audio, but I've already managed to do it with a massive audiobook dataset. I believe I can make it work with this new architecture too.
If I am successful I will release the code for training this architecture.

Native Audio-to-Audio model with no tricks (no TTS, no Whisper or anything else) just a pure transformer based architecture (MH Casual Attention, basic MLP with gelu activation), Snac as tokenizer, I pretokenize dataset for faster training.
In my experience you will need aprox ~ hundreds of hours of consistent and high quality audio dataset ~100 millions of codec logits (in my case 32000 hz model). You will have to preprocess audio into single mono channel because snac does not support stereo, also checkout WavTokenizer which is OSS SOTA for audio tokenization (currently only speech model) that was specifically designed for gpt-4o type of models.

Hi, guys. We cannot guarantee that we can release the training code, so we don't want to give anyone false hope. However, with the inference code, the training is all about the data preparing and compute loss as the LLM does, if there are any implementation issues, we are glad to help.

I've been working with my own code for training a transformer Audio-to-Audio models, even before this project came out. I'm going to try and adapt my code to work with their model design and the way they break down audio data. My goal is to train a model directly on audio, without relying on text transcripts. They claim it's difficult for smaller models to understand the long-term patterns in audio, but I've already managed to do it with a massive audiobook dataset. I believe I can make it work with this new architecture too. If I am successful I will release the code for training this architecture.

hi @nanowell , indeed, we found that if we predicted the audio tokens directly, the output was much worse than the parallel decoding. I think SpeechGPT and Spectron did speech-to-speech with QuestionAudio-QuestionText-AnswerText-AnswerAudio way, they may also found out that generating audio condtion on text was easier, and It makes sence intuitively. Of course, we will be excited to see you can make it work. Also ,we are glad to discuss more about it.

Hi, guys. We cannot guarantee that we can release the training code, so we don't want to give anyone false hope. However, with the inference code, the training is all about the data preparing and compute loss as the LLM does, if there are any implementation issues, we are glad to help.

hi @mini-omni , 有俩关于训练的问题请教一下：
1、在第一阶段的多模态对齐的过程中，论文里提到是用ASR和TTS数据训练模型的ASR和TTS能力，换句话说模型是同时支持ASR和TTS的，可是图3中第一阶段为什么只有语音的输入？没有文本的输入如何做TTS呢？
2、训练阶段的task是不是只有A1|A2,A1|T2,T1|T2,T1|T2四种情况？

Hi, guys. We cannot guarantee that we can release the training code, so we don't want to give anyone false hope. However, with the inference code, the training is all about the data preparing and compute loss as the LLM does, if there are any implementation issues, we are glad to help.

hi @mini-omni , 有俩关于训练的问题请教一下： 1、在第一阶段的多模态对齐的过程中，论文里提到是用ASR和TTS数据训练模型的ASR和TTS能力，换句话说模型是同时支持ASR和TTS的，可是图3中第一阶段为什么只有语音的输入？没有文本的输入如何做TTS呢？ 2、训练阶段的task是不是只有A1|A2,A1|T2,T1|T2,T1|T2四种情况？

hi,
1、你观察很对，这里图示有些问题。asr, tts同时做adapter训练时，需要同时支持音频和文本输入。
2、ASR会有 A1T1，TTS则会有T1A1

I'll close it for now, please feel free to re-open.


onHover (on entire editor area) results in selecting bold

Every time when I hover over quill editor Bold in the toolbar is highlighted and on click (anywhere on the editor area) it gets selected.
Component code looks as follows:
import React, { Component } from 'react'

import theme from 'react-quill/dist/quill.snow.css'

export default class JobHtmlEditor extends Component {
  constructor(props) {
    super(props)
    if (typeof window !== 'undefined') {
      this.ReactQuill = require('react-quill')
    }
  }

  render() {
    var { onContentChange } = this.props;
    const ReactQuill = this.ReactQuill;

    if (typeof window !== 'undefined' && ReactQuill) {
      return (
        <ReactQuill
          onChange={onContentChange.bind(this)}
          value={this.props.value}
          modules={{toolbar: [
            ['bold', 'italic'],
            [{'list': 'ordered'},{'list': 'bullet'}]
          ]}}
          formats={[
            'bold', 'italic',
            'list', 'bullet'
          ]}
          className={"m-t-2"}
        />
      )
    } else {
      return <textarea />;
    }
  }
}

And I use it this way:
<JobHtmlEditor value={this.state.description}
     onContentChange={this.handleChangeDescription.bind(this)} />

Any ideas?
Quill version

[ ] 1.0.0

@shman2000 Unfortunately I cannot reproduce this behavior: https://codepen.io/alexkrolick/pen/xLgPMe?editors=0010
It is probably due to something outside the component.

I had the same problem. In my the reason of bug was the label wrapper. Maybe it will save time for someone.

I had the same problem. In my case the reason of bug was the label wrapper. Maybe it will save time for someone.

This was my problem!! Thank you

I am having this issue, and when I remove the label I no longer have the issue. However, for Formik validation and behaviour, I need the component to be within the label. Why would this be occurring inside the label? Is there a fix or workaround that does not involve removing the label?

Incredible.  Thank you @maxim-pushchinskiy!  Saved my morning.
@emillium The reason the label breaks it (I realize now) is that clicking on a label focuses any wrapped input and in this case the first focus target in quill is the first button in the toolbar.


Log 500 responses as errors

Scope of changes
This fixes our custom GinLogger so that we are logging 500 internal server error responses under the error level rather than the info level to improve visibility.
SC-8522
Type of change

[x] bug fix
[ ] new feature
[ ] documentation
[ ] other (describe)

Acceptance criteria
Describe how reviewers can test this change to be sure that it works correctly. Add a checklist if possible
Author checklist

[ ] I have manually tested the change and/or added automation in the form of unit tests or integration tests
[ ]  I have updated the dependencies list
[ ]  I have recompiled and included new protocol buffers to reflect changes I made
[ ]  I have added new test fixtures as needed to support added tests
[x]   Check this box if a reviewer can merge this pull request after approval (leave it unchecked if you want to do it yourself)
[x]  I have moved the associated Shortcut story to "Ready for Review"

Reviewer(s) checklist

[ ] Any new user-facing content that has been added for this PR has been QA'ed to ensure correct grammar, spelling, and understandability.

Codecov Report

Merging #774 (6bdb550) into main (4baa498) will decrease coverage by 6.00%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #774      +/-   ##
==========================================
- Coverage   44.14%   38.13%   -6.01%
==========================================
  Files         587      155     -432
  Lines       22281     2431   -19850
  Branches     1330      618     -712
==========================================
- Hits         9835      927    -8908
+ Misses      11168     1327    -9841
+ Partials     1278      177    -1101

Flag
Coverage Δ

unittests
38.13% <ø> (-6.01%)
:arrow_down:

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

Impacted Files
Coverage Δ

...b.com/trisacrypto/directory/pkg/utils/wire/wire.go

...rc/components/CertificateManagement/Statistics.tsx

...eb/gds-user-ui/src/components/TableRow/RowItem.tsx

web/gds-user-ui/src/components/ui/AlertMessage.tsx

...m/trisacrypto/directory/pkg/gds/store/trtl/mock.go

web/gds-user-ui/src/components/Sidebar/NavItem.tsx

web/gds-user-ui/src/layouts/DashboardLayout.tsx

...i/src/components/Section/CreateAccount.stories.tsx

...-ui/src/components/CertificateManagement/index.tsx

...m/trisacrypto/directory/pkg/gds/admin/v2/decode.go

... and 422 more

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


consul_agent of api_z1 fails to start on cf v245, v246

I tried to deploy CF on Azure with latest CF release v246, I got an error saying that consul_agent fail to start:
  Started updating job consul_z1 > consul_z1/0 (d651ce0e-09da-4f1b-b46a-5b57b076bfe6) (canary). Done (00:02:32)
  Started updating job ha_proxy_z1 > ha_proxy_z1/0 (fb6c67a6-5ccd-4363-a7f3-fae9aa9f7e7a) (canary)
  Started updating job nats_z1 > nats_z1/0 (40a6f41a-19d3-4d01-a27c-a6fd20d904d0) (canary). Done (00:00:50)
     Done updating job ha_proxy_z1 > ha_proxy_z1/0 (fb6c67a6-5ccd-4363-a7f3-fae9aa9f7e7a) (canary) (00:01:15)
  Started updating job etcd_z1 > etcd_z1/0 (d8f8f937-182d-4b4c-b523-88e557149265) (canary). Done (00:09:40)
  Started updating job stats_z1 > stats_z1/0 (ce9e6675-bf4c-4d53-be91-81d2416ad671) (canary)
  Started updating job blobstore_z1 > blobstore_z1/0 (187bd76e-5c8d-4570-bbaf-6502ab252bd0) (canary)
     Done updating job stats_z1 > stats_z1/0 (ce9e6675-bf4c-4d53-be91-81d2416ad671) (canary) (00:00:50)
     Done updating job blobstore_z1 > blobstore_z1/0 (187bd76e-5c8d-4570-bbaf-6502ab252bd0) (canary) (00:09:43)
  Started updating job postgres_z1 > postgres_z1/0 (0e836cd3-2c69-4018-8cfb-06f4fa3dbaa1) (canary). Done (00:05:34)
  Started updating job doppler_z1 > doppler_z1/0 (609e5b10-0090-4419-a216-7b6efd9e6670) (canary)
  Started updating job api_worker_z1 > api_worker_z1/0 (ca47dc41-8f3e-444c-afd2-65720803d85f) (canary)
  Started updating job router_z1 > router_z1/0 (b62682c1-a0ea-452d-93a7-c9d5ee991feb) (canary)
  Started updating job clock_global > clock_global/0 (80a03b2c-e88d-4eee-a40a-a4f1e926d3d4) (canary)
  Started updating job loggregator_trafficcontroller_z1 > loggregator_trafficcontroller_z1/0 (7abd32d3-97b2-443c-8047-6f17c95c9794) (canary)
  Started updating job uaa_z1 > uaa_z1/0 (bf6618f9-237e-4faa-a313-a0904b430ffd) (canary)
  Started updating job api_z1 > api_z1/0 (36475998-fd77-410a-a078-990ec3e8946a) (canary)
     Done updating job router_z1 > router_z1/0 (b62682c1-a0ea-452d-93a7-c9d5ee991feb) (canary) (00:00:47)
     Done updating job doppler_z1 > doppler_z1/0 (609e5b10-0090-4419-a216-7b6efd9e6670) (canary) (00:00:50)
     Done updating job loggregator_trafficcontroller_z1 > loggregator_trafficcontroller_z1/0 (7abd32d3-97b2-443c-8047-6f17c95c9794) (canary) (00:00:54)
     Done updating job uaa_z1 > uaa_z1/0 (bf6618f9-237e-4faa-a313-a0904b430ffd) (canary) (00:01:57)
     Done updating job api_worker_z1 > api_worker_z1/0 (ca47dc41-8f3e-444c-afd2-65720803d85f) (canary) (00:02:45)
     Done updating job clock_global > clock_global/0 (80a03b2c-e88d-4eee-a40a-a4f1e926d3d4) (canary) (00:02:48)
   Failed updating job api_z1 > api_z1/0 (36475998-fd77-410a-a078-990ec3e8946a) (canary): 'api_z1/0 (36475998-fd77-410a-a078-990ec3e8946a)' is not running after update. Review logs for failed jobs: consul_agent, cloud_controller_ng, cloud_controller_worker_local_1, cloud_controller_worker_local_2, nginx_cc, metron_agent (00:12:31)

Error 400007: 'api_z1/0 (36475998-fd77-410a-a078-990ec3e8946a)' is not running after update. Review logs for failed jobs: consul_agent, cloud_controller_ng, cloud_controller_worker_local_1, cloud_controller_worker_local_2, nginx_cc, metron_agent

but after a while when I login in to api_z1, it is weird that all services were up with "monit summary"
Process 'consul_agent'              running
Process 'cloud_controller_ng'       running
Process 'cloud_controller_worker_local_1' running
Process 'cloud_controller_worker_local_2' running
Process 'nginx_cc'                  running
Process 'metron_agent'              running
Process 'statsd-injector'           running
Process 'route_registrar'           running
System 'system_localhost'           running

In /var/vcap/monit/monit.log, I did see that consul_agent failed to restart several times, though it finally  started but the deployment already failed.
[UTC Nov 14 04:58:01] error    : 'consul_agent' process is not running
[UTC Nov 14 04:58:01] info     : 'consul_agent' trying to restart
[UTC Nov 14 04:58:01] info     : 'consul_agent' start: /var/vcap/jobs/consul_agent/bin/agent_ctl
[UTC Nov 14 04:59:01] error    : 'consul_agent' failed to start
[UTC Nov 14 04:59:01] error    : 'cloud_controller_ng' process is not running
[UTC Nov 14 04:59:01] info     : 'cloud_controller_ng' trying to restart
[UTC Nov 14 04:59:01] info     : 'nginx_cc' stop: /var/vcap/jobs/cloud_controller_ng/bin/nginx_ctl
[UTC Nov 14 04:59:02] info     : 'cloud_controller_ng' start: /var/vcap/jobs/cloud_controller_ng/bin/cloud_controller_ng_ctl
[UTC Nov 14 04:59:32] error    : 'cloud_controller_ng' failed to start
[UTC Nov 14 04:59:32] info     : 'nginx_cc' start: /var/vcap/jobs/cloud_controller_ng/bin/nginx_ctl
[UTC Nov 14 04:59:33] error    : 'cloud_controller_worker_local_1' process is not running
[UTC Nov 14 04:59:33] info     : 'cloud_controller_worker_local_1' trying to restart
[UTC Nov 14 04:59:33] info     : 'cloud_controller_worker_local_1' start: /var/vcap/jobs/cloud_controller_ng/bin/cloud_controller_worker_ctl
[UTC Nov 14 04:59:34] error    : 'cloud_controller_worker_local_2' process is not running
[UTC Nov 14 04:59:34] info     : 'cloud_controller_worker_local_2' trying to restart
[UTC Nov 14 04:59:34] info     : 'cloud_controller_worker_local_2' start: /var/vcap/jobs/cloud_controller_ng/bin/cloud_controller_worker_ctl
[UTC Nov 14 04:59:35] error    : 'metron_agent' process is not running
[UTC Nov 14 04:59:35] info     : 'metron_agent' trying to restart
[UTC Nov 14 04:59:35] info     : 'metron_agent' start: /var/vcap/jobs/metron_agent/bin/metron_agent_ctl
[UTC Nov 14 04:59:46] error    : 'consul_agent' process is not running
[UTC Nov 14 04:59:46] info     : 'consul_agent' trying to restart
[UTC Nov 14 04:59:46] info     : 'consul_agent' start: /var/vcap/jobs/consul_agent/bin/agent_ctl
[UTC Nov 14 05:00:46] error    : 'consul_agent' failed to start
[UTC Nov 14 05:00:46] error    : 'cloud_controller_ng' process is not running
[UTC Nov 14 05:00:46] info     : 'cloud_controller_ng' trying to restart
[UTC Nov 14 05:00:46] info     : 'nginx_cc' stop: /var/vcap/jobs/cloud_controller_ng/bin/nginx_ctl
[UTC Nov 14 05:00:47] info     : 'cloud_controller_ng' start: /var/vcap/jobs/cloud_controller_ng/bin/cloud_controller_ng_ctl
[UTC Nov 14 05:01:17] error    : 'cloud_controller_ng' failed to start
[UTC Nov 14 05:01:17] info     : 'nginx_cc' start: /var/vcap/jobs/cloud_controller_ng/bin/nginx_ctl
[UTC Nov 14 05:01:18] error    : 'cloud_controller_worker_local_1' process is not running
[UTC Nov 14 05:01:18] info     : 'cloud_controller_worker_local_1' trying to restart
[UTC Nov 14 05:01:18] info     : 'cloud_controller_worker_local_1' start: /var/vcap/jobs/cloud_controller_ng/bin/cloud_controller_worker_ctl
[UTC Nov 14 05:01:19] error    : 'cloud_controller_worker_local_2' process is not running
[UTC Nov 14 05:01:19] info     : 'cloud_controller_worker_local_2' trying to restart
[UTC Nov 14 05:01:19] info     : 'cloud_controller_worker_local_2' start: /var/vcap/jobs/cloud_controller_ng/bin/cloud_controller_worker_ctl
[UTC Nov 14 05:01:20] error    : 'metron_agent' process is not running
[UTC Nov 14 05:01:20] info     : 'metron_agent' trying to restart
[UTC Nov 14 05:01:20] info     : 'metron_agent' start: /var/vcap/jobs/metron_agent/bin/metron_agent_ctl
[UTC Nov 14 05:01:31] error    : 'consul_agent' process is not running
[UTC Nov 14 05:01:31] info     : 'consul_agent' trying to restart
[UTC Nov 14 05:01:31] info     : 'consul_agent' start: /var/vcap/jobs/consul_agent/bin/agent_ctl
[UTC Nov 14 05:01:33] info     : 'consul_agent' started
[UTC Nov 14 05:01:33] error    : 'cloud_controller_ng' process is not running
[UTC Nov 14 05:01:33] info     : 'cloud_controller_ng' trying to restart
[UTC Nov 14 05:01:33] info     : 'nginx_cc' stop: /var/vcap/jobs/cloud_controller_ng/bin/nginx_ctl
[UTC Nov 14 05:01:34] info     : 'cloud_controller_ng' start: /var/vcap/jobs/cloud_controller_ng/bin/cloud_controller_ng_ctl
[UTC Nov 14 05:01:39] info     : 'cloud_controller_ng' started
[UTC Nov 14 05:01:39] info     : 'nginx_cc' start: /var/vcap/jobs/cloud_controller_ng/bin/nginx_ctl
[UTC Nov 14 05:01:39] info     : 'cloud_controller_worker_local_1' process is running with pid 18605
[UTC Nov 14 05:01:39] info     : 'cloud_controller_worker_local_2' process is running with pid 18643
[UTC Nov 14 05:01:39] info     : 'metron_agent' process is running with pid 18760
[UTC Nov 14 05:01:49] info     : 'consul_agent' process is running with pid 18862
[UTC Nov 14 05:01:49] info     : 'cloud_controller_ng' process is running with pid 18919

Here is the log from /var/vcap/sys/log/consul_agent/consul_agent.stdout.log
{"timestamp":"1479098938.659449339","source":"confab","message":"confab.config-writer.write.determine-node-name.failed","log_level":2,"data":{"error":"stat /var/vcap/data/consul_agent: no such file or directory"}}
{"timestamp":"1479098938.660192013","source":"confab","message":"confab.controller.stop-agent.leave","log_level":1,"data":{}}
{"timestamp":"1479098938.660209656","source":"confab","message":"confab.agent-client.leave.nil-rpc-client","log_level":2,"data":{"error":"consul rpc client is nil"}}
{"timestamp":"1479098938.660218477","source":"confab","message":"confab.controller.stop-agent.leave.failed","log_level":2,"data":{"error":"consul rpc client is nil"}}
{"timestamp":"1479098938.660224676","source":"confab","message":"confab.controller.stop-agent.stop","log_level":1,"data":{}}
{"timestamp":"1479098938.660230160","source":"confab","message":"confab.agent-runner.stop.get-process","log_level":1,"data":{}}
{"timestamp":"1479098938.660243988","source":"confab","message":"confab.agent-runner.stop.get-process.failed","log_level":2,"data":{"error":"open /var/vcap/sys/run/consul_agent/consul_agent.pid: no such file or directory"}}
{"timestamp":"1479098938.660255432","source":"confab","message":"confab.controller.stop-agent.stop.failed","log_level":2,"data":{"error":"open /var/vcap/sys/run/consul_agent/consul_agent.pid: no such file or directory"}}
{"timestamp":"1479098938.660261869","source":"confab","message":"confab.controller.stop-agent.wait","log_level":1,"data":{}}
{"timestamp":"1479098938.660266399","source":"confab","message":"confab.agent-runner.wait.get-process","log_level":1,"data":{}}
{"timestamp":"1479098938.660275459","source":"confab","message":"confab.agent-runner.wait.get-process.failed","log_level":2,"data":{"error":"open /var/vcap/sys/run/consul_agent/consul_agent.pid: no such file or directory"}}
{"timestamp":"1479098938.660284042","source":"confab","message":"confab.controller.stop-agent.wait.failed","log_level":2,"data":{"error":"open /var/vcap/sys/run/consul_agent/consul_agent.pid: no such file or directory"}}
{"timestamp":"1479098938.660290241","source":"confab","message":"confab.controller.stop-agent.cleanup","log_level":1,"data":{}}
{"timestamp":"1479098938.660310984","source":"confab","message":"confab.agent-runner.cleanup.remove","log_level":1,"data":{"pidfile":"/var/vcap/sys/run/consul_agent/consul_agent.pid"}}
{"timestamp":"1479098938.660331726","source":"confab","message":"confab.agent-runner.cleanup.remove.failed","log_level":2,"data":{"error":"remove /var/vcap/sys/run/consul_agent/consul_agent.pid: no such file or directory","pidfile":"/var/vcap/sys/run/consul_agent/consul_agent.pid"}}
{"timestamp":"1479098938.660344124","source":"confab","message":"confab.controller.stop-agent.cleanup.failed","log_level":2,"data":{"error":"remove /var/vcap/sys/run/consul_agent/consul_agent.pid: no such file or directory"}}
{"timestamp":"1479098938.660401106","source":"confab","message":"confab.controller.stop-agent.success","log_level":1,"data":{}}

And the log from /var/vcap/sys/log/consul_agent/agent_ctl.err.log
[2016-11-14 04:48:58+0000] + main start
[2016-11-14 04:48:58+0000] + mkdir -p /var/vcap/sys/run/consul_agent
[2016-11-14 04:48:58+0000] + case ${1} in
[2016-11-14 04:48:58+0000] + start_confab
[2016-11-14 04:48:58+0000] + local nameservers
[2016-11-14 04:48:58+0000] + nameservers=("$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}' | grep -Ev '<IP_ADDRESS>\b')")
[2016-11-14 04:48:58+0000] ++ cat /etc/resolv.conf
[2016-11-14 04:48:58+0000] ++ grep nameserver
[2016-11-14 04:48:58+0000] ++ awk '{print $2}'
[2016-11-14 04:48:58+0000] ++ grep -Ev '<IP_ADDRESS>\b'
[2016-11-14 04:48:58+0000] + local recursors
[2016-11-14 04:48:58+0000] + recursors=
[2016-11-14 04:48:58+0000] + for nameserver in '${nameservers[@]}'
[2016-11-14 04:48:58+0000] + recursors=' -recursor=<IP_ADDRESS>'
[2016-11-14 04:48:58+0000] + for nameserver in '${nameservers[@]}'
[2016-11-14 04:48:58+0000] + recursors=' -recursor=<IP_ADDRESS> -recursor=<IP_ADDRESS>'
[2016-11-14 04:48:58+0000] + for nameserver in '${nameservers[@]}'
[2016-11-14 04:48:58+0000] + recursors=' -recursor=<IP_ADDRESS> -recursor=<IP_ADDRESS> -recursor=<IP_ADDRESS>'
[2016-11-14 04:48:58+0000] + /var/vcap/packages/confab/bin/confab start -recursor=<IP_ADDRESS> -recursor=<IP_ADDRESS> -recursor=<IP_ADDRESS> --config-file /var/vcap/jobs/consul_agent/confab.json
[2016-11-14 04:48:58+0000] ++ logger -p user.info -t vcap.consul-agent
[2016-11-14 04:48:58+0000] ++ tee -a /var/vcap/sys/log/consul_agent/consul_agent.stderr.log
[2016-11-14 04:48:58+0000] ++ logger -p user.error -t vcap.consul-agent
[2016-11-14 04:48:58+0000] ++ tee -a /var/vcap/sys/log/consul_agent/consul_agent.stdout.log

Since the services were up, so I tried to use 'bosh -n deploy' to continue deployment without any change in my environment, it did go ahead and finally deploy successfully. BUT if I deleted the whole deployment and re-deploy it, it failed in starting consul_agent of api_z1 again. (always reproduced) :( :(
The issue exists in CF v245, v246, but not in v244. With v244, it can be deployed using the same manifest without any error. here is my manifest.
Can anyone kindly help to see what is the problem here? why consul_agent failed to start for the first time?

Hi @gossion. This definitely seems like a consul issue. I'm going to rope in @zankich and @christianang from the team that maintains consul-release, to see if they can help.
Infrastructure team, can you guys look at these logs and help troubleshoot what's going on?
Thanks,
David
CF Release Integration

Hey @gossion looks like this is the problem:
{"timestamp":"1479098938.659449339","source":"confab","message":"confab.config-writer.write.determine-node-name.failed","log_level":2,"data":{"error":"stat /var/vcap/data/consul_agent: no such file or directory"}}
The /var/vcap/data/consul_agent directory is created by BOSH during the pre-start process. If you execute a bosh stop api_z1/0 and then a bosh start api_z1/0, that should recreate the required directories. If that comes up cleanly, then you can redeploy your CF.

@zankich One thing that's interesting is that it seems to fail consistently on the initial deploy. Is there something going on regarding the timing of pre-start and consul startup?
@gossion, could you provide the logs for the pre-start process?

Log for api_z1 was uploaded to this link. This is a new deployment (failed at starting consul_agent), so the timestamp is different from when I submit the issue.
Thank you!

@zankich @evanfarrar Can somebody from the infrastructure team help with this issue?

Hi,
I don't see the error when I upgrade cf to v250, looks like it is fixed.
This issue can be closed if you don't have any further finding.
Thanks

@gossion. I'll close the issue, but feel free to reopen the issue if see this again.


query 'select * from user' returns error even if there is a 'user' series

Version : 0.9.0
Source: https://s3.amazonaws.com/influxdb/influxdb_0.9.0_amd64.deb
OS: Ubuntu
Steps :
#Create new db
curl -G http://localhost:8086/query --data-urlencode "q=CREATE DATABASE mydb"
#Create and write to a series name 'user'
curl -i -XPOST 'http://localhost:8086/write?db=mydb' -d 'user name="john"'
#Create and write to a series name 'tenant'
curl -i -XPOST 'http://localhost:8086/write?db=mydb' -d 'tenant name="mike"'
#Query the series 'tenant', returns data
curl -G 'http://localhost:8086/query' --data-urlencode "db=mydb" --data-urlencode "q=SELECT * FROM tenant"

{
  "results": [
    {
      "series": [
        {
          "name": "tenant",
          "columns": [
            "time",
            "name"
          ],
          "values": [
            [
              "2015-06-22T22:33:17.003586465Z",
              "mike"
            ]
          ]
        }
      ]
    }
  ]
}

#Query the series 'user', returns error:
curl -G 'http://localhost:8086/query' --data-urlencode "db=mydb" --data-urlencode "q=SELECT * FROM user"
"error parsing query: found USER, expected identifier at line 1, char 15"
I know that "USER" is kind of a keyword in InfluxDB 0.9, is that the reason why the SELECT query fails ? If so, are there any other ways we can operate a series named "user" ?

@imlk you need to surround the measurement name in double-quotes so that the parser knows it's an identifier and not the reserved word, USER.
SELECT * FROM "user"

@beckettsean Thanks


Increase max retries for GitHub datasets

As GitHub recurrently raises connectivity issues, this PR increases the number of max retries to request GitHub datasets, as previously done for GitHub metrics:

#4063

Note that this is a temporary solution, while we decide when and how to load GitHub datasets from the Hub:

#4059

Fix #2048
Related to:

#4051
#3210
#2787
#2075
#2036

CC: @lhoestq

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


prctl(PR_SET_PDEATHSIG, ...) should be called after fork(), not before

From the official Linux documentation:
The parent-death signal setting is cleared for the child of a fork(2).

So, calling prctl(PR_SET_PDEATHSIG, ...) before spawn(), which is currently the case, doesn't make sense.

The commit that introduced this explains the use case:
https://github.com/krallin/tini/commit/eb0f6de3a5efc57bba81992ad8463494a6f45c4a
Their goal was indeed to signal Tini when its parent dies, not to signal
Tini’s child when Tini dies.
On Tue, 13 Jun 2023 at 16:24, Igor Anferov @.***> wrote:

From the official Linux documentation
https://man7.org/linux/man-pages/man2/prctl.2.html:
The parent-death signal setting is cleared for the child of a fork(2).
So, calling prctl(PR_SET_PDEATHSIG, ...) before spawn(), which is
currently the case, doesn't make sense.
—
Reply to this email directly, view it on GitHub
https://github.com/krallin/tini/issues/213, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AANIHVTRI5BEKRWQ4PPLPCLXLBZYXANCNFSM6AAAAAAZE6XQOM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Aaah, I see, thanks for your explanation. But I still don't understand the last phrase from the commit message:
    $ unshare --pid --fork setpriv --reuid user tini -s -p SIGKILL -- <prog>

As soon as unshare is getting killed, tini will get signalled SIGKILL
and exit as well, tearing down <prog> with it.

Why would  be torn down in this case?

When you’re in a PID namespace and PID1 in that namespace exits the rest of
the namespace will be killed too
On Wed, 14 Jun 2023 at 01:40, Igor Anferov @.***> wrote:

Aaah, I see, thanks for your explanation. But I still don't understand the
last phrase from the commit message:
$ unshare --pid --fork setpriv --reuid user tini -s -p SIGKILL -- <prog>

As soon as unshare is getting killed, tini will get signalled SIGKILL
and exit as well, tearing down  with it.
Why would be torn down in this case?
—
Reply to this email directly, view it on GitHub
https://github.com/krallin/tini/issues/213#issuecomment-1590199240, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AANIHVSNLP3L2GOOV7GBTXLXLD27TANCNFSM6AAAAAAZE6XQOM
.
You are receiving this because you commented.Message ID:
@.***>

Got it, thank you!


Fix styling of access management card of collection right panel.

Fixes FAIRSPC-49

I noticed another inconsistency, compare left padding with the neighbor components. Not sure if it should be fixed in the scope of this ticket, up to you

if you decide to leave it as is in the scope of this ticket,  I am ok with it, feel free to merge


management database corrupted missing ibdata1

hi,
can anyone help me?
my management server database corruped and file ibdata1 error only 60kb size..
and my kvm host went down..
is there any way to fix this?
or at least run the kvm for awhile

@udee297 kindly join the users list and ask questions there: http://cloudstack.apache.org/mailing-lists.html


loopback 'block' CSI for GCS users

I am aware of many discussions where we did consider using 'loopback' devices (losetup) as a block device, where it just uses a file on glusterfs as backend.
This has both challenges and benefits. Happy to discuss this further as experimental option for GCS.
People with some thoughts on this, please share your opinion, observation, and requirements, so we can collect it, and see if we can come out with some design which is agreed from everyone!
@JohnStrunk @obnoxxx @raghavendra-talur @vbellur @pkalever @pranithk @ShyamsundarR @jarrpa @phlogistonjohn  @humblec @lxbsz @aravindavk @Madhu-1 @atinmu @poornimag

Certainly this feature would mean a world of simplification from a CSI-based deployment standpoint. It would mean that a gluster-block node driver wouldn't need to bundle any special packages, and could just make use of the FUSE client in the glusterfs node driver.

We briefly discussed other ways (in addition to loopback itself) to accomplish a similar behavior:

loopback
nbd (or nbdkit)
tcmu runner (without iscsi)

These would all accomplish the goal of isolating the "block-ness" within the CSI mount container and it would only "talk gluster" to the outside world. Certainly, loopback would be the easiest to prototoype, but one of the alternatives may prove more robust for production cases. More research is needed for those though :-)
CC: @nixpanic

One of the potential issues with a loopback device backed by a network filesystem is that there may be a deadlock when the system gets under memory pressure. This has been reported for loopback mounts on NFS-exports. The problem manifests itself like:

system has little or no free memory
filesystem on a loopback device gets instructed to flush data
memory allocations are needed to flush the data to the underlying network filesystem
the underlying network filesystem (NFS-client, possibly FUSE as well) needs to allocate memory to transport the data to the server
memory allocations trigger memory reclaiming, looping back to (2) above

This is something that needs careful reviewing and testing.

I had posted this in a non-public list a while back, cleaned it up and posting it here again. It's long, but represents what we did with loopback devices and Gluster in an Openshift cluster.
Here is where we were (@JohnStrunk  and self) at with our investigation on using loop back devices to serve RWO PVs in an Openshift cloud instance environment. Learning is not specific to that environment, hence posting it here.
Modal of delivery was based on k8s Flexvol driver, and the work can be found here [1]. This is mostly irrelevant to the discussion below, but better to get it out of the way.
The intention to look at loop back devices was to address scale and small file performance issues in the said Openshift clusters. The scale required was supporting 5k 1GB PVs from a single 3 node replicated volume, backed by a 1TB EBS volume, with 50% of the disk reserved for snapshots (so in essence 500GB disk for Gluster). The performance issue can be summarized time to untar a medium sized tarball, to a PV backed by Gluster in the FUSE mode (used as a shared file system), versus running it against a local FS backed by a FUSE file used as a block device, the latter of course wins (and has its own set of learnings to poke and prod).
Fact: Any local FS backed by a file over a network is faster, for small file workloads, as a lot of operations are actually happening on the page cache, and flushed when needed, thus reducing a lot of network chatter that is otherwise evident in any network file system (NFS, SMB, Gluster, ). This basically means we are reducing multiple network round trips to complete an operation, when using such mechanisms. As a result loop back devices are also fast. We are not (yet) bothered about are they faster than iSCSI or something else, as the speed gain needed was for the untar (like) workload, that any block based solution, improves by a factor of around 10x or more (and this is an extremely conservative number) [6].
It was pointed out earlier by @vbellur that loop devices on Fedora scale to the 1000's (I forget the exact number but I think he mentioned 8k). With this data, loop devices started to look interesting again, as part of the scale needs are met.
Reestablishing the scale test was done, and I scaled up to 1k devices. Further there was some reading about loopctl and loop device kernel code to start looking at this more factually than empirically [7].
One of the interesting discoveries (empirically again hence a discovery) was that I was able to go up to, creating backing file, XFS formatting and mounting ~815 loop devices on a 1GB RAM virtual (vagrant based) machine running RHEL 7, and to test up to 1k loop devices, I had to increase this to 2GB (which also gave it enough head room for other processes). This test though is to create and mount, not perform IO on these mounts. This is useful when considering the production environments and what machine requirements we need to set forth for them.
Next test/check was to ensure that loop devices support discard, so that an in use PV as it churns data, keeps the backing file size optimal. Loop devices on Linux, do support discard, and this works as required, hence this need was satisfied. This is key as we over-provision in the said Openshift environment by a factor of 10x, 1GB * 5000(PVs) = ~5TB and we have a 500 GB drive and so need to over provision or thin provision, and ensure consumed space is optimal and not wasted.
Also, thin-provisioning was possible as the backing file is created as a sparse file, with just a logical offset of 1GB.
Some further loop device kernel code reading, and looking at other block devices that support a similar kernel abstraction, helped understand that CPEH kRBD also uses a similar approach. At this point loop devices started looking more interesting, than possibly being treated as just a toy.
The problems to investigate then went to, write-ordering and ensuring we do not break it in Gluster. Write-ordering in the Linux kernel currently works as in [2]. With loop device driver, this gets transformed into a fsync [3]. So, again, using loop devices backed by a gluster file (accessed via a FUSE mount), satisfied this property (we do support fsync through our stack).
The next problem was to tackle double caching [4], and to ensure we do not get into a double cache situation with Gluster. This was simpler, like turning off the various data caches in the FUSE graph is almost enough (I would like to revisit this if we went down this path to ensure we are good at all layers in the client) to address this problem on the client machine. As gluster in this setup is not co-located with the client containers (like CNS), we did not need to bother about brick side XFS/device, page/buffer caching respectively.
The final problem to tackle was fencing the block device, IOW ensuring that there is only a single writer to the block device. This does not have a currently in built solution to the problem. The case is, when a client that was accessing the block device hangs or is unreachable, and the block device needs to be mounted elsewhere (assume another node), we
need to fence the first client from ever writing to the block device. This means ensuring that the loop device is unmounted, by the first mount definitively, before the second mount is allowed to access the same, and in situations where the first mount is not accessible, either allow the second mount to fail (hence requires administrator intervention, which is a non-starter in such workloads) or succeed and fence the first mount.
The fencing of the first mount needs systems like single active owner to be implemented in Gluster (or single open fd, or such), or loop back device code needs to have changes to add mandatory locking or similar constructs to be a functional solution. As this involves code changes, and will hit a RHGS release later than when we want this feature in production, the loop back device line of investigation was stalled.
Work to do, things to think about:

Scale testing and memory and network usage at scale
Snapshots: Per-RWO PV snapshots has the same/similar problems as iSCSI
based implementation

Overall, if fencing is addressed, loop back devices can help upto a point in addressing a more general purpose use case of block devices on Gluster. The remaining problems as in the current iSCSI based mechanism (like snapshots or cloning) still need to be addressed for both. Further, in GCS like environments the double caching has to be eliminated, as there is a fair probability that the client accessing the loop back is on the same node as the brick serving the same.
[1] loopback based PVs Flexvol github PR:
https://github.com/gluster/gluster-subvol/pull/18
[2] Linux kernel write-ordering: https://lwn.net/Articles/400541/
[3] fsync in loop devices:
https://github.com/torvalds/linux/blob/master/drivers/block/loop.c#L572
[4] Double caching:

https://www.quora.com/What-is-the-major-difference-between-the-buffer-cache-and-the-page-cache-Why-were-they-separate-entities-in-older-kernels-Why-were-they-merged-later-on
https://kernelnewbies.org/Linux_4.4#Faster_and_leaner_loop_device_with_Direct_I.2FO_and_Asynchronous_I.2FO_support

[5] Fencing 101: https://en.wikipedia.org/wiki/Fencing_(computing)
[6] Small scale performance of loop Vs single-AZ Vs multi-AZ
configurations:
https://docs.google.com/spreadsheets/d/1P9B90RXc2BnicR9qfNTeKuQ--8m4K7eLYixgkW_d6t4/edit#gid=0
[7] loop id allocation (needs more code reading):
https://github.com/torvalds/linux/blob/master/drivers/block/loop.c#L1772


Prevents polyfill by default in cases that support module.exports.

Generally within systems that support module.exports such as Node, it's a bad idea in NPM packages to ever alter the global state. Thus, it seems in Node we shouldn't execute the Polyfill by default.
From the docs itself it says
var Promise = require('es6-promise').Promise;

While if you did
var fake = require('es6-promise').Promise;
console.log(Promise === undefined); // false, What, where did this come from? I set it to fake.

You would still end up with Promise defined, that to me seems incorrect. I've altered the module.exports portion of the UMD to no longer leak the promise and execute the polyfill.

we plan to offer both polyfil and non-polyfil modules to import.
maybe
require('es6-promise').Promise;
require('es6-promise/polyfil');

My change doesn't alter existence of the polyfill or prevent it from working. It just doesn't make it the default behavior in module.exports environments.
In example, this will still work
require("es6-promise").polyfill();
console.log(Promise !== undefined); // true

It's 2 more key strokes than
require("es6-promise/polyfill");

So the user of the package can still opt in. Generally we don't want other modules that require this to use that mechanism within Node though. In example, the reason I'm here is that MongoDB requires es6-promise which causes MongoDB to leak, which causes my package mongolayer to leak. Even if you do add the require("es6-promise/polyfill") mechanism, which to me seems a little silly when you can just call polyfill(), but either way I don't think you'd want the default behavior to leak.

My change doesn't alter existence of the polyfill or prevent it from working. It just doesn't make it the default behavior in module.exports environments.

which changes the current behavior.

So what option is there for Node users that don't want to leak a global variable?

something like https://github.com/jakearchibald/es6-promise/pull/126#issuecomment-120542090 ?

I'm mega confused, are you're saying I should require("es6-promise/polyfill") in cases when I do not want to execute the polyfill? While I require("es6-promise") in cases that I do want to execute the polyfill? Isn't that backwards?

I'm suggesting we change he API to explicitly do one or the other. Not sometimes, in node don't polyfil but other times do.  two explicit paths that a user chooses seems best
It is also worth noting, this library only smashes the global when the global is missing or broken

I see. I'm not super familiar with the module, but is it fair to say that you currently support 3 loading patterns, CommonJS style ala requirejs, require ala node, and loading in via a standard browser script tag? For commonJS, it returns the ES6Promise object, same with require in node. In the browser it sets window.ES6Promise.
If you would like all 3 to not polyfill automatically, and expose a es6-require/polyfill which DOES polyfill, that wouldn't be too tricky to do. To my understanding doing that would require another distribution (due to the browser support). In all 3 envs, it is one liner to polyfill, is it worth creating another distribution simply for that case?
<script src="es6-promise"></script>
<script>
ES6Promise.polyfill();
</script>

I agree that this is a problem– I'd rather not leak a global variable into my node environment.

might be relevant: es-shim-api

we will change the polyfil behavior in 4x


Update and rename .github/workflows/macos.yml to .github/alur kerja/m…

github-recovery-codes.txt
…acos.yml
jhh

Thank you for contributing to Nokogiri! To help us prioritize, please take care to answer the questions below when you submit this pull request.
The Nokogiri core team work off of master, so please submit all PRs based on the master branch. We generally will cherry-pick relevant bug fixes onto the current release branch.
What problem is this PR intended to solve?
If there is an existing issue that describes this, feel free to simply link to that issue.
Otherwise, please provide enough context for the Nokogiri maintainers to understand your intent.
Have you included adequate test coverage?
We have a thorough test suite that allows us to create releases confidently and prevent accidental regressions. Any proposed change in behavior must be accompanied by tests.
If possible, please try to write the tests so that they communicate intent.
Does this change affect the C or the Java implementations?
If you're proposing a change to the C implementation, has the behavior change been made to the Java code as well? And vice versa?
If not, that may be OK, just please note it here.

https://en.wikipedia.org/wiki
20200711.log

:x: Build nokogiri 1.0.612 failed (commit https://github.com/sparklemotion/nokogiri/commit/3507f799ef by @inos123)

Please stop using this github project as your issue/PR opening playground.


[rbox] Created the rbox register definition files

The first step to deliver rbox files for the Silver integration. Just the hjson files.
-Eric

The CI check is failing because the commit was not signed off. When you amend the commit to address the comments, please run git commit --amend -s to fix that.

The CI check is failing because the commit was not signed off. When you amend the commit to address the comments, please run git commit --amend -s to fix that.

yep! btw, it seems like rst_slow_ni is used extensively in your code
already.. so maybe it would be easier to not change it?
it's really up to you.  We haven't been super strict about the naming
convention, so it's just a nice-to-do.
On Tue, Feb 16, 2021 at 4:56 PM esshiu<EMAIL_ADDRESS>wrote:

@esshiu commented on this pull request.
In hw/ip/rbox/data/rbox.hjson
https://github.com/lowRISC/opentitan/pull/4900#discussion_r577246377:

+{ name: "rbox",

clock_primary: "clk_i",
other_clock_list: [
"clk_aon_i"
]
bus_device: "tlul",
bus_host: "none",
reset_primary: "rst_ni",
other_reset_list: [
"rst_slow_ni"
],
interrupt_list: [
{ name: "rbox_intr_o",

 desc: "combo or keyboard triggered interrupt",

}
],

Okay. I understand the reset list. rbox has rst_ni and rst_slow_ni. So not
on the wakeup list. rbox is on the "Always-on" domain. I have interrupts to
wake up the CPU.
name: "PINMUX",
clock_primary: "clk_i",
reset_primary: "rst_ni",
other_clock_list: [
"clk_aon_i",
],
other_reset_list:
[
"rst_aon_ni"
],
bus_device: "tlul",
regwidth: "32",
wakeup_list: [
{ name: "aon_wkup_req",
desc: "pin wake request"
}
],
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/lowRISC/opentitan/pull/4900#discussion_r577246377,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH2RSVDPLJPCW7TKAM7WJDS7MH3ZANCNFSM4WLFA2HA
.


Azure Event Hubs bindings example

Describe the proposal
Sample app to demonstrate bindings with Azure Event Hubs bindings example

work in progress...

Hit issue #91 while working on this example

As you have closed #91 what's the status of your example?
Can we try to include it as an official one / following the original plan for making Kafka/Event Hubs exchangeable at https://github.com/dapr/samples/tree/master/5.bindings ?

I am still working on the example. But it will still not be able to "interchange" the usage of any Kafka cluster and Azure Event Hubs since the Kafka binding component does not support authentication (it's required for Event Hubs). This is merged via #77 but not integrated end to end with Dapr runtime

@abhirockzz Are you still working on this one?

Here is an example https://github.com/abhirockzz/dapr-kafka-eventhubs-bindings

This is generally covered here https://github.com/dapr/docs/tree/master/howto/send-events-with-output-bindings in the HowTos. We are also going to focus on creating a language specific set of docs


Environment related docs refine

Description
Refine all Environment related docs with descriptions and example usage

@microsoft-github-policy-service agree company="Microsoft"


chore(main): release 1.9.2

:robot: I have created a release beep boop
1.9.2 (2024-11-07)
Build System

update script package json (cb5668c)
updates packages (3bd2408)

Styles

update eslint (1eeb8a6)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/Basalt-Lab/basalt-logger/releases/tag/v1.9.2 :sunflower:


Bump web integration

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/CONTRIBUTING.md#commit
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[x] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Application (the showcase website) / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?

The webpack integration is tested against webpack 3.x, an aged version of webpack.
Issue Number: N/A
What is the new behavior?
This PR upgraded to the latest 4.x as well as webpack related loaders/plugins. Resolved any major bump breaking changes and replaced UglifyJsPlugin by TerserPlugin.
Does this PR introduce a breaking change?
[ ] Yes
[x] No

Other information
The rationale of each change is written in commit message.

thanks a lot @JLHwung , we have updated all dep in the next branch, you can check it.


Consider adding brightness profile product classes

There are arguments to be made for creating classes for brightness profiles, and stacked brightness profiles. Not least it would be easier to save and read back in profiles that I've already calculated.

I had a good think about this this morning, and I think it's a good idea to introduce a BaseProfile1D (and by extension maybe a BaseProfile2D later) product class. Then subclass for surface brightness, density profiles etc.


Add form submit method #130

This adds the submit helper method as discussed in #130. I looked at your other commits and tried to include all things necessary from a project point of view, but let me know if something is missing ;).
P.S. I only tested the solid implementation and the website changes! Could you try out the (p)react and qwik implementations for me, if you already have the proper setup for them?
P.P.S. The changelogs include generic dates which have to be updated on release

Thank you for your contribution! I will try to review the PR over the weekend.

You're welcome and thank you for the review in advance, no stress 😁👍

Thank you for this perfect PR! Will merge and publish it soon.

Awesome, thank you also for the edits :). Definitely a good idea to avoid the state-tracking sideeffects 🙏.


Order first index column using schema

Order first index column using field order from schema
Closes #97

This will also close #98 since the same function is used for the select options in the form.
Closes #98

Lovely PR @axelclark, thanks!


fixed referring to an undeclared constant value

I found a code that referring to an undeclared constant value which seems to a typo of "true".
If my guess is false, please reject this pull request.
Thank you.

Hi, I'm glad to see you around.
I did not see the Github notification about comments.
Hope you are doing well and having fun ^_^/

My regards for not letting the xoops die.
Much health and peace.
Hugs!

My regards for not letting the xoops die.
Much health and peace.
Hugs!

Hmm... It made me think...  🤔
Humans can have an idea and turn the idea into reality.

Neither armies, nor Cloud dictators, nor even mortality have power over them. People die, but their ideas do not.
Once the idea exists — The idea can be adapted. The idea can be changed. The idea can be renamed. The idea cannot die. The idea can only evolve !


Correct component naming.

Previously descriptors FinanceAggregateDescriptor and FinanceServiceDescriptor would both have generated a default name of finance.  This isn't ideal as we want to distinguish and also the name should include the type.  With this change the default names will be finance-aggregate and finanace-service, respectively.
Reviewer checklist

[ ] Ensure relevant issues are linked (description should include text like "Fixes #")
[ ] Ensure any appropriate documentation has been added or amended

Coverage decreased (-0.01%) to 97.661% when pulling 36ebd6285c279ed72c89950747642f890496e136 on default_naming into 9257bc21471485a83f21be039199f761378b8659 on main.


header: encode the pipe character | in the google font url

Academic currently contains the exact HTML font code provided by https://fonts.google.com , which does not encode the pipe character. For maintainability, I would prefer to keep it as the code provided by Google unless there is good reason to change it.

Otherwise every page generated will not be valid HTML5 pages.
And as explained in the comments of a stackoverflow question, it has been many years since this issue is present. It should be fixed by Google fonts, but unfortunately it is still not fixed.
I don't see how that is a maintainability issue? I don't think this url will change that often, and when it will be changed, if someone forgot to encode the pipe character, it could be fixed later on.

Thanks for clarifying the reasoning. Strange that Google still haven't got around to fixing it!

Just merged your PR - thanks for spotting this issue and contributing a fix :)


Document why packer needed here

It's completely unknown why we use packer with docker installation? The installation finishes successfully even packer part fails. Please document the purpose of it with just a few words at least

packer is only needed for building the docker image from source. if you are just consuming the docker image, then it's not required

Yes but this part should be properly documented I think

I agree, feel free to send a PR to improve the doc. Or even better, create a raw Dockerfile and move away from packer. I think the current setup is an overkill.


[FR]: GoogleCloudDisk processing requests should fail sooner for local installs

What is the feature you are proposing?
Currently a "local" installation of Turbinia will accept a GoogleCloudDisk processing request even if it won't be able to process it and all Tasks will fail with an error similar to Task Result was auto-closed from task executor on <worker name>  likely due to previous failures.  Previous status: [FileArtifactExtractionTask Task failed with exception: [name 'google_cloud' is not defined]].  It would be nice if either the client rejected this immediately or the API server rejected it when the request was submitted.  Previously turbiniactl was able to load the config and determine if the server was a cloud instance or not, but the turbinia-client doesn't necessarily have access to this, so it might need to be done at the API server.
What would this feature improve or what problem would it solve?
This will be much easier for users to understand because a) they see it earlier when the request is made and b) the error can be much clearer as to what the real problem is.
What alternatives have you considered?
n/a

FYI @jleaniz


sidebar size

Hi, and thanks for hotel that I realy often use.
I'd like to ask for a design improvments:

is it possible to change the color of the sidebar ?
is it possible to change the width of the sidebar ?

I am trying to develop a chrome extension for hotel and I have to say that the extension window is too much small at its maximum size and being able to lower the width of the sidebar would help a lot .
Thank you in advance,
Benjamin Caradeuc

I made the page responsive for mobile-sized viewports in https://github.com/typicode/hotel/pull/235, which will be in the next release. Does that look better for your usecase?

Yeah, that sounds great, I'm looking forward to having this :-)
Le 28 nov. 2017 11:43 PM, "Jed Fox"<EMAIL_ADDRESS>a écrit :

I made the page responsive for mobile-sized viewports in #235
https://github.com/typicode/hotel/pull/235, which will be in the next
release. Does that look better for your usecase?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/typicode/hotel/issues/246#issuecomment-347689087, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AFuNHGUs3ak2b_LXobrlupfN_rWrHQJhks5s7IyLgaJpZM4QuAKY
.


DOES THIS PROJECT IS COMPLETELY DONE?

Because I am getting some api error or error to create user :)

tell me your discord username also if you use dc

hi there
1.this project is not dont as mentioned in the readme.md as you cant even make servers theres not even a proper main page yet so please wait

my discord is p451.

closing due to inactivity


Relationship tests

Unit tests not only covering extensive amount of cases, but this also shows how amazing and mature our implementation became. Thank you so much for this masterpiece. Good testament of your skills. I guess this is no longer draft so approving it

Going to merge this. I noticed that the client generator plugin may need to be updated to work with new relationships but will do this in a separate PR.


hide go.mod file to avoid dependency on every history version

Because tidb and unistore is has cyclic dependency, go mod recursively check out every history version of tidb and unistore and add them in go.sum. If one version is missing, the build would fail.
So we hide the go.mod file in repository to break it. like the way https://github.com/pingcap/tidb-tools does.

LGTM


[FEATURE] RunWithLock (wrapper) (#1)

type name will be used as lock.LockOptions by other packages, and that stutters; consider calling this Options (golint)

feature RunWithLock

add go 1.9.2

coveralls

improve caching

fail when run coveralls.. https://travis-ci.org/im-kulikov/redis-lock/builds/300300629?utm_source=github_status&utm_medium=notification

@bsm ping 🙂

@cristaloleg, @edganiukov, @DmitriyMV thanks for review

@dim yep<EMAIL_ADDRESS>

@dim oops, last commit was not included in the merge

or rebase master with this changes

@im-kulikov don't worry, I will fix in my PR. Just one question: how is RetriesCount useful? I am struggling a bit with it as it makes things much more complicated for no obvious reason. You already have WaitRetry which is a delay between retries and a WaitTimeout which is the overall retry timeout. Given these two values, (additionally) counting the attempts seems unnecessary, no?

@dim hmm.. not quite. look, if you want to repeat only a certain number of times - it is enough to specify RetriesCount will happen only this number of attempts with a delay in WaitRetry

I think that's the bit I don't "get", I don't quite see a use case for:

if you want to repeat only a certain number of times

As a user I may want to limit the time I am willing to wait to get a lock, but do I really care how many calls are made to redis in this time? (although you can even kind-of control that via WaitRetry).
Sorry, I really feel this is making the API unnecessarily complicated. At the moment, to enable retries, you only need to set WaitTimeout > 0 but with your patch, you also need to enable RetriesCount which is not really intuitive in my opinion

@im-kulikov pls take a look at https://github.com/bsm/redis-lock/pull/7

@dim In fact, nothing is changed. Only added option to specify the number of attempts.
That is, if I want to use the WaitTimeout and WaitRetry - I is sufficient to specify a WaitTimeout (and, alternatively, to change WaitRetry).
If I want to make a few attempts - to me it is enough to specify RetriesCount

Sorry, but can you please explain the use case for this? As said ...

I really feel this is making the API unnecessarily complicated. At the moment, to enable retries, you only need to set WaitTimeout > 0 but with your patch, you also need to enable RetriesCount which is not really intuitive in my opinion

opts = Options{RetriesCount: 3}
RunWithLock(client, key, &opts, func() {
  //... do something
})

will be made 3 attempts ≈ 30 ms (WaitRetry(10ms) * RetriesCount(3) = 30ms)

No, I understand that, but if we go down this route, I would consider removing WaitTimeout. I don't think it makes sense to have both. Will update #7


4 scss for basic styling

One question left: This would be a breaking change. I dont know, if you want that @Gibbu ...?

LGTM


Fix inconsistent alerts by using the markdown notation - part 1

Why:
As described in the issue #35195 the display of alerts is inconsistent across the documentation.
As the original PR #35216 exceeds the linter limit of 300 files, this PR is part 1 of the changes. It provides changes to alerts across the documentation according to the docs guidelines using the Markdown notation.

What's being changed (if available, include any code snippets, screenshots, or gifs):
Alerts for note, tip, important and warning have been changed and unified from the liquid notation ({% note %}) to the Markdown notation (> [!NOTE]) according to the docs guidelines.

Check off the following:

[x] I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).

For content changes, you will also see an automatically generated comment with links directly to pages you've modified. The comment won't appear if your PR only edits files in the data directory.

[x] For content changes, I have completed the self-review checklist.

@akordowski Reviewing this now - thank you so much for breaking up that PR! ✨

Part 1 approved! 💛 I'll update the branch and get this merged once tests are passing 🍏

](url)


Proposal: mechanism for doing environment setup

Hermit currently performs no custom actions on environment activation.
However, it is not uncommon to want to perform additional tasks within an environment before it becomes usable, beyond just installing the package. Some examples of this are creating a .venv for Python, perhaps running rustup to install a Rust toolchain, and so on.
Probably the simplest approach is to allow hooks in bin/hermit.hcl, eg.
// Run once on environment "initialisation", whatever that means? This concept does not exist yet.
on setup {
  run { command = "..." }
}

// Run on every activation? Is that a good idea?
on activate {
  run { command = "..." }
}

I'm OK with an on activate; we should make clear in the documentation that potentially happens a lot, so anything here needs to run fast.
What happens in the case of failure? Right now, when a trigger fails, there's not much in the way of logging. At least I find them hard to debug.

Yeah I think that is a bug we should fix :(

How do I upvote this? Anyway, I upvote ⬆  for all it's worth 😄

on activate makes a lot of sense.  I think the speed is less of an issues as long as it is transparent that it is doing something. Alternatively on setup could basically be on first activation which would also be a nice option if users are doing something slowly. HERMIT_ACTIVATED for example could be set..


Templates in Attributes

Added function for setting templates in attributes of directive. It makes possible set templates in config or in attributes..

Hello.
Sorry, but can u fix error in test?
SlideBox is correctly worked but test is failed. I haven't time to fix it now.

Really sorry about the delay on getting to this, I've been super busy lately with other projects. I've abstracted your changes out into a re-usable directive and changed the individual attributes to just be a single custom-template-urls attribute. I'll push a new release shortly with the change. Thanks for the contribution!

That's cool. Thanks )


[examples/ckan/tsconfig.json]: Fix vercel-catalog-portal-js-deploy-fail

This PR fixes #620
Issue
The deployment was failing because typescript v3.9.5 was having trouble converting some JSX code into regular Javascript.
Steps taken to resolve

Updated Typescript to v4.3.2
Also updated React and React-dom to v17.0.1 as it includes some new improvements for transforming JSX code.

@virgoaugustine could you add a description of why it was failing and what was fixed, please?
Also, it would be great if we had some acceptance criteria in the issue #620

@anuveyatsu done 👍🏾


Compatibility renderer support

Admin edit:
Fixes #217
Detects whether Godot is using the compatibility renderer.
If so,
The generated shader will have a set of #defines added that allow full support for the standard shader.
The shader override will also contain these defines, only if generated when in compatibility.
The editor will inject code at the begining, and the end either the standard shader, or any provided override shader
in order to draw a "decal" on the terrain.
in the interest of simplicity, the gdscript changes are as small as possible, tho some things are a bit inneficient,
performace is fine and its only during editing anyways.
The slope tool doesnt have propper decal support.
adding terrain3d.get_compatibility() seems a bit dubious to me, but saved repeating a ton of code in gdscript, and ensures that the editor is always on the same page.
Finally, there are no warnings at the moment when the albedo and normal arrays are in compressed mode. for 4.3 this is fixed anyways, but for 4.2 all textures will be black. The workaround is to re-import all textures as "Lossless". Resizing to half resolution results in the same VRAM use for Lossless vs Compressed at the original size.
a test version is available: https://github.com/Xtarsia/Terrain3D/actions/runs/11040148246
EDIT: updated test version (once build completes) https://github.com/Xtarsia/Terrain3D/actions/runs/11048941623

Im unable to get web export working, i suspect due to needing custom export template build for terrain 3D, or something along those lines.
As for textures import settings for 4.2, both options work.
I'll add some initial things to platform.md in the mean time.

In compatibility mode, the minimum.gdshader complains about fma, even though it isn't connected to anything. I had to comment it out.

Here are my notes on getting webgl working. It isn't successful yet.

Docs
Building instructions
https://docs.godotengine.org/en/stable/contributing/development/compiling/compiling_for_web.html
Godot Export for web docs
https://docs.godotengine.org/en/stable/tutorials/export/exporting_for_web.html
Building
To build the extension for web you must install emscripten, set up the build environment, then build the web assembly version. I installed with scoop, which is how my python is also installed, per the Godot building instructions.
$ scoop install emscripten
# then I restarted my terminal to get the updated path to finish installing emscripten

$ emsdk install latest
$ emsdk activate latest

# finally setup the build environment
$ source ~/scoop/apps/emscripten/current/emsdk_env.sh
$ scons platform=web target=template_debug

$ ls project/addons/terrain_3d/bin/*.wasm
project/addons/terrain_3d/bin/libterrain.web.debug.wasm32.wasm

Exporting

Select custom dlink unthreaded template, which I found here: C:/Users/Cory/AppData/Roaming/Godot/export_templates/4.3.stable/web_dlink_nothreads_debug.zip
Vram compressed textures don't work for me on Edge. They don't load in the log. They stop complaining with VRam uncompressed.
Export and web load reports this message, but tickets have said we can ignore that.

ERROR: No suitable library found for GDExtension: res://addons/terrain_3d/terrain.gdextension. Possible feature flags fe
   at: (./editor/plugins/gdextension_export_plugin.h:129)

Upload to Webserver
After export, the full package must be uploaded to a webserver. Itch or your own. That server must be configured with SharedArrayBuffer & Cross Origin Isolation.
In nginx this can be enabled with:
    location ^~ /terrain3d/ {
        add_header "Cross-Origin-Opener-Policy" "same-origin";
        add_header "Cross-Origin-Embedder-Policy" "require-corp";
    }

On Itch.io , edit game, find the Embed Options section and enable:
SharedArrayBuffer support - (Experimental) This may break parts of the page or your project. Only enable if you know you need it.
Running
I built w/ 4.2.2 and seemed to mostly load but error messages complained that my scene files were built for 4.3?? So I built and exported everything with 4.3: godot source, godot-cpp, Godot binary, Godot export templates.
Edge complained about being unable to load the textures if compressed with vram compressed. But no complains using vram uncompressed.
Currently it loads to the godot logo, then a grey screen. The javascript console reports this:

Nice work. Aside from webgl, it works well. It even stutters just like I remember in Godot 3. :/

The lack of visual indication for the slope tool is a problem. Drawable is not intuitive without it. If you don't already know how it works it will be easy to be confused by it. What can we do about this?

Figuring out how to build for web won't hold this PR or release up.

It renders very differently. Brighter, stronger normals, half the speed.

I think I need to tidy up the regex stuff a bit still.

New url. Back tick ` will also capture the mouse, and arrow keys will turn the camera.
https://tokisan.com/terrain3d_demo/demo.html
It seems that all the samplers need highp. Including those in uniforms.glsl.
Here's the full console log, after adding additional highps:
console_log.txt
The last remaining shader error is:
demo.js:474  ERROR: 0:528: '[' : array index for samplers must be constant integral expressions
also 535, 536.

These lines are:
demo.js:459 528: 			vec2 m_decal_uv=(((vec2(((m_cosa * m_uv.x) - (m_sina * m_uv.y)), ((m_sina * m_uv.x) + (m_cosa * m_uv.y))) - (vec2(((m_cosa * m_dus_editor_decal_position[m_i].x) - (m_sina * m_dus_editor_decal_position[m_i].y)), ((m_sina * m_dus_editor_decal_position[m_i].x) + (m_cosa * m_dus_editor_decal_position[m_i].y))) * m_dus_vertex_density)) * m_size) * m_dus_vertex_spacing);

demo.js:459 535: 			float m_decal=smoothstep(0.10000000149012, 1.0, texture(m_dus_editor_decal[m_i], (m_decal_uv + 0.5)).r);
demo.js:459 536: 			m_albedo=mix(m_albedo, m_dus_editor_decal_color[m_i].rgb, (m_decal * m_dus_editor_decal_color[m_i].a));

I'm not sure why webgl doesn't like these array indices compared to our other array indices.

texture(m_dus_editor_decal[m_i], (m_decal_uv + 0.5)).rI think this should betexture(_editor_decal, vec3(decal_uv + 0.5, float(i))). In my own custom shader, accessing an array index this way was working, but when I put this into the glsl file and compiled, Godot reported: SHADER ERROR: Invalid arguments for the built-in function: "texture(sampler2D[3],vec3)".`

This PR https://github.com/godotengine/godot/pull/85430 should make correctly determining when to use compatibility modifications much simpler.

Ok, down to 4 clean, topical commits. Thanks for all the work on this. It will help a lot of people.


pass through any other HTML attributes given to a

Use case here is stuff like:

Using <link rel="stylesheet" blocking="render" />
Using <link rel="stylesheet" disabled />
Using <link rel="stylesheet" integrity="hash..." />
Using <link rel="stylesheet" crossorigin="..." />
Anything else on the long list of useful attributes the link element supports

Before, those attributes would just be left behind. Now they are passed through. There is a system in there for ignoring the ones that Trunk wants to control.
I haven't implemented this on any other asset types, but the AttrWriter is reusable. Also there is clearly the possibility to refactor the three nearly-identical-and-could-be-identical output types for css/sass/tailwind (which would also make it possible to inline a normal CSS file, not just sass/tailwind output), but I didn't do it to keep the review small.
I think it's great that Trunk uses an actual HTML file to configure assets. This just makes it live up to the potential of this pattern a little more.

Checklist

[x] Updated CHANGELOG.md describing pertinent changes.
[ ] Updated README.md with pertinent info (may not always apply).
[ ] Updated site content with pertinent info (may not always apply).
[x] Squash down commits to one or two logical commits which clearly describe the work you've done. If you don't, then Dodd will 🤓.

I cherry-picked this into trunk-ng, it should be released with the next version (0.17.10).


How do I actually get the mod?

All in the title

yes how?
i literally cant
it just closes minecraft


KVC with array access

Implemented KVC with array access.
This is something that I've run into on many occasions and I've seen other people on the google group have also.
People want to be able to do the following mapping:
foo[1].bar[0].url : url
I've implemented this by regex chaecking the keypath, if it contains a digit then splitting the string by [\d+] and performing KVC on the middle parts and array access on the indexes.
NSLogs for failure to match inline with KVC and returns nil.
Test included in RKMappingOperationTest:testSourceKeyWithKVCArraySupport

Sorry about the master merge

I'm really loathe to add categories on NSObject (or any class we don't own, for that matter)

Fair enough. This can be added to the mapper class as a private function in that case.
Does that work for you?

On 17 May 2015, at 13:20, Samuel E. Giddins<EMAIL_ADDRESS>wrote:
Closed #2220.
—
Reply to this email directly or view it on GitHub.

If it doesn't affect performance in the common case, potentially. I know @percysnoodle had tried building custom KVC stuff in the past.
-Samuel E. Giddins
On May 17, 2015, at 11:21 AM, Oli Griffiths<EMAIL_ADDRESS>wrote:
Fair enough. This can be added to the mapper class as a private function in that case.
Does that work for you?

On 17 May 2015, at 13:20, Samuel E. Giddins<EMAIL_ADDRESS>wrote:
Closed #2220.
—
Reply to this email directly or view it on GitHub.

—
Reply to this email directly or view it on GitHub.

Removed category and moved to RKMappingOperation. Defaults to default KVC first, if no match, as when using foo[0].bar syntax, regex match and KVC array logic is performed

For some reason the new commits arent showing on this PR, but they're on the branch and I can submit a new PR with them....


Unsafe recover should only drop some nodes instead of all down nodes

For example, A region contains six nodes a, b, c, d, e and f, a is leader. If a, b and c are down forever, we need to just delete two nodes instead of all three nodes. It's possible that just a, b, c and d share the committed log. If a, b, c are deleted, d's committed log can be overridden if e or f becomes leader. Note that d may even not know that a has committed the log, so the cluster can run smoothly without knowing that committed logs are lost, which can be prevented in this case.

It's not fixed yet.

I don't know how your raft library solves the problem in paragraph 5.4.2. My solution is to add some restrictions on the response of the requstvote RPC.

This is not the same problem in 5.4.2. Raft itself guarantees that logs committed from last term will never get overwritten as long as majority still alive. However the problem described here is at least half of the nodes are down and ruined forever that those nodes have to be removed from the meta manually. This case can't be solved by raft itself automatically, extra effort is required.
A node can become a leader once quorum vote for it. So a candidate can never know for sure if there is a node whose log is more up to date. If it has to wait for all nodes to answer the vote request, then the implementation can't defect network partition.

On this issue, I think there are two solutions. First, add a coordination layer on the PD. Second, Raft guarantees that each submitted log can be saved to most of the nodes. As long as the people who have all the logs are running successfully, I can do it. Of course, further testing is needed after implementation. I am particularly interested in this question and have the opportunity to chat by phone. ^_^

hi @pxps

if it finds that the lastlogindex and lastlogterm of some nodes are greater than their own

Seem that the node will response a reject message.

hi @pxps

if it finds that the lastlogindex and lastlogterm of some nodes are greater than their own

Seem that the node will response a reject message.


Remote as sensor entities and periodic updates of wifi appliances

TechHummel updates from https://github.com/rowysock/home-assistant-HomeWhiz/tree/remote_as_sensor_entities
small update of README.md (correct directory name to install the extension)
modifications to allow automatic update of appliance state (see https://github.com/rowysock/home-assistant-HomeWhiz/issues/106#issue-1581008722)

Thanks for your pull request 👍
I adjusted the timer task logic, so that the task hopefully gets cleaned up if the integration is removed.
By the way: We use pre-commit to automatically format our code. You can set it up with pre-commit install and then it automatically checks your code before a commit - very handy!


command decorations overlaid on reload of window after running a command

Similar to https://github.com/microsoft/vscode/issues/144597, that isn't on reload though.

doesn't repro at least on Mac anymore.


Resolve Issue #867, Reorder Compostion Queues

Resolve issue #867, composition queues are ordered by descending scores.

Cool! Thanks.


style: fix input readOnly styles

Pull Request Test Coverage Report for Build 2087

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 76.044%

Totals

Change from base Build 2077:
0.0%

Covered Lines:
1919

Relevant Lines:
2411

💛  - Coveralls

fix: #679


[BUG] Exposure notification frequent vibration

Describe the bug
In Safer Illinois 2.10.22, when Exposure Notification is turned on, the phone would vibrate one time when the Exposure Notification toggle is changed to On.
In Safer Illinois 2.10.23, when Exposure Notification is on, the phone vibrates every couple of seconds.
To Reproduce
Steps to reproduce the behavior:

Install 2.10.23
Go through the setup and connect NetID
Turn on Exposure Notifications during on-boarding or in the settings panel.

Expected behavior
The phone would vibrate one time as it did in 2.10.22.
Smartphone (please complete the following information):

Device: Pixel 3a
OS: Android 11
Version 2.10.23

I am able to reproduce this issue too.

Fixed in version 2.10.25 and above.

Retested this issue. This issue is fixed in version 2.10.25

Thanks!


Don't acquire the GIL during finalizing

What does this PR do?
This fixes the segfault that we're getting with tracemalloc usage.
Additional Notes
A somewhat tricky thing to reproduce, but based on the debugging done, and the
documentation, I believe it's the right fix.

I'll closed that one lacking good data.