Add Support for Yi-6B and Yi-34B

Description
Adds support for 01 AI's Yi-6B and Yi-34B. Their architecture is almost identical to Llama's with the exception of using grouped query attention, but since that has been implemented in #443, Yi is a pretty straightforward addition.
Yi-6B, Yi-6B-Chat and Yi-34B are all tested and working, with the exception of some outlier logits with strangely high error rates (especially the chat model, as shown in the chart below). As far as I can tell these don't seem to be a particular error with my implementation, as the standard deviation is average compared to other models I've tested, but I can't say for sure.
Addresses #449
Absolute error of logits as compared to the outputs produced with the default HF model. All were calculated from the same set of four sequences, and had all processing options enabled (ln/value bias folding and writing weights/unembed centering). I also experimented with all processing options disabled as well as each processing option individually enabled, but no configuration produced any meaningful differences.

model
dtype
max
mean
median
std

yi-6b
bfloat16
0.0530524
1.1068e-06
1.60625e-09
9.91611e-05

yi-6b
float16
0.0548902
6.77286e-07
1.0312e-08
7.42205e-05

yi-6b-chat
bfloat16
0.0875687
1.29017e-06
1.24604e-09
0.000172055

yi-6b-chat
float16
0.0699415
1.00371e-06
9.40543e-09
0.000155543

yi-34B
bfloat16
0.0307519
8.3753e-07
1.35014e-09
7.06597e-05

Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I have not rewritten tests relating to key interfaces which would affect backward compatibility

Any ways this get merged ?
I'm working with croissantLLM and this LlamaForCausalLM wrapper is helping a lot

