Error: JSON.parse

Hi,
when I run

npm run start

I get the following errors:

<EMAIL_ADDRESS>start C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master
set NODE_ENV=production && node ./dist/index.js

in JSON at position 159ig file: SyntaxError: Unexpected token
at JSON.parse ()
at Module. (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:18:938319)
at t (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:110)
at C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:902
at Object. (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:913)
at Module._compile (internal/modules/cjs/loader.js:1137:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
at Module.load (internal/modules/cjs/loader.js:985:32)
at Function.Module._load (internal/modules/cjs/loader.js:878:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
Starting script...
(node:20004) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
Error during puppeteer initialisation: Error: Could not find browser revision 756035. Run "npm install" or "yarn install" to download a browser binary.
at f.launch (C:\Users\MatiasHahn\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:1222145)
TypeError: Cannot read property 'browser' of undefined
at C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:18:946766
at s (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:1066045)
at Generator._invoke (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:1065798)
at Generator.forEach.e. [as next] (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:1066402)
at t (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:12980)
at c (C:\Users\Downloads\saplearninghub-pdf-downloader-master\saplearninghub-pdf-downloader-master\dist\index.js:1:13191)
Did I do anything wrong? Can you please help me?
Thank you!

Did you make "npm install" first in the root of the project ?
Seems like puppeteer didn't installed the browser.

Yes, sure.
I found this regarding the installation of puppeteer:
https://github.com/puppeteer/puppeteer/issues/6560
I think I may have a similar issue?

Yes ! It seems like npm didn't installed chromium.
But if you configured the "config.json" file well : "CHROME_EXE": "/usr/bin/google-chrome"
You would not need to download chromium.
If it still doesn't work and you have chrome installed, you could try the GUI version : https://github.com/AZn5ReD/saplearninghub-pdf-downloader-gui


📦 Use archive site to download any version

This PR includes the archive site of the Apache Foundation to download any version of Kafka. The original url only publishes some versions (the latest ones).

@guidograzioli I prefered to use the archive site to download the binaries, instead of upgrade to the latest version, just to allow the collection to download any version of Kafka (at least for a while). Otherwise, we should test and verify the collection with the latest version of Kafka, that it could take longer time.
What do you think? The PR is ready for your review.


Use SimpleUrlEncodedValuePairs from http-client-essentials-suite

After https://github.com/dmfs/http-client-essentials-suite/issues/25 is completed and released, we can use that class and remove StructuredStringFragment from this library.

This is ready to move on. Note that the class is called UrlFormEncodedKeyValues now.

Done in f24c17cf5ee6918a3c61d144259011d56f0a37eb.


Respect --enable-software-rendering flag on iOS simulators

We're about to support Metal on iOS simulators. Historically, we've only supported software rendering.
This flag is already available in the tool, but is ignored for simulators.
Fixes #67575

Tree is red on an infra failure. This is a relatively tame change. I'm going to land it to kick the tree.
/cc @godofredoc - infra failure is here: https://ci.chromium.org/p/flutter/builders/prod/Mac framework_tests/324

Tree is red on an infra failure. This is a relatively tame change. I'm going to land it to kick the tree.
/cc @godofredoc - infra failure is here: https://ci.chromium.org/p/flutter/builders/prod/Mac framework_tests/324

Those infra failures are most likely related to OOM, we will be adding more logging to find out why tasks are being killed.


Game frozen after some clicks

I harvested some vegetables, scrolled around, clicked somewhere, suddenly the game was frozen. No idea how to reproduce, feel free to close.
This was the terminal after hitting CTRL + C:
[...]
click was handled -> breaking out
Clicked on: sector 2
ouch, i'm a sector! 2
Clicked on: fruit
click was handled -> breaking out
Clicked on: fruit
click was handled -> breaking out
Clicked on: sector 2
ouch, i'm a sector! 2
Clicked on: fruit
click was handled -> breaking out
Clicked on: fruit
click was handled -> breaking out
^CTraceback (most recent call last):
  File "run_game.py", line 2271, in <module>
    main()
  File "run_game.py", line 2267, in main
    game.tick()
  File "run_game.py", line 2034, in tick
    pygame.time.wait(1000 // 120)
KeyboardInterrupt

Did you accidentally press the spacebar? (the hidden "pause" button)

I'm pretty sure it was the pause feature. it now looks like this:

Thank you for adding the overlay.
Sounds like pause to me as well.
The only other issue we encountered so far is excessive growth of plants or flies in the case of unfortunate parameter settings.

Did you accidentally press the spacebar? (the hidden "pause" button)

This is very likely, not sure which keys I tried to continue.


Issue when running attestation on Genoa CPU

I'm currently trying out SEV-SNP attestation on a Genoa CPU, AMD EPYC 9124 16-Core to be precise.
I'm running into issues when verifying the attestation.
Using the following sample code, calling verify.RawSnpReport throws the error could not recreate attestation from report: unknown product name (new stepping published?): "Genoa"
package main

import (
	_ "embed"
	"fmt"

	"github.com/google/go-sev-guest/client"
	"github.com/google/go-sev-guest/proto/sevsnp"
	"github.com/google/go-sev-guest/verify"
	"github.com/google/go-sev-guest/verify/trust"
	"google.golang.org/protobuf/types/known/wrapperspb"
)

var (
	// ask_ark_genoa.cert from https://download.amd.com/developer/eula/sev/ask_ark_genoa.cert
	//go:embed ask_ark_genoa.cert
	askArkGenoaVcekBytes []byte
	// ask and ark pem certificates from https://kdsintf.amd.com/vcek/v1/Genoa/cert_chain
	//go:embed ask_genoa.pem
	askGenoaPEM []byte
	//go:embed ark_genoa.pem
	arkGenoaPEM []byte
)

func main() {
	// Get report
	reportData := [64]byte{}
	quoteProvider, err := client.GetQuoteProvider()
	if err != nil {
		panic(err)
	}
	reportRaw, err := quoteProvider.GetRawQuote(reportData)
	if err != nil {
		panic(err)
	}

	// Set up verification
	genoaRootCert := new(trust.AMDRootCerts)
	genoaRootCert.Product = "Genoa"
	if err := genoaRootCert.Unmarshal(askArkGenoaVcekBytes); err != nil {
		panic(err)
	}
	if err := genoaRootCert.Decode(askGenoaPEM, arkGenoaPEM); err != nil {
		panic(err)
	}
	verifyOpts := &verify.Options{
		Product: &sevsnp.SevProduct{
			Name:            sevsnp.SevProduct_SEV_PRODUCT_GENOA,
			MachineStepping: &wrapperspb.UInt32Value{Value: 2},
		},
		CheckRevocations: true,
		Getter:           trust.DefaultHTTPSGetter(),

		TrustedRoots: map[string][]*trust.AMDRootCerts{
			"Genoa": {genoaRootCert},
		},
	}

	// Verify report
	err = verify.RawSnpReport(reportRaw, verifyOpts)
	fmt.Println(err)
}

Looking at the code, a map is used to determine the stepping of the CPU for which the VCEK was issued: https://github.com/google/go-sev-guest/blob/f912a0a5e11e9aeb1ab8a3ceb617d8a135901a8b/kds/kds.go#L96-L102
The VCEK I'm receiving from the AMD API simply contains Genoa for its productName certificate extension, so it never matches any of the values in this map.

You can confirm the SIGNING_KEY field of your report is 0 for VCEK? If so, this is a problem AMD should address, since the TCB_VERSION is really supposed to be interpreted according to the stepping value.

No word yet. I'll send a ping on Monday, but I should see them in person on Wednesday if they don't see the email.

I got word back, and they want the exact HTTP GET request used, so @daniel-weisse do you have the TCB_VERSION and CHIP_ID that I could forward to AMD? Feel free to email me<EMAIL_ADDRESS>to not make that information public.

Also also, did your call to RawSnpReport specify the product in the Options argument? The default product used when it's not available in the Attestation message (which isn't in RawSnpReport) or the Options argument is to use Milan-B1. Perhaps I should add a warning or simply error when RawSnpReport is used without a specified product.

Feel free to email me<EMAIL_ADDRESS>to not make that information public.

Thank, sent the email

did your call to RawSnpReport specify the product in the Options argument?

Yes, as shown in my sample code, verify.Options.Product.Name it is set to sevsnp.SevProduct_SEV_PRODUCT_GENOA, and verify.Options.Product.MachineStepping is set to 2 (though any value here produced the same error irrc).

AMD has acknowledged that this is a bug and they are working to fix KDS.

Good to hear, thank you for your help with this

I'm going to close this as a duplicate of Issue#115


Avoid code signing for iphonesimulator sdk

In PR #78 code signing was added for all SDK. The introduces the problem that in CI (like Travis) using Carthage 0.9.x, where code signing is not required for iphonesimulator, result build is skipped.
You can check an example build of a test project that uses Result here

Ha, I literally just ran into this issue myself. I'm not convinced that #78 actually fixed whatever it was intended to fix. I'd be interested in testing building with Carthage with that change reverted.

That PR was correct, and reverting it will break Carthage builds on people's machines. What I believe you want is to add a sdk=iphonesimulator rule that disables code signing, while leaving it enabled for the device.

Opened #97 to handle this for the iOS simulator. I'm unclear on what the correct approach is for watchOS or tvOS (or if we should worry about those at all)

#97 is merged.


Finalize button is mislabeled as "View".

Describe the bug
In the notifications section, the Finalize Warp Sync Market has a view button that should be labeled Finalize.
To Reproduce

Wait for the warp sync market to show up in notifications.
Put yourself in the shoes of a newbie.
Try to finalize by clicking on the bold market title.
Search futilely on the trading page for a finalize button.
Go back to the notifications list and look for a finalize button.
Fail to find one.
Hopelessly click view button, expecting it to take you to the same place as the market title took you.
Be surprised that it pops up a finalization prompt, rather than viewing the market.

Expected behavior
It should be obvious what I need to do to finalize the market.
Screenshots

Desktop (please complete the following information):

OS: Windows
Browser: Firefox
Version: 79

Additional context
I have never finalized any other market, so maybe this bug extends to other markets as well.

Ah, all the notifications use the same view button.

Ah, I see.  "View" views the notification, while the text may contain links to other parts of the UI besides what the notification was for?

Can we hyperlink the word finalize in the notification text perhaps?

I actually think the button should say finalize if possible


Build process faild on openSuSE 42.3

Describe the bug
A clear and concise description of what the bug is.
This a build problem.
Build Log
echo '#define CURV_VERSION "'git describe --tags --always --dirty'"' >,v
if cmp -s ,v libcurv/version.h; then rm ,v; else mv ,v libcurv/version.h; fi
rm -rf CMakeCache.txt CMakeFiles
mkdir -p release
cd release; cmake -DCMAKE_BUILD_TYPE=Release ..
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   iostreams
--   system
--   thread
--   regex
--   chrono
--   date_time
--   atomic
-- Using X11 for window creation
-- Configuring done
-- Generating done
-- Build files have been written to: /home/peter/Downloads/Apps/3D-CAD/curv/release
cd release; make
make[1]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release'
make[2]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release'
make[3]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release'
Scanning dependencies of target replxx
make[3]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release'
make[3]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release'
[  0%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/conversion.cxx.o
[  0%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/replxx.cxx.o
[  2%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/util.cxx.o
[  2%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/prompt.cxx.o
[  2%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/inputbuffer.cxx.o
[  4%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/windows.cxx.o
[  4%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/history.cxx.o
[  4%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/io.cxx.o
[  6%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/escape.cxx.o
[  6%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/wcwidth.cpp.o
[  9%] Building CXX object CMakeFiles/replxx.dir/extern/replxx/src/ConvertUTF.cpp.o
[  9%] Linking CXX static library libreplxx.a
make[3]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release'
[  9%] Built target replxx
make[3]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release'
Scanning dependencies of target libcurv
make[3]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release'
make[3]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release'
[ 11%] Building CXX object CMakeFiles/libcurv.dir/libcurv/record.cc.o
In file included from /home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/list.h:8:0,
from /home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/record.h:8,
from /home/peter/Downloads/Apps/3D-CAD/curv/libcurv/record.cc:5:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:105:49: warning: multi-character character constant [-Wmultichar]
static constexpr uint64_t k_nanbits = 0x7FFF'0000'0000'0000;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:105:59: warning: missing terminating ' character [enabled by default]
static constexpr uint64_t k_nanbits = 0x7FFF'0000'0000'0000;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:105:5: error: missing terminating ' character
static constexpr uint64_t k_nanbits = 0x7FFF'0000'0000'0000;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:113:50: warning: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wliteral-suffix]
static constexpr uint64_t k_boolmask = 0xFFFF'FFFF'FFFF'FFFE;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:113:50: warning: multi-character character constant [-Wmultichar]
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:113:60: warning: missing terminating ' character [enabled by default]
static constexpr uint64_t k_boolmask = 0xFFFF'FFFF'FFFF'FFFE;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:113:5: error: missing terminating ' character
static constexpr uint64_t k_boolmask = 0xFFFF'FFFF'FFFF'FFFE;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:120:42: warning: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wliteral-suffix]
bits_ = ((uint64_t)r & 0x0000'FFFF'FFFF'FFFF) | Value::k_nanbits;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:120:42: warning: multi-character character constant [-Wmultichar]
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:120:52: warning: missing terminating ' character [enabled by default]
bits_ = ((uint64_t)r & 0x0000'FFFF'FFFF'FFFF) | Value::k_nanbits;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:120:13: error: missing terminating ' character
bits_ = ((uint64_t)r & 0x0000'FFFF'FFFF'FFFF) | Value::k_nanbits;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:105:43: error: expected ‘;’ at end of member declaration
static constexpr uint64_t k_nanbits = 0x7FFF'0000'0000'0000;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:105:49: error: expected unqualified-id before '\x30303030'
static constexpr uint64_t k_nanbits = 0x7FFF'0000'0000'0000;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:113:44: error: expected ‘;’ at end of member declaration
static constexpr uint64_t k_boolmask = 0xFFFF'FFFF'FFFF'FFFE;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:113:50: error: expected unqualified-id before '\x46464646'
static constexpr uint64_t k_boolmask = 0xFFFF'FFFF'FFFF'FFFE;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:105:31: error: ‘curv::Value::k_nanbits’ may not be static because it is a member of a union
static constexpr uint64_t k_nanbits = 0x7FFF'0000'0000'0000;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:112:31: error: ‘curv::Value::k_boolbits’ may not be static because it is a member of a union
static constexpr uint64_t k_boolbits = k_nanbits|2;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:113:31: error: ‘curv::Value::k_boolmask’ may not be static because it is a member of a union
static constexpr uint64_t k_boolmask = 0xFFFF'FFFF'FFFF'FFFE;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h: In constructor ‘constexpr curv::Value::Value()’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:134:47: error: ‘k_nullbits’ was not declared in this scope
inline constexpr Value() noexcept : bits_{k_nullbits} {}
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:134:57: error: cannot convert ‘’ to ‘uint64_t {aka long unsigned int}’ in initialization
inline constexpr Value() noexcept : bits_{k_nullbits} {}
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h: In member function ‘bool curv::Value::is_null() const’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:139:25: error: ‘k_nullbits’ was not declared in this scope
return bits_ == k_nullbits;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h: In constructor ‘curv::Value::Value(double)’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:172:21: error: ‘k_nullbits’ was not declared in this scope
bits_ = k_nullbits;
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h: In constructor ‘curv::Value::Value(curv::Sharedcurv::Ref_Value)’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:209:53: error: ‘struct curv::Sharedcurv::Ref_Value’ has no member named ‘detach’
inline Value(Shared<Ref_Value> ptr) : Value(ptr.detach())
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h: In constructor ‘curv::Value::Value(curv::Value&&)’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/value.h:313:21: error: ‘k_nullbits’ was not declared in this scope
val.bits_ = k_nullbits;
^
In file included from /home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/list.h:9:0,
from /home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/record.h:8,
from /home/peter/Downloads/Apps/3D-CAD/curv/libcurv/record.cc:5:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h: In static member function ‘static std::unique_ptr<curv::Tail_Array > curv::Tail_Array::make(size_t, Rest&& ...)’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h:121:14: error: ‘is_trivially_default_constructible’ is not a member of ‘std’
if (!std::is_trivially_default_constructible<_value_type>::value) {
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h:121:65: error: expected primary-expression before ‘>’ token
if (!std::is_trivially_default_constructible<_value_type>::value) {
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h:121:66: error: ‘::value’ has not been declared
if (!std::is_trivially_default_constructible<_value_type>::value) {
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h: In static member function ‘static std::unique_ptr<curv::Tail_Array > curv::Tail_Array::make_copy(curv::Tail_Array::_value_type*, size_t, Rest&& ...)’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h:193:13: error: ‘is_trivially_copy_constructible’ is not a member of ‘std’
if (std::is_trivially_copy_constructible<_value_type>::value) {
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h:193:61: error: expected primary-expression before ‘>’ token
if (std::is_trivially_copy_constructible<_value_type>::value) {
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/tail_array.h:193:62: error: ‘::value’ has not been declared
if (std::is_trivially_copy_constructible<_value_type>::value) {
^
In file included from /home/peter/Downloads/Apps/3D-CAD/curv/libcurv/record.cc:5:0:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/record.h: In member function ‘virtual std::unique_ptrcurv::Record::Iter curv::DRecord::iter() const’:
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/record.h:127:16: error: ‘make_unique’ is not a member of ‘std’
return std::make_unique(*this);
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/record.h:127:37: error: expected primary-expression before ‘>’ token
return std::make_unique(*this);
^
/home/peter/Downloads/Apps/3D-CAD/curv/./libcurv/record.h:128:5: warning: control reaches end of non-void function [-Wreturn-type]
}
^
CMakeFiles/libcurv.dir/build.make:62: recipe for target 'CMakeFiles/libcurv.dir/libcurv/record.cc.o' failed
make[3]: *** [CMakeFiles/libcurv.dir/libcurv/record.cc.o] Error 1
make[3]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release'
CMakeFiles/Makefile2:137: recipe for target 'CMakeFiles/libcurv.dir/all' failed
make[2]: *** [CMakeFiles/libcurv.dir/all] Error 2
make[2]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release'
Makefile:127: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release'
Makefile:2: recipe for target 'release' failed
make: *** [release] Error 2
CMakeError.log
Determining if the pthread_create exist failed with the following output:
Change Dir: /mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/gmake" "cmTC_94a60/fast"
gmake[1]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
/usr/bin/gmake -f CMakeFiles/cmTC_94a60.dir/build.make CMakeFiles/cmTC_94a60.dir/build
gmake[2]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_94a60.dir/CheckSymbolExists.c.o
/usr/bin/cc     -o CMakeFiles/cmTC_94a60.dir/CheckSymbolExists.c.o   -c /mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp/CheckSymbolExists.c
Linking C executable cmTC_94a60
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_94a60.dir/link.txt --verbose=1
/usr/bin/cc       CMakeFiles/cmTC_94a60.dir/CheckSymbolExists.c.o  -o cmTC_94a60 -rdynamic
CMakeFiles/cmTC_94a60.dir/CheckSymbolExists.c.o: In function main': CheckSymbolExists.c:(.text+0x16): undefined reference to pthread_create'
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_94a60.dir/build.make:97: recipe for target 'cmTC_94a60' failed
gmake[2]: *** [cmTC_94a60] Error 1
gmake[2]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
Makefile:126: recipe for target 'cmTC_94a60/fast' failed
gmake[1]: *** [cmTC_94a60/fast] Error 2
gmake[1]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
File /mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <pthread.h>
int main(int argc, char** argv)
{
(void)argv;
#ifndef pthread_create
return ((int*)(&pthread_create))[argc];
#else
(void)argc;
return 0;
#endif
}
Determining if the function pthread_create exists in the pthreads failed with the following output:
Change Dir: /mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/gmake" "cmTC_f7fbd/fast"
gmake[1]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
/usr/bin/gmake -f CMakeFiles/cmTC_f7fbd.dir/build.make CMakeFiles/cmTC_f7fbd.dir/build
gmake[2]: Entering directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_f7fbd.dir/CheckFunctionExists.c.o
/usr/bin/cc    -DCHECK_FUNCTION_EXISTS=pthread_create   -o CMakeFiles/cmTC_f7fbd.dir/CheckFunctionExists.c.o   -c /usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTC_f7fbd
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f7fbd.dir/link.txt --verbose=1
/usr/bin/cc   -DCHECK_FUNCTION_EXISTS=pthread_create    CMakeFiles/cmTC_f7fbd.dir/CheckFunctionExists.c.o  -o cmTC_f7fbd -rdynamic -lpthreads
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: cannot find -lpthreads
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_f7fbd.dir/build.make:97: recipe for target 'cmTC_f7fbd' failed
gmake[2]: *** [cmTC_f7fbd] Error 1
gmake[2]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
Makefile:126: recipe for target 'cmTC_f7fbd/fast' failed
gmake[1]: *** [cmTC_f7fbd/fast] Error 2
gmake[1]: Leaving directory '/mnt/data2/Apps/3D-CAD/curv/release/CMakeFiles/CMakeTmp'
To Reproduce
on openSuSE 42.3 user or root terminal
Steps to reproduce the behavior:

Go to 'cd /home/peter/Downloads/Apps/3D-CAD/curv'
or 'cd /mnt/data2/Apps/3D-CAD/curv'
Run '$ make'
make failed (see buildlog above)
See error 'CheckSymbolExists.c:(.text+0x16): undefined reference to `pthread_create'' in release/CMakeError.log above

Expected behavior
Because library pthreads is installed I would expect a make/cmake build without stop on this error
I found following comment at stackoverflow
In general, libraries should follow sources and objects on command line,
and -lpthread is not an "option", it's a library specification. On a system
with only libpthread.a installed,
Don't hesitate to ask for more infos, if needed.
Kind regards
Peter

I got it!
Now running gcc 7.3.1, but the successful build is based on installing of ALL devel packages that match the list in BUILD.md's 'Ubuntu Linux 16.04 build instructions' section.
I missed two of them.


Support Option.orElse

Fixes #1691
Problem
Quill does not support Option.orElse
Solution
Support if columnA.orElse(columnB).forall(_ == value) syntax
Notes
Additional notes.
Checklist

[x] Unit test all changes
[x] Update README.md if applicable
[x] Add [WIP] to the pull request title if it's work in progress
[x] Squash commits that aren't meaningful changes
[x] Run sbt scalariformFormat test:scalariformFormat to make sure that the source files are formatted

@getquill/maintainers

LGTM! Nice optimization for orElse + forall.

Two thoughts:

You might want to do the same
kind of optimization you did for orElse + forall with orElse + exists.
For orElse and getOrElse, we can check if the Quat is a Boolean and if it is do isNotNull(body) && body || isNull(body) && alternative.

Thanks for your suggestions @deusaquilus!

Let me double check the suggestion about exists:

columnA.orElse(columnB).exists(_ == value)

will become
WHERE (a == value AND a IS NOT NULL) OR (b == value AND b IS NOT NULL)

Is that correct?

I will create another PR for this optimization!

@deusaquilus I added exists based on my last comment. When this one gets merged I will open the pr with your second suggestion.

@juliano Let's see...
vodka.orElse(whiskey).exists(_ == somethingAlcoholic)

That's going to be:
WHERE (vodka == somethingAlcoholic AND vodka IS NOT NULL) OR (whiskey == somethingAlcoholic AND whiskey IS NOT NULL)

Seems right to me. Will put together a truth table as soon as my kids stop climbing on me.


Automate prod deployment with TravisCI

If we automate deployment/release via TravisCI, maintainers can also do production releases by just accepting PRs, therefore ensuring that the project is maintained by multiple people and doesn't run the risk of getting deprecated like it's ancestor

Would you rather want to automate using semantic-release and Github Actions?
I can help you with this.


Add ability for users to set defaults through env variables

Given that some users like myself might want to always create the cards on the same list, or with the same label, or same due date, or same position by default, I added the ability for them to set those defaults vie the environment variables trello.list_name, trello.label, trello.due and trello.position.
One can conveniently add or edit those environment variables without programming knowledge through the Alfred Workflow editor, clicking on the [x] button on the top right (see screenshot below). If those variables are not set, the script will behave exactly as it did before.
Here you can find the packaged Alfred Workflow with hose variables defined.

Good Idea! Merging it now.


Fix refreshing things when permission is granted

We refreshed some things but not everything, this makes it more responsive if you have the settings page open when granting permissions, for example.
https://github.com/binwiederhier/ntfy/assets/132819643/6d609d58-c015-495d-aae1-7c2a799cb8af

Codecov Report
Patch and project coverage have no change.

Comparison is base (64ac111) 65.85% compared to head (9ce3545) 65.85%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #791   +/-   ##
=======================================
  Coverage   65.85%   65.85%
=======================================
  Files          53       53
  Lines        7646     7646
=======================================
  Hits         5035     5035
  Misses       1775     1775
  Partials      836      836

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Penny support

Hello Mr. Badlogic,
here are my proposed changes for Penny support in heissepreise ;-)
LG Uli

Habs manuel gemerged, danke!


[firebase_dynamic_links] onLink never triggered for Android

firebase_dynamic_links: 0.5.0+11
I'm not sure if this is a bug or not, but when using Firebase Dynamic Links on Android, I always receive it with getInitialLink and never onLink.  As mentioned here, I delay my initial call with a Timer because otherwise getInitialLink is always null.  But that is not the problem I'm focused on in this issue.
On iOS, I am seeing both getInitialLink and onLink give me the dynamic link in the respective situations I'd expect (initial app launch versus when the app is already running).  However, on Android if I tap a link from Gmail or a note, it correctly opens the app, but it's always finding the link with getInitialLink and never the onLink handler.
Is this incorrect behavior, or is onLink just for iOS, or is something else going on?
  @override
  void initState() {
    super.initState();
    _timerLink = new Timer(const Duration(milliseconds: 700), () {
      print('700 ms later, going to init dynamic links');
      this.initDynamicLinks();
    });
  }

  void initDynamicLinks() async {
    final PendingDynamicLinkData data = await FirebaseDynamicLinks.instance.getInitialLink();
    final Uri deepLink = data?.link;

    if (deepLink != null) {
      //Navigator.pushNamed(context, deepLink.path);
      print('\n\n got initialLink: $deepLink \n\n');
    } else {
      print('\n\n deepLink from getInitialLink is null and $data \n\n');
    }

    FirebaseDynamicLinks.instance.onLink(
        onSuccess: (PendingDynamicLinkData dynamicLink) async {
          final Uri deepLink = dynamicLink?.link;

          if (deepLink != null) {
            //Navigator.pushNamed(context, deepLink.path);
            print('\n\n got onLink: $deepLink \n\n');
          } else {
            print('\n\n onLink fired but deepLink was null \n\n');
          }
        },
        onError: (OnLinkErrorException e) async {
          print('onLinkError');
          print(e.message);
        }
    );
  }

flutter doctor -v
[✓] Flutter (Channel stable, v1.17.1, on Mac OS X 10.15.4 19E287, locale en-US)
    • Flutter version 1.17.1 at /Users/stephen/wardrobe/flutter
    • Framework revision f7a6a7906b (13 days ago), 2020-05-12 18:39:00 -0700
    • Engine revision 6bc433c6b6
    • Dart version 2.8.2

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/stephen/Library/Android/sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    ! CocoaPods 1.7.5 out of date (1.8.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade:
        sudo gem install cocoapods

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[✓] VS Code (version 1.45.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.10.2

[✓] Connected device (2 available)
    • Nokia 6 1                  • PL2GARM870103356                     • android-arm64 • Android 10 (API 29)
    • iPhone SE (2nd generation) • 45D76A5A-C10A-42B7-9753-51B3B0DF66B9 • ios           • com.apple.CoreSimulator.SimRuntime.iOS-13-5 (simulator)

! Doctor found issues in 1 category.

Interesting, I have the same problem on iOS, but Android works fine.

Fascinating!  On iOS I've been testing on an iPhone 11, though it seems like the only thing that matters would be the Android or iOS version.
It'd be great if Flutter has easy and consistently behaving dynamic links because one of Flutter's selling points is that it's cross-platform and Firebase Dynamic Links are a great way to easily communicate across Android and iOS.

Problem resolved. I generate the dynamic links manually from the server. Concatenating all the parameters into a string as a dynamic link works fine for Android.
For iOS, it needs to use the Uri parse to process the link parameter.

Could be related https://github.com/FirebaseExtended/flutterfire/issues/2289

Interesting, @SeanZom - seems like that should not affect me when generating the DynamicLinkParameters parameters in Dart on the mobile device.  I use Uri.parse there too as shown here and on iOS I'm seeing the fully expanded link in the clipboard after tapping the dynamic link.  I mean, it has the expected parameters such as apn, amv, isi, etc.  For some reason I don't see that on Android but that's probably a difference from iOS.  My app is not yet published in either store but the Apple App Store lets me click the Open button to resolve the dynamic link.
Anyway, eventually I'm able to get the dynamic link in Android since getInitialLink has it after a delay, even when it should be onLink.

FYI, onLink is successfully obtaining the link on both iOS and Android in the latest version:
firebase_dynamic_links 0.5.3

Actually, now I'm having trouble again, and this time it's specifically Android not ever using onLink.  iOS is correctly using getInitialLink on startup and onLink for other cases, but on Android it's always firing getInitialLink for some strange reason!
My pubspec.lock is showing firebase_dynamic_links 0.6.0+2 now and I just forced a downgrade to 0.6.0 to make sure there wasn't a recent regression.  And this coupled with the fact that the dynamic link does not get cleared as mentioned in this mysteriously locked and limited issue leads to some wonky behavior.  Hopefully these 2 issues will be fixed soon!
[✓] Flutter (Channel stable, 1.22.0, on Mac OS X 10.15.7 19H2, locale en-US)
• Flutter version 1.22.0 at /Users/stephen/wardrobe/flutter
• Framework revision d408d302e2 (3 weeks ago), 2020-09-29 11:49:17 -0700
• Engine revision 5babba6c4d
• Dart version 2.10.0
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at /Users/stephen/Library/Android/sdk
• Platform android-29, build-tools 29.0.3
• Java binary at: /Applications/Android
Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build
1.8.0_242-release-1644-b3-6222593)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.0.1, Build version 12A7300
• CocoaPods version 1.9.3
[✓] Android Studio (version 4.0)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 50.0.1
• Dart plugin version 193.7547
• Java version OpenJDK Runtime Environment (build
1.8.0_242-release-1644-b3-6222593)
[✓] VS Code (version 1.50.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.15.1
[✓] Connected device (2 available)
• Nokia 6 1 (mobile) • PL2GARM870103356          • android-arm64 • Android 10
(API 29)
• Roisin (mobile)    • 00008030-000139113A30802E • ios           • iOS 14.0.1
• No issues found!

Hey @stephenhuey, dynamic links has been reworked and the API has changed so now onLink returns a stream which you can read about in the CHANGELOG. If you're still experiencing the problem, please open a new issue. Thanks.


SourcemapPlainJSPlugin is not generating the expected sourcemap

Test case: https://github.com/tinchoz49/test-sourcemap-fuse
Issue: If you don't use babel or TS, fusebox doesn't generate the sourcemap correctly.

FuseBox v4 Major Upgrade
As of today, the latest major version of FuseBox v4 is available in fuse-box@next. FuseBox has undergone a full re-write from scratch, learning from its mistakes in the previous versions.
There are a lot of improvements, speed and config wise.
Get started here
We are still working on the documentation and polishing before the major release. We are getting very close. And we need help testing.
npm install fuse-box@next

Most of the issues that I am closing have been resolved, however, if you find that your issue is still relevant in v4 don't hesitate to re-open or (better) create a new one with v4 configuration.


Configure script for backend

Adding a configuration script to configure the backend should fix the current problems with the config/makefile combo and the mac incompatibility.
Features:

Switching between local (testing) and server (production) configuration

local: swissprot only, less memory
production: swissprot + uniprot, more memory

Selecting binaries to use

gzcat/zcat
gzip/pigz
unzip (-DD is not supported on mac)

Picking source files (swissprot/trembl) and their possible download location
Check if all dependencies are present?

Original issue by @ninewise on Wed Mar 02 2016 at 15:30.
Closed by @ninewise on Thu Jul 07 2016 at 13:25.

See #566
Original comment by @ninewise on Mon Mar 14 2016 at 14:11.


OCM-2299: IDP resource: Validate cluster exists before wait to ready state

When user try to create IDP, it expected that the cluster is already exists Avoid starting the poll loops in case the cluster doesn't exist

Please add a test case

/retest


Running GloVeTfIdf.py

how to fix this, when i try to run GloVeTfIdf.py i got this
File "GloVeTfIdf.py", line 70, in
evaluator = EmbeddingSimilarityEvaluator(dev_dataloader)
TypeError: init() missing 2 required positional arguments: 'sentences2' and 'scores'
Thankyou before

Hi anjasopo!
From the looks of it, the class got modified in the Sentence Transformers project.  Check it out here : https://github.com/UKPLab/sentence-transformers/blob/f207cf39e41d6cc1328d0e94bb08dae748a92914/sentence_transformers/evaluation/EmbeddingSimilarityEvaluator.py#L12
Try replacing lines 68,69, 70 with
evaluator = EmbeddingSimilarityEvaluator.from_input_examples(sts_reader.get_examples('sts-dev.csv')).
Also, did you verify that you have both glove training txt file and wikipedia doc frequencies downloaded, alongside the dataset using get_data.py?

Anytime anjasopo! Thanks for reporting the issue, I will make changes to the code right away.


Make --disable-doc optional and other changes

I'm happy to pull out any parts of this PR you don't want to include. Each commit can almost be considered in isolation.

Use ubuntu 20.04 as 18.10 is no longer supported
Pull of lame was failing from the kent mirror so I switched to the main URL
Allow building of the man pages as I like to include them with the binaries
Make cleanup optional in Dockerfile
Split the build into two steps in Dockerfile dependencies first then ffmpeg

I tried quite hard to make a build that statically linked glibc but eventually gave up and instead added a Dockerfile-centos7 to my fork since that's my current target system. I had to add -DCMAKE_INSTALL_LIBDIR=lib to the av1 cmake command to prevent the library being installed in lib64 and thus ffmpeg's configure trying to find it.

Am I right that many of the commits just speed up testing but do not have a real impact on a normal build process?

I didn't realise my PR wasn't on a branch my side oops :(
I only intended to include the first 5 commits in my PR I'd have squashed the last 3 into just adding the centos dockerfile but since that felt specific to me I didn't mean to include it in the PR and instead mentioned it in a comment in case you were interested.
I wanted the man pages and while figuring out how to make that optional I made a few other tweaks too. Obviously you wanted to create a container with ffmpeg in it and I just wanted to build ffmpeg in a container so we had slightly different requirements and cleanup wasn't helpful to me

I should have said I'm happy for you to close this PR, thanks


Optimize Homepage Usability

Create an intuitive and user-friendly experience for visitors.

optimizing navigation menus;
ensuring clear calls to action;
and implementing clear information structure.

I don't no what to discuss, so I added it just to pass the test.


Initial Sync: Cannot read property 'state' of null

Describe the bug
Initial Sync stopped in the middle with below logs:
2020-07-28 14:32:34  [CHAIN]            info: Processed new chain head newChainHeadRoot=0xab78bf9671359caa348741b72a8a7e8fe6fd742d14b7782d46a7810660d95e5a, slot=206805, epoch=6462
(node:38282) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'state' of null
    at BeaconChain.getHeadState (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/chain/chain.js:100:76)
    at async LocalClock.<anonymous> (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/sync/utils/attestation-collector.js:31:25)

(node:38282) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'state' of null
    at BeaconChain.getHeadState (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/chain/chain.js:100:76)
    at async LocalClock.<anonymous> (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/sync/utils/attestation-collector.js:31:25)

and when I restart, I get this
2020-07-28 14:38:18  [CHAIN]            info: Finish restoring chain head from 70 blocks
2020-07-28 14:38:18  [CHAIN]            info: restoreHeadState - duration=4826ms
 ✖ TypeError: Cannot read property 'state' of null
    at BeaconChain.getHeadState (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/chain/chain.js:100:76)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async BeaconChain.getENRForkID (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/chain/chain.js:238:19)
    at async MetadataController.start (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/network/metadata/metadata.js:35:79)
    at async Libp2pNetwork.start (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/network/network.js:112:5)
    at async BeaconNode.start (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar/lib/node/nodejs.js:158:5)
    at async Object.runHandler [as handler] (/Users/tuyennguyen/Projects/workshop/lodestar/packages/lodestar-cli/lib/cmds/beacon/cmds/run/run.js:75:3)

This is interesting: block.message.stateRoot - which is added to forkchoice is
@@@ forkchoice toHexString block.message.stateRoot.valueOf() as Uint8Array 0x0d9b11fa0871e8a94f53563b61894566f6c8bdf20a99d32f280f6de47a48933b

while stateContext.state.hashTreeRoot() - which is added to state cache is
@@@ 206805 toHexString(item.state.hashTreeRoot()) 0x2b336be4a93dc7428379f8f4424245af71c495e6956598dd8f167c0ef4f9ac4d

According to https://altona.beaconcha.in/block/206805, the one added to forkchoice is correct, meaning that block.message.stateRoot is correct.
So after we run stateTransition, somehow the post state hashTreeRoot() is not correct.

maybe we forgot to copy state or block in chain restoration?

this happens in both init sync and chain restoration with same error at exact same slot 206805
Do you know where can I query state of block 206805? I want to compare that with my environment.

Either ask on discord or run some other client and query state. I would go first first solution :smile:

alternatively, dump the prestate and block, use pyspec or zrnt to do the transition

I managed to sync beyond 206805 on master

The block root of 206805 and state root of parent block (206804) are correct, we don't have to verify with the traditional state transition.
@@@ getPreState 206805 0xab78bf9671359caa348741b72a8a7e8fe6fd742d14b7782d46a7810660d95e5a
@@@ getPreState 206805 parentRoot=0xf6415bd6463b7b857187298400cc9bcdae0145adf367e483bebbe80c7cb81449
@@@ getPreState 206805 stateRoot of parent 0x6948adf489608c8b905b56e07da6e5e392559f8b5fb182d3a4bc9ba554e37cf3

I guess it's an issue with EpochContext?

oh found out that I have wrong config object, using --testnet altona help me get through the issue

@tuyennhv , what did you change in your config to fix this issue?  I just ran into the issue, and I'm not sure yet if I'm experiencing it for the same reason you were.

@3xtr4t3rr3str14l  I just do --testnet altona and I can get through it. The way I debug is to verify https://github.com/ChainSafe/lodestar/blob/master/packages/lodestar-cli/src/cmds/beacon/cmds/run/run.ts#L35
we want the config of altona, for example MIN_GENESIS_TIME. Previously it got the mainnet config.


perf: collection/gallery explore  page images

PR Type

[ ] Bugfix
[ ] Feature
[x] Refactoring

Context
First pr of more to come to close the main issue, this pr only focuses on the explore pages
mainly

lazy loading of images
use cfi size variants to load smaller images where possible

Collection Explore

lazy load images: eagerly load first 3 rows of each fetch remaining are lazy loaded

first page load (image resources)
- mobile: 2.5mb (this pr) vs 19.8mb (prod)
- desktop: 3mb (this pr) vs 19.8mb (prod)

use metadata from collection meta , saves an extra call, most collections didn't need that (ahp 87/94 collections),
use cfi size variants in collection images

banner: about the same for me , but should fetch smaller images depending on the user's display
image: average of 8-10x smaller images

profile image: use cfi size variants
remove: pwa.client.ts

Items Explore

lazy load images: eagerly load first 2 rows of each fetch  remaining are lazy loaded

[x] Ref #10416

Needs QA check

@kodadot/qa-guild please review

Did your issue had any of the "$" label on it?

[x] Fill up your DOT address: Payout

Screenshot 📸

[ ] My fix has changed something on UI;

@preschian should we remove providers/cloudflare.ts, and route all images through the image worker ?

also some images fail to load like
cfi ❌
image worker ✅

should we remove providers/cloudflare.ts, and route all images through the image worker ?

Yes, this one can help reduce the request counts. But we need to implement cfi size variants in image-worker first

use metadata from collection meta , saves an extra call, most collections didn't need that (ahp 87/94 collections),

if the meta = null, try to get the image from metadata

Yes, this one can help reduce the request counts. But we need to implement cfi size variants in image-worker first

updated fe , needs worker updated https://github.com/kodadot/workers/pull/313

i'm having some problems when scrolling down images on ahp, at some point it takes a long time to be loaded(here i'm on page 3):
could be unrelated as we are having some problems on ahp

worked fine for me, @prury let's try again after https://github.com/kodadot/workers/pull/313 is merged

cc @Jarsen136 pls review
cc @hassnian pls resolve conflicts

cc @hassnian pls resolve conflicts

done

same here

vikiival added the S-resolve-merge-conflicts-🤝 label now

done

One test is failing @hassnian

One test is failing @hassnian

@vikiival all tests are passing


ARROW-6387: [Archery] Errors with make

cmake --build is called instead of a direct call to generator program (make, ninja etc.).

Heh. Just realized this enables parallel builds in archery for cmake 3.12+ as a side effect: CMAKE_BUILD_PARALLEL_LEVEL=8 archery --debug benchmark run


Allow for same task in sinter.collect

Hi,
I have seen in sinter 1.14 you have added a check which throw exception if the same task has been given already:
if key in seen:
     raise ValueError(f'Same task given twice: {self.partial_tasks[k]!r}')

located in _collection_manager.py.
In my workflow, I run a variety of randomized circuits (as part of erasure simulations) and group them later by the JSON metadata. This sometimes results in the same circuit being added twice, and the current behavior raises an exception.
Would it be possible to change this check to a warning instead of raising an exception? This would allow the process to continue without interruption while still notifying the user of the duplication.
Thanks!

The reason I added this error is because it's ambiguous what the user wants in this case. Do they want twice as many shots/errors because it's listed twice, or do they want it deduped?
In your case, which do you want to happen?

In my case, I would like to perform the task twice.
I think a sensible approach might be to run the task as many times as it is listed and return separate TaskStats object for each occurrence, which is different from grouping them together as it was in 1.13. If I understood the code correctly it might not be easy to implement since the strong_id also used for managing the workers and there is no other distinction between different tasks.
I can work around the issue by assigning each json with a number, but I thought that it might be cleaner without it.
Thanks for considering!


eforge

Thanks for taking the time to file an issue.
If you are looking to ask a general question or start a discussion,
please open a post on our discourse instead at:
https://openziti.discourse.group/new-topic?category=Support/General Questions
Also please try to search for a similar bug before submitting a new issue

Please re-open with more information if you have specific problem or solution in mind.


fix(android): Migrate away from onCatalystInstanceDestroy() to invalidate

Since NativeModule.onCatalystInstanceDestroy() method as deprecated and remove  in new architecture.
(https://github.com/facebook/react-native/commit/18c8417290823e67e211bde241ae9dde27b72f17

Thank you!


Update nginxpwner.py

gobuster keeps erroring.

2021/07/20 09:02:30 [!] 2 errors occurred:
	* WordList (-w): Must be specified (use `-w -` for stdin)
	* Url/Domain (-u): Must be specified

this fixes that.

Are you still having this issue? I am trying to reproduce the error but gobuster seems to be working fine for me

I got this error too, please merge

I had the same issue. Turns out I had an old version of gobuster installed via sudo apt install.
From there I had to properly install go.
Then I had further issues with new gobuster install (see github.com/OJ/gobuster/issues/330)


ValueError: Unable to identify Cloudflare IUAM Javascript on website. Cloudflare may have changed their technique, or there may be a bug in the script.

Before creating an issue, first upgrade cfscrape with pip install -U cfscrape and see if you're still experiencing the problem. Please also confirm your Node version (node --version or nodejs --version) is version 10 or higher.
Make sure the website you're having issues with is actually using anti-bot protection by Cloudflare and not a competitor like Imperva Incapsula or Sucuri. And if you're using an anonymizing proxy, a VPN, or Tor, Cloudflare often flags those IPs and may block you or present you with a captcha as a result.
Please confirm the following statements and check the boxes before creating an issue:

[X] I've upgraded cfscrape with pip install -U cfscrape
[X] I'm using Node version 10 or higher
[X] The site protection I'm having issues with is from Cloudflare
[X] I'm not using Tor, a VPN, or an anonymizing proxy

Python version number
Run python --version and paste the output below:
Python 3.7.6

cfscrape version number
Run pip show cfscrape and paste the output below:
Name: cfscrape
Version: 2.1.1

Code snippet involved with the issue
import cfscrape
scraper = cfscrape.create_scraper()
scraper.get("https://www.tibia.com/account/?subtopic=accountmanagement")

Complete exception and traceback
(If the problem doesn't involve an exception being raised, leave this blank)
Traceback (most recent call last):
  File "C:\Users\User1\AppData\Local\Programs\Python\Python37\lib\site-packages\cfscrape\__init__.py", line 255, in solve_challenge
    javascript, flags=re.S
AttributeError: 'NoneType' object has no attribute 'groups'

ValueError: Unable to identify Cloudflare IUAM Javascript on website. Cloudflare may have changed their technique, or there may be a bug in the script.

URL of the Cloudflare-protected page
[https://www.tibia.com/account/?subtopic=accountmanagement]
URL of Pastebin/Gist with HTML source of protected page
[https://pastebin.com/bF2EFEN3]

Better use cloudscraper instead of this library...VeNoMoUs always update periodically!


How do I add vue Custom Directives intellisense?

I define vue  Custom Directives like v-permission,
and how to intellisense at every Html tag.

My CLI vue-intellisense currently works by generating the files required for the Vetur plugin.
Can you do some research on what Vetur needs in order to give intellisense for custom directives ? Then I'll gladly add support for it.

Thank you for reply, I checkout vuter source code try to find location of define derective snippet, and add custom derective rebuild to use.
but have not any way to define custom directive snippet.

I find this.

I have modify vetur source code your vue-intellisense code publish npm package bbl-vue-intellisense,
package.json
"vetur": {
"tags": "vetur/tags.json",
"attributes": "vetur/attributes.json",
"globalAttributes": "vetur/globalAttributes.json"
}
usage same as your lib.
vue-int --input ./src --output vetur --recursive
It will auto detect custom derective name and Generate globalAttributes.json like :
app.directive("foo")
or
app.directive("bar",()=>{})
whill be generated file like:
[
{
"name":"foo",
"tip":""
},
{
"name":"bar",
"tip":""
}
]
and restart vscode , you can intellisense foo and bar at Html tag attribute.

There is no need to modify the extension, just use html.customData to specify html custom data:
vscode-custom-data
vue v-else directive


Making fpp-to-json functional tests as good as other fpp-to-x tools

Out of all of the fpp-to-x tools, fpp-to-json seems to be the most brittle. This is in large part due to the fact that there are not many test cases to cover all edge cases, as seen with many of the other fpp-to-x tools. Since this is the case, there are fewer cases to run the fpp trace over, and thus can cause critical gaps in the fpp bitmap.
This issue tracks the improvement of the fpp-to-json functional tests to match the quality of the tests seen with the other tools.

Closing this issue as overlapping with #468. Running fpp-to-json on the F Prime models should uncover any issues, which we can then address in unit tests.


locking azure-devops-node-api to 8.0.0 in packaging-common

locking version of azure-devops-node-api to 8.0.0, 8.1.1 appears to have issues with the TS version we're using

@jotaylo you haven't updated task.loc.json files


Removing desiredCommitFromStep: commit from argocd-update causes infinite sync loop

Description
I have multiple Stages that are committing to the same branch (e.g. HEAD). Per @hiddeco suggestion, I removed the desiredCommitFromStep: commit option, since a stage writing to the same HEAD would cause the other to have an broken heart
        - uses: argocd-update
          config:
            apps:
              - name: kargo-helm-ff-dev
                sources:
                # desiredCommitFromStep: commit     # << removing this causes an infinite sync loop

However, when syncing, Kargo went into an infinite loop sync-ing the application over and over again
Screenshots

Steps to Reproduce
kind: Stage
metadata:
  name: dev
  namespace: kargo-helm-ff
  labels:
    kargo.akuity.io/shard: kargo-agent
spec:
  shard: kargo-agent
  requestedFreight:
    - origin:
        kind: Warehouse
        name: guestbook
      sources:
        direct: true
    - origin:
        kind: Warehouse
        name: features
      sources:
        direct: true
  promotionTemplate:
    spec:
      steps:
        - uses: git-clone
          config:
            checkout:
              - fromFreight: true
                path: ./src
              - branch: main
                path: ./out
            repoURL: https://github.com/dhpup/kargo-helm-ff.git
        - uses: helm-update-image
          as: update-image
          config:
            images:
              - image: ghcr.io/dhpup/guestbook
                key: image.tag
                value: Tag
            path: ./out/env/dev/values.yaml
        - uses: copy
          config:
            inPath: ./src/base/feature-flags.yaml
            outPath: ./out/env/dev/feature-flags.yaml
        - uses: git-commit
          as: commit
          config:
            messageFromSteps:
              - update-image
            path: ./out
        - uses: git-push
          config:
            path: ./out
        - uses: argocd-update
          config:
            apps:
              - name: kargo-helm-ff-dev
                sources:
                  - repoURL: https://github.com/dhpup/kargo-helm-ff.git

Version
v1.0.3

Logs
Paste any relevant application logs here.

This actually matches the behavior described in the docs:
https://docs.kargo.io/references/promotion-steps#argocd-update

If this is left undefined, the desired revision will be determined by Freight (if possible).

Typically, you'd let Kargo figure this out all on its own, but the field is useful for the scenario where you've written back to Git and the commit you ought to be synced to therefor doesn't match the commit that's in the freight. (In the legacy promo mechanisms world, this is what "health check commit" was for.)
So by not specifying that, Kargo is trying to figure out what the App should be synced to all on its own (and probably coming up with the wrong answer).
The plot thickens: desiredCommitFromStep is being deprecated in 1.1 and removed in 1.2. It is not needed because there is a new desiredRevision field and you can set its value however you like using an expression. (You can see that desiredCommitFromStep was always a stop-gap to hold us over until we had EL support.)
This being said, we will now need to grapple with how we want undefined desiredRevision to be handled.

Intuitive: If it's left blank, set no expectation for what the App should be synced to But this is a breaking change in behavior. That said, since there's already a small, advertised-in-advance breakage going on here (removal of desiredCommitFromStep) perhaps the timing is right for this other breakage?

Non-breaking: Add a separate boolean field that can be set to indicate you don't care about verifying what revision the App is synced to.

I think both are easily doable, so @jessesuen just let me know which direction you'd prefer to head in.

Intuitive: If it's left blank, set no expectation for what the App should be synced to

This is the behavior we were after during the meeting.

@hiddeco - checked logs per your request but nothing interesting:
time="2024-11-18T14:43:21Z" level=info msg="Starting Controller" controller=promotion controllerGroup=kargo.akuity.io controllerKind=Promotion
time="2024-11-18T14:43:21Z" level=info msg="Starting workers" controller=warehouse controllerGroup=kargo.akuity.io controllerKind=Warehouse worker count=1
time="2024-11-18T14:43:21Z" level=info msg="Starting workers" controller=stage controllerGroup=kargo.akuity.io controllerKind=Stage worker count=1
time="2024-11-18T14:43:21Z" level=info msg="Starting workers" controller=promotion controllerGroup=kargo.akuity.io controllerKind=Promotion worker count=1
time="2024-11-18T14:48:07Z" level=info msg="began promotion" freight=21ba6e3806d2fd4e246a1732ccc9776a48d17228 namespace=kargo-helm-ff promotion=dev.01jczvxh65kb0wkscmygtfjy8y.21ba6e3 stage=dev
time="2024-11-18T14:48:12Z" level=info msg=promotion freight=21ba6e3806d2fd4e246a1732ccc9776a48d17228 namespace=kargo-helm-ff phase="\"Succeeded\"" promotion=dev.01jczvxh65kb0wkscmygtfjy8y.21ba6e3 stage=dev
time="2024-11-18T16:18:50Z" level=info msg="began promotion" freight=93cfe8602013c108db2863e6f854c38717f9d666 namespace=kargo-helm-ff promotion=staging.01jd013macepb5qnez6syhqrq6.93cfe86 stage=staging
time="2024-11-18T16:18:52Z" level=info msg="began promotion" freight=93cfe8602013c108db2863e6f854c38717f9d666 namespace=kargo-helm-ff promotion=prod.01jd013pera23sj3rf994fn6nw.93cfe86 stage=prod
time="2024-11-18T16:18:54Z" level=info msg=promotion freight=93cfe8602013c108db2863e6f854c38717f9d666 namespace=kargo-helm-ff phase="\"Succeeded\"" promotion=staging.01jd013macepb5qnez6syhqrq6.93cfe86 stage=staging
time="2024-11-18T16:18:55Z" level=info msg=promotion freight=93cfe8602013c108db2863e6f854c38717f9d666 namespace=kargo-helm-ff phase="\"Succeeded\"" promotion=prod.01jd013pera23sj3rf994fn6nw.93cfe86 stage=prod
time="2024-11-18T16:19:22Z" level=info msg="began promotion" freight=826f87b0d40b68d9ff8234f91862788929381e9a namespace=kargo-helm-ff promotion=dev.01jd014k59p2617kdza6a9rdn7.826f87b stage=dev
time="2024-11-18T16:19:26Z" level=info msg=promotion freight=826f87b0d40b68d9ff8234f91862788929381e9a namespace=kargo-helm-ff phase="\"Succeeded\"" promotion=dev.01jd014k59p2617kdza6a9rdn7.826f87b stage=dev
time="2024-11-18T16:21:47Z" level=info msg="began promotion" freight=826f87b0d40b68d9ff8234f91862788929381e9a namespace=kargo-helm-ff promotion=dev.01jd01918f2srjjczx52vmzcvb.826f87b stage=dev
time="2024-11-18T16:21:49Z" level=info msg=promotion freight=826f87b0d40b68d9ff8234f91862788929381e9a namespace=kargo-helm-ff phase="\"Succeeded\"" promotion=dev.01jd01918f2srjjczx52vmzcvb.826f87b stage=dev
time="2024-11-18T16:40:52Z" level=info msg="began promotion" freight=21ba6e3806d2fd4e246a1732ccc9776a48d17228 namespace=kargo-helm-ff promotion=dev.01jd02byj4g79417wgybwzh1j3.21ba6e3 stage=dev
time="2024-11-18T16:42:00Z" level=info msg="terminating Promotion" namespace=kargo-helm-ff promotion=dev.01jd02byj4g79417wgybwzh1j3.21ba6e3

Intuitive: If it's left blank, set no expectation for what the App should be synced to

We should make this the behavior

Hello,
I also have the infinite loop problem with all my pipelines.
Here is an example of one of my stages:
      steps:
        - config:
            checkout:
              - branch: main
                path: ./src
            repoURL: https://github.com/test/test-helm.git
          uses: git-clone
        - as: update-image
          config:
            images:
              - image: europe-docker.pkg.dev/test-001/test/scim
                key: image.tag
                value: Tag
            path: ./src/helm/scim/values-scim-image.yaml
          uses: helm-update-image
        - as: commit
          config:
            messageFromSteps:
              - update-image
            path: ./src
          uses: git-commit
        - config:
            path: ./src
          uses: git-push
        - config:
            apps:
              - name: scim-staging
                sources:
                  - desiredCommitFromStep: commit
                    repoURL: https://github.com/test/test-helm.git
          uses: argocd-update

@stephaneetje what branch is the ArgoCD Application configured to sync to?

@stephaneetje it's not generally a good idea to write back to a branch you subscribe. Unless you've taken great care with other settings, you're asking for a loop.
Similarly, you need to take great care if you want to sync two Apps to the same branch.
If you have Stage A that puts main in state 1 and syncs App A, then Stage A will be expecting App A to be synced to state 1. If Stage B then puts main in state 2 and syncs App B, then Stage B will be expecting A to be synced to state 2. If App A now syncs again for any other reason, Stage A will notice that App A is now synced to state 2, which defies its expectations and will make things appear unhealthy.
Our usual recommendation is that all Stages have their own branch. If you insist on deviating from that, you need to explore other settings that will make that more tenable, for instance, using path filters to prevent Warehouses from picking up changes written by a Stage and/or using updateTargetRevision: true (not false) so that Apps don't point at the head of a branch, but point always at a specific revision. (But I don't generally recommend that, because "what revision should I currently be pointed at" isn't stored anywhere in Git, which makes that scenario "not real gitops."
Stage per branch is the surefire way to avoid problems.

@krancour  On kargo-simple repo there are exemples using the main branch, is that outdated ?
https://github.com/akuity/kargo-simple/blob/main/kargo/stages.yaml

On kargo-simple repo there are exemples using the main branch, is that outdated ?

It's not, but it's also not consistent with what we usually tell people... going to have to look into that.
@hiddeco and @jessesuen any insight? Shouldn't our "simple" example probably use Stage-specific branches since that's our common recommendation?

On kargo-simple repo there are exemples using the main branch, is that outdated ?

It's not, but it's also not consistent with what we usually tell people... going to have to look into that.
@hiddeco and @jessesuen any insight? Shouldn't our "simple" example probably use Stage-specific branches since that's our common recommendation?

So you are saying we can't use a monorepo argocd targeting HEAD or main with Kargo ?
Many argocd exemples (including official ones) target HEAD for every apps.

So you are saying we can't use a monorepo argocd targeting HEAD or main with Kargo ?

tldr; What I am saying is Kargo is merely a tool for implementing user-defined promotion processes. If your process doesn't make sense, Kargo won't save you.

Many argocd exemples (including official ones) target HEAD for every apps.

Multiple apps all tracking the head of a single branch can make perfect sense in a world that doesn't include Kargo. That's a simple world where you are taking direct responsibility for the one branch that is the source of truth for everything.
But things weren't perfect in that world, either.
I'll assume there is some kind of config management tool like Kustomize or Helm at play. If you want to make a change to dev, then qa, then prod, you make a dev-specific change to the config. When you're satisfied with the result, you make a qa-specific change. When you're satisfied with the result, you might apply the same change to prod-specific config -- or you might revert the dev-specific and qa-specific changes and apply the change instead to the common or "base" configuration used by all environments. Three commits to move one change from one end of the pipeline to the other. Hopefully you've automated all that, but it's not easy.
Now if you were asked to return dev to the state it was in last Monday, you might have your work cut out for you. If you're very lucky, you might only have to revert a few dev-specific changes that were made since that time, but if configuration shared by multiple environments also changed in that interval, and because all your Apps are syncing to the head of the same branch, you'll have to figure out how to selectively revert those changes for dev only while not affecting any other environment. That's a highly manual and error-prone exercise.
So before even bringing Kargo into the picture, the cracks in that approach are already starting to show. Let's be honest with ourselves -- gitops has always been tedious.
Continuing to leave Kargo out of this, what would improve these processes? Without saying "branch" let's consider the idea of separate storage of some kind for each environment's complete config (common config + env-specific config).
If you want to make a change to dev, then qa, then prod, you make a single change to the common configuration used by all environments. To get it into dev, you overwrite everything in dev's storage with whatever's at the head of main (or a subset of it, like common config + dev-specific config). To get it into qa, it's the same thing. To get it into prod, again, the same thing.
Now going in the other direction: You are asked to return "dev" to the state it was in last Monday. You grab whatever commit was at the head of main on Monday and apply the same process described above for moving "forward" in order to move "backward" instead. Overwrite dev's storage with whatever was at the head of main last Monday. No other environment is affected and you didn't have to put any effort at all into figuring out how to roll dev back without affecting the other environments.
The key point here is that having dedicated storage of some kind for each environment allows each environment to easily be moved into any new or previous state without any possibility of impact to other environments.
What would be our options now for this environment-specific storage?

Argo CD's looking at using OCI for this.
If Argo CD supported it, the storage could be any object or block storage. (Who cares? 🤷♂)
Git-based options are the most accessible ones at present:

Dedicated directories within one branch. This could be a separate branch from main. It could even be in a separate repo.
Dedicated branches

Now let's finally insert Kargo into the conversation. Whether moving "forward" or "backward" Kargo takes the desired state (a specific commit from main, for example, as specified by the Freight being promoted) and applies some user-defined process to it. That's typically going to look like cloning the repo, checking out the commit in question, applying some configuration management tool, and writing its results somewhere. So now we're back to grappling with all of the above...
You can write back to whatever branch it was you were subscribed to, but as I said, when you do that, you need to take great care to prevent the formation of a loop. That's on you. Your ability to get stuck in an infinite loop is not a bug in your programming language; it's a flaw in your code.
Coming back to our recommendation of environment-specific branches: Writing to env-specific branches is not so fundamentally different from writing to env-specific directories in one branch, but if anything, it comes with a few perks:

Avoid any kind of loop for "free."
Every App can sync to the head of the applicable env-specific branch, but you (or Kargo) can verify that the exact revision it is synced to is the exact desired revision.
You can apply branch protections. Want to limit who can merge a PR (opened by Kargo) against branches named like *-prod? No problem at all.

I have to add, it is widly said we should NOT use branch per env for gitops : https://codefresh.io/blog/stop-using-branches-deploying-different-gitops-environments/

Apart from the fact that the advice comes from a competitor, I consider this to be a post that has not aged well. I also don't agree with the premise upon which all the arguments are predicated. This looks like what people do with code and does not at all resemble the branches-as-storage model I have described:

i don't want the repo to have hundreds of branch (apps*envs = ...rapidly growing number + must push changes to each branches of an app for each changes...).

Many people feel this way, and in the absence of something like Kargo managing it all for me, I think I might feel that way as well. But when viewing branches as storage, this statement becomes comparable to saying "I don't want too many buckets in my S3 account."
I know this has been a long-winded reply, so thanks for hanging in there. In summary, I never meant to promote the notion that Kargo can't work as you had been hoping to use it, but it's only a tool for implementing user-defined promotion processes and it won't save you from any flaws inherent in those processes. If anything, it may force previously undetected process flaws to the surface. The branch per env pattern is one we promote only because in our experience it works particularly well with Kargo (and in general).

@hiddeco and @jessesuen any insight? Shouldn't our "simple" example probably use Stage-specific branches since that's our common recommendation?

I did not want to introduce branch rendering into the simple example (which is arguably a more advanced technique). So as soon as this bug is fixed, I will update kargo-simple to remove desiredCommitFromStep: commit.

I have to add, it is widly said we should NOT use branch per env for gitops : https://codefresh.io/blog/stop-using-branches-deploying-different-gitops-environments/

This is actually talking about a different problem. I agree that no one should be doing git flow with Kubernetes manifests. In other words, don't manually maintain manifests in an env-specific branches, and merge changes to and from main and env branches, which is what I think the blog is also against.
Kent explained it in detail, but what we propose is different: env branches should always be a direct reflection of main, just in it's fully rendered form. No human should ever be responsible for updating these env branch, but rather automation (e.g. kargo, kargo-render). If the env specific branch is nothing but just a rendered output of main, then there is no "drift" to be concerned about. There are other benefits to this pattern (branch protection, eliminating obfuscation, argo cd performance), which you can read about here: https://akuity.io/blog/the-rendered-manifests-pattern. But it's not just us, argo cd hydrator feature is another implementation of the pattern: https://github.com/argoproj/argo-cd/pull/17755.
In any case, using rendered branches is not for everyone, and so it's important that we fix this bug so that Kargo will work for Argo CD users who deploy everything from HEAD.

@hiddeco and @jessesuen any insight? Shouldn't our "simple" example probably use Stage-specific branches since that's our common recommendation?

I did not want to introduce branch rendering into the simple example (which is arguably a more advanced technique). So as soon as this bug is fixed, I will update kargo-simple to remove desiredCommitFromStep: commit.

I have to add, it is widly said we should NOT use branch per env for gitops : https://codefresh.io/blog/stop-using-branches-deploying-different-gitops-environments/

This is actually talking about a different problem. I agree that no one should be doing git flow with Kubernetes manifests. In other words, don't manually maintain manifests in an env-specific branches, and merge changes to and from main and env branches, which is what I think the blog is also against.
Kent explained it in detail, but what we propose is different: env branches should always be a direct reflection of main, just in it's fully rendered form. No human should ever be responsible for updating these env branch, but rather automation (e.g. kargo, kargo-render). If the env specific branch is nothing but just a rendered output of main, then there is no "drift" to be concerned about. There are other benefits to this pattern (branch protection, eliminating obfuscation, argo cd performance), which you can read about here: https://akuity.io/blog/the-rendered-manifests-pattern. But it's not just us, argo cd hydrator feature is another implementation of the pattern: argoproj/argo-cd#17755.
In any case, using rendered branches is not for everyone, and so it's important that we fix this bug so that Kargo will work for Argo CD users who deploy everything from HEAD.

Thanks for the detailed replies.
The rendered pattern isn't fitting for us.
Also, you seem to successfully use Kargo targeting HEAD (while i don't). You say it loops only when desiredCommitFromStep isn't filled, but i get the loop either it is set or not.
We just want a very simple task to be executed : update image tag in the values (helm-image-update) and then sync that commit. I wouldn't expect that to be that hard.

The rendered pattern isn't fitting for us.

Although they often do go hand-in-hand and complement each other well, pre-rendering to plain YAML and using env-specific branches as a sort of storage are not inseparable and I think this is too often overlooked.
Your promotion process can simply copy the latest common + env-specific config from main to the env-specific branch.

We just want a very simple task to be executed : update image tag in the values (helm-image-update) and then sync that commit. I wouldn't expect that to be that hard.

It occurs to me that perhaps you're using more of Kargo than you really meant to. You don't need to subscribe your Warehouses to your git repos. You can just subscribe to images. Your Freight would contain only images and not commits. Moving such Freight through the pipeline involves writing to your git repo (main if you want!), but because you're not also subscribing to the repo, there is no worry of accidentally creating a loop. Further, with no commit information in the Freight, it would also prevent the argocd-update step (or the health checks they create) from having any notion that Apps ought to be observably synced to some specific commit.
In the configuration I've just described, you'd be using Kargo in a manner akin to "Argo Image Update on Steroids." What you've attempted up to this point, by comparison, is a much more sophisticated setup than I think you had likely intended.

The rendered pattern isn't fitting for us.

Although they often do go hand-in-hand and complement each other well, pre-rendering to plain YAML and using env-specific branches as a sort of storage are not inseparable and I think this is too often overlooked.
Your promotion process can simply copy the latest common + env-specific config from main to the env-specific branch.

We just want a very simple task to be executed : update image tag in the values (helm-image-update) and then sync that commit. I wouldn't expect that to be that hard.

It occurs to me that perhaps you're using more of Kargo than you really meant to. You don't need to subscribe your Warehouses to your git repos. You can just subscribe to images. Your Freight would contain only images and not commits. Moving such Freight through the pipeline involves writing to your git repo (main if you want!), but because you're not also subscribing to the repo, there is no worry of accidentally creating a loop. Further, with no commit information in the Freight, it would also prevent the argocd-update step (or the health checks they create) from having any notion that Apps ought to be observably synced to some specific commit.
In the configuration I've just described, you'd be using Kargo in a manner akin to "Argo Image Update on Steroids." What you've attempted up to this point, by comparison, is a much more sophisticated setup than I think you had likely intended.

I'm not sure i understood correctly. Are you saying i should skip the helm-image-update + git commit, to just argocd-update with helm parameters ? That would not be a solution as i still need it to be pushed on the repo (need the repo to be the source of truth) to avoid outofsync...
Furthermore, there is no gitrepos subscribed in my warehouse, so not sure i got it right.
apiVersion: kargo.akuity.io/v1alpha1
kind: Warehouse
metadata:
  annotations:
    argocd.argoproj.io/sync-wave: "3"
    kargo.akuity.io/color: black
  name: scim-prod
  namespace: scim
spec:
  subscriptions:
  - image:
      imageSelectionStrategy: SemVer
      repoURL: europe-docker.pkg.dev/test-01/test/scim
      discoveryLimit: 10
      allowTags: ^v(\d+\.)?(\d+\.)?(\*|\d+)$


Can't get auth flow to work

Is it correct use: https://github.com/google/php-photoslibrary/blob/dde4b9a031250e6dd0322179b11aeb920c1f0ae3/src/common/common.php#L94
I search everywhere and refresh_token is the one that actually are used to refresh access_token. Here are actually access_token used as refresh_token. Or I missed something here?

@sookoll https://github.com/google/php-photoslibrary/issues/11#issuecomment-467665634
Hope this helps.


Fix Metafield generated type

Metafield types were generated with an extra | {}:
export type TestQueryQuery = {
  product?: StorefrontAPI.Maybe<{
    metafield?: StorefrontAPI.Maybe<{
      reference?: StorefrontAPI.Maybe<
        Pick<StorefrontAPI.Metaobject, 'id'> | {}
      >;
    }>;
  }>;
};

This would make TS complain when accessing properties because {} doesn't contain anything. With this change, the type is generated as follows:
export type TestQueryQuery = {
  product?: StorefrontAPI.Maybe<{
    metafield?: StorefrontAPI.Maybe<{
      reference?: StorefrontAPI.Maybe<Pick<StorefrontAPI.Metaobject, 'id'>>;
    }>;
  }>;
};

cc @juanpprieto @duncan-fairley

Amazing, thanks @frandiox!


Fix BRB/BRH

Very minor, but BRB/BRH were being given "BB" and "BH" symbols. I think this fixes that.

@sethm   good catch/fix.  Let me know if you come across anymore big differences in disassembly like this and the sleigh isn't making sense or the fix isn't clear.
I was wondering if you could look at +40c4 in rom_400.bin from the simh repo.
I may try to compile your disassembler and play around with comparing outputs.

@mumbel There is a fully disassembled version of the ROM here in my "3b2_roms" repo, you may want to compare against it: https://github.com/sethm/3b2_rom/blob/master/Rev2/COMBINED.s
0x40c4 is a RETPS, which is one of a handful of privileged instructions that start with the byte 0x30.

@mumble The non-privileged instructions that start with 0x30 are:

0x3009: MVERNO
0x3019: MOVBLW
0x301F: STREND
0x3035: STRCPY

Privileged "Operating System" instructions starting with 0x30 are:

0x300d: ENBVJMP
0x3013: DISVJMP
0x30AC: CALLPS
0x30C8: RETPS
0x302F: INTACK
0x3061: GATE
0x3045: RETG

Thanks!  Looks like I missed all of the OS ones

Pushed all the OS instructions, missed those at the end of that chapter.  They're basically all just pcodeop instructions, maybe more effort can go into them, but its just a lot of logic for sleigh (decompiler for for example show disable_virtual_pin() for a DISVJMP instruction, and in that case will also goto %r0)


Multiple configuration files

Thanks for this extension! I have written a Python package which ships with an entrypoint to install the jupyter_app_launcher config into the respective Jupyter data directories. For conda-forge packaging, this will happen already during package build, so that installing my conda package will directly show me the icons in the launcher. I really like this approach for my use case, but I have one problem with it: If for some reason, some other package would do the exact same trick, one would overwrite the other's config.
A solution to this would be to not fix the name of the configuration file to config.yml, but only fix its location to PREFIX/jupyter_app_launcher. The code discovering the config file would then need to glob the path for potential configuration files and use all of them. What do you think?

Thanks for your suggestion, indeed this a great idea!. I will implement it in the next version, which is blocked by https://github.com/jupyterhub/jupyter-server-proxy/pull/419

0.2.0 is released with this feature


Add split point for end of pages range in table data.

I noticed that the first Uri collision free map tablet
also contained page data for the end of the page range.
Adding a split point to create a last tablet for page
data.

A unit test is failing because you added another split.  You just need to increase the expected number of splits from 43 to 44.
+1 after you fix the test.


:warning: Action Required: Replace Deprecated gcr.io/kubebuilder/kube-rbac-proxy

Description
:warning: The image gcr.io/kubebuilder/kube-rbac-proxy is deprecated and will become unavailable.
You must move as soon as possible, sometime from early 2025, the GCR will go away.

Unfortunately, we're unable to provide any guarantees regarding timelines or potential extensions at this time. Images provided under GRC will be unavailable from March 18, 2025, as per announcement. However, gcr.io/kubebuilder/may be unavailable before this date due to efforts to deprecate infrastructure.

If your project uses gcr.io/kubebuilder/kube-rbac-proxy, it will be affected.
Your project may fail to work if the image cannot be pulled. You must take action as soon as possible.

However, if your project is no longer using this image, no action is required, and you can close this issue.

Using the image gcr.io/kubebuilder/kube-rbac-proxy?
kube-rbac-proxy was historically used to protect the metrics endpoint. However, its usage has been discontinued in Kubebuilder. The default scaffold now leverages the WithAuthenticationAndAuthorization feature provided by Controller-Runtime.
This feature provides integrated support for securing metrics endpoints by embedding authentication (authn) and authorization (authz) mechanisms directly into the controller manager's metrics server, replacing the need for (https://github.com/brancz/kube-rbac-proxy) to secure metrics endpoints.
What To Do?
You must replace the deprecated image gcr.io/kubebuilder/kube-rbac-proxy with an alternative approach. For example:

Update your project to use WithAuthenticationAndAuthorization:

You can fully upgrade your project to use the latest scaffolds provided by the tool or manually make the necessary changes. Refer to the FAQ and Discussion for detailed instructions on how to manually update your project and test the changes.

Alternatively, replace the image with another trusted source at your own risk, as its usage has been discontinued in Kubebuilder.

For further information, suggestions, and guidance:

📖 FAQ and Discussion
💬 Join the Slack channel: #kubebuilder.

NOTE: This issue was opened automatically as part of our efforts to identify projects that might be affected and to raise awareness about this change within the community. If your project is no longer using this image, feel free to close this issue.

We sincerely apologize for any inconvenience this may cause.
Thank you for your cooperation and understanding! :pray:

Thanks for the info. We will replace gcr.io/kubebuilder/kube-rbac-proxy with an alternative approach before March 18, 2025.

Hi @cchen-vertica
Please note that we cannot guarantee any data.
March/2025 is our best effort.
That means the image can go away at any time
Beyond that, if you have users using it, they need to move forward and get the new version that does not use versions of your solution that rely on the deprecated image; otherwise, they might be affected and unable to run your solution.

Okay, then we will replace the deprecated image in January.


[CP] Pass the --enable-skparagraph=false flag if the EnableSkParagraph manifest metadata value is false

issue_link
https://github.com/flutter/flutter/issues/103846#issuecomment-1136334771
Commit Hash
1e28cfafa05fd3ea01e3b1d72b6eacf95b537d95
Target
stable
Impacted Users
Users affected by regressions in SkParagraph
Impact Description
Flutter 3 was the first stable release that used SkParagraph to render text.
Some users are affected by issues in SkParagraph that were not present in the old Libtxt text renderer.  For these cases Flutter 3 provides a flag that reenables Libtxt.
This PR makes it easier to use that flag on Android.  With this PR, Android users can opt into Libtxt by setting a metadata attribute in the app manifest and removes the requirement to also pass a flag in the app's FlutterActivity subclass.
Workaround
Override getFlutterShellArgs in the app's FlutterActivity subclass
Risk
low
Test Coverage
yes
Validation Steps
Run an app like the one in https://github.com/flutter/flutter/issues/103846 that is affected by an SkParagraph regression.
Verify that the text renders as expected when this tag is added to the app's AndroidManifest.xml:
<meta-data
    android:name="io.flutter.embedding.android.EnableSkParagraph"
    android:value="false" />

cherry-pick lgtm

Flutter 3.0.2


PCA In the inference stage.

Hello, during the training phase, PCA is used to extract rough features and align them with short text. Why is PCA not used for short texts during the testing phase? Will this result in inconsistent training and testing?

That's a good question. The PCA is used to require the model not only capture complete information, but also can recognize which information is the most important part during training.
In testing, if the feature can contain complete information and the corresponding importance, it can do both long-text and short-text tasks well.

Got it thanks.


Add support for FDB 630

This PR is adding support for FoundationDB version 6.3.X.
It has been tested locally with 4k+ passing correctness tests for 6.3, which is far better than the current state of the repo.
It also includes a fix on the bindingTester that will fix 99% of the failing scheduled correctness tests.

We should restart the CI when foundationdb.org will be up

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

30 of 32 (93.75%)  changed or added relevant lines in 4 files are covered.
4 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.9%) to 70.182%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

foundationdb-bindingtester/src/main.rs
15
17
88.24%

Files with Coverage Reduction
New Missed Lines
%

foundationdb-bindingtester/src/main.rs
4
91.73%

Totals

Change from base Build<PHONE_NUMBER>:
-0.9%

Covered Lines:
2662

Relevant Lines:
3793

💛  - Coveralls

Codecov Report

Merging #19 (1cf7675) into main (a0d4bfa) will increase coverage by 0.48%.
The diff coverage is 93.75%.

@@            Coverage Diff             @@
##             main      #19      +/-   ##
==========================================
+ Coverage   80.99%   81.48%   +0.48%
==========================================
  Files          18       18
  Lines        3063     3089      +26
==========================================
+ Hits         2481     2517      +36
+ Misses        582      572      -10

Impacted Files
Coverage Δ

foundationdb-gen/src/lib.rs
0.44% <ø> (ø)

foundationdb/src/future.rs
88.58% <ø> (ø)

foundationdb-bindingtester/src/main.rs
92.25% <88.23%> (+0.68%)
:arrow_up:

foundationdb/src/transaction.rs
88.62% <100.00%> (+1.73%)
:arrow_up:

foundationdb/src/tuple/element.rs
62.32% <100.00%> (ø)

foundationdb/src/tuple/mod.rs
89.78% <100.00%> (ø)

foundationdb/src/tuple/pack.rs
90.89% <0.00%> (+0.18%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a0d4bfa...1cf7675. Read the comment docs.

Passed 3k correctness tests on fdb 630 🎉
Waiting for a review before merging.

Hey thanks for the approval @Speedy37 :+1:


ci: move credo lockfiles to test project fixture

Current dependencies on/for this PR:

main

PR #40   👈

This comment was auto-generated by Graphite.


question

Dear author, hello, I encountered a problem that I could not download the pre-trained model in the process of trying to run the code. I tried some methods but still could not solve it. Can you help me solve this doubt? Thank you so much
OSError: Can't load config for './examples/few-shot-classification/rlprompt/distgpt2/'. Make sure that:

'./examples/few-shot-classification/rlprompt/distgpt2/' is a correct model identifier listed on 'https://huggingface.co/models'

or './examples/few-shot-classification/rlprompt/distgpt2/' is the correct path to a directory containing a config.json

Hi, I think you just used the incorrect model names/identifiers...
If you want to use DistilGPT2, please use the name "distilgpt2", instead of "distgpt2".

And please check your model_name string in your model logging process.
Feel free to ask more questions.