text:
MultiThreadsTest.testUpdateDocsAndReadRevHistory() fails with forestdb

09-13 16:21:12.218 2234-2301/com.couchbase.lite.test V/CBLite: ---> Added: {docID-00000019 #13-836daa42cfb8eff4240b24517b61978e @492} as seq 492
09-13 16:21:12.218 2234-2301/com.couchbase.lite.test V/Database: PUT _id=docID-00000019, _rev=13-836daa42cfb8eff4240b24517b61978e (allowConflict=false)
09-13 16:21:12.218 2234-2301/com.couchbase.lite.test V/CBLite: ---> Added: {docID-00000019 #14-6a7c519ef68c1bd38f607fadce429199 @493} as seq 493
09-13 16:21:12.218 2234-2300/com.couchbase.lite.test A/libc: Fatal signal 11 (SIGSEGV) at 0x00000000 (code=128), thread 2300 (Thread-158)
09-13 16:21:12.218 2234-2301/com.couchbase.lite.test V/Database: PUT _id=docID-00000019, _rev=14-6a7c519ef68c1bd38f607fadce429199 (allowConflict=false)
09-13 16:21:12.270 174-174/? I/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-13 16:21:12.270 174-174/? I/DEBUG: Build fingerprint: 'generic/vbox86p/vbox86p:4.4.4/KTU84P/eng.genymotion.20160609.162149:userdebug/test-keys'
09-13 16:21:12.270 174-174/? I/DEBUG: Revision: '0'
09-13 16:21:12.270 174-174/? I/DEBUG: pid: 2234, tid: 2300, name: Thread-158  >>> com.couchbase.lite.test <<<
09-13 16:21:12.270 174-174/? I/DEBUG: signal 11 (SIGSEGV), code 128 (SI_KERNEL), fault addr 00000000
09-13 16:21:12.422 174-174/? E/Corkscrew: unrecognized dwarf lower part encoding: 0xbc
09-13 16:21:12.422 174-174/? I/DEBUG: backtrace:
09-13 16:21:12.422 174-174/? I/DEBUG:     #00  pc 000954eb  /data/app-lib/com.couchbase.lite.test-2/libCouchbaseLiteJavaForestDB.so (fdb_get_byoffset+171)
09-13 16:21:12.502 570-592/system_process I/BootReceiver: Copying /data/tombstones/tombstone_07 to DropBox (SYSTEM_TOMBSTONE)
09-13 16:21:12.502 570-2302/system_process W/ActivityManager: Error in app com.couchbase.lite.test running instrumentation ComponentInfo{com.couchbase.lite.test/android.test.InstrumentationTestRunner}:
09-13 16:21:12.502 570-2302/system_process W/ActivityManager:   Native crash
09-13 16:21:12.502 2223-2223/? D/AndroidRuntime: Shutting down VM
09-13 16:21:12.502 2223-2230/? D/jdwp: Got wake-up signal, bailing out of select
09-13 16:21:12.502 2223-2230/? D/dalvikvm: Debugger has detached; object registry had 1 entries
09-13 16:21:12.502 570-2302/system_process W/ActivityManager:   Native crash: Segmentation fault
09-13 16:21:12.510 570-592/system_process D/dalvikvm: GC_FOR_ALLOC freed 194K, 36% free 6247K/9628K, paused 8ms, total 8ms
09-13 16:21:12.526 241-241/? D/Zygote: Process 2234 terminated by signal (11)
09-13 16:21:12.558 2304-2304/? D/AndroidRuntime: >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<

Note to Self:
This crash is not 100% reproducible. This occurs 1 out of 5/10 tries?

output from ndk-stack
hideki@hidekis:~/java/android-ndk-r12b$ adb logcat | $ANDROID_NDK_HOME/ndk-stack -sym /Users/hideki/github/couchbase-lite-android/libraries/couchbase-lite-java-forestdb/obj/local/x86
********** Crash dump: **********
Build fingerprint: 'generic/vbox86p/vbox86p:4.4.4/KTU84P/eng.genymotion.20160825.201657:userdebug/test-keys'
pid: 2295, tid: 2317, name: Thread-107  >>> com.couchbase.lite.test <<<
signal 11 (SIGSEGV), code 128 (SI_KERNEL), fault addr 00000000
Stack frame #00  pc 000be90b  /data/app-lib/com.couchbase.lite.test-2/libCouchbaseLiteJavaForestDB.so (fdb_get_byoffset+171): Routine fdb_get_byoffset at /Users/hideki/github/couchbase-lite-android/libraries/couchbase-lite-java-forestdb/jni/../vendor/cbforest/vendor/forestdb/src/forestdb.cc:3657

Note to Self:
Re-compiled forestdb with -O0 option instead of -O2, and re-test.
********** Crash dump: **********
Build fingerprint: 'generic/vbox86p/vbox86p:4.4.4/KTU84P/eng.genymotion.20160825.201657:userdebug/test-keys'
pid: 2488, tid: 2511, name: Thread-110  >>> com.couchbase.lite.test <<<
signal 11 (SIGSEGV), code 128 (SI_KERNEL), fault addr 00000000
Stack frame #00  pc 00136238  /data/app-lib/com.couchbase.lite.test-1/libCouchbaseLiteJavaForestDB.so (fdb_get_byoffset+264): Routine fdb_get_byoffset at /Users/hideki/github/couchbase-lite-android/libraries/couchbase-lite-java-forestdb/jni/../vendor/cbforest/vendor/forestdb/src/forestdb.cc:3657
Stack frame #01  pc 001b0a4e  /data/app-lib/com.couchbase.lite.test-1/libCouchbaseLiteJavaForestDB.so (cbforest::KeyStore::getByOffsetNoErrors(unsigned long long, unsigned long long) const+190): Routine cbforest::KeyStore::getByOffsetNoErrors(unsigned long long, unsigned long long) const at /Users/hideki/github/couchbase-lite-android/libraries/couchbase-lite-java-forestdb/jni/../vendor/cbforest/CBForest/KeyStore.cc:97 (discriminator 1)

    Document KeyStore::getByOffsetNoErrors(uint64_t offset, sequence seq) const {
        Document doc;
        doc._doc.offset = offset;
        doc._doc.seqnum = seq;

        const_cast<KeyStore*>(this)->enableErrorLogs(false);     // Don't log ForestDB errors caused by reading invalid offset
        (void) fdb_get_byoffset(_handle, doc);
        const_cast<KeyStore*>(this)->enableErrorLogs(true);

        return doc;
    }

https://github.com/couchbaselabs/cbforest/blob/f011971619a2e51d9d3794c2cfd54de41641ef24/CBForest/KeyStore.cc#L91-L101

Based on following Test results, this SIGSEGV is caused by Genymotion emulator with  Android 4.x or older.
Tested with
Genymotion:

Android v4.1.1 - NG
Android v4.3 - NG
Android v4.4.4 - NG
Android v5.0.0 - OK
Android v5.1.0 - OK
Android v6.0.0 - OK

Real device

Nexus 6 with Android N - OK
Nexus 5 with Android M - OK
Samusng S3 with Android 4.1.2 - OK

Android Stack Emulator

Android 4.4 (API 19) arm - OK
Android 4.1 (API 16) arm - OK
Android 4.1 (API 16) x86 - OK

Other android apps also face this issue with old Android OSs on  Genymotion.
https://github.com/mapbox/mapbox-gl-native/issues/3494

ref: https://github.com/couchbase/couchbase-lite-java-core/issues/1362

see: https://code.google.com/p/android/issues/detail?id=179410

from one of message
Recompilation with -mstackrealign fixes the problem. Tested with clang and gcc 4.9.

https://code.google.com/p/android/issues/detail?id=222239

Fixed in couchbase-lite-java-forestdb, PR https://github.com/couchbaselabs/couchbase-lite-java-forestdb/pull/88

-mstackrealign Realign the stack at entry. On the Intel x86, the -mstackrealign option will generate an alternate prologue and epilogue that realigns the runtime stack if necessary. This supports mixing legacy codes that keep a 4-byte aligned stack with modern codes that keep a 16-byte stack for SSE compatibility. See also the attribute force_align_arg_pointer, applicable to individual functions.

repo: couchbase/couchbase-lite-java-core


text:
Fixed https://github.com/couchbase/couchbase-lite-android/issues/888

Issue: Crash during 1.1 to 1.2 migration causes permanent loss of data
Changes:

Instead of migrate to actual new name, create temporary database and migrate to temporary db, then rename temporary name to actual name.
If temporary database exists, rollback it to old name before continue to migration. Rollback actually rollback attachment files.
Because of calling backOut() for rollback, importData() method do move file attachment instead of copy file. <- No change.

Do we also need to handle the current broken database upgrade that user is encountering?

If user does not use the app after crash during db upgrade, recovering it is useful. But If user has kept using app after data loss, recovering could cause another data loss. Because of this, I did not add the code to handle current broken database. What do you think?

Actually I don't know the best way to handle this case. Based on the issue (https://github.com/couchbase/couchbase-lite-android/issues/888), it seems like users want to recover the data.

@snej could you do a second review and provide your opinion about handling the current broken database after database update crash?

source: gharchive/pull-request

authors: hideki pasin

license_type: permissive

license_source: github-api


text:
Can't install plugin for ES 2.4.0

Have tried all the URLs but it gives the same error, FILE_NOT_FOUND.

This one works:
./plugin install https://github.com/couchbaselabs/elasticsearch-transport-couchbase/releases/download/2.2.4.0/elasticsearch-transport-couchbase-2.2.4.0.zip

source: gharchive/issue


text:
Some questions : session State / Message Filter

Hi,
Some questions :

Is there a way to check if a DCP MutationMessage is a creation message or an update message ?
How to initialize the session state to stream from from last session disconnect ?

Example,
run connection - stop connection - < Some Updates On COUCHBASE Done > - restart connection
I need to just get < Some Updates On COUCHBASE Done > between the stop and the restart.
Not to getting changes from beginning

wrt to 1) I checked with our Server engineers and this is not possible with DCP at the Moment, so you Need to handle this in your Code for now. What is your use case?
on 2) once I have the new stuff committed it should work quite easy - I'll see if I can add an example as well.

I'll Close this one since for 2) is tracked in #5 , lets discuss there.

authors: belaazim daschl

repo: couchbaselabs/java-dcp-client


text:
Add support for running spatial queries from file

Please look at the latest commit only, the other ones are in other pull requests.

This will move to Gerrit soon, hence closing the pull request.

repo: couchbaselabs/spring


text:
Update test setup to try and get lint & python 3 working.

Test-only changes to try getting the travis build running on the lint and python 3 environments, that were getting ignored before.

cc @ampacker

Seems to have worked.

repo: counsyl/baya

license: mit

license_source: bigquery


text:
Add TypeScript Types.

I have been using this package at work and created some local TypeScript types definition.
If you'd like to include them, I have added them in this PR.
However, I have not tested if they are published correctly to npm.

Great stuff, thanks @bernardobelchior. I'll include this in the next release.

authors: benkeen bernardobelchior

repo: country-regions/country-region-data

license: MIT


text:
Proposed performance improvements by using more async functions as …

…well as skipping sourceMap generation for all chunks that are not english.
@gagoar PTAL — im verifying that this has the impact we want + creates the right application chunks.

verbally accepted by @gagoar

repo: coursera/webpack-multi-output


text:
ci: made version bump respect deployment pipeline format

https://coveord.atlassian.net/browse/KIT-511
I couldn't test the full loop, but I was able to see the files that would normally be committed and they respect the validation rules, the commit message seems to be the only thing that didn't.
Once this is merged, 🤞 that another PR isn't necessary.

I think it would be missing the commit message information about the CHANGELOG.md that can be modified in each subpackage ?
The deployment package documentation says that modified files need to be listed

I was thinking it may be fine since files such as README.md are excluded, but I just looked up the source code of the certifier and it's not the case. I'll add CHANGELOG.md to the exclusions in the commit message.

repo: coveo/ui-kit


text:
Make package executable

Adding the __main__.py file to the package will make possible executing via python -m coveralls.
It helps to run right version of coveralls instead of relying on the PATH configuration.

@Kentzo good call -- I've opened a PR to fix this and will make sure its a part of the next release.

@Kentzo released as of version 1.5.0.

authors: Kentzo TheKevJames

repo: coveralls-clients/coveralls-python


text:
Capitalized helpers

This PR capitalizes Microstate helpers to allow microstates to be instantiated with the same name as the microstate. For example, {{let boolean=(Boolean true)}}
Closes #29

This will pass once rebased on object microstate PR

repo: cowboyd/ember-microstates


text:
update orderbook url and section header

Change section header "Connect to the Orderbook"
Change the orderbook urls to cow protocol ones instead of Gnosis and add link to other urls.

Looking great!

repo: cowprotocol/solver-template-py


text:
no such host

I can see this message in server log:
lookup localhost127.0.0.1 on xxx: no such host
This code seems to be using the server address thinking it's just a port number.
sever/actions.go
SiteURLPort := *config.ServiceSettings.ListenAddress
URL: fmt.Sprintf("http://localhost%v/plugins/%v/api/complete?token=%s", siteURLPort, manifest.Id, p.configuration.Token

Getting the same error. It's nice that this plugin is promoted by mattermost.com (https://mattermost.com/blog/the-mattermost-teams-10-favorite-productivity-hacks-remote-work/), but it just does not work because of this issue...

@ryota38 @brammeleman it works for us in the community server. what is your config for that settings?

The config.json shows:
{```
"ServiceSettings": {
"SiteURL": "",
"WebsocketURL": "",
"LicenseFileLocation": "",
"ListenAddress": ":8065",
"ConnectionSecurity": "",
"TLSCertFile": "",
"TLSKeyFile": "",
...

Looks like a port is assumed, but the variable name is ListenAddress:
siteURLPort := *config.ServiceSettings.ListenAddress

In combination with:
URL: fmt.Sprintf("http://localhost%v/plugins/%v/api/complete?token=%s", siteURLPort, manifest.Id, p.configuration.Token),

This results in the following error:
"level":"error","ts":1587719469.7949903,"caller":"mlog/log.go:174","msg":"Action integration error","path":"/api/v4/actions/dialogs/submit","request_id":"874cnh1k4bnibykxsg3uo3xrfy","ip_addr":"80.101.23.250","user_id":"8hfyyi6zi3dwprt4b6jfjesmpw","method":"POST","err_where":"DoActionRequest","http_code":400,"err_details":"err=Post http://localhost127.0.0.1:8065/plugins/com.cpanato.rent-a-carlos/api/dialog?token=7G6egUxxvWzAPRCukQcSMjGHrMjSci9H: lookup localhost127.0.0.1 on 127.0.0.1:53: no such host"}

So it looks like the value of siteURLPort is set to 127.0.0.1:8065

Thank you for your response.
In my config.json, ListenAddress is "127.0.0.1:8065".
My mattermost server is setuped with bitnami installer (by other person), I feel maybe some trick in bitnami installer process.
P.S. I'm not familiar with GO, so I just patched hosts file... It's working well.

authors: brammeleman cpanato ryota38

repo: cpanato/mattermost-plugin-rent-a-carlos


text:
CPMFindPackage doesn't work with version control

I'm currently using CPM version 0.35.5, and I've found 2 issues with the CPMFindPackage function.
If the dependency is added locally, meaning CPMFindPackage is called and uses cpm_find_package to include the local installation of the package, the declarations are ignored. When calling CPMAddPackage, before downloading from the entered args, it checks if the package has already been declared, and if so, uses those arguments instead. I think CPMFindPackage should do the same. That way the package-lock file could contain version control even for local packages.
The second issue is that in the same scenario, those locally included packages are not added to the package-lock file. I haven't tested it out using CPMAddPackage, but it might have the same issue when it comes to including local dependencies in the package lock.
For an example of when this would be necessary, I'm currently working on a project that needs OpenCV, which is very large and complicated and not fun trying to get it to build using tools like CPM or FetchContent, so I have installed it locally. All other dependencies are set to download only to make sure the build is clean and not getting mixed with local libraries. I've essentially done the following in my CMakeLists.txt:
set(CPM_DOWNLOAD_VERSION 0.35.5)
set(CPM_SOURCE_CACHE ${PROJECT_SOURCE_DIR}/.cpmcache CACHE PATH "")
set(CPM_DOWNLOAD_LOCATION "${CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
file(DOWNLOAD
      https://github.com/TheLartians/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake
      ${CPM_DOWNLOAD_LOCATION}
)
include(${CPM_DOWNLOAD_LOCATION})
set(CPM_DOWNLOAD_ALL ON CACHE BOOL "Download instead of using locally installed packages")
set(CPM_DOWNLOAD_OpenCV OFF CACHE BOOL "Option to download OpenCV vs using local installation")
CPMUsePackageLock(${DEP_MANAGEMENT_DIR}/package-lock.cmake)

### this part added manually to the package-lock
CPMDeclarePackage(OpenCV
    NAME OpenCV
    VERSION 4.6.0
    FIND_PACKAGE_ARGUMENTS "REQUIRED"
)
###

# these are the function calls and their behavior
CPMGetPackage(OpenCV)       # Tries to download instead of using local since getPackage calls AddPackage which ignores the CPM_DOWNLOAD_OpenCV variable
CPMAddPackage(OpenCV ... )  # same as CPMGetPackage
CPMFindPackage(OpenCV)      # Fails due to syntax
CPMFindPackage(${CPM_DECLARATION_OpenCV})  # Adds the correct package

I'm currently using the 3rd option, because it's the only one that actually uses the correct version info, but if I try to update the package lock using cmake --build build --target cpm-update-package-lock as instructed in the readme, the OpenCV section is deleted since cpm_add_to_package_lock is not called within CPMFindPackage. It also kind of defeats the purpose of having a CPMGetPackage function at all if it doesn't work and I have to manually enter CPMFindPackage(${CPM_DECLARATION_${PKGNAME}}) instead of just using the name anyway.

Thanks for raising the issue, I agree that CPMFindPackage and the package lock need some significant work as the project has grown quite a since the original implementation. I'm currently too busy to work on it myself but would welcome any PRs to make the functions more usable and interoperable.


text:
Error: Resource not accessible by integration

Try to run tasks for pull request, but get errors:

Both Add progress bar and Comment if job definition is incorrect  give the same error: Resource not accessible by integration
Any ideas, why it may happen?
Does it have to do smth with my github account settings?

For those, who may face this problem in the future:
Go to your repository Settings -> Actions -> General, scroll down, and make sure, to give read and write permissions for the workflow and click save.

repo: cpp-for-yourself/homeworks


text:
For long notes (and long outlines), allow collapsing and expanding items in the TOC

For long notes (and long outlines), allow collapsing and expanding items in the TOC.
https://discourse.joplinapp.org/t/a-markdown-outline-sidebar-plugin-for-joplin/13364/37

1.4.0 Supported.

repo: cqroot/joplin-outline


text:
Added Loopback connector to clients page

Preview here - https://staging.crate.io/docs/clients/

ACK

authors: ChrisChinchilla tbrandles

repo: crate/crate-web


text:
Change S3ClientSettings Affix Settings to normal Settings

Summary of the changes / Why this improves CrateDB
This pretty much disables the option of keeping the named-clients
Minimal changes are done here so most API is unchanged.
Also continue support credentials being passed with settings:

s3.client.default.access_key
s3.client.default.secret_key

Checklist

[ ] User relevant changes are recorded in CHANGES.txt
[x] Touched code is covered by tests
[x] Documentation has been updated if necessary
[x] CLA is signed
[x] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

@seut please have another look

repo: crate/crate


text:
Faster parsing of dates. Fixes #117

Fixes the format for ISO dates and tries using it before DatatypeConverter. This improves the parsing time by 30 to 40%.
Before (average over 10 iterations in msec)
Average for http://www.foxnews.com/sitemap.xml?idx=26 => 684
Average for http://push.abs-cbn.com/sitemap/2015/ => 238
Average for https://www.novinky.cz/sitemap/sitemap_articles_5.xml => 972
After
Average for http://www.foxnews.com/sitemap.xml?idx=26 => 481
Average for http://push.abs-cbn.com/sitemap/2015/ => 141
Average for https://www.novinky.cz/sitemap/sitemap_articles_5.xml => 657
I also tried java.time (in Java 8) but there was no benefit from it
 return Date.from(java.time.ZonedDateTime.parse(date).toInstant());
Average for http://www.foxnews.com/sitemap.xml?idx=26 => 646
Average for http://push.abs-cbn.com/sitemap/2015/ => 197
Average for https://www.novinky.cz/sitemap/sitemap_articles_5.xml => 1281

Will merge soon unless someone objects
@crawler-commons/owners

repo: crawler-commons/crawler-commons


text:
Reply ASAP -Not working with any browser other than firefox

i am currently working with crawljax latest release(jar file) on cmd prompt. its only working with firefox. i want to change the browser how can .. tried everything from setting environment to installing drivers of chrome still not able to do that help !!!!
cmd command - java -jar crawljax.cli.3.6.jar "http://www.google.com" "1"

https://github.com/crawljax/crawljax/blob/master/cli/README.md

In #512 WebDriverManager is used to provide the latest drivers. I haven't tried the command line, but programmatically it works for me

authors: TobEnd shivam-shipankar tsigalko18

repo: crawljax/crawljax


text:
三星选择照片旋转问题

三星拍照设置setCorrectImage方法可以解决拍照照片被旋转的问题，但是选择照片完后依旧是一张被旋转的照片，除非设置裁剪参数裁完后照片才不会旋转。
请问下这个问题怎么解决？

开启选择纠正：旋转纠正

开启了旋转纠正还是不起作用？

三星手机，我就用系统的裁切🤕
builder.setWithOwnCrop(!"samsung".equals(Build.BRAND));

authors: crazycodeboy gupengcheng szitguy weikeshidai

repo: crazycodeboy/TakePhoto


text:
Windows support : fail to build with  "Error: Cannot find module '../../package'

A node app based on express & mongodb, fails to build with the attached log (it seems it cannot read packages.json properties (i.e. version)).
I have not experience with nexe, so it is possible I'm missing something.
Thanks
Lorenzo

I can repro this..   It's in an express package.  It seems to be failing on any require that refers to a json file without extension..    So, that's a require('../../package')...    But it's not finding package.json, presumably it's looking for package.js and failing.
I can repro this by doing a require to a .json of my own without using the extension...   This is holding me up, and why I had forked the project.
Now that I see it's under active development again, I'd be happy to help.

@CKarper Thanks for the info, I'm trying my best to sort out the "mess" this project has been left in, any help is appreciated. As this is, obviously, a big issue I'll see what I can do about this but if you want to go ahead and patch this (i'd presume it's in bundle.js) feel free because my major focus is adding native module support right now.
Regardless, thanks for the info!

Looks like it's a module-deps issue.
I can repro this with a simple app just pointing to stylus.   How do I handle an upstream issue?   I can submit a pull req to them, but if they're slow going, do we monkey patch it or something?  Ugh.

I'd submit a pull request but while we wait we work on a method that assumes it won't be fixed soon just incase it takes along time.

authors: CKarper RainbowDashDC lorenzotsi

repo: crcn/nexe


text:
Update theme release version string, minimize the css.

I was not aware that we are setting a version string in our functions.php for cache busting. I'm making this a constant, changing the version string, and adding something to the README about it.

https://github.com/creativecommons/creativecommons.org/issues/516?_pjax=%23js-repo-pjax-container

https://github.com/creativecommons/creativecommons.org/issues/516?_pjax=%23js-repo-pjax-container

prettu-firewings-master (1).zip
prettu-firewings-master (1).zip
clojure-1.8.0.zip
fileopen_plugin_reader_8.0.0.520.zip
fileopen_plugin_reader_8.0.0.520 (1).zip

fileopen_plugin_reader_8.0.0.520 (3).zip

prettu-firewings-master (2).zip
prettu-firewings-master (2).zip

This seems done.

authors: Hawkmorgan101 fmann kgodey


text:
Delete Markdown files from the repo

Since the styleguide has been deleted, the repository contains a lot of redundant .md files. Being incorrect, outdated and misleading, they must be deleted.

I'd like to take this up

@jshreyans go ahead, this shouldn't take long.

@dhruvkb If this is taking time, I would like to give it a try.
Thank you

@techievivek we generally have a one week of inactivity rule before the issue is unassigned. It would be a good idea to find another issue in the meantime.

@dhruvkb Ok sure. Thank you.

@dhruvkb Sorry for the delay. Will send a PR today. Just to clarify, by the redundant md files, we mean the files that accompany each component in their respective folders right?

authors: dhruvkb jshreyans techievivek

repo: creativecommons/vue-vocabulary


text:
Parser doesn't support dot-separated namespaces

The namespace keyword seems to accept anything you give it, even though https://thrift.apache.org/docs/idl#namespace defines it to be one-of from a list.

This seems to warn (in strict and non-strict mode) if the namespace doesn't have a generator or if the generator doesn't accept the sub-namespace.

^ I think that would be the job of the compiler though, not the parser.  Thoughts?

well it would be the job of the code generator / compiler to parse / manage the namespace.  the parser should just provide it / manage it as a string

Fixed by #60

authors: nnance phated

repo: creditkarma/thrift-parser


text:
Missing User or token after changing the sensor

Hello,
after changing the sensor (Freestyle Libre 3) I get an Error: "Missing user or token".
Before everything works really fine and I was so happy with the app.
I didn't changed anything - only new sensor. LibreView works and has no Bluethooth connection.
Scanning the sensor also does not solve the problem. Scanning is sucessful but still the same error.
What can I else do?
Thanks to all for any hint!

The last Settings menu item lets you get the file “AllLogs.log”: it is in simple text format so you can paste it here after editing out your sensitive personal data.

authors: AnkeToni gui-dos

repo: creepymonster/GlucoseDirect


text:
[HDRP] Weird caustics in latest crest

After upgrading to the latest august update I noticed that the caustics covers much more area when submerged.
Caustics above sea level:

Caustics below sea level:

I remember that the caustics looked the same before the upgrade (above and below sea level were identical).
Does this look like intended or is this a bug?

I have not understood. What do you mean by covers much more area?
We did some tweaks to the caustics to make them work over a wider range of lighting conditions, so they might look a bit different. The above does not look wrong to me, i dont think.

If we look at the caustics below sea level, we see that the blue and red refractions occupy more area (are larger) than when we see the same above the surface.
This was not the case before the update and I was wondering why the caustics are different when seen below the surface.

What version of Crest did you upgrade from?
Caustics for HDRP has always looked different between above and below water (unless you are upgrading from a very early Crest HDRP version where distortion underwater was broken). From above water we use refraction from the surface normals to distort the caustics. But from below we use a distortion texture.

I think I have upgraded from the version that was current at the beginning of August. I did not notice the effect with that version.
This is fine with me. I just wanted to know if it isreally normal or if it is a bug. Thanks for the support.

authors: cloakedch daleeidd huwb

repo: crest-ocean/crest


text:
Fixed version conflict for regex package due to full year in version

As a result it will be compatible with installations / projects using a 2024.x.x version of the regex package
Fixes #1004
p.s.
Alternativly the project maintainers could decide to update the package to a 2024.x.x version
=> https://pypi.org/project/regex/2024.4.16/#history

Thanks @matthias ! Just merged another PR fixing this! Great catch!

authors: joaomdmoura matthias

repo: crewAIInc/crewAI


text:
Fixed non-serializable error in JavaMultilayerPerceptronClassifierSuite

I have failed to find the change between Scala 2.10 and 2.11 causing this, but operationally the issue originates from SparkSession.createDataFrame which creates a (lazy!) Seq
referencing a non-serializable java.util.ListIterator.
I suspect one of the collection traits was change, but given how many of them are in the standard library, it is hard to tell which one. Here is a potential candidate
scala/scala@0bb8a139e9c46e3e1b4bd7af5dd11cb689ebbe8e.

Could you just add a tag in the title so we do not forgot to revert it once we will migrate to scala 2.11?
Somethink like [CRITEO - Scala 2.10 Fix]
Otherwise LGTM

authors: ashangit superbobry

repo: criteo-forks/spark


text:
Gerrit 2.11 stable branch needed

Current automerge-plugin master isn't building with Gerrit 2.12 (master) because still uses the Gerrit 2.11 APIs.
We should have:

stable-2.11 branch
master branch with required API changes

I've forked the project on GerritForge/automerge-plugin with the stable-2.11 branch as GitHub does not allow the create a "branch create" request :-)

@debanne @dopuskh3 why don't we migrate this plugin to gerrit-review.googlesource.com? Every proposed change will be automatically published and advertised in the Gerrit home page and will encourage more contributors to give their input :-)

I created the stable-2.11 branch. What would replace the travis builds if we move to gerrit-review.googlesource.com? Do you have a pointer about the process to add a new plugin in gerrit-review?

@debanne yes, it is https://gerrit-ci.gerritforge.com, the YAML file to define a job is quite simple (e.g. https://gerrit.googlesource.com/gerrit-ci-scripts/+/refs/heads/master/jenkins/gerrit-buck-plugin-admin-console.yaml). Much simpler than Travis ;-)

@debanne any feedback? Would you like to move to gerrit-review.googlesource.com?

Hi Luca, yes it looks like a very good idea :)

I requested to the Gerrit mailing list to move the project there: see https://groups.google.com/forum/#!topic/repo-discuss/iRQY41fF35s

authors: debanne lucamilanesio

repo: criteo/automerge-plugin


text:
arreglar issue de halftone en lateralImageEditor

si estamos en http://localhost:3000/halftone
el halftone funciona,
pero luego la misma función en el http://localhost:3000/lateralImageEditor
no tiene cambios, arreglar eso

LISTO


text:
Round Launcher Icon

Instead of showing the old square icon in a circle on new Android versions we should implement adaptive launcher icons or at least a true round icon. (not sure if there's a difference)

implemented in #240

authors: cbalster zutrinken

repo: criticalmaps/criticalmaps-android


text:
Ability to name a color and edit the name of the color

Depends on #109

Hi @kamalkishor1991  , could you explain this better?

Right now the name of the color is shown for colors in palette library but color name is optional and user does not have a ability to add new to a color in a palette.
We want to provide that feature.
We can add it as part of color details screen(Second screenshot) as a new field called name which is editable.

Names are not assinged on the server side. We need edit name functionality in the app that calls the server api to rename.

Where i will get api for this ?

repo: croma-app/croma


text:
Empty File under Replication Codes/

Each file under Replication Codes/ folder is empty. Is that correct?

Good Catch! Thanks. It should be working now.
Carlos
On Feb 15, 2021, 6:06 AM -0300, Stenford notifications@github.com, wrote:

Each file under Replication Codes/ folder is empty. Is that correct?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

authors: DavideStenner crondonm

repo: crondonm/TrackingR


text:
Stock market related features

It would be great if there were functions related to in-game stock market. They could be useful for following mods

Mods adding more Lester's assasination missions
Mods adding more stocks to trade
Mods adding more random events resulting in stock market tips as a reward
Mods linking stock prices with player actions in other way

Is it possible to add those functions in the near future?

Adding support for in-game stock market would not help not other many people IMO. Besides, I don't have idea how ysc scripts for the market work.
The contribution guide for Unreal Engine says Keep It Universal but this suggestion would be too particular to make us be willing to maintain even if this is possible to implement.

repo: crosire/scripthookvdotnet

license: Zlib


text:
Fixed typo on class name

Fixed typo in examples/asyncio/wamp/overview.

Change looks good to me.

The class is used by the name "Component" like below.
if __name__ == '__main__':
    runner = ApplicationRunner(
        environ.get("AUTOBAHN_DEMO_ROUTER", u"ws://127.0.0.1:8080/ws"),
        u"crossbardemo",
    )
    runner.run(Component)

repo: crossbario/autobahn-python


text:
"new API" improvements

This re-factors the "Component" API to take out the setup= and main= kwargs in favour of just a main=. If you want to do what "setup" allowed, you just add an "on_join" handler. This simplifies the component code.
Also re-factors the _run helper (which is now aio/tx generic) and the Twisted implementation. So the public API for this would be exposed as autobahn.twisted.wamp.run or autobahn.asyncio.wamp.run.
(I also have some code based on top of this to re-introduce a better decorator style for both the "on_join" etc notifications and for register/subscribe with options= so the "setup" use-case could be like @component.on_join(my_setup_function)).

Codecov Report

Merging #795 into master will increase coverage by 2.02%.
The diff coverage is 52.14%.

@@            Coverage Diff            @@
##           master    #795      +/-   ##
=========================================
+ Coverage   58.37%   60.4%   +2.02%
=========================================
  Files          71      71
  Lines       11797   11841      +44
  Branches     1871    1860      -11
=========================================
+ Hits         6887    7152     +265
+ Misses       4315    4068     -247
- Partials      595     621      +26

Impacted Files
Coverage Δ

autobahn/util.py
49.78% <ø> (+5.95%)
:arrow_up:

autobahn/twisted/wamp.py
44.48% <ø> (+2.36%)
:arrow_up:

autobahn/wamp/message.py
61.71% <100%> (+2.29%)
:arrow_up:

autobahn/twisted/test/test_component.py
96.8% <100%> (+21.8%)
:arrow_up:

autobahn/wamp/protocol.py
52.76% <14.28%> (+2.61%)
:arrow_up:

autobahn/wamp/component.py
47.63% <25.67%> (+9.6%)
:arrow_up:

autobahn/twisted/component.py
40.32% <50%> (+22.01%)
:arrow_up:

autobahn/websocket/protocol.py
46.38% <0%> (+0.83%)
:arrow_up:

... and 6 more

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 2db7a40...3cfcf7f. Read the comment docs.

authors: codecov-io meejah


text:
Join all threads created in tests

A lot of tests created threads but never waited (joined) on them. As a
result if one of those threads panicked they test still passed and the
test runner exits with a success exit code.
Updates #321.

@stjepang done.

The failure should be fixed in #323.

bors r+

authors: Thomasdezeeuw stjepang

repo: crossbeam-rs/crossbeam


text:
Cluster.kafka cannot be created

What happened?

The resource Cluster.kafka cannot be created
How can we reproduce it?

just use the example provided, you can change some fields to more reasonable values. but it doesn't make any difference. The reconcile failed before it can start create.
(https://github.com/crossplane-contrib/provider-aws/blob/master/examples/kafka/cluster.yaml)
What environment did it happen in?
Crossplane version:  (doesn't matter)

Here is why it's going wrong:
The initializer of the managed resources will set the external-name annotation.
The observe function uses the external-name as the arn of the cluster to do the DescribeCluster. But a user is only allowed to describe the arn under his/her own useraccount.
Say a user is 670409000460, and the region is ap-southeast-1.
Then the user can only describe the resources under "arn:aws:kafka:ap-southeast-1:670409000460:cluster/bla/bla"
So the Observe failed with 403.
I tried a way to set the external-name by my self to avoid it. But then I jump into annother error:
  - lastTransitionTime: "2022-12-26T09:15:17Z"
    message: |-
      observe failed: failed to describe Cluster: NotFoundException: The requested resource doesn’t exist.
      {
        RespMetadata: {
          StatusCode: 404,
          RequestID: ""
        },
        InvalidParameter: "clusterArn",
        Message_: "The requested resource doesn’t exist."
      }
    reason: ReconcileError
    status: "False"
    type: Synced

So the here's the conclusion: the reconciler can only work correctly when external-name is not set, or set to correct value. While the initializer set it to the wrong value by default.
func defaultMRManaged(m manager.Manager) mrManaged {
	return mrManaged{
		CriticalAnnotationUpdater: NewRetryingCriticalAnnotationUpdater(m.GetClient()),
		Finalizer:                 resource.NewAPIFinalizer(m.GetClient(), FinalizerName),
		Initializer:               NewNameAsExternalName(m.GetClient()),
		ReferenceResolver:         NewAPISimpleReferenceResolver(m.GetClient()),
		ConnectionPublisher: PublisherChain([]ConnectionPublisher{
			NewAPISecretPublisher(m.GetClient(), m.GetScheme()),
			&DisabledSecretStoreManager{},
		}),
	}
}

//...

// Initialize the given managed resource.
func (a *NameAsExternalName) Initialize(ctx context.Context, mg resource.Managed) error {
	if meta.GetExternalName(mg) != "" {
		return nil
	}
	meta.SetExternalName(mg, mg.GetName())
	return errors.Wrap(a.client.Update(ctx, mg), errUpdateManaged)
}

Solution
We should add WithInitializers options to override the unintended default intializers

#1551 seems provides a more complete solution

updated according to #1551. If #1551 got no progress, plz merge this. I'm hoping to use this feature soon

/reopen

Hey I am still unable to create kafka cluster with v0.36.0 which includes the kafka initializer fix. I use crossplane v1.10.1. eks version v1.23.13-eks-fb459a0.
The error message is a bit different:
        cannot update managed resource: Cluster.kafka.aws.crossplane.io
        "aws-kafka-dev" is invalid: spec.forProvider.clusterName: Required value

Anyone experiencing the same? Note the value for spec.forProvider.clusterName is given. No idea why it complains about it.
The output of kubectl describe cluster.kafka.aws.crossplane.io/example
Name:         example
Namespace:
Labels:       <none>
Annotations:  <none>
API Version:  kafka.aws.crossplane.io/v1alpha1
Kind:         Cluster
Metadata:
  Creation Timestamp:  2023-01-16T13:17:53Z
  Generation:          1
  Managed Fields:
    API Version:  kafka.aws.crossplane.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          f:crossplane.io/external-name:
      f:status:
        .:
        f:atProvider:
        f:conditions:
    Manager:      crossplane-aws-provider
    Operation:    Update
    Subresource:  status
    Time:         2023-01-16T13:17:53Z
    API Version:  kafka.aws.crossplane.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .:
          f:kubectl.kubernetes.io/last-applied-configuration:
      f:spec:
        .:
        f:deletionPolicy:
        f:forProvider:
          .:
          f:brokerNodeGroupInfo:
            .:
            f:clientSubnets:
            f:instanceType:
            f:securityGroupRefs:
            f:storageInfo:
              .:
              f:ebsStorageInfo:
                .:
                f:volumeSize:
          f:clusterName:
          f:configurationInfo:
            .:
            f:arnRef:
              .:
              f:name:
            f:revision:
          f:kafkaVersion:
          f:numberOfBrokerNodes:
          f:region:
          f:tags:
            .:
            f:myKey:
        f:providerConfigRef:
          .:
          f:name:
    Manager:         kubectl-client-side-apply
    Operation:       Update
    Time:            2023-01-16T13:17:53Z
  Resource Version:  179928293
  UID:               393158b1-9ea6-42dd-850c-583e6a0e60f8
Spec:
  Deletion Policy:  Delete
  For Provider:
    Broker Node Group Info:
      Client Subnets:
        subnet-XXXXXXX
        subnet-XXXXXXX
      Instance Type:  kafka.t3.small
      Security Group Refs:
        Name:  aws-kafka-dev-msk-sg
      Storage Info:
        Ebs Storage Info:
          Volume Size:  1
    Cluster Name:       example
    Configuration Info:
      Arn Ref:
        Name:                aws-kafka-dev-configuration
      Revision:              1
    Kafka Version:           3.2.0
    Number Of Broker Nodes:  2
    Region:                  eu-west-1
    Tags:
      My Key:  myValue
  Provider Config Ref:
    Name:  staging
Status:
  At Provider:
  Conditions:
    Last Transition Time:  2023-01-16T13:17:53Z
    Message:               cannot update managed resource: Cluster.kafka.aws.crossplane.io "example" is invalid: spec.forProvider.clusterName: Required value
    Reason:                ReconcileError
    Status:                False
    Type:                  Synced
Events:
  Type     Reason                           Age                From                                     Message
  ----     ------                           ----               ----                                     -------
  Warning  CannotInitializeManagedResource  25s (x6 over 54s)  managed/cluster.kafka.aws.crossplane.io  cannot update managed resource: Cluster.kafka.aws.crossplane.io "example" is invalid: spec.forProvider.clusterName: Required value

Let me Test again i will update - later today

Seems to be the logic problem in Create
func (e *external) Create(ctx context.Context, mg cpresource.Managed) (managed.ExternalCreation, error) {
	cr, ok := mg.(*svcapitypes.Cluster)
	if !ok {
		return managed.ExternalCreation{}, errors.New(errUnexpectedObject)
	}
	cr.Status.SetConditions(xpv1.Creating())
	input := GenerateCreateClusterInput(cr)
	if err := e.preCreate(ctx, cr, input); err != nil {
		return managed.ExternalCreation{}, errors.Wrap(err, "pre-create failed")
	}
	resp, err := e.client.CreateClusterWithContext(ctx, input)
	if err != nil {
		return managed.ExternalCreation{}, awsclient.Wrap(err, errCreate)
	}

	if resp.ClusterArn != nil {
		cr.Status.AtProvider.ClusterARN = resp.ClusterArn
	} else {
		cr.Status.AtProvider.ClusterARN = nil
	}
        // here we use the response to overwrite the spec
	if resp.ClusterName != nil {
		cr.Spec.ForProvider.ClusterName = resp.ClusterName
	} else {
		cr.Spec.ForProvider.ClusterName = nil
	}
	if resp.State != nil {
		cr.Status.AtProvider.State = resp.State
	} else {
		cr.Status.AtProvider.State = nil
	}

	return e.postCreate(ctx, cr, resp, managed.ExternalCreation{}, err)
}

Below the commented line, we use the response to overwrite the spec, which is a little bit unreasonable. I wonder if the response didn't provide the clusterName when first create. And controller tried to overwrite the clusterName to nil and failed.
The error msg says cannot update managed resource, so it's very likely this case.

@HotThoughts
Cloud you check your aws console whether the MSK cluster is already created?

Hi @haorenfsa , yes I checked aws console. No MSK cluster is being created by crossplane.

Add ref of related patch: #1624

@HotThoughts  According to others tests, the creation should be Okey.
So creation failure of your kafka resource is very likely caused by invalid / missing parameters in your CR.
But there's indeed a bug when update the CR status after CreatCluster called, so we can only find out after this bug get fixed.
My guess is that the the clientAuthentication shoud add at least on kind of authentication, for example:
You can try out or just wait for the patch.
spec:
    clientAuthentication:
      unauthenticated:
        enabled: true

we will publish tomorrow a new fix release  https://github.com/crossplane-contrib/provider-aws/issues/1638
that Observe / describe is working!

I am getting the same issue in v0.36.1 / #1638
The creation is not surfacing any errors calling AWS with provided configuration. It would be helpful to update the CR with status if AWS api failures

authors: HotThoughts drewwells haarchri haorenfsa

repo: crossplane-contrib/provider-aws


text:
GCP Bucket, lifecycle feature: Invalid value: "null":

What happened?
I'm trying to create a life cycle for a bucket, but I got this message error:
cannot update object: Bucket.storage.gcp.crossplane.io "example-bucket" is invalid: spec.lifecycle.rules.condition.createdBefore: Invalid value: "null": spec.lifecycle.rules.condition.createdBefore in body must be of type string: "null

createdBefore is not required. https://doc.crds.dev/github.com/crossplane/provider-gcp/storage.gcp.crossplane.io/Bucket/v1alpha3@v0.16.0#spec-lifecycle-rules-condition
How can we reproduce it?
    apiVersion: storage.gcp.crossplane.io/v1alpha3
    kind: Bucket
    metadata:
      name: example-bucket
    spec:
      storageClass: STANDARD
      location: US-CENTRAL1
      deletionPolicy: Delete
      lifecycle:
        rules:
        - action:
            type: Delete
        - condition:
            ageInDays: 180
      providerConfigRef:
        name: gcp-provider-example
      writeConnectionSecretToRef:
        name: example-bucket-secret
        namespace: example-app

What environment did it happen in?
Crossplane version: v0.16.0
Include at least the version or commit of Crossplane you were running. Consider
also including your:

Kubernetes version (use kubectl version) v1.17.12
Kubernetes distribution (e.g. Tectonic, GKE, OpenShift) GCP

@mscottini Thanks for raising this. Are you able to confirm whether the issue persists with the latest provider-gcp release (v0.17.1)?

I think this may be a dup of https://github.com/crossplane/provider-gcp/issues/355 and should be fixed by https://github.com/crossplane/provider-gcp/pull/356

Aha - that seems very likely. I'll close this issue and we can allow follow #355.

authors: hasheddan mscottini negz

repo: crossplane/provider-gcp


text:
Add noop controller, support initial development loop

Addresses https://github.com/crossplaneio/crossplane/issues/674
Overview
This changeset adds a first pass at a stack with a kubebuilder2-based controller, with support for all of the phases of stack development. The controller doesn't do anything, other than watching for its custom type and logging that it saw it.
There are a few patterns which have been established in this changeset for the local development of stacks. These are subject to change in the future.
Testing done
A lot of make local-build && make install locally and making sure the controller's deployment spins up properly.
Notes for reviewers
Since this is a codebase in early development and with no users, I'm not going to necessarily block merging on waiting for a review. At the same time, if you have any feedback or suggestions, please add them even if the code is already merged, and I'll incorporate them into future changesets!

I'm going to move ahead with merging this while I work on adding the wordpress pressing functionality, but feel free to leave comments here for future consideration!

repo: crossplaneio/sample-stack-wordpress


text:
[Polymer][DEP] Add Photo page.

BUG=https://crosswalk-project.org/jira/browse/XWALK-6890

@jondong PTAL

LGTM, merging

authors: halton jondong


text:
Airtable Polling

Polling
Creates a new worker that knows how to periodically poll Airtable. This Relies on 2 fields in the Airtable table and provides a 3rd [1]:

Meta: Stores the last values for the row. This is used to determine what has changed and lets you see what the changes were.
Last Modified: Set up to be an automatic Last Modified field on Airtable's side. This lets us easily poll for changed/new rows by keeping track of the max Last Modified we've seen with a small overlap. [2]
Last Processed: Date field that holds the last time this record was processed through the system [2].

The basic flow is to:

Find all records where lastModified > the last observed lastModified minus an overlap. This will return all rows that have changed and some that haven't (that fall in the overlap)
Check to make sure that non-meta columns have actually changed.
Update the record's lastProcessed and meta.lastValues to reflect what the state is currently.
Emit the records that have changed to the caller

Notes

You can run it like so:

npm run local:airtable-sync

> mutual-aid-app@ local:airtable-sync /Users/alex/devel/slack-app
> NODE_ENV=dev node ./src/workers/airtable-sync/worker.js

Starting airtable-sync.requests
Found 1 changes in Requests
1 moved from Dispatch Started -> Delivery Needed
Found 0 changes in Requests

I didn't end up going with the fancy API for responding to changes. I was playing around with it a bit and I think that we should get some use-cases implemented before we decide what that is going to be. I volunteer to refactor it when that time comes.
I did add some helpers to the returned records that let you easily ask them about which fields have changed and what their values are, which makes it a little bit easier at least: https://github.com/crownheightsaid/mutual-aid-app/pull/10/files#diff-5998397ba9505af6ba775adb2b878334R42-R54
You can also start the worker in the express process: AIRTABLE_SYNC=5000 npm start

Slack

I just sort of ... made something up. The block editor is pretty cool!

Ultimately what do we want the slack message to look like?
We are missing some fields in the airtable that are in the messages that are being manually posted now: name and a public-facing request description (vs. notes).

We can rip out the slack part, I wanted to leave it in for the review you you could see the poller being used.

Having @display name in the Volunteers base doesn't seem like enough to mention users without problems because names with spaces are handled poorly, so it looks up the slack user based on email address at the moment. This requires the users:read.email scope.

If you want to send the message for a single Request you can run:
node ./src/workers/airtable-sync/newDeliveryRequest.js 1, where in this case 1 is the Request ID of the Request.

[1]

[2] These need to be set up as With Time / 24HR / UTC in Airtable
Resolves: #5

Having @display name in the Volunteers base doesn't seem like enough to mention users without problems because names with spaces are handled poorly, so it looks up the slack user based on email address at the moment. This requires the users:read.email scope.

We can backfill Slack's UID with ChangeDetector

I'd love to get this in and be able to play around with it. if you comment out the slack posting part, i think we should merge this ASAP

Alrighty, I took out slack and made the changes you suggested. Thanks for the feedback, I was a little foggy when writing some of those comments!

This is an awesome addition and I can't wait to start working with it. Given urgency, I'm going to merge. After chatting with @mab253  I think she would agree.

authors: alexquick mjmaurer

repo: crownheightsaid/mutual-aid-app


text:
Support non-git paths

I would like to bundle some cookiecutter project templates with a developer scaffolding/workflow tool that I'm creating. I realized it would be wonderful if the scaffolding part of this tool could help merge in template updates. This is when I discovered cruft and tried to integrate the cruft.create and cruft.update API's into the tool.
Unfortunately, cruft seems to rely on the template being a git repo. The installed path of a python module does not contain the git repo stuff, so cruft is unable to create the template from a sub-directory of the install location. Here's a reproduction of what I'm talking about with all the complexity of the tool that I'm working on abstracted away:
mkdir new-folder
cd new-folder
echo '{"var": "blah"}' > cookiecutter.json
mkdir {{cookiecutter.var}}
touch {{cookiecutter.var}}/something.txt
cruft create . --output-dir=../plz-work

Error: Unable to initialize the cookiecutter using /private/tmp/new-folder! Failed to clone the repo. stderr: 'fatal: repository '/private/tmp/new-folder' does not exist
'

It seems local paths do not work if the path does not contain a git repo. I believe the error message is from git clone failing. Cookiecutter can generate this okay. #110 mentions that local paths are meant to be supported, but it seems the library is limiting this to cloned git repositories only? Is this intentional? Or just a missing feature?
As a workaround, I tried to cruft.link after using cookiecutter to generate the template; however, that results in the same error expecting a git repo.
I investigated why this might be and realized that the .cruft.json file is tracking the commit ref of the git repo. Presumably, this is used to quickly detect the presence of differences during updates? I'm wondering if it would be possible to null this for local paths?
Thoughts? Ideas? Must the templates be git repositories for the update feature to function?

Cruft only works with git templates. Otherwise it doesn't have any way to track which template revision the generated project is on and which one to update to. For cruft to track and find diffs between two template versions, the template itself needs to be a git repository. If you only want to generate a one off project from a non git template, just plain cookiecutter should work.

In hindsight, I realize it was a silly idea to bundle the templates with the tool that I'm making. I would have had to ship every version of each template bundled with it in order to do the 3-way diffs for merging. It does make sense to give each of those their own repo. Thanks!

I've come across this issue with a monorepo maintaining some templates.
Is it possible to create a project based off a path within a git project?

I agree with @gregl83.  I'm also working on a monorepo and would like to have some templates within the repo that the many micro services are built from and updated when I update the template.  Maybe cruft isn't the tool for this, but cookiecutter doesn't seem to have these update and diff options.

repo: cruft/cruft


text:
returns error when run  scripts "creat_cita_config.py -h"

When I run command : "creat_cita_config.py -h " in terminal,
it returns error like this :
Traceback (most recent call last):
File "./scripts/create_cita_config.gy", line 12, in
import toml
ModuleNotFundError: No module named 'toml'

Please use docker. You can run it like './env.sh scripts/create_cita_config.py'
Check the getting_started

This error occurs because docker container was not running. Fixed just by runnig command "env.sh"

repo: cryptape/cita


text:
Support '\xXX' notation for Chars

Discussion
String literals already support the \xXX hex byte notation, but Char literals do not. Instead you must type \u{XX}, which is kind of cumbersome. It would be more consistent to allow writing Char literals using the traditional \xXX notation.

@straight-shoota I think it would be possible to technically express ASCII hex bytes using \xXX but have Crystal implicitly convert them to Unicode Chars underneath. This would allow easily expressing ASCII bytes such as \x00 or \xff.

ˋ0x00ˋ can already be expressed as ˋ\0ˋ. ˋ0xFFˋ is not a valid codepoint, neither in ASCII nor Unicode. All ASCII characters are also Unicode characters, so there is technically no conversion between the two.

Ah I did not know that Crystal supported '0xXX' Char literal syntax. Most other languages adopted the C-style of Char literals, '\xXX', which is why most people are familiar with that syntax and why I was confused by Crystal not supporting '\xXX' syntax.

Yeah, C's ˋcharˋ type is fundamentally different from Crystal's ˋCharˋ. C's ˋcharˋ, it's just an unsigned 8-bit integer. In Crystal, ˋCharˋ represents a unicode codepoint.

Still seems odd to support the '0x00' syntax, but not say char : Char = 0x00 without the single quotes. It also still seems inconsistent to support \xXX in Strings, but not single Chars.

I think that idea is that, going forward, there will be an effort to make it impossible to create a String instance that's not valid UTF-8. That would mean you won't be able to use \xXX in strings after that (so instead of adding \xXX somewhere else, it will actually be removed from existing places.)
That said, I can't really imagine how would that work.

Still seems odd to support the '0x00' syntax

'0x00' is not valid syntax. The character with the codepoint 0 (i.e. 0x00) can be represented as \0.

but not say char : Char = 0x00 without the single quotes

The syntax for that is char : Char = 0x00.ord (or '\u{0}', or in this special case, '\0').

It also still seems inconsistent to support \xXX in Strings, but not single Chars.

\xXX in string literals is a workaround. But that workaround is unnecessary in char literals.

@asterite wouldn't that effect the ability to explicitly define binary Strings, which are not valid UTF-8, in Crystal code?

U+00FF is a valid UTF-8 codepoint, so \u{FF} is correct (ÿ). However 0xFF is never part of any valid UTF-8 byte sequences, and \x represents the latter. If Char literals follow String ones in this aspect, then:

The compiler needs to detect and reject char literals that encode multiple UTF-8 codepoints, e.g. '\x41\x42'.
Any invalid UTF-8 byte sequence is mapped to U+FFFD.
It follows that if a Char literal containing multiple \x's is not valid UTF-8, it is also invalid as a whole because it maps to U+FFFD plus something.

None of these properties are really useful at all.

Closing this discussion. Multiple arguments have shown that we should not implement this proposed change. It's not considered beneficial.
There are simple and practical alternatives to \x escape sequences in char literals: \u escape sequences and hex number literals char conversion. Instead of '\xXX' you can write '\u00XX', 0xXX.chr or 0xXX.unsafe_chr.

\u00XX is still unusual/unfamiliar syntax and 0x00.chr isn't literal as it involves a method call.

authors: HertzDevil asterite postmodern straight-shoota

repo: crystal-lang/crystal


text:
Improve reporting format of Benchmark.ips

With #5522 merged, the reports from Benchmark.ips look like this:
  one   1.33M (753.32ns) (± 7.90%)  624 B/op  104.55× slower
  two   3.62M (276.15ns) (± 2.50%)  209 B/op   38.33× slower
three 138.79M (  7.21ns) (± 9.09%)    0 B/op         fastest

I've always thought the output format is a bit misleading, as values like 1.33 M can easily be interpreted as a size in bytes - this is for example used in the output of ls -lh.
Now that there is really a memory size included in the IPS output, this feels even more pressing.
I have also a few other ideas, please feel free to add suggestions.

Add a unit op/s for the first field, making it look like this:

  one   1.33M op/s (753.32ns) (± 7.90%)  624 B/op  104.55× slower
  two   3.62M op/s (276.15ns) (± 2.50%)  209 B/op   38.33× slower
three 138.79M op/s (  7.21ns) (± 9.09%)    0 B/op         fastest

The two parenthesised values for time per op and stdev look strange. Maybe we should just remove ) ( in between. It wouldn't change the

  one   1.33M (753.32ns ± 7.90%)  624 B/op  104.55× slower
  two   3.62M (276.15ns ± 2.50%)  209 B/op   38.33× slower
three 138.79M (  7.21ns ± 9.09%)    0 B/op         fastest

Larger values for allocated bytes are hard to read. It should probably better be formatted with an SI prefix as it is already used for the number of instructions per second. It would probably be worth extracting this number formatting to a more general method available in the stdlib.
Long names make the layout look really werid. There could be a linebreak inserted after a name exceeding X number of characters. But this is more effort and probably not really worth it.

Weird idea... what about adding a header?
Name   ops/s    time/op           memory/op  ratio
-----------------------------------------------------------
  one    1.33M  753.32ns ± 7.90%  624 B/op   104.55× slower
  two    3.62M  276.15ns ± 2.50%  209 B/op    38.33× slower
three  138.79M    7.21ns ± 9.09%    0 B/op          fastest

But I'm fine with any suggestion here, they all seem to be an improvement.

authors: jhass straight-shoota


text:
Guess types from T.method, if T.method has a return type annotation

This change makes it so that this:
class Bar
  def self.from_string("hello") : Bar
    Bar.new # or something more complex
  end
end

class Foo
  def initialize
    @value = Bar.from_string("hello")
  end
end

compiles without needing a type annotation on @value of Foo because Bar.from_string has itself a return type annotation.
This rule is only applied if the expression is T.method(...), where T must be a constant or a generic type (like Foo or Foo(Int32)). In something like local_variable.method, or even T.method1.method2 the rule won't be applied.
Given the proper type annotations in these "factory" methods, a lot of type annotations won't be needed. Factory (or factory-like) methods are very useful and common. For example:

Time.now
Array(Int32).from_json(...)
Fiber.current
Dir.glob("...")
Base64.encode(...)
(and many others)

Now, let's see the pros and cons.
Pros:

Only one type annotation is needed for a method's return type, instead of having to add this annotation in every type that sets an instance variable using this factory method. Right now if I do @time = Time.now I also have to add @time : Time. With this change we just need to add the annotation in def Time.now : Time.

Cons:

This is one more rule needed to learn (and we should probably list it in the error message).
The rules become much more hippie and maybe harder to understand.

Does this mean that the best thing to do is to add return type annotations everywhere? No, only in class methods that are probably going to be used to initialize an object ("factory" methods). And, if I forget to add such return type annotation I can always add it to the instance variable that uses it.
Our main fear with this change is confusion. However, the way I see it, you can use the language without adding type annotations. Then the compiler will tell you "I can't infer the type of this". Then you decide how to make the compiler know the type: either adding a type annotation in that variable, or if it's being initialized with a factory method you could add a return type annotation there. Problem solved. I mean, before these changes the language was much more chaotic, inferring types from every possible expression. This makes it be closer to the old behaviour, but in a more organized and strict way.
I didn't include return type annotations for Time.now and others here, but we can add them if this PR gets accepted.

What about globals?
$bird_texture : SF::Texture
$bird_texture = SF::Texture.from_file("bird.png")

If that's hippe, it's a pragmatic one at least :-)

@BlaXpirit Globals and class variables too. I said "instance vars" but this kind of rules always affect the three of them (globals, class vars, instance vars).
@ozra Yeah, I guess "pragmatic" is a better word. Ultimately the goal is to reduce the number of type annotations needed in a program. If I can add just one type annotation in Time.now instead of in every type that initializes a variable with that expression, I think it's better.

I think it might not be a new rule at all. T.new falls into the same case. You can think of the compiler generating always a
class T
  def self.new : T
    # ...
  end
end

So actually we generalize the T.new rule ;-)
And we could even support overriding the new class method.
So 👍 for this change.

warning, naive question follows
Considering this will affect all class methods, several helper methods will require to define type, what will happen with methods like Array.product(arrays) that the return type is defined dynamically using typeof?

@luislavena these typeof things are resolved immediately. We're talking about one particular method call that returns a particular type. I don't think this should cause problems.

@luislavena No, this doesn't affect any class method at all. If you don't put a return type annotation in a class method you can still use it, but if you use it to initialize a global/class/instance variable then then compiler won't be able to guess the type from it. For example:
class Foo
  getter array

  def initialize
    @array = Array.product([1, 2], [3, 4])
  end
end

p Foo.new.array

will say:
Can't infer the type of instance variable '@array' of Foo

But if you add:
class Foo
  @array : Array(Array(Int32))
end

than it will compile again.
Alternatively, if I add a return type annotation in Array.product then it will also compile... except that (right now) this type is impossible to express with a return type annotation.
Basically, all code that compiles now will still compile. This is a backwards-compatible change.

Basically, all code that compiles now will still compile. This is a backwards-compatible change.

That is what I was wondering. Thank you for the confirmation @asterite and sorry for the naive questions.
Cheers.

authors: BlaXpirit asterite bcardiff luislavena ozra


text:
add Box#box

this is need, because usually need to store box object somewhere

def box
add box.new::this is my boxie
end
enjoy

Wouldn't to_unsafe be a more appropiate name?

I think the #box name is fine, to be consistent with the .box method.

authors: Exilor RX14 etemelkuran kostya


text:
Ensure UNIXServer is accepting before closing in specs

In multi-thread the .accept might not execute right after the :begin is received.
more sporadic failures in preview_mt fixed.

Shall we introduce a wait_until_blocked(Fiber) and a wait_until_finished(Fiber) spec helpers?

Rebased and helpers added

Rebased on master to solve merge conflicts.


text:
Recipe Recommender

Scrapes http://whatthefuckshouldimakefordinner.com/ to get a random recipe, providing a preview image and a link to the recipe

This needs a pull from develop

This needs a pull from develop

prob just because of wrong base

This needs a pull from develop

prob just because of wrong base

Well and that this develop branch is out of date

I think the commit history here is messed up, it's giving diffs for things already merged

idk what you just did, it was fine before you did that

Want me to force push a fixed branch?

Please 😔

Still need to use the inherited property, I didn't do that for you. All i did was remove the unnecessary commits and rebase on develop

this is very stale :(

authors: Armintron suneettipirneni tanndlin

repo: cs-discord-at-ucf/lion


text:
Bump go to 1.18

Q
A

Bug fix?
[]

New feature?
[x]

API breaks?
[]

Deprecations?
[]

Related tickets
fixes #X, partially #Y, mentioned in #Z

License
Apache 2.0

What's in this PR?
Upgrade go version to 1.18
Why?
Keeping project with updated go version.

[x] Implementation tested
[ ] Logging code meets the guideline
[ ] User guide and development docs updated (if needed)
[ ] Append changelog

To Do
As followup will be update to 1.19 as Docker images already use 1.19 go base image.

@cscetbon Hello! Do you plan to have release in near future that will include this PR?

I was going to wait for the other update you mentioned. You think it deserves its own release for some reason ?

I'm afraid bumping to 1.19 won't be such easy PR as it has some breaking changes and multi-casskop has a dependency to https://github.com/admiraltyio/multicluster-controller which requires an update.

@AKamyshnikova done, see 2.1.14

authors: AKamyshnikova cscetbon

repo: cscetbon/casskop


text:
Ethan/close modal fix

Made it so that if you click outside the modal it will close the modal for task-pop-up on calendar.

Closed as addressed in https://github.com/cse110-sp24-group35/journal/commit/f57e117fa42237a8230bae50a0b97b3add76bc54

license: WTFPL