feat: add voice over for blogs

closes #87

Screenshots:

Can we set a default voice which is pleasing to the ears ?
While working on this, did you come across a voice that stands out from the rest ? Positively ? If yes, we can set that as the default voice.

Can we set a default voice which is pleasing to the ears ?
While working on this, did you come across a voice that stands out from the rest ? Positively ? If yes, we can set that as the default voice.

will be adding this as a new issue later.


Setup GitHub Actions with AWS

Issue:
We need to setup a GitHub Actions that will test, build and deploy our code for both staging and production environments.
Fix:
Setup GitHub Actions to fulfil needs with AWS.
Next Steps:

Setup GitHub Actions.
Update documentation to describe how to use.

Upon further thought into this matter, it would mean tying the boilerplate to a certain container registry and cloud provider. As I want to keep this as fluid as possible, I will put this on the back burner for now.
Maybe setup a pipeline that runs tests such as typechecking, prettier, linting and tests for PRs so that we have some safety in the meantime.

Add PR validator in https://github.com/sajansharmanz/express-api-boilerplate/pull/12


Bug Overflow Important

Jodit Version:  v.3.1.39
Project is based upon Admin Press but with latest Bootstrap 4.1 with heavy modifications and many customization that are not part of original version.
Image

Expected behavior:
Dropdown not to overflow the container of body
Actual behavior:
Dropdown overflow textarea body

For parent container set overflow: "auto";


Moved ConstanceForm to a property to make it exchangable by inheritance

I moved the form class for constance to a property of the Admin, similar to the form property in the default Model Admin, but gave it a different name in case the actual form will be used in some kind of detailed settings view in the future.
This allows to easily customize the Form used by Constance for rendering the settings, by simply subclassing ConstanceAdmin and ConstanceForm.

@mpauly Can you please document how to use it. I really like it.

Okay, I just added some documentation, I think from how ModelForms are normally handled in Django Admin it should be pretty obvious how to use this. Thanks for considering this pull request so quickly!

Thank you


Switch some of the commands to normal commands

Switch commands like update_campaign_leaderboards, cause_error etc to normal commands because they are not hidden in slash menu

fixed by only passing testing server id into them


wear_levelling example don't work with 512K partitions size (IDFGH-7517)

Environment
$ idf.py --version
ESP-IDF v5.0-dev-3202-ga2d5041492-dirty

Problem Description
I tried this.
I changed partitions_example.csv:
# Name,   Type, SubType, Offset,  Size, Flags
# Note: if you have increased the bootloader size, make sure to update the offsets to avoid overlap
nvs,      data, nvs,     0x9000,  0x6000,
phy_init, data, phy,     0xf000,  0x1000,
factory,  app,  factory, 0x10000, 1M,
storage,  data, fat,            , 512K,
#storage,  data, fat,     ,        1M,

example don't work.
Debug Logs
I (27) boot: ESP-IDF v5.0-dev-3202-ga2d5041492-dirty 2nd stage bootloader
I (27) boot: compile time 11:42:42
I (28) boot: chip revision: 1
I (32) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (39) boot.esp32: SPI Speed      : 40MHz
I (44) boot.esp32: SPI Mode       : DIO
I (48) boot.esp32: SPI Flash Size : 2MB
I (53) boot: Enabling RNG early entropy source...
I (58) boot: Partition Table:
I (62) boot: ## Label            Usage          Type ST Offset   Length
I (69) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (77) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (84) boot:  2 factory          factory app      00 00 00010000 00100000
I (91) boot:  3 storage          Unknown data     01 81 00110000 00080000
I (99) boot: End of partition table
I (103) boot_comm: chip revision: 1, min. application chip revision: 0
I (110) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=08864h ( 34916) map
I (132) esp_image: segment 1: paddr=0001888c vaddr=3ffb0000 size=02648h (  9800) load
I (136) esp_image: segment 2: paddr=0001aedc vaddr=40080000 size=0513ch ( 20796) load
I (147) esp_image: segment 3: paddr=00020020 vaddr=400d0020 size=1a704h (108292) map
I (186) esp_image: segment 4: paddr=0003a72c vaddr=4008513c size=06954h ( 26964) load
I (197) esp_image: segment 5: paddr=00041088 vaddr=50000000 size=00010h (    16) load
I (203) boot: Loaded app from partition at offset 0x10000
I (204) boot: Disabling RNG early entropy source...
I (217) cpu_start: Pro cpu up.
I (218) cpu_start: Starting app cpu, entry point is 0x40081040
0x40081040: call_start_cpu1 at /home/nop/esp-idf/components/esp_system/port/cpu_start.c:152

