Support for Geospatial Queries?

Hi!
Is there a way to perform GeoSpatial queries in the current version?
I've seen the GeoNearOptions struct in the docs, but it guess it didn't make it to the last version...
Thanks for your effort!

Hello @micyxcv,
There is always support for "custom" commands. In a way, all commands in MongoKitten 6 are custom but provided by default. Almost all of them could be implemented manually.
Is there a specific list of features/commands you'd like to see first around GeoSpatial queries?
Thanks!

Hello @Joannis,
I'm primarily interested in querying a db with the $geoWithin and $near operators and how to set up models/documents with GeoJSON object types.
Best regards
Michael


Add https://github.com/marlonrichert/zsh-autocomplete plugin

Add https://github.com/marlonrichert/zsh-autocomplete plugin

https://github.com/Xmetalfanx/zshSetup/commit/235bba1b4e45f398a2f5295ed3c76e1111b1a29c

ONLY reason i am reopening is that i forgot to add to the README file giving credit to the dev

https://github.com/Xmetalfanx/zshSetup/commit/235bba1b4e45f398a2f5295ed3c76e1111b1a29c and (README update) https://github.com/Xmetalfanx/zshSetup/commit/b983807218c60dfee0354e522aff28574209d528 address this


attempting to compile keybase go-crypto on

Hi there, I am attempting to compile on a different cpu:
Loongson-3B1500.  Here is the last-core's cpuinfo:
processor		: 5
cpu model		: ICT Loongson-3 V0.7  FPU V0.1
model name		: ICT Loongson-3B R2 (Loongson-3B1500) @ 1199MHz
BogoMIPS		: 956.04
wait instruction	: no
microsecond timers	: yes
tlb_entries		: 64
extra interrupt vector	: no
hardware watchpoint	: yes, count: 0, address/irw mask: []
isa			: mips1 mips2 mips3 mips4 mips5 mips32r1 mips64r1
ASEs implemented	:
shadow register sets	: 1
kscratch registers	: 0
package			: 0
core			: 7
VCED exceptions		: not available
VCEI exceptions		: not available
It's currently on a fedora 21 distro.  I tried to compile golang 1.6 on it, but unsuccessful.  I am using a fc21 gcc-go
go version
go version xgcc (GCC) 4.9.3 20150626 (Red Hat 4.9.3-3) linux/mipsn64
[root@sunhaiyong bcrypt]# uname -a
Linux sunhaiyong 4.1.19-1.fc21.loongson.1.mips64el #1 SMP PREEMPT Tue Mar 8 07:47:34 UTC 2016 mips64 mips64 mips64 GNU/Linux
LANG=en_US.UTF-8
GOPATH=/root/Code
GOROOT=/root/loongson-golang
MACHTYPE=mips64el-redhat-linux-gnu
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/root/loongson-golang/bin:/root/Code/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/root/bin
[root@sunhaiyong ~]# cd Code/src/github.com/omac777/
[root@sunhaiyong omac777]# go build hello.go
[root@sunhaiyong omac777]# ./hello
Hello, 世界
mkdir -p /root/Code/src/golang.org/x
####these are the go1.6 sources that I was unable to compile entirely. I am just copying the crypto component to see if I can get away with just that and compile it.  The answer seems to be no.
cp -Rf /root/go/src/crypto/ .
go get github.com/keybase/go-crypto
cd ~/Code/src/golang.org/x/crypto#
cp -rf ../../../github.com/keybase/go-crypto/* .
cd ~/Code/src/github.com/keybase/go-crypto/tea
cd ~/Code/src/github.com/keybase/go-crypto/twofish
cd ~/Code/src/github.com/keybase/go-crypto/xtea
cd ~/Code/src/github.com/keybase/go-crypto/xts
cd ~/Code/src/github.com/keybase/go-crypto/sha3
cd  ~/Code/src/github.com/keybase/go-crypto/salsa20/salsa
~/Code/src/golang.org/x/crypto/salsa20# go build
~/Code/src/golang.org/x/crypto/salsa20# go install
root@sunhaiyong:~/Code/src/github.com/keybase/go-crypto/scrypt# cd ~/Code/src/golang.org/x/crypto/
root@sunhaiyong:~/Code/src/golang.org/x/crypto# cp -Rf ~/Code/src/github.com/keybase/go-crypto/pbkdf2/ .
root@sunhaiyong:~/Code/src/golang.org/x/crypto# cd pbkdf2/
root@sunhaiyong:~/Code/src/golang.org/x/crypto/pbkdf2# go build
root@sunhaiyong:~/Code/src/golang.org/x/crypto/pbkdf2# go install
root@sunhaiyong:~/Code/src/github.com/keybase/go-crypto/rsa# go build
github.com/keybase/go-crypto/rsa
./rsa.go:97:63: error: reference to undefined identifier ‘crypto.SignerOpts’
func (priv *PrivateKey) Sign(rand io.Reader, msg []byte, opts crypto.SignerOpts) ([]byte, error) {
^
./rsa.go:108:73: error: reference to undefined identifier ‘crypto.DecrypterOpts’
func (priv *PrivateKey) Decrypt(rand io.Reader, ciphertext []byte, opts crypto.DecrypterOpts) (plaintext []byte, err error) {
root@sunhaiyong:~/Code/src/github.com/keybase/go-crypto/ssh# go build
github.com/keybase/go-crypto/ssh
./keys.go:556:7: error: reference to undefined identifier ‘crypto.Signer’
case crypto.Signer:
^
./keys.go:566:9: error: reference to undefined identifier ‘crypto.Signer’
signer crypto.Signer
^
./keys.go:573:33: error: reference to undefined identifier ‘crypto.Signer’
func NewSignerFromSigner(signer crypto.Signer) (Signer, error) {
^
./keys.go:579:9: error: incompatible type for return value 1 (type has no methods)
return &wrappedSigner{signer, pubKey}, nil
^
root@sunhaiyong:~/Code/src/github.com/keybase/go-crypto/pkcs12# go build
github.com/keybase/go-crypto/pkcs12
./crypto.go:75:72: error: reference to undefined field or method ‘String’
return nil, 0, NotImplementedError("algorithm " + algorithm.Algorithm.String() + " is not supported")
^
./mac.go:32:92: error: reference to undefined field or method ‘String’
return NotImplementedError("unknown digest algorithm: " + macData.Mac.Algorithm.Algorithm.String())
^
./pkcs12.go:165:82: error: reference to undefined field or method ‘String’
return nil, errors.New("don't know how to convert a safe bag of type " + bag.Id.String())
^
./pkcs12.go:184:81: error: reference to undefined field or method ‘String’
return "", "", errors.New("pkcs12: unknown attribute with OID " + attribute.Id.String())
^
root@sunhaiyong:~/Code/src/github.com/keybase/go-crypto/openpgp# go build
github.com/keybase/go-crypto/rsa
../rsa/rsa.go:97:63: error: reference to undefined identifier ‘crypto.SignerOpts’
func (priv *PrivateKey) Sign(rand io.Reader, msg []byte, opts crypto.SignerOpts) ([]byte, error) {
^
../rsa/rsa.go:108:73: error: reference to undefined identifier ‘crypto.DecrypterOpts’
func (priv *PrivateKey) Decrypt(rand io.Reader, ciphertext []byte, opts crypto.DecrypterOpts) (plaintext []byte, err error) {
^
root@sunhaiyong:~/Code/src/github.com/keybase/go-crypto/ocsp# go build
github.com/keybase/go-crypto/ocsp
./ocsp.go:199:17: error: reference to undefined identifier ‘elliptic.P224’
case elliptic.P224(), elliptic.P256():
^
./ocsp.go:574:86: error: reference to undefined identifier ‘crypto.Signer’
func CreateResponse(issuer, responderCert *x509.Certificate, template Response, priv crypto.Signer) ([]byte, error) {
Judging by the compile errors, I believe I certainly don't have the right environment setup yet to build keybase/go-crypto.  I also believe I am not going through the correct steps to compile it correctly.
The hints are I really do need go1.6 installed since crypto.Signer and elliptic.P224 are part of go1.6.

I don't think this fork depends on Go 1.6, but it does depend on the standard crypto library. If you're compiling the Go standard libs yourself and seeing errors, my guess is that the problem lies there. Some of the subdirectories also have dependencies of their own, so running go get github.com/keybase/go-crypto is not sufficient. You should make sure to run go get in every subdirectory where you're about to run go build.

I believe there is a dependency on Go 1.5 stdlib at least (though probably nothing specifically from Go 1.6).
I would recommend that you try compiling Go 1.6 (or 1.5) from source, using your installed version to bootstrap.
Follow the instructions here and set GOROOT_BOOTSTRAP appropriately to your existing Go 1.4 installation.

Mr. Haven,
The go version was stated as being a redhat gcc-go version 4.9
something.  I attempted to compile as you said before even trying your
crypto code, go 1.6 with the gcc-go but it failed.
I'll try compiling go 1.5 with the gcc-go on fedora 21.  I can't update
anything fedora often because the great firewall of China doesn't allow
me to get much data speed and I'm limited to mirrors in China for the
loongson-3 cpu stuff.  Mirrors for Loongson-3 cpu stuff outside of China
for fedora would greatly alleviate the situation, but it's a touchy
subject for loongson-3 stuff for some reasson.
On 03/14/2016 04:41 PM, Jacob H. Haven wrote:

I believe there is a dependency on Go 1.5 stdlib at least (though probably nothing specifically from Go 1.6).
I would recommend that you try compiling Go 1.6 (or 1.5) from source, using your installed version to bootstrap.
Follow the instructions here and set GOROOT_BOOTSTRAP appropriately to your existing Go 1.4 installation.

Reply to this email directly or view it on GitHub:
https://github.com/keybase/go-crypto/issues/19#issuecomment-196513368


Improve package.json by adding homepage and repository keys

Hi,
i have added the keys repository and homepage to the package.json file.
These keys are used at various places.
For example, a link to the github page will appear on the npm package details page.
It is very useful too, if you are using yarn outdated. If there is a new version of your package you can directly click on the provided url (the github page). So it is easy to check for new features or breaking changes.
Keep up your good work!

Thank you @dino115 :) merged, will land in the next release


Update core docs

Both Accessable and Mockable macro error messages point to https://zio.dev/docs/overview/overview_module_pattern. Don't forget to create that page :)

In 1.0.0-RC14 following pages were introduced:

How to use module pattern
How to mock services


Should we be sending reply embeds with puppets, given they are not bots.

I'm not Discord, but if I saw real users sending embeds I'd be a bit suspicous

dyno actually has an option to auto-kick users who use embeds


Child device positioning information is lost on data export

Issue type
[ ] Feature request
[x] Bug report
[ ] Documentation
[ ] Housekeeping

Environment

NetBox version:  2.3.7

Description
Hi,
It appears that child devices are not associated with a parent device on exporting device information from Netbox.
When I import data (dcim/devices/import/  I can choose 'Racked devices' or 'Child Devices', but there seems to be no way to get the information on child devices out of Netbox when exporting.
I would expect to be able to export devices from a rack and import them into another Netbox instance without any loss of data, but that does not currently seem to be possible.

Upon review of this issue, it appears related to exporting racked devices and importing them into another Netbox instance.  Testing on the most current Netbox version, exporting devices and importing them into a new instance will maintain the rack assignment.
Apart from that, exporting and importing the parent/child relationship will give very little gain and there has been very little activity on this FR in almost a year.  As such, this FR will be closed out as the rack import/export is working as intended.


Add Unlatch command and Unlatched status (Unbolt feature)

Check all that apply
Type of Change

[ ] WWST Certification Request

If this is your first time contributing code:

[ ] I have reviewed the README.md file
[ ] I have reviewed the CODE_OF_CONDUCT.md file
[ ] I have signed the CLA

[ ] I plan on entering a WWST Certification Request or have entered a request through the WWST Certification console at developer.smartthings.com

[ ] Bug fix
[x] New feature
[ ] Refactor

Checklist

[x] I have performed a self-review of my code
[ ] I have commented my code in hard-to-understand areas
[x] I have verified my changes by testing with a device or have communicated a plan for testing
[ ] I am adding new behavior, such as adding a sub-driver, and have added and run new unit tests to cover the new behavior

Description of Change
To support the Unbolt feature
https://smartthings.atlassian.net/browse/CPBLTS-2481
Summary of Completed Tests

@bflorian ,
Could you review this PR?


Team finance attack

This PR should address #53 by adding the implementation and write-up of the Team Finance Attack.

Nice. A couple of notes:

Would be cool if there were no solc warnings when running the test.
The step by step is not really clear to me. Maybe it should be less specific?
perform a the migration... s/a//

all 🍋


Add manifest files from the image to input

This adds manifest files from the image to the input under image.manifests. Files that are located in the manifests directory and can be parsed as JSON or YAML are considered.
Each file is parsed and converted to JSON and included in the input JSON tree verbatim.
Ref. https://issues.redhat.com/browse/HACBS-2379

This includes #865 as using the FakeImage mock resulted in a panic when trying to access image.Layers().
Not 100% sure we want this data in image.manifests, perhaps image.fs.manifests could be better place?
Not sure if we need to limit the memory usage, say no manifest file larger than 100Kb will be added to the input?
We should, perhaps as a followup, look into caching the fetching of images, we probably do it more than once now.

Cool stuff.

/retest


Even clean databases keep growing bigger

Every time I save my databases, they grow bigger; and I'm not saving undo data!
Tested on Version 2.0.2258-dev Personal (Build ID b2474e41).
Here's a minimal reproduction:

In binary ninja, open C:\Windows\System32\notepad.exe.  Wait for analysis to finish.
File >> Save Clean Analysis Database.  The resulting bndb is 1488 kb.
Close the tab for notepad.exe.
Open the bndb.
File >> Save Clean Analysis Database.  The bndb is now 2227 kb.
Close the tab and open the bndb again.
File >> Save Clean Analysis Database.  The bndb is now 2297 kb.
Close the tab and open the bndb again.
File >> Save Clean Analysis Database.  The bndb is now 2363 kb.
Close the tab and open the bndb again.
File >> Save Clean Analysis Database.  The bndb is now 2430 kb.

On stable it's even worse.  I have a database that was growing by 6MB on every save, and is now 1.13 GB large.  Now that I switched to dev, it's growing in much smaller increments (0.3 MB each save), but... I mean, it's still growing instead of shrinking, and I assume most of that 1.13 GB is effectively trash.

You can use this as a temporary workaround: https://github.com/jeffli678/shrink-binaryninja-db.
Please be advised that this is NOT a Vector35 project. Please use it as your own risk.

Huh, so from the description there, it sounds almost like this is by design?  Seems kind of odd! 😅
Sure enough, the tool dropped that 1.133 GB down to 23.818 MB, and nothing seems to have been lost.  (since it was only adding ~6MB on each save, I assume the other 17 MB comes from stuff in the other tables)

Clean saves are, as of now, just a way to remove undo data from BNDBs. They still create another snapshot.
The ability to trim a database via the ui/api is on my shorter term to-do list

Added to "Save With Options" in 2.1.2266-dev


Add Zuul Release Notes

To this branch:
https://github.com/SovereignCloudStack/Docs/blob/feat/Add-R1/Release-Notes/Release1.md

@tibeer please take care.

+1
:-)

This could be closed, no?


Chromium crashes when cursor hovers over this link

When a page containing this link is displayed, the page crashes when the cursor hovers over the link. The link is:
http : // example/%%30%30
And a bug report of it against Chromium:
https://code.google.com/p/chromium/issues/detail?id=533361

Thanks for pasting it here, we usually don't open every Chromium issue on Electron's side unless we want to fix them ourselves, otherwise our issues tracker would be filled with Chromium's ones :smile_cat:.
For this bug, we will do an update of Chrome once Chrome releases a new version with the fix.


Share session value between central app & tenants #712

I'm building an app using @stancl  Multi tenancy package with multiple languages, but I notice.
When I store a session value (Lang value for instance) it does not take effect in the tenants and returns a null value, but in the central does.
Is there's any idea on how to store session values on the tenant domains?
Steps to Produce
# Tenant
session()->put('lang', 'fr');
dd(session('lang');
// output: null;

# Central
session()->put('lang', 'fr');
dd(session('lang');
// output: fr

Your setup

Laravel version: [e.g. 8.4.0]
stancl/tenancy version: [e.g. 3.4.0]

>>> $tenant = App\Models\Tenant::create()
=> App\Models\Tenant {#3504
     id: "78e87ff6-dc4b-416a-a4d8-2d015c8390f4",
     updated_at: "2021-09-02 20:34:05",
     created_at: "2021-09-02 20:34:05",
     data: null,
   }
>>> session()->put('foo', 'bar')
=> null
>>> session('foo')
=> "bar"
>>> tenancy()->initialize($tenant)
=> null
>>> session()->put('abc', 'def')
=> null
>>> session('abc')
=> "def"

Sessions themselves work. If this is related to a specific setup, please provide more context and reproduction steps that actually reproduce the issue.

Hey, @stancl
Sorry to not provide the full implementation.
I'm trying to make my app multi-language and this seems to not going to work on tenant domains.
Steps to Produce
In the route file, I make shared file for both tenants & central domain:
/....
Route::get('lang/switch/{lang}', LanguageController::class)
   ->name('language.switcher');
/....

In the Language Controller
class LanguageController extends Controller
{
    public function __invoke($lang, Request $request)
    {
        $languages = ['en', 'fr'];

        if (in_array($lang, $languages)) {

            $locale = session()->put('lang', $lang);

            App::setLocale(session('lang') ?? 'fr');

        }

        return back(302);
    }
}

I created a middleware to determine if there is a session or not with the tenant existence
    public function handle(Request $request, Closure $next)
    {

        $subdomain = Arr::first(explode('.', $request->getHost()));

        if (
            $tenant = tenancy()->find(strtolower($subdomain))
        ) {
            tenancy()->initialize($tenant);
        }

        $this->switchLanguage();

        return $next($request);
    }

    private function switchLanguage()
    {
        if (session()->has('lang')) {
            app()->setLocale(session()->get('lang'));
        }

        if (!session()->has('lang')) {
            app()->setLocale(config('app.locale'));
            session()->put('lang', config('app.locale'));
        }
    }

The Problem
Let's say you accessed https://domain.ltd/lang/switch/fr to get the French version, and in the central domain this process working nicely, but in the tenants I can see the value of the sessionbut the local seems it has no change.
Hope this make sense.


Return Promise on open()

I'm submitting a ...  (check one with "x")
[ ] bug report => search github for a similar issue or PR before submitting
[X ] feature request
[ ] support request => Please do not submit support request here, post on Stackoverflow or Gitter

Current behavior
The current open() method does not return any Promise<> which is awaitable.
Expected behavior
Promise which can be awaited (resolved via classical way) after the modal has been closed/dismissed. Right now there is now way for prompting the user for something and continue afterwards.
What is the motivation / use case for changing the behavior?
I want to wait for the users input within a wizard flow.

Smart Modal version: 6.0.0

Hi @PendelinP!
You have an entire part of the documentation dedicated to the different available Events on open / close / dismiss / escape and so on.
You can use these Events as Promise / Observable. The advantage is that you can subscribe / unsubscribe to them across your app.
Let me know if it solves your issue ! 😉

Oh boy - how awkward is that. I read the section a couple of times but totally missed the interesting part :/
You're totally right! Sorry for my issue ;)
...and thanks for the fast response! It works like a charm now :)


Application from Angular 8.2 to Angular 10 upgrade

Error :
ng Serve
Unhandled Promise rejection: Component Component1 is not part of any NgModule or the module has not been imported into your module.
Component Component2 is not part of any NgModule or the module has not been imported into your module.
all Componenets are not getting included or identified
Inclueded all into Modules and every thing was working as expected in Angular 8,2, But once after upgrade getting above issue while loading in Browser but not on Build
Please help

Thanks for reporting this issue. However, you didn't provide sufficient information for us to understand and reproduce the problem. Please check out our submission guidelines to understand why we can't act on issues that are lacking important information.
If the problem persists, please file a new issue and ensure you provide all of the required information when filling out the issue template.


WIP: Update FAQ page

We are planning on pushing these changes before deployment. I've edited some grammar, fixed some outdated info, and added a 'how drugs are classified' question.

All, please place any text/info changes in this PR, @acoffman, merge in around your Rails 4.2 rollback before deploy to the test vm.

closes #170

great catch, @kcotto. Corrected database and modified news to match.


fix #530 set client_playback to None when client_playback is done

Hi,
I'm sending a PR for fixing #530
Regards.
Marcelo

Coverage increased (+0.0%) to 92.62% when pulling ab7281ec0452049ff053128ba741afbd9d1cfdb3 on tekii:fix530 into b0f60cf1f293a19c7f87782a3ad762b77cb2a5a7 on mitmproxy:master.

:+1:


Empty service definition in proto file produces bad go code

Steps to reproduce:
Try compiling this
syntax = "proto3";
package foo;
service Bar {
}

Errors:
imported and not used: "strings"
prefix declared and not used

Fixes:
Add a method to prevent import failing right after import statements
var _ = strings.Index

// Add empty use to prevent prefix failing in client functions
_ = prefix

Thanks for the bug report. I'll put together a fix and a release.

Fixed in #172, release v5.7.0.


Stop cloning unnecessarily on PR update

Fix #12740
Signed-off-by: Andrew Thornton<EMAIL_ADDRESS>

Codecov Report

Merging #12839 into master will decrease coverage by 0.02%.
The diff coverage is 69.23%.

@@            Coverage Diff             @@
##           master   #12839      +/-   ##
==========================================
- Coverage   43.17%   43.14%   -0.03%
==========================================
  Files         654      654
  Lines       72218    72194      -24
==========================================
- Hits        31182    31150      -32
- Misses      35985    35991       +6
- Partials     5051     5053       +2

Impacted Files
Coverage Δ

services/pull/pull.go
41.56% <69.23%> (-0.01%)
:arrow_down:

modules/util/timer.go
42.85% <0.00%> (-42.86%)
:arrow_down:

modules/indexer/stats/db.go
43.47% <0.00%> (-17.40%)
:arrow_down:

modules/indexer/stats/queue.go
64.70% <0.00%> (-11.77%)
:arrow_down:

modules/git/repo.go
46.19% <0.00%> (-3.56%)
:arrow_down:

modules/git/utils.go
73.77% <0.00%> (-3.28%)
:arrow_down:

modules/log/file.go
73.60% <0.00%> (-1.61%)
:arrow_down:

modules/queue/workerpool.go
58.77% <0.00%> (-1.23%)
:arrow_down:

services/pull/check.go
47.69% <0.00%> (-0.77%)
:arrow_down:

... and 1 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 ed2bdf4...5505cc0. Read the comment docs.

@zeripath please send backport :)


Move iree/tools/ to tools/.

Progress on https://github.com/google/iree/issues/8955.

Bazel target names: //iree/tools:iree-opt -> //tools:iree-opt
CMake target names: iree::tools::iree-opt -> iree-opt
Updated docs, scripts, and pipelines to the new source file and build directory paths

@benvanik + @stellaraccident did either of you want to review this also?


What's new block

[x] Create a block to showcase What's New Section
[x] Tweak the Header to include the What's new Section
[ ] First login, should popup the What's new Modal showcasing new things business wants to highlight

Maybe take an approach of making this a fragment for easy authorability and load it when and wherever it's needed

Closed with #36


Update @yamada-ui/alert accessibility

Description
This issue aims to address accessibility deficiencies in our alert component as per W3C guidelines.
The component currently does not meet the accessibility standards outlined in the W3C documentation.
The goal is to ensure the component is accessible to all users, including those using assistive technologies.
Ensure that all unchecked items in this checklist should be addressed.
Role

[ ]  role="alertdialog" is used appropriately.

Problem Statement/Justification
none
Proposed Solution or API
No response
Alternatives
No response
Are you willing to participate in implementing this feature and create a pull request include the implementation?
None
Additional Information
No response
References
https://www.w3.org/WAI/ARIA/apg/patterns/dialogmodal/
https://www.w3.org/WAI/ARIA/apg/patterns/alertdialog/

Can I take this issue?

Regarding the alertdialog role, W3C First Public Working Draft says:

The alertdialog role goes on the node containing both the alert message and the rest of the dialog.
...
Unlike alert, alertdialog can receive a response from the user.

Currently, the @yamada-ui/alert component has only an alert message but doesn't support dialogs.
The alertdialog in question goes on a component like AlertDialog in Chakra UI, but apparently there has yet to be no such component in Yamada UI. Therefore, I think this issue can be closed.


Prepare an API behavior document for all the APIs used by the app

Summary:
The commons app uses quite a few MediaWiki APIs throughout the app. It would be great to have an API collection with all the HTTP calls added there.
It would facilitate in debugging issues quickly. We can quickly call and check an API to observe the response/latency or timeouts.
We can probably use https://www.postman.com/ or https://postwoman.io/ or some other framework for our API collection.

@maskaravivek
Can I work on this? It would improve my understanding of MediaWiki APIs

Yes, if you wish to pick this up then you can start by creating a list of APIs with the parameters. We can later take a call to go with either postman or postwoman.

Yes, if you wish to pick this up then you can start by creating a list of APIs with the parameters. We can later take a call to go with either postman or postwoman.

The External API section in the documentation of the app contains a list of API used by the app. Is there any other API used whichbis not mentioned in the Docs?
If yes then please do let me know, else I will create a list of API with their respective parameters.
https://github.com/commons-app/apps-android-commons/wiki/External-APIs

This doc was last updated in 2017 and a lot has changed since then. It would be great if you could play with the app and figure out what all APIs are used based on the logs. You can also look at retrofit interface classes to see the APIs.

@maskaravivek I could not find such an option unfortunately. :/

@maskaravivek
I am currently documenting API in Google docs. I am left with only few, how would you recommend me sharing the docs?

You can just share the link here. Thanks

@maskaravivek How would you recommend me to print the API in console as they are getting called? It is getting quite difficult to track API.

You can go to OkHttpConnectionFactory and change the log level to BODY to see the full request-response logs.

@GearGit I unassign for now, but if you are you still working on this, please let us know. If no answer, someone else may be assigned to it. Thanks a lot. :-)

This would be a fantastic task for something like Outreachy, IMO. :)


[Bug] num datatype is not supported

Steps to Reproduce

create a collection class with member variables with num dataType. (As shown below)

import 'package:isar/isar.dart';

part 'food.g.dart';

@collection
@Name('food')
class Food {
  Id id = Isar.autoIncrement;
  String? name;
  num? protein;
  num? carbs;
  num? fat;
  num? calories;
  num? serviceSize;
  String? serviceUnit;
  double? proteinPerUnit;
  double? carbsPerUnit;
  double? fatPerUnit;
}

Run Build runner

flutter pub run build_runner watch --delete-conflicting-outputs

Error
[INFO] Running build...
[SEVERE] isar_generator on lib/repository/models/food.dto.dart:

Unsupported type. Please annotate the property with @ignore.
package:myflutter/repository/models/food.dto.dart:10:8
   ╷
10 │   num? protein;
   │        ^^^^^^^

Details

Platform: All
Flutter version: >=2.17.6 <3.0.0
Isar version: ^3.0.5

[X] I searched for similar issues already
[X] I filled the details section with the exact device model and version
[X] I am able to provide a reproducible example

It's not a bug. num is a union type of int and double but Isar needs to know which one you want to store.
Just use double if you want to store both.

oh ok.. thank you for the explanation!


Add the ability to revoke instance keys

Adds a button to the key modal which regenerates the instance key.

There's only one modal, shared by each of the bot instances.  The "key" buttons contain data attributes which are written to the modal from JavaScript.
Since each instance has a different ID, I had to generate the action URL from JavaScript.  I guess a better solution would be providing the instance ID from a hidden field (or just not reusing the modal).
From Jonathan

On Mar 13, 2017, at 1:18 PM, ArtOfCode<EMAIL_ADDRESS>wrote:
@ArtOfCode- commented on this pull request.
In app/views/bot_instances/_key_modal.html.erb:

@@ -8,6 +8,12 @@
you should never see this

   <%= form_tag "/you_should_never_see_this", id: "revoke-form", authenticity_token: false do %>

Any reason why you can't set the action from the view?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

That sounds like something you can do with partial local variables. Let me dig a bit more.

So it looks like you could remove the need to set the bot ID from JS, but not so easily the need to set the instance ID from JS. So yeah, not really worth doing one without the other.


some issue about training the network

dear author:
I have a question when training this network:
About your database, How to create it? How to preprocess it?
best Regards

Hello,
I used the Bossbase dataset.
First, I resized all the images at 128x128 with cubic interpolation then I applied the different embedding to the resized images.
A Preprocessing was included on the first layer of the network using non-trainable HPF filters.
Paper.

Thanks for your reply~
I wonder what the data format of the images you used.
Have you converted the image format?
Because the PGM image format cannot be used by the Keras ImageDataGenerator.
best Regards

Yes, for the PGM format, I have the same problem.
I was able to solve this problem by adding the .pgm format to the whitelist in ImageDataGenerator class.

Sorry, not in the ImageDataGenerator class but in the class image.py (package keras\preprocessing)
Add pgm to this white list (line 974)
white_list_formats = {'png', 'jpg', 'jpeg', 'bmp', 'ppm'}

Thanks you very much! I've solved the data format problem.
I use the BOSSbase_1.01 dataset, resize the images at 128*128, embedding with WOW 1.0bpp
I trained the network, and I got train acc 0.78, loss 0.38.
I am very confused, may I ask what went wrong?

Are you changed the number of epochs for 1.0bpp to 100!

Also, I use only the first 2400 images.

Could you please send me a screenshot of training epochs?

Yes, I have changed the number of epochs, I use 2500 images random selected from BOSSbase_1.01 dataset.

Here is the screenshot of training epochs.

What went wrong?
Looking forward to your reply!

Is it possible to run the code on windows?

can you please guide what files to execute?

I run the code on linux. just excute the 'train.py' and edit the parameter.

(https://user-images.githubusercontent.com/59117065/72331088-72495d80-366c-11ea-90c4-7a92da005580.png)
Respected Author , I have one last issue .png file is attached below . I already make folders for treaining and validation set but i don`t know why this problem still there.


Add more tests to the Thermostat presets test for testing the presets constraints- TC_TSTAT_4_2

TODO: Add tests for the total number of Presets exceeds the NumberOfPresets supported. Also Add tests for adding presets with preset scenario not present in PresetTypes

Follow up - have a test exercising the "empty and null are treated identically" behavior, though. for the preset handles.
test "negative" at all, like change an expected success assertion  for a different status code and see that the way you catch failures leads to expected logs and failure, rather than a different exception?
Make sure that a really failing product leads to a clean fail of the test.

@ReneJosefsen - Open test plan issues for this and use this issue for making sure we align the scripts accordingly


[Bug]: Runtime crashes for worker message passing when the workers are within a conditional block

Description
$title.
Steps to Reproduce
import ballerina/io;

public function main() {
    execute(false);
}

function execute(boolean isForked) {
    if isForked {
        fork {
            worker A {
                5 -> B;
                string value = <- B;
                io:println(string `Received string '${value}' from worker B`);
            }

            worker B {
                int value = <- A;
                io:println(string `Received int '${value}' from worker A`);
                "a" -> A;
            }
        }
    }
}

[2024-04-09 15:32:27,308] SEVERE {b7a.log.crash} - Cannot read field "functionInvocation" because "parent" is null
java.lang.NullPointerException: Cannot read field "functionInvocation" because "parent" is null
        at org.ballerinalang.langlib.internal.WorkerChannels.autoClose(WorkerChannels.java:40)
        at ballerina.lang&0046__internal.0.auto-close-channels.autoClose(auto-close-channels.bal:22)
        at temp.execute(temp.bal:0)
        at temp.main(temp.bal:5)
        at $_init.$moduleExecute(.)
        at $_init.$lambda$$moduleExecute$(.)
        at io.ballerina.runtime.internal.scheduling.SchedulerItem.execute(SchedulerItem.java:54)
        at io.ballerina.runtime.internal.scheduling.Scheduler.run(Scheduler.java:320)
        at io.ballerina.runtime.internal.scheduling.Scheduler.runSafely(Scheduler.java:287)
        at java.base/java.lang.Thread.run(Thread.java:833)

Affected Version(s)
2201.9.x branch
OS, DB, other environment details and versions
No response
Related area
-> Compilation
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

Problem seems to be in the autoclose lang lib invocation we assume channel information is always available in the immediate parent strand. However, in this sample, there isn't an immediate parent strand. The current strand holds the channels.


APR_TCP_DEFER_ACCEPT error when starting Apache2

Logging this issue here as information for others. Issue is benign and can be ignored.

Your Windows build number:  (Type ver at a Windows Command Prompt)
15063

What you're doing and what's happening:  (Copy&paste specific commands and their output, or include screen shots)
Starting Apache2 with:

$ sudo service apache2 restart

What's wrong / what should be happening instead:
Following error message is displayed:

* Restarting Apache httpd web server apache2
[Tue Apr 18 18:50:52.618691 2017] [core:warn] [pid 546:tid<PHONE_NUMBER>95392] (92)Protocol not available:
AH00076: Failed to enable APR_TCP_DEFER_ACCEPT

The TCP_DEFER_ACCEPT socket option is not natively supported by Windows.
WSL team are working with Windows networking team on this issue, but fix likely won't make it in RS3.
Doesn't block Apache2 from starting, just a warning. Pile-on below if otherwise.

Thanks @bitcrazed for reporting the issue. Your analysis above seems spot on.

Add the following line to the end of the /etc/apache2/apache2.conf file:
AcceptFilter http none

If you have this warning after enabling SSL (https), just add the following line  to the end of the file :

/etc/apache2/apache2.conf

AcceptFilter https none

Hello,
I have added
AcceptFilter https none
AcceptFilter http none

AcceptFilter https none
AcceptFilter http none

This worked on start, however, when I give restart it continues with the same error.

@bitcrazed is there an issue somewhere open for the fix that can be tracked / voted on or is this it? Applications based on Apache Thrift currently do not work on WSL due to TCP_DEFER_ACCEPT not being available, eg. MapD
https://github.com/Microsoft/WSL/issues/1953#issuecomment-295353694

The TCP_DEFER_ACCEPT socket option is not natively supported by Windows.
WSL team are working with Windows networking team on this issue, but fix likely won't make it in RS3.

This is one of the main issues tracking this problem, so please subscribe to this issue if you're interested in future progress. @tara-raj will triage with the team and get back to you.

Hi @tara-raj, has there been any progress on this issue internally?

This is another one that should have been stubbed to do nothing back in 2016 (like every GNU/FOSS configure script on the planet does). Question rhetorical natch. Pretty sure it can be configured away with AcceptFilter http none but I haven't tried.

@therealkenc there does indeed appear to be a way to configure Apache to work around it, however, it's not Apache specific.

it's not Apache specific

That's rhetorical also.
Identifying other use-cases here is always good. Or at least, it never hurts.

That's rhetorical also.

Yes, although the fact that MapD (OmniSci) does not work due to Apache Thrift not working because of this is not rhetorical

due to Apache Thrift not working

Add #undef TCP_DEFER_ACCEPT here should make it go.

Same problem here...

Well it did not seem to have made it to 1903

@thevictor13 I suppose there's a possibility that "Full System Call Compatibility" will fix this issue (although, what do I know?) in WSL2: https://devblogs.microsoft.com/commandline/announcing-wsl-2/. This may be (part of) the reason this issue has not had any love from MS.

Hmm, makes sense. Thanks for the link! I'll keep an eye on it.

Just updated to WSL2 and no more error.

Still have it on WSL 2.

Yeah, make as @BenMorel said, if you have Windows 10 Build 18917 or higher. Other requirements.

set-version

unknown command : --set-version

set-version

unknown command : --set-version

Yeah, make as @BenMorel said, if you have Windows 10 Build 18917 or higher. Other requirements.
Otherwise you have an option to ignore warning.

AcceptFilter https none
AcceptFilter http none


Not able to submit the challenge.

Challenge Link to External Pages with Anchor Elements has an issue.
User Agent is: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
 Which of the tests fails for you?

Possibly fixed by #9490 , please wait for a couple of days before this reaches the main website.

Possibly related https://github.com/FreeCodeCamp/FreeCodeCamp/issues/9673

Experiencing the same problem not being able to submitting, using Google Chrome


Table of configuration properties via UI is missing

Reference to table of configuration options, but it is missing

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

ID: 3cd70fac-5d7c-7637-8385-f3f4af3ba0ad
Version Independent ID: 15d95fc5-f08e-a26c-ce06-8ead78474661
Content: Mount Azure Storage as a local share - Azure App Service
Content Source: articles/app-service/configure-connect-to-azure-storage.md
Service: app-service
GitHub Login: @msangapu-msft
Microsoft Alias: msangapu

Thanks for the feedback! We are currently investigating and will update you shortly.


Pass pod labels to containers and to lifecycle hooks

For context, see: https://groups.google.com/d/msg/google-containers/frOLMyNl5U4/W5_DQUL933IJ
Idea specifically is to have a <service_name>_LABELS env var in addition to the service's port.
Filing as an issue to track discussion. I'm unsure if it's generally useful enough to justify the extra complexity.

Somewhat opinionated proposal of how downward API could be exposed as env for both labels and service values described here:
https://github.com/GoogleCloudPlatform/kubernetes/issues/1768#issuecomment-71331800
Essentially, do a limited form of env var substitution as pre-processing pass on the Pod prior to invoking docker start.  Walk the list once to get all the user provided env, then go through and allow env substitution and let the substitution values pull from a) kubernetes "downward env API" source (service vars, labels, pod info) and b) env vars.  Optionally, we could include c) env in the image.  Then we would pass that entire env to the container.
This would mean we would never inject env into the user's container by default (so no hidden magic variables except service hosts for now), but users would be able to selectively include variables by name.  The kube downward env API vars could be appropriately namespaced.

And then users who want the actual string "$" in their env vars need to
escape them?  Puke.
I could buy a new block of env vars that are explicitly handled this way,
but not the default block.
On Fri, Jan 30, 2015 at 8:43 AM, Clayton Coleman<EMAIL_ADDRESS>wrote:

Somewhat opinionated proposal of how downward API could be exposed as env
for both labels and service values described here:
#1768 (comment)
https://github.com/GoogleCloudPlatform/kubernetes/issues/1768#issuecomment-71331800
Essentially, do a limited form of env var substitution as pre-processing
pass on the Pod prior to invoking docker start. Walk the list once to get
all the user provided env, then go through and allow env substitution and
let the substitution values pull from a) kubernetes "downward env API"
source (service vars, labels, pod info) and b) env vars. Optionally, we
could include c) env in the image. Then we would pass that entire env to
the container.
This would mean we would never inject env into the user's container by
default (so no hidden magic variables except service hosts for now), but
users would be able to selectively include variables by name. The kube
downward env API vars could be appropriately namespaced.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-72230218
.

There would be a flag that says you want this.  I'm not insane, just dangerous.  Like "Resolve":true or "expand":true

On Jan 30, 2015, at 10:07 PM, Tim Hockin<EMAIL_ADDRESS>wrote:
And then users who want the actual string "$" in their env vars need to
escape them? Puke.
I could buy a new block of env vars that are explicitly handled this way,
but not the default block.
On Fri, Jan 30, 2015 at 8:43 AM, Clayton Coleman<EMAIL_ADDRESS>wrote:

Somewhat opinionated proposal of how downward API could be exposed as env
for both labels and service values described here:
#1768 (comment)
https://github.com/GoogleCloudPlatform/kubernetes/issues/1768#issuecomment-71331800
Essentially, do a limited form of env var substitution as pre-processing
pass on the Pod prior to invoking docker start. Walk the list once to get
all the user provided env, then go through and allow env substitution and
let the substitution values pull from a) kubernetes "downward env API"
source (service vars, labels, pod info) and b) env vars. Optionally, we
could include c) env in the image. Then we would pass that entire env to
the container.
This would mean we would never inject env into the user's container by
default (so no hidden magic variables except service hosts for now), but
users would be able to selectively include variables by name. The kube
downward env API vars could be appropriately namespaced.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-72230218
.

—
Reply to this email directly or view it on GitHub.

I clarified in the other one this was explicit opt in on a per var basis, but forgot to copy that here.

On Jan 30, 2015, at 10:07 PM, Tim Hockin<EMAIL_ADDRESS>wrote:
And then users who want the actual string "$" in their env vars need to
escape them? Puke.
I could buy a new block of env vars that are explicitly handled this way,
but not the default block.
On Fri, Jan 30, 2015 at 8:43 AM, Clayton Coleman<EMAIL_ADDRESS>wrote:

Somewhat opinionated proposal of how downward API could be exposed as env
for both labels and service values described here:
#1768 (comment)
https://github.com/GoogleCloudPlatform/kubernetes/issues/1768#issuecomment-71331800
Essentially, do a limited form of env var substitution as pre-processing
pass on the Pod prior to invoking docker start. Walk the list once to get
all the user provided env, then go through and allow env substitution and
let the substitution values pull from a) kubernetes "downward env API"
source (service vars, labels, pod info) and b) env vars. Optionally, we
could include c) env in the image. Then we would pass that entire env to
the container.
This would mean we would never inject env into the user's container by
default (so no hidden magic variables except service hosts for now), but
users would be able to selectively include variables by name. The kube
downward env API vars could be appropriately namespaced.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-72230218
.

—
Reply to this email directly or view it on GitHub.

I could probably live with that.  As per the migration issue - exposing
some of this stuff is actually detrimental to migration.  Tread carefully.
On Fri, Jan 30, 2015 at 7:14 PM, Clayton Coleman<EMAIL_ADDRESS>wrote:

I clarified in the other one this was explicit opt in on a per var basis,
but forgot to copy that here.

On Jan 30, 2015, at 10:07 PM, Tim Hockin<EMAIL_ADDRESS>wrote:
And then users who want the actual string "$" in their env vars need to
escape them? Puke.
I could buy a new block of env vars that are explicitly handled this
way,
but not the default block.
On Fri, Jan 30, 2015 at 8:43 AM, Clayton Coleman <
<EMAIL_ADDRESS>wrote:

Somewhat opinionated proposal of how downward API could be exposed as
env
for both labels and service values described here:
#1768 (comment)
<
https://github.com/GoogleCloudPlatform/kubernetes/issues/1768#issuecomment-71331800>

Essentially, do a limited form of env var substitution as
pre-processing
pass on the Pod prior to invoking docker start. Walk the list once to
get
all the user provided env, then go through and allow env substitution
and
let the substitution values pull from a) kubernetes "downward env API"
source (service vars, labels, pod info) and b) env vars. Optionally,
we
could include c) env in the image. Then we would pass that entire env
to
the container.
This would mean we would never inject env into the user's container by
default (so no hidden magic variables except service hosts for now),
but
users would be able to selectively include variables by name. The kube
downward env API vars could be appropriately namespaced.
--
Reply to this email directly or view it on GitHub
<
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-72230218>

.

--
Reply to this email directly or view it on GitHub.

--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-72302058
.

True.  I was thinking as a default of exposing only host, port, and maybe a few attributes off the pod.  We could then nuke the docker style env vars.
At least here we have a way to do a migration, vs with magic env vars that show up and people use without you being able to tell.

On Jan 30, 2015, at 10:18 PM, Tim Hockin<EMAIL_ADDRESS>wrote:
I could probably live with that. As per the migration issue - exposing
some of this stuff is actually detrimental to migration. Tread carefully.
On Fri, Jan 30, 2015 at 7:14 PM, Clayton Coleman<EMAIL_ADDRESS>wrote:

I clarified in the other one this was explicit opt in on a per var basis,
but forgot to copy that here.

On Jan 30, 2015, at 10:07 PM, Tim Hockin<EMAIL_ADDRESS>wrote:
And then users who want the actual string "$" in their env vars need to
escape them? Puke.
I could buy a new block of env vars that are explicitly handled this
way,
but not the default block.
On Fri, Jan 30, 2015 at 8:43 AM, Clayton Coleman <
<EMAIL_ADDRESS>wrote:

Somewhat opinionated proposal of how downward API could be exposed as
env
for both labels and service values described here:
#1768 (comment)
<
https://github.com/GoogleCloudPlatform/kubernetes/issues/1768#issuecomment-71331800>

Essentially, do a limited form of env var substitution as
pre-processing
pass on the Pod prior to invoking docker start. Walk the list once to
get
all the user provided env, then go through and allow env substitution
and
let the substitution values pull from a) kubernetes "downward env API"
source (service vars, labels, pod info) and b) env vars. Optionally,
we
could include c) env in the image. Then we would pass that entire env
to
the container.
This would mean we would never inject env into the user's container by
default (so no hidden magic variables except service hosts for now),
but
users would be able to selectively include variables by name. The kube
downward env API vars could be appropriately namespaced.
--
Reply to this email directly or view it on GitHub
<
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-72230218>

.

--
Reply to this email directly or view it on GitHub.

--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-72302058
.

—
Reply to this email directly or view it on GitHub.

@smarterclayton Clarifying for the record that by flag in your above comment you mean attribute on api.EnvVar.  Confirm?

Yes, although a separate block is also reasonable.  Is a separate block easier to reason about, or confusing to new users?

On Feb 2, 2015, at 10:55 PM, Paul Morie<EMAIL_ADDRESS>wrote:
@smarterclayton Clarifying for the record that by flag in your above comment you mean attribute on api.EnvVar. Confirm?
—
Reply to this email directly or view it on GitHub.

@smarterclayton I think a separate block that is designated as being resolved is probably easier to reason about, but that's my own subjective opinion.  @sdminonne, any opinions about that?

FWIW, this should probably be discussed in #386.
As @thockin cautioned and as mentioned in #3949, I wouldn't expose a pod's host.
Note that any property encoded in an env. var. would require a container restart when its value changed.
I'd prefer a separate block, similar to the distinction between labels and annotations.

I would prefer to avoid a new block.
I've a few reasons for that:

In our use cases we really need labels to be injected in the pod (for example to prefix logs which will be sent to log server pods). We'll use labels to constrain scheduling algorithms and would like to avoid having a block for the scheduler and a block for env var injection.
A new block is another group of info in an already crowded json/yaml file

Looking at https://github.com/GoogleCloudPlatform/kubernetes/issues/386 (@smarterclayton I wasn't aware of it when we started the discussion about this) the /etc/labels file (proposed by @bgrant0607) sounds a reasonable solution. The container applications are free to use or ignore this information and dynamic updates to it. The syntax key=label is fine.

I have a slight preference for a new block, but the /etc/labels file or
something like it sounds OK too.  The nice thing about a new block is that
we can extend it to define new things like "also expose labels as a file at
this path".  Extending Env is more restircted.
On Thu, Feb 5, 2015 at 1:39 AM, Salvatore Dario Minonne <
<EMAIL_ADDRESS>wrote:

I would prefer to avoid a new block.
I've a few reasons for that:

In our use cases we really need labels to be injected in the pod (for
example to prefix logs which will be sent to log server pods). We'll use
labels to constrain scheduling algorithms and would like to avoid having a
block for the scheduler and a block for env var injection.
A new block is another group of info in an already crowded json/yaml
file

Looking at #386
https://github.com/GoogleCloudPlatform/kubernetes/issues/386 (
@smarterclayton https://github.com/smarterclayton I wasn't aware of it
when we started the discussion about this) the /etc/labels file (proposed
by @bgrant0607 https://github.com/bgrant0607) sounds a reasonable
solution. The container applications are free to use or ignore this
information and dynamic updates to it. The syntax key=label is fine.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-73018709
.

Good point - it would be nice to make that flexible.  We could also introduce a volume type that can pull labels or volumes.  I guess the question is - what is the boundary for volume types?  File generation?  File generation from a template?  Retrieving keys from etcd and then transforming them?  Or is that a job for sidecar containers or pre start lifecycle hooks?

On Feb 5, 2015, at 7:52 PM, Tim Hockin<EMAIL_ADDRESS>wrote:
I have a slight preference for a new block, but the /etc/labels file or
something like it sounds OK too. The nice thing about a new block is that
we can extend it to define new things like "also expose labels as a file at
this path". Extending Env is more restircted.
On Thu, Feb 5, 2015 at 1:39 AM, Salvatore Dario Minonne <
<EMAIL_ADDRESS>wrote:

I would prefer to avoid a new block.
I've a few reasons for that:

In our use cases we really need labels to be injected in the pod (for
example to prefix logs which will be sent to log server pods). We'll use
labels to constrain scheduling algorithms and would like to avoid having a
block for the scheduler and a block for env var injection.
A new block is another group of info in an already crowded json/yaml
file

Looking at #386
https://github.com/GoogleCloudPlatform/kubernetes/issues/386 (
@smarterclayton https://github.com/smarterclayton I wasn't aware of it
when we started the discussion about this) the /etc/labels file (proposed
by @bgrant0607 https://github.com/bgrant0607) sounds a reasonable
solution. The container applications are free to use or ignore this
information and dynamic updates to it. The syntax key=label is fine.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-73018709
.

—
Reply to this email directly or view it on GitHub.

Right now volumes are run-once.  If you need something active, as in a git
syncer, it's not a volume.  we might want to extend the volume abstraction,
but later.
On Thu, Feb 5, 2015 at 5:16 PM, Clayton Coleman<EMAIL_ADDRESS>wrote:

Good point - it would be nice to make that flexible. We could also
introduce a volume type that can pull labels or volumes. I guess the
question is - what is the boundary for volume types? File generation? File
generation from a template? Retrieving keys from etcd and then transforming
them? Or is that a job for sidecar containers or pre start lifecycle hooks?

On Feb 5, 2015, at 7:52 PM, Tim Hockin<EMAIL_ADDRESS>wrote:
I have a slight preference for a new block, but the /etc/labels file or
something like it sounds OK too. The nice thing about a new block is
that
we can extend it to define new things like "also expose labels as a file
at
this path". Extending Env is more restircted.
On Thu, Feb 5, 2015 at 1:39 AM, Salvatore Dario Minonne <
<EMAIL_ADDRESS>wrote:

I would prefer to avoid a new block.
I've a few reasons for that:

In our use cases we really need labels to be injected in the pod
(for
example to prefix logs which will be sent to log server pods). We'll
use
labels to constrain scheduling algorithms and would like to avoid
having a
block for the scheduler and a block for env var injection.
A new block is another group of info in an already crowded
json/yaml
file

Looking at #386
https://github.com/GoogleCloudPlatform/kubernetes/issues/386 (
@smarterclayton https://github.com/smarterclayton I wasn't aware of
it
when we started the discussion about this) the /etc/labels file
(proposed
by @bgrant0607 https://github.com/bgrant0607) sounds a reasonable
solution. The container applications are free to use or ignore this
information and dynamic updates to it. The syntax key=label is fine.
--
Reply to this email directly or view it on GitHub
<
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-73018709>

.

--
Reply to this email directly or view it on GitHub.

--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-73164225
.

After some thought and discussion with @sdminonne, @EricMountain-1A, and @smarterclayton, I had some thoughts on this:

We know different users will want this information both as volumes and environment variables
There are other sources of data users want in this manner (secrets, service metadata)
The VolumeSource / kubelet volume plugin abstraction is a good one (my opinion) for exposing different information into pods as volumes
Should there be a similar source abstraction for environments?  I don't think simply generating env vars will be sufficient for all cases (for example, you wouldn't want to expose secret data as env vars using the current mechanism since the data can be captured by a container commit)

Thinking through the possibility of a source abstraction for environments in the context of this issue:

Add a new DynamicContext block to a pod; this block will allow you to adapt different sources of information (labels, service metadata, etc)
Add a new EnvironmentSource abstraction to a container; the existing method of specifying values for environment becomes something like ManualSource
Add a new DynamicContextSource for environment variables; this will allow you to adapt pieces of DynamicContext into environment variables
Add a new DynamicContextVolumeSource for volumes; this will allow you to adapt piece of the dynamic context into volumes / files

Other source of information can be adapted with new Source implementations.
Typing this out, I'm not sure if I like it.
Any thoughts, @smarterclayton @sdminonne @EricMountain-1A @thockin @bgrant0607 @lavalamp ?

That's a lot of things to add to a pod.  I don't know that genericizing the source of the info is the solution though, because it adds more abstractions in a common path.  If you can dynamically mutate env prior to create, that's enough for basic adaptation / exposing downward api info into pods. If you want to do more sophisticated calculation, do it in your pod.
I haven't had time to write up detailed feedback of the proposed generated env structure, but I think we want to be careful to do two things:

Clearly identify which values are coming from the downward API, so that we can migrate and version the downward API
Only solve the bare minimum of substitution to allow transforming multiple variables and interspersed constants into one (host/port/protocol -> url, base paths for secrets / volumes -> full path)

More complex calculation can be done in the container.

On Feb 15, 2015, at 1:13 PM, Paul Morie<EMAIL_ADDRESS>wrote:
After some thought and discussion with @sdminonne, @EricMountain-1A, and @smarterclayton, I had some thoughts on this:
We know different users will want this information both as volumes and environment variables
There are other sources of data users want in this manner (secrets, service metadata)
The VolumeSource / kubelet volume plugin abstraction is a good one (my opinion) for exposing different information into pods as volumes
Should there be a similar source abstraction for environments? I don't think simply generating env vars will be sufficient for all cases (for example, you wouldn't want to expose secret data as env vars using the current mechanism since the data can be captured by a container commit)
Thinking through the possibility of a source abstraction for environments in the context of this issue:
Add a new DynamicContext block to a pod; this block will allow you to adapt different sources of information (labels, service metadata, etc)
Add a new EnvironmentSource abstraction to a container; the existing method of specifying values for environment becomes something like ManualSource
Add a new DynamicContextSource for environment variables; this will allow you to adapt pieces of DynamicContext into environment variables
Add a new DynamicContextVolumeSource for volumes; this will allow you to adapt piece of the dynamic context into volumes / files
Other source of information can be adapted with new Source implementations.
Typing this out, I'm not sure if I like it.
Any thoughts, @smarterclayton @sdminonne @EricMountain-1A @thockin @bgrant0607 @lavalamp ?
—
Reply to this email directly or view it on GitHub.

@smarterclayton It seems heavy to me too.

@pmorie I'm tempted to not have kubernetes inject environment variables into containers, and limit the proposal to making labels and other metadata available simply through volumes - then it's up to containers to decide how they want to use this data.  This would simplify your proposal, and if the volume abstraction is later extended to allow for dynamic updates of this data - as mentionned above by @thockin - at least containers have the option to refresh the data (periodically, inotify...), whereas you'd never be able to update their environment variables.
Having a generic way to generate volumes from a variety of sources of data sounds good (with minimal computation as @smarterclayton said). @sdminonne is working on a proposal for getting metadata into containers - it could be adapted to cover secrets, e.g:
"generated": [
     {"volume":
       [ { "path": "/etc/secret1",
           "from": "secrets",
           "type": "tmpfs",
         }
      ]
    },
    {"volume":
       [ { "path": "/etc/labels",
           "from": "labels",
           "entries":
               [ { "generate": "%s",
                   "name": "name" }
               ]
         }
      ]
    }
]
```

I could get behind a volume plugin to expose some of these things, I
guess.  The only real difference between a volume plugin and a container
that writes to disk is the startup ordering.
But again, if you ever want this info updated dynamically, I don't think
you want a volume, you want a container.  For now, any change to the pod
structure (e.g. labels) should trigger a restart, but it should eventually
be possible to update labels on the fly.
As a straw man, we should have some way to map "static-ish" kubernetes data
onto env vars.  E.g. put the pod's  namespace into MY_POD_NS and name into
MY_POD_NAME.  Now run a side-car container that does a watch on
$MY_POD_NAME.$MY_POD_NS and updates a shared EmptyDir whenlabels change.
On Mon, Feb 16, 2015 at 6:23 AM, Eric Mountain @ Amadeus <
<EMAIL_ADDRESS>wrote:

@pmorie https://github.com/pmorie I'm tempted to not have kubernetes
inject environment variables into containers, and limit the proposal to
making labels and other metadata available simply through volumes - then
it's up to containers to decide how they want to use this data. This would
simplify your proposal, and if the volume abstraction is later extended to
allow for dynamic updates of this data - as mentionned above by @thockin
https://github.com/thockin - at least containers have the option to
refresh the data (periodically, inotify...), whereas you'd never be able to
update their environment variables.
Having a generic way to generate volumes from a variety of sources of data
sounds good (with minimal computation as @smarterclayton
https://github.com/smarterclayton said). @sdminonne
https://github.com/sdminonne is working on a proposal for getting
metadata into containers
https://github.com/sdminonne/kubernetes/blob/labels_to_container_proposal/docs/design/labels_to_pods.md

it could be adapted to cover secrets, e.g:

"generated": [
{"volume":
[ { "path": "/etc/secret1",
"from": "secrets",
"type": "tmpfs",
}
]
},
{"volume":
[ { "path": "/etc/labels",
"from": "labels",
"entries":
[ { "generate": "%s",
"name": "name" }
]
}
]
}
]
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-74514926
.

On Feb 17, 2015, at 12:23 AM, Tim Hockin<EMAIL_ADDRESS>wrote:
I could get behind a volume plugin to expose some of these things, I
guess. The only real difference between a volume plugin and a container
that writes to disk is the startup ordering.
But again, if you ever want this info updated dynamically, I don't think
you want a volume, you want a container. For now, any change to the pod
structure (e.g. labels) should trigger a restart, but it should eventually
be possible to update labels on the fly.
As a straw man, we should have some way to map "static-ish" kubernetes data
onto env vars. E.g. put the pod's namespace into MY_POD_NS and name into
MY_POD_NAME. Now run a side-car container that does a watch on
$MY_POD_NAME.$MY_POD_NS and updates a shared EmptyDir whenlabels change.

That's a good straw man.  I have a large enough set of use cases for simple env composition that I don't think it's wasted effort, but it does need to focus on the simplest possible expression and use case (it's ok to limit the scope of expressiveness). It's a 20-30% tool

On Mon, Feb 16, 2015 at 6:23 AM, Eric Mountain @ Amadeus <
<EMAIL_ADDRESS>wrote:

@pmorie https://github.com/pmorie I'm tempted to not have kubernetes
inject environment variables into containers, and limit the proposal to
making labels and other metadata available simply through volumes - then
it's up to containers to decide how they want to use this data. This would
simplify your proposal, and if the volume abstraction is later extended to
allow for dynamic updates of this data - as mentionned above by @thockin
https://github.com/thockin - at least containers have the option to
refresh the data (periodically, inotify...), whereas you'd never be able to
update their environment variables.
Having a generic way to generate volumes from a variety of sources of data
sounds good (with minimal computation as @smarterclayton
https://github.com/smarterclayton said). @sdminonne
https://github.com/sdminonne is working on a proposal for getting
metadata into containers
https://github.com/sdminonne/kubernetes/blob/labels_to_container_proposal/docs/design/labels_to_pods.md

it could be adapted to cover secrets, e.g:

"generated": [
{"volume":
[ { "path": "/etc/secret1",
"from": "secrets",
"type": "tmpfs",
}
]
},
{"volume":
[ { "path": "/etc/labels",
"from": "labels",
"entries":
[ { "generate": "%s",
"name": "name" }
]
}
]
}
]
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-74514926
.

—
Reply to this email directly or view it on GitHub.

@smarterclayton @thockin (if I'm understanding correctly)
so an EmptyDir for modifiable metadata (as far as I know only label) and ENV vars for static ones.
Using a new block to define these new behaviors.
@smarterclayton do you think what reported by @EricMountain-1A
"entries":
               [ { "generate": "%s",
                   "name": "name" }
               ]

is enough in term of expressiveness or do you think we need something more complex?

@sdminonne I imagined the following:

Static values exposed as environment vars or with a new volume plugin
For dynamic values:

Create an EmptyDir volume in your pod
Make a container that uses the downward API to project information from the master into the volume (the sidecar container)
Watch the files in the volume from your 'main' container

Does that match your reading?

@pmorie  it does.
Thanks

@sdminonne @smarterclayton @thockin Are there enough commonalities about the dynamic data from the downward API that it can be a shared component, ie kubernetes/pod-info-sidecar ?

@sdminonne Expanding a little bit, I was referring to an image for the proposed sidecar container that would handle populating a shared volume with dynamic data about the pod, and whether that image would have enough common utility that it should be a system component.  Put another way, is this a common enough use-case (get a volume with dynamic info about the pod projected into it by another container in the pod) that kubernetes should offer a docker image that does it?

@pmorie thanks for the explanation.
So we may end up with: a set of env variables injected in the POD, and  a system docker container where info can be found about PODs and those info are available via a shared filesystem?

@sdminonne correct. The sidecar container would need auth to access the master, either via a secret consumed in the volume or something like the LOAS Daemon.

Why would it need auth?  It all seems strictly read-only...
As for feature set, less is more unless there's no other choice.  I'd love
to say that the downward API is just about customizing env vars, and the
sidecar container can be more flexible.  Can we get away with that?
And yes, I think that a generic "sync kubernetes info to files" container
would be a great piece of the overall system.
On Tue, Feb 17, 2015 at 8:40 AM, Paul Morie<EMAIL_ADDRESS>wrote:

@sdminonne https://github.com/sdminonne correct. The sidecar container
would need auth to access the master, either via a secret consumed in the
volume or something like the LOAS Daemon
https://github.com/GoogleCloudPlatform/kubernetes/issues/2209.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-74699892
.

----- Original Message -----

Why would it need auth?  It all seems strictly read-only...
As for feature set, less is more unless there's no other choice.  I'd love
to say that the downward API is just about customizing env vars, and the
sidecar container can be more flexible.  Can we get away with that?

I think so for the near term.  We can take real use cases to handle the container case, and adapt them in later if necessary.

And yes, I think that a generic "sync kubernetes info to files" container
would be a great piece of the overall system.
On Tue, Feb 17, 2015 at 8:40 AM, Paul Morie<EMAIL_ADDRESS>wrote:

@sdminonne https://github.com/sdminonne correct. The sidecar container
would need auth to access the master, either via a secret consumed in the
volume or something like the LOAS Daemon
https://github.com/GoogleCloudPlatform/kubernetes/issues/2209.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-74699892
.

Reply to this email directly or view it on GitHub:
https://github.com/GoogleCloudPlatform/kubernetes/issues/560#issuecomment-74706362

@sdminonne @thockin @smarterclayton @bgrant0607
Continuing to flesh out the sidecar container outlined above:
{
  "id": "kubernetes-info-test-pod",
  "kind": "Pod",
  "apiVersion":"v1beta2",
  "labels": {
    "name": "kubernetes-info-test-pod"
  },
  "desiredState": {
    "manifest": {
      "version": "v1beta1",
      "id": "kubernetes-info-test-pod",
      "containers": [{
        "name": "client-container",
        "image": "busybox",
        "command": [ "cat", "/etc/kubernetes-info/labels" ],
        "volumeMounts": [{
          "name": "kubernetes-info-volume",
          "mountPath": "/etc/kubernetes-info",
          "readOnly": true
        }]
      },
      {
        "name": "kubernetes-info-sidecar",
        "image": "kubernetes/kubernetes-info",
        "command": [ "write-kubernetes-info", "/etc/kubernetes-info"],
        "volumeMounts": [{
          "name": "kubernetes-info-volume",
          "mountPath": "/etc/kubernetes-info",
        }]
      }],
      "volumes": [{
        "name": "kubernetes-info-volume",
      }]
    }
  }
}

@pmorie thanks for this.
@smarterclayton @thockin let's take the testcase which I already mentioned. Propagating labels to prefix log for aggregation (something similar to https://github.com/GoogleCloudPlatform/kubernetes/issues/4255). In this case at the run of the container we should write the file in /etc/kubernetes-info updating it at each label, update.
The updates should be triggered by the presence of a container named kubernetes-info-sidecar?

Had a good chat w/ @sdminonne and @EricMountain-1A this morning.  Dario is going to prototype a new docker image for the sidecar container that will accept parameters for:

The pod name and namespace
A target directory to project information into
Flags for which info to project (initially it will just support labels)

Example:
project-pod-info --name=<pod name> --namespace=<pod namespace> --output-path=/pod-info --labels

The sidecar will poll the API server for information about the Pod (we had talked about watching, but I had forgotten that there is no watch API for pods) and refresh the information in the shared volume.

@sdminonne @EricMountain-1A see @thockin's comments re: atomic update here: https://github.com/GoogleCloudPlatform/kubernetes/issues/4673#issuecomment-75359764

Dumping info into files was also discussed in #386. I certainly prefer that over environment variables.
However, I think that doesn't address @smarterclayton's concerns about accidental coupling, opt-in for specific information, and adapting to application expectations rather than forcing them to adapt to Kubernetes conventions (other than deployment-time adapters).

Just add  https://github.com/GoogleCloudPlatform/kubernetes/pull/5093 as a possible implementation.

Done enough, via downward API


Bump Version

Please bump the version to GLPI 9.2.1 and create one new image at docker hub.
Thanks.

I've just to upgrade GLPI to 9.2.1.
For now, I've not added new feature to the image itself, but I've seriously improved the image github build process.
This issue must be closed now, then I will continue the update by adding the above feature.
Feel free to make to make feedback on your upgrade succesness


GPU->CPU Memcpy failed Error or InternalError c2c fft failed Error when using FFT2D

The problem
I wrote a python script that used FFT2D from tensorflow you can find the Python script attached : TestFFT2D.py using GPU.
In this script, I first create a convolution apply to a tensor and than compute a loss between a reference input tensor and a variable one with ftt2d and ifft2d operations.
When I launch my script, I get a GPU->CPU Memcpy failed Error or an InternalError c2c fft failed Error. I don't know why the error change when I run again my script.
I test my code on two differents machine with Ubuntu 16.04 one with a GeForce GTX 680 GPU and one with a GeForce GTX 1080. In both case, I can randomly get both of the error messages.
Abandon.txt
InternalError.txt
Sometimes, my machine just crashes and I need to reboot it.
Source code / logs
You can find the terminal messages errors attached.
This is the TestFFT2D.py code : TestFFT2D.py
`
import tensorflow as tf
import numpy as np
def get_loss(sess,net,img_ref,layer):
total_loss  = 0.

sess.run(net['input'].assign(img_ref))
x = net[layer]
a = sess.run(net[layer])
x = tf.transpose(x, [0,3,1,2])
a = tf.transpose(a, [0,3,1,2])
_,N,_,_ = a.shape
F_x = tf.fft2d(tf.complex(x,0.))
F_x_conj = tf.conj(F_x)
F_a = tf.fft2d(tf.complex(a,0.))
F_a_conj = tf.conj(F_a)

for i in range(N):
    inter_corr_x = tf.multiply(F_x,F_x_conj)
    inter_corr_a = tf.multiply(F_a,F_a_conj)

    ifft2_corr_x = tf.ifft2d(inter_corr_x)
    ifft2_corr_a = tf.ifft2d(inter_corr_a)

    R_x = tf.real(ifft2_corr_x)
    R_a = tf.real(ifft2_corr_a)

    style_loss = tf.nn.l2_loss(tf.subtract(R_x,R_a))
    total_loss += style_loss

    # Shift the tensor from on 1 unit on the dimension 1
    F_x = tf.concat([tf.expand_dims(F_x[:,-1,:,:],0), F_x[:,:-1,:,:]], axis=1)
    F_a = tf.concat([tf.expand_dims(F_a[:,-1,:,:],0), F_a[:,:-1,:,:]], axis=1)

return(total_loss)

def main(args):
# Definition of the first operations :
height, width, numberChannels = 400,300,3
net = {}
current = tf.Variable(np.zeros((1, height, width, numberChannels), dtype=np.float32))
net['input'] = current
kernel = tf.constant(np.random.uniform(low=-1,high=1,size=(400,300,3,64)),dtype=np.float32)
conv = tf.nn.conv2d(current, kernel, strides=(1, 1, 1, 1),padding='SAME',name='conv')
bias = tf.constant(np.random.uniform(low=-1,high=1,size=(64)),dtype=np.float32)
conv_add_bias = tf.nn.bias_add(conv, bias)
net['conv1_1'] = conv_add_bias

img_ref = np.random.uniform(low=-128,high=128,size=(1, height, width, numberChannels))
init_img = np.random.uniform(low=-128,high=128,size=(1, height, width, numberChannels))

sess = tf.Session()

sess.run(net['input'].assign(img_ref))
# Definition of the loss
loss = get_loss(sess,net,img_ref,'conv1_1')

# Preparation of the assignation operation
placeholder = tf.placeholder(tf.float32, shape=init_img.shape)
assign_op = net['input'].assign(placeholder)

sess.run(tf.global_variables_initializer())
sess.run(assign_op, {placeholder: init_img})
print("Before loss evaluation")
loss_evaluation = sess.run(loss)
print("loss_evaluation",loss_evaluation)

return(0)

if name == 'main':
import sys
sys.exit(main(sys.argv))
`
System information

**Have I written custom code **: TestFFT2D.py
OS Platform and Distribution: Linux Ubuntu 16.04
TensorFlow installed from: Source
TensorFlow version: v1.0.0-65-g4763edf-dirty 1.0.1
CUDA/cuDNN version:
Cuda compilation tools, release 7.5, V7.5.17 and  cuDNN  5 with the GeForce GTX 680
Cuda compilation tools, release 8.0, V8.0.61and cuDNN 5 with the GeForce GTX 1080
GPU model and memory: Tested on GeForce GTX 680 with 2Go and on GeForce GTX 1080 with 12Go
** Python version**: Python 3.6.1 |Anaconda 4.4.0 (64-bit)|
Exact command to reproduce: python TestFFT2D.py : copy-paste the code above and run it with python 3

It looks like you are compiling off the 1.0 branch.  Could you try reproducing this with master (or at least 1.2)?

I have updated my Tensorflow version 1.0.1 to the version 1.2 and I can't reproduce those error with the former script : TestFFT2D.py
But when I increase the size of the tensor I used (from 400 * 300 to 800 * 600), I got an Internal Error message again :
InternalError2.txt
You can test with this script : TestFFT2D_1.py (I also reduce the size of the kernel filters).
I can get the same type of error when I increase the number of filters I used.
Do you advice me to present my problem on StackOverflow instead of Github ?

I think that may be an out-of-memory error, as seen here: #8710; same
return code.
On Mon, Jun 19, 2017 at 5:05 AM, Gonthier Nicolas<EMAIL_ADDRESS>wrote:

I have updated my Tensorflow version 1.0.1 to the version 1.2 and I can't
reproduce those error with the former script : TestFFT2D.py
https://github.com/nicaogr/silver-octo-fortnight/blob/master/TestFFT2D.py
But when I increase the size of the tensor I used (from 400 * 300 to 800 *
600), I got an Internal Error message again :
InternalError2.txt
https://github.com/tensorflow/tensorflow/files/1084781/InternalError2.txt
You can test with this script : TestFFT2D_1.py
https://github.com/nicaogr/silver-octo-fortnight/blob/master/TestFFT2D_1.py
(I also reduce the size of the kernel filters).
I can get the same type of error when I increase the number of filters I
used.
Do you advice me to present my problem on StackOverflow instead of Github ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/10759#issuecomment-309420130,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA1YDsLdIEIspSIkb-soRG7HC8PBjjGrks5sFmP5gaJpZM4N8Upp
.

Yup, as @wolffg points out, this looks like the same out-of-memory error as #8710.  Closing this out, since it doesn't look like this is a bug in the core framework.


Add shafaqulbahar's file

Things I've learned till now.
I have learned to create a branch, to open and close an issue, and to open the pull request.


Receive Push on IOS

i m working to implement expo plugin, so actually , Push & In App Msg are okay on Android but on IOS only In App Msg are working.
i guess that dependencies are ll installed because In app message are working and build pass with no errors.
after read on github issues, i deleted expo-notifications but still have the bug.
may be should i revoke the push certificate (Name : Expo Push Notifications Key 2022******) ?
i m asking help because Sentry doesn't get any bug on app load and when i send push.
it's also difficult to debug  because Testflight validation Team is slow( i to build on eas (almost 1 hour) then wait almost 2 days that i can test the build on TestFlight !)
so if you have any idea or remarks, thanks by advance
my package.json :
{
  "name": "festival-off",
  "version": "2.3.1",
  "scripts": {
    "start": "expo start --dev-client",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web"
  },
  "dependencies": {
    "@expo/vector-icons": "^13.0.0",
    "@react-native-async-storage/async-storage": "1.17.11",
    "@react-native-community/datetimepicker": "6.7.3",
    "@react-native-masked-view/masked-view": "0.2.8",
    "@react-native-picker/picker": "2.4.8",
    "@react-navigation/bottom-tabs": "^5.8.0",
    "@react-navigation/drawer": "^5.9.0",
    "@react-navigation/material-bottom-tabs": "^5.2.16",
    "@react-navigation/material-top-tabs": "^5.2.16",
    "@react-navigation/native": "^5.7.3",
    "@react-navigation/stack": "^5.9.0",
    "@sentry/react-native": "4.13.0",
    "axios": "^0.26.0",
    "brew": "0.0.8",
    "brw": "^1.0.1",
    "customerio-expo-plugin": "^1.0.0-beta.9",
    "customerio-reactnative": "^2.3.3",
    "expo": "~48.0.15",
    "expo-application": "~5.1.1",
    "expo-build-properties": "~0.6.0",
    "expo-camera": "~13.2.1",
    "expo-checkbox": "~2.3.1",
    "expo-constants": "~14.2.1",
    "expo-device": "~5.2.1",
    "expo-file-system": "~15.2.2",
    "expo-image-manipulator": "~11.1.1",
    "expo-image-picker": "~14.1.1",
    "expo-linking": "~4.0.1",
    "expo-location": "~15.1.1",
    "expo-media-library": "~15.2.3",
    "expo-permissions": "~14.1.1",
    "expo-splash-screen": "~0.18.2",
    "expo-status-bar": "~1.4.4",
    "expo-storage": "~48.0.0",
    "expo-store-review": "~6.2.1",
    "expo-updates": "~0.16.4",
    "formik": "^2.2.9",
    "i18next": "^22.5.0",
    "js-cookie": "^3.0.1",
    "lodash": "^4.17.21",
    "moment": "^2.29.4",
    "react": "18.2.0",
    "react-dom": "18.2.0",
    "react-i18next": "^12.3.1",
    "react-native": "0.71.8",
    "react-native-datepicker": "^1.7.2",
    "react-native-elements": "^3.4.2",
    "react-native-gesture-handler": "~2.9.0",
    "react-native-image-resizer": "^1.4.5",
    "react-native-mask-text": "^0.7.0",
    "react-native-paper": "^4.0.1",
    "react-native-picker-select": "^8.0.4",
    "react-native-reanimated": "~2.14.4",
    "react-native-root-toast": "^3.4.0",
    "react-native-safe-area-context": "4.5.0",
    "react-native-screens": "~3.20.0",
    "react-native-section-alphabet-list": "^2.1.0",
    "react-native-tab-view": "^2.15.1",
    "react-native-vector-icons": "7.1.0",
    "react-native-web": "~0.18.10",
    "react-native-webview": "11.26.0",
    "react-redux": "^8.0.2",
    "recyclerlistview": "^4.2.0",
    "redux": "^4.2.0",
    "redux-persist": "^6.0.0",
    "redux-thunk": "^2.4.1",
    "sentry-expo": "~6.1.0",
    "typescript": "^4.9.4",
    "yup": "^0.32.11"
  },
  "devDependencies": {
    "@babel/core": "^7.20.0"
  },
  "private": true
}

@nympheastudio Can you please confirm if the device has notification permission granted? You can check the notification permission on iOS by following these steps:

Open Settings (OS Settings app on iOS)
Search for your app (You can use search bar above or scroll at the bottom and find your app)
See if your app has notification permission listed and granted (See screenshots below for reference)

If your app has not been granted for notification permission, it won't show any notification. You can request for notification permission using any of the following options:

Prompt users for to opt-into push notifications using JS code
Set ios.disableNotificationRegistration to false in your config

Hi, thanks for your answer,
first, yes on the ipad , notifications are allowed (by default after installation).
secondly , yes i  Push capability is enabled (it's on a managed expo project, so no xcode)
but i can see the pod log : Installing CustomerIOMessagingPushAPN (2.6.0)
after customer.io init, i register Push like on the sample app :
`
if (!DEV) {
const generateRandomToken = () => {
let length = 163
if (Platform.OS == "ios"){
length = 64
}
const char = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1234567890';
const random = Array.from(
{length: 64},
() => char[Math.floor(Math.random() * char.length)]
);
const randomString = random.join("");
return randomString
}
const token = generateRandomToken()
CustomerIO.registerDeviceToken(token)
console.log("Device token customer.io registered" + token);
}`
it seems to be ok on android , because people are created on customer.io database, but  there is no IOS user.
i m waiting testflight to test a new version, i hope it ll fix my problem, i ll let you know. thanks and have a nice day

thanks a lot for your help and suggestions, i ll try this "trick" on next build test on TestFlight.
But i still have questions please :
i saw that the  use react-native-community/push-notification and react-native-push-notification on the package.json
maybe it come from there no ?
can it come from my customer.io  APN config ? (who was working with expo push)
should i re install expo-notification ? ( i read that it can make confict)
once again i m on managed expo, so debug is difficult and long,  and for expo managed (without ios folder and xcode features) there is no exemple.
so if you have the sample project managed expo with recent lib  , because the sample ami begin to be outdated (   "expo": "~42.0.1","react-native": "0.69.1" )
thanks and have a nice day

@nympheastudio We are working on making our SDK more compatible with expo-notifications, but that is still in progress so you may face some challenges with it. However, other libraries (e.g. react-native-push-notification) should work fine and can provide you with device token. You can then pass the token to registerDeviceToken and it should work fine for you.
Please let us know if you have more questions.

Hi again,
so i tried without calling registerDeviceToken method and with using the expo  token .
In both of case , there is no activity  and no people created in the customerio database.
token = (await Notifications.getExpoPushTokenAsync()).data;
    console.log(token);

    if(token !== ''){

       if (!__DEV__) {
         console.log(' CustomerIO.registerDeviceToken(token) - exec');
         CustomerIO.registerDeviceToken(token);

       }

     }

Si sorry to repeat but, it seems that you do not have a sample  working on IOS using recent dep like "expo": "~48.0.15" and  "react": "18.2.0".
Once again i m on managed, so my developping context is tiny.
please,  maybe can i share my repo to someone of your team ?
Thanks by advance ( my free trial ending in 5 days so i need to see it working, as you can imagine). Thanks

@nympheastudio I understand that you are currently experiencing some issues with the activities not being reported and no device being registered. I want to assure you that we are currently testing our plugin with these releases and have not encountered any major issues thus far. It's possible that there might be another underlying cause for the problem you're facing.
Since you mention there isn't any activity reported on dashboard, I suspect this could be issue with your keys when setting up on EAS? Can you please confirm if your app is fetching the correct keys during the SDK initialization and plugin configuration on EAS. Verifying the accuracy of these keys could help us pinpoint the issue.
Additionally, we have just released a new version of the plugin, which includes bug fixes. Updating to the latest version might help resolve the problem. We recommend giving it a try.
Thank you for your understanding and patience as we work to resolve this matter promptly.

thanks for your answer. Yes, i think the certif is okay , i was enable to receive push on ios and android via expo.
i ll test with the plugin in version 1.0.0-beta.10 and let you know

hello Muhammad, i did tried :
with expo plugin beta 10 +  customerio-reactnative 2.3.3 but still only able te get push by android again.
with expo plugin beta 10 +  customerio-reactnative 2.4.0 but it goes on error on "eas build"
so i m sorry, but i switch to signal and i was enable to get push on ios and android.
Thanks for your help, but because deadline of my project is coming soon i can not test anymore and ll use signal for the moment.
thanks and have a nice day


disable keyboard shortcuts

I'd like to disable keyboard shortcuts for a presentation. How can I do that?
Long story: I am building a presentation that allows user input in fields or clicks on elements on the slide, and then generate responses. This way, I can do an interactive presentation/demo. For example, I may have an input field on a slide where the user enters text, clicks a button, and a response is shown below the field. Right now, when I try to enter text in the input field, if the keystroke happens to be a remarkjs keyboard shortcut, the command is fired. For example, if I enter 'h' in the field, help is shown. Obviously, I don't want that. So, I'd like to disable all keyboard shortcuts and cursor clicks except, perhaps, the arrow keys to move the slides to next or prev.
Also, if someone has built such an interactive presentation, I'd love to see it to get ideas. Many thanks.

Can you wrap it around in an iframe? Essentially that was what I did here to stop the interactivity.
I have used plotly to get interactive graphs as here but you can have a table with search option as Yihui had here in his slides (albeit wrapping in iframes first so the keyboard shortcuts do not get triggered).

Hmmmm, I had not thought of iframes. I could try that as a last resort but I’d prefer not to use iframes as that would mess up my slides structure and raw code. I’d prefer to simply disable keyboard shortcuts via a configuration option

On Oct 18, 2018, at 7:44 AM, Emi Tanaka<EMAIL_ADDRESS>wrote:
Can you wrap it around in an iframe? Essentially that was what I did here to stop the interactivity.
I have used plotly to get interactive graphs as here but you can have a table with search option as Yihui had here in his slides (albeit wrapping in iframes first so the keyboard shortcuts do not get triggered).
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

ok, I figured out how to use the iframe, and yes, it is working as expected. However, as I noted earlier, it makes for a really messy code because now I have a slew of html files, one for each slide with an iframe src instead of a single file. It would be so much better to simply disable the keyboard shortcuts via a configuration param.

revisiting this issue – while using iframes does work, I'd rather disable keyboard shortcuts, preferably on certain slides only. The reason is that using many iframes with their own js and css uses up way more memory. It also makes it difficult keep the styles consistent without loading the same css for each iframe src.

OK, I figured out a way forward. I commented out key definitions in keyboard.js and rebuilt the project. The resulting remark js responds only to the left and right arrow keys as I need them for navigating through the slideshow. Now I can type and click buttons on forms in a slide without triggering a slideshow action. I just have to be careful not to use the left and right arrow keys to move within a form field.
It would be really nice if there were a configuration option to do this at runtime.

Marking this as a feature request. This would involve adding configuration setting(s) to disable keyboard shortcuts. I think the question would be how fine-grained control would one want to have - would disabling everything and keeping left/right be enough?

@peterj not sure if this is any help, but the R package xaringanExtra has a function that allows the slides to be editable - and seems to deactivate the keyboard shortcuts when editing (although I have no idea how). You can wrap a table (e.g. a DataTable generated by the DT package) in this and the editable parts no longer respond to keyboard shortcuts. Although the search box still does!!


ModuleNotFoundError: No module named 'datasets'

Hello,
Thank you for your very interesting work. I tried to train the SDXL model by running the script, below.
bash examples/vidit_depth/train.sh
However, I received the below error, which seems to indicate missing modules, perhaps?
The following values were not passed to `accelerate launch` and had defaults used instead:
        `--num_processes` was set to a value of `1`
        `--num_machines` was set to a value of `1`
        `--mixed_precision` was set to a value of `'no'`
        `--dynamo_backend` was set to a value of `'no'`
To avoid this warning pass in values for each of the problematic parameters or run `accelerate config`.
Traceback (most recent call last):
  File "train_controlnext.py", line 37, in <module>
    from datasets import load_dataset
ModuleNotFoundError: No module named 'datasets'
Traceback (most recent call last):
  File "/home/mserna/install/anaconda3/envs/control/bin/accelerate", line 8, in <module>
    sys.exit(main())
  File "/home/mserna/install/anaconda3/envs/control/lib/python3.8/site-packages/accelerate/commands/accelerate_cli.py", line 48, in main
    args.func(args)
  File "/home/mserna/install/anaconda3/envs/control/lib/python3.8/site-packages/accelerate/commands/launch.py", line 1106, in launch_command
    simple_launcher(args)
  File "/home/mserna/install/anaconda3/envs/control/lib/python3.8/site-packages/accelerate/commands/launch.py", line 704, in simple_launcher
    raise subprocess.CalledProcessError(returncode=process.returncode, cmd=cmd)
subprocess.CalledProcessError: Command '['/home/mserna/install/anaconda3/envs/control/bin/python', 'train_controlnext.py', '--pretrained_model_name_or_path', 'stabilityai/stable-diffusion-xl-base-1.0', '--pretrained_vae_model_name_or_path', 'madebyollin/sdxl-vae-fp16-fix', '--variant', 'fp16', '--use_safetensors', '--output_dir', 'train/example', '--logging_dir', 'logs', '--resolution', '1024', '--gradient_checkpointing', '--set_grads_to_none', '--proportion_empty_prompts', '0.2', '--controlnet_scale_factor', '1.0', '--mixed_precision', 'fp16', '--enable_xformers_memory_efficient_attention', '--dataset_name', 'Nahrawy/VIDIT-Depth-ControlNet', '--image_column', 'image', '--conditioning_image_column', 'depth_map', '--caption_column', 'caption', '--validation_prompt', 'a stone tower on a rocky island', '--validation_image', 'examples/vidit_depth/condition_0.png']' returned non-zero exit status 1.

If I need to fix a reference or install something new, I would be happy to do so. Thank you for your help!

There's a missing package dependency.
Just run pip install datasets to install it.
I've updated the requirements.txt. Sorry for the inconvenience.


node version

clould you modify the node version of package https://www.npmjs.com/package/default-import。I think >14 maybe not good

What is the issue you are having / what is the correct version range?
Nodejs stabilized ESM with v14, so that range sounds correct to me.
More likely issues will come up with Typescript version/settings. That package is for resolving issues around module: NodeNext which was released in 4.7.
That is properly declared in both the packages devDependencies + tsconfig, but neither of those impact the npm module.


Created Spanish (Spain) translations

As opened on Issue #30 and using the Community Guidelines, I open this pull request to end the opened issue and submit a new subset of translations to the application.

Thank you for your contribution!! 🤩