@collingray I think it might be related to the preprocessing transformer lens is doing (see https://github.com/neelnanda-io/TransformerLens/issues/346 and https://github.com/neelnanda-io/TransformerLens/blob/main/further_comments.md#weight-processing)


[SR-15823] [AutoDiff] Runtime segfault from edge case

Previous ID
SR-15823

Radar
None

Original Reporter
@philipturner

Type
Bug

Attachment: Download

Additional Detail from JIRA

Votes
0

Component/s

Labels
Bug

Assignee
None

Priority
Medium

md5: 7ac04b0e86fad47aa1f9a8580634f6ab

Issue Description:
The following code crashes at runtime under specific conditions as explained below. As-is, it crashes. To stop it from crashing, follow instructions in its comments.
import _Differentiation

// Remove the @noDerivative attribute here...
typealias MyType = @differentiable(reverse) (inout Float, @noDerivative Int) -> Void

@differentiable(reverse)
// ... and here to stop it from crashing.
func myFunc(_ x: inout Float, _ y: @noDerivative Int) -> Void {}

// Alternatively, un-comment out this line and it no longer crashes.
//print("hi")
print(myFunc as MyType)

@asl your comment on SR-15818 (https://github.com/apple/swift/issues/58095#issuecomment-1108471934) was right on point! I spent around 4 days investigating the bug, and the cause is something very massive. This bug can actually crash the compiler. Take this reproducer, for example. It crashes during SILGen.
import _Differentiation

func myFunc(x: Float, y: Float) -> Float { x + y }

let item: @differentiable(reverse) (Float, Float) -> Float = myFunc

class Box<T> {
  var value: T
  init(value: T) {
    self.value = value
  }
}

let box = Box(value: item)
let retrieved = box.value

My full investigation is published as a gist, but here is the summary:
// There are multiple symptoms that point to the same problem:
// 1) Suffering from improper reference counting, basically unsafe bit casting
// 2) Type mismanagement in the compiler
// 3) No standardized or documented way to handle differentiable function
//    pointers in memory, at least in the way mentioned in the reproducer
//
// The problem: there might be no built-in support for reading differentiable
// functions from device RAM.
//
// This is likely a much bigger problem than I can handle alone. I'm giving up
// for now and hoping I can defer it to people with more experience in the
// future.

The code in the 4/25 post is still causing recent toolchains (2023-01-02a, 2023-01-14a and 2023-01-18a) to crash.
We have:
Assertion failed: (isa<X>(Val) && "cast<Ty>() argument of incompatible type!"), function cast, file Casting.h, line 269.
...
1.	Apple Swift version 5.9-dev (LLVM 3f23b4ceaf01213, Swift 0763e4b98c74b5b)
2.	Compiling with the current language version
3.	While evaluating request ASTLoweringRequest(Lowering AST to SIL for module SomethingSmall)
4.	While emitting reabstraction thunk in SIL function "@$sS6fIegnrr_Iegnnro_S6fIegydd_Iegyydo_TR".
 for <<debugloc at "<compiler-generated>":0:0>>5.	While emitting reabstraction thunk in SIL function "@$sS3fIegnrr_S3fIegydd_TR".

@fibrechannelscsi Looks like we've failed to create proper reabstraction thunk from @escaping @callee_guaranteed (@in_guaranteed Float) -> (@out Float, @out Float) to (Float) -> (Float, Float). Apparently the inner abstraction patter is Opaque and outer is a tuple. Therefore the result planner thinks that inner type is not a tuple and just a scalar.
Hence an assertion when address is scalar is casted to address of tuple.
There is some special wrt Opaque in case of differential reabstraction thunks, but I do not recall it offhand. @rxwei Does this ring any bell?

Ok, the problem is quite weird. Looks like we're confusing (@in_guaranteed Float) -> (@out Float, @out Float and (@in_guaranteed Float) -> @out (Float, Float) as a pullback type here.
The difference is caused by the context where we calculate the pullback type. In the first case we're inside generic function Box<T>::init so we're seeing tuple as a whole due to substitution, hence @out (Float, Float) (actually we're dealing with @substituted <τ_0_0, τ_0_1> (@in_guaranteed τ_0_0) -> @out τ_0_1 for <Float, (Float, Float) substituted type there). In the second case we're at let retrieved = box.value where the type is known exactly and we're "seeing" tuple as as separate arguments and therefore when we calculate pullback type we're ending with (@out Float, @out Float). Now, when we're creating a reabstraction thunk with Opaque pattern it really expects a single indirect result, but we're providing a tuple of such results.
We can extend thunk generation to handle such case, but I'm not 100% sure we will not end with some other corner cases. @BradLarson @rxwei @dan-zheng any suggestions?

@philipturner Why are you closing it?

The reproducer from April 25, 2022, still triggers the above assertion failure as of the 2023-04-27 nightly snapshot, so this is still an issue.

Reproducer no longer crashes with the 05/24 toolchain.

@jkshtj Have you checked that the type of reabstraction thunk is correct now?

@jkshtj Have you checked that the type of reabstraction thunk is correct now?

I haven't. I'm doing a quick run-through of the list of issues that we have internally.
If we need deeper investigation besides checking for no crashes, I'll keep this open.

Thanks! I'd rather not close issues simply because "does not crash anymore" and instead try to check what changed, especially if some analysis was done before.


Implement updatefirmware command and firmwaredl binary

A new command, updatefirmware is added which takes a firmware file and loads it onto the device. For some devices, verification of the firmware hashes and signatures is done. However, AFAICT, all devices will also verify signature themselves before applying the firmware. Adding this command requires a few new dependencies and the requisite dependencies and libraries have been added. Additionally, a full dependency bump was done.
A new binary, firmwaredl has been added to download the firmware for a particular device model. The -f option can be used to specify a particular version to download. A --bitcoinonly option allows you to download the Bitcoin only firmware if one is available. This is a separate binary as it requires network access and having the dependencies for that in hwi itself is not desirable. So it is separate. For the most part, the current bootloader and firmware versions are not needed to know what firmware is downloaded. There are some devices where sometimes an upgrade to a particular version is needed before upgrading to later versions. For now, users will need to figure that out themselves. In the future, we can modify firmwaredl to also connect to a device and figure out what firmware versions can be installed based on that.
NOTE: Ledger devices are not supported in this PR. You cannot download their firmware or apply firmware to their devices, and I am not sure whether that will be possible to do. Further information and discussion about Ledger firmware updating can be found in #112
Closes #112

I was able to successfully update firmware for ColdCard mk2, Trezor One, and BitBox1 using both firmwaredl.py on my Arch Linux machine.
I also built and tested binaries for MacOS, Windows and Linux. I also tried various combinations of --firmware-version and --bitcoinonly.
They all seemed to work.
Bugs:

Calling poetry run python hwi.py --fingerprint <fingerprint> updatefirmware trezor-1.8.3.bin while my Trezor One was plugged in and in bootloader mode caused HWI to freeze. It froze on this line.
I observe this when calling hwi enumerate with a bootloader-mode Trezor One plugged: [{"type": "trezor", "path": "webusb:003:1:1:4:3", "error": "Could not open client or get fingerprint information: 'NoneType' object has no attribute 'lower'", "code": -13}]. Seems like a bug.
I couldn't download ColdCard firmware version 3.0.0 but I could download 3.0.1:

$ poetry run python firmwaredl.py coldcard --firmware-version 3.0.0
{"error": "404 Client Error: Not Found for url: https://github.com/Coldcard/firmware/blob/master/releases/2019-10-09T1356-v3.0.0-coldcard.dfu?raw=true", "code": -13}

Notes:

Would caller of firmwaredl be expected to verify binary signatures for some firmware binaries? My understanding is that Trezor (and maybe others) does this on the device, but ColdCard (and maybe others) publish GPG signatures and that should be checked.
You might want to update the table in the README to mention that firmware updates are supported for all devices except Ledger.
I like how you implemented it with separate "download" and "install" steps. This way we can also let user install firmware via SD card, for example.
The JSON returned by the firmwaredl isn't very ergonomic: {"success": true, "message": "Trezor 1 firmware version 1.8.3 downloaded to /home/justin/dev/HWI/trezor-1.8.3.bin"}. If the caller wants to find out where the file was saved, they need to parse the contents of the message field. Perhaps the filename could be a separate key in the JSON object?
firmwaredl takes a "model" string as argument. It took me a second to realize this was the same as the model key in enumerate. Maybe mention this in the help string?
Can HWI tell us what firmware version a given device is running? Without this we won't know when to prompt user that an upgrade is available.

I couldn't download ColdCard firmware version 3.0.0 but I could download 3.0.1:

It looks like 3.0.0 doesn't exist anymore.

Would caller of firmwaredl be expected to verify binary signatures for some firmware binaries?

Yes. Perhaps we should also download verifiable signatures if possible?

Yes. Perhaps we should also download verifiable signatures if possible?

Let's do that


folder renaming for %artist% for name changes

I am using filenameformat = %artist% (%member_id%)%urlFilename% - %title%
Since some artists change their name like Name@event, would it be possible to rename the folder to just %member_id%, then download as %member_id%..., then rename back according to config.ini?

Nope, try to use %member_token% instead (this might also change, but very rare).


Not compliant to ng-messages

Thanks for the nice module. However, I found it does not go well with ng-messages, which is official message support of angularjs.
The following is the example .

demoForm.lastName.$error : {{demoForm.lastName.$error | json}}

Min Error

Max Error

Required Error

From the above example,   demoForm.lastName.$error is very different from AngularJS error object.
Is this intentional? or, you do not want us to use ng-messages or ng-message?

valdr sets $error as any other AngularJS validator does. I created a Plunker to show how valdr and ngMessages work without a problem: http://plnkr.co/edit/ctdsk9sePtUsqe9EJiNV?p=preview
If you want to let valdr handle the validation messages, you could also use valdr-messages for this as described here: https://github.com/netceteragroup/valdr#showing-validation-messages-with-valdr-messages

Thanks for the reply.
What I say was this module creates its own valdr error instead of using ng-model error, and overwrites it.
From this document, what I was expecting was.

myField.$error = { size : true, required : false };

But I see is
myField.$error =  { "valdr-size": true, "valdr-required": false, "valdr": true}

If this module claims AngularJS compliant, it should not overwrite any AngularJS behaviour, but it is overwriting angularjs noModel $error object, at least I found.
I think this was your design and intentional.
If you think I don't understand your design, please discard this and leave it as "invalid"

Hello Allen
valdr is not overwriting anything and behaving exactly as AngularJS expects it. $error is an object with the validator name as key and therefore if the valdr size or required validator marks a field as invalid, valdr-size or valdr-required is set to true since it is a different validator than AngularJS built-in required validator.
Actually the behaviour you expected would mean that valdr had to overwrite AngularJS required and size  flags and you would not be able to combine valdr with the built-in AngularJS validation.
I updated the Plunker with an ng-minlength and required in the markup to show how valdr and AngularJS validation work together and not overwrite each others errors.

Thanks. I did not think valdr allows two values in a single rule. It's strange for me.
i.e., ng-minlength and valdr-minLength, min/valdr-min/size.


Please delete

Hello Team,
When specifying K8S version in the deployment script it fails. If I leave -UseK8s parameter out then the deployment runs fine.
Used value for -UseK8s parameter: " 1.26.3"
.\AksEdgeQuickStart.ps1 -SubscriptionId "" -TenantId "" -Location "" -UseK8s

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

ID: 59f9fa6b-d817-7c4a-d13e-a3ce79ea6796
Version Independent ID: fe06a4d5-5bd1-bb2e-4f8b-fefcfca7a07d
Content: Quickstart for AKS Edge Essentials - AKS hybrid
Content Source: AKS-Hybrid/aks-edge-quickstart.md
Service: azure-stack
Sub-service: aks-hci
GitHub Login: @rcheeran
Microsoft Alias: rcheeran

@nekdima
Thanks for your feedback! We will investigate and update as appropriate.

UseK8s is boolean and doesn't accept integer input.


First cut of event detection tutorial

Description
Adds new event detection tutorial.
Ticket

@tbedford if you have time and want to run through this you could

@tbedford I have added a section telling the reader to update the dockerfile. This fixes the issues encountered when deploy the crash detection service.
Also sorted all of the review comments so far.


ctest failed about<EMAIL_ADDRESS>on ubuntu_aarch64

hello, I meet a problem:ctest failed about<EMAIL_ADDRESS>on ubuntu_aarch64
Steps to reproduce the issue
root@ubuntu:build#ls
CMakeCache.txt  CPackConfig.cmake        CTestTestfile.cmake    Makefile        OpenImageIOConfig.cmake         OpenImageIOTargets.cmake  bin                  cpack    install_manifest.txt  src
CMakeFiles      CPackSourceConfig.cmake  DartConfiguration.tcl  OpenImageIO.pc  OpenImageIOConfigVersion.cmake  Testing                   cmake_install.cmake  include  lib                   testsuite

root@ubuntu:build# ctest -j126

The following tests FAILED:
          2 - oiiotool (Failed)
          4 - oiiotool-copy (Failed)
          6 - maketx (Failed)
          7 - oiiotool-maketx (Failed)
         30 - python-imagebufalgo (Failed)
         31 - python-texturesys (Failed)
         32 - python-texturesys.batch (Failed)
         36 - gif-broken (Failed)
         46 - openexr-damaged (Failed)
         49 - psd (Failed)
         50 - psd-colormodes (Failed)
         51 - raw-broken (Failed)
         56 - tiff-depths (Failed)
         58 - webp-broken (Failed)
         59 - zfile (Failed)
         73 - unit_simd (Failed)
Errors while running CTest

Can you tell me how to solve it?

The tests with "broken" in the name are because you didn't build OIIO with support for those formats. For example, the "webp-broken" failure is because OIIO's build scripts didn't find any webp libraries at build time. The related tests have "-broken" appended so we can tell this is what happened. We usually run ctest with -E broken to skip those tests if we only want to test the formats we are trying to support on a partcular build.
Not sure about the others, though. It's hard to tell just from this summary list what happened.
Can you ctest -E broken --force-new-ctest-process --output-on-failure and show us the full output?

@lgritz it shows:
Steps to reproduce the issue
root@ubuntu:build# ctest -E broken --force-new-ctest-process --output-on-failure

Probably a few different things are going on.
Like I said, any of the tests that have "-broken" in the name are simply cases where you haven't built the format support you need for those tests. That's fine. Running ctest with -E broken will skip those tests.
The unit-simd test looks like just a mathematical precision error, some LSB change on the ARM chip compared to Intel maybe?
The openexr-damaged, sorry, that's expected to fail. It's trying to test broken exr files, but it turns out that the precise error messages it prints seems to change quite a bit from one openexr version to another, so I haven't been able to make a stable "reference output" to compare against. Again, that's a test we tend to skip in our own CI.
All the others -- hmmm, I'm not sure. Let's pick just one and investigate more carefully. Just for fun, let's pick psd:
(cd build/testsuite/psd ; ../runtest.py >& out.log)
tar czvf psdresults.tgz build/testsuite/psd

And either attach that file (if not too big) or email it to lg AT openimageio.org.

@lgritz I use the<EMAIL_ADDRESS>to test and Found the same mistake but The x86_64 test passed in the same test method.The following figure shows the errors reported in the psd-colormodes test in the aarch64 test。
Steps to reproduce the issue
55/69 Test #36: psd-colormodes ...................***Failed   12.66 sec
iconvert ERROR copying "src/pattern2-8-rgb.psd" to "pattern2-8-rgb.psd.tif" :

iconvert ERROR copying "src/pattern2-8-cmyk.psd" to "pattern2-8-cmyk.psd.tif" :

iconvert ERROR copying "src/pattern2-8-multichannel.psd" to "pattern2-8-multichannel.psd.tif" :

iconvert ERROR copying "src/pattern2-8-grayscale.psd" to "pattern2-8-grayscale.psd.tif" :

iconvert ERROR copying "src/pattern2-8-indexed.psd" to "pattern2-8-indexed.psd.tif" :

Comparing "pattern2-8-rgb.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 3 channel
  Mean error = 0.640395
  RMS error = 0.765747
  Peak SNR = 2.3183
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 3 channel
  Mean error = 0.540351
  RMS error = 0.684572
  Peak SNR = 3.29161
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2-gray.tif"
200 x 150, 3 channel
  Mean error = 0.172971
  RMS error = 0.376413
  Peak SNR = 8.48672
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2.tif"
200 x 150, 3 channel
  Mean error = 0.520527
  RMS error = 0.669694
  Peak SNR = 3.48247
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1, 1, 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
idiff ERROR: Could not read ref/pattern2-8-rgb.psd.tif:
        Invalid image file "ref/pattern2-8-rgb.psd.tif": Could not open file: ref/pattern2-8-rgb.psd.tif: No such file or directory
Comparing "pattern2-16-rgb.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 3 channel
  Mean error = 0.250003
  RMS error = 0.5
  Peak SNR = 6.0206
  Max error  = 1 @ (0, 0, A)  values are 1, 1, 1 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 3 channel
  Mean error = 0.042967
  RMS error = 0.0829656
  Peak SNR = 21.622
  Max error  = 0.33727 @ (53, 51, B)  values are 0.501945, 0, 0.501945 vs 0.380392, 0, 0.839216
  18432 pixels (61.4%) over 0.016
  18432 pixels (61.4%) over 0.008
FAILURE
Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2-gray.tif"
200 x 150, 3 channel
  Mean error = 0.387581
  RMS error = 0.557595
  Peak SNR = 5.07362
  Max error  = 1 @ (0, 0, G)  values are 1, 1, 1 vs 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-8-cmyk.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 3 channel
  Mean error = nan
  RMS error = nan
  Peak SNR = nan
  Max error  = inf @ (7, 115, R)  values are nan, 1.49931e+38, 9.41159e+36 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 3 channel
  Mean error = nan
  RMS error = nan
  Peak SNR = nan
  Max error  = inf @ (7, 115, R)  values are nan, 1.49931e+38, 9.41159e+36 vs 1, 1, 1
  29999 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-gray.tif"
200 x 150, 3 channel
  Mean error = nan
  RMS error = nan
  Peak SNR = nan
  Max error  = inf @ (7, 115, R)  values are nan, 1.49931e+38, 9.41159e+36 vs 1
  29453 pixels (98.2%) over 0.016
  29460 pixels (98.2%) over 0.008
FAILURE
Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2.tif"
200 x 150, 3 channel
  Mean error = nan
  RMS error = nan
  Peak SNR = nan
  Max error  = inf @ (7, 115, R)  values are nan, 1.49931e+38, 9.41159e+36 vs 1, 1, 1
  29459 pixels (98.2%) over 0.016
  29466 pixels (98.2%) over 0.008
FAILURE
idiff ERROR: Could not read ref/pattern2-8-cmyk.psd.tif:
        Invalid image file "ref/pattern2-8-cmyk.psd.tif": Could not open file: ref/pattern2-8-cmyk.psd.tif: No such file or directory
Comparing "pattern2-16-cmyk.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-16-cmyk.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 3 channel
  Mean error = 0.282226
  RMS error = 0.505133
  Peak SNR = 5.93189
  Max error  = 1 @ (0, 0, A)  values are 1, 1, 1 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-16-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
PASS
Comparing "pattern2-8-multichannel.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 3 channel
  Mean error = 0.640395
  RMS error = 0.765747
  Peak SNR = 2.3183
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 3 channel
  Mean error = 0.540351
  RMS error = 0.684572
  Peak SNR = 3.29161
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2-gray.tif"
200 x 150, 3 channel
  Mean error = 0.172971
  RMS error = 0.376413
  Peak SNR = 8.48672
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2.tif"
200 x 150, 3 channel
  Mean error = 0.520527
  RMS error = 0.669694
  Peak SNR = 3.48247
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0 vs 1, 1, 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
idiff ERROR: Could not read ref/pattern2-8-multichannel.psd.tif:
        Invalid image file "ref/pattern2-8-multichannel.psd.tif": Could not open file: ref/pattern2-8-multichannel.psd.tif: No such file or directory
Comparing "pattern2-16-multichannel.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 3 channel
  Mean error = 0.250003
  RMS error = 0.5
  Peak SNR = 6.0206
  Max error  = 1 @ (0, 0, A)  values are 1, 1, 1 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 3 channel
  Mean error = 0.042967
  RMS error = 0.0829656
  Peak SNR = 21.622
  Max error  = 0.33727 @ (53, 51, B)  values are 0.501945, 0, 0.501945 vs 0.380392, 0, 0.839216
  18432 pixels (61.4%) over 0.016
  18432 pixels (61.4%) over 0.008
FAILURE
Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2-gray.tif"
200 x 150, 3 channel
  Mean error = 0.387581
  RMS error = 0.557595
  Peak SNR = 5.07362
  Max error  = 1 @ (0, 0, G)  values are 1, 1, 1 vs 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-8-grayscale.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 1 channel
  Mean error = 0.640395
  RMS error = 0.765747
  Peak SNR = 2.3183
  Max error  = 1 @ (0, 0, Y)  values are 0 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 1 channel
  Mean error = 0.540351
  RMS error = 0.684572
  Peak SNR = 3.29161
  Max error  = 1 @ (0, 0, Y)  values are 0 vs 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-gray.tif"
200 x 150, 1 channel
  Mean error = 0.518912
  RMS error = 0.651966
  Peak SNR = 3.7155
  Max error  = 1 @ (0, 0, Y)  values are 0 vs 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2.tif"
200 x 150, 1 channel
  Mean error = 0.520527
  RMS error = 0.669694
  Peak SNR = 3.48247
  Max error  = 1 @ (0, 0, Y)  values are 0 vs 1, 1, 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
idiff ERROR: Could not read ref/pattern2-8-grayscale.psd.tif:
        Invalid image file "ref/pattern2-8-grayscale.psd.tif": Could not open file: ref/pattern2-8-grayscale.psd.tif: No such file or directory
Comparing "pattern2-16-grayscale.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 1 channel
  Mean error = 0.540691
  RMS error = 0.695116
  Peak SNR = 3.15886
  Max error  = 1 @ (0, 0, G)  values are 0.999969 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 1 channel
  Mean error = 0.395826
  RMS error = 0.57531
  Peak SNR = 4.80197
  Max error  = 1 @ (0, 0, G)  values are 0.999969 vs 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-gray.tif"
PASS
Comparing "pattern2-8-indexed.psd.tif" and "ref/out.txt"
idiff ERROR: Could not read ref/out.txt:
        Invalid image file "ref/out.txt": OpenImageIO could not find a format reader for "ref/out.txt". Is it a file format that OpenImageIO doesn't know about?
Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-alpha.tif"
200 x 150, 4 channel
  Mean error = 0.640395
  RMS error = 0.765747
  Peak SNR = 2.3183
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0, 0 vs 1, 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-cmyk.tif"
200 x 150, 4 channel
  Mean error = 0.405263
  RMS error = 0.592857
  Peak SNR = 4.541
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0, 0 vs 1, 1, 1
  30000 pixels (100%) over 0.016
  30000 pixels (100%) over 0.008
FAILURE
Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-gray.tif"
200 x 150, 4 channel
  Mean error = 0.129728
  RMS error = 0.325983
  Peak SNR = 9.7361
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0, 0 vs 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2.tif"
200 x 150, 4 channel
  Mean error = 0.390395
  RMS error = 0.579972
  Peak SNR = 4.73186
  Max error  = 1 @ (0, 0, R)  values are 0, 0, 0, 0 vs 1, 1, 1
  27696 pixels (92.3%) over 0.016
  27696 pixels (92.3%) over 0.008
FAILURE
idiff ERROR: Could not read ref/pattern2-8-indexed.psd.tif:
        Invalid image file "ref/pattern2-8-indexed.psd.tif": Could not open file: ref/pattern2-8-indexed.psd.tif: No such file or directory
-rw-r--r--. 1 root root 1642 Jul  5 16:42 out.txt
-rw-rw-r--. 1 root root 1334 Jul  2 08:57 ref/out.txt
newsymlink /home/stage/root/spack-stage-openimageio-<IP_ADDRESS>-ik6ogbre7fflaqql5vorke6icq6lpiy6/spack-src/testsuite/psd-colormodes/ref ./ref
newsymlink /home/stage/root/spack-stage-openimageio-<IP_ADDRESS>-ik6ogbre7fflaqql5vorke6icq6lpiy6/spack-src/testsuite/psd-colormodes/src ./src
newsymlink /home/stage/root/spack-stage-openimageio-<IP_ADDRESS>-ik6ogbre7fflaqql5vorke6icq6lpiy6/spack-src/testsuite/psd-colormodes ./data
command = ../../bin/iconvert  src/pattern2-8-rgb.psd  pattern2-8-rgb.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-8-rgb.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-8-rgb.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-16-rgb.psd  pattern2-16-rgb.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-16-rgb.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-16-rgb.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-8-cmyk.psd  pattern2-8-cmyk.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-8-cmyk.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-8-cmyk.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-16-cmyk.psd  pattern2-16-cmyk.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-16-cmyk.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-16-cmyk.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-8-multichannel.psd  pattern2-8-multichannel.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-8-multichannel.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-8-multichannel.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-16-multichannel.psd  pattern2-16-multichannel.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-16-multichannel.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-16-multichannel.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-8-grayscale.psd  pattern2-8-grayscale.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-8-grayscale.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-8-grayscale.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-16-grayscale.psd  pattern2-16-grayscale.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-16-grayscale.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-16-grayscale.psd.tif >> out.txt ;
../../bin/iconvert  src/pattern2-8-indexed.psd  pattern2-8-indexed.psd.tif >> out.txt ;
../../bin/idiff  -a src/pattern2-8-indexed.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-8-indexed.psd.tif >> out.txt ;

#### Error: this command failed:  ../../bin/iconvert  src/pattern2-8-rgb.psd  pattern2-8-rgb.psd.tif >> out.txt
FAIL
#### Error: this command failed:  ../../bin/iconvert  src/pattern2-8-cmyk.psd  pattern2-8-cmyk.psd.tif >> out.txt
FAIL
#### Error: this command failed:  ../../bin/idiff  -a src/pattern2-8-cmyk.psd -fail 0.008 -failpercent 0.02 -hardfail 0.012 -warn 0.016  pattern2-8-cmyk.psd.tif >> out.txt
FAIL
#### Error: this command failed:  ../../bin/iconvert  src/pattern2-8-multichannel.psd  pattern2-8-multichannel.psd.tif >> out.txt
FAIL
#### Error: this command failed:  ../../bin/iconvert  src/pattern2-8-grayscale.psd  pattern2-8-grayscale.psd.tif >> out.txt
FAIL
#### Error: this command failed:  ../../bin/iconvert  src/pattern2-8-indexed.psd  pattern2-8-indexed.psd.tif >> out.txt
FAIL
NO MATCH for pattern2-8-rgb.psd.tif
FAIL pattern2-8-rgb.psd.tif
PASS: pattern2-16-rgb.psd.tif matches ref/pattern2.tif
NO MATCH for pattern2-8-cmyk.psd.tif
FAIL pattern2-8-cmyk.psd.tif
PASS: pattern2-16-cmyk.psd.tif matches ref/pattern2-cmyk.tif
NO MATCH for pattern2-8-multichannel.psd.tif
FAIL pattern2-8-multichannel.psd.tif
PASS: pattern2-16-multichannel.psd.tif matches ref/pattern2.tif
NO MATCH for pattern2-8-grayscale.psd.tif
FAIL pattern2-8-grayscale.psd.tif
PASS: pattern2-16-grayscale.psd.tif matches ref/pattern2-gray.tif
NO MATCH for pattern2-8-indexed.psd.tif
FAIL pattern2-8-indexed.psd.tif
Diff out.txt vs ref/out.txt was:
-------
--- out.txt     Tue Jul  5 16:42:42 2022
+++ ref/out.txt Sat Jul  2 08:57:35 2022
@@ -3,14 +3,7 @@
 Comparing "src/pattern2-16-rgb.psd" and "pattern2-16-rgb.psd.tif"
 PASS
 Comparing "src/pattern2-8-cmyk.psd" and "pattern2-8-cmyk.psd.tif"
-200 x 150, 3 channel
-  Mean error = nan
-  RMS error = nan
-  Peak SNR = nan
-  Max error  = 1.49916e+38 @ (142, 134, G)  values are 5.53718e-39, 6.27186e-39, 3.7523e-38 vs 1.49256e+38, 1.49916e+38, 1.49916e+38
-  21349 pixels (71.2%) over 0.016
-  21414 pixels (71.4%) over 0.008
-FAILURE
+PASS
 Comparing "src/pattern2-16-cmyk.psd" and "pattern2-16-cmyk.psd.tif"
 PASS
 Comparing "src/pattern2-8-multichannel.psd" and "pattern2-8-multichannel.psd.tif"
@@ -23,16 +16,21 @@
 PASS
 Comparing "src/pattern2-8-indexed.psd" and "pattern2-8-indexed.psd.tif"
 PASS
-Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2-8-rgb.psd.tif"
+Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2.tif"
+PASS
 Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2.tif"
 PASS
-Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-8-cmyk.psd.tif"
+Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
+PASS
 Comparing "pattern2-16-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
 PASS
-Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2-8-multichannel.psd.tif"
+Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2.tif"
+PASS
 Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2.tif"
 PASS
-Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-8-grayscale.psd.tif"
+Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-gray.tif"
+PASS
 Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-gray.tif"
 PASS
-Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-8-indexed.psd.tif"
+Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-alpha.tif"
+PASS

Diff out.txt vs ref/out.txt was:
-------
--- out.txt     Tue Jul  5 16:42:42 2022
+++ ref/out.txt Sat Jul  2 08:57:35 2022
@@ -3,14 +3,7 @@
 Comparing "src/pattern2-16-rgb.psd" and "pattern2-16-rgb.psd.tif"
 PASS
 Comparing "src/pattern2-8-cmyk.psd" and "pattern2-8-cmyk.psd.tif"
-200 x 150, 3 channel
-  Mean error = nan
-  RMS error = nan
-  Peak SNR = nan
-  Max error  = 1.49916e+38 @ (142, 134, G)  values are 5.53718e-39, 6.27186e-39, 3.7523e-38 vs 1.49256e+38, 1.49916e+38, 1.49916e+38
-  21349 pixels (71.2%) over 0.016
-  21414 pixels (71.4%) over 0.008
-FAILURE
+PASS
 Comparing "src/pattern2-16-cmyk.psd" and "pattern2-16-cmyk.psd.tif"
 PASS
 Comparing "src/pattern2-8-multichannel.psd" and "pattern2-8-multichannel.psd.tif"
@@ -23,16 +16,21 @@
 PASS
 Comparing "src/pattern2-8-indexed.psd" and "pattern2-8-indexed.psd.tif"
 PASS
-Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2-8-rgb.psd.tif"
+Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2.tif"
+PASS
 Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2.tif"
 PASS
-Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-8-cmyk.psd.tif"
+Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
+PASS
 Comparing "pattern2-16-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
 PASS
-Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2-8-multichannel.psd.tif"
+Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2.tif"
+PASS
 Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2.tif"
 PASS
-Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-8-grayscale.psd.tif"
+Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-gray.tif"
+PASS
 Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-gray.tif"
 PASS
-Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-8-indexed.psd.tif"
+Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-alpha.tif"
+PASS

Unexpected error: <class 'UnicodeDecodeError'>
Unexpected error: <class 'UnicodeDecodeError'>
Unexpected error: <class 'UnicodeDecodeError'>
Unexpected error: <class 'UnicodeDecodeError'>
NO MATCH for out.txt
FAIL out.txt
-----out.txt----->
Comparing "src/pattern2-8-rgb.psd" and "pattern2-8-rgb.psd.tif"
PASS
Comparing "src/pattern2-16-rgb.psd" and "pattern2-16-rgb.psd.tif"
PASS
Comparing "src/pattern2-8-cmyk.psd" and "pattern2-8-cmyk.psd.tif"
200 x 150, 3 channel
  Mean error = nan
  RMS error = nan
  Peak SNR = nan
  Max error  = 1.49916e+38 @ (142, 134, G)  values are 5.53718e-39, 6.27186e-39, 3.7523e-38 vs 1.49256e+38, 1.49916e+38, 1.49916e+38
  21349 pixels (71.2%) over 0.016
  21414 pixels (71.4%) over 0.008
FAILURE
Comparing "src/pattern2-16-cmyk.psd" and "pattern2-16-cmyk.psd.tif"
PASS
Comparing "src/pattern2-8-multichannel.psd" and "pattern2-8-multichannel.psd.tif"
PASS
Comparing "src/pattern2-16-multichannel.psd" and "pattern2-16-multichannel.psd.tif"
PASS
Comparing "src/pattern2-8-grayscale.psd" and "pattern2-8-grayscale.psd.tif"
PASS
Comparing "src/pattern2-16-grayscale.psd" and "pattern2-16-grayscale.psd.tif"
PASS
Comparing "src/pattern2-8-indexed.psd" and "pattern2-8-indexed.psd.tif"
PASS
Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2-8-rgb.psd.tif"
Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-8-cmyk.psd.tif"
Comparing "pattern2-16-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
PASS
Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2-8-multichannel.psd.tif"
Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-8-grayscale.psd.tif"
Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-gray.tif"
PASS
Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-8-indexed.psd.tif"
<----------
-----ref/out.txt----->
Comparing "src/pattern2-8-rgb.psd" and "pattern2-8-rgb.psd.tif"
PASS
Comparing "src/pattern2-16-rgb.psd" and "pattern2-16-rgb.psd.tif"
PASS
Comparing "src/pattern2-8-cmyk.psd" and "pattern2-8-cmyk.psd.tif"
PASS
Comparing "src/pattern2-16-cmyk.psd" and "pattern2-16-cmyk.psd.tif"
PASS
Comparing "src/pattern2-8-multichannel.psd" and "pattern2-8-multichannel.psd.tif"
PASS
Comparing "src/pattern2-16-multichannel.psd" and "pattern2-16-multichannel.psd.tif"
PASS
Comparing "src/pattern2-8-grayscale.psd" and "pattern2-8-grayscale.psd.tif"
PASS
Comparing "src/pattern2-16-grayscale.psd" and "pattern2-16-grayscale.psd.tif"
PASS
Comparing "src/pattern2-8-indexed.psd" and "pattern2-8-indexed.psd.tif"
PASS
Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
PASS
Comparing "pattern2-16-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
PASS
Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2.tif"
PASS
Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-gray.tif"
PASS
Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-gray.tif"
PASS
Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-alpha.tif"
PASS
<----------
Diff was:
-------
--- out.txt     Tue Jul  5 16:42:42 2022
+++ ref/out.txt Sat Jul  2 08:57:35 2022
@@ -3,14 +3,7 @@
 Comparing "src/pattern2-16-rgb.psd" and "pattern2-16-rgb.psd.tif"
 PASS
 Comparing "src/pattern2-8-cmyk.psd" and "pattern2-8-cmyk.psd.tif"
-200 x 150, 3 channel
-  Mean error = nan
-  RMS error = nan
-  Peak SNR = nan
-  Max error  = 1.49916e+38 @ (142, 134, G)  values are 5.53718e-39, 6.27186e-39, 3.7523e-38 vs 1.49256e+38, 1.49916e+38, 1.49916e+38
-  21349 pixels (71.2%) over 0.016
-  21414 pixels (71.4%) over 0.008
-FAILURE
+PASS
 Comparing "src/pattern2-16-cmyk.psd" and "pattern2-16-cmyk.psd.tif"
 PASS
 Comparing "src/pattern2-8-multichannel.psd" and "pattern2-8-multichannel.psd.tif"
@@ -23,16 +16,21 @@
 PASS
 Comparing "src/pattern2-8-indexed.psd" and "pattern2-8-indexed.psd.tif"
 PASS
-Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2-8-rgb.psd.tif"
+Comparing "pattern2-8-rgb.psd.tif" and "ref/pattern2.tif"
+PASS
 Comparing "pattern2-16-rgb.psd.tif" and "ref/pattern2.tif"
 PASS
-Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-8-cmyk.psd.tif"
+Comparing "pattern2-8-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
+PASS
 Comparing "pattern2-16-cmyk.psd.tif" and "ref/pattern2-cmyk.tif"
 PASS
-Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2-8-multichannel.psd.tif"
+Comparing "pattern2-8-multichannel.psd.tif" and "ref/pattern2.tif"
+PASS
 Comparing "pattern2-16-multichannel.psd.tif" and "ref/pattern2.tif"
 PASS
-Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-8-grayscale.psd.tif"
+Comparing "pattern2-8-grayscale.psd.tif" and "ref/pattern2-gray.tif"
+PASS
 Comparing "pattern2-16-grayscale.psd.tif" and "ref/pattern2-gray.tif"
 PASS
-Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-8-indexed.psd.tif"
+Comparing "pattern2-8-indexed.psd.tif" and "ref/pattern2-alpha.tif"
+PASS

Can you please do a couple more things (after the failure above):
ls -al -R build/testsuite/psd           # and post the output

tar czvf psdresults.tgz build/testsuite/psd       # and email me the tgz file

For PSD (and maybe the others), I'm betting that there's some subtle bug related to the machine being "big endian" (someplace we are failing to swap bytes, or perhaps are swapping bytes when that is only required on Intel but not ARM). It is very hard to guess without having a big-endian machine on which I can try to debug it.
Does anybody out there have easy access to an aarch64 linux, or a Mac ARM machine who can try this test and see directly what's going on?

I tried this and just merged it: https://github.com/OpenImageIO/oiio/pull/3469
So if you pull the current master and try with it, maybe we'll get a better error message about exactly what point within the PSD read had the problems.

@lgritz
I have tested the latest master version and found that the following test cases report errors after ctest is used:
Steps to reproduce the issue
[root@bigdata build]ctest -E '(oiiotool-subimage|oiiotool-text|broken|texture-.*|unit_timer)' -j126  --output-on-failure
The following tests FAILED:
          1 - cmake-consumer (Failed)
          4 - oiiotool (Failed)
          7 - oiiotool-copy (Failed)
         16 - maketx (Failed)
         17 - oiiotool-maketx (Failed)
         35 - unit_simd (Failed)
Errors while running CTest


Update CA image for k8s 1.29

How to categorize this PR?

/area control-plane
/kind enhancement
What this PR does / why we need it:
Update CA image for k8s 1.29. (Refer https://github.com/gardener/autoscaler/releases/tag/v1.29.0 for release notes of gardener CA 1.29.0)
Which issue(s) this PR fixes:
Fixes  part of #8871
Special notes for your reviewer:
Release note:

Clusters with K8s v1.29 will use CA v1.29.0

/retest-required

/lgtm
/cc @acumino

/retest-required


done-and-close Notifications: Mark as done and close tab.

Before:

After:

(icon FF Photon, not final at all)
Goes well with 'open 30 in new tabs'.
A kb shortcut would be very nice as well. Instead of Ctrl-w, I have to click done, wait for some indication, that the request was received (often I just switch to the next tab, then later check and close them), and close the tab.
The kb-shortcut could be small on the button as well.

Closing the tab should already be super easy since your hand is most likely already on the keyboard. Not worth adding extra UI


BaseDateTimeDtDstu2Test fail with install command from maven

Hi,
when I use install command from maven on Hapi-Fhir project, on version 1.2 and 1.3-SNAPSHOT (never tried before), testToHumanDisplay() from BaseDateTimeDtDstu2Test fail on line 66: assertThat(human, containsString("12:00:00"));.
This is because I'm from Italy and here when you use format() (see BaseDateTimeDt line 108 and 112) on a Calendar with a FastDateFormat with getDateTimeInstance(FastDateFormat.MEDIUM, FastDateFormat.MEDIUM) (see BaseDateTimeDt line 64 and 65) the resulting String contain "12.00.00" (with dot and not with colon).
I don't know what is your politic about this problem, I mean that I don't know if you prefer to change the Test or if you prefer to change how HumanDisplay will work.

Thanks for letting us know! Committing a fix now.


SA1611 does not handle operator declarations

During a code review today I observed that SA1611 does not handle SyntaxKind.OperatorDeclaration or SyntaxKind.ConversionOperatorDeclaration. This should be reviewed to determine if it is a bug or not.

I'm fairly sure this one is a bug, since operators do have parameters.

Grabbing this


EDU-530 Extract track component from media player

Closes https://educandu.atlassian.net/browse/EDU-530

Wrong ticket number, will reopen soon.


Update internal test package usage to v1.4.0

@RickWinter FYI there are some updates we're going to need to make en-masse to the test packages. Some just need a slight refactor to use proxy properly, others appear to be using it incorrectly, and a final set appear to not be structured using the TestMain pattern.

@RickWinter FYI there are some updates we're going to need to make en-masse to the test packages. Some just need a slight refactor to use proxy properly, others appear to be using it incorrectly, and a final set appear to not be structured using the TestMain pattern.

Are you making these updates or do you need assistance from the eng team?

@RickWinter I'm going to do a quick pass to see what I can get done, but I anticipate there may be a couple that I'll need help with. I will follow up.

Closing in favor of https://github.com/Azure/azure-sdk-for-go/pull/21874 for data plane


Link to the developer docs

The old link now 404s and https://docs.atomist.com/developer/ seems the most likely replacement looking at the wayback machine.

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


How can I test it on a single query image (for inference)? is there any example

@MadhuriPatil1694 , Hello, Do you have any ideas?

Added inference folder should now be easier to run as example

Added inference folder should now be easier to run as example

Thankyou for the update I would try to test a few images

@MadhuriPatil1694 can you tell the process and progress with the testing of single image, like what are the steps that are needed to follow to test a single image..

Already checked this page? https://github.com/mikwieczorek/centroids-reid/tree/main/inference
Can't you solve what you want by running python inference/get_similar.py with TEST.IMS_PER_BATCH 1.


Fix static code issues

A few changes based upon static analysis issues.

Coverage decreased (-0.01%) to 95.328% when pulling b1a5b644b93e544fe43456f2e98da6d842bcfe1d on ham1:fix-static-code-issues into d5ffc4dde6236ed5afbedfeb333bb87dceb3fe7a on apache:master.

I'd be ready to accept these one by one, but not 15 files in one go.

Could you explain your rational and what should I do differently next time to make the review easier?
This PR is 86 lines of changes broken down into differet commits for each type of change. Should I create a PR for each file or each commit?


#161255263 save comment edit history

What does this PR do?

Allow users to view comment histories

Description of Task to be completed?

Post-save comment histories
Allow users to view comment edit history

Having the following API endpoints working

Method
Endpoint
Functionality

GET
api/articles/comment/{slug}
List comments edit histories

How should this be manually tested?
After cloning the repo, cd into it and RUN python manage.py test authors.apps.comment.tests
What are the relevant pivotal tracker stories?
#161255263
Screenshots

Pull Request Test Coverage Report for Build 444

117 of 121 (96.69%)  changed or added relevant lines in 7 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 92.637%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

authors/apps/comment/models.py
28
30
93.33%

authors/apps/comment_like/api/serializers.py
28
30
93.33%

Totals

Change from base Build 433:
0.2%

Covered Lines:
2378

Relevant Lines:
2567

💛  - Coveralls


File local-variables error: (doom-hook-error lsp! (void-variable flyspell-delayed-commands))

What actually happened?
File local-variables error: (doom-hook-error lsp! (void-variable flyspell-delayed-commands))

Debugger entered--Lisp error: (void-variable flyspell-delayed-commands)
  #f(compiled-function () #)()
  funcall(#f(compiled-function () #))
  mapc(funcall (#f(compiled-function () #)))
  do-after-load-evaluation("/home/chenxianbin/.emacs.d/modules/checkers/spell/...")
  load-with-code-conversion("/home/chenxianbin/.emacs.d/modules/checkers/spell/..." "/home/chenxianbin/.emacs.d/modules/checkers/spell/..." nil t)
  (set-flyspell-predicate! '(markdown-mode gfm-mode) #'+markdown-flyspell-word-p)
  (progn (set-flyspell-predicate! '(markdown-mode gfm-mode) #'+markdown-flyspell-word-p) (set-lookup-handlers! '(markdown-mode gfm-mode) :file '(markdown-follow-thing-at-point :async t)) (sp-local-pair '(markdown-mode gfm-mode) "`" "`" :unless '(:add sp-point-before-word-p sp-point-before-same-p)) (progn (defalias 'doom--setq-fill-nobreak-predicate-for-markdown-mode-h #'(lambda (&rest _) "fill-nobreak-predicate = (cons #'markdown-code-blo..." (set (make-local-variable 'fill-nobreak-predicate) (cons #'markdown-code-block-at-point-p fill-nobreak-predicate)))) (remove-hook 'markdown-mode-hook #'doom--setq-fill-nobreak-predicate-for-markdown-mode-h) (add-hook 'markdown-mode-hook #'doom--setq-fill-nobreak-predicate-for-markdown-mode-h)) (progn (defalias '+markdown-disable-front-matter-fontification-a #'(lambda (&rest _) (ignore (goto-char (point-max))))) (let ((--dolist-tail-- (list (cons :override (doom-enlist ...))))) (while --dolist-tail-- (let ((targets (car --dolist-tail--))) (let ((--dolist-tail-- ...)) (while --dolist-tail-- (let ... ... ...))) (setq --dolist-tail-- (cdr --dolist-tail--)))))) (progn (general-define-key :major-modes t :prefix doom-localleader-alt-key :keymaps '(markdown-mode-map) "'" #'markdown-edit-code-block "o" #'markdown-open "p" #'markdown-preview "e" #'markdown-export) (if t (progn (general-define-key :major-modes t :prefix doom-localleader-alt-key :keymaps '(markdown-mode-map) "p" #'grip-mode))) (general-define-key :major-modes t :prefix doom-localleader-alt-key :keymaps '(markdown-mode-map) :infix "i" "" (list :ignore t :which-key "insert") "t" #'markdown-toc-generate-toc "i" #'markdown-insert-image "l" #'markdown-insert-link)) t)
  (closure (t) nil (progn (set-flyspell-predicate! '(markdown-mode gfm-mode) #'+markdown-flyspell-word-p) (set-lookup-handlers! '(markdown-mode gfm-mode) :file '(markdown-follow-thing-at-point :async t)) (sp-local-pair '(markdown-mode gfm-mode) "`" "`" :unless '(:add sp-point-before-word-p sp-point-before-same-p)) (progn (defalias 'doom--setq-fill-nobreak-predicate-for-markdown-mode-h #'(lambda (&rest _) "fill-nobreak-predicate = (cons #'markdown-code-blo..." (set (make-local-variable ...) (cons ... fill-nobreak-predicate)))) (remove-hook 'markdown-mode-hook #'doom--setq-fill-nobreak-predicate-for-markdown-mode-h) (add-hook 'markdown-mode-hook #'doom--setq-fill-nobreak-predicate-for-markdown-mode-h)) (progn (defalias '+markdown-disable-front-matter-fontification-a #'(lambda (&rest _) (ignore (goto-char ...)))) (let ((--dolist-tail-- (list (cons :override ...)))) (while --dolist-tail-- (let ((targets ...)) (let (...) (while --dolist-tail-- ...)) (setq --dolist-tail-- (cdr --dolist-tail--)))))) (progn (general-define-key :major-modes t :prefix doom-localleader-alt-key :keymaps '(markdown-mode-map) "'" #'markdown-edit-code-block "o" #'markdown-open "p" #'markdown-preview "e" #'markdown-export) (if t (progn (general-define-key :major-modes t :prefix doom-localleader-alt-key :keymaps '(markdown-mode-map) "p" #'grip-mode))) (general-define-key :major-modes t :prefix doom-localleader-alt-key :keymaps '(markdown-mode-map) :infix "i" "" (list :ignore t :which-key "insert") "t" #'markdown-toc-generate-toc "i" #'markdown-insert-image "l" #'markdown-insert-link)) t))()
  eval-after-load-helper("/home/chenxianbin/.emacs.d/.local/straight/build/m...")
  run-hook-with-args(eval-after-load-helper "/home/chenxianbin/.emacs.d/.local/straight/build/m...")
  do-after-load-evaluation("/home/chenxianbin/.emacs.d/.local/straight/build/m...")
  require(markdown-mode)
  byte-code("\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\210\300\310!\210\300\311!\210\300\312!\210\300\313!\210\300\314!\210\300\315..." [require bindat cl-generic cl-lib compile dash dash-functional ewoc f filenotify files ht imenu inline json lv markdown-mode network-stream pcase rx s seq spinner subr-x tree-widget url-parse url-util widget xref minibuffer yasnippet nil t lsp-protocol] 4)
  (lsp-deferred)
  (if (and (boundp 'lsp-mode) lsp-mode) nil (lsp-deferred))
  (if nil (eglot-ensure) (if (and (boundp 'lsp-mode) lsp-mode) nil (lsp-deferred)))
  lsp!()
  #(lsp!)
  apply(# lsp!)
  funcall-interactively(lsp!)
  #(lsp! record nil)
  apply(# (lsp! record nil))
  explain-pause--wrap-call-interactively(# lsp! record nil)
  apply(explain-pause--wrap-call-interactively # (lsp! record nil))
  call-interactively(lsp! record nil)
  command-execute(lsp! record)
  counsel-M-x-action("lsp!")
  #f(compiled-function (x) #)("lsp!")
  ivy-call()
  #f(compiled-function (arg1 arg2 &rest rest) "Read a string in the minibuffer, with completion.\n\nPROMPT is a string, normally ending in a colon and a space.\n`ivy-count-format' is prepended to PROMPT during completion.\n\nCOLLECTION is either a list of strings, a function, an alist, or\na hash table, supplied for `minibuffer-completion-table'.\n\nPREDICATE is applied to filter out the COLLECTION immediately.\nThis argument is for compatibility with `completing-read'.\n\nWhen REQUIRE-MATCH is non-nil, only members of COLLECTION can be\nselected.\n\nIf INITIAL-INPUT is non-nil, then insert that input in the\nminibuffer initially.\n\nHISTORY is a name of a variable to hold the completion session\nhistory.\n\nKEYMAP is composed with `ivy-minibuffer-map'.\n\nPRESELECT, when non-nil, determines which one of the candidates\nmatching INITIAL-INPUT to select initially.  An integer stands\nfor the position of the desired candidate in the collection,\ncounting from zero.  Otherwise, use the first occurrence of\nPRESELECT in the collection.  Comparison is first done with\n`equal'.  If that fails, and when applicable, match PRESELECT as\na regular expression.\n\nDEF is for compatibility with `completing-read'.\n\nUPDATE-FN is called each time the candidate list is re-displayed.\n\nWhen SORT is non-nil, `ivy-sort-functions-alist' determines how\nto sort candidates before displaying them.\n\nACTION is a function to call after selecting a candidate.\nIt takes one argument, the selected candidate. If COLLECTION is\nan alist, the argument is a cons cell, otherwise it's a string.\n\nMULTI-ACTION, when non-nil, is called instead of ACTION when\nthere are marked candidates. It takes the list of candidates as\nits only argument. When it's nil, ACTION is called on each marked\ncandidate.\n\nUNWIND is a function of no arguments to call before exiting.\n\nRE-BUILDER is a function transforming input text into a regex\npattern.\n\nMATCHER is a function which can override how candidates are\nfiltered based on user input.  It takes a regex pattern and a\nlist of candidates, and returns the list of matching candidates.\n\nDYNAMIC-COLLECTION is a boolean specifying whether the list of\ncandidates is updated after each input by calling COLLECTION.\n\nEXTRA-PROPS is a plist that can be used to store\ncollection-specific session-specific data.\n\nCALLER is a symbol to uniquely identify the caller to `ivy-read'.\nIt is used, along with COLLECTION, to determine which\ncustomizations apply to the current completion session." #)("M-x " ("lsp!" "global-command-log-mode" "command-log-mode" "revert-buffer" "vterm-module-compile" "pdf-tools-install" "lsp-install-server" "lsp-treemacs-java-deps-list" "browse-url" "+fold/close" "doom/window-maximize-buffer" "hl-line-mode" "solaire-mode" "avy-goto-line" "+fold/open-all" "global-hl-line-mode" "toggle-debug-on-error" "calc" "calendar" "dap-hydra" "protobuf-mode" "+fold/previous" "fundamental-mode" "insert-kbd-macro" "browse-url-chrome" "proxy-http-enable" "proxy-http-toggle" "org-mark-ring-goto" "name-last-kbd-macro" "lsp-treemacs-symbols" "lsp-treemacs-errors-list" "cd" "5x5" "amx" "arp" "dbx" "dig" "erc" "ert" "eww" "ftp" "gdb" "irc" "jdb" "lsp" "man" "mpc" "pdb" "pwd" "rsh" ...) :predicate #f(compiled-function (x) #) :require-match t :history counsel-M-x-history :action counsel-M-x-action :keymap (keymap (67108908 . counsel--info-lookup-symbol) (67108910 . counsel-find-symbol)) :initial-input nil :caller counsel-M-x :sort t)
  apply(#f(compiled-function (arg1 arg2 &rest rest) "Read a string in the minibuffer, with completion.\n\nPROMPT is a string, normally ending in a colon and a space.\n`ivy-count-format' is prepended to PROMPT during completion.\n\nCOLLECTION is either a list of strings, a function, an alist, or\na hash table, supplied for `minibuffer-completion-table'.\n\nPREDICATE is applied to filter out the COLLECTION immediately.\nThis argument is for compatibility with `completing-read'.\n\nWhen REQUIRE-MATCH is non-nil, only members of COLLECTION can be\nselected.\n\nIf INITIAL-INPUT is non-nil, then insert that input in the\nminibuffer initially.\n\nHISTORY is a name of a variable to hold the completion session\nhistory.\n\nKEYMAP is composed with `ivy-minibuffer-map'.\n\nPRESELECT, when non-nil, determines which one of the candidates\nmatching INITIAL-INPUT to select initially.  An integer stands\nfor the position of the desired candidate in the collection,\ncounting from zero.  Otherwise, use the first occurrence of\nPRESELECT in the collection.  Comparison is first done with\n`equal'.  If that fails, and when applicable, match PRESELECT as\na regular expression.\n\nDEF is for compatibility with `completing-read'.\n\nUPDATE-FN is called each time the candidate list is re-displayed.\n\nWhen SORT is non-nil, `ivy-sort-functions-alist' determines how\nto sort candidates before displaying them.\n\nACTION is a function to call after selecting a candidate.\nIt takes one argument, the selected candidate. If COLLECTION is\nan alist, the argument is a cons cell, otherwise it's a string.\n\nMULTI-ACTION, when non-nil, is called instead of ACTION when\nthere are marked candidates. It takes the list of candidates as\nits only argument. When it's nil, ACTION is called on each marked\ncandidate.\n\nUNWIND is a function of no arguments to call before exiting.\n\nRE-BUILDER is a function transforming input text into a regex\npattern.\n\nMATCHER is a function which can override how candidates are\nfiltered based on user input.  It takes a regex pattern and a\nlist of candidates, and returns the list of matching candidates.\n\nDYNAMIC-COLLECTION is a boolean specifying whether the list of\ncandidates is updated after each input by calling COLLECTION.\n\nEXTRA-PROPS is a plist that can be used to store\ncollection-specific session-specific data.\n\nCALLER is a symbol to uniquely identify the caller to `ivy-read'.\nIt is used, along with COLLECTION, to determine which\ncustomizations apply to the current completion session." #) ("M-x " ("lsp!" "global-command-log-mode" "command-log-mode" "revert-buffer" "vterm-module-compile" "pdf-tools-install" "lsp-install-server" "lsp-treemacs-java-deps-list" "browse-url" "+fold/close" "doom/window-maximize-buffer" "hl-line-mode" "solaire-mode" "avy-goto-line" "+fold/open-all" "global-hl-line-mode" "toggle-debug-on-error" "calc" "calendar" "dap-hydra" "protobuf-mode" "+fold/previous" "fundamental-mode" "insert-kbd-macro" "browse-url-chrome" "proxy-http-enable" "proxy-http-toggle" "org-mark-ring-goto" "name-last-kbd-macro" "lsp-treemacs-symbols" "lsp-treemacs-errors-list" "cd" "5x5" "amx" "arp" "dbx" "dig" "erc" "ert" "eww" "ftp" "gdb" "irc" "jdb" "lsp" "man" "mpc" "pdb" "pwd" "rsh" ...) :predicate #f(compiled-function (x) #) :require-match t :history counsel-M-x-history :action counsel-M-x-action :keymap (keymap (67108908 . counsel--info-lookup-symbol) (67108910 . counsel-find-symbol)) :initial-input nil :caller counsel-M-x :sort t))
  ivy-read("M-x " ("lsp!" "global-command-log-mode" "command-log-mode" "revert-buffer" "vterm-module-compile" "pdf-tools-install" "lsp-install-server" "lsp-treemacs-java-deps-list" "browse-url" "+fold/close" "doom/window-maximize-buffer" "hl-line-mode" "solaire-mode" "avy-goto-line" "+fold/open-all" "global-hl-line-mode" "toggle-debug-on-error" "calc" "calendar" "dap-hydra" "protobuf-mode" "+fold/previous" "fundamental-mode" "insert-kbd-macro" "browse-url-chrome" "proxy-http-enable" "proxy-http-toggle" "org-mark-ring-goto" "name-last-kbd-macro" "lsp-treemacs-symbols" "lsp-treemacs-errors-list" "cd" "5x5" "amx" "arp" "dbx" "dig" "erc" "ert" "eww" "ftp" "gdb" "irc" "jdb" "lsp" "man" "mpc" "pdb" "pwd" "rsh" ...) :predicate #f(compiled-function (x) #) :require-match t :history counsel-M-x-history :action counsel-M-x-action :keymap (keymap (67108908 . counsel--info-lookup-symbol) (67108910 . counsel-find-symbol)) :initial-input nil :caller counsel-M-x)
  counsel-M-x()
  #(counsel-M-x)
  apply(# counsel-M-x)
  funcall-interactively(counsel-M-x)
  #(counsel-M-x nil nil)
  apply(# (counsel-M-x nil nil))
  explain-pause--wrap-call-interactively(# counsel-M-x nil nil)
  apply(explain-pause--wrap-call-interactively # (counsel-M-x nil nil))
  call-interactively(counsel-M-x nil nil)
  command-execute(counsel-M-x)

System information:

((system
  (type . gnu/linux)
  (config . "x86_64-pc-linux-gnu")
  (shell . "/usr/bin/zsh")
  (uname . "Linux 5.8.3 #1 SMP PREEMPT Mon Aug 24 11:07:52 CST 2020 x86_64")
  (path "~/.gem/ruby/2.6.0/bin" "~/.go/bin" "~/.cargo/bin" "~/.jenv/shims" "~/.jenv/bin" "~/.local/share/coursier/bin" "~/.emacs.d/bin" "~/.local/bin" "~/.nvm/versions/node/v13.12.0/bin" "/usr/local/bin" "/usr/local/sbin" "/usr/bin" "/usr/lib/jvm/default/bin" "/usr/bin/site_perl" "/usr/bin/vendor_perl" "/usr/bin/core_perl" "~/.antigen/bundles/robbyrussell/oh-my-zsh/lib" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/git" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/gitfast" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/colored-man-pages" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/history" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/z" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/extract" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/encode64" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/web-search" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/urltools" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/tmux" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/docker" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/docker-compose" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/archlinux" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/cargo" "~/.antigen/bundles/djui/alias-tips" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/mvn" "~/.antigen/bundles/robbyrussell/oh-my-zsh/plugins/sbt" "~/.antigen/bundles/zdharma/fast-syntax-highlighting" "~/.antigen/bundles/zsh-users/zsh-autosuggestions" "~/.antigen/bundles/hlissner/zsh-autopair" "~/.antigen/bundles/romkatv/powerlevel10k" "/usr/lib/emacs/28.0.50/x86_64-pc-linux-gnu"))
 (emacs
  (dir . "~/.emacs.d/")
  (version . "28.0.50")
  (build . "Aug 25, 2020")
  (buildopts . "--prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --localstatedir=/var --mandir=/usr/share/man --with-gameuser=:games --with-sound=alsa --with-modules --without-gconf --without-gsettings --with-x-toolkit=gtk3 --without-xaw3d --with-xwidgets --without-compress-install 'CFLAGS=-march=ivybridge -O2 -pipe -fno-plt -flto' CPPFLAGS=-D_FORTIFY_SOURCE=2 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now")
  (features . "XPM JPEG TIFF GIF PNG RSVG CAIRO SOUND GPM DBUS GLIB NOTIFY INOTIFY ACL GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS XWIDGETS LIBSYSTEMD JSON PDUMPER LCMS2")
  (traits batch))
 (doom
  (dir . "~/.doom.d/")
  (version . "2.0.9")
  (build . "HEAD -> develop, origin/develop, origin/HEAD 0dfee56e3 2020-08-24 23:22:57 -0400")
  (elc-files . 0)
  (modules :completion (company +childframe) (ivy +prescient +fuzzy +icons) :ui doom doom-quit hl-todo modeline nav-flash ophints (popup +all +defaults) treemacs vc-gutter window-select workspaces :editor file-templates fold format multiple-cursors snippets word-wrap :emacs dired electric (ibuffer +icons) undo vc :term vterm :checkers (syntax +childframe) (spell +aspell) :tools (debugger +lsp) docker editorconfig (eval +overlay) lookup (lsp +peek) magit make pdf :lang data emacs-lisp (go +lsp) json (java +lsp) (javascript +lsp) (markdown +grip) (org +dragndrop +hugo +pandoc +present +pomodoro +journal +pretty) plantuml rest (scala +lsp) sh (web +lsp) yaml :config (default +bindings +smartparens) :my (&user chinese +childframe) (&user ui) (&user editor) (&user calendar) (&user dired) (&user magit) (&user translate +childframe) (&user tools) (&user debugger) (&user lsp) (&user markdown) (&user plantuml) (&user protobuf) (&user go) (&user java +google-java-format) (&user scala) (&user sql) (&user keybindings))
  (packages "n/a")
  (unpin
   (:ui doom)
   (:lang java))
  (elpa "n/a")))

I can confirm this behavior in my configuration too.

Enable the +flyspell flag on :checkers spell.
flyspell was replaced with spell-fu a few days ago and is now gated behind this flag. It's likely you're referring to flyspell-delayed-commands somewhere in your config.

Although I have upgraded doom to the latest commit and I added in init.el (spell +flyspell)  but the error is still printed.

Ah, found the issue. I've fixed it in bfd71a8. Let me know if that isn't the case and I'll reopen it. Thanks for bringing it to my attention!

Yeap the fix works for me!


Prometheum pickaxe in silk touch mode with vein mining

Issue description
I have noticed that the prometheum pickaxe in silk touch mode seems to break one block without silk touch when mining an ore vein with the Vein Mining mod.
When I changed the pickaxe so that silk touch was not removed in postMine this was no longer happening. This is probably some weird case where the mixin in the Vein Mining plugin is causing one block (the originally mined block?) to be broken after the pickaxe's postMine is run and silk touch is no longer on the pickaxe.
Steps to reproduce
Get Prometheum Pickaxe
Enchant it with Vein Mining
Set it to Silk Touch mode
Go mine a vein.
You should get several ore blocks, and a small amount of raw ores.
Minecraft version
1.21.1 (Latest)
Fabric loader version
0.16.5
Fabric API version
0.104.0_1.21.1
Oritech version
0.9.1
Other relevant versions
No response
If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)
No response

Hm, never tested this but it seems like a rather straightforward fix. I'll try to get around to it for the next release

Closed with https://github.com/Rearth/Oritech/pull/110 IIRC


Not able to apply animate/ shake effect on chat button.

Not able to apply animate/ shake effect on chat button. On power page load. Need help on ID how to apply effect or can we apply any animate effect on chatbuttonProps of live chat widget

@elopezanaya Can you please help me with this?

hi @mtodd @tpope @sverrejoh @radical @sarojkpr @charlwan @xTEddie @elopezanaya
Can anyone please help on this issue?

hi @mtodd @tpope @sverrejoh @radical @sarojkpr @charlwan @xTEddie @elopezanaya Can anyone please help on this issue?


Sirt2beast

Implements SIRT of the new algorithm class.
Tested againt old SIRT function.
Works with ASTRA operator, which is now in new format.
Includes demo currently in wip showing usage including how to use constraints in SIRT with the IndicatorBox function.
Closes #201

Also included a demo wip/demo_box_constraints_FISTA.py showing how constraints can be used in the FISTA algorithm using the IndicatorBox function as also done for the SIRT algorithm.

Well spotted. Updated as requested, including changing loss to objective.


fix: Implement missing recursive is_cachable() for Expr::Localize

fix: Implement missing recursive is_cachable() for Expr::Localize
Check recursively if Expr::Localize is cacheable.
Rationale:
Lookup is static and reproducible and thus cachable for each set of text_id and arguments.
Therefore, localize() exprs are cachable whenever their input is cachable.
fix(style): Name localization message identifier as in Fluent Project
Quote from https://projectfluent.org/fluent/guide/hello.html
hello = Hello, world!

Each message has an identifier that allows the developer to bind it to the place in the software where it will be used. The above message is called hello.
fix(style): Normalize test names, prefix all with test_
Bring names of i18n tests in line with all other tests, by prefixing test_:

@11Tuvork28 Can be merged

Thanks again for the work you're putting into this, highly appreciated!


Add Nucleoid.xyz

General:

[X] The pull request title is descriptive. (ex. Added Lunar Network, not Updated metadata.json)
[X] The pull request does not contain any unrelated commits.  (ex. commits from previous pull requests)

Mapping Additions or Updates:

[X] Folder with appropriate name has been created / updated (must not include any non-alpha characters or whitespace).
[X] No changes were made to the file's formatting (4 spaces per tab).
[X] There are no syntax errors.
[X] There is no pre-existing mapping matching my id (check if there is an existing folder).
[X] My field values match your requirements.
You can view our patterns here: metadata.schema.json, or take a look below and complete the field checklist:

[X] id: a lowercase string, which should match the folder name (ex. myserver)
[X] name: a string (ex. MyServerPvP)
[X] addresses: an array with lowercase strings (ex. ["my.server", "your-server.com"])

You do not need to specify subdomains, Lunar Client services automatically detect them.

[X] primaryAddress: an address (ex. my.server)
[X] minecraftVersions: an array with Minecraft versions as strings (ex. ["1.18", "1.19"] - Must be versions supported by Lunar Client)
[X] primaryMinecraftVersion: a Minecraft version as a string (ex. 1.18 - Must be versions supported by Lunar Client)
[ ] primaryColor: a hexademical color code that primarily distiguishes the server (ex. #00FFFF)
[ ] secondaryColor: a hexademical color code that accompanies the primaryColor of the server (ex. #FF0000)
[X] primaryRegion: the primary region where your server operates in (ex. NA)
[X] regions: a list of regions where you have servers located that service your players (ex. ["NA", "EU", "AS"])
[X] gameTypes: a list of games that describe the content on your server, must be a max of 3 listed (ez. ["PVP", "UHC", "HCF"])

Media:
Logo

[X] My logo is a png file.
[X] I have uploaded my logo to my server folder (ex. lunarnetwork) and named it logo.png.
[X] My logo has a transparent background and is square (1:1 aspect ratio).
[X] My logo is 512 pixels in width and height.
[ ] My logo is my own property and complies with relevant copyright/privacy laws.

Background

[X] My background is a png file.
[X] I have uploaded my background to my server folder (ex. lunarnetwork) and named it background.png.
[X] My background has an aspect ratio of 16:9.
[X] My background is atleast 1920 pixels in width and 1080 pixels in height (can be bigger, but must remain the same aspect ratio).
[X] My background contains relevant content pertaining to the server, is my own property, and complies with relevant copyright/privacy laws.
[X] My background doesn't contain any markings, text, or logos (unless part of a build).

Please add the missing primaryColor and secondaryColor fields.

what are the primaryColor and secondaryColor fields used for? The server doesn't really have any specific "official" colors afaik, so knowing what they're used for would allow me to choose some nicer looking colors.


List all the Collection framework used in the project

List all the Collection framework used in the project in the Requirements.md file.
Make a new heading Collection Framework and point wise kist all the framework.

Can I take this up?

Assigned!


Make JindoRuntime sync Ufs total size with a longer timeout

Ⅰ. Describe what this PR does
The default 2min may be not enough in some circumstances, especially when there are large amount of files in the underlying file system. This PR expand the timeout to 1500s(25min), which should be enough for most cases.
Ⅱ. Does this pull request fix one issue?

NONE
Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

/test fluid-e2e


Support Eris and Discordie

While that is certainly a nice feature to have, I find it problematic to maintain compatibility with multiple Discord API wrappers. Could you tell me, what are the benefits you see in having the spoiler bot bootstrapped to an existing client over a brand new instance?
I'll be migrating the bot to Bluebird to make use of promises at some point in the future, which is when I can add support for custom clients. Basically, I was thinking of defining an interface for a wrapper object for Discord libraries so that people are not limited to discord.js and discord.io.

Closing this for now - if anyone has anything to contribute to this discussion feel free to reopen the issue.


helm upgrade --install request did not complete within requested timeout

Sometimes installation of prometheus-operator chart fails with timeout error for crd installation. This timeout value is hardcoded and isn't honoring the value set for timeout option. Is it possible to have that value configurable or maybe set to the value from timeout option?
Command used to install:
helm upgrade --install --force prometheus-operator prometheus-operator --repo https://kubernetes-charts.storage.googleapis.com --version 8.16.1 --namespace monitoring --timeout 10m
Log output:
2020-08-07T08:39:36.2088438Z null_resource.helm_prometheus_operator (local-exec): install.go:175: [debug] CHART PATH: /home/runner/.cache/helm/repository/prometheus-operator-8.16.1.tgz
2020-08-07T08:39:36.2089486Z
2020-08-07T08:39:36.2980610Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:36.4416004Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:36.5026165Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:36.6888122Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:36.7197887Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:36.7733974Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:36.8580248Z null_resource.helm_prometheus_operator (local-exec): install.go:149: [debug] Clearing discovery cache
2020-08-07T08:39:36.8593559Z null_resource.helm_prometheus_operator (local-exec): wait.go:52: [debug] beginning wait for 6 resources with timeout of 1m0s
2020-08-07T08:39:40.0472811Z null_resource.helm_prometheus_operator: Still creating... [20s elapsed]
2020-08-07T08:39:44.6329879Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" ClusterRole
2020-08-07T08:39:44.6596676Z null_resource.helm_prometheus_operator (local-exec): client.go:259: [debug] clusterroles.rbac.authorization.k8s.io "prometheus-operator-admission" not found
2020-08-07T08:39:45.8112114Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:45.8113225Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" ClusterRoleBinding
2020-08-07T08:39:45.8114032Z null_resource.helm_prometheus_operator (local-exec): client.go:259: [debug] clusterrolebindings.rbac.authorization.k8s.io "prometheus-operator-admission" not found
2020-08-07T08:39:45.8114871Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:45.8115706Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" Role
2020-08-07T08:39:45.8116326Z null_resource.helm_prometheus_operator (local-exec): client.go:259: [debug] roles.rbac.authorization.k8s.io "prometheus-operator-admission" not found
2020-08-07T08:39:46.2843640Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:46.3143542Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" RoleBinding
2020-08-07T08:39:46.3335072Z null_resource.helm_prometheus_operator (local-exec): client.go:259: [debug] rolebindings.rbac.authorization.k8s.io "prometheus-operator-admission" not found
2020-08-07T08:39:46.8577543Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:46.8860137Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" ServiceAccount
2020-08-07T08:39:46.9031680Z null_resource.helm_prometheus_operator (local-exec): client.go:259: [debug] serviceaccounts "prometheus-operator-admission" not found
2020-08-07T08:39:47.4381440Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:47.4623747Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission-create" Job
2020-08-07T08:39:47.4961724Z null_resource.helm_prometheus_operator (local-exec): client.go:259: [debug] jobs.batch "prometheus-operator-admission-create" not found
2020-08-07T08:39:48.0150783Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 1 resource(s)
2020-08-07T08:39:48.0424542Z null_resource.helm_prometheus_operator (local-exec): client.go:439: [debug] Watching for changes to Job prometheus-operator-admission-create with timeout of 10m0s
2020-08-07T08:39:48.0670498Z null_resource.helm_prometheus_operator (local-exec): client.go:467: [debug] Add/Modify event for prometheus-operator-admission-create: ADDED
2020-08-07T08:39:48.0671914Z null_resource.helm_prometheus_operator (local-exec): client.go:506: [debug] prometheus-operator-admission-create: Jobs active: 1, jobs failed: 0, jobs succeeded: 0
2020-08-07T08:39:50.0475096Z null_resource.helm_prometheus_operator: Still creating... [30s elapsed]
2020-08-07T08:39:57.3944428Z null_resource.helm_prometheus_operator (local-exec): client.go:467: [debug] Add/Modify event for prometheus-operator-admission-create: MODIFIED
2020-08-07T08:39:57.3945014Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" ClusterRole
2020-08-07T08:39:57.4304383Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" ClusterRoleBinding
2020-08-07T08:39:57.4614092Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" Role
2020-08-07T08:39:57.4954961Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" RoleBinding
2020-08-07T08:39:57.5406302Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission" ServiceAccount
2020-08-07T08:39:57.5717399Z null_resource.helm_prometheus_operator (local-exec): client.go:234: [debug] Starting delete for "prometheus-operator-admission-create" Job
2020-08-07T08:39:57.5966075Z null_resource.helm_prometheus_operator (local-exec): client.go:98: [debug] creating 57 resource(s)
2020-08-07T08:40:00.0477627Z null_resource.helm_prometheus_operator: Still creating... [40s elapsed]
2020-08-07T08:40:10.0479973Z null_resource.helm_prometheus_operator: Still creating... [50s elapsed]
2020-08-07T08:40:20.0486553Z null_resource.helm_prometheus_operator: Still creating... [1m0s elapsed]
2020-08-07T08:40:28.7341181Z null_resource.helm_prometheus_operator (local-exec): Error: Timeout: request did not complete within requested timeout

Output of helm version:
version.BuildInfo{Version:"v3.1.1", GitCommit:"afe70585407b420d0097d07b21c47dc511525ac8", GitTreeState:"clean", GoVersion:"go1.13.8"}
Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.2", GitCommit:"52c56ce7a8272c798dbc29846288d7cd9fbae032", GitTreeState:"clean", BuildDate:"2020-04-16T11:56:40Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Cloud Provider/Platform (AKS, GKE, Minikube etc.):
Target environment - AKS version 1.16.13, command executed from inside the container from another cluster.

I have the same problem with prometheus-operator-9.3.1 and aks 1.16.13 while using terraform helm provider.

still active

not stale

not stale


when code will be released?

Code for SNIPER will be released in first week of June. The repo will also include R-FCN-3000 and SNIP.

Hi, it's already June, so when will the code release??? I can't wait to have a try @makefile

We are merging different branches and cleaning up some code so that its easy to use. Training was done on servers which had  500GB of RAM and 64 cores, so in its current form, its resource hungry. We are fixing the code so that it can be run efficiently on normal workstations. It will be out very soon, like 3-4 days.

it's already 16,june,why the code still don't release?

check this link by tomorrow night https://github.com/mahyarnajibi/SNIPER  (EST). Its taking more time than we expected as research code is hacky and needs a lot of cleanup, verification and testing before public release :( . But I can assure you, it is worth the wait and will possibly be the most efficient publicly available training code you can find for object detection / instance segmentation!


There are no top level loss so I assume it's a workspace/compilation issue you're having

Closing as info required


Fonts are not loaded

Bug description
It looks like fonts are not found. And icons are sometimes not working too.
Additional context

For now I am going to label as unable to reproduce, as I can't reproduce at this very moment.
@deviantony not sure if you want to label this as confirmed though, as I have only seen this once in a blue moon when first spinning up Portainer, and it is fixed by redeploying.


Fix examples/basics.

This patch corrects the name space from gtk to gtk4.

No this is wrong, we rename the package in Cargo.toml like explained in the docs.
gtk = {package = "gtk4", version = "0.2"}


Pyth py3: partial Python 3 port

Hi Brendon,
I need a good RTF reader for my application, which is in Python 3.
I chose pyth and attempted to migrate it using 'modernize' and 'six'.
It was far from easy (because the bytes-vs-plainstring-vs-unicode issues are non-obvious for code that is handling RTF -- in particular as I know neither much of RTF nor the design of that code), but I believe have I have now gotten rtf15/reader and xhtml/writer to work.
I have extended the tests to complete end-to-end tests using the above pair of converters and they work correctly on Python 3.4.3 (on Windows) and Python 2.7.8 (on Cygwin).
The other converters I have neither debugged nor tested.
Unless verifying that the other parts still work (at least on Python 2) is too difficult for you, I would be most grateful if you could turn this into a new release. I will be using it in my application in any case, whether by loading it from PyPI (nice) or not (less nice).
I updated README a bit (could use a little more updating, I think) and have left bits of documentation in various other places as well (the py3migration directory and several new README files in particular).
Please check it out -- and thank you for creating pyth in the first place!
Lutz

Hi Lutz! Thanks a bunch for working on this -- it's been requested a few times lately. The changes look generally good to me, and less scary than I'd have expected. Please take a look at the minor things I've commented above, and meanwhile I'll try to find time in the next few days to bang on it in Py2.
I've been meaning to make a new release for a while, perhaps even a 1.0, but I should do some work on the docs and other small things first. I have some vacation time from next week which might work for that.

I have added one more commit, for supporting 'Symbol' font.
See the commit message for details.
And again I have forgotten one cleanup: removing  #for (i, c) in enumerate(input):
Sigh...

Yet another commit, containing much better tests.
See the commit message for the content and execute tests/test_readrtf15.py to see for yourself.
(List handling needs improvement.)

So, this migrations its ok?

I would love having news about this project.
Would this PR be merged?

I'll open a new pull request to replace this one in a minute (because I have moved that development from a separate branch to the master branch in my fork).
The new one will contain a consolidated version that I am going to consider to be pyth 0.7.


issue with postgres :  the script db.rake doesnt create the extension citext

Thanks for submitting an issue to cloud_controller_ng. We are always trying to improve! To help us, please fill out the following template.
Issue
the command on line 67 of db.rake  fails and i have to do it manually
grep -n "{db_config.name} -c '#{extensions}" /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/cloud_controller_ng/lib/tasks/db.rake
ccdb1014=> \dx
                 List of installed extensions
  Name   | Version |   Schema   |         Description
---------+---------+------------+------------------------------
 plpgsql | 1.0     | pg_catalog | PL/pgSQL procedural language
(1 row)

ccdb1014=> CREATE EXTENSION IF NOT EXISTS citext;
CREATE EXTENSION
ccdb1014=> \dx
                           List of installed extensions
  Name   | Version |   Schema   |                   Description
---------+---------+------------+--------------------------------------------------
 citext  | 1.5     | public     | data type for case-insensitive character strings
 plpgsql | 1.0     | pg_catalog | PL/pgSQL procedural language
(2 rows)

the error on /var/vcap/sys/log/cloud_controller_ng/pre-start.stderr.log
[2019-08-09 20:34:41+0000] + bundle exec rake db:migrate
[2019-08-09 20:34:50+0000] rake aborted!
[2019-08-09 20:34:50+0000] Sequel::DatabaseError: PG::UndefinedObject: ERROR:  type "citext" does not exist
[2019-08-09 20:34:50+0000] LINE 1: ...IMESTAMP NOT NULL, "updated_at" Timestamp, "name" CIText NOT...
[2019-08-09 20:34:50+0000]                                                              ^
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:152:in `async_exec'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:152:in `block in execute_query'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/logging.rb:38:in `log_connection_yield'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:152:in `execute_query'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:140:in `block in execute'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:116:in `check_disconnect_errors'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:140:in `execute'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:496:in `_execute'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:314:in `block (2 levels) in execute'
4:in `block (2 levels) in execute'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:518:in `check_database_errors'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:314:in `block in execute'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/connection_pool/threaded.rb:88:in `hold'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/connecting.rb:270:in `synchronize'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/adapters/postgres.rb:314:in `execute'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/query.rb:50:in `execute_dui'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/query.rb:43:in `execute_ddl'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/schema_methods.rb:682:in `create_table_from_generator'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/schema_methods.rb:194:in `create_table'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/cloud_controller_ng/db/migrations/20130131184954_new_initial_schema.rb:57:in `block (2 levels) in <top (required)>'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:107:in `instance_exec'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:107:in `apply'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:684:in `block (2 levels) in run'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/transactions.rb:245:in `_transaction'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/transactions.rb:220:in `block in transaction'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/connection_pool/threaded.rb:92:in `hold'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/connecting.rb:270:in `synchronize'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/database/transactions.rb:186:in `transaction'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:475:in `checked_transaction'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:683:in `block in run'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:680:in `each'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:680:in `run'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/gem_home/ruby/2.5.0/gems/sequel-5.16.0/lib/sequel/extensions/migration.rb:402:in `run'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/cloud_controller_ng/lib/cloud_controller/db_migrator.rb:18:in `apply_migrations'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/cloud_controller_ng/lib/tasks/db.rake:178:in `migrate'
[2019-08-09 20:34:50+0000] /var/vcap/data/packages/cloud_controller_ng/8e2b3e80d969f28168605fc64f7618ac283d83ef/cloud_controller_ng/lib/tasks/db.rake:36:in `block (2 levels) in <top (required)>'
[2019-08-09 20:34:50+0000] /var/vcap/packages/cloud_controller_ng/gem_home/ruby/2.5.0/gems/rake-12.3.2/exe/rake:27:in `<top (required)>'
[2019-08-09 20:34:50+0000] /var/vcap/packages/ruby-2.5.5-r0.10.0/bin/bundle:30:in `block in <main>'
[2019-08-09 20:34:50+0000] /var/vcap/packages/ruby-2.5.5-r0.10.0/bin/bundle:22:in `<main>'
[provide quick introduction so this issue can be triaged]

Context
[provide more detailed introduction]
Steps to Reproduce
[ordered list the process to finding and recreating the issue, example below]
Expected result
[describe what you would expect to have resulted from this process]
Current result
[describe what you are currently experiencing from this process, and thereby explain the bug]
[include relevant logs]
Possible Fix
[not obligatory, but suggest fixes or reasons for the bug]
name of issue screenshot
[if relevant, include a screenshot]

Interesting! Does this fail when you run via our bosh deployment? What are you trying to do that you ran into this?