I (0) cpu_start: App cpu up.
I (232) cpu_start: Pro cpu start user code
I (232) cpu_start: cpu freq: 160000000 Hz
I (232) cpu_start: Application information:
I (237) cpu_start: Project name:     wear_levelling_example
I (243) cpu_start: App version:      v5.0-dev-3202-ga2d5041492-dirty
I (250) cpu_start: Compile time:     Jun  2 2022 11:42:34
I (256) cpu_start: ELF file SHA256:  acfddc36ac10872c...
I (262) cpu_start: ESP-IDF:          v5.0-dev-3202-ga2d5041492-dirty
I (269) heap_init: Initializing. RAM available for dynamic allocation:
I (276) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (282) heap_init: At 3FFB2F90 len 0002D070 (180 KiB): DRAM
I (289) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (295) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (301) heap_init: At 4008BA90 len 00014570 (81 KiB): IRAM
I (309) spi_flash: detected chip: generic
I (312) spi_flash: flash io: dio
W (316) spi_flash: Detected size(4096k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
I (330) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (340) example: Mounting FAT filesystem
W (350) vfs_fat_spiflash: f_mount failed (13)
I (350) vfs_fat_spiflash: Formatting FATFS partition, allocation unit size=4096
E (360) vfs_fat_spiflash: f_mkfs failed (14)
E (360) example: Failed to mount FATFS (ESP_FAIL)

Hi @nopnop2002,
For the default 4kB FAT sector size, 512kB is a bit too short for the minimal FAT partition plus wear levelling data. FAT has a minimum of 128 sectors, so the FAT part needs at least 512kB. Wear levelling needs another 4 sectors (16kB) at this partition size.
If you need to use a partition smaller than 528kB, you can change the FAT sector size to 512 bytes in menuconfig.

Thank you for your quick response.
I added the following to sdkconfig.defaults.
It worked.
#
# Wear Levelling
#
CONFIG_WL_SECTOR_SIZE_512=y
CONFIG_WL_SECTOR_SIZE=512
CONFIG_WL_SECTOR_MODE_SAFE=y
CONFIG_WL_SECTOR_MODE=1

same Error in this Example:
https://github.com/espressif/esp-idf/blob/master/examples/peripherals/i2c/i2c_tools/main/i2ctools_example_main.c


Core Dump when creating CNN to learn over images

Issue Description
Creating a fairly shallow CNN. Using a (semi-but-sensible) randomly generated CNN config, to the effect of:

11 layers, alternating between convoluted and subsampling
kernel sizes at 5,5 (input layer) 2,2 (otherwise)
stride at 1,1
padding at 3,3
simple output layer with loss function set to negative liklihood, activation set to softmax.
I have this (from example) not sure if it's actually required:
listBuilder.setInputType(InputType.convolutional(height, width, channels));

Execution eventually ends in a core dump:
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffd0992ca40, pid=6760, tid=0x0000000000001a48
#
# JRE version: Java(TM) SE Runtime Environment (8.0_161-b12) (build 1.8.0_161-b12)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.161-b12 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [ntdll.dll+0x1ca40]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

---------------  T H R E A D  ---------------

Current thread (0x0000000002c09000):  JavaThread "main" [_thread_in_native, id=6728, stack(0x0000000002b00000,0x0000000002c00000)]

siginfo: ExceptionCode=0xc0000005, reading address 0xffffffffffffffff

Registers:
RAX=0x00000000000004bb, RBX=0x0000000001220000, RCX=0x0000000000000a0e, RDX=0x00000000000004bb
RSP=0x0000000002bfaeb0, RBP=0x0000000000000000, RSI=0x0000000000000000, RDI=0x00000000bf0004bb
R8 =0xffc00000ffbffff0, R9 =0x000000000000ec90, R10=0x0000000000000001, R11=0x00007ffd09a29500
R12=0x0000000001220150, R13=0x0000000000000ec9, R14=0xffc00000ffc00000, R15=0x0000000001222590
RIP=0x00007ffd0992ca40, EFLAGS=0x0000000000010207

Top of Stack: (sp=0x0000000002bfaeb0)
0x0000000002bfaeb0:<PHONE_NUMBER>000004<PHONE_NUMBER>000312
0x0000000002bfaec0:<PHONE_NUMBER>000000<PHONE_NUMBER>000000
0x0000000002bfaed0:<PHONE_NUMBER>220000 00007ffd0992922b
0x0000000002bfaee0:<PHONE_NUMBER>000001<PHONE_NUMBER>000000
0x0000000002bfaef0:<PHONE_NUMBER>000000<PHONE_NUMBER>000000
0x0000000002bfaf00:<PHONE_NUMBER>000000<PHONE_NUMBER>000ec9
0x0000000002bfaf10:<PHONE_NUMBER>000001<PHONE_NUMBER>450422
0x0000000002bfaf20:<PHONE_NUMBER>410240 00007ffd094b9960
0x0000000002bfaf30:<PHONE_NUMBER>000028<PHONE_NUMBER>000028
0x0000000002bfaf40:<PHONE_NUMBER>000000 3f8000003f800000
0x0000000002bfaf50:   000000003f800000<PHONE_NUMBER>0003ff
0x0000000002bfaf60:<PHONE_NUMBER>415c68<PHONE_NUMBER>412b44
0x0000000002bfaf70:   000000002ea97790 00007ffd09929e8e
0x0000000002bfaf80:<PHONE_NUMBER>415c78<PHONE_NUMBER>460ba8
0x0000000002bfaf90:<PHONE_NUMBER>bfb260 000000006cd7f0c0
0x0000000002bfafa0:   000000002ea978d0 00007ffd09929e8e

Instructions: (pc=0x00007ffd0992ca40)
0x00007ffd0992ca20:   e9 aa fc ff ff 41 39 77 0c 0f 85 b1 0e 00 00 49
0x00007ffd0992ca30:   8b 47 30 4e 8b 34 f0 4d 3b e6 74 56 4d 8d 46 f0
0x00007ffd0992ca40:   41 8b 50 08 89 94 24 b8 01 00 00 39 73 7c 74 2e
0x00007ffd0992ca50:   8b bb 88 00 00 00 33 fa 89 bc 24 b8 01 00 00 0f

Register to memory mapping:

RAX=0x00000000000004bb is an unknown value
RBX=0x0000000001220000 is an unknown value
RCX=0x0000000000000a0e is an unknown value
RDX=0x00000000000004bb is an unknown value
RSP=0x0000000002bfaeb0 is pointing into the stack for thread: 0x0000000002c09000
RBP=0x0000000000000000 is an unknown value
RSI=0x0000000000000000 is an unknown value
RDI=0x00000000bf0004bb is an unknown value
R8 =0xffc00000ffbffff0 is an unknown value
R9 =0x000000000000ec90 is an unknown value
R10=0x0000000000000001 is an unknown value
R11=0x00007ffd09a29500 is an unknown value
R12=0x0000000001220150 is an unknown value
R13=0x0000000000000ec9 is an unknown value
R14=0xffc00000ffc00000 is an unknown value
R15=0x0000000001222590 is an unknown value

Stack: [0x0000000002b00000,0x0000000002c00000],  sp=0x0000000002bfaeb0,  free space=1003k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  org.nd4j.nativeblas.Nd4jCpu$NativeOps.execCustomOp(Lorg/bytedeco/javacpp/PointerPointer;JLorg/bytedeco/javacpp/Pointer;)I+0
j  org.nd4j.linalg.cpu.nativecpu.ops.NativeOpExecutioner.exec(Lorg/nd4j/linalg/api/ops/CustomOp;Lorg/nd4j/linalg/api/ops/OpContext;)[Lorg/nd4j/linalg/api/ndarray/INDArray;+89
j  org.nd4j.linalg.factory.Nd4j.exec(Lorg/nd4j/linalg/api/ops/CustomOp;Lorg/nd4j/linalg/api/ops/OpContext;)[Lorg/nd4j/linalg/api/ndarray/INDArray;+5
j  org.deeplearning4j.nn.layers.mkldnn.MKLDNNConvHelper.preOutput(Lorg/nd4j/linalg/api/ndarray/INDArray;Lorg/nd4j/linalg/api/ndarray/INDArray;Lorg/nd4j/linalg/api/ndarray/INDArray;[I[I[ILorg/deeplearning4j/nn/conf/layers/ConvolutionLayer$AlgoMode;Lorg/deeplearning4j/nn/conf/layers/ConvolutionLayer$FwdAlgo;Lorg/deeplearning4j/nn/conf/ConvolutionMode;[ILorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)Lorg/nd4j/linalg/api/ndarray/INDArray;+450
j  org.deeplearning4j.nn.layers.convolution.ConvolutionLayer.preOutput(ZZLorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)Lorg/nd4j/linalg/primitives/Pair;+507
j  org.deeplearning4j.nn.layers.convolution.ConvolutionLayer.preOutput4d(ZZLorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)Lorg/nd4j/linalg/primitives/Pair;+4
j  org.deeplearning4j.nn.layers.convolution.ConvolutionLayer.backpropGradient(Lorg/nd4j/linalg/api/ndarray/INDArray;Lorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)Lorg/nd4j/linalg/primitives/Pair;+328
j  org.deeplearning4j.nn.multilayer.MultiLayerNetwork.calcBackpropGradients(Lorg/nd4j/linalg/api/ndarray/INDArray;ZZZ)Lorg/nd4j/linalg/primitives/Pair;+555
j  org.deeplearning4j.nn.multilayer.MultiLayerNetwork.computeGradientAndScore()V+384
j  org.deeplearning4j.nn.multilayer.MultiLayerNetwork.computeGradientAndScore(Lorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)V+1
j  org.deeplearning4j.optimize.solvers.BaseOptimizer.gradientAndScore(Lorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)Lorg/nd4j/linalg/primitives/Pair;+13
j  org.deeplearning4j.optimize.solvers.StochasticGradientDescent.optimize(Lorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)Z+85
j  org.deeplearning4j.optimize.Solver.optimize(Lorg/deeplearning4j/nn/workspace/LayerWorkspaceMgr;)V+9
j  org.deeplearning4j.nn.multilayer.MultiLayerNetwork.fitHelper(Lorg/nd4j/linalg/dataset/api/iterator/DataSetIterator;)V+541
j  org.deeplearning4j.nn.multilayer.MultiLayerNetwork.fit(Lorg/nd4j/linalg/dataset/api/iterator/DataSetIterator;)V+2
(my own code ommittted)

Version Information
Please indicate relevant versions, including, if relevant:

Deeplearning4j version: 1.0.0-beta4
Platform information (OS, etc) Windows 10.0 , 64 bit Build 17134 (10.0.17134.753)
Java HotSpot(TM) 64-Bit Server VM (25.161-b12) for windows-amd64 JRE (1.8.0_161-b12), built on Dec 19 2017 17:52:25 by "java_re" with MS VC++ 10.0 (VS2010)

Additional Information
Where applicable, please also provide:

Full log or exception stack trace (ideally in a Gist: gist.github.com)
pom.xml file or similar (also in a Gist)

Contributing
If you'd like to help us fix the issue by contributing some code, but would
like guidance or help in doing so, please mention it!

Best guess is that this is an invalid configuration that is slipping through validation.
First: I noticed that you're on 1.0.0-beta4. Upgrade to 1.0.0-beta6 and try again (no point us debugging this if it's already fixed).
If it still happens on 1.0.0-beta6, can you share the Java code for us to try and reproduce/debug this?

Thanks, yes it's probably a misconfig - upgrading gives me an error instead of a core dump:
java.lang.IllegalStateException: Cannot perform evaluation with NaNs present in predictions: 2 NaNs present in predictions INDArray

	at org.nd4j.base.Preconditions.throwStateEx(Preconditions.java:641)
	at org.nd4j.base.Preconditions.checkState(Preconditions.java:286)
	at org.nd4j.evaluation.classification.Evaluation.eval(Evaluation.java:405)
	at org.nd4j.evaluation.BaseEvaluation.eval(BaseEvaluation.java:271)
	at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.doEvaluationHelper(MultiLayerNetwork.java:3436)
	at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.doEvaluation(MultiLayerNetwork.java:3384)
	at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.evaluate(MultiLayerNetwork.java:3578)
	at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.evaluate(MultiLayerNetwork.java:3488)
	at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.evaluate(MultiLayerNetwork.java:3319)

Thanks for testing.
OK, so I'll close this then. Maybe it was a bug on our end in 1.0.0-beta4 (specific to MKLDNN or something).
NaNs could be due to bad tuning - i.e., learning rate too high. Or lack of normalization for input data. Or bad combination of loss function + activation function for output layer, for example.
I'll close this as resolved, if you can't work out the NaNs feel free to ask at https://community.konduit.ai/


Query execution weird behaviour

Hello,
I'm experiencing a weird issue when running queries. I ran some delete queries and I checked the DB, and it behaved as expected. However, when I go into Azure, I see that the query is still running, and changes to complete, and after a long period, it times out due to inactivity,  then the status is revised as Failed.
The interesting thing is that the query does not roll back.

We've previously tried the ODBC driver and did not experience this issue.
Thank you

Hi @wale-kobai , thanks for filing this. Just to confirm a few things, can you post an example of how you're using the driver? Are you closing the connection / result set? Inactivity errors are mostly due to an open execution that has not been closed for more than 10 minutes.

@wale-kobai , I see. I'll try to reproduce your problem, meanwhile, can you defer db.Close()?

The func NewSql is called from the main method. We can add the defer after db := sql.OpenDB(connector). Or would you want us to open a connection per method call and close the connection after ?

Hi @andrefurlan-db, we updated the code as follows to make sure we close the connection that now we get from the db instance after every execution. We are still seeing the same behavior.
func (beSQL *BackendSQL) RunExec(query string) error {
	//utils.LogInfoMsg("[SQLExec] " + query)

	ctxRoot := dbsqlctx.NewContextWithCorrelationId(context.Background(), "Kobai RunExec")

	defer func() {
		if err := recover(); err != nil {
			fmt.Println("RunExec Panicked: ", err)
		}
	}()

        var err error
	var conn *sql.Conn
	if beSQL.Cfg.Top.Backend == "databricks" {
		conn, err = beSQL.Db.Conn(ctxRoot)
		if err == nil {
			defer conn.Close()
			_, err = conn.ExecContext(ctxRoot, query)
		}
	} else {
		_, err = beSQL.Db.Exec(query)
	}
	if err != nil {
		utils.LogError(err, "SQL Exec failed.")
		return err
	}

	return nil
}

Hi @wale-kobai and @ezbercihk! Sorry for the confusion. I just mean:
// ...
db := sql.OpenDB(connector)
defer db.Close()
// ...

The sql package will take care of the connection pool, so no need to close per connection. It is just good to make sure the pool gets drained at the end of Main().
I was unable to reproduce (maybe different DBR versions), but I'll push a fix anyway that in theory should help.

Hi @wale-kobai. @ezbercihk. We found the root cause. We addressed what we could here: https://github.com/databricks/databricks-sql-go/pull/65
The problem was that a query that returns rows was issued using ExecContext, and ExecContext was not preemptively closing the result set. Databricks will at first consider the query successful and wait until the client fetch all results. In this case, the client did not fetch, and then after 10 minutes or so the query would be marked as inactive and failed.
This can still happen if you use QueryContext, get rows, and do not close it until fetching all results. So please be careful with this scenario.
Please test and let us know if it is now working as expected.
Thanks for the help.

@andrefurlan-db thank you! We are running our tests and observing. We were not getting an end time for the queries in the Databricks UI but with this change we can see them populated now. We will update as we complete the end to end testing to make sure all is working as intended.

@andrefurlan-db we finished testing. Everything is looking great! Thank you for turning this around quickly! We really appreciate it.


fraud: Potential flakeyness in TestService_Sync

https://github.com/celestiaorg/celestia-node/actions/runs/3052292812/jobs/4921511036#step:4:343
=== RUN   TestService_Sync
service_test.go:236:
Error Trace:	/home/runner/work/celestia-node/celestia-node/fraud/service_test.go:236
Error:      	Received unexpected error:
context deadline exceeded
Test:       	TestService_Sync

Closing as stale


Behavior of processes during export and then import operation

When we are exporting solutions from D365 (DEV environment), the behavior which we are seeing around processes is different time to time. sometimes it gets deactivated in the QA environment where its imported or sometimes the state of processes remains same (as per DEV environment) when imported to QA environment.
Kindly advise if the behavior is expected or if its an issue.

I presume you set the parameter publish workflows to true on the task?

Managed or unmanaged solution?

Managed solutions.

I think this is expected. All the parameters for import are already provided for you in the task and not much more we can do as part of import solution. You could consider adding some post import steps in your deployment if you want to do more things.

We will try to uncheck the publish workflow checkbox and see if we can retain the state of processes from DEV to QA post export and import.


Runtime error with Rover Pro "errorterminate called after throwing an instance of 'int' "

Hi
I am trying to setup Rover Pro drivers in my own computer and followed the instructions as per the Computer setup guide 3.1.0(latest). I am using Ubuntu 18.04 and ROS melodic. The Build was successful and status is shown as "Active(running)", but it is throwing an error "errorterminate called after throwing an instance of 'int' " followed by "[roverrobotics_driver-2] Process has died".
Could you please help me here to figure out what is going wrong or if I am missing anything?

Apologies for the delay in getting back to you. "errorterminate..." typically means that the payload computer is not seeing the robot. That is often because some connection has come unplugged. It could also be due to using an old Pro interface board with our new Pro installation. If you still need assistance with this please contact us here

Hi,
We are having the same issue, also with Ubuntu 18.04 and ROS melodic. @ljnap, @RoverRoboticsProduction  could you tell us how you fixed it? Thanks


Add a space between label key and label name in application list page

What would you like to be added:
To be unified with the application details page and to be more readable.

Why is this needed:

/assign @Hosshii


Webpublisher: Add target to TVPaint validator

Issue
TVPaint validator is enabled for all webpublisher publishing.
Changes

add target to tvpaint related publishing

You can close this PR as the issue has been fixed in #2347

Already fixed in https://github.com/pypeclub/OpenPype/pull/2347/files


Question about using CITE seq for different Ab barcode design

Hi,
it is not necessarily an issue, but I am interested in using CITE-seq to analyse my data. However, I am not sure how I should use it, since my Ab-barcodes design is a bit different.
it is
19 nt PCR handle - 10 nt Ab Barcode - 8 nt UMI - Stagger (1-16nt) - 8 nt UMI - 21 nt poly A
How shall I specify the locations of the 2 UMI parts?
Thank you.
Best,
Dyah

Hey @dwkarjosukarso
it would depend on how those parts are distributed on the reads.
R1 input is for the cell barcode and the UMI
R2 input is for the antibody barcode tag
Both inputs have different options available. So, if all your parts are spread out as mentioned above, you will have no problem using CSC. If not, then you have to do some restructuring of the files beforehand.

Hi @Hoohm
thanks for your reply.
In our experiment we have
R1 antibody barcode tag (structure: see previous message)
R2 cell barcode and UMI
Thus, to run CITEseq I swapped the R1 and R2 to match CITEseq requirements.
We are using plate-based Celseq2 format, so I specified the cell barcode and UMI position, and gave a cell barcode whitelist. The rest is default settings
We detected 80 Ab features, whereas the experiment only used 71 Ab. Do you have any suggestion on what to improve to get accurate number?

How did you find 9 features that you did not provide?

Feature counts.
In the Ab barcodes list, I provided 10 cell hashing barcodes that we have. Cell hashing was not performed in this experiment, so I was expecting 0 counts.

Hey @dwkarjosukarso
just so that I can tell you with certainty what's needed, can you write your read/barcode scheme like this?
R1.fastq.gz
CCCCCCCCUUUUUUUUUU
R2.fastq.gz
TTTTTTTTTTTTNNNNNNNNNNNNNNNNNN
This scheme would be an example where R1 holds 8 cell barcodes and 10 UMI
R2 would hold 12 TAG bases and 18 unknown or irrelevant.

Hi @Hoohm
The read/barcode scheme is below:
R1.fastq.gz
CCCCCCCCUUUUUUUU
R2.fastq.gz
TTTTTTTTTTN[53]
R1: 8 cell barcode and 8 UMI
R2: 10 TAG and 53 of irrelevant (8 UMI, 1-16 Stagger, 8 UMI, 18 poly A)

So if you give: -bcf 1 -bcl 8 -umif 9 -umil 16 it doesn't work?

It works, but somehow I also detected other antibodies that were not used in the panel during experiment, but I included in the analysis. E.g. the total panel is 80 Ab, but only 70 used in the actual experiment. During analysis I included the extra 10 Ab anyway to see how specific the Ab barcode detection and I still detect cells with 80 Ab even with settings that doesn't allow mismatch (max error 0, umi_collapse 0, cell_barcode_collapse 0. Shall I just exclude those cells from the analysis?

I'm guessing those numbers are pretty low. If not, then it means something might be wrong with the protocol or you have "transfer" from an experiment to another.
Could also be a sequencing issue, if you are sequencing all together but you get index hoping: https://www.illumina.com/science/education/minimizing-index-hopping.html

Closing this for now. Let me know if you need more help.


Definitions for ijf and ujf

Added mentions to ijf and ujf and the dates they first appear. Additionally added and example for uj and updated links to their respective sections inside the joins page.

Merged and supplemented locally; pushed to server.


Latest image broke IPv6

Watchtower auto-updated my container and now IPv6 doesn't work anymore. I updated the startup command to include "-H=X-Forwarded-For" instead of the old flag but all I see is my routers IP address when used internally. I used to see my own IPv4 or IPv6.
Maybe it's a good idea to tag versions so we can go back to previous container versions if needed.

Hmm. I cannot explain why but it works without me changing anything lol.


As a CIF coordinator, I want to see individual milestones in the TaskList, so that I can see each milestone's individual status and navigate to each easily

Description:
The TaskList should show an overall status for the Milstones (if a milestone is late, it would show late. If the milestones are on track it would show on track).
Each milstone should also be listed in the TaskList individually with a status and a link that will direct the user to the milestones page and directly to that milestone using an anchor.
Wireframe: https://www.figma.com/file/PzOY8RyQnVXnjZJdSv2AqQ/Wireframing_Figma?node-id=1209%3A2663
Acceptance Criteria:
Given I am viewing the TaskList
When there are multiple milestones
Then I can see all milestones with links in the TaskList
Given I am viewing the TaskList
When a milestone is late
Then I can see an overall status of late
Given I am viewing the TaskList
When milestones are on track
Then I can see an overall status of on track
Given I am viewing the TaskList
When I click on a milestone link
Then I am taken directly to that milestone in the milestone page
Development Checklist:

[ ] An overall status for milestones shows whether they are on track or late
[ ] All existing milestones are shown with links in the TaskList
[ ] Clicking a milestone in the TaskList takes the user directly to that milesone
[ ] Meets the DOD

Definition of Ready (Note: If any of these points are not applicable, mark N/A)

[x] User story is included
[ ] User role and type are identified
[x] Acceptance criteria are included
[ ] Wireframes are included (if required)
[ ] Design / Solution is accepted by Product Owner
[ ] Dependencies are identified (technical, business, regulatory/policy)
[ ] Story has been estimated (under 13 pts)

·Definition of Done (Note: If any of these points are not applicable, mark N/A)

[ ] Acceptance criteria are tested by the CI pipeline
[ ] UI meets accessibility requirements
[ ] Configuration changes are documented, documentation and designs are updated
[ ] Passes code peer-review
[ ] Passes QA of Acceptance Criteria with verification in Dev and Test
[ ] Ticket is ready to be merged to main branch
[ ] Can be demoed in Sprint Review
[ ] Bugs or future work cards are identified and created
[ ] Reviewed and approved by Product Owner

Notes:

Hey team! Please add your planning poker estimate with ZenHub @BCerki @dleard @gurjmatharu @matthieu-foucault @mikevespi @Sepehr-Sobhani

@suhafa  does it mean we have one milestone by default? Or does the link become "Milestone reports" in the tasklist, when there are no milestones available?

We decided earlier this week that we don't want default miletstones.

@pbastia @dleard The design has one (empty) milestone by default. Is there a reason why we decided to not have default milestones?

At project creation time, milestones are probably not going to be set right away, so having one by default means attempting to submit the project will be blocked on validation errors until it is removed. Some projects may never even have milestones to enter (projects that do not get approved for funding). Quarterly and Annual reports are not pre-populated with a default report.

Maybe instead we can have a tasklist item that just says "Milestone reports" to mirror what we have for the other reports, and that link would be replaced by the first milestone when it is created?

Good point @dleard didn't realize that constraint. In usability testing sessions, the CIF team clicked on the "Milestone report" many times, and other task list headings to go to that particular page. I wonder if we can keep it clickable even when it has sub-items, especially in the case of forms (quarterly and annual reports too) since all forms are in one page any way (not in the case of Project Overview perhaps where it doesn't have a page of its own, and only has sub-task list items as of now, which could again change in the future)

@suhafa the behaviour of those headers is to expand when needed, to avoid having a large task list when most items have been left untouched. If we changed that behaviour, we'd lose the functionality


[ci skip] adding user @adament

Hi! This is the friendly automated conda-forge-webservice.
I've added user @adament as instructed in #21.
Merge this PR to add the user. Please do not rerender this PR or change it in any way. It has [ci skip] in the commit message to avoid pushing a new build and so the build configuration in the feedstock should not be changed.
Please contact conda-forge/core to have this PR merged, if the maintainer is unresponsive.
Fixes #21

Welcome to the team! 🥳


Removed contact information from ApiCreateOrUpdateProperties.

This causes the API name to be set to the contact name when publishing the api. The contact information is still contained in the openapi spec files and is set correctly on apim when publishing.
fixes #213
It looks to me the microsoft.apimanagement/service gets very confused with a json tag named "name" and uses that as the API display name despite there being a displayname value and the "name" tag being inside a contact node. The real fix might actually be in that base management API instead of in this extractor/importer logic.
Also this might not be the best way to go about it. The serialize call on the apimodel is only used for writing the api information as far as I see, but if this gets reused elsewhere contact info might be wanted over there.
But right now omitting the contact info from the apiInformation.json file fixes the issue where contact name gets used as display name for the API.

Duplicate of #268


CRDs not recognised

Dear Team, could you please help me understand why identical SAP BTP Service Operator setup behaves different on a new K8s cluster?
We are trying to replicate the very same (a bit outdated) SAP BTP Service Operator setup on another (fresh) K8s cluster. Using the next versions:

Kubernetes v1.22.7
Helm v3.1.2
Cert Manager v1.6.1
SAP BTP Service Operator v0.1.18

// creating NS explicitly, since '--create-namespace' is not recognized  'Error: unknown flag: --create-namespace'
kubectl create namespace sap-btp-operator

helm repo add sap-btp-operator https://sap.github.io/sap-btp-service-operator

helm upgrade --install sap-btp-operator sap-btp-operator/sap-btp-operator \
    --namespace=sap-btp-operator \
    --version=v0.1.18 \
    --set manager.secret.clientid='<client_id>' \
    --set manager.secret.clientsecret='<client_secret>' \
    --set manager.secret.url=https://service-manager.****.ondemand.com \
    --set manager.secret.tokenurl=https://<subdomain>.authentication.****.ondemand.com

when now trying to deploy with Piper, it fails with:
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceInstance" in version "services.cloud.sap.com/v1alpha1"
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceBinding" in version "services.cloud.sap.com/v1alpha1"
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceInstance" in version "services.cloud.sap.com/v1alpha1"
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceBinding" in version "services.cloud.sap.com/v1alpha1"
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceInstance" in version "services.cloud.sap.com/v1alpha1"
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceBinding" in version "services.cloud.sap.com/v1alpha1"
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceInstance" in version "services.cloud.sap.com/v1alpha1"
21:17:38  info  kubernetesDeploy - unable to recognize "./config/****/k8s/deployment.yml": no matches for kind "ServiceBinding" in version "services.cloud.sap.com/v1alpha1"
21:17:38  fatal kubernetesDeploy - Deployment with kubectl failed. - running command 'kubectl' failed: cmd.Run() failed: exit status 1

However, deployment for other very same cluster (configured end of last year with the very same versions of everything) works:
21:35:18  serviceinstance.services.cloud.sap.com/**** unchanged
21:35:18  servicebinding.services.cloud.sap.com/**** unchanged
21:35:18  serviceinstance.services.cloud.sap.com/**** unchanged
21:35:18  servicebinding.services.cloud.sap.com/**** unchanged
21:35:18  serviceinstance.services.cloud.sap.com/**** unchanged
21:35:18  servicebinding.services.cloud.sap.com/**** unchanged
21:35:18  serviceinstance.services.cloud.sap.com/**** unchanged
21:35:18  servicebinding.services.cloud.sap.com/**** unchanged
21:35:18  info  kubernetesDeploy - SUCCESS

What could be the reason for that? I see that https://github.com/SAP/sap-btp-service-operator/releases/download/v0.1.18/sap-btp-operator-v0.1.18.tgz contains a sap-operator.yml with CRDs, so helm should install those.

My fault. Jenkins was using some old kubeconfig file of the cluster with the Service Catalog. Sorry for panic.


Crash when providing the wrong number of type parameters to an instance

This code should produce an error, but it crashes the compiler instead:
T : A B => trait (A -> B)
instance T Number : ...

Here is the crash message:
thread 'main' panicked at 'could not find TypeParameterId { file: Path("bug.wpl"), counter: 1 } in substitutions', frontend/src/analysis/typecheck/engine.rs:524:40

Fixed in cb8ee6df07d2dfa6e31f1e91ff1d285d7a6e5cb8.


rfid reader does not work

Hi all,
i installed phoniebox with the single line script and was asked for the RFID Reader (USB) which was detected.
I also re-ran the configuration:
pi@MusicBoxJonah:~/RPi-Jukebox-RFID/scripts $ python2 RegisterDevice.py
Choose the reader from list
(0, 'HXGCoLtd Keyboard')
Device Number: 0

But when I look in the webinterface the RFID reader is diabled. If i click enable it turns green but after refreshing the page its disabed again.
Any idea what to do?
Thanks so much!

Fix in #767 was merged.
Could everyone still having this issue, check if a installation described in https://github.com/MiczFlor/RPi-Jukebox-RFID/wiki/INSTALL-stretch works now again?

@s-martin: Thank you.
Sorry for the noob question: Does "merged" mean the fix is included in the stable version? ;)
Also I used buster before, does it make any difference? So should the one-line installer work again?
Thanks again

Yes, the fix is now included in the stable version.
One line installer should work now again.

Hello, Should i delete the old installation and try the one line script for stretch again? By the way I appreciate all the help!

Hello, Should i delete the old installation and try the one line script for stretch again? By the way I appreciate all the help!

Yes, but be aware, if you delete the old installation you lose all your settings.

Just reinstalled the whole thing and now the rfid reader works! Scans just as it’s supposed to but now i have a problem on phoniebox itself. I registered an rfid card with an album from spotify but now when i scan the card only the “thumbnail” of the album shows up instead of actually playing the album itself, any clue as to what this problem could be?

Just reinstalled the whole thing and now the rfid reader works! Scans just as it’s supposed to but now i have a problem on phoniebox itself. I registered an rfid card with an album from spotify but now when i scan the card only the “thumbnail” of the album shows up instead of actually playing the album itself, any clue as to what this problem could be?

Good to hear that the reader works again.
The not working streaming could be related to #766

werks - thanks you!


CR Dub changes

Crunchyroll added the option to change the audio.
Download no longer works.

Could you give me your download logs? I'm oddly still able to download despite the Crunchyroll update (seems the v1 API still works, I'm currently looking into implementing the v2 API though)

It has settled, was a cache problem

It should be working again, Crunchyroll is having a hard time deciding if they want to disable the v1 API or not, either way, we are working on porting it to the v2 API

It should be working again, Crunchyroll is having a hard time deciding if they want to disable the v1 API or not, either way, we are working on porting it to the v2 API

Is there an ETA on then this update will roll out?

It should be working again, Crunchyroll is having a hard time deciding if they want to disable the v1 API or not, either way, we are working on porting it to the v2 API

Is there an ETA on then this update will roll out?

We just released a temporary fix as a pre-release of 3.2, you can go ahead and use that in the meantime

It should be working again, Crunchyroll is having a hard time deciding if they want to disable the v1 API or not, either way, we are working on porting it to the v2 API

Is there an ETA on then this update will roll out?

We just released a temporary fix as a pre-release of 3.2, you can go ahead and use that in the meantime

Great, thank you

We just released a complete fix with version 3.3, things should be back to normal, and in some areas better than ever


Delete pagerduty from changes.sql and deployments.sql

Looks like I accidentally copied pagerduty code in the JOIN operation when I've added support for our service catalog.

Thanks for the review, @emaydeck-mozilla! 🙇🏻♂


(mandrill_templates): added new fields for Template

https://mandrillapp.com/api/docs/templates.JSON.html#method=info

@mattbaird is there anything you need to accept this PR?
thank you @vpashka =)


Published on Docker Hub?

Is this published on Docker Hub? if so, under which name? (If so, maybe also add this to the Readme, please.)
If not, maybe consider publishing it there…

I don't think it is a good candidate - the point is to automate the building custom dockers for latex projects, there isn't just one; it's a user-specific family.

@wmacevoy I know its been three years, but can you elaborate on why this isn't a good candidate for dockerhub a bit more?

Well, I thought there should be lots of base versions; one for each specific latex use case.  In retrospect there is probably room for a "small" and "large" version as a container.  I also didn't want the security of the dervied system to depend on the security of releases on this system; you can "rebase" your container but you don't have to.
The base install is pretty basic.  The added tools (like symlinks to all the commands) is custom not-dockerisms.  It may be better to use that; but still not convinced.


[GPU]Xetla support MTL

Description
Added FPU mma_engine in int4 woq to adapt to MTL integrated graphics card
Bandwidth utilization is above 80%
On the Dg2 platform, there is more than 10% performance improvement for M=1

detail description
Issues: xxx
Expected Behavior & Potential Risk
the expected behavior that triggered by this PR
How has this PR been tested?
how to reproduce the test (including hardware information)
Dependency Change?
any library dependency introduced or removed
None

will the low FPU performance issue of first-token generation be fixed in this PR?


added material icons

Removed Robota !important to make sure it does not clash with the font choice.

Any idea why CSS is not loaded ?

Because I applied your PR to the forum. Let me change it back.

Not like that. That line should not block CSS from loading. Please feel free to change.

OK, it should be done now.
Btw, yes, that line caused the css to not load. Try it yourself on a localhost Flarum.

I do not have Flarum on localhost. Will see what I can do.

Sign up to the demo forum and I'll give you admin access.

Late night here. Will do tomorrow

Can you see #62?
It's working, live on the demo forum: https://flightsimtr.tk


File target: can't use absolute path at root

Type: Bug
NLog version: 4.2.3
Platform: .Net 4.5
Current NLog config
    <target fileName="D:\log.txt"  />

What is the current result?
log.txt is created in the current directory on D: drive.
What is the expected result?
log.txt is created at the root of D: drive.
Workaround?
Use cleanupFileName="false".
The reason why it doesn't work is this line of code:
https://github.com/NLog/NLog/blob/master/src/NLog/Targets/FileTarget.cs#L1997
When cleaning up the filename, the current value is split in two but the last separator \ isn't kept (on purpose or as an off-by-one error, I don't know).
For instance:

some\path\log.txt becomes some\path + log.txt
d:\log.txt becomes d: + log.txt.

The pieces are later put back together with Path.Combine, but it won't give the expected results:

some\path\log.txt is ok because the missing separator is added.
d:log.txt is not ok! It becomes: log.txt in the current directory of the d: folder.

You can fix the line 1997 by keeping the last separator in the path.
But completely parsing Win32 paths properly is very hard! I suggest that you use Path.GetFileName() to extract the filename to clean and Path.GetDirectoryName() to get the path to the file. Doing so would fix the bug reported here.
EDIT: Also, since you seem to try allocations as much as possible in the code of CleanupInvalidFileNameChars. If the file was not cleaned up (there was no invalid char), there is no need to build a new result by combining the path and filename. The original can just be returned as is.

This is indeed a bug. Is it possible to send a PR for this?

Oh sorry, I didn't see you did a PR already, sorry for the duplicate :frowning:
The code 99% identical, except you have added tests and I did not!
Just for the record, though: I did not use Path.GetDirectoryName() as I proposed, because the following case would not work: \\fs01\log.txt. As the MSDN documentation unclearly points out Path.GetDirectoryName() actually returns null in this case :angry:

Yes indeed I also didn't used Path.GetDirectoryName() for those cases ;)
Thanks for the new PR, but I won't accept it. :evil:


What is template processing?

What exactly is "template processing"? Which operations result in this time increasing?

Thank you for the question @Hasokeyk @Fidelity88 !
Sorry for the long delay.. 😔
It's basically creating the rendered html. It can be deceiving because one might think it only contains html processing, but any plugin can contribute to this by hooking to wp_head, wp_footer, the_content or any other filter that modifies the output.
Strictly saying it's the time from rendering the doctype or <html> to the end of the footer or in other words the </html>.

@ocReaper would it be possible to further define this. As in, more details?
Right now, “template processing” takes the most time out of all server timing headers. I’d love to see more headers to define the precise location on which plugin, theme or file adds unnecessary time to loading


lonn plugins

TODO: arrow bubble texture support

The ports are not finished, the remaining functions are things outside of my very limited skillset.


Diagnostic interfaces

The current logic only works on local filesystems, which is
unnecessarily prescriptive for runners. Reworking the code in terms of
interfaces allows the runner to control how these artifacts are
recorded.

r:@herohde
r:@lostlock

r:@lostluck

@herohde PTAL

PTAL with regards to the user API surface.
I haven't actually tested these changes, there are still some internal inconsistencies and likely bugs. I just wanted to make sure we're on the same page with regards to the high-level API per our previous discussions.

PTAL, this is ready for review.
This PR also fixes the Dataflow job submission process to work with the options changes made to support the Flink runner. I've verified CPU profiling works on Cloud Dataflow. The session runner interface needs to be reconsidered, as one monolithic output file is not a good match to most cloud storage systems. Changing the output to chunked files is the most likely improvement, but requires changes to the session runner. I've opened BEAM-4015 to track this development, so the session hook is TBD in Dataflow for now.

There's an example of hooking profiling in the Dataflow runner.

PTAL all comments addressed.

Thanks.
I meant a simple example pipeline I can run on both Dataflow and Flink and that illustrates how the hook mechanisms should be used. I'm fine if that being added separately and not have it block this PR.


pip install -r requirements.txt fails on inherited requirements not specifying versions

From pip install -r requirements.txt:
 In --require-hashes mode, all requirements must have their versions pinned with ==. These do not:
    enum34 from https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl#sha256=6bd0f6ad48ec2aa117d3d141940d484deccda84d4fcd884f5c3d93c23ecd8c79 (from argon2-cffi==18.1.0->-r requirements/main.txt (line 6))
    futures>=3.2.0; python_version < "3.2" from https://files.pythonhosted.org/packages/2d/99/b2c4e9d5a30f6471e410a146232b4118e697fa3ffc06d6a65efde84debd0/futures-3.2.0-py2-none-any.whl#sha256=ec0a6cb848cc212002b9828c3e34c675e0c9ff6741dc445cab6fdd4e1085d1f1 (from google-api-core==1.1.1->-r requirements/main.txt (line 166))
    contextlib2; python_version < "3.2" from https://files.pythonhosted.org/packages/a2/71/8273a7eeed0aff6a854237ab5453bc9aa67deb49df4832801c21f0ff3782/contextlib2-0.5.5-py2.py3-none-any.whl#sha256=f5260a6e679d2ff42ec91ec5252f4eeffdcf21053db9113bd0a8e4d953769c00 (from raven==6.7.0->-r requirements/main.txt (line 392))
    ipaddress; python_version < "3" from https://files.pythonhosted.org/packages/fc/d0/7fc3a811e011d4b388be48a0e381db8d990042df54aa4ef4599a31d39853/ipaddress-1.0.22-py2.py3-none-any.whl#sha256=64b28eec5e78e7510698f6d4da08800a5c575caa4a286c93d651c5d3ff7b6794 (from cryptography==2.2.2->-r requirements/deploy.txt (line 47))

Is anyone else getting that?

@standaloneSA Are you trying to get Warehouse up and running locally? You shouldn't have to run pip install -r requirements.txt, see our Getting Started Guide instead.

@di
Hi Dustin,
Thanks, but I am actually getting this when I'm running 'make serve', as indicated in the Getting Started Guide you linked to.

I think @nlhkabu was having this issue a few days ago.


git: Reimplement cloneRefName using cloneTag's implementation to support annotated tags

cloneRefName() failed to support annotated tags and would attempt to clone the annotated tag object's id as if it were a commit object. This would cause the following error (with the tag's hash, not the commit):
unable to resolve commit object for 'da39a3ee5e6b4b0d3255bfef95601890afd80709': object not found

cloneTag() already had support for annotated tags, and could actually be modified to support cloning any ref with no modification. The implementation was moved to cloneRefName() and now cloneTag() is a wrapper for cloneRefName().
Sharing an implementation between cloneRefName() and cloneTag() means error messages are slightly worse: they always say "ref" now instead of "tag" when appropriate.
Due to a bug(?) in go-git a ref like refs/pull/1/head can't be cloned used with SingleBranch == True. Go-git's Repository.cloneRefSpec() will try to build a refspec using .Short() on the ref, which doesn't behave the same for refs named like this (that don't match any RefRevParseRules).
https://github.com/src-d/go-git/blob/v4.13.1/repository.go#L826-L829
A test for cloneRefName() using an annotated tag was added. Arguably the tests could be merged somewhat now that they share an implementation. There is one change in the cloneTag tests for expectConcreteCommit that I don't quite understand.
There is a TODO in this code about SingleBranch. Other that, I think this approach works. I've tested using the unit tests and they pass. If you have a different approach you'd like to use to fix this, please feel free to close this PR if you want an alternate solution.

Hi @bburky, thanks for discovering this issue and opening this PR! I did manage to repro this issue on my local.
These changes seem to have a lot of blast radius, bringing forward other issues in go-git and also seems to be breaking existing tests. An easier and straightforward solution might be to instead detect if the ref name is pointing to a tag and then just do g.cloneTag(). We could do the same for branches too.
One thing we'd need to make sure about how Reference is set on the resultant git.Commit object. When using a branch or a tag directly, the Reference starts with the short version of the ref, such as main, v0.0.1, etc. So the logic to quit early by checking opts.LastObservedCommit needs to account for this.
asking @hiddeco and @darkowlzz to weigh in here also.

An easier and straightforward solution might be to instead detect if the ref name is pointing to a tag and then just do g.cloneTag()

If you have a good way to do this with a simper change, it may be for the best. This could definitely introduce unexpected issues, I don't know why the expectConcreteCommit test changed for example (but I didn't debug it too closely).
I suppose you could do what you suggest based on a ref name matching refs/tags/. That may be a reliable enough heuristic (technically ref names are by convention only and you can put a git tag object under a nonstandard ref). The approach I tried to take was doing g.cloneTag() for all refs (which required refactoring done in this PR, because it previously only handled tag names not any ref).

Now that go-git has support for peeled refs (see: https://github.com/go-git/go-git/pull/750), solving this issue becomes a lot easier. We can use the AppendPeeled option when we call remote.ListContext() to include the commit ID that all annotated tags point to with the ^{} syntax. The way I see it we have two options:

Instruct users in docs to always use the ^{} syntax when specifying an annotated tag under a ref name.
If we could find the ref && ref is a tag && the ref doesn't end with ^{}, then we try and see if the ref list contains an entry for that ref appended with ^{}. If such an entry exists, then we use that instead and if it doesn't we use the original entry.

My vote would to go to option 2 to reduce the burden on users, as not everyone actually knows what an annotated tag is.
My suggestion would be to use AppendPeeled from https://github.com/go-git/go-git/pull/750, and look if there is an exact match or one suffixed with ^{} to reduce the burden on users.

Option 2 sounds good to me from the UX perspective too. We accidentally stumbled across this when a new developer made the tag and they used an annotated tag not expecting there to be any difference at all for Flux. We had to a little bit of debugging to figure out it an annotated tag that caused the issue. I think most users would expect any ref to work with names:.
I'm not familiar enough with go-git to implement a solution using peeled refs. I can close this PR if someone else can pick this up. Let me know if you want me to create an issue to track this, but someone else may want to with more info about go-git than I know.
I'd summarize the original issue I reported as:

cloneRefName() failed to support annotated tags and would attempt to clone the annotated tag object's id as if it were a commit object. This would cause the following error (with the tag's hash, not the commit):
unable to resolve commit object for 'da39a3ee5e6b4b0d3255bfef95601890afd80709': object not found

Currently Flux's cloneRefName() passes the ref to getRemoteHEAD() to resolve the ref to an object id, and then passes the id to cloneCommit() which only supports commit objects, not annotated tags.

yes, it'd be great if you could open an issue for this. since you won't be picking this up, i'm closing this PR. thanks again for finding this issue 🙇


docs(toh-5/dart): use routerLink in dashboard

Contributes to #998

As agreed with @kwalrath, here is the updated prose and code, with a mention of https://github.com/dart-lang/angular2/issues/186.

@wardbell @filipesilva @Foxandxss - minor updates were made to the TS .jade file, see changes here, ignoring whitespace.

@chalin looks fine to me for the TS changes. The removal of the docregion terminator in public/docs/_examples/toh-5/ts/app/dashboard.component.ts doesn't seem to do anything though, but it also doesn't break anything.

@filipesilva - right, doc regions are automatically closed at the end of file; so explicitly naming them is unnecessary. Thanks for the review!


NIFI-6368: Avro logical decimal type with precision and scale

Description of PR
Controller services such as the JsonRecordSetWriter do no take into account the precision and scale in the case of Avro logical decimal types. While this may not be classified as a bug since the output is Json and not Avro, this improvement should help eliminate any misunderstandings between the different serialisations.
This should also improve functionality of other processors making use of such utils.
In order to streamline the review of the contribution we ask you to ensure the following steps have been taken:
For all changes:

[X]  Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[X]  Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[X]  Has your PR been rebased against the latest commit within the target branch (typically master)?

[X]  Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not squash or use --force when pushing to allow for clean monitoring of changes.

For code changes:

[X]  Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?

[X]  Have you written or updated unit tests to verify your changes?

Hi @matthew-formosa-gig , thanks for the contribution!
I noticed there is another effort related to decimal support here:
https://github.com/apache/nifi/pull/3343
Was wondering if these are essentially trying to achieve the same thing, or if there are differences. I haven't really looked into either of them very closely, but just wanted to bring it to your attention.

Hi @bbende, thanks for bringing that PR to my attention.
Indeed we are trying to achieve the same thing. I will close off this PR and leave my comments on #3343.

Sounds good.  If your work is closer to ready then by all means feel free to leave your PR open, I just wanted to make sure you were aware of it.

I believe the other PR is more comprehensive and still close to ready despite the feedback I just gave. I can still work with my custom NAR files until the PR is merged so I am not in a particular hurry.


transactions processed more than once, after stop and start peers 2,1,0,2,1,0  sequentially in decreasing order twice

Description
(Longterm, this needs to be addressed. Just like several other issues opened in v0.5 since July, I understand it may not be fixed until later this year once consensus v2.0 is developed - at which point it may be resolved on a different branch.)
Th problem occurs in master image 346f9fb, as well as v0.5 image 3e0e80a.
Sometimes transactions are processed more than once, after stopping and starting peers 2,1,0,2,1,0  sequentially in decreasing order twice. In the attached logs with a vagrant env with 4 peers in docker containers, the problem can be seen after the 2nd cycle, after peer0 is stopped the 2nd time. I collected debug logs; hopefully you can determine which peer(s) submitted the transactions more than once. Blocksize is 2. This and other parameters are captured in the script output file GO_TEST__CAT_03_SnIQRnIQ_cycleDown.go__Aug919:54:20UTC2016 which is inside the zipfile.
dupTx_v05_3e0e80a.tar.gz
In this scenario, some transactions are processed more than once. The test script counts the transactions it sends, and the values for A & B are affected more than they should be. The duplicated processing of some invokes transactions (which I had sent only once into the network) occurs after stopping and then restarting peer 1 and then peer 0. After that, the value of B is higher than it should be.
Describe How to Reproduce
Refer to attached stdout file for full details. The test executes the following. Between each step, we sleep several seconds (between 30 and 60, usually) and send 100 invokes and query each running peer.
 ACTUALs (node:A/B): 0:997996/1002004 1:998059/1001941 2:997996/1002004 3:997996/1002004
PASSED CHAIN HEIGHT TEST: matches on enough/appropriate Peers. Expected CH (1021). Actual CHs: PEER0(1019) PEER1(986) PEER2(1019) PEER3(1019)
After stopping peer 0, and sending another 100 invoke requests, observe that the value of B (in all consensus peers) is greater than the expected value by 32! And the chainheight also is much higher than expected; instead of being 2 less than the expected value, the CH is 14 higher (a difference of +16). Clearly, some transactions were processed multiple times.
POST/Chaincode: QUERY all running peers for a and b, and chainheight
STEP 3, cycle 2/2 after STOP PEER 0 and Invokes
FAILED QUERY TEST: the required peers do NOT match!!!!!!!!!!
EXPECTED A/B:    997896   1002104.
ACTUALs:
PEER 1           997864   1002136
PEER 2           997864   1002136
PEER 3           997864   1002136
PASSED CHAIN HEIGHT TEST: matches on enough/appropriate Peers. Expected CH (1072). Actual CHs: PEER1(1086) PEER2(1086) PEER3(1086)

@scottz64 we've transitioned to Jira and Gerrit for Hyperledger development. Please open an issue in Jira. Thanks!


Message on badges page

Users are finding it difficult to know how to award a badge. We're going to implement this feature https://github.com/CoderDojo/community-platform/issues/553
But in the short term let's add a message to the badges page that says "To award a badge, visit the manage users page" with a link to that page. Only appears for someone with Dojo admin permissions.

Duplicate of https://github.com/CoderDojo/community-platform/issues/210 so closing


Dev / log install info

It can be very useful to have some basic information about the installation of qcodes in the logs.
This PR seeks to enrichen the log output with more useful info, in particular installation info. I am, however, not really sure about the logic when looking up the environment. It goes something like

First check if the installation is from pip or from source
If from pip:

record the version number and call it a day

If from source

check if editable
compare pip freeze to requirements.txt (?)

The idea is to do all this as qcodes.logger.start_logging is called.
Or what do you think, @QCoDeS/core ? I'd like to make as few subprocess calls to pip as possible.

I guess the lowest hanging fruit would be to just log qcodes.version.__version__ this seems to always be up to date.
Pip does not have a public api but perhaps something like https://pypi.org/project/pip-api/ might be better than rolling out your own subprocess module

I guess logging all installed versions of dependencies would be useful but that is regardless of the install type?

Okay, I think this is a first good stab at the problem.
My only concern is that the subprocess call to pip is a bit slow. But then again, it happens once.

@jenshnielsen I think the latest commit addresses all your concerns.


Snake Game #2

issue : #2

@raj03kumar resolving it.

Make a new PR. Will check your work and merge.


Remove Doi in Elsevier Latex Templates

Alongside a description of your problem/question/feature suggestion, please also include a support log ID.
Hi，everyone.
Recently, I have been using better bibtex to insert References for elsevier latex template but it always adds doi. What can I do to remove the doi.
Reproducing the problem：

Zotero export a Better Bibtex.bib.
The bibliographystyle of latex templates is Elsevier - Harvard.
The latex command is:
\bibliographystyle{cas-model2-names.bst}
\bibliography{References}
Thank you for your help.

I you do not supply a log ID I will have to close the issue.


docs: add more examples how to use ddev nvm, fixes #6013

The Issue

#6013

How This PR Solves The Issue
Adds more examples of how to check and switch Node.js versions with nvm, creates a tip about nodejs_version, warns about nvm use.
Manual Testing Instructions
https://ddev--6067.org.readthedocs.build/en/6067/users/usage/commands/#nvm
Automated Testing Overview

Related Issue Link(s)
Release/Deployment Notes

It might make sense to deprecate the ddev nvm command - it doesn't seem like using nvm from outside an ssh session has any utility, unless I've missed something.

There's nothing wrong with ddev nvm, it's just easier to use nodejs_version, because with ddev nvm you need to set it in the post-start hook to save the current configuration for the future.


Defer text buffer redrawing

Summary of the Pull Request
This is a draft PR that's intended to defer all kinds of redrawing.

References
#2960  #3075

PR Checklist

[ ] Closes #xxx
[X] CLA signed. If not, go over here and sign the CLA
[ ] Tests added/passed
[ ] Requires documentation to be updated
[ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Detailed Description of the Pull Request / Additional comments
Coming from #2960, combined with an inspiring issue from #3075 , we are indeed doing a lot of unnecessary redrawing when there are still incoming text.
I'd love to hear @miniksa 's thought on this.

Validation Steps Performed

I've tried several things and it turns out this can't be accomplished easily. To make WT more like iTerm2, we'll need to rerwrite the entire renderering pipeline to process as much input as we could before actually renderering it to screen. I'll close this for now. If anyone wants to pick it, feel free to do so.

I've tried several things and it turns out this can't be accomplished easily. To make WT more like iTerm2, we'll need to rerwrite the entire renderering pipeline to process as much input as we could before actually renderering it to screen. I'll close this for now. If anyone wants to pick it, feel free to do so.


conda-forge sphinx doc build failure CI

Stop test duplication (limit push to default branch).
Include setuptools in conda-forge environment.

WARNING: autodoc: failed to import module 'cli.wet_bulb_freezing_level' from module 'improver'; the following exception was raised:
No module named 'pkg_resources'

Fingers crossed there aren't any more issues
🤞


Refresh token not used

We are in the middle of preparing the release of Ghost 0.7. ember-simple-auth was updated to version 0.8 since the last release and during testing we discovered now that sessions are expiring sooner than they did before.
I was able to track this behaviour down to refresh_token not being used to acquire a new access_token if the existing access_token becomes invalid.
Setup:

access_token: 1 hour
refresh_token: 1 week
store: local storage

Reproduction 1:

log in and acquire a valid access_token
close browser tab and wait for > 1 hour
open browser and go back to page
you are logged out now

Reproduction 2 (faster):

log in and acquire a valid access_token
edit the access_token stored in local storage to make it invalid
visit a page that requires authentication
you are logged out now

I'm quite sure that ember-simple-auth 0.7.3 used the refresh_token and attempted to create a new access_token before the user was logged out. Did this change or is any additional setup needed to make it work again?
Any help or pointers would be highly appreciated to help us get a release together :).

In the second case you will always be logged out as you'd receive a 401 error which always results in the session being invalidated.
The first scenario should actually work as the OAuth 2.0 authenticator should try to refresh an expired access token on session restoration: https://github.com/simplabs/ember-simple-auth/blob/master/packages/ember-simple-auth-oauth2/lib/simple-auth-oauth2/authenticators/oauth2.js#L104.

Thank you very much for your quick reply!
I missed the part about 401 leading to session invalidation.
Anyway, your answer helped me to find another interesting behaviour. We use OAuth2.reopen() (https://github.com/TryGhost/Ghost/blob/2e9932b8eb77a1bda9e4f3a3f31afafc4fd6bfa9/core/client/app/instance-initializers/authentication.js#L17) to add a client_id to the token request. This works except for the case when the access_token is expired and the session is restored. This would be the explanation why the first scenario didn't work. Could this be something that has changed between 0.7.3 and 0.8?

refreshAccessToken uses makeRequest as well so it should also have the client_id in the request. I think that might run before the reopen though in which case the method would not already have been changed…
1.0 (which I hope to release soon) will support client_id out of the box though. You could also use 1.0 from the jj-abrams branch already. The public API shouldn't change much anymore - if at all.

Thanks @marcoow - we both came to the same conclusion regarding refreshAccessToken running before our override was taking effect. I've submitted a fix here https://github.com/TryGhost/Ghost/pull/5756.
Glad to hear that 1.0 is to be released soon, I'll be sure to update and test once we're past our imminent release.

@marcoow thank you for your answers! Helped debugging the problem tremendously!
Really looking forward to 1.0 :+1:!


Visual Studio Build Tools  cannot setup container in Docker

I cannot build container with Visual Studio Build Tools follow instruction from here.
System info:
Caption     : Microsoft Windows 10 Pro
Version     : 10.0.19041
BuildNumber : 19041
InstallDate : 08-Jun-20 20:28:59

Docker version:
Docker version 20.10.5, build 55c4c88

I got error after execution command:
docker build -t test -m 2G .

 > [1/1] FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019@sha256:a874ab90088183363e74257e163cf3c8494d35561bf074c64de4bac5566ebddd:
------
failed to register layer: Error processing tar file(exit status 1): link /Files/Program Files/common files/Microsoft Shared/Ink/en-US/micaut.dll.mui /Files/Program Files (x86)/common files/Microsoft Shared/ink/en-US/micaut.dll.mui: no such file or directory

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: b91a4a43-5353-97cf-7532-7644aa3b497f
Version Independent ID: 858d9a5c-72f3-6a85-9270-0a0dd9e0438b
Content: Install Visual Studio Build Tools into a container
Content Source: docs/install/build-tools-container.md
Product: visual-studio-windows
Technology: vs-installation
GitHub Login: @ornellaalt
Microsoft Alias: ornella

@KernelA -- Alexander, thank you for your feedback.  This repo is solely for documentation issues, and this seems like a  programming issue.  Please consider these resources:

Visual Studio on Q&A
Visual Studio MSDN Forum
Stack Overflow
Reddit

cc @ornellaalt for awareness
I am closing this issue now.  You are welcome to @ mention me for any followup.  We hope to hear from you again.


can i build ipa use the lib？github action

This question isn't really well-formed, but I'm guessing it's a duplicate of this?: https://github.com/game-ci/unity-builder/issues/212

This question isn't really well-formed, but I'm guessing it's a duplicate of this?: #212

your qa is the giblib can build ipa.but the doc not see the github action build ipa

Are you saying that the documentation does not mention that the github action is able to build the .ipa file, while it can?

Are you saying that the documentation does not mention that the github action is able to build the .ipa file, while it can?

yes

Good point. We should probably add this to our docs somehow to prevent confusion.

The unity-builder action can only generate an xcode project; it can't build the .ipa.
To build the .ipa, you need to invoke xcode on mac-os.
We recommend doing this through fastlane, and we have some docs now that show how to use fastlane to build the .ipa and upload it to the App Store: https://game.ci/docs/github/ios


Conceptual question: How are the GraphQL queries resolved into SQL?

From what I know, every GraphQL schema has some resolve function that actually grabs the data you're looking for. How does PostGraphQL do this? Are the GraphQL queries compiled into SQL somehow? I had difficulty finding it in the code.

This may be of interest:
https://github.com/postgraphql/postgraphql/wiki/Code:-how-are-things-like-barByFooId-built%3F

Further: in this pull request I re-write most of the SQL queries to be constructed based on the GraphQL query, so that should give you a good idea how things work:
https://github.com/postgraphql/postgraphql/pull/342/files

v4 generates queries in a completely different way. I don't have time to document it right now, but it centres around QueryBuilder:
https://github.com/postgraphql/graphql-build/blob/master/packages/graphql-build-pg/src/QueryBuilder.js
Closing this issue to keep things tidy


fix fix index in variant (#43375)

Problem Summary:

Fixing error checks, InvertedIndexColumnWriter::check_support_inverted_index, It is not appropriate to determine support for other indexes by checking the inverted index.
Fix TableSchema::update_index()

pick from master #43375

run buildall

run buildall


[XVideos] HTTP Error 404: Not Found

Checklist

[X] I'm reporting a broken site support
[X] I've verified that I'm running youtube-dl version 2021.12.17
[X] I've checked that all provided URLs are alive and playable in a browser
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched the bugtracker for similar issues including closed ones

Verbose log

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', '--ignore-config', '--restrict-filenames', 'https://www.xvideos.com/video46439753/porn-de/0/premiere_fahrrad_in_der_offentlichkeit_geil_abgefickt_']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.8.10 (CPython) - Linux-5.4.0-100-generic-x86_64-with-glibc2.29
[debug] exe versions: ffmpeg 4.2.4, ffprobe 4.2.4
[debug] Proxy map: {}
[XVideos] 46439753: Downloading webpage
ERROR: Unable to download webpage: HTTP Error 404: Not Found (caused by <HTTPError 404: 'Not Found'>); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 634, in _request_webpage
    return self._downloader.urlopen(url_or_request)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2288, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python3.8/urllib/request.py", line 531, in open
    response = meth(req, response)
  File "/usr/lib/python3.8/urllib/request.py", line 640, in http_response
    response = self.parent.error(
  File "/usr/lib/python3.8/urllib/request.py", line 569, in error
    return self._call_chain(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 502, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)

Description

WRITE DESCRIPTION HERE

Duplicate of #30271, fixed in git master.

Latest build for windows as referenced in https://github.com/ytdl-org/youtube-dl#installation still has this issue. This shouldn't be considered as "fixed" until releases actually work for end user (link redirects to https://yt-dl.org/latest/youtube-dl.exe)

@dirkf Any chance to update the windows builds on yt-dl.org with the latest changes from master?

Begging ant u no man no woman wth

Beegin who iam begging u need to get away me whit Fabricating

The Windows build will appear, with an actual release, as soon as the new maintainer can concentrate for the necessary period on making it happen.
Meanwhile don't feel bad about the workaround. The self-extracting Windows build has to unpack all the files each time it runs, not just for yt-dl but the minimal Python build too. Whereas the other way, you end up with Python properly installed as well as yt-dl.

@garoto I was running youtube-dl from a single windows binary the whole time without using Python, aside with ffmpeg. No batteries required.

@brbergami this is a free project, so you get what you pay for.
You can install the master branch via pip, like thousands of other people do every day. Otherwise, you can wait for a release, when the maintainer feels like it, not when you demand it.

@89z I can build the windows binaries if someone can get me in touch with the one who did the previous ones. Upload them, and contribute with the project for the people that find that binaries more useful than doing a python, pip and ytb-dl installs. Just a download and you're good to go.
Dude, your comments are not helpful by any mean, why you keep commenting if you're not going to help?

I can build the windows binaries if someone can get me in touch with the one who did the previous ones. Upload them regularly, and contribute with the project for the people that find that binaries more useful than doing a python, pip and ytb-dl installs. Just a download and you're good to go.

That is already what happens now:
http://ytdl-org.github.io/youtube-dl/download.html
So I dont think anyone needs you to do that. Some projects do "snapshots", where a release a made on every commit. YouTube-DL is not one of those projects. YouTube-DL, like many other projects, make periodic releases, when the maintainer feels its the right time to do so.
If you wish to get a version past the latest release, youll need to use pip from the master branch, as previously discussed.

If you wish to get a version past the latest release, youll need to use pip from the master branch, as previously discussed.

https://github.com/ytdl-org/youtube-dl/issues/30707#issuecomment-1069318509

Funny part is that tried the pip install on win, which gives me the 2021.12.17 version [...]

version information isn't updated till a release is made. You can edit version.py manually.

that version still has the issue

Tried with master, and xvideos works for me.

@garoto
https://user-images.githubusercontent.com/37002893/158713106-6efb5b7d-061b-4d02-a3d7-3b191953a40f.mp4

@garoto
https://user-images.githubusercontent.com/37002893/158715460-87cc6122-6055-4ca1-ab00-a38f111de15e.mp4

Like dirkf already mentioned, pip install youtube-dl won't do it. Try the command that was posted: pip install https://github.com/ytdl-org/youtube-dl/archive/master.zip.
Failing that:
C:\>pip instal pyinstaller
C:\>curl --location --remote-name https://github.com/ytdl-org/youtube-dl/archive/refs/heads/master.zip
C:\>7z x master.zip
C:\>cd youtube-dl-master\
C:\>pyinstaller.exe youtube_dl\__main__.py --onefile --upx-exclude=vcruntime140.dll --icon "NONE"

And then find the newly generated .exe inside .\youtube-dl-master\dist\.

does downloading xvidoes channel works? mine doesnt


fix(task-processor/deadlock): use Postgres function to fetch task for processing

Thanks for submitting a PR! Please check the boxes below:

[x] I have run pre-commit to check linting
[x] I have filled in the "Changes" section below?
[x] I have filled in the "How did you test this code" section below?

Changes
Remove transaction in favour of the pl/pgsql function used to lock and return the tasks to process.
How did you test this code?

Add/update unit test cases

This looks good to me. It would definitely be good to have some more documentation somewhere around the SQL query though. I wonder whether we should pull the SQL out to separate .sql files and add some comments that can be read easily. I wonder if the RunSQL base command that PostgresOnlyRunSQL inherits from allows you to pass a path to a sql file instead of a string?

Yeah, good point


fix: gosec linting errors

Description
Fixes https://github.com/ConduitIO/conduit/actions/runs/10525107375/job/29163199243?pr=1804#step:5:29
Quick checks

[ ] I have followed the Code Guidelines.
[ ] There is no other pull request for the same update/change.
[ ] I have written unit tests.
[ ] I have made sure that the PR is of reasonable size and can be easily reviewed.

Will address in a separate PR. Not making these type changes for now.


Add Docker support

Purpose
The purpose of this PR is to make it so that the only thing needed to run the server is docker.
Motivation
Crystal doesn't have native repo support for many distributions, so the primary motivator is ease-of-use.
Changes

Dockerfile

Added all instructions to build and run container; tested on Docker CE 1.13.1
No web proxy is added to this, as it would needlessly increase the amount of containers needed to be ran and the number of tools needed to be installed.

README.md

Added instructions for building container and running with docker while exposing port. Basic knowledge of how to open a port on a host firewall is assumed.

@arcsector will you update it and make sure it works correctly with the changes I just implemented? I'd be happy to merge this afterwards.

@watzon Done

Perfect, thanks for your contribution!


Backport to Windows 10 20H2 available?

Since wsl2 is now backported to 1903 and 1909, Is it also available to 20H2?
I joined the MS Insiders program in the hope of updating my 1909 to 2004 so that I'll get wsl2 support but the update was never rolled out to my machine instead what I got was update like 20H2 from beta channel.

I am on 20H2 Build 19042.487 and had WSL2 / Kernal before I got switched over to 20h2 and WSL2 Ubuntu 18 worked great. Then I downloaded Kali and nothing worked in it while ubuntu worked. So I tried Ubuntu 20 and it didnt work.  I deleted my working version of 18 and redownloaded and it does not work now either.


Allow modules to differentiate between server starting or building

What problem does this feature solve?
I'm working on implementing a module similar to sentry error reporting, but for appsignal. I am using their nodejs package for server metrics, but it is running with nuxt generate and nuxt build. I'm trying to find a way for the module to know if we are actually starting the server, or if we are just generating files.
Issue: https://github.com/system76/nuxt-appsignal/issues/5
Module code: https://github.com/system76/nuxt-appsignal/blob/master/src/index.js
What does the proposed changes look like?
There should be a flag similar to this.options.dev but this.options.serverRuntime for modules. This should be set to true if nuxt is ran with nuxt dev, nuxt start, or if nuxt is used as middleware in a larger app.

Hi @BatuhanK. There are internal flags that you can safely use for Nuxt 2 at least. this.options._build and this.options._start.
The reason they are kept internal is that only when using standard cli (nuxt *) we set them. Programmatic usage (pre 2.12) users should manually specify these flags. Users using  loadNuxt (#6868) are safe as well.

This is possible in Nuxt 3 as @pi0 explained. In Nuxt 3 all modules are build-time only. So I think we can safely close this issue.


Add documentation about stretch into the readme

In the description on the Docker hub page (https://hub.docker.com/_/python/) there is description of slim and alpine variants, but not the stretch variant. People may not know that stretch is a Debian version.
For example a question about stretch on StackOverflow: https://stackoverflow.com/questions/52740556/python-3-7-docker-images

Perfect, thank you :)


Generate Debian Stretch image based on thud

Based on the previous make debian_image script, I build new scripts to generate a Debian image based on thud.
I did this because I was unable to install Jenkins and Gerrit on Yocto (problem with java, with some utilities, ...).
I think it would be better to have a new branch for this debian patch. If not, the readme(s) may have to be merged.
I tested it on Ubuntu 19.10.
I am also working on Debian Buster (the last version) but I have some problem with connman which is not working (at least was not with thud and kernel 5.0.0). I can connect to wifi through other ways but it is not as smooth as with connman. I will try again once warrior is ready.

So we branch Stretch of Thud. And then possibly Buster of Warrior later? Warrior is working afaict, I didn't see problems with connman.
So how does Stretch work, can you just add debian repo's to apt sources? Or do you still need to build your own repo from source?

Yes, branch stretch from thud and eventually buster from warrior.
The connman issue may be related to the connman which is provided by Debian. So the yocto connman may work but not the Debian one.
Stretch works as if you installed Debian on a your computer. Apt sources are already provided. These are the official debian repo.
apt update and apt upgrade will work after login without anything to do (except connect to internet)

And one more poin: in the readme, I provide way to increase rootfs storage space so user can install more packages.
With default rootfs (yocto partitionning) you are quickly limited in storage space.

One more point :)
I don't know if you are familiar with debootstrap. But debootstrap is a kind of old and simplified docker/lxc in the way that you can install other linux distribution on your linux computer.
For example, you can install an arm debian distribution on your x64 linux pc and make it work with qemu on your PC (install arm binaries, etc). Then you can copy this arm distribution on raspberry pi, beagleboard, etc...
I used it in the past and the old make debian_image was using it also.
The idea is to create a debian folder on your pc, which contains a debian root file system, then add kernel and modules from yocto to this debian folder.
And then generates an image that you can flash on Edison.

apt update and apt upgrade will work after login without anything to do (except connect to internet)

That would be a very nice thing to have, as Yocto does not provide everything (like aptitude).

And one more point: in the readme, I provide way to increase rootfs storage space so user can install more packages.

What I would like to do is find a way to convert whole emmc to btrfs, with subvolumes. As all subvolumes share the same pool all storage would be used as efficiently as possible. But I have no idea howto do that yet.

I don't know if you are familiar with debootstrap.

I have heard of debootstrap but never used it. I don't like to idea of using qemu to create a VM to build an image. I like the Yocto approach (cross-compiling) better.

I am not familiar with btrfs.
Do you mean that with btrfs, all volumes will grow automatically if a partition requires more space and as long as there are space on emmc. In the end you don't have to resize manually partition and this is managed by btrfs?

Do you mean that with btrfs, all volumes will grow automatically if a partition requires more space and as long as there are space on emmc. In the end you don't have to resize manually partition and this is managed by btrfs?

Almost. A btrfs partition (fixed size) forms a storage pool. You can add more partitions to the same pool without any formatting and increase space in the pool. In the pool you can create subvolumes. All subvolumes share one space in the pool and can allocate as long as free space is available. Once full it is full for all. You can take a snapshot from a subvolume, creating a new subvolume from an existing one. This hardly takes time or space. The filesystem is cow, so only writing to a file creates a new copy.
There are many advantages:

all free space is available to all subvolumes, not fragmented across ext4 partitions.
a system update can be done atomically. First take snapshot, then update the system. Now you can go back by booting the snapshot, or boot the normal subvolume. When you like, delete the unused subvolume.
send / receive a subvolume from one machine to another

I am also working on Debian Buster (the last version) but I have some problem with connman which is not working (at least was not with thud and kernel 5.0.0). I can connect to wifi through other ways but it is not as smooth as with connman. I will try again once warrior is ready.

That is very strange. As I understand the debian image is built from debian packages and yocto built kernel and modules. Building kernel and modules from thud or warrior should be the same. So the only real difference is the version of the debian packages.

For some reason when I try to build buster $CHROOTCMD fails and I need to replace it with LC_ALL=C LANGUAGE=C LANG=C sudo chroot $ROOTDIR /bin/bash -c to make your scripts work again.
I find that I can connect wifi or eth (smsc95xx), but dns resolver is not working. Even after enabling systemd-resolved I get:
edison:~$ resolvectl
...
Link 3 (enx00800f951d4d)
      Current Scopes: LLMNR/IPv4 LLMNR/IPv6
DefaultRoute setting: no
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: allow-downgrade
    DNSSEC supported: yes

But dns servers are received:
edison:~$ connmanctl services ethernet_00800f951d4d_cable
/net/connman/service/ethernet_00800f951d4d_cable
  Type = ethernet
...
  Nameservers = [ fd00::eadf:70ff:fea0:b040, <IP_ADDRESS>, fd00::eadf:70ff:fea0:b040 ]
  Nameservers.Configuration = [  ]

But when I add manually sudo resolvectl dns enx00800f951d4d <IP_ADDRESS> it works.

Buster was working for me with the same command on my side. What is your distribution? Ubuntu?
Regarding wifi connection with buster, I was facing an error (can't remember which one and I have no access to the PC I was using for the test right now) when using connman.
I switched to wpa_supplicant. I could scan and connect to network and use dhclient to get an ip address. But I don't know why when rebooting the reconnection was very long. I wanted to investigate but did not have time and I am not really familiar with all these wifi stuffs.

Buster was working for me with the same command on my side. What is your distribution? Ubuntu?

And even stranger: I built stretch with no problem. On Ubuntu 19.10.

Regarding wifi connection with buster, I was facing an error (can't remember which one and I have no access to the PC I was using for the test right now) when using connman.

Only error I noticed was related to SELinux.

I switched to wpa_supplicant. I could scan and connect to network and use dhclient to get an ip address. But I don't know why when rebooting the reconnection was very long. I wanted to investigate but did not have time and I am not really familiar with all these wifi stuffs.

Connman works fine. Something is wrong with the dns resolver (systemd-resolved). I'll try to clean up what I have and push so you can try/review.

Could you please test master to see if you have resolve issues? I pushed my patches to build buster.

Could you please test master to see if you have resolve issues? I pushed my patches to build buster.
It seem that
sudo ln -s /run/connman/resolv.conf /etc/resolv.conf

solves the dns problem. But I'm not sure if this is the best way.

I will try to test but unfortunately I am currently moving, so I am not sure I can do it before beginning of next year...

No rush

@ochrin a) above I asked to try master, that is wrong. debian will be built correctly when 64bits, so checkout warrior HEAD (I force pushed again).
b) I fixed resolv.conf so connman works fine for me
c) added a page https://htot.github.io/meta-intel-edison/2.6-Building-Debian.html

I tried warrior, but in my case even yocto warrior does not want to boot. After compilation and flashing,  the last thing I see is Starting kernel... and then it reboots.
I am on commit f6600db817.
Does it boot on your side?

Yes, Warrior and Buster both work (= build, boot and otherwise function). Except I flashed the latest U-Boot manually (now I see the commit message is wrong and says 2019-10 but it really is 2020-01). Before (with really 2019-10) I did flashall, and it worked fine.
I am assuming you used flashall? Can you post your terminal text from power up to reboot? Or maybe even press ESC in U-Boot and then printenv?

Also I was thinking you might be experiencing this: https://htot.github.io/meta-intel-edison/2.3-Building-and-flashing-U-boot.html#flashing-only-ifwi
But I am not sure if that could cause boot problems. I thought there was only an effect on wifi.

PR incorporated and pushed upstream. Thanks!


replace qualified path with use adds to pub use, should not

First of all, thank you so much for rust-analyzer! recent changes have made it so much more pleasant to write rust in emacs!
I especially appreciate the "replace qualified path with use" code action, and recently noticed this behavior. Given this contrived example:
pub use std::sync::Mutex;

fn main() {
    let _: std::sync::Arc<()>;
}

If I move the insertion point to Arc and execute "replace qualified path with use,", we get:
pub use std::sync::{Arc, Mutex};

fn main() {
    let _: Arc<()>;
}

However, what I would expect is:
pub use std::sync::Mutex;
use std::sync::Arc;

fn main() {
    let _: Arc<()>;
}

Adding something to a pub use changes the external api of a module, but in other circumstances "replace qualified path with use" is just a code-organizing refactor that changes nothing about the meaning of the file.
I'd love to dig into fixing this, but figured I'd file first to confirm that this is a bug. Thanks again!

$ rust-analyzer --version
rust-analyzer 33e53d4
$ rustc --version
rustc 1.47.0-nightly (6c8927b0c 2020-07-26)

Sure! The assist starts around here, but it's not obvious to me how we pick which use to edit.
It's probably a bug -- we find the right use, but don't check the visibility.


weird result after running "Evaluation"

I notice that the "Evaluation" part should run in a laptop or a computer. After I set the required environment(pytorch=0.4.1...), following the instruction, I successfully execute the command "python3 main.py --evaluate [path_to_trained_model]" on my laptop. But I get a weird result, just as the image shows:

My computer has a RTX3060 , and I tried many times, I still get the same weird result.
Then I change another laptop to try again, I still get the same result...
I am exhausted, could you please tell me what might be wrong and what I should do next?

I got a similar result and don't know how to fix it.


Fix ktlint build and configure language compatibility from root level

Fix ktlint build and configure language compatibility from root level
@shashachu

@shashachu Once we merge this, we can rebase the other pull requests.