[Feature] Support replacing UDF in-place with CREATE OR REPLACE FUNCTION

Why I'm doing:
As of current, replacing a UDF is a two-step operation: DROP FUNCTION, then CREATE FUNCTION. This method involves potential downtime between the two commands for the function that is being replaced.
What I'm doing:
Fixes #46253
This change supports the following
CREATE OR REPLACE FUNCTION function_name RETURNS return_type;

The overall syntax for the enhanced CREATE FUNCTION command will look like this:
CREATE [OR REPLACE] [GLOBAL] [AGGREGATE | TABLE] FUNCTION function_name
(arg_type [, ...])
RETURNS return_type
PROPERTIES ("key" = "value" [, ...]);

What type of PR is this:

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

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

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

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.3
[x] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

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

This PR doesn't include documentation change yet. I'll push another for that once we've settled on the proposed design.

Thanks for the earlier review @packy92. I've since added some unit tests to increase coverage, though I've noticed the FE Incremental Coverage Report doesn't seem to update on the latest changes. Is there a manual step required to update the report?

Sorry, folks. A Sonarcloud check appeared after your approval with a duplicate code warning.

Looks like Sonarcloud is picking up code duplication in more than just my changes :(

The long lead time between pushing a change and seeing check results has made this difficult. @packy92 @kangkaisen I'm hoping this is the last time I bug you for a review 🙏


Update vhd-setup.md

added steps to renew expired certs
ref : https://ax.docentric.com/expired-certificates-renewal-in-d365fo/
This helps on supports cases related to VHD

Contributor has not accepted the CLA; therefore, I am closing this request. Please resubmit and accept the CLA to have your changes included.


Feature Request: Array support

Hi,
Thank you for releasing this convenient crate, I just tried it and figured out array is not supported yet.
BTW, Is it possible to provide a gen_stub-wrapped version of pyclass, pymethods, pyfunction that acts like a drop-in replacement?

Maybe "array" means https://docs.python.org/3/library/array.html

the trait PyStubType is not implemented for Option (where T does implement PyStubType)

This is done https://docs.rs/pyo3-stub-gen/latest/pyo3_stub_gen/trait.PyStubType.html#impl-PyStubType-for-Option<T>

the trait PyStubType is not implemented for &[u8]

This case is difficult since we cannot use specialization. Since we already have impl<T: PyStubType> PyStubType for Vec<T>, we cannot implements impl PyStubType for Vec<u8>. We can avoid this by using PyBytes instead. Same thing for slice.

the trait PyStubType is not implemented for &T (where T does implement PyStubType)

This is simply lacking.

Sorry, I didn't make it clear. I mean the rust array (e.g. [T; N]) which will be convert to list[T] in the python world.

the trait PyStubType is not implemented for &T (where T does implement PyStubType)

This is simply lacking.

Sorry for the slow follow up. When you say "This is simply lacking", does that mean it is something that could be added to this tool or am I thinking about the issue incorrectly and I should explore another approach?


fix: allow numeric groupbys for pie chart

SUMMARY
Make sure pie chart can handle numeric columns in group by.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
Before

After

TEST PLAN
Manual
ADDITIONAL INFORMATION

[x] Has associated issue: #10391
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

@john-bodley as I introduced this regression, I can add a set of tests to cover all cases I can think of. (at least single/multiple groupby, string/numeric). I'll add those in a separate PR shortly.

Superseded by #10493


Update the project introduction

Update the project introduction

Codecov Report

Merging #12501 (345da54) into dev (b936b88) will decrease coverage by 0.03%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev   #12501      +/-   ##
============================================
- Coverage     39.45%   39.41%   -0.04%
+ Complexity     4217     4213       -4
============================================
  Files          1041     1041
  Lines         39160    39123      -37
  Branches       4478     4460      -18
============================================
- Hits          15449    15419      -30
+ Misses        21942    21937       -5
+ Partials       1769     1767       -2

Impacted Files
Coverage Δ

...erver/master/processor/queue/TaskEventService.java
69.64% <0.00%> (-10.72%)
:arrow_down:

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...org/apache/dolphinscheduler/remote/utils/Host.java
42.55% <0.00%> (-2.13%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
51.38% <0.00%> (-1.39%)
:arrow_down:

...r/plugin/task/sqoop/parameter/SqoopParameters.java
51.19% <0.00%> (-1.20%)
:arrow_down:

...cheduler/plugin/alert/dingtalk/DingTalkSender.java
34.13% <0.00%> (-0.78%)
:arrow_down:

...rver/master/runner/task/BlockingTaskProcessor.java
75.86% <0.00%> (-0.55%)
:arrow_down:

...heduler/api/service/impl/ResourcesServiceImpl.java
51.49% <0.00%> (-0.46%)
:arrow_down:

...inscheduler/plugin/registry/etcd/EtcdRegistry.java
50.69% <0.00%> (-0.35%)
:arrow_down:

.../dolphinscheduler/plugin/task/datax/DataxTask.java
36.62% <0.00%> (-0.26%)
:arrow_down:

... and 16 more

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


SecureStorage: Missing argument for parameter 'fileName' in call

The storage initialization is missing the fileName parameter as requested in the app-core constructor.
Causing XCode to complain and not build

@stefanoschrs fixed in #83


P4S2 in TestCagP2.scala

Sentence:
Violence has caused livestock to be looted, killed and disease-prone and crops destroyed, and displacement has caused delayed planting.

Test:
tester.test(newEdgeSpec(displacement, Causal, delayedPlanting)) should be (successful)

Problem:
delayedPlanting is not extracted, as shown in figure below.

I tried to debug and noticed that both  ‘delayed’ and ‘planting’ are considered as I-VP

The tag for 'delayed planting’ also seems wrong:
‘delayed’ is considered as VBN, and ‘planting’ is considered as VBG.

This issue seems from tagPartsOfSpeech in processor.

I think we should give up on this. That is, change delayed planting to another NP that is correctly recognized.

On Feb 15, 2018, at 5:35 PM, Fan-Luo<EMAIL_ADDRESS>wrote:
Sentence:
Violence has caused livestock to be looted, killed and disease-prone and crops destroyed, and displacement has caused delayed planting.
Test:
tester.test(newEdgeSpec(displacement, Causal, delayedPlanting)) should be (successful)
Problem:
delayedPlanting is not extracted, as shown in figure below.
I tried to debug and noticed that both ‘delayed’ and ‘planting’ are considered as I-VP
The tag for 'delayed planting’ also seems wrong:
‘delayed’ is considered as VBN, and ‘planting’ is considered as VBG.
This issue seems from tagPartsOfSpeech in processor.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


parquet-rs: Support for Time Microseconds

Is your feature request related to a problem or challenge? Please describe what you are trying to do.

As the author of the upstream odbc2parquet I would like for parquet to support writing Time columns with MicroSeconds precision, so I can offer more precise types to my users. This is especially helpful if odbc2parquet is used as part of a data pipeline in which the next steps relies on legacy converted types, since these do not have pendant for NanoSeconds precision.
Currently if I try to write a column of that type parquet emits a panic.
not implemented: Conversion for physical type INT64, converted type TIME_MICROS, value 334000000

Describe the solution you'd like

If I am not mistaken the interface should just be analogous to writing Time columns with NanoSeconds precision.
Describe alternatives you've considered

Lacking support in the parquet crate, I am unlikely to offer that improvement.
Additional context

Here is the original issue that triggered support for Time in odbc2parquet: https://github.com/pacman82/odbc2parquet/issues/285
Sadly so far I can only offer it with Nanoseconds precision.

The record API does not appear to support time types at all - https://docs.rs/parquet/latest/parquet/record/enum.Field.html
As a workaround I would suggest using either the arrow APIs or lower-level writer APIs as they support this and are more actively maintained. Otherwise I would also be happy to review a PR adding support for this, but am unlikely to have time to work on this myself.

Hello @tustvold ,

I would suggest using either the arrow APIs or lower-level writer API

I do not use the record API, but am using the lower-level writer API, as returned by:
Int64Type::get_column_writer_mut(column_writer).unwrap();
// ...
cw.write_batch(values, Some(def_levels), None)?;

Do you have a reproducer, the following works correctly
#[test]
    fn test_time() {
        let schema = Arc::new(
            types::Type::group_type_builder("schema")
                .with_fields(&mut vec![Arc::new(
                    types::Type::primitive_type_builder("col1", Type::INT64)
                        .with_repetition(Repetition::REQUIRED)
                        .with_converted_type(ConvertedType::TIME_MICROS)
                        .build()
                        .unwrap(),
                )])
                .build()
                .unwrap(),
        );

        let mut out = Vec::with_capacity(1024);
        let props = Arc::new(WriterProperties::builder().build());
        let mut writer = SerializedFileWriter::new(&mut out, schema, props).unwrap();

        let mut row_group = writer.next_row_group().unwrap();
        let mut column = row_group.next_column().unwrap().unwrap();
        column
            .typed::<Int64Type>()
            .write_batch(&[1, 2, 3], None, None)
            .unwrap();
        column.close().unwrap();
        row_group.close().unwrap();

        writer.close().unwrap();
    }

Hello @tustvold ,
thanks for your response. I apologize, for stating previously that I did not use the record API. While the production code of odbc2parquet does not it uses parquet-read in its integration tests which throws the error. I am sorry for the time you had to spend chasing this down.
Best, Markus

No worries at all, glad we got to the bottom of it :+1:

Thank you a lot and a merry Christmas!


Pylint CI

ChatGPT description of my changes
Changes

Updated pylint.yml to use Python 3.9 exclusively, removing the version matrix.
Added a .pylintrc file to customize Pylint settings to our project's standards.

Objective
This update simplifies our CI linting process by focusing on Python 3.9, aligning with our supported Python environment. The addition of .pylintrc allows us to enforce coding standards more effectively.

The check seems to have multiple "Unable to import" messages, since these packages are installed by poetry, I'm assuming these should work.


Provide a way to type a fix-length tuple-like generator/iterator

Search Terms

generator
iterator

Suggestion

Express a fixed-length generator.
Use Cases

Allows the spread syntax on functions to know how many arguments is deconstructed (see examples below)

Examples

stackoverflow question
// Vector2.ts
class Vector2 {
  constructor (public x, public y) {
    this.x = x;
    this.y = y;
  }

  //... A bunch of vector methods

  public* [Symbol.iterator]: Generator<number, void, unknown> {
    yield this.x;
    yield this.y;
  }
}

// main.js
const canvas = document.querySelector('#canvas');
const ctx = canvas.getContext('2d');

const a = new Vector2(0, 0);
const b = new Vector2(10, 10);

ctx.beginPath();
ctx.moveTo(...a);
// works correctly, but with this warning:
// Expected 2 arguments, but got 0 or more.ts(2556)
ctx.lineTo(...b);
ctx.stroke();
ctx.closePath();

Right now, the code above produces the correct behavior. However, typescript doesn't not recognize how many arguments is passed to ctx.moveTo and ctx.lineTo therefore it warns me about it.
My Implementation
There could be an tuple-like syntax for generators as well, for example:
public* [Symbol.iterator]: *[number, number] {
    yield this.x;
    yield this.y;
  }

With this syntax, typescript recognizes how many argument is deconstructed by the spread operator, and knows its a generator with the prepending *.
Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

Wow, I just came here to raise this, only to find this issue created only a couple weeks ago! Crazy timing! 😮
In any case, the use-cases presented in #32523 also require (or rather, are partially enabled by) this feature. Specifically, those use-cases are:

Coroutines
redux-saga's Sagas
mobx-state-tree's Asynchronous Actions
Emulation of Haskell's do syntax for sequencing monadic actions (example)
Emulation of Algebraic Effects (explanation, and example)

Thinking a bit about type inference...
I imagine it would be straightforward for simple cases, right?
For example, the inferred return type of
function* foo() {
  yield 0;
  yield 1;
}

would presumably be either *[0, 1] or *[number, number] (to borrow SIGUSR97's syntax).
As soon as loops are involved though, it looks like things get much more fun! 😅
For example, what would the inferred return type of
function* foo() {
  for (let n = 0; n < 5; n += 1) {
    yield n;
  }
}

be?
I'm guessing something like *number[]?
Let's get more complex though. What would the inferred return type of
function* foo() {
  yield 0;

  for (let n = 1; n < 4; n += 1) {
    yield n;
  }

  yield 4;
}

be?
Maybe something like *[0, ...*number[], 4] or *[number, ...*number[], number]?
When you start thinking about nested loops, things look a bit scary. Generics and conditionals further terrify me. 😱

@rbuckton You seem to be Generator Man; got any thoughts on this? 😜

Can we get an official comment explaining why this isn't higher priority? I want to destructure a class instance as if it was a tuple. I define 0 and 1 getters on the prototype and both have different type signatures.

Arrived here with the exact same use-case and issue as @zojize; vector types and the canvas.
Feels like I should be able to manually specify something like TupleGenerator<[number, number], ...> It could de-sugar to something like below;
class Vector2 {
  x:number;
  y:number;
  // public* [Symbol.iterator]: TupleGenerator<[number, number], void, unknown> { // <--desired syntax
  //   yield this.x;
  //   yield this.y;
  // }
  public* [Symbol.iterator]: Generator<number, void, unknown> { // de-sugared
    yield this.x;
    yield this.y;
  }
  public toTuple():[number, number]{ // de-sugared
    return [this.x, this.y]
  }
}

let a = new Vector2(1,2);
// ctx.moveTo(...a);  // <-- desired syntax
ctx.moveTo(...a.toTuple()); // de-sugared

Static type inference for *[Symbol.iterator] is obviously impossible for complex iterators... but why not have this for manually specified types :)

@thehappycheese I submitted a PR based on your suggestion, let me know what you think 😃

Have the same need, my case is very specific and it some might not like this, but I believe this is very handy.
Consider any state things in modern frameworks, they usually like [get, set] = state or { get, set } = state. What I want is to provide isomorphic structure that supports both but only on demand. I don't want to create an array when it's not relevant.
class State<T> {
  private value: T

  constructor(initialValue: T) { this.value = initialValue }

  get(): T { return this.value }
  set(value: T): void { this.value = value }

  *[Symbol.iterator](): TupleGenerator<[() => T, (value: T) => void]> { // <= Expectation
    yield () => this.get()
    yield (value: T) => this.set(value)
  }
}

My use-case is that I want to create a minimal array that only has the tuple values and no other methods such as: map, flatMap, forEach, etc.
export type MinimalArray<T, E> = {
  0: E
  1: T
  length: 2
  [Symbol.iterator](): Iterator<E | T> // I can't pass the tuple values here. It will make them a union type.
}

Let's say I created an object and artificially implemented the [Symbol.iterator]() method myself.
class CustomTuple<T1, T2> {
  private readonly _values: [T1, T2]; // Internal array-like storage for elements

  constructor(first: T1, second: T2) {
    this._values = [first, second];

    // Define properties 0 and 1 to enable indexed access (like a tuple)
    Object.defineProperty(this, '0', {
      value: first,
      enumerable: false,
      writable: false,
    });

    Object.defineProperty(this, '1', {
      value: second,
      enumerable: false,
      writable: false,
    });
  }

  // Length property to match tuple behavior
  length: 2 = 2;

  // Iterator for spreading and iteration
  [Symbol.iterator](): Iterator<T1 | T2> {
    let index = 0;
    return {
      next: (): IteratorResult<T1 | T2> => {
        if (index < this._values.length) {
          return { value: this._values[index++], done: false };
        } else {
          return { value: undefined, done: true };
        }
      },
    };
  }
}

When I destructure it, I get a union type:
const tuple = new CustomTuple(1, "bar")

const [a, b] = tuple
// a -> string | number
// b -> string | number

The nice thing about my CustomTuple is that, I don't see the extra Array API that comes with a regular Array object:

So the user cannot do tuple[0] or tuple[1] either. That's what I want.

So, there is no way I can achieve the same result as defining a standard fixed tuple:
const foo = [1, "bar"]

const [a, b] = foo
// a -> number
// b -> string


[WIP] Roadmap to version 2.0.0

[x] ~WebGPU #79~
[x] ~switch to typescript #141~
[x] add grow cut features #147
[x] ~real-time interaction #175~
[x] report descriptive stats for images #140
[x] add drawing interactions #103
[x] ~add Apple Pencil support on iPad #114~
[x] 4D data viewing support #65
[x] integration with openneuro.org #134
[x] load PNG images #144
[x] VOI creation (drawing) #178
[x] easy masking #174
[x] cutout coloring options #177
[x] mosaic view as in MRIcroGL (or "Lightbox" in FSLeyes)

@neurolabusc, we have accomplished nearly all of the items here (including those from our v1.0.0 list). I suggest that we:

update gzip to in nifti-reader-js to use fflate
release new nifti-reader-js
include new nifti-reader-js in niivue
release new version of niivue and set that version to 1.0.0

Can't wait to see the typescript version of this repo :blush:

@alexisthual, it would be nice, but it's a long way off. @cdrake has done some work adding in types via JSdoc comments, but that's about it so far. Will keep it on the list though!

@neurolabusc , and @cdrake,
I'm inclined to release NiiVue 1.0.0 once we merge in the updated nifti-reader-js with enhanced zip/unzip libs.
Any thoughts?

I think version 1 means we are beyond the break fast point and are hardening the API. I do think our regression testing is pretty good. The  one hesitation is whether the new collaborations with nilearn, FreeSurfer, DSI studio and MRtrix teams influence this. It might be worth leveraging their collective wisdom and use cases to refine our API. Due to this, I would defer a 1.0 release a bit.

I can't speak for the whole team obviously, but my feeling is that nilearn / scikit-learn people are rather conservative regarding releases haha (scikit 1.0 was only released one year ago, nilearn is still at 0.10).
My gut feeling is that integrating niivue with other pieces of software will indeed be a very good stress-test for the current API.
It also feels to me that using typescript before releasing 1.0 would be an other sensible stress-test.
After that, I guess there will be enough clear use-cases and examples that the API can be considered somewhat stable.

Also, you must hear that often, but I think that the package's name is unfortunately very confusing.
I think that a significant proportion of users might not realise right away that it's not only meant for vue developers.
If you think it is ever going to change, then the sooner is probably the better :smile:
Maybe something like niiview, niiengine, niirender would work? I know people (myself included) can get very emotionally attached to a product's name and that changing in the middle of the road is hard anyways...


Add own name (Brandon_Gui123) to the list of contributions

Hello! In this PR, I added my own name to Data/member.json, following the format in that file.

I think, as your LinkedIn is empty, I would remove that. Thank you @Brandon-Gui123

To clarify, is it the removal of the "linkedinurl" property? If so, I think this suggestion should be better taken to the owners, since I noticed that many users who don't have a LinkedIn URL left it with an empty string.

@Brandon-Gui123 can you please resolve conflicts so that we can merge your PR.

@MRslimcoder Ok I fixed the conflict. I simply moved my name all the way so that it is the last one.
Feel free to let me know if there are any other problems!

Sorry for the sudden change to draft, since I myself forgot how rebasing works and didn't realize that I have supplied the wrong commit message. I've already corrected the message and we should be good to go!

Ok, I fixed the conflict.


ADD uregina.ca which is of the University of Regina

@brianj-kim I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host uregina.ac not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!


disableWorker via URL parameter

Handy, avoids having to mess with the code for testing purposes.

Bit rotten it appears.

Fixed


j2objc-0.9.5: Epoch cannot be parsed when using TimeZone

This test fails when executed by j2objc, but works correctly in Java:
package test;

import org.junit.Test;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;

import static org.junit.Assert.assertEquals;

public class DateParserTest {
    @Test
    public void testCanParseEpoch() throws Exception {
        String date = "Thu, 01 Jan 1970 00:00:00 +0000";
        SimpleDateFormat f = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss ZZZZZ", Locale.US);
        f.setTimeZone(TimeZone.getTimeZone("UTC")); // Comment out this line, and j2objc can parse the date

        Date expected = new Date(0);

        Date parsed = f.parse(date);

        assertEquals(expected, parsed);
    }
}

The output given is:
JUnit version 4.10
.E
Time: 0,009
There was 1 failure:
1) testCanParseEpoch(test.DateParserTest)
java.text.ParseException: Unparseable date: "Thu, 01 Jan 1970 00:00:00 +0000" (at offset 17)
	at 0x000000010f151b19 java.lang.Exception.<init>() + 39
	at 0x000000010f211936 java.text.ParseException.<init>() + 108
	at 0x000000010f203bf2 java.text.DateFormat.parse() + 221
	at 0x000000010f0dade3 test.DateParserTest.testCanParseEpoch() + 291
	at 0x000000010f39d22c JavaLangReflectMethod.invoke() + 565
	at 0x000000010f084a9f org.junit.internal.runners.model.ReflectiveCallable.run() + 19
	at 0x000000010f09d01c org.junit.runners.ParentRunner.runLeaf() + 161
	at 0x000000010f09ceae org.junit.runners.ParentRunner.runChildren() + 317
	at 0x000000010f09d30c org.junit.runners.ParentRunner.run() + 186
	at 0x000000010f09ceae org.junit.runners.ParentRunner.runChildren() + 317
	at 0x000000010f09d30c org.junit.runners.ParentRunner.run() + 186
	at 0x000000010f086984 org.junit.runner.JUnitCore.run() + 219
	at 0x000000010f086631 org.junit.runner.JUnitCore.runMain() + 842
	at 0x000000010f086154 org.junit.runner.JUnitCore.runMainAndExit() + 81

FAILURES!!!
Tests run: 1,  Failures: 1

If the line f.setTimeZone(TimeZone.getTimeZone("UTC")); is commented out, the test passes.

Does not work in 0.9.6 either.

This is an important issue. Any workarounds?

You could use Joda-Time instead perhaps? We translated the library and turned it into a cocoapod: http://cocoapods.org/?q=joda-time

Joda-time seems like a reasonable workaround, as we need Apple to either
fix NSDateFormatter or include ICU's udate.h in the iOS SDK. Please
file a radar
bug https://bugreport.apple.com/ if you need to track this issue.
To avoid risking any app being blocked for using private API, we only
reference ICU functions that are defined in headers distributed in
the latest iOS SDK,
in /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/usr/include/unicode/.
This is also why j2objc doesn't support java.text.BreakIterator, as ubrk.h
isn't public yet.
On Sun, Mar 22, 2015 at 8:03 AM nbransby<EMAIL_ADDRESS>wrote:

You could use Joda-Time instead perhaps? We translated the library and
turned it into a cocoapod: http://cocoapods.org/?q=joda-time
—
Reply to this email directly or view it on GitHub
https://github.com/google/j2objc/issues/447#issuecomment-84626456.

Verified fixed in current source.


docs(virtualizer): update scrollToFn/Offset/Index options

In https://github.com/TanStack/virtual/pull/439 (possibly previous commits)scrollTo* options argument was changed but docs weren't updated.

Thanks!


Allow the same zones within different "views"

We use external and internal views in BIND for the same zones, as many other people do.
For example, when we are inside the LAN,  a host record like 'host1.example.com` points to a some local IP like <IP_ADDRESS>.
The same record 'host1.example.com' when it get queried from external network, points to some real external IP like 195.XXX.XXX.XXX
https://www.cyberciti.biz/faq/linux-unix-bind9-named-configure-views/
Please allow the same zones but with different "view" types or something like that.

Also known as split DNS. And doesn't necessarily need to be implemented via Bind's 'views'. I have one set of nameservers in the cloud that serve external DNS records, and a set of nameservers that run on the internal LAN that serve internal records.

This will probably be the next thing I am planning to give some attention after/if #52 will be merged. It does not make much sense to implement it on the basis of the "development" branch, as it will greatly affect forward/reverse zone relations as well.
One interesting part is how to handle environments with or without views. In BIND, if there is any view all zones must be assigned to a view, while when there is no view defined all zones by default end up in an implicit default view. So the best way of mapping this to NetBox-DNS is probably to make views entirely optional. On the other hand, if there is a view all zones must belong to one, so on creation of the first view all records currently in the implicit default view need to be assigned to it.
Then there is the question what should happen when the last explicit (non-default) view is deleted. That should be easy as the zones are already unique in that case and only lose their "view" relation, so they silently drop back to the default view - at least that is what I would expect to happen.
Moving zones between views is pretty straightforward provided the zone is not already present in the target view. Deleting and creating zones is also a non-issue.
The challenging question is what happens when a view is deleted from NetBox and that view is not the last one. There is a uniqueness constraint on zones that includes the view: There can, for example, be a zone zone.example.com both in view external and internal, while deleting the two views will result in two zones with the same name in the remaining default view.
I think the best way of avoiding this situation would be to restrict deletion of views to empty views, so the user must move zones out of the view or delete them before the view can be deleted. That restriction, however, has the exception of the last view that is defined, which can be deleted even if it contains zones and will then drop the zones back to the implicit default view (-> no view property defined).
Any thoughts?

Just a quick sign of life: This has not been forgotten.
Currently there is a major revamp of the Netbox plugin interface in the works, and that will make it much easier, more stable and more comfortable to develop plugin code. After Netbox 3.2 will be released I'll probably very quickly start with implementing views (I need them for my own environment, but not for my current customer, so it slid a bit down the priority list).

Another quick sign of life: After NetBox 3.2 and subsequently NetBox 0.10 has been released, I now started implementing the "Views" feature this weekend.
Nothing presentable yet, just the basic Django/NetBox stuff (Models, Views, Forms, Tables, API, Tests etc.) to use as a vehicle for the real business logic. Much easier now that the NetBox plugin API is in place.

If anyone would care to test the above PR I would really welcome it, and if I can be of assistance I'd gladly help with any problems.

I did the first deployment of the "Views" feature with real data today. Works for me, I'm interested about your experience as well, though, as this is a major addition affecting almost all other features. PR is ready for review now.


init resource with exponential backoff

#120 init resource with exponential backoff

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

LGTM

LGTM，please sign the CLA before merging? @lihezhong93

I have agreed to the CLA for alibaba/open-local


split download file name conflicts

when downloading different split sizes its possible the name will conflict with a different capture.
append the split size information to the download name.

splits now show the start and end times

commited


Fix: Fixing the relative path in test

- Summary
This PR fix the failed test. The test trying read file by relative path, and it is failed. I've add global variable __dirname__dirname` to path.
- Test plan
Please run the command:
$ yarn test:ava

and make sure that the test src/utils/redirect-parser/line-parser.test.js not failed.
- Description for the changelog
Fix the test, use absolute path to path in fs.readFileSync

Thanks for this PR @polemius   😊


Clean up the readme

All user docs have been moved to https://github.com/gtk-rs/gtk-rs.github.io/tree/master/docs-src

Thanks!


Added support for no timeout locks on db files

Pull request has been added to boltdb/bolt (#494) but has been queued for processing.
So I submit it there in the hope that it can be merged into a reasonably maintained repo so I dont have anymore to maintain a separate repo on the side.
Beside my application needs, I think this change is beneficial to the community as it completes the timeout locking API which didn't support an obvious case (failing right away if the database lock file can not be acquired instead of having to wait a given duration). I took the opportunity to refactor slightly these few lines of code to make them cleaner.
Full discussion of the initial boltdb/bolt pull request is there:
https://github.com/boltdb/bolt/pull/494

@rgeronimi negative durations seem iffy as an interface. Would it be possible to rearrange the lock code so it checks the timeout before issuing the sleep? That way timeout can be time.Nanosecond and would have the same effect as the negative duration in this patch.
Something like:
    ... flock(...) ...
    ...
    if time.Since(t) > timeout-(50 * time.Millisecond) {
        return ErrTimeout
    }
    time.Sleep(50 * time.Millisecond)
}

I agree. I implemented the changes, will be pushed through a separate pull request


Update to shapeshifter.design

Update the link to go straight to https://shapeshifter.design/

Thanks!!

No prob! 👍


Dev Ansible v2

Due to major changes with ansible 2.0 the plugin needed major adjustments. The starting point was a cross between the existing sshjails plugin and the new version of the ssh plugin provided with ansible 2.0 RC3.  This was tested and working with ansible 2.0 RC3. Further testing should probably be conducted up to and including the release of 2.0 proper.

Superceded by PR #8, for further fixes for Ansible 2.1


testing

Description

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

None required

/merge-when-ready

OK, Adding "merge-when-ready" label and will merge the PR when it's ready.


Adding Apps and Feature entries to Google.Chrome.Beta

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

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

Microsoft Reviewers: Open in CodeFlow

It seem like display version entries was written by the installer.


[HUDI-1304] Add unit test for testing compaction on replaced file groups

What is the purpose of the pull request
Add unit test to ensure compaction works on top of replaced file groups
Brief change log
Add unit test to ensure compaction works on top of replaced file groups
Verify this pull request

Test only change

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Codecov Report

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

@@            Coverage Diff            @@
##             master    #2150   +/-   ##
=========================================
  Coverage          ?   52.49%
  Complexity        ?     2793
=========================================
  Files             ?      358
  Lines             ?    16499
  Branches          ?     1771
=========================================
  Hits              ?     8661
  Misses            ?     7097
  Partials          ?      741

Flag
Coverage Δ
Complexity Δ

#hudicli
38.37% <ø> (?)
193.00 <ø> (?)

#hudiclient
100.00% <ø> (?)
0.00 <ø> (?)

#hudicommon
54.74% <ø> (?)
1793.00 <ø> (?)

#hudihadoopmr
33.05% <ø> (?)
181.00 <ø> (?)

#hudispark
65.51% <ø> (?)
303.00 <ø> (?)

#huditimelineservice
62.29% <ø> (?)
50.00 <ø> (?)

#hudiutilities
59.60% <ø> (?)
273.00 <ø> (?)

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

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 53.63%. Comparing base (fdae388) to head (1582bc3).
Report is 4471 commits behind head on master.

Additional details and impacted files

@@             Coverage Diff              @@
##             master    #2150      +/-   ##
============================================
+ Coverage     51.79%   53.63%   +1.83%
- Complexity     2532     2848     +316
============================================
  Files           318      359      +41
  Lines         14417    16545    +2128
  Branches       1460     1780     +320
============================================
+ Hits           7468     8874    +1406
- Misses         6354     6912     +558
- Partials        595      759     +164

Flag
Coverage Δ

hudicli
38.37% <ø> (ø)

hudiclient
∅ <ø> (∅)

hudicommon
54.75% <ø> (+<0.01%)
:arrow_up:

hudihadoopmr
33.05% <ø> (ø)

hudispark
65.48% <ø> (?)

huditimelineservice
62.29% <ø> (ø)

hudiutilities
70.07% <ø> (+0.60%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 57 files with indirect coverage changes


Allow to suppress warning when used with happypack

There is a warning, which warns happypack user about lack of support for postcss-loader-before-processing event to prevent potential failure with no clear reason.
Once the problem is acknowledged / resolved on the user side, we may not need that warning in the build output anymore. How could we achieve that?
My ideas:

introduce an option to explicitly disable postcss-loader-before-processing event
introduce an option to ignore this particular warning

If you are happy about any of those solutions or know better one, I'm willing to help to make it happen.

@jantimon maybe we could remove whole warning?

Why would a loader have no access to it's current compilation?

@jantimon it is unavailable if you use happypack

@ertrzyiks why? it is the general purpose intermodule communication protocol and used by many plugins..
what would be the workaround?

@ertrzyiks Is it possible to detect Happypack usage somehow ?

Maybe we should remove this warning? Event is very rare and I don’t think warning is very useful.

I don't know details behind missing _compilation, I can only guess that it was difficult to parallelize it in a reliable way. Maybe @amireh could jump in and share some thoughts.
Having the guard condition enable people to use postcss-loader with happypack. On the other hand, the warning in the else block is just for information and can be removed.

Done #180

But if @amireh could give a insight nevertheless would be appreciated 😛

Released in 1.3.3

The reason is because this._compilation and this._compiler can not be serialized for distributing to other processes since they're constructed and meant to be used in the main webpack process, which is a different "process" than the one that the loaders run in when using happypack.
In the docs for webpack 1 they dubbed it as "hacky access" to these constructs, simply because there was no better way (and I get it that the use cases are usually valid). It's just a limitation we need to live with until webpack (hopefully in v3) starts substituting their use with proper APIs.


TST: Fix dateutil version check

This allows the test to pass when using dateutil version 2.4.0
In [2]: '2.4.0' <= LooseVersion('2.4')
Out[2]: False

In [3]: '2.4.0' <= LooseVersion('2.4.0')
Out[3]: True

thanks

Thank you!


Treated file as is it had not been previously saved, but it had been. Crashed on overwrite attempt

Description
What steps will reproduce the problem?

(Bug might need to be re-attempted for reproduction)

Temporary file is already active in editor.
New File is created (via selecting 'New File')
Upon first executing script, gets prompt to save the file twice.
Script will work if you save the first time, but cancel the second prompt, but will ask to sae upon re-running script.
If one tries to overwrite the first save, the program crashes with 'Spyder encountered an internal problem' with a prompt to report the problem.

Traceback
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\editor.py", line 2450, in run_file
    self.re_run_file()
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\editor.py", line 2471, in re_run_file
    self.save_all()
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\editor.py", line 2031, in save_all
    self.get_current_editorstack().save_all()
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\widgets\editor.py", line 1799, in save_all
    if self.data[index].editor.document().isModified():
IndexError: list index out of range
WARNING:spyder.widgets.github.backend:Failed to send bug report on Github. response={'code': 401, 'json': {'message': 'Bad credentials', 'documentation_url': 'https://developer.github.com/v3'}}

Versions

Spyder version: 3.3.2
Python version: 3.6.4
Qt version: 5.6.2
PyQt5 version: 5.6
Operating System: Windows 10

Dependencies
pyflakes >=0.6.0  :  1.6.0 (OK)
pycodestyle >=2.3 :  2.3.1 (OK)
pygments >=2.0    :  2.2.0 (OK)
sphinx >=0.6.6    :  1.6.6 (OK)
rope >=0.9.4      :  0.10.7 (OK)
jedi >=0.9.0      :  0.11.1 (OK)
nbconvert >=4.0   :  5.3.1 (OK)
pandas >=0.13.1   :  0.22.0 (OK)
numpy >=1.7       :  1.15.4 (OK)
sympy >=0.7.3     :  1.1.1 (OK)
cython >=0.21     :  0.27.3 (OK)
qtconsole >=4.2.0 :  4.3.1 (OK)
IPython >=4.0     :  6.2.1 (OK)
matplotlib >=2.0.0:  2.1.2 (OK)
pylint >=0.25     :  1.8.2 (OK)

I can confirm the above process will repeat the issue and it was still active at least as of Spyder 3.3.4 (Spyder 3.3.5 is not being found by Anaconda for some reason). The net effect is that it will overwrite the second temporary file with the first temporary file, even though the second one is active, and then simply function as usual after that. I just had an issue where I didn't realise I had an unsaved temporary script and tried to create and save another script.

This is a duplicate of issue #5996. It only happens on Windows and unfortunately we don't know how to fix it.


Implement Auth.

Current project requires authentication at it's pre-interface. All we need is a proper authentication system at the desired place.

Fixed by https://github.com/parthpandyappp/Classroom/pull/2
Cheers :tada:


Always set location.query

In 1.0.0-beta3 this.params.location.query is set to null if there's no query string. Currently whenever you need to check if a query property exists, they also need to check whether this.params.location.query exists before checking this.params.location.query.somekey or risk hitting a "cannot call somekey on null" error whenever there's no query.
Perhaps it would be cleaner if "no query" is represented by a simple empty object {}. This change would make it more terse to use the query object checking the existence and value of particular query properties; I imagine this is the most common use case for accessing query. Currently, the api is optimised for those scenarios when one needs to switch based on the very existence of a query string, which IMO seems rare.

hmm, window.location.search always returns a string, and I agree this is nicer

ah, this is the current behavior on master :)


There should be more Test-Command and Test-Module cmdlets

Specifically, Test-Command and Test-Module is used heavily in our tests and build module which currently rely on Get-Command -ErrorAction SIlentlyContinue which can mask other issues other than testing if a command exists.

[ ] - Test-Culture (approved in #7702)

There is a reasonable design proposal for Test-Command in #8755, which is now closed as a duplicate.
Marking this as Up-for-Grabs given that @PowerShell/powershell-committee is fairly confident that we would take something like this into PowerShell .


folding@home: 6.02 -> 7.5.1

Motivation for this change
Find a cure to Covid-19
Update folding@home. Things have changed quite a bit so I rebuilt everything from scratch.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

currently debugging some folding issues:
15:55:14:WU01:FS00:Starting
15:55:14:WARNING:WU01:FS00:AS lowered CPUs from 15 to 14
15:55:14:WU01:FS00:Running FahCore: /nix/store/arcgrgdakzhwll6ngd2k6smjjp698j6z-fahclient-7.5.1/bin/FAHCoreWrapper /var/lib/private/foldingathome/cores/cores.foldingathome.org/v7/lin/64bit/avx/Core_a7.fah/FahCore_a7 -dir 01 -suffix 01 -version 705 -lifeline 4043 -checkpoint 15 -np 14
15:55:14:WU01:FS00:Started FahCore on PID 6029
15:55:14:WU01:FS00:Core PID:6033
15:55:14:WU01:FS00:FahCore 0xa7 started
15:55:15:WARNING:WU01:FS00:FahCore returned: FAILED_3 (255 = 0xff)

How to test the PR

Change your NIX_PATH to point to this PR.
Add the following entries in your NixOS configuration:

{ pkgs, ... }:
{
  services.foldingathome.enable = true;
  environment.systemPackages = with pkgs; [ fahviewer fahcontrol ];
}

nixos-rebuild switch
Run FAHControl and look at the logs. You might also want to configure your Team ID to 236565 :)

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/fight-covid-19-with-folding-home-and-nixos/6202/1

Partial duplicate of #81768

You might also want to update the nixos module. It seems quite out of date

@rissson what do you mean, I rewrote it from scratch? :D

@zimbatm yes indeed I was looking at the old one. It would be nice to also have an option for the config.xml file

@rissson: now the FAHClient can be started with extra options and defaults to the NixOS Team ID. I think this approach is more reliable than providing the config.xml since the service expects the file to be mutable.

Thanks! I've started this on a few boxes now. :)

@rissson: now the FAHClient can be started with extra options and defaults to the NixOS Team ID. I think this approach is more reliable than providing the config.xml since the service expects the file to be mutable.

So you recommend modifying the config with FAHControl then?

So you recommend modifying the config with FAHControl then?
FAHClient should configure the xml when started with the right arguments

Ok I think this is ready. Rebased and squashed. I also added the NixOS module renamed options for back-compat.

Maybe add support for passkeys also? https://foldingathome.org/support/faq/points/passkey/

I'd rather get this merged. The passkey support doesn't seem strictly necessary to me and can be added using FAHControl.


 So I added that and fixed the eviction warnings.

Thanks for this. I'll admit I haven't spent much time refining anything related to usefriendliness when it comes to setting everything up for use.


How would you add a Haskell language server?

Hi Tweag members. I'm really thankful for your guide on Stack in Nix and all your other high-quality blog posts. To me this is the first really understandable tutorial on how Stack's Nix integration works (the official Stack docs are way too convoluted). For an even better developer setup, maybe you can extend it to integrate other tools like HLS.
Is your feature request related to a problem? Please describe.
The developer tools would be part of shell.nix but you would need to select a HLS version from haskell.packages which matches the selected GHC version, which is only available in /nix/stack-nix-integration.nix. Do you have to select a HLS version manually and keep in sync in Stack and Nix manually?
Describe the solution you'd like
An adaptation of the example that also automatically selects the right Haskell Language Server version for the Stackage LTS GHC version.

@malteneuss, see this example.  Stack will use GHC, and HLS provided by Nix.
The '--no-nix' flag keeps stack completely Nix agnostic, since Stack will use the GHC on the path (the '--system-ghc' flag), and the tools are provided by Nix.
The '--no-install-ghc' flag will cause Stack to error out if no GHC is found, rather than to try to install GHC.  This is what we want, because GHC should be provided by Nix.
See this section in the Stack docs.
{ pkgs ? import <nixpkgs> { } }:

with pkgs;

let
  hsPkgs = pkgs.haskell.packages."ghc8107"; #Align with LTS from stack.yaml

  # Provide Nix integration for Stack as a wrapper,
  # so that Stack configuration is Nix agnostic.
  # GHC, Haskell tools, and non-Haskell dependencies are provided by Nix
  # https://www.tweag.io/blog/2022-06-02-haskell-stack-nix-shell/
  stack-wrapped = symlinkJoin {
    name = "stack";
    paths = [ pkgs.stack ];
    buildinputs = [ pkgs.makeWrapper ];
    postBuild = ''
      wrapProgram $out/bin/stack \
        --add-flags "\
          --no-nix \
          --system-ghc \
          --no-install-ghc \
        "
      '';
  };

in
mkShell {
  buildInputs = [
    hsPkgs.ghc
    hsPkgs.haskell-language-server
    hsPkgs.ormolu
    stack-wrapped
  ];
}

@what-the-functor  Thanks for that hint. A funny coincidence is that i actually wrote that Stack section^^


[Tock Studio] Export and import of ia gen settings

Contributor summary
Allow export and import (json format) of ia gen settings (Rag settings, Sentence generation settings, Observability settings, Vector DB settings)
AI Generated summary
This pull request introduces several significant updates to the observability and sentence generation settings components, focusing on adding export and import functionality for settings, confirming sensitive data export, and enhancing the user interface.
Export and Import Functionality:

bot/admin/web/src/app/configuration/observability-settings/observability-settings.component.html: Added buttons for exporting and importing observability settings, along with corresponding modals for confirmation and file upload. [1] [2]
bot/admin/web/src/app/configuration/sentence-generation-settings/sentence-generation-settings.component.html: Added buttons for exporting and importing sentence generation settings, along with corresponding modals for confirmation and file upload. [1] [2]

Sensitive Data Export Confirmation:

bot/admin/web/src/app/configuration/observability-settings/models/providers-configuration.ts: Added confirmExport property to ProvidersConfigurationParam interface and updated relevant configurations to include this property. [1] [2]
bot/admin/web/src/app/configuration/sentence-generation-settings/models/engines-configuration.ts: Added confirmExport property to relevant configurations to prompt confirmation before exporting sensitive data. [1] [2]

Code Enhancements:

bot/admin/web/src/app/configuration/observability-settings/observability-settings.component.ts: Introduced methods for handling export and import operations, including exportSettings, importSettings, and confirmation modals. [1] [2] [3] [4] [5] [6]
bot/admin/web/src/app/configuration/sentence-generation-settings/sentence-generation-settings.component.ts: Added similar methods for handling export and import operations.

User Interface Improvements:

bot/admin/web/src/app/configuration/observability-settings/observability-settings.component.scss: Added styles for .grid-actions to enhance the layout of action buttons.
bot/admin/web/src/app/configuration/sentence-generation-settings/sentence-generation-settings.component.scss: Added styles for .grid-actions to enhance the layout of action buttons.

This PR as simple conflicts, could you solve them @rkuffer ? thanks in advance

This PR has simple conflicts, could you solve them @rkuffer ? thanks in advance

Done


git built-in linter

I have a quick question.  Is this linter the one that ships with git (assuming one is), or is this meant to be a replacement linter?

Git does not come with a linter by default.  A standard installation of git has no git lint command.

Git does not come with a linter by default.  A standard installation of git has no git lint command.


Fix error in the 'negative cervical cytology series' variable logic

Originally, it was written to only accept 'negative cytology alone' events. It was recently updated to try to accept a negative cytology that was alone or a part of a cotest. However, I forgot to specify that the HPV had to be Negative if the cytology was NILM - so it is wrong.
I'm trying to determine the best way to allow either a 'negative cytology' OR a 'negative cotest' as part of the series. It is easy to write the logic if you are looking for a series of 3 'negative cytology' events OR 3 'negative cotest' in a row, but trickier to accept a variety of tests that occur within the designated time frame (e.g., 'negative cytology' then 'negative cotest' then 'negative cytology').
Would this work:
Define ‘negative cervical cytology or cotest’ as:
‘negative cervical cytology’ or ‘negative cotest’
Define ‘negative cervical cytology series’ as:
‘negative cervical cytology or cotest’
AND SECOND ‘negative cervical cytology or cotest’ AND dateTime of this test is >=12 months AND <= 18 months BEFORE the dateTime of the FIRST ‘negative cervical cytology or cotest’
AND THIRD ‘negative cervical cytology or cotest’ AND dateTime of this test is >=12 months AND <= 18 months BEFORE the dateTime of the SECOND ‘negative cervical cytology or cotest’

I don't think this is actually an issue in our L3. Our CQL logic here only looks for cytology tests, and ignores HPV tests. So cytologies that came from a 'cytology alone' test or that came from 'cotest' would both be included.
If any HPV or Cytology test in their recent history is abnormal, they would be excluded from this logic path, so specifically indicating that HPV has to be negative isn't necessary.

This 'error' has been fixed in the L2. It was never a problem in the L3, therefore I am closing this issue.


Changed unnecessarily gendered word

These things might feel small, if should look like it was written by one **man** reads bad for me, I can only imagine how it reads for anyone in open source that does not identify as one.

Okay 👍


works good on <IP_ADDRESS> but broken on <IP_ADDRESS>

hi, i use ufs and ufs-local
works perfect on meteor <IP_ADDRESS>
but not on meteor <IP_ADDRESS> :

the upload is stalled
the onProgress seems not triggered
but there is no error message

with another try (on <IP_ADDRESS>) i got an error message
W20180925-12:26:25.725(2)? (STDERR) (node:7297) UnhandledPromiseRejectionWarning: Error: Match error: Expected string, got undefined
W20180925-12:26:25.726(2)? (STDERR)     at check (packages/check/match.js:36:17)
W20180925-12:26:25.726(2)? (STDERR)     at LocalStore.Store.self.checkToken (packages/jalik:ufs/ufs-store.js:139:17)
W20180925-12:26:25.726(2)? (STDERR)     at WebApp.connectHandlers.use (packages/jalik:ufs/ufs-server.js:149:24)
...

for more investigations please continue here :
https://forums.meteor.com/t/solved-how-to-downgrade-jalik-ufs-jalik-ufs-local-issue/45685/9


image cropping

There is a ImageCrop library used in the source code, but how to use cropping function?

I am sorry to have answer late because of my recent job,  I take the initiative to hide this part of the code, if you have the need to modify their own source code.


Unknown resource files cause a KeyError

Putting an unsupported resource type into the template resource directory results in an key error. Steps to reproduce:
$ liara quickstart
$ touch templates/resources/style.scss.backup
$ liara build

Fixed by ecafff1d0055e332959b6af503be9dfa85af9e73


ANTLR support

Hi,
I realise that the ANTLR parser don't seem to be in this new version of nautilus, is the import of ANTLR grammars into nautilus no longer supported?

That is correct. We found that ANTLR grammars are not worth it. They typically don't include relevant Whitespaces as they assume prior tokenization. If for some reason you need to use ANTLR grammars, you can use the importer from the old version (https://github.com/RUB-SysSec/nautilus/blob/master/antlr_parser/src/bin.rs), which turns the ANTL grammar in a .json grammar. The .json grammar can still be loaded.

Along with this question, when I try to parse the grammar provided by ANTLR (https://github.com/antlr/grammars-v4/blob/master/smtlibv2/SMTLIBv2.g4),
I find the antlr_parser provides error during translation,
thread 'main' panicked at 'u32 could not be converted to char', src/libcore/option.rs:1190:5
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/libunwind.rs:88
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print_fmt
             at src/libstd/sys_common/backtrace.rs:76
   3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at src/libstd/sys_common/backtrace.rs:60
   4: core::fmt::write
             at src/libcore/fmt/mod.rs:1030
   5: std::io::Write::write_fmt
             at src/libstd/io/mod.rs:1412
   6: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:64
   7: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:49
   8: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:196
   9: std::panicking::default_hook
             at src/libstd/panicking.rs:210
  10: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:473
  11: std::panicking::continue_panic_fmt
             at src/libstd/panicking.rs:380
  12: rust_begin_unwind
             at src/libstd/panicking.rs:307
  13: core::panicking::panic_fmt
             at src/libcore/panicking.rs:85
  14: core::option::expect_failed
             at src/libcore/option.rs:1190
  15: core::option::Option<T>::expect
             at /rustc/66bf391c3aabfc77f5f7139fc9e6944f995d574e/src/libcore/option.rs:345
  16: antrl_parser::lib::AntlrParser::parse_regex
             at antlr_parser/src/lib.rs:751
  17: antrl_parser::lib::AntlrParser::parse_definition
             at antlr_parser/src/lib.rs:430
  18: antrl_parser::lib::AntlrParser::parse_antlr_grammar
             at antlr_parser/src/lib.rs:108
  19: antrl_parser::main
             at antlr_parser/src/bin.rs:15
  20: std::rt::lang_start::{{closure}}
             at /rustc/66bf391c3aabfc77f5f7139fc9e6944f995d574e/src/libstd/rt.rs:64
  21: std::rt::lang_start_internal::{{closure}}
             at src/libstd/rt.rs:49
  22: std::panicking::try::do_call
             at src/libstd/panicking.rs:292
  23: __rust_maybe_catch_panic
             at src/libpanic_unwind/lib.rs:80
  24: std::panicking::try
             at src/libstd/panicking.rs:271
  25: std::panic::catch_unwind
             at src/libstd/panic.rs:394
  26: std::rt::lang_start_internal
             at src/libstd/rt.rs:48
  27: std::rt::lang_start
             at /rustc/66bf391c3aabfc77f5f7139fc9e6944f995d574e/src/libstd/rt.rs:64
  28: main
  29: __libc_start_main
  30: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Is there any idea about this issue?

I would guess that the problem is antlr_parser/src/lib.rs:751. It seems like some regex in the ANTLR grammar file is not compatible with rusts regexes... You can probably ad line number information to the error manually to help you debug. I'm not really interested in supporting ANTLR parsing as it has many issues with tokens that get removed in the tokenization phase (e.g. whitespaces). I would recommend to create a similar grammar by hand.


[Subtask] The client supports to operate the grant information

Describe the subtask
The client supports to operate the grant information
Parent issue
#2232

Duplicated.


Type 10_LA

In "Example: Vandermonde Matrix," I believe the y matrix should be y1, y2 ... ym.

In the eigenspace example, there is a missing '$' causing 'A trick that works most of the time is to normalize each vector such that the first entry is 1 ($v_1 = 1)' to appear.

A little further down there is a missing parenthesis in the first equation following "and just to make sure"

Thanks!


[Wav2Vec2-XLSR-53]Problems about the pretrained model

Hi, when I tried to use wav2vec2.0 using transformers following the under lines under the Linux system:
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
#load pretrained model
processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-xlsr-53-espeak-cv-ft")
model = Wav2Vec2ForCTC.from_pretrained("facebook/wav2vec2-xlsr-53-espeak-cv-ft")
I met the problem: "Espeak not installed on your system".

For me the following worked on Mac:

Install espeak or espeak-ng.
Use environment variable PHONEMIZER_ESPEAK_LIBRARY pointing to the dylib (or perhaps DLL on Windows) when you run your python code: export PHONEMIZER_ESPEAK_LIBRARY=/opt/local/lib/libespeak-ng.dylib


Bug with gcc

I am occasionally getting the following error while running C++ code.
/piston/packages/gcc/10.2.0/run: line 6: ./a.out: No such file or directory

I tried to run the same code after some time. It compiled without errors.

What was the code you tried to run?

@Brikaa
#include <iostream>

bool is_power_of_two(int num){
    return (num & (num - 1)) == 0;
}

int main() {
    int n;
    cin >> n;
    while (n--) {
        int num;
        cin >> num;
        cout<< is_power_of_two(num) ? 1:0 << endl;
    }
    return 0;
}

Could you check stdout and stderr in the 'compile' section in the returned result when you get this error?

@Brikaa compile error now makes sense, thanks for helping out with the issue!


Is exclusion support needed?

Stellaris is listed as having both save and config under $XDG_DATA_HOME/Paradox Interactive/Stellaris/.
In reality:

Save are really under $XDG_DATA_HOME/Paradox Interactive/Stellaris/save games
Settings are sort of littered at the root of and under this folder.

For this reason, pulling the entire folder makes sense, however it will also grab:

shadercache
.launcher-cache
logs

Potential solutions:

Modify the wiki to fix the save folder and somehow list out all the settings files and mod folder (Does the wiki support this? I wasn't sure)
Add an exclusion pattern in this manifest to filter out logs etc
Do nothing because the total size is only 16 MB.

This isn't really a big deal, but I thought I would bring it up since it may be a bigger issue with other titles.

I feel better about explicitly including files than excluding them. If you have an exclusion list, then you'll have a problem as soon as the devs add any new file or folder. Of course, the opposite can happen with an inclusion list (you miss out on new files that you might want), but I think it's safer to opt in to files rather than opt out.
The Game data/config and Game data/saves wiki templates are variadic, so for example this code:
===Configuration file(s) location===
{{Game data|
{{Game data/config|Linux|{{P|xdgdatahome}}/Paradox Interactive/Stellaris/first|{{P|xdgdatahome}}/Paradox Interactive/Stellaris/second|{{P|xdgdatahome}}/Paradox Interactive/Stellaris/third}}
}}
{{XDG|true}}

Produces:

I think that would be the ideal way to handle cases like this, so that the wiki becomes even more accurate.
I believe the import script already handles this syntax, because I think I saw some cases where it worked, but to be honest I'm not sure why it works since I didn't specifically code for it 🙃

Ah, I was wondering how to have multiple entries. I think this should work for most cases. Thanks!


ssh断开之后能重连就好了

ssh断开之后能重连就好了

最好是能一键重连，就像xshell一样。希望这个以后能代替xshell使用。

This is about restore SSH session like XShell. I don't honestly know if #961 covers this.

961 may cover this; however, Terminal isn't intending on adding SSH-specific features right now :smile:


Labeling noise?

Dear authors,
I have a minor question about the annotation in the dataset.
When I debugged the code, I found that some inconsistencies existed between the ground-truth annotation and the audio label in the metadata.
For example, in the video ID 2Sg6Yq5S9Bo_0_5000, the annotated audio object is guitar, and I manually checked the RGB-labeled image to make sure that the guitar is only annotated.
However, when I loaded that image, I found that a few pixels were annotated with different labels. (same as index-labeled image)

>>> pil = Image.open('0.png').convert('RGB')
>>> d = np.array(pil)
>>> np.unique(data.reshape(-1, data.shape[2]), return_counts=True, axis=0)
(array([[  0,   0,   0],
       [128,   0,   0],
       [128,  64,  64]], dtype=uint8), array([230097,      8,  61495]))

[128, 0, 0] corresponds to the category baby.  However, there is no baby in either the image or audio.
Not only this video, but some videos have these inconsistent annotations.
Please correct me if I misunderstood something!
Thank you in advance.

Hi Ryo,
I also found several cases that contain noisy labels similar to yours. I reckon that may be caused by the annotator (i.e., sometimes they accidentally click on the image.). It seems to be normal for a large-scale dataset. Anyway, I think we can still manually filter out part of these points by thresholding GT based on return_counts.
Cheers,
yh

@cyh-0 Thank you for your comment!
I understand the situation.
Best regards,
Ryo


Post-processing, screen-reading shaders create black rectangles in VR

Godot version
4.0.2-stable
System information
Windows 11, Intel Core i7-12650H, Nvidia RTX3070 - Driver 531.41 - Vulkan
Issue description
I'm experiencing issues when applying a custom post-processing shader in VR. Specifically, I'm trying to use a nearest-neighbor downscaler for a pixelated look, but when applied to the XR camera, a black rectangle appears in the top left corner of the "screen," the size of which depends on the size of the former game window. I'm not sure if this is an expected behavior or if I'm missing something.
Expected Behaviour (rendered via standard 3D camera)
The nearest-neighbor downscaler should be applied to the screen without any additional artifacts or distortions.

Actual Behaviour (rendered via XR camera)
A black rectangle appears in the top left corner of the screen.

Godot forum
I've gone ahead and created a thread on the Godot forum, but haven't received any pointers to this issue. Leads me to believe this is worthy enough for a Github issue ^^
Steps to reproduce

Apply a custom post-processing shader (code provided below) to an XR camera in a VR environment by the use of a CanvasScreen and ColorRect.
Observe the black rectangle that appears in the top left corner of the screen when launched in VR.

Scene setup

Settings for the ColorRect

Screen-reading shader code
uniform sampler2D SCREEN_TEXTURE : hint_screen_texture, repeat_disable, filter_nearest;
void fragment() {
        vec2 screen_size = 1.0/SCREEN_PIXEL_SIZE;
        // converts UV-coordinates (0-1) to pixel-coordinates (e.g. 0-1920, 0-1080), scales them down by 25%
        // afterwards those "stepped" coordinates are converted back to uv-coordinates
        vec2 uv = vec2(floor((SCREEN_UV.x*screen_size.x)/4.0)/screen_size.x,
                floor((SCREEN_UV.y*screen_size.y)/4.0)/screen_size.y)*4.0;
        // takes one square of 16x16px and paints it with the mean colour.
        vec3 col = texture(SCREEN_TEXTURE, uv).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x	, 0.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(0.0					, SCREEN_PIXEL_SIZE.y)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x	, SCREEN_PIXEL_SIZE.y)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*2.0, 0.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*2.0, SCREEN_PIXEL_SIZE.y)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*2.0, SCREEN_PIXEL_SIZE.y*2.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(0.0					, SCREEN_PIXEL_SIZE.x*2.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x	, SCREEN_PIXEL_SIZE.x*2.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*3.0, 0.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*3.0, SCREEN_PIXEL_SIZE.y)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*3.0, SCREEN_PIXEL_SIZE.y*2.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(0.0					, SCREEN_PIXEL_SIZE.y*3.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x	, SCREEN_PIXEL_SIZE.y*3.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*2.0, SCREEN_PIXEL_SIZE.y*3.0)).xyz*0.0625;
        col += texture(SCREEN_TEXTURE, uv + vec2(SCREEN_PIXEL_SIZE.x*3.0, SCREEN_PIXEL_SIZE.y*3.0)).xyz*0.0625;
    COLOR.xyz = col;
}

If any additional info is needed, I'm happy to supply more details.
Many thanks in advance! :3
Minimal reproduction project
N/A

Screen reading shaders are not currently supported in stereo/multiview in Godot 4.0.
See my PR #62130 for a possible implementation. the patch has some conflicts that would need to be resolved to work on the current build of Godot. Let me know if you'd like to try this approach but are blocked on the conflicts, and I can spend some time to update the PR this week.
My approach has not yet been reviewed/approved for Godot 4.x. My PR was done in this way because it was the simplest way to solve the problem and can be done today, but there are other questions about long-term maintainability which would be up to the rendering and xr team to decide how best to approach this problem.

Thanks for the quick reply!
I've looked a bit into your pull request, but I haven't looked at Godot's source code enough to make much sense of it. ^^ Will try it out in the future, but haven't compiled something from source yet and don't have enough time to get into that as of now.
Regarding the CanvasLayer/ColorRect issue, I can't quite follow you there as what I'm trying to do is post-processing "after the fact", which would require the entire scene to be rasterized beforehand (if I'm not mistaken). I've gone ahead and looked a bit into Spirte3D in conjunction with a SubViewport (which I guess is what you're on about), but wouldn't that eliminate the stereoscopic effect or does that "2D sprite" get rendered for each eye individually?
What do you mean by "replicate the issue in the headset", "headset mirror / DisplayVRView"?

You can work around the limitation by using a spatial shader on a full screen quad. You can override the vertex shader to ensure it becomes full screen.

Create a QuadMesh, size it to 2 x 2 meters.
Create a shader material
Use the following template for your shader material:
shader_type spatial;
render_mode depth_test_disabled, skip_vertex_transform, unshaded, cull_disabled;

void vertex() {
     POSITION = vec4(VERTEX, 1.0);
}

void fragment() {
    // Implement your fragment shader as before
}


SVG Decoder

Is there any way to decode an SVG file (fetched as text) into the SVG nodes in this package? If not, are there any plans to add this?

There's no SVG parser as part of this library. Can you outline your usage scenario? We don't add features without a concrete example of why it's a good idea.

Sure thing. I've been playing around with using this package to programmatically create SVG, and it works great. But I frequently create SVG content offline which I then want to use in a webpage. In JS, I use XHR to fetch it. Then I can add event handlers finally add it as an <svg> node. In Elm, the best I can do is fetch it as text, but then I have no way to parse it into a form that would be useable by this package. Seems like it might be a generally useful piece of functionality, similar to the great JSON decoding tools that exist in Elm.

Sorry about the robot, it got out of whack for a little while!
It sounds like an XML decoder may be the thing you are looking for? It should cover this case right? Like, someone could make an SVG specific thing on top of an XML decoder.


First line is an empty one

With the current system, we are obliged to write code on the first line otherwise it will be an empty line.
I added this line on the start of "highlight" function to prevent this issue :
while (text[0]==="\n") text=text.slice(1);

I made a pull request to fix this issue ! :)


Use cargo's workspace.package and workspace.dependencies

This switches to use cargo's new workspace.package and
workspace.dependencies features.  It reduced duplication in the cargo
files.
A number of dependency versions where unified through this already.
Generally the approach taken is to put as much of features into the
workspace.dependencies as possible.  Only moving out parts that need
to be different between different crates.  This can result in slightly
more work when adding a new crate to move features around.  It also
means it is a little harder to figure out what features a crate
actually uses since you have to look in two Cargo.toml files.
Secondly all dependencies are moved, also those not shared between
multiple crates.  Otherwise it becomes easy again for them not all
being shared when possible.

Holly molly, didn't know this was a thing. A+++ for this.
Question, is there a CI check we can integrate to catch these. Seems like it will be hard to maintain long term.

Holly molly, didn't know this was a thing. A+++ for this.

It's pretty new, I think 1.64.  So only the merging of quic-rpc bumping MSRV to 1.65 enabled us to use this.

Question, is there a CI check we can integrate to catch these. Seems like it will be hard to maintain long term.

You mean catching a dependency added to a crate's [dendencies] table rather than the workspace's [workspace.dependencies]?  Not unless we write some kind of script ourself·  I guess this isn't too difficult: parse the Cargo.toml, check the things inside the dependecies table that they all have a workspace: true in them.
Though I'm not sure how much of a problem it will be: if we consistently use them it should be pretty obvious in code review that it's forgotten.  So my instinct would be to try it first without enforcement and only later add enforcement if it turns out it is needed.

I am concerned about a couple of things here

tooling support for this, need at least cargo add, cargo tree, cargo outdated and cargo release fully working
enabling unnecessary features: each crate should only enable the features it absolutely needs, as it might be used independently of the other crates in the workspace
maintainability: this makes it considerably harder to look at & understand the dependencies of a single crate, especially when working on sth in isolation

https://github.com/crate-ci/cargo-release is not a part pf cargo

https://github.com/crate-ci/cargo-release is not a part pf cargo

fair enough, anyway - supported since v22 on 21 Oct 2022: https://github.com/crate-ci/cargo-release/releases/tag/v0.22.0


Stop method on receiver is causing session error to be emitted

Describe the bug
Session error being fired when receiver's stop method is called
> node src/receiveSimple.js

Client created
receiveHandler Stopping

events.js:183
      throw er; // Unhandled 'error' event
      ^
Error: The link handle '0' cannot be found in session 'session5078199'.
    at Session.on_end (Projects/event-hub-test/node_modules/rhea/lib/session.js:637:86)
    at Connection.(anonymous function) [as on_end] (Projects/event-hub-test/node_modules/rhea/lib/connection.js:680:30)
    at c.dispatch (Projects/event-hub-test/node_modules/rhea/lib/types.js:909:33)
    at Transport.read (Projects/event-hub-test/node_modules/rhea/lib/transport.js:108:36)
    at SaslClient.read (Projects/event-hub-test/node_modules/rhea/lib/sasl.js:277:26)
    at Connection.input (Projects/event-hub-test/node_modules/rhea/lib/connection.js:438:35)
    at emitOne (events.js:116:13)
    at TLSSocket.emit (events.js:211:7)
    at addChunk (_stream_readable.js:263:12)
    at readableAddChunk (_stream_readable.js:250:11)

To Reproduce
const { EventHubClient, EventPosition } = require('azure-event-hubs');

async function main() {

    const { EVENTHUB_CONNECTION_STRING, EVENTHUB_NAME } = process.env;
    const client = await EventHubClient.createFromConnectionString(
        EVENTHUB_CONNECTION_STRING, EVENTHUB_NAME
    );

    console.info('Client created');

    const onError = (err) => {
        console.fatal("An error occurred on the receiver ", err.message);
        console.fatal(err);
        process.exit(127);
    };

    let timeout = null;
    const onMessage = (eventData) => {
        if (timeout === null) {
            timeout = setTimeout(async () => {
                console.info('receiveHandler Stopping');
                await receiveHandler.stop();

                console.info('receiveHandler Stopped');

                await client.close();
                console.info('Stopped');
            }, 500);
        }
    };

    const receiveHandler = client.receive("1", onMessage, onError, { eventPosition: EventPosition.fromEnqueuedTime(new Date(0)) });
}

main().catch((err) => {
    console.fatal(`Unexpected error: ${err.message}`);
    console.fatal(err);
    process.exit(127);
});

Expected behaviour
When .stop() is called the receiver should actually stop.
Package-name: azure-event-hubs
Package-version: 0.2.3
node.js version: v8.11.3
OS name and version: macOs High Sierra 10.13.6
Additional context
The event hub that I am pulling from has lots and lots of small messages on it and I am calling the .stop on the receiveHandler while it is working.

version 0.2.5 has lot of changes from version 0.2.3. I would recommend running this script against the github branch that you have pulled down rather than using a published npm version.

One more thing can you set the environment variable DEBUG to the following value and then run the script
export DEBUG=azure*,rhea*,-rhea:raw,-rhea:message,-azure:amqp-common:datatransformer

Please provide the debug logs. That will help us find the root cause. Please make sure to run against the source code checked in the master branch.

BTW, this is the code I am using to flood the hub with messages
const { EventHubClient } = require('azure-event-hubs');
const Chance = require('chance');

async function main() {

    const client = await EventHubClient.createFromConnectionString(
        process.env["EVENTHUB_CONNECTION_STRING"],
        process.env["EVENTHUB_NAME"]
    );

    console.info('Client created');

    const chance = new Chance();
    setInterval(async () => {

        const eventData = { body: `Hello ${chance.name()}` };
        await client.send(eventData);
        console.info(`Message sent successfully: ${JSON.stringify(eventData)}`);
    }, 500);
}

main().catch((err) => {
    console.fatal(`Unexpected error: ${err.message}`);
    console.fatal(err);
    process.exit(127);
});

By the way, I was using 0.2.5 and seeing the same issue but found #113 which is why I reported it against 0.2.3 as it was at least reporting the correct error message.

Is it possible to email me the connectionstring for your EventHub at<EMAIL_ADDRESS>You can invalidate the tokens after few hours. This can help me in reproducing the problem and I can probably find the root cause.


Unable to write in emulator opened

Hi Team,
We are trying to automate mainframe (as400) application using Robotframework.
But when emulator opens wc3270, it does not type any text in it (via both script and manually).
Please help to suggest what is the possible reason for this.

Hi @FWDQK as I know from the page: https://x3270.miraheze.org/wiki/Main_Page it seems to me that as400 is not supported by this emulator, as I don't have access to any mainframe of this type, unfortunately I can't help... Let's leave the question open and see if anyone in the community knows anything.


Fix codeblocks build project

So that it will build 'out of the box'.  Set c++11.  Define
enable_std_make_unique.  Define various _WIN32*   Add boost library to
search folders.

Thank you for your PR!


chore(main): release 0.2.7

Auto generated release
0.2.7 (2024-11-19)
Miscellaneous Chores

deps: bump clap from 4.5.20 to 4.5.21 (#72) (67c5f96)
deps: bump serde from 1.0.210 to 1.0.213 (#67) (817b6e0)
deps: bump serde from 1.0.213 to 1.0.214 (#69) (847e8a0)
deps: bump serde from 1.0.214 to 1.0.215 (#71) (0f464e0)
deps: bump serde_json from 1.0.132 to 1.0.133 (#70) (4788301)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v0.2.7
:sunflower:


[WIP] Statically define the systemd unit files

Typically services have their systemd unit files installed by the packaging system, not dynamically at runtime.  Since these files don't change we should write them out statically at RPM install time rather than dynamically at startup.  Writing these dynamically was an artifact of systemd being an optional runtime mode in the past.
We still have to write the service settings.conf file because these settings are user configurable
Depends:

[ ] https://github.com/ManageIQ/manageiq-rpm_build/pull/134

This will eliminate the need for root ultimately, right?

This will eliminate the need for root ultimately, right?

This reduces the number of things that we require root for, but doesn't eliminate it.
We still need to be able to systemctl enable service@guid and write the<EMAIL_ADDRESS>files which right now require root.

This reduces the number of things that we require root for, but doesn't eliminate it.
We still need to be able to systemctl enable service@guid and write the<EMAIL_ADDRESS>files which right now require root.

@kbrock might have found a selinux policy to limit what systemd api commands we can run and possibly not require root for that
Still leaves writing out the service overrides, I need to investigate if there is a way to do that over the dbus api

@kbrock might have found a selinux policy to limit what systemd api commands we can run and possibly not require root for that
Still leaves writing out the service overrides, I need to investigate if there is a way to do that over the dbus api

Thinking a rake task to build these would be helpful

Thinking a rake task to build these would be helpful

Okay with the updated unit names the core workers are looking good:
[root@dhcp-8-99-105 vmdb]# systemctl status manageiq.slice
● manageiq.slice
   Loaded: loaded
   Active: active since Tue 2021-02-02 12:09:03 EST; 6min ago
    Tasks: 63
   Memory: 2.2G
   CGroup: /manageiq.slice
           ├─manageiq-event_handler.slice
           │<EMAIL_ADDRESS>           │   └─12204 MIQ: MiqEventHandler id: 52, queue: ems
           ├─manageiq-generic.slice
           │<EMAIL_ADDRESS>           │ │ └─12217 MIQ: MiqGenericWorker id: 53, queue: generic
           │<EMAIL_ADDRESS>           │   └─12221 MIQ: MiqGenericWorker id: 54, queue: generic
           ├─manageiq-priority.slice
           │<EMAIL_ADDRESS>           │ │ └─12178 MIQ: MiqPriorityWorker id: 50, queue: generic
           │<EMAIL_ADDRESS>           │   └─12191 MIQ: MiqPriorityWorker id: 51, queue: generic
           ├─manageiq-remote_console.slice
           │<EMAIL_ADDRESS>           │   └─12281 puma 4.3.7 (tcp://<IP_ADDRESS>:5000) [MIQ: Web Server Worker]
           ├─manageiq-reporting.slice
           │<EMAIL_ADDRESS>           │ │ └─12231 MIQ: MiqReportingWorker id: 55, queue: reporting
           │<EMAIL_ADDRESS>           │   └─12239 MIQ: MiqReportingWorker id: 56, queue: reporting
           ├─manageiq-schedule.slice
           │<EMAIL_ADDRESS>           │   └─12290 MIQ: MiqScheduleWorker id: 58
           ├─manageiq-ui.slice
           │<EMAIL_ADDRESS>           │   └─12307 puma 4.3.7 (tcp://<IP_ADDRESS>:3000) [MIQ: Web Server Worker]
           └─manageiq-web_service.slice
<EMAIL_ADDRESS>               └─12323 puma 4.3.7 (tcp://<IP_ADDRESS>:4000) [MIQ: Web Server Worker]

Feb 02 12:09:03 dhcp-8-99-105.cloudforms.lab.eng.rdu2.redhat.com systemd[1]: Created slice manageiq.slice.

Still need to update the provider workers so that they'll be e.g. manageiq-providers-amazon_cloud_refresh instead of manageiq-amazon_cloud_refresh

Okay got the majority of the provider workers going, need to do another pass to make sure I didn't miss any (amazon agent_coordinator_worker comes to mind)
[root@dhcp-8-99-105 vmdb]# systemctl status manageiq.slice
● manageiq.slice
   Loaded: loaded
   Active: active since Tue 2021-02-02 12:09:03 EST; 2h 5min ago
    Tasks: 86
   Memory: 3.2G
   CGroup: /manageiq.slice
           ├─manageiq-event_handler.slice
           │<EMAIL_ADDRESS>           │   └─15306 MIQ: MiqEventHandler id: 63, queue: ems
           ├─manageiq-generic.slice
           │<EMAIL_ADDRESS>           │ │ └─15322 MIQ: MiqGenericWorker id: 65, queue: generic
           │<EMAIL_ADDRESS>           │   └─15319 MIQ: MiqGenericWorker id: 64, queue: generic
           ├─manageiq-priority.slice
           │<EMAIL_ADDRESS>           │ │ └─15293 MIQ: MiqPriorityWorker id: 62, queue: generic
           │<EMAIL_ADDRESS>           │   └─15280 MIQ: MiqPriorityWorker id: 61, queue: generic
           ├─manageiq-providers.slice
           │ ├─manageiq-providers-vmware_infra_manager_event_catcher.slice
           │ │<EMAIL_ADDRESS>           │ │   └─15864 MIQ: Vmware::InfraManager::EventCatcher id: 72, queue: ems_2
           │ ├─manageiq-providers-vmware_infra_manager_operations.slice
           │ │<EMAIL_ADDRESS>           │ │   └─15877 MIQ: Vmware::InfraManager::OperationsWorker id: 73, queue: ems_2
           │ └─manageiq-providers-vmware_infra_manager_refresh.slice
           │<EMAIL_ADDRESS>           │     └─15890 MIQ: Vmware::InfraManager::RefreshWorker id: 74, queue: ems_2
           ├─manageiq-remote_console.slice
           │<EMAIL_ADDRESS>           │   └─15379 puma 4.3.7 (tcp://<IP_ADDRESS>:5000) [MIQ: Web Server Worker]
           ├─manageiq-reporting.slice
           │<EMAIL_ADDRESS>           │ │ └─15330 MIQ: MiqReportingWorker id: 66, queue: reporting
           │<EMAIL_ADDRESS>           │   └─15341 MIQ: MiqReportingWorker id: 67, queue: reporting
           ├─manageiq-schedule.slice
           │<EMAIL_ADDRESS>           │   └─15393 MIQ: MiqScheduleWorker id: 69
           ├─manageiq-ui.slice
           │<EMAIL_ADDRESS>           │   └─15408 puma 4.3.7 (tcp://<IP_ADDRESS>:3000) [MIQ: Web Server Worker]
           └─manageiq-web_service.slice
<EMAIL_ADDRESS>               └─15430 puma 4.3.7 (tcp://<IP_ADDRESS>:4000) [MIQ: Web Server Worker]

Nice side benefit of manageiq-providers*.slice is we get a slice for just the provider workers.  Might investigate going one further and having a slice per provider-type like /manageiq.slice/manageiq-providers.slice/manageiq-providers-vmware.slice

Looks like our current ExecStart definition is a little different. I'm still working to make this easier to type
I put here rather than across all the repos
ExecStart=/bin/bash -c '. /etc/default/evm && exec ruby lib/workers/bin/run_single_worker.rb MiqEventHandler --heartbeat --guid=%i'

Okay I updated this so that it doesn't co-depend on the rpm_build PR, this just adds the unit files

@agrare So we can change the OP and remove the Depends/Dependent stuff (or rename to related or whatever)?

Okay I've added systemd unit templates to the provider generator and added PRs for the new oracle_cloud provider and the dummy-provider
I left the content of these exactly as it would be on a current appliance (I don't want to change too many things at once re: https://github.com/ManageIQ/manageiq/pull/20983#discussion_r598988627)
This simply adds the files to the filesystem, we'll need https://github.com/ManageIQ/manageiq-rpm_build/pull/134 to copy them to the correct location on appliances then we can drop the code here which writes the files out


How to get each user token?

Hi! 👋
I'm building an App that needs access to all user messages. Essentially, after a user installs the app in their workspace, I want the app to get all of their received messages (IM, channels, groups).
For it, I understand that I need access to the user token. Is it possible to get the user token for each user that 'allows' it? Or does the user need to first create an app, and then send me the user token? That seems unreasonable.
Expected result:
Somehow have a magical solution that allows me to get all messages from all users that allows is :)!

Hi @miguel-arrf - Your app can receive a user token for each user that directly installs your app. For that, you might want to take a look at the Bolt Python documentation on Authenticating with OAuth. The Bolt Python framework ships with a direct install link which you can direct users toward to complete the OAuth flow and a file-based state-store that should allow you to get going out of the box. For production, you'll want to implement your own state store.
Permissions for tokens are granular, so there is no single scope that exists that grants permissions to read messages from IM, channels, groups. Based on your use cas, you may want to request a few different scopes; you can see the user token scopes and associated methods here.

Hi @srajiang, I'm trying to do the same thing as @miguel-arrf but I'm not able to completely understand the documentation. Can you provide a quick example showing how you can implement this in your app. I also have some doubts regarding the Redirect URL, should I change it? Because in the documentation it says there is a default one.
Thanks for you help 🙌

Thank you so much @srajiang ! 🤩
In the meanwhile I was able to use the documentation code to make this work!
I now have a different question. When setting the OAuthSettings,
oauth_settings = OAuthSettings(
    ...
    state_store=FileOAuthStateStore(expiration_seconds=30, base_dir="./data"),
    ...
)

What's the impact of the expiration_seconds in the FileOAuthStateStore? There was something that caught my attention here: https://api.slack.com/authentication/oauth-v2, where it is says the following:

"Will my token expire? OAuth tokens do not expire. If they are no longer needed, they can be revoked."

Given that, why do we need the expiration_seconds parameter?
Thank you for the help! :)


Question: Is it possible to enforce indent of multiline list item?

Is it possible to enforce the indentation of subsequent list item lines?
Like this
- text
  text
  text
- text
  text
  text

instead of
- text
text
text
- text
text
text

Not today, but a new rule could do this.

Yes, making multiline list indentations consistent would be great, including over-indented lines.
This is an exaggeration, but it would be great if markdownlint could spot this inconsistency:
* Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam aliquam,
est nec feugiat
  pharetra, arcu neque mattis turpis, a egestas nibh quam sit amet mi.
   Suspendisse et nulla mauris. Lorem ipsum dolor sit amet, consectetur
adipiscing elit.

FYI, I now realize that the auto-fix for MD007 actually causes this problem a bit, because a list item goes from this (extra list indentation):
  * Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam aliquam,
    est nec feugiat

To this:
* Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam aliquam,
    est nec feugiat

👀

@DavidAnson Or perhaps a new parameter for MD005/indentation? Something like multiline: true/false, which defaults to false so that it's not a breaking change?
indentation:
  multiline: true

I recently ran into a doc with a lot of inconsistency, so I did a search on the full docs set. Unfortunately, due to the number of contributors, I found that we had 1000+ examples of list items where the first line (both unordered and ordered) were aligned properly thanks to MD005, but the subsequent lines had no consistency. For example: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/140956/diffs (work not finished, see https://gitlab.com/gitlab-org/gitlab/-/issues/437118).


docs: Document our conventions for experimental features

Fixes: MODELIX-547

Btw, for the documentation, it's a good idea to configure language tool in your editor if not done yet. There's an LSP for that. Language tool has an option to configure your native tongue. This helps finding issues German speakers would typically do.

@languitar Thanks for the rewording, I applied them.

Sorry, missed that ping


Config overrides site doc

This is the initial draft of the config overrides documentation.

@tbarnes-us I will go ahead and merge this, but please have a look at the user-guide.md and let me know where you think this belongs in the table of contents, so I can add a link. thanks

It should be 'configOverrides'

But I guess this confusion isn't enough justification to make such a change.


options.animateSpeed is ignored

Version 3.7.2. Setting options.animateSpeed has no effect. Looks like there's a typo in tree-node-children.component.ts:
*treeAnimateOpen="
            node.isExpanded;
            speed:node.options.animateExpand;  <== should be animateSpeed
            acceleration:node.options.animateAcceleration;
            enabled:node.options.animateExpand">

Setting a breakpoint in tree-animate-open.directive.js, I can see that after setting var delta = this.animateSpeed;, delta is true, which gets treated as 1 in the maxHeight calculation.

Thanks,
will be fixed in coming version


Add row polymorphism (aka. extensible records) to type system

This could be useful for adding a more powerful effect system, or perhaps for adding default implementations for interfaces/traits/modules/typeclasses (whatever we call them?).
Resources
Feel free to add more if you like!

willtim/row-polymorphism - Example row-polymorphism implementations
Extensible records with scoped labels
Koka: Programming with Row Polymorphic Effect Types
Elm: Records
Elm: Simplified Records
PureScript: Handling Native Effects with the Eff Monad
PureScript Language Guide: Kind System
PureScript Language Guide: Kinds

Just adding a some thoughts about implementation details.
Currently records are represented in vm as a flat array of values which ensures very fast access but in return this means that { x : Int, y : String } != { y : String, x : Int }. With a row polymorphic type the representation of { x : Int, y : String | r } would presumably be some kind of hashmap or tree (or x and y field could be laid out first on memory with the rest of fields to follow, but that is probably to restrictive).
Possibly the representation of non-polymorphic records could still be stored as compactly as they are now but could be enhanced with a Map<Field, FieldOffset> to retrieve fields when it is accessed in polymorphic context?
Alternatively storing them as hashmaps always is possible, dynamic languages seem to do alright with that representation.
Should { x : Int, y : String } unify with { y : String, x : Int } to produce { x : Int, y : String | r }? (Might be subtyping problems?)


Update POM files to meet ASF requirements

Imported from Jira STREAMPIPES-30. Original Jira may contain additional context.
Reported by: riemer.

The following subtask(s) are associated with this issue: #183, #184, #185

Closing the issue as it is inadvertently in open status due to migration from JIRA.


Describe why we make media.

Purpose / why
The tutorial glossed over how we're doing things very differently than Drupal. i wanted to point that out, to respect the reader's understanding of Drupal (and that the instructions were doing something very roundabout)
What changes were made?
an lobster-emoji'd admonition talking about how "we attach files via media attached to nodes."
Verification
Does it jive, and does it display right?
Interested Parties
@manez @eldonquijote

Checklist

Pull-request reviewer should ensure the following

[ ] Does this PR link to related issues?
[ ] Does the proposed documentation align with the Islandora Documentation Style Guide?
[ ] Are the changes accurate, useful, free of typos, etc?
[ ] Does this PR update the last updated on date on the documentation page?

Person merging should ensure the following

[ ] Does mkdocs still build successfully? (This is indicated by TravisCI passing. To test locally, and see warnings, see How To Build Documentation.)
[ ] If pages are renamed or removed, have all internal links to those pages been fixed?
[ ] If pages are added, have they been linked to or placed in the menu?
[ ] Did the PR receive at least one approval from a committer, and all issues raised have been addressed?

I would say that the move from files to Media is a Drupal community move. This allows media resources be more easily reused in multiple areas of a site.
What is peculiar to Islandora is that we have Media reference particular nodes rather than having the content entities reference the media (although the need for this Islandora-ism has recently been called into question).

@rosiel can you add a _last updated on DD-MM-YYYY_ to the top of the page, just under the heading?
@seth-shaw-unlv does your clarification need to be reflected in the text? If not, I'd like to merge this once the date is added.

I think that what you described @seth-shaw-unlv  is the technical implementation of a concept, which we have in Islandora, which is that "media belong to nodes". I was trying to avoid concepts in this tutorial, but I think this is important. I hope it's okay that I left out "we put the entity relationship field on the media pointing to the node rather than the node pointing to the media" at a tutorial at this level. Also, "the drupal concept of media is reusable files, but what islandora does with media is both a departure from that concept and an extension on that concept because while in order to properly be 'islandora', a media should belong to a node, but also it can be re-used anywhere on the site" is something that should probably be said but on the conceptual page about nodes and/or media, not this tutorial.

Sorry I missed this. I think you did a good job, @rosiel. 👍


Several useful Gen extensions

I found myself copying these over and over from project to project. Might as well contribute them

Awesome