task names are truncated, splitting the task into a new task

Just been trying chronometrist, overall I quite like its simplicity and the s-exp data. Thanks!
There is a niggle I have: when create a new task, if the name is too long, chronometrist records that name in the data file, and truncates it in the *Chronometrist* buffer. Ok... but if I pause and restart it, the new time period has the truncated name, and the *Chronometrist* buffer now has two tasks, with apparently the same name. They they look the same when truncated - but one is the original long name, the other is the truncated name.  Further - from now on, only the new truncated name gets any time added to it.
So:

Is there a way to lengthen or remove the truncation length? (Can't see an option in customize-mode for that)
In any case, shouldn't the long name be preserved in the data?

Oh, thank you for the appreciation, I feel quite elated to hear that 😀
Thanks also for the bug report. I'd never noticed this, as I always used rather short names. I'm able to reproduce it, and hopefully I'll be able to fix it soon.

Please have a look at v0.5.6, hopefully it fixes this. Since people are using longer task names than I am, I might make field widths customizable in a future release.

Thanks, have installed and been using. I have been noticing bugs which may be related - task names were being truncated still, and wrongly - for example "sea-map directory panel #43" was truncated to just "sea".
However, I notice a release from 6th January 2021, so I've installed that and will check if this problem persists"

Thanks, have installed and been using. I have been noticing bugs which may be related - task names were being truncated still, and wrongly - for example "sea-map directory panel #43" was truncated to just "sea".
However, I notice a release from 6th January 2021, so I've installed that and will check if this problem persists"

Some trouble with the new version too - including a lock up when I add a task, which requires C-g to escape from. top shows emacs at 100% CPU. Not sure why that was, could have been a linefeed which accidentally got into the task name via copy-and-paste, or it could have been some problem with the chronometrist.sexp file. In any case, I needed to clear the .sexp file and start again.
This in turn had an issue with "Wrong type argument: stringp, nil" because of the empty .sexp file - I needed to add an entry manually, after which things seem to be ok.
I should mention, my .sexp is symlinked from ~/.emacs.d/chronometrist.sexp to another location.  This used to work ok, but could be a factor  nevertheless.

Some trouble with the new version too - including a lock up when I add a task, which requires C-g to escape from. top shows emacs at 100% CPU. Not sure why that was, could have been a linefeed which accidentally got into the task name via copy-and-paste, or it could have been some problem with the chronometrist.sexp file. In any case, I needed to clear the .sexp file and start again.
This in turn had an issue with "Wrong type argument: stringp, nil" because of the empty .sexp file - I needed to add an entry manually, after which things seem to be ok.
I should mention, my .sexp is symlinked from ~/.emacs.d/chronometrist.sexp to another location.  This used to work ok, but could be a factor  nevertheless.

Also: I find I can't add new tasks, even short ones like "test". There is an error:
chronometrist-plist-pp-buffer: Symbol’s function definition is void: json-plist-p

Enabling debug-on-error gets this stacktrace:
Debugger entered--Lisp error: (void-function json-plist-p)
  json-plist-p((:name "test" :start "2021-01-18T17:17:49+0000"))
  chronometrist-plist-pp-buffer()
  chronometrist-plist-pp-to-string((:name "test" :start "2021-01-18T17:17:49+0000"))
  chronometrist-plist-pp((:name "test" :start "2021-01-18T17:17:49+0000") #<buffer chronometrist.sexp>)
  chronometrist-sexp-new((:name "test" :start "2021-01-18T17:17:49+0000"))
  chronometrist-in("test")
  chronometrist-run-functions-and-clock-in("test")
  chronometrist-add-new-task-button(nil)
  chronometrist-add-new-task()
  funcall-interactively(chronometrist-add-new-task)
  call-interactively(chronometrist-add-new-task nil nil)
  command-execute(chronometrist-add-new-task)

Also: I find I can't add new tasks, even short ones like "test". There is an error:
chronometrist-plist-pp-buffer: Symbol’s function definition is void: json-plist-p

Enabling debug-on-error gets this stacktrace:
Debugger entered--Lisp error: (void-function json-plist-p)
  json-plist-p((:name "test" :start "2021-01-18T17:17:49+0000"))
  chronometrist-plist-pp-buffer()
  chronometrist-plist-pp-to-string((:name "test" :start "2021-01-18T17:17:49+0000"))
  chronometrist-plist-pp((:name "test" :start "2021-01-18T17:17:49+0000") #<buffer chronometrist.sexp>)
  chronometrist-sexp-new((:name "test" :start "2021-01-18T17:17:49+0000"))
  chronometrist-in("test")
  chronometrist-run-functions-and-clock-in("test")
  chronometrist-add-new-task-button(nil)
  chronometrist-add-new-task()
  funcall-interactively(chronometrist-add-new-task)
  call-interactively(chronometrist-add-new-task nil nil)
  command-execute(chronometrist-add-new-task)

Grateful for any bug reports as always, @wu-lee ^^
Re: the json-plist-p error, a workaround might be to (require 'json). I'll remove this dependency as soon as I get time.
Re: freezing and the empty file error, yikes what 😱 Please try to get a backtrace (using toggle-debug-on-quit for the former.)

Grateful for any bug reports as always, @wu-lee ^^
Re: the json-plist-p error, a workaround might be to (require 'json). I'll remove this dependency as soon as I get time.
Re: freezing and the empty file error, yikes what 😱 Please try to get a backtrace (using toggle-debug-on-quit for the former.)

I've been using the version 20210119.753 from melpa for a few days. (list-packages doesn't seem to want to show me the version, but I think this is v0.6.3)
Some of the problems haven't re-appeared, but I do find the list of tasks doesn't seem to refresh properly with new tasks, and when I add a new task, therefore can't stop it without switching to a new task.
Here's how I can reproduce this.

Move away my chronometrist.sexp file
Start a fresh emacs instance.
M-x chronometrist
On prompt: "Welcome to Chronometrist! Hit RET to start a new task." hit return and type "task1". hit RETURN
Now hit "a" and type in "task2", hit RETURN

What I'd expect here is for the new task "tast2" to appear in the list. But it doesn't, only "task1" is present. Hitting "g" used to fix things like this but it does not.
(I did try debugging it with edebug, but I'm not really that familiar with elisp and edebug, yet alone elisp with dash, and I've given up trying to track down the problem for now.)

I've been using the version 20210119.753 from melpa for a few days. (list-packages doesn't seem to want to show me the version, but I think this is v0.6.3)
Some of the problems haven't re-appeared, but I do find the list of tasks doesn't seem to refresh properly with new tasks, and when I add a new task, therefore can't stop it without switching to a new task.
Here's how I can reproduce this.

Move away my chronometrist.sexp file
Start a fresh emacs instance.
M-x chronometrist
On prompt: "Welcome to Chronometrist! Hit RET to start a new task." hit return and type "task1". hit RETURN
Now hit "a" and type in "task2", hit RETURN

What I'd expect here is for the new task "tast2" to appear in the list. But it doesn't, only "task1" is present. Hitting "g" used to fix things like this but it does not.
(I did try debugging it with edebug, but I'm not really that familiar with elisp and edebug, yet alone elisp with dash, and I've given up trying to track down the problem for now.)

I've pushed v0.6.4 which should fix this, thanks for the specific steps which helped me replicate the issue.

I've pushed v0.6.4 which should fix this, thanks for the specific steps which helped me replicate the issue.

Thanks. I've been using this new release for a day or so - the reported problem is fixed, although I have still experienced problems with adding tasks, which doesn't happen immediately, and I can't yet reproduce this. I'll desist from adding new problems to this ticket however, and file new issues as appropriate.

Thanks. I've been using this new release for a day or so - the reported problem is fixed, although I have still experienced problems with adding tasks, which doesn't happen immediately, and I can't yet reproduce this. I'll desist from adding new problems to this ticket however, and file new issues as appropriate.


More sql functions

Codecov Report

Merging #53 into develop will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##           develop       #53   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           19        19
  Lines         1100      1163   +63
=========================================
+ Hits          1100      1163   +63

Impacted Files
Coverage Δ

src/zero_one/geni/core.clj
100.00% <ø> (ø)

src/zero_one/geni/sql.clj
100.00% <100.00%> (ø)

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 348da12...a7f06db. Read the comment docs.


Will not run on puma server

I am running a puma server for local development. Probably because of the the condition:
defined?(Rails::Server)

Any clues on how to get this working via puma?

Hmm it should work with Puma (I'm using Puma). Can you give me a little bit more info about what isn't working?
Mind running this commands in your project folder and pasting the output back here?
cat Gemfile.lock | grep "breakfast"
cat Gemfile.lock | grep "rails"
node --version
ruby --version

Also what port are you running the server on? If it's something other than 3000 you will probably need to change some ActionCable settings (see here) and allow that specific port access.

First the output
$ cat Gemfile.lock | grep "breakfast"
    breakfast (0.3.0)
  breakfast
$ cat Gemfile.lock | grep "rails"
      rails-dom-testing (~> 2.0)
      rails-dom-testing (~> 2.0)
      rails-html-sanitizer (~> 1.0, >= 1.0.2)
      rails-dom-testing (~> 2.0)
      rails-html-sanitizer (~> 1.0, >= 1.0.2)
    autoprefixer-rails (6.5.1)
      rails (~> 5.0)
    dotenv-rails (2.1.1)
    factory_girl_rails (4.7.0)
    jquery-rails (4.2.1)
      rails-dom-testing (>= 1, < 3)
    pry-rails (0.3.4)
    rails (<IP_ADDRESS>)
      sprockets-rails (>= 2.0.0)
    rails-dom-testing (2.0.1)
    rails-html-sanitizer (1.0.3)
    rails_stdout_logging (0.0.5)
    rspec-rails (3.5.2)
    sass-rails (5.0.6)
      sprockets-rails (>= 2.0, < 4.0)
    sprockets-rails (3.2.0)
      rails (~> 5.0.0)
      rails (>= 3.1)
  autoprefixer-rails
  dotenv-rails
  factory_girl_rails
  jquery-rails
  pry-rails
  rails (~> 5.0.0)
  rails_stdout_logging
  rspec-rails (~> 3.5.0.beta4)
  sass-rails (~> 5.0)
$ node --version
v6.8.1
$ ruby --version
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin14]

Running on port 3000 via 'heroku local' to run the application backed by a Procfile.
I have been testing but Rails::Server does not seem to exist (not defined) in this setup.
But simply skipping defined?(Rails::Server) in railtie.rb does not seem to work.

Addendum:
What is not working is that after starting the server I don't see something in the logs like:
info: compiled 6 files into 3 files in 808ms
And while I write this I think it could also be just the log.

After some testing:
The problem is running local development via heroku local which uses node-foreman to run the application backed by a Procfile. The Procfile starts rails puma directly, not using rails server, which in it's turn skips Rails::Server.
I think you use the defined?(Rails::Server) to only start the listeners when the proces type is some kind of a server in development mode.
Conclusion: it runs on puma server (but only if called via rails server)

And you beat me to it by a minute.
The check is there to see if we are booting a server http://guides.rubyonrails.org/initialization.html#rails-server-start.
After doing a bit of digging though that constant is only run when rails server is invoked.
I'll try and figure out a way to make that a bit more flexible.

@rubylibre alright I pushed a fix. Running bundle exec puma -C config/puma or bundle exec rails s puma now works correctly.
However, I did notice another issue if you run Puma in clustered mode. For some reason ActionCable subscriptions stop receiving updates in the browser. So if you followed this Heroku Guide there's one small change you will have to make.
Change config/puma.rb to look like this
if ENV.fetch("RAILS_ENV") { "development" } != 'development'
  workers Integer(ENV['WEB_CONCURRENCY'] || 2)
  preload_app!

  on_worker_boot do
    # Worker specific setup for Rails 4.1+
    # See: https://devcenter.heroku.com/articles/deploying-rails-applications-with-the-puma-web-server#on-worker-boot
    ActiveRecord::Base.establish_connection
  end
end

threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 5)
threads threads_count, threads_count

rackup      DefaultRackup
port        ENV['PORT']     || 3000
environment ENV['RACK_ENV'] || 'development'

It will make things work in development and leave production unchanged. Might take me awhile to figure out the root of the issue.

It works. ActionCable not receiving updates in the browser might have to do with the (default) async adapter in development environment. That was quick, thanks. I will go and play now :)


Use isolated daemons in AbstractCompilerContinuousIntegrationTest

This is an attempt to fix https://github.com/gradle/gradle-private/issues/3973. Looking at the failures, seems like the problem is the shared daemons, i.e. another test was executed before GroovyCompilerContinuousIntegrationTest, leaving some leftover internal state in the shared daemon.
Let's try to isolated the daemon used for GroovyCompilerContinuousIntegrationTest.

I've triggered a build for you. Click here to see all failures if there's any.

Pre-tested commit build failed. Click here to see all build failures.

I've triggered a build for you. Click here to see all failures if there's any.


Manage Users section

There's no way for CDF admins to view the user types for each user and manually background check each of them.
It would be great to have a page for this alongside manage dojos where we can view what types of users there are and background check champions (similar to how champions can currently background check mentors).
Ideally what we could do is have a way for any CDF admin to log in "as" a user, so that if there are any issues with their account we can investigate them this way without having to ask for screenshots etc.
Requested by myself

As part of this it would also be useful to be able to add a new co-champion on a Dojo. We are constantly getting requests to do this (usually the founder is on holidays so they can't do it).


[T5A2][T13-B2] Zhang Zongyi

Done for review

@zongyizzy : Some comments added. Please close the PR after reading comments.

Closing PR


[xds] refactor config provider framework

Signed-off-by: Xin Zhuang<EMAIL_ADDRESS>Description: Refactor config provider to:

Move creation of Config implementation from x-ConfigProviders to x-Subscriptions, so that we can
share one Config implementation across workers in a DeltaConfigSubscriptionInstance and its associated providers, and share one Config impl across all works and all providers in a ConfigSubscriptionInstance and its associated providers.
Remove DeltaMutableConfigProviderBase, and MutableConfigProviderBase as now their functionality is covered by the DeltaConfigSubscriptionInstance/ConfigSubscriptionInstance impl.
Adjusted tests.

Risk Level: LOW (no production code)
Testing: unit tests
Docs Changes: N/A
Release Notes: N/A

@snowp mind to do first pass for this? Thank you!

let me also loop in AndresGuedez@
/assign AndresGuedez@

/assign AndresGuedez

/assign htuch
Loop in Harvey for senior maintainer review&approval, thanks!

Thanks<EMAIL_ADDRESS>/assign htuch PTAL.

/assign htuch
PTAL

Thanks!
/htuch PTAL!

/assign htuch

Left some comments on style etc., I'll leave the in depth review to @AndresGuedez who I assume has more context than me :)

hi snowp@ any follow up comments

/assign htuch


Implicit flow with vue.js with API configuration

Hi All, I am trying to implement ID4 with vue.js Now I have few question as below

I have more than 100 of API which will be used by my vue.js client so Do i need to add all the api Name in config of vue,js as below
`import { UserManager } from "oidc-client";
class ApplicationUserManager extends UserManager{
constructor(){
super({
authority: 'http://localhost:5000',
client_id: 'gpsvueappjs',
redirect_uri: 'http://localhost:8080/#/callback/#',
response_type: 'id_token token',
scope: 'openid profile schoolsysytemapi.Admin',
post_logout_redirect_uri: 'http://localhost:8080/index.html'
})
}
async login () {
await this.signinRedirect()
return this.getUser()
}
async logout () {
return this.signoutRedirect()
}
}
`
currently I have added one
scope: 'openid profile schoolsysytemapi.Admin' if yes then is it possible to make it dynamic as we are also make such configuration in ID4 DB.

I need to manage the permission by using Claim of the User - as I have different type of User and I want to give different permission to different user - for example Admin user can create some data but office staff can only view the things like that, SO How can I make the role associated the with API and the User.

Do I need to store the token on client side.

In the API application side do I need to write custom Authorization module to handle the permission .
please , i Have tried to follow the document but its not clear and I am new to IdentityServer4 that's might be not able to get it work.
Thanks
Santosh Jha

This seems to be a general question about IdentityServer - not a bug report or a feature request.
Please use one of the our free or commercial support options
See here for more details.
Thanks!


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-1.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 612

Questions ?
Please refer to the Backport tool documentation


Failed to load dynamic library 'libonnxruntime.so': dlopen failed: library "libonnxruntime.so" not found

I spent some time trying to run the example app but this error does not seem to be easy to solve.
Checking the path were libonnxruntime.so should have been downloaded: C:\Users\hp\AppData\Local\Pub\Cache\hosted\pub.dev\onnxruntime-1.4.1\android\src\main\jniLibs
I was able to find the file in both folders in this directory, but somehow it was not recognized by Flutter.
This is the stack trace.
#0      _open (dart:ffi-patch/ffi_dynamic_library_patch.dart:11:43)
#1      new DynamicLibrary.open (dart:ffi-patch/ffi_dynamic_library_patch.dart:22:12)
#2      _dylib.<anonymous closure> (package:onnxruntime/src/bindings/bindings.dart:7:27)
#3      _dylib (package:onnxruntime/src/bindings/bindings.dart:27:2)
#4      _dylib (package:onnxruntime/src/bindings/bindings.dart)
#5      onnxRuntimeBinding (package:onnxruntime/src/bindings/bindings.dart:30:48)
#6      onnxRuntimeBinding (package:onnxruntime/src/bindings/bindings.dart)
#7      OrtEnv.version (package:onnxruntime/src/ort_env.dart:71:32)
#8      _MyAppState.initState (package:onnxruntime_example/main.dart:29:23)
#9      StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5762:55)
#10     ComponentElement.mount (package:flutter/src/widgets/framework.dart:5607:5)
...     Normal element mounting (63 frames)
#73     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4480:16)
#74     Element.updateChild (package:flutter/src/widgets/framework.dart:3963:18)
#75     _RawViewElement._updateChild (package:flutter/src/widgets/view.dart:465:16)
#76     _RawViewElement.mount (package:flutter/src/widgets/view.dart:488:5)
...     Normal element mounting (15 frames)
#91     Element.inflateWidget (package:flutter/src/widgets/framework.dart:4480:16)
#92     Element.updateChild (package:flutter/src/widgets/framework.dart:3963:18)
#93     RootElement._rebuild (package:flutter/src/widgets/binding.dart:1636:16)
#94     RootElement.mount (package:flutter/src/widgets/binding.dart:1605:5)
#95     RootWidget.attach.<anonymous closure> (package:flutter/src/widgets/binding.dart:1558:18)
#96     BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:3038:19)
#97     RootWidget.attach (package:flutter/src/widgets/binding.dart:1557:13)
#98     WidgetsBinding.attachToBuildOwner (package:flutter/src/widgets/binding.dart:1296:27)
#99     WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:1278:5)
#100    WidgetsBinding.scheduleAttachRootWidget.<anonymous closure> (package:flutter/src/widgets/binding.dart:1264:7)
#104    _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)
(elided 3 frames from class _Timer and dart:async-patch) ```

Any help would be appreciated.

@HalaHamdi have you solve this problem ? I got same error when run the OrtEnv.instance.init();

@HalaHamdi have you solve this problem yet ? I got same error when run the OrtEnv.instance.init();

I believe its already solved, just need to wait for the pull request to be submitted


Vue3?

Is there a Vue3 Support planned? There's still no other Vue3 Skeleton project out there. Thanks!

+1

FYI @Abdulqudus001

Is there a Vue3 Support planned? There's still no other Vue3 Skeleton project out there. Thanks!

I recently created a Vue 3 Skeleton Loader, feel free to use it.
https://www.npmjs.com/package/@brayamvalero/vue3-skeleton


Centering the camera on a model

Hi, sorry to bug you, but I'm trying to figure out how to position the camera to always keep an arbitrary model in view. I figure it'd be based on the model's bounding box somehow, and I've tried some code that works on particular models but not on others (because they're different sizes), but nothing definitive. I've also tried a 2D camera which does precisely fit the model in view, but it's clipped into it and I'm not sure how (or if?) I can control the 2D camera's depth.
I've mostly been trying to port Three.js code to three-d, but I thought I'd ask if you had any advice on going about this. Thanks a ton 😅

Hi, can you maybe put a few examples of what you have tried already?
I would say that you can use https://docs.rs/three-d-asset/latest/three_d_asset/struct.Camera.html#method.set_view .

Btw. this is not an issue, but a discussion. Please create a post in the discussion section and close this issue as you are not reporting a bug.

Sorry, will do.

Ah no please don't be like that. Issue or discussion, it doesn't matter, it's one click to convert an issue to a discussion 🤷♂
Sounds like you could use an OrbitControl and set the target point, min and max distance based on the bounding box of the model. If you don't want the camera to move, you could just avoid handling events for the OrbitControl.
Another option is to use the Camera struct. If you want a 2D camera (orthographic projection), you can 'zoom' by changing the height. If you use a 3D camera (perspective projection) you need to move the camera towards or away from the object to zoom.


Binding style object works only on single worded css properties [1.0.9]

I have an element with css.bind="style".
In Viewmodel I have:
	get style() {
		return {
			backgroundColor: blabla,
			color: blabla,
			padding: blabla,
			fontFamily: blabla,
			fontWeight: blabla,
			fontStyle: blabla,
			fontSize: blabla,
			textAlign: blabla
		};
	}

But only color and padding gets binded. I just assume its because other properties are not single words.
Previously I used version 1.0.4 and everything worked fine.

@z-brooks / @GabrielMancik this is strange- looking at the 1.0.4 code, I can see how it would work the way @GabrielMancik describes. On the other hand, the 1.0.4 tests are using hyphenated property names.
@GabrielMancik, change the code to the following and it should work:
    get style() {
        return {
            'background-color': blabla,
            'color': blabla,
            'padding': blabla,
            'font-family': blabla,
            'font-weight': blabla,
            'font-style': blabla,
            'font-size': blabla,
            'text-align': blabla
        };
    }

Suggested code change works. Thanks

It'd be good to get this one fixed - we just had a bunch of stuff break because we were using the Typescript CSSStyleDeclaration to generate our styles, which uses camelCasing.


Proof of Giving - max coin age 1 day

Proof of Giving payout is less predictable because some users are using coin age older than 1 day. They are intentionally saving up multiple days to earn a bigger reward. The payout for other participants is less predictable.
I would like to suggest a max coin age of 1 day regardless of the coin age submitted.

I think its important to allow small users to be able to save up coin age in order to stake in competition with the big dogs.
Capping coin age at one day is in effect removing age from the equation - thereby making the equation more of a lottery on who has the most balance on a given day.  This would decimate the small holders (they would receive zero in contrast to someone with a large balance) - which I think is unfair.
Coin Age rewards those who are saving the biblepay and holding it - thats a valuable attribute.
Yes, people are saving up intentionally, and that is their right (to not tithe on a particular day).
I disagree that its "less predictable" - than what, mining?  I think its much more predictable - than most algorithms I can think of that order a list of users by reward per week.

I disagree that its "less predictable" - than what, mining?

The way it is currently designed, it is less predictable than setting a cap of coin age of 1 day because individuals save up and tithe at unknown intervals.

Saying that miners can receive constant and consistent rewards by setting a cap, is equivalent to saying stock market intervention by the government (IE if Trump were to create a team to limit all stock sales to no more than $1000 per day per participant would decrease market volatility), yes that would be a true statement.   (But it doesn't make it the correct solution).
The question remains, how do we reward the little fish appropriately?

I haven't thought of all the scenarios, so I'm open to the idea that this may not be the "correct" solution. How would you reward the "little fish appropriately"?

because it destroys the algorithm to be a worthless one - one based on user balance

If you PoG tithe twice a day, it ends up being mostly based on a user's balance. I don't agree that makes the algorithm worthless -- it just places less emphasis and doesn't allow people to game PoG like they are now.
One user said: Yes,the whale pog donation 20k and resive 200k next day,and i gave 3000 k and get 30 bbp back, ... ,so i quit big donation,couse i belive we small one pog to the whales not to the poor
Whether the sentiment is correct, that's how at least one user feels. This BBP member likely doesn't fully understand how coin inputs and coin age works. These are difficult concepts to non-technical people, so it is not surprising...
Anyway, I think you can grow PoG participants if there is a way:

if you have predictable payouts, then this is easier to market. exec roi helps predict payout, but if someone saves up BBP for 7 days and tithes 27k out of 11M BBP, the exec roi ends up not reflecting what happens on the next payout. A smoother trend up or down will encourage participation. For example, with PoDC RAC took 14 days to build up so new RAC joining did not affect the daily payouts dramatically.

an incentive for friends to tell other friends about BBP (e.g. "little fish" encouraging other "little fish" to join). I think it is better to have lots of different people talking up BiblePay than a few whales. This is also why I suggested setting a max prominence (https://github.com/biblepay/biblepay-evolution/issues/9). You can ban people with multiple CPK right?

Sun, please don't enter tickets to ask for consultation from the team, instead contact us directly and ask us for advice.
The ticket system is for feature requests and bugs.
The question should be rephrased as "I don't know how to solve this problem, but MIP or Rob, do you believe we have a problem in this area, and if so how would you recommend we solve it?"
Looking at the original post, I explained how removing age from coinage ruins our algorithm and that I believe coinage rewards the small fish as fairly as the large fish.

The ticket system is for feature requests

I made a feature request to cap the coin age to 1 day. It would be nice, but I don't expect you to agree.

I pointed out why the idea is flawed; Again, its a flawed idea that would reduce POG down to a static richlist, decimating small users, and is not as fair as coin*age.  Small users can also save up coin_age, and that is what you are not taking into account.
If you think it all the way through and generate a model, and present an idea with substance we can open the case.  But a cap is not the answer.


[BUG] read_parquet.py lint error

Describe the bug

To Reproduce
master branch

Already addressed in #2755 .

Please rebase the master, this issue is gonna vanish.

This lint problem is caused by #2755. Maybe we should add noqa: F821 to ignore it.

Thanks.


Animate FAB to extended FAB when scrolling

Use case

I would like a Floating Action Button to animate between an extended FAB and standard FAB as described in the Material spec here.

Extended FAB transforming into a standard FAB
An extended FAB can transform into a standard FAB when a screen is scrolled.

Proposal

https://user-images.githubusercontent.com/14036573/190727175-a863750b-0c42-4119-9e17-aa86b070c327.mp4

This case is probably best served by an example that demonstrates listening to scroll notifications and reconfiguring the FAB.

This is a duplicate of https://github.com/flutter/flutter/issues/104393


elf: Don't assume data symbols are 4-bytes long

The size of data symbols is currently hardcoded to 4 bytes when we parse them in elf.extractFrom(). Instead, we should retrieve the actual size from the object file and skip any symbol that doesn't have the expected size (our symbol substitution logic currently assumes 4-bytes long symbols for data).
Fixes: https://github.com/cilium/cilium/pull/7196.

/test

Several tests failed with known flakes:

k8s-1.21-kernel-5.4 failed with https://github.com/cilium/cilium/issues/16122.
k8s-1.22-kernel-4.19 failed with https://github.com/cilium/cilium/issues/18447 and https://github.com/cilium/cilium/issues/18318.
k8s-1.23-kernel-net-next failed with https://github.com/cilium/cilium/issues/18520.

Review requests are covered. Marking ready to merge.


implements: don't rely on PREVIEW comments but only on ceph_preview tag

Signed-off-by: Sven Anderson<EMAIL_ADDRESS>

It appears that the tests are failing due to changes here too. It's possible that the json now being generated is not 100% in sync with what we were detecting before? I'll leave it for you to investigate. :-)

It appears that the tests are failing due to changes here too. It's possible that the json now being generated is not 100% in sync with what we were detecting before? I'll leave it for you to investigate. :-)

My code simply didn’t work, fixed it. Now it’s only failing in TestCancelClone, which is not related.

@mergifyio rebase


Recipe core

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found some lint.
Here's what I've got...
For recipe/meta.yaml:

The outputs section contained an unexpected subsection name. conflicts is not a valid subsection name.
The outputs section contained an unexpected subsection name. conflicts is not a valid subsection name.

For recipe/meta.yaml:

No valid build backend found for Python recipe for package pycgns-core using pip. Python recipes using pip need to explicitly specify a build backend in the host section. If your recipe has built with only pip in the host section in the past, you likely should add setuptools to the host section of your recipe.
No valid build backend found for Python recipe for package pycgns using pip. Python recipes using pip need to explicitly specify a build backend in the host section. If your recipe has built with only pip in the host section in the past, you likely should add setuptools to the host section of your recipe.

Hello Mickael,
We are trying to make the  cgns package more flexible, today the package is dependent on QT and VTK, this are heavy dependencies, @Laureleen7  is working on a 2 package solution. a pycgns-core (for non qt and vtk dependent libraries) and a pycngs with the original package. Normally this will have no impact in current users.
Please the time to give a little more feedback of your behavior.  The conda-forge feedstock exist for the community not for a single user.
Felipe

Hello Mickael,
We are trying to make the cgns package more flexible, today the package is dependent on QT and VTK, this are heavy dependencies, @Laureleen7 is working on a 2 package solution. a pycgns-core (for non qt and vtk dependent libraries) and a pycngs with the original package. Normally this will have no impact in current users.
Please the time to give a little more feedback of your behavior. The conda-forge feedstock exist for the community not for a single user.
Felipe

Hi,
Thanks for taking the time to to give a little feedback on what you want to achieve.
I agree the conda stock if for the community but one can't guess if it is a spammer or if the person is of good will without any context or a small statement.
You can continue to push MR now. This is also something the main pycgns repo will need to achieve at some point (dev branch pymeson).
M.


Panning without resetting the tilt

Hello.
First, thanks for creating your wonderful 3D globe software. As I improve in my skills at using it, I hope I can add back to your project.
I am trying to find a way to set the tilt, then use the panTo method while keeping the tilt at the angle it started at. Right now, it seems to shift the tilt back up to 0 degrees when using panTo. Is this possible? If not, can it be added?
Also, would you consider adding a tiltTo method, so that the tilt can be changed without reloading the map?
thanks,
Jonathan

Actually, I think I see a way to do this. Apparently, it is possible to create an animation by steadily making small changes to the view and tilt. If you set the view to a new location, very close to the first location, it immediately loads the image, rather than having a delay for a new map image to load from the server. If you set the view and then immediately set the tilt, it just changes the view with the tilt that you set, rather than loading the view then loading again for the tilt. This is good. I believe I should be able to create an animated move as if traveling across the surface of the Earth this way.

I figured out how to do this, so no need to add any functionality. However, this did reveal a bug. Here is the code:function moveStraight() {
var tCenter = earth.getCenter();
var tLat = tCenter[0];
var tLon = tCenter[1];
var tBearing = earth.getHeading();
var tAlt = earth.getAltitude();
var tDistance = tAlt/2;
if (tDistance < 1) {
tDistance = 1;
}
tNewPoint = getNewPoint(tLat,tLon,tBearing,tDistance);
var tTilt = earth.getTilt();
earth.setCenter(tNewPoint);
earth.setTilt(tTilt);
}
function moveBack() {
var tCenter = earth.getCenter();
var tLat = tCenter[0];
var tLon = tCenter[1];
var tBearing = earth.getHeading();
var tAlt = earth.getAltitude();
var tDistance = tAlt/2;
if (tDistance < 1) {
tDistance = 1;
}
tDistance = 0-tDistance;
tNewPoint = getNewPoint(tLat,tLon,tBearing,tDistance);
var tTilt = earth.getTilt();
earth.setCenter(tNewPoint);
earth.setTilt(tTilt);
}
function twistLeft(){
var tBearing = earth.getHeading();
tBearing = tBearing+5;
if (tBearing<-180) {
tBearing = tBearing + 360;
} else if (tBearing > 180) {
tBearing = tBearing - 360;
}
earth.setHeading(tBearing);
}
function twistRight(){
var tBearing = earth.getHeading();
tBearing = tBearing-5;
if (tBearing<-180) {
tBearing = tBearing + 360;
} else if (tBearing > 180) {
tBearing = tBearing - 360;
}
earth.setHeading(tBearing);
}
function riseUp() {
var tAlt = earth.getAltitude();
tAlt = tAlt+1;
if (tAlt>10000) {
tAlt = 10000;
}
earth.setAltitude(tAlt);
}
function lowerDown() {
var tAlt = earth.getAltitude();
tAlt = tAlt-1;
if (tAlt<10) {
tAlt = 10;
}
earth.setAltitude(tAlt);
}
window.onkeydown = function(event) {
var mykey = event.which;
if (mykey == 38) {
moveStraight();
} else if (mykey == 40){
moveBack();
} else if (mykey == 37) {
twistLeft();
} else if (mykey==39) {
twistRight();
} else if (mykey==33){
riseUp();
} else if (mykey==34) {
lowerDown();
}
//////////////////////////
function toRad(tDeg){
return tDeg*(Math.PI/180);
}
function toDeg(tRad){
return tRad*(180/Math.PI);
}
function getNewPoint(tLat1,tLon1,B,D){
DR = D/6371000;
if (B<0) {
B=B+360;
}
B=360-B;
B = toRad(B);
tLat1 = toRad(tLat1);
tLon1 = toRad(tLon1);
var tLat2 = Math.asin(Math.sin(tLat1) * Math.cos(DR) + Math.cos(tLat1) * Math.sin(DR) * Math.cos(B));
var tLon2 = tLon1 + Math.atan2(Math.sin(B)*Math.sin(DR)*Math.cos(tLat1),Math.cos(DR)-Math.sin(tLat1)*Math.sin(tLat2));
tLat2 = toDeg(tLat2);
tLon2 = toDeg(tLon2);
return [tLat2,tLon2];
}
When the tilt is at 80-degrees and you zoom along past a marker, the marker then reappears in the sky as you keep moving. I am going to write a script to replace the sky with my own sky, so that this won't be an issue, but it seems like something that is probably easy to fix in the source code.
Thanks again for providing this code for the world.
Jonathan


fix: Add Azure OpenAI support for python/08-native-function-inline

Motivation and Context
Other Semantic Kernal samples allow using both OpenAI and Azure OpenAI by setting a different set of environment variables and toggling the useAzureOpenAI bool value
Description
Add the same snippet used in other notebooks such as 02-running-prompts-from-file to use Azure OpenAI to the 08-native-function-inline
Contribution Checklist

[ ] The code builds clean without any errors or warnings
[ ] The PR follows SK Contribution Guidelines (https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
[ ] The code follows the .NET coding conventions (https://learn.microsoft.com/dotnet/csharp/fundamentals/coding-style/coding-conventions) verified with dotnet format
[ ] All unit tests pass, and I have added new tests where possible
[ ] I didn't break anyone :smile:

Thanks for adding this! Great to have consistency between the rest of the notebooks.