Codeblocks not rendering upon Refresh or Initial Load

Hi There!
I am getting this weird issue in production where prism code blocks across my site render correctly when navigating through the site, however, if you open the page directly or refresh the page, code blocks don't render, and instead, only show something like the screenshot below:

It is very odd because, for a millisecond, the code will render correctly and then turn into looking like the screenshot above.
This doesn't happen in development, and only in production when deploying to vercel. Any ideas on what could be wrong, or how to fix this? I've been banging my head against the wall and trying a bunch of different things :(
If you check my production version here, you can see the issued -> https://eduardo-tailwind-next.vercel.app/blog/code-sample

More context: I wrote a renderer for Jupyter Notebooks that uses prism-react-renderer to render the code cells. I was getting the same issue on pages rendered in this way, but I was able to solve it by utilizing useEffect and only conditionally rendering after the first load, which is annoying, but it worked -- however, it is still broken on the markdown rendered pages.

Hmm, that's odd. It seems that there is an extra script being rendered on the client side that modifies the code block. Your point on useEffect suggests something related to that as well. Can you share a link to your repository? Will be easier for me to see what's causing it. Thanks.

Thanks so much for being willing to take a look! :)
The repo is: https://github.com/eduardo-exists/edwtf-tailwind
What is odd to me is that if it were to be the prism-react-renderer, that it would be having a side effect on the mdx rendering too.
The specific notebook rendering happens in this file: https://github.com/eduardo-exists/edwtf-tailwind/blob/master/lib/renderNotebook.js

It seems like you managed to get things fixed? I am not able to replicate the error but also saw that you have been making many changes since yesterday. I think the issue is with the interaction of prism-react-renderer and rehype-prism-plus. You would not want to mix the two as rehype-prism-plus converts the code block to nicely formatted html already and  prism-react-renderer does something similar but on the client side. Hence you get a properly formatted code block but that flashes to [object] [object]... when the js hydrates and prism-react-renderer  does the job.
I see that in your new solution you have created a whole new unified processing pipeline to process the notebooks - pretty neat! Otherwise, I would have suggested to output it to a markdown format with nbconvert before passing it in the standard mdx pipeline.

Thank you again for your help and your insight! I was able to get things fixed! After your comment, I actually read your blog post on rehype-prism-plus and figured that I should probably use the unified ecosystem to actually compile the notebooks. It seemed like the way I was doing it was an anti-pattern with server-side rendering. So I started over with the unified pipelines and now all the syntax highlighting is done with rehype-prism-plus 👍🏼.
My only complaint is that I haven't been able to figure out how to mimic how the MDX bundler does things to use es-build. I was able to get to the point of using stuff from xdm to get a esast and use the recma plugin to build the jsx, but then I couldn't figure out to actually get something usable. I think the next step is to use esbuild to compile the jsx (?), couldn't figure out how to do that though.
I ended up just stringifying the html AST and converting it to react components with rehype-react - so now it works pretty well but I just wish I could do it more eloquently :D

I think that's probably the easiest approach - converting it first to an intermediate format either markdown or html than to one of the unifiedjs AST family before passing it through the pipeline. Great that you managed to pull it off 👍


Support GPU inputs.

The PR enables DALI backend to accept inputs on GPU.
Most of the PR is a necessary refactoring.

utlis/triton.h was created to simplify using Triton API.
IODescr was simplified to only be a non-owning descriptor that supports chunked memory. Owning descriptor was replaced with IOBuffer.
DaliExecutor now handles copying input buffers if it's necessary and uses ThreadPool to do it.

Testing:

C++ tests for IOBuffer
Extended C++ tests for DaliExecutor
Integration tests in L0_DALI_GPU_ensemble
client.py sends requests to a Triton server instance that runs models defined in model_repository and it validates the results.

JIRA task: DALI-1478

CI MESSAGE: [2322241]: BUILD STARTED

CI MESSAGE: [2322465]: BUILD STARTED

CI MESSAGE: [2322465]: BUILD FAILED

CI MESSAGE: [2322638]: BUILD STARTED

I resolved a bug by adding DeviceGuard to the request processing function and adding cudaStreamSynchronize after output copy from DALI pipeline.

CI MESSAGE: [2370465]: BUILD STARTED

CI MESSAGE: [2370482]: BUILD STARTED

CI MESSAGE: [2370554]: BUILD STARTED

CI MESSAGE: [2370554]: BUILD FAILED

CI MESSAGE: [2382571]: BUILD STARTED

CI MESSAGE: [2382571]: BUILD PASSED

Follow-ups:

Implement C++ wrappers for the rest of the Triton API
Move the TritonClient class from the python test to a separate module and use it in the rest of the tests.

CI MESSAGE: [2387285]: BUILD FAILED

CI MESSAGE: [2387285]: BUILD PASSED

CI MESSAGE: [2390370]: BUILD STARTED

CI MESSAGE: [2390370]: BUILD PASSED


Feature: Gif Support

I don't know how feasible this would be (I haven't done too much neovim/lua dev), but I saw that ImageMagick has gif based functions. Would adding gif support be in the scope of this project? If this isn't, I'll see if I can get it working just by rendering each frame individually.

Hey, I think it's out of scope unless we find a way to reach acceptable performance.
I tried the render-one-frame-at-a-time approach and it's not great, because we have to move the cursor and restore it for each frame, and it's very visible: https://github.com/3rd/image.nvim/issues/17#issuecomment-1706664350
It would be possible for Kitty (https://sw.kovidgoyal.net/kitty/graphics-protocol/#animation) if implemented separately, but for now I'd like for things to work with ueberzugpp as well, many users don't use Kitty (which I think they should, it's the best in terms of features vs performance).
I'll continue to look into it, not just for rendering nyancat, but for building some sort of Canvas API (https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API). I just need to find a way to avoid moving the cursor, maybe through Kitty's remote API. If that works and we can have a generic rendering API with Kitty, I'll consider dropping ueberzugpp support.

Alright, thanks for the quick response! I'll see if maybe I can get something working with Kitty.

Not sure I understand the issue, but just in case the problem is kitty graphics commands moving the cursor, you can add C=1 to the graphics command to have the terminal not move the cursor.

Hey, thanks for chipping in!
We're using C=1, but it's not Kitty moving the cursor, it's us moving it to the right location where the image should be rendered, what the plugin does right now is:

Transmit the image
Move the cursor saving the initial position
Ask Kitty to render the image (ref by image id)
Restore the cursor position

It flickers when going through the frames because of the move/restore cycle, which is expected. It could work if it would be possible to specify the origin cell's x,y in the graphics payload instead of relying on the current cursor position, but I'm not sure what issues / complexities that would introduce.

On Thu, Oct 05, 2023 at 12:52:38AM -0700, Andrei Neculaesei wrote:

Hey, thanks for chipping in!
We're using C=1, but it's not Kitty moving the cursor, it's us moving it to the right location where the image should be rendered, what the plugin does right now is:

Transmit the image
Move the cursor saving the initial position
Ask Kitty to render the image (ref by image id)
Restore the cursor position

It flickers when going through the frames because of the move/restore cycle, which is expected. It could work if it would be possible to specify the origin cell's x,y in the graphics payload instead of relying on the current cursor position, but I'm not sure what issues / complexities that would introduce.

I dont quite understand the source of this flickering? Are your wrapping
steps 2-4 in an atomic screen update escape sequence pair? If you are
there should be zero flickering, since the terminal emulator will do all
3 steps atomically.

Thank you! I was not aware of this capability, added now and it works wonderfully (but not through Tmux, looking into it).


chore(main): release 0.58.2

:robot: I have created a release beep boop
0.58.2 (2023-07-24)
Features

Workspaces: set demo data optional (#511) (10d79d4)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/BLSQ/openhexa-app/releases/tag/0.58.2 :sunflower:


for signup page - Updated the logo from 'Youtbe' to 'Google' in Googl…

on the SignUp page there is a button for "Signup using Google" but it had the logo of Youtube, that should not be the case it should be Googles's Logo

@nilesh0700 Things are good. but seems like you have lower version of nodejs installed.
Prefer using pnpm instead of npm. Can you please ignore package-lock changes and create update the PR?

@nilesh0700 Things are good. but seems like you have lower version of nodejs installed. Prefer using pnpm instead of npm. Can you please ignore package-lock changes and create update the PR?

okay.


Fedora unloads after successful injection

Fedoraware Version Date:
Latest
Config used:
None
Description:
Since the last tf2 update, when I inject Fedora, it unloads instantly, also that happens to my friends too.


Improve \sqrt

Make \sqrt out of SVG background images, to ensure a perfect match at the junction between surd and viniculum.

This consolidates the work in my previous PR, as shown here:

The question is still open on whether this PR ought be accepted. My own inclination is to wait. Accept PR #776  now, and try it for six months. If it turns out to be insufficiently precise, this PR can be merged at any time.

@ronkok due to the variability in the position of the \sqrt rule that remains after https://github.com/Khan/KaTeX/pull/776 I think we'll still want to accept this PR.

@kevinbarabash, It's still unclear to me whether this PR should be approved. In case you do want to merge it, I have updated it to accommodate PR #776.

Hi @ronkok, I agree with @kevinbarabash that this PR should be merged eventually, but I printed the test page to PDF; see screenshot. I doubt printing KaTeX is common, so some messiness would be acceptable, but this is pretty extreme.
If you generated inline SVG would this be better?
Ideally KaTeX should be copy-pasteable/screenreadable too. Must the surd character completely disappear from the markup?

@kohler, The surds have to be background-images, in order to get the horizontal stretchiness of the viniculum. Background images are, alas, not part of the DOM.
Chrome and Firefox both have print settings that allow you include background-images.  I don't see anything similar in Edge.

It's unfortunate about the background image not printing out, but we're using background-image for all of the stretchy accents and overline/underline.  In for a penny in for a pound.

@kevinbarabash The stretchy accents and overline/underline are all new features with no preceding support; \sqrt is core. I think this should be taken seriously. My users print out KaTeX math with some frequency.
@ronkok Why do you say that only css background images can be made to stretch? With tables, positioning, etc., pretty much any element can be made to stretch, right?

Well, in no particular order,
I agree that \sqrt is core and that everything in PR #670 is much less vital. I am in no hurry to see this PR merged.
You can stretch any image to any width and height, if you know a numeric value in advance.  I sought to meet the challenge of issue #587 by creating images that would stretch to match a span width that is not known in advance, that is instead defined by the  content of the span. That particular trick can be done with a background-image but not with ordinary images.  And so, everything in PR 670 is made of either span borders, as in \boxed, or background-images.
You can print anything in this PR or in PR #670. For instance in Chrome, the setting is at: ⋮ | Print ... |  + More Settings ... |  Options: □ Background graphics. That's more complicated than I would like, but it is certainly within reach.
Here is a screenshot from Chrome's Print dialog:

You can stretch any image to any width and height, if you know a numeric value in advance. I sought to meet the challenge of issue #587 by creating images that would stretch to match a span width that is not known in advance, that is instead defined by the content of the span. That particular trick can be done with a background-image but not with ordinary images.

Really? Here's something like what you want, with inline SVG. The span.c sets the width and height of the SVG.

<svg viewBox="0 0 1000 100" preserveAspectRatio="xMinYMid slice"><path d="M 0 100 L 20 2.5 L 1000 2.5" stroke="purple" fill="none"></svg> XYZ

<svg viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M 0 0 L 25 100 L 50 0 L 75 100 L 100 0" stroke="purple" fill="none"></svg> XYZ

<svg viewBox="0 0 1000 100" preserveAspectRatio="xMinYMid slice"><path d="M 0 100 L 20 2.5 L 1000 2.5" stroke="purple" fill="none"></svg> XYZ ABC

<svg viewBox="0 0 1000 100" preserveAspectRatio="xMinYMid slice"><path d="M 0 100 L 20 2.5 L 1000 2.5" stroke="purple" fill="none"></svg> XYZ ABC DEF

<svg viewBox="0 0 1000 100" preserveAspectRatio="xMinYMid slice"><path d="M 0 100 L 20 2.5 L 1000 2.5" stroke="purple" fill="none"></svg> XYZ ABC DEF GHI JKL

I stand corrected. That arrangement of nested spans is terrific, and I thank you for showing it to me.
It can be adjusted so that the SVG code need not be written in line. When I edit one of the paragraphs to read like this:

        XYZ ABC

The result looks like this:

The SVG can thus be cached and it won't clutter up the HTML. Also, being in the DOM, it won't have the Edge \color problem that I got from background-images.
I'm going to start working up a PR that uses this method. I may be back with a question or two.

That's great.
FWIW, @ronkok, I still think we should prefer inline SVG to out-of-line SVG, for render-performance reasons (better in general to avoid external assets), and because my understanding is that many large sites have settled on inline SVG. For example:
https://github.com/blog/2112-delivering-octicons-with-svg

We tried a number of approaches when adding SVG icons to our pages. Given the constraints of GitHub’s production environment, some were dead-ends.

External .svg — We first attempted to serve a single external “svgstore”. We’d include individual sprites using the  element. With our current cross-domain security policy and asset pipeline, we found it difficult to serve the SVG sprites externally.
SVG background images — This wouldn’t let us color our icons on the fly.
SVGs linked via  and the src attribute — This wouldn’t let us color our icons on the fly.
Embedding the entire “svgstore” in every view and using <use> — It just didn’t feel quite right to embed every SVG shape we have on every single page throughout GitHub.com especially if a page didn’t include a single icon.

The #1 issue “current cross-domain security policy and asset pipeline” is something that might bite some KaTeX users—or it may not.

You know, I could have sworn that I was once able to color an external SVG, linked via an  tag, by setting <path fill="currentColor" … inside the SVG file. It doesn't work today. I must have been hallucinating.
I guess inline SVG is the order of the day.

FWIW, the span.b doesn’t seem to be necessary. The display:block;position:absolute svg element can be a direct child of span.a.

I've updated the test page with the latest commit. I think you'll find better printing behavior.

@glebm, I don't know if you have monitored the conversation in this PR. I think you should be given the opportunity to state the anti-inline case. Do you have any thoughts?

@ronkok I'll send you a PR with screenshots for these changes.

Green is LaTeX and red is KaTeX.  It looks like the surd is one size too big for the scriptscript root on the right.

That's a problem, all right. I'll get to work.

@ronkok thanks for fixing the surd size.  I'll send you updated screenshots later today.

@ronkok WRT inlining.
External SVGs:

Trigger a re-render of the katex block when loading the page.
May slightly complicate using KaTeX from frameworks that generate resource filenames on deployment.

Inline SVGs:

Approximately the same size because gzip eliminates much of the duplication.
The browser has to parse each instance anew. This can be mitigated with <use>, but not completely as there may be multiple katex blocks / server-side rendering.
Do not benefit from browser-side caching in the case of server-side rendering.

If the SVGs are small (no more than a few KiB), I'd go with inline, but no strong opinion.

@glebm I'm glad your're okay with it, because I'm pretty sure this PR will be merged.

There's still something a little wonky with the superscripts, but the sizes are matching much better.  I'm okay with merging this and tweaking this latter.  The problem this diff fixes is much worse than the minor differences I'm seeing now.  I won't get to reviewing the code until tomorrow evening.

I wonder if there is a cramped/uncramped issue.

That might explain why the subscript looks good by the superscript is off.

@kevinbarabash I am going to close this PR temporarily. As a Git klutz, I am able to have only one PR at a time that is pointed at master. Right now, I want to fix stretchy element color. I'll reopen this PR when that effort is resolved.

@ronkok you may want to try creating a branch per PR.  You can always delete the branch after the PR closes.


Add "how-to" URI for cookiecutter templates

We should add one custom URI (with custom label) so that a template can link to a specific info page (e.g. a video, a walkthrough, or a Jupyter notebook).

We're closing old issues with no recent activity. If this is still important, please open a new issue.


Get ServiceProvider inside AddOpenIdConnect without BuildServiceProvider

Question
Is there a good way to get the ServiceProvider in the AddOpenIdConnect, or configure the ClientSecret later where we have the DI container fully setup? (e.g. in Configure(IApplicationBuilder app))
We're getting the client secret from somewhere else and we like to use DI for that.
Minimal working example
Currently we do this, but I really like to remove  services.BuildServiceProvider()

// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
    services.AddOpenIdConnect(AuthenticationScheme, options =>
    {
        ServiceProvider serviceProvider = services.BuildServiceProvider(); // we like to prevent this
        options.ClientSecret = serviceProvider.GetRequiredService<ISecretRetriever>().GetClientSecret();

Note: For events like OnValidatePrincipal we could get it from CookieValidatePrincipalContext.HttpContext.RequestServices
We get also now this warning:

warning "Calling 'BuildServiceProvider' from application code results in a additional copy of Singleton services being created"

Wrong repo! Oops!


[Bug] Invoke-DbaQuery -File fails on Linux

Environmental information

PowerShell version:
Name                           Value
----                           -----
PSVersion                      6.2.3
PSEdition                      Core
GitCommitId                    6.2.3
OS                             Linux 3.10.0-1062.1.2.el7.x86_64 #1 SMP Mon Sep …
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

#### dbatools Module version:

Name    : dbatools
Path    : /home/josh/.local/share/powershell/Modules/dbatools/1.0.58/dbatools.psd1
Version : 1.0.58

LCID             Name             DisplayName
----             ----             -----------
1033             en-US            English (United States)

SQL Server:

Column1
-------
Microsoft SQL Server 2017 (RTM-CU17) (KB4515579) - 14.0.3238.1 (X64) …

Column1
-------
us_english

Report

Host used

[ ] powershell.exe
[ ] ISE
[ ] VS Code
[x] Other (please specify) pwsh core

If anything other than powershell.exe was used, please confirm that you can duplicate the issue with powershell.exe

[ ] Still buggy in powershell.exe

Errors Received

writeErrorStream      : True
PSMessageDetails      :
Exception             : System.Exception: Could not resolve path
                        /home/josh/test.sql as filesystem object
TargetObject          :
CategoryInfo          : NotSpecified: (:) [Write-Error], Exception
FullyQualifiedErrorId : dbatools_Invoke-DbaQuery,Stop-Function
ErrorDetails          : Could not resolve path /home/josh/test.sql as
                        filesystem object
InvocationInfo        : System.Management.Automation.InvocationInfo
ScriptStackTrace      : at Stop-Function, /home/josh/.local/share/powershell/Mo
                        dules/dbatools/1.0.58/allcommands.ps1: line 81516
                        at Invoke-DbaQuery<Begin>, /home/josh/.local/share/powe
                        rshell/Modules/dbatools/1.0.58/allcommands.ps1: line
                        46352
                        at <ScriptBlock>, <No file>: line 1
PipelineIterationInfo : {0, 1}

Steps to Reproduce

Create a .sql file on a unix host.
Execute a Invoke-DbaQuery with -File

Expected Behavior

Expected the Invoke-DbaQuery to execute the SQL -file.
Actual Behavior

Believe the ultimate issue is with lines 213 to 221 of Invoke-DbaQuery where it is looking for Scheme type of 'file' from the URI, which doesn't seem to be supported on unix systems. example output of line 215 [uri]$path.fullname
AbsolutePath   :
AbsoluteUri    :
LocalPath      :
Authority      :
HostNameType   :
IsDefaultPort  :
IsFile         :
IsLoopback     :
PathAndQuery   :
Segments       :
IsUnc          :
Host           :
Port           :
Query          :
Fragment       :
Scheme         :
OriginalString : /home/josh/test.sql
DnsSafeHost    :
IdnHost        :
IsAbsoluteUri  : False
UserEscaped    : False
UserInfo       :

Example of the same file on a Windows system in both 5.1 and 6.0
PS C:\Users\joshu\Documents> [uri]$path.FullName

AbsolutePath   : C:/Users/joshu/Documents/test.sql
AbsoluteUri    : file:///C:/Users/joshu/Documents/test.sql
LocalPath      : C:\Users\joshu\Documents\test.sql
Authority      :
HostNameType   : Basic
IsDefaultPort  : True
IsFile         : True
IsLoopback     : True
PathAndQuery   : C:/Users/joshu/Documents/test.sql
Segments       : {/, C:/, Users/, joshu/...}
IsUnc          : False
Host           :
Port           : -1
Query          :
Fragment       :
Scheme         : file
OriginalString : C:\Users\joshu\Documents\test.sql
DnsSafeHost    :
IdnHost        :
IsAbsoluteUri  : True
UserEscaped    : False
UserInfo       :

Maybe something like this would work. Not sure why the ([uri]$Path.FullName).Scheme is being used
foreach ($path in $paths) {
    if (-not $path.PSIsContainer) {
        #if (([uri]$path.FullName).Scheme -ne 'file') {
            if (-not  $(Test-Path $path.FullName)) {
                Stop-Function -Message "Could not resolve path $path as filesystem object"
                return
            }
            $files += $path.FullName
        }
}

Scheme tells us whether the string value that was passed in is an actual file or not. We need this in order to know if a web URL passed in was an actual file on the end or not:

This actually looks like it might be a bug in PS on Linux:


Error: You cannot upload file for not persisted record. Save record first.

@Amixengineer I am facing similar issue while uploading file to s3..
These are the code snippets for options, package.json and schema.
const teacherParams = {
resource: Teacher,
options: {
listProperties: ["name", "email", "phone", "status"],
},
features: [
uploadFeature({
provider: {
aws: {
region: env.region,
bucket: env.bucket,
secretAccessKey: env.secretAccessKey,
accessKeyId: env.accessKeyId,
expires: 0,
},
},
properties: {
key: "fileUrl",
mimeType: "mimeType",
},
validation: {
mimeTypes: ["image/png", "image/jpg", "image/jpeg"],
},
multiple: true,
}),
],
};
"dependencies": {
"@admin-bro/upload": "^1.3.1",
"admin-bro": "^4.0.1",
"admin-bro-expressjs": "^2.1.1",
"admin-bro-mongoose": "^0.5.2",
const teacherSchema = new Schema({
name: String,
email: String,
about: String,
countryCode: Object,
phone: String,
createdAt: Date,
password: String,
status: Number,
permissionLevel: Number,
updatedAt: Date,
// updatedBy: Schema.Types.ObjectId,
timeZone: String,
fileUrl: [
{
type: String,
},
],
mimeType: [
{
type: String,
},
],
imageURL: String,
});
Any idea how to fix this @wojtek-krysiak @Amixengineer
Originally posted by @Saurabhkmr98 in https://github.com/SoftwareBrothers/admin-bro-upload/issues/14#issuecomment-856471512

hey @Saurabhkmr98 ,
Did you find any solution? I am facing the same issue.


Use application URL to load translations

Closes #235

Codecov Report

Merging #237 (acfa72e) into master (f1c25ab) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #237   +/-   ##
======================================
  Coverage    9.88%   9.88%
======================================
  Files          51      51
  Lines        1255    1255
  Branches      161     161
======================================
  Hits          124     124
  Misses        989     989
  Partials      142     142

Impacted Files
Coverage Δ

oereb_client/static/src/i18n.js
0.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 f1c25ab...acfa72e. Read the comment docs.


Build fails at ea4e643b436ffbb2f33d3e26e9796d178fb4ca98

$ gradle clean build
The plus(Iterable<FileCollection>) method and using the '+' operator in conjunction with an Iterable<FileCollection> object have been deprecated and are scheduled to be removed in 3.0.  Please use the plus(FileCollection) method or the '+' operator with a FileCollection object instead.
:clean
:compileJava/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/data/collections/extensions/standard/DequeXImpl.java:18: warning: Not generating equals and hashCode: A method with one of those names already exists. (Either both or none of these methods will be generated).
@EqualsAndHashCode(of={"deque"})
^
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Try.java:658: warning: Not generating equals and hashCode: A method with one of those names already exists. (Either both or none of these methods will be generated).
	@RequiredArgsConstructor @ToString @EqualsAndHashCode
	                                   ^
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Try.java:990: warning: Not generating equals and hashCode: A method with one of those names already exists. (Either both or none of these methods will be generated).
	@RequiredArgsConstructor @ToString @EqualsAndHashCode
	                                   ^
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/react/collectors/lazy/BatchingCollector.java:31: warning: Not generating getResults(): A method with that name already exists
	@Getter
	^
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/types/mixins/FunctorWrapper.java:9: warning: Not generating withFunctor(): A method with that name already exists
	Object functor;
	       ^
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Xor.java:170: error: incompatible types: inferred type does not conform to upper bound(s)
      return visit (s-> secondary(secondary), p-> primary(p));
                   ^
    inferred: Xor<? extends Object,? extends Object>
    upper bound(s): Xor<ST2,PT>,Object
  where ST2,PT are type-variables:
    ST2 extends Object declared in method <ST2>toXor(ST2)
    PT extends Object declared in interface Xor
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Xor.java:302: error: incompatible types: inferred type does not conform to upper bound(s)
        return this.visit(secondary-> app.visit(s2->Xor.secondary( semigroup.apply(s2, secondary)), p2->Xor.secondary(secondary))
                         ^
    inferred: Xor<? extends Object,? extends Object>
    upper bound(s): Xor<ST,R>,Object
  where ST,R,T2,PT are type-variables:
    ST extends Object declared in interface Xor
    R extends Object declared in method <T2,R>ap(Xor<? extends ST,? extends T2>,BinaryOperator<ST>,BiFunction<? super PT,? super T2,? extends R>)
    T2 extends Object declared in method <T2,R>ap(Xor<? extends ST,? extends T2>,BinaryOperator<ST>,BiFunction<? super PT,? super T2,? extends R>)
    PT extends Object declared in interface Xor
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Xor.java:496: error: incompatible types: inferred type does not conform to upper bound(s)
            return  app.toXor().visit(s->Xor.secondary(null), f->Xor.primary(fn.apply(get(),app.get())));
                                     ^
    inferred: Xor<Object,? extends Object>
    upper bound(s): Xor<ST,R>,Object
  where ST,R,T2,PT are type-variables:
    ST extends Object declared in class Primary
    R extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super PT,? super T2,? extends R>)
    T2 extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super PT,? super T2,? extends R>)
    PT extends Object declared in class Primary
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/types/Value.java:186: error: incompatible types: inferred type does not conform to upper bound(s)
         return toXor().visit(secondary->Try.failure(throwable),
                             ^
    inferred: Try<? extends Object,? extends Throwable>
    upper bound(s): Try<T,X>,Object
  where T,X are type-variables:
    T extends Object declared in interface Value
    X extends Throwable declared in method <X>toTry(X)
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/types/Value.java:192: error: incompatible types: inferred type does not conform to upper bound(s)
	    return toXor().visit(secondary->Try.failure(new NoSuchElementException()),
	                        ^
    inferred: Try<? extends Object,? extends Throwable>
    upper bound(s): Try<T,Throwable>,Object
  where T is a type-variable:
    T extends Object declared in interface Value
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/types/Value.java:219: error: incompatible types: inferred type does not conform to upper bound(s)
		  return visit(p-> Maybe.ofNullable(p),()->Maybe.none());
		              ^
    inferred: Maybe<? extends Object>
    upper bound(s): Maybe<T>,Object
  where T is a type-variable:
    T extends Object declared in interface Value
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/types/Convertable.java:117: error: incompatible types: inferred type does not conform to upper bound(s)
	    return visit(p->Optional.ofNullable(p),()->Optional.empty());
	                ^
    inferred: Optional<? extends Object>
    upper bound(s): Optional<T>,Object
  where T is a type-variable:
    T extends Object declared in interface Convertable
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Try.java:956: error: incompatible types: inferred type does not conform to upper bound(s)
	     return  app.toTry().visit(s->safeApply( ()->success(fn.apply(get(),app.get()))), f->Try.failure(null));
	                              ^
    inferred: Try<? extends Object,Throwable>
    upper bound(s): Try<R,X>,Object
  where R,T2,T,X are type-variables:
    R extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super T,? super T2,? extends R>)
    T2 extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super T,? super T2,? extends R>)
    T extends Object declared in class Success
    X extends Throwable declared in class Success
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Try.java:1313: error: incompatible types: inferred type does not conform to upper bound(s)
        return map(v -> Tuple.tuple(v, Curry.curry2(fn).apply(v))).flatMap(
                                                                          ^
    inferred: Try<? extends Object,Throwable>
    upper bound(s): Try<R,X>,Object
  where R,T,X are type-variables:
    R extends Object declared in method <R>flatMap(Function<? super T,? extends Try<R,X>>)
    T extends Object declared in interface Try
    X extends Throwable declared in interface Try
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Try.java:1327: error: incompatible types: inferred type does not conform to upper bound(s)
        return map(v -> Tuple.tuple(v, Curry.curry2(fn).apply(v))).flatMap(tuple -> Try.fromPublisher(app)
                                                                          ^
    inferred: Try<? extends Object,Throwable>
    upper bound(s): Try<R,X>,Object
  where R,T,X are type-variables:
    R extends Object declared in method <R>flatMap(Function<? super T,? extends Try<R,X>>)
    T extends Object declared in interface Try
    X extends Throwable declared in interface Try
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Ior.java:92: error: incompatible types: inferred type does not conform to upper bound(s)
	      return visit (s-> Xor.secondary(secondary), p-> Xor.primary(p),(s,p)->Xor.primary(p));
	                   ^
    inferred: Xor<? extends Object,? extends Object>
    upper bound(s): Xor<ST2,PT>,Object
  where ST2,PT are type-variables:
    ST2 extends Object declared in method <ST2>toXor(ST2)
    PT extends Object declared in interface Ior
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Ior.java:446: error: incompatible types: inferred type does not conform to upper bound(s)
            return  app.toXor().visit(s->Ior.secondary(null), f->Ior.primary(fn.apply(get(),app.get())));
                                     ^
    inferred: Ior<Object,? extends Object>
    upper bound(s): Ior<ST,R>,Object
  where ST,R,T2,PT are type-variables:
    ST extends Object declared in class Primary
    R extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super PT,? super T2,? extends R>)
    T2 extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super PT,? super T2,? extends R>)
    PT extends Object declared in class Primary
/Users/raffi/Documents/cyclops-react/src/main/java/com/aol/cyclops/control/Ior.java:742: error: incompatible types: inferred type does not conform to upper bound(s)
            return  app.toXor().visit(s->Ior.secondary(this.secondaryGet()), f->Ior.both(this.secondaryGet(),fn.apply(get(),app.get())));
                                     ^
    inferred: Ior<ST,? extends Object>
    upper bound(s): Ior<ST,R>,Object
  where ST,R,T2,PT are type-variables:
    ST extends Object declared in class Both
    R extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super PT,? super T2,? extends R>)
    T2 extends Object declared in method <T2,R>ap(Value<? extends T2>,BiFunction<? super PT,? super T2,? extends R>)
    PT extends Object declared in class Both
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
13 errors
5 warnings
 FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileJava'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 24.282 secs

Hi  @khatchad,
Thanks for reporting this, which version of Java are you seeing these compile errors with?

No problem:
$ java -version
java version "1.8.0_51"
Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)

I think this is javac related. I'm able to build master with java 1.8.0_74 - I suspect if you upgrade your Java version it will compile with a more recent version. There have been a lot of improvements wrt to generics over time.
java -version
java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode)

Thanks, @johnmcclean-aol. I'll try and upgrade.

$ java -version
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)

Worked, thanks!


Resolve Network Cross-References

Currently, references can be made outside a Weaviate instance, this is reflected in a single ref model (which in turn comes from the open API schema doc). This should change to a P2P based approach.
Example:
{
	"$cref": "[UUID]",
	"peer": "weaviate://some-other-peer's-name",
	"type": "Thing"
}

Todo

[ ] Update SingleRef to reflect peer instead of locationUrl.
[ ] Allow nodes to read request data and resolve it over the P2P network.
[ ] Allow all nodes to read from each other if accepted to the network by the genesis server.
[ ] Reflect architecture in the readme.
[ ] Update tests.

Is this still relevant @moretea or is this implement differently because of a new issue?

It is not implemented. This is part of a peer2peer feature.

Spiking out a happy path (WIP)
Learnings
Storing network ref as a vertex
Add a vertex which we can then reference
g.addV().property('uuid', 'some-uuid').property('kind', network_reference').property('class_id', 'Instrument').property('location', 'WeaviateB')

Delivery Roadmap
Iteration 1: Import Network Cross-Refs
Goal: without manually editing the schema first, we can import (or update) a Thing/Action with a cross-ref to a network instance.
Iteration 2: GraphQL structure.
Goal: We use all the info about the schema of peers to allow querying cross references on remote schemas. (Resolving is not included yet)
Iteration 3: Resolve via network
Goal: We can resolve one level deep over the network. (One level means a network cross-ref can not have further refs at this point)
Iteration 4: Improve API design
We want to be able to take shortcuts in the previous iterations to move faster, however we still want to end up with the best possible UX on the API side. This iteration will "clean up" those shortcuts.

Closing as all the steps outlined in https://github.com/creativesoftwarefdn/weaviate/issues/413#issuecomment-449408411 have been completed.


it didn't worked at all

Microsoft PowerToys version
v0.86.0
Installation method
PowerToys auto-update
Running as admin
Yes
Area(s) with issue?
Advanced Paste
Steps to reproduce
x
✔ Expected Behavior
that it works
❌ Actual Behavior
it isn't useless, more than 1 week further and it still doesn't functioning, than it works and than i becomes a melding: clipboard see picture...
friendly greetings from Klaas, owner administrator and user of this and the other pc
Other Software

/bugreport


URL for ADFS to get metadata seems incorrect

I think the URL is missing "te" and should be: https://login.microsoftonline.com/te/your-tenant/your-policy/samlp/metadata?idptp=your-technical-profile

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

ID: e14a5d4c-5125-8ed2-7fda-38aee1296b76
Version Independent ID: 054d298b-937e-9f01-ae56-7025e47e4eec
Content: Add ADFS as a SAML identity provider using custom policies in Azure Active Directory B2C
Content Source: articles/active-directory-b2c/active-directory-b2c-custom-setup-adfs2016-idp.md
Service: active-directory
GitHub Login: @davidmu1
Microsoft Alias: davidmu

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

@rjarrattmsft thanks for the feedback! I created a pull request with your change.

Note: This is actually still an issue since B2C changed the recommended domains. It's not really a breaking issue, but the docs should be updated to use the new "{your-tenant-name}.b2clogin.com" domain, esp. since the call to authenticate will fail with an error similar to the following if you use the wrong domain:
Microsoft.IdentityServer.Service.Policy.PolicyServer.Engine.AssertionConsumerServiceUrlDoesNotMatchPolicyException: MSIS3200: No AssertionConsumerService is configured on the relying party trust 'https://{your-tenant-id}.b2clogin.com/flightpulse.onmicrosoft.com/B2C_1A_TrustFrameworkBase' that is a prefix match of the AssertionConsumerService URL 'https://{your-tenant-id}.b2clogin.com/flightpulse.onmicrosoft.com/B2C_1A_TrustFrameworkBase/samlp/sso/assertionconsumer' specified by the request.


Clean up findbugs exclusions for old XYZRange classes

Commit 56e830a removed all the old XYZRange classes from
org.apache.lang3.math, and left only the generic Range<T> class.
This patch removes the left-over findbugs exclusions for those
classes.

Coverage decreased (-0.007%) to 95.193% when pulling f0c83f0d3440b9b6f918703dae918dc442ecb2c6 on mureinik:findbugs into ff4967536b75fb18d048cc2a505f68835987d155 on apache:master.

Thanks! :+1:


Add memory card game #19

Added the memory card game and updated the index file(main page).
Thank you

branch has conflicts , please pull and make pr


add basic decompositions

alldiff, circuit (see Hakan's ortools one)

done by Jay, merged into master


Fixed LoadLibrary path for ASP.NET web apps

This change should enable PdfiumViewer to LoadLibrary the pdfium unmanaged DLLs in an ASP.NET web application (previously the default path was the ASP.NET shadow folder and resulted in a "File not found" error).

Should be ok with the last commit.


Some USD libs in Unity are set to "any platform" and cause iOS/Android builds to fail (USDU-244)

While the C# asmdefs are set correctly, the iOS bundle and some individual .dlls are set to "any platform"

This should be fixed by https://github.com/Unity-Technologies/usd-unity-sdk/pull/333


Why did we need mix?

I don't know if this is the correct place for this question, but why this project? I don't mean that as a rude question. You're contributing to a very intelligent framework, and I'm honestly interested in why mix was decided to be needed. I ask this as someone who never really got past beginner mode about a year ago and I'm now coming back. First there was Laravel Elixer which "simplified" gulp. Now you have Laravel Mix which "simplifies" web pack. What was wrong with elixer? Even more whats wrong with just gulp? I want to use the built in facilities to Laravel. I get that I can hack my own into place, but then I mind as well just use lumen and go from there. It doesn't come across as friendly. This is great if I want to watch one file and compile that to one output file. Who does that? Most people will have at least some directory structure for their css/js and this does not support wild cards/globbing so far as I can tell. Now I'm going to try this (and adapt it to mix):
http://stackoverflow.com/questions/35098935/laravel-elixir-use-wildcard-without-combining/39673313#39673313
and I don't even need multiple output files. I just don't want to manually enter a path for each mix. I feel like that's gross. Then we get into why are you even doing this? What was so fundamentally broken that this change was required?

Laravel Mix takes a slightly different path to Elixir, hence a 'new' platform. Both products greatly simplify the process of building all your site assets.
Both tools can watch multiple files being changed, so you shouldn't need to specify every single one. But for example, if you're using SASS you should have one 'main' file in which you specify all other SASS files to include. Then, use Elixir or Mix to watch and compile just the 'main' SASS file. The great thing is that if ANY of the SASS files change, it will be re-compiled.
I'm not sure if this is a free video, but if you're a laracaster you could watch this for more info:
https://laracasts.com/series/whats-new-in-laravel-5-4/episodes/3
The forum would be a good place to add questions like this on too.
https://laracasts.com/discuss
Cheers, N.

I guess the question was whats the broader vision? There's always an objective. What problem did this aim to solve, or whats the ideological objective?
As for the multiple files, I like this: https://sass-guidelin.es/#architecture
Lets say I have an entry point for my sass. app.scss. I and I have that in a root dir assets/sass.
so I have
app.scss
folder1/partial.scss
folder2/partial.scss
folder3/partial.scss
and so on...
So with gulp I could do:
gulp.watch('resources/assets/stylus/**/*.styl', ['stylus']);
and
gulp.src('resources/assets/stylus/style.styl')
and then my includes looked like:
@import "base/all.styl"
@import "components/all.styl"
@import "layout/all.styl"
Mix fails if I try this. It's like it doesn't support wildcards (globbing?). With everything in the same dir, with local level include, it works. I don't know if it's a limitation of sass (I abandoned stylus just so I could work within this frame work. Cause yea right trying to use non standard pre and post processors with mix), or mix. I could go dig through documentation and browse what few forum posts there are (this is pretty new and google mixes it up with elixer). Maybe poke at the code. But then how is this any easier? And then why did we make this design choice?

@rlewkowicz I haven't used Elixir much, but from my experience with creating build pipelines, the problems are as follows:

Elixir still use Webpack under the hood (surprise) by utilizing webpack-stream interface that is no longer maintained and has a plethora of issues on it's own
Elixir had way too many dependencies. There was a lot of cases prior to version 5 or 6 (before browserify setup was simplified and then ditched entirely) where it didn't even install on some systems (Windows being the main suspect) due some dependency failing for some obscure reason
Elixir was too hard to meaningfully customize. There was no single point of truth like the current setup/webpack.config.js that you can tweak to your needs
Elixir was too hard to maintain. laravel-mix has much more elegant architecture that is easy for understand for everyone who had some experience with webpack while the previous gulp setup was a voodoo with dozens of plugins.

Anyway, I am glad that Laravel officially ditched that Gulp monstrosity and I can sleep soundly knowing I don't need to deal with it's issues or maintain my own webpack boilerplate. I'm already using laravel-mix and I have a much better experience with it

Even more whats wrong with just gulp?

Well, for that matter, why do you even need Gulp? Just wire it up all yourself.

There's always an objective. What problem did this aim to solve, or whats the ideological objective?

Maybe build up a Gulpfile from scratch that does everything Mix does, and then let's compare your version versus the webpack.mix.js file that ships with Laravel.

Cause yea right trying to use non standard pre and post processors with mix), or mix.

I don't know what you mean by non-standard pre-processors. There's no need for you to pass a glob to fetch all Sass files within a directory. You can't ensure the order, and it's just not needed. Point to a single entry Sass file, and, there, you can import any partials that it requires.

That what I'm saying though. I can't even figure out how to wire up mix to do the same thing.
There's this guy:
https://laracasts.com/discuss/channels/elixir/anyone-know-how-to-use-new-laravel-mix-with-stylus-and-post-processors
Who's like go edit some files.
How would I use stylus and lost grid? (Which I picked up from laracasts)
Which is all I found so far.
I think I figured out how to do my sass includes with mix though


Provide utility for query parameter escaping

As it sits today this library requires you to do your own escaping when building SQL strings. A fluent dynamic SQL building api would be nice, but, a simple escape utility would be all I'd need when building queries based on user input. All the samples seem to ignore escaping parameters. I'm not really sure what all Bad Things users could do by manipulating queries as this is pretty new, but, I imagine there is something at least related to getting unauthorized access to data. :8ball:

You can now use SQL Parameterization in DocumentDB
https://azure.microsoft.com/fr-fr/blog/announcing-sql-parameterization-in-documentdb/

DocumentDB supports queries with parameters expressed with the familiar @ notation. Parameterized SQL provides robust handling and escaping of user input, preventing accidental exposure of data through SQL injection.


Protocol Approval Dates [CT]

Part of Feature #118
From protocol mapping exercise:
"Approval Date (Comment): Entered as protocol effective date. Actual there are 2 different approval dates on page 1 and 2"
We need to check this through, are there two dates, what are they?

@EMuhlbradt @czwickl - I noticed I was assigned to this ticket. Is there anything specific that you need from me?

Just noticed that this is a feature ticket so I have assigned @daveih so he gets notifications etc.


AMW-268 Fix ansible-common-criteria-demo on Olympus.

Issue: https://issues.redhat.com/browse/AMW-268
Olympus (with using sudo: yes) [ansible-common-criteria-demo]

@rpelisse Can you please review the PR?


Put "mustashed" query to msg.query

See rendered by mustashe output, passed SQL server.

Eh, not here :)


CS8073 build warnings when building generated C# clients against as .NET5 build target

(Note: Related to/same code as #3108)
I have a generated C# client which is compiled into an ASP.Net Core 3.1 project, and am currently testing with building it with .NET 5.
I get multiple of these warnings with non-nullable Guid parameters that weren't there previously:

Which seems to be one of the new Net5 warnings mentioned in this Microsoft blog post.
I don't know if there is a simple way to remove the null checks in these cases, or if the warning (sh/c)ould be disabled in the generated code as CS0472 is now @ https://github.com/RicoSuter/NSwag/blob/285e1c09c8f3fa17dd435be469ec2a046a4e0895/src/NSwag.CodeGeneration.CSharp/Templates/File.liquid#L17
?

We should handle the case in the code generator.
Probably a duplicate of #2855

We could just add a ! for simplicity (unnecessary null check doesnt hurt)

like jobId == null! ? There should be a better way I think, because we could test if the type is nullable or not, right?

Just changing it to == null! doesn't seem to have an effect, if that's what you mean:

I don't know enough about how the templates/generation work to really say about checking if the type is nullable in them (I see that CSharpParameterModel has an IsSystemNullable property that just works goes on whether the type name ends with ?, but I don't think that would be useful for reference types?)

The supression in the in the generated code in the 13.9 has silenced the warnings I was seeing.
Is it worth leaving this open for any further discussion of fixing the warnings rather than disabling them, or will #2855 do for that?


How much GPU mem needed for 7B model?

How much GPU mem needed for 7B model?

~12 gb

When I had Alpaca Lora loaded up, the total usage was 8.6GB NVRAM for my system so <8.6GB. I use a 3080 with 10GB NVRAM. I'm guessing around 7-8GB.

May I follow up with the question: How much is required to fine-tune the 7B model? Cheers

For me, 7B takes about 8-10GB and 5-6 hours to fine-tune, and 13B model takes about 16-17GB and 10-12 hours to fine-tune on a 4090.


great project

This is a great project, do you think you will ever continue development?
I have been playing with the program. Could you describe a better way to handle the websocket message queue. It seems the more coins that are added to the portfolio the GUI updates become slower and the backlog of unprocessed messages builds up. What does this limitation depend on is it CPU or Ram? would running on a server increase performance or is there a better way to process the message queue? Threads? Multiprocessing?
A cool feature would be a way of adding new coins to the portfolio and automatically skimming a certain percentage from each coin to allow for the new coin at a certain percentage.
Portfolio change, gains would be another good feature.
Asset holdings increases stats would be good too (Accumulation).
Overall a great project which seems some hard work went into but development stopped? What were your goals for this project?
Cheers!

Thanks for your interest!
It's true that the message queue starts to get too slow past some number of coins. CPU speed would determine that cutoff. The reason for this is because currently every message processed updates all the relevant fields in the GUI. A faster procedure would be to only update internal variables with new messages, and then call updates to the GUI periodically instead. This would limit the graphical changes needed, which would in turn greatly speed up message handling.
Alternatively, you could use multithreading, giving each coin its own thread and message handler, and have a master thread that reads information from the individual coin threads to update the GUI. Would require a complete rewrite to do that way, but it would certainly solve the speed issue.
Adding new coins could be implemented relatively easily, I think. Gains and losses wouldn't be too hard, either. I will do both once I get some time to spend on it again.
Development hasn't stopped, it's just that this is a side project for me which only gets worked on as time permits, which it has not lately. My goal for the project was to create a rebalancer that did not require me to give my API keys to a third party. In that I've succeeded, I think, it does the job. But there is certainly room for improvement. If you are interested in collaborating, feel free to submit a pull request.

Thanks for the quick response, a lot of effort has gone into this. I have made a few changes I could submit.
I have immplemented USD portfolio total balance and also  auto-rebalance after certain "imbalance" threshold is breached.
I'm a hobby/novice coder, this is the first time I have played with Python though! This project is actually a great project for learning through 'doing'. I'd be happy to upload my changes, although they may need some tweaking.
The message queue build up with a large portfolio is quiet an interesting problem, it's almost mesmerizing watching the GUI update in real time as it does. I'll research this issue further based on your comments.
Thanks

USD balance would be nice to have. I implemented it in the other branch but got side tracked. Feel free to submit pull requests as you like, I am happy to review your code.

Perfect! Ill endeavor to make a solid contribution. It's very kind of you to share your code and make this opensource, most would have kept this private for personal gain or other similar reasons.
Having used your program freely, it makes me feel compelled to follow your example.
I look forward to contributing.
Cheers.

Hi, I edited the program to include multiprocessing for receiving Websocket data and entering it into the message queue. I have also added threading capability to process the queue much faster and update GUI.
It'd be great if you could look over the code to see if you can make any improvements since I am really new to Python.
Next, id like to add trading with BTC as the base currency so that we can rebalance a percentage of the portfolio into a stable coin such as USDT.
Cheers!

Please submit a pull request whenever you're ready.

I merged your pull request into the "multithreading" branch - please target future pull requests to that branch. I have started testing, so far it appears to work, but on windows the GUI is a bit less responsive overall than the single-threaded version and I occasionally get crashes with TimeOut errors from binance. I will spend some time learning about multithreading and make some suggestions once I have a better handle on things.

Actually we have another problem: pandas is not threadsafe (not even read-only operations are threadsafe) so the ultithreaded version is not safe to use as-is without changing the underlying data structure. This will require some careful planning.


[KWS] error in using my own dataset,when training

I want to test the model in another dataset called "mobvoi_hotword_dataset".
And  I changed its file folder like "speech commond", but when train the model and run the sess, it happens an error
"UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 17: invalid start byte“

I don't know what will be done in the sess,and can't solve it.It's really thank you, if you can give me some suggestions!

Oh,maybe because of the size of wav file?
Thank you1

Oh it's because of the syntax of my wav file, I solve by changing them.
I'm sorry disturbed you.

Hi xcrpkuss, thank you for evaluating kws lib! I did not test kws lib on mobvoi_hotword_dataset and curios to see how it goes, please keep me updated and let me know if you need any help with kws. /Oleg

The project is everything ok in my task.
Previous error is due to the different chunk head of my data.
I change the chunk head and it's running now.
Thank you


Infrastructure Handover

In order that Goobi infrastructure receives the necessary attention it should be maintainable by Intranda.
As part of this we should:

[x] Document existing architecture in intranda Gitbook #248
[x] Copy modules from terraform-modules to local #262
[x] Update terraform to post 0.12 #264
[x] Create a usable staging environment  #265

These should have their own issue when work starts on them.

Still a lot of things to be improved over time, but with the staging environment being available this can be closed.


[Bug report]: Cant claim shimmer rewards, button greyed out

Platform
Desktop
Version
FireFly Shimmer v2.0.0
Description
I can´t claim the Shimmers rewards. The button is not operative to claim. Shimmer balance appears as already claimed.

Expected behaviour
Claim the rewards
Actual behaviour
Can´t claim
Can the issue reliably be reproduced?
Yes
Steps to reproduce the issue
Create a new profile with stronghold firefly
Serch for claim rewards
Operating System
Windows
Diagnostics
undefined

Developer Profile
Yes
Profile Type
Software (Stronghold)
Staking
Actively staking
Crash Status
Non-responsive
Error Messages
undefined
Error Logs
undefined

Duplicate declaration

[X] I have searched the issues tracker this issue and there is none

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@paco9393 if you are trying to claim on a profile that already has SMR funds in it, this view will display those funds as "already claimed" since the funds are already present in your SMR profile.
If you indeed have unclaimed funds (from the SMR staking period), you can use the button "buscar de nuevo" multiple times until you find your funds and proceed with the normal claiming flow.
Please re-open this issue if the problem persists.


fix: ignore EOF error on Windows directory scanning

In #68, the scanner now returns any error that was encountered. On Windows, the call to Readdir will return an EOF when it is done reading a directory.
I believe the desired behavior is to throw an error on any actual errors, but in the case of EOF, continue on to the next directory. As such, check for the EOF and return no error while releasing resources.
A user can test this PR by using the walk-fast example:
go run ./examples/walk-fast/main.go --verbose C:/users/powersj/godirwalk

Currently, this will throw an EOF error after the first directory. With this fix, all the sub-directories will be traversed and return successfully.
fixes: #70

Hmm the test error is:
The Go task failed with an error: Error: The process 'C:\hostedtoolcache\windows\go\1.13.0\x64\bin\go.exe' failed with exit code 2

This also appears on master currently, but error code 1.
Here is local running, with go1.19:
PS C:\Users\powersj\godirwalk> go test ./...
ok      github.com/karrick/godirwalk    0.187s
?       github.com/karrick/godirwalk/examples/remove-empty-directories  [no test files]
?       github.com/karrick/godirwalk/examples/scanner   [no test files]
?       github.com/karrick/godirwalk/examples/sizes     [no test files]
?       github.com/karrick/godirwalk/examples/walk-fast [no test files]
?       github.com/karrick/godirwalk/examples/walk-stdlib       [no test files]

@xuyang2 thanks! seems to resolved the errors as well :)

@karrick anything I can do to help this along?

@xuyang2 We're also interested in this fix - is there an estimate as to when this is going to be released?

@karrick Is this project still active?


Error: Could not locate the bindings file. Tried:

I am getting this error
→ /home/container/node_modules/better-sqlite3/build/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/build/Debug/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/build/Release/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/out/Debug/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/Debug/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/out/Release/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/Release/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/build/default/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/compiled/10.15.1/linux/x64/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/addon-build/release/install-root/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/addon-build/debug/install-root/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/addon-build/default/install-root/better_sqlite3.node
→ /home/container/node_modules/better-sqlite3/lib/binding/node-v64-linux-x64/better_sqlite3.node
at bindings (/home/container/node_modules/bindings/bindings.js:126:9)
at Object. (/home/container/node_modules/better-sqlite3/lib/database.js:4:40)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Module.require (internal/modules/cjs/loader.js:637:17)
at require (internal/modules/cjs/helpers.js:22:18)
at Object. (/home/container/node_modules/better-sqlite3/index.js:2:18)
I have looked at the the issues on the same stuff that people has had in the past and they do not work I have updated node-gyp and followed every download steps I have redownloaded and everything my system runs ubuntu 18.04 please help if you need to contact me on discord it is Carma Cam#1557

The error you're having is with the bindings npm module, which better-sqlite3 no longer uses. Try updating to the latest version of better-sqlite3.

The error you're having is with the bindings npm module, which better-sqlite3 no longer uses. Try updating to the latest version of better-sqlite3.

I am on the newest version of better-sqlite3

@ItsCam57 Which version is that, specifically?

Closing due to inactivity.

i'm using 6.0.1 (the latest, right?) and i'm seeing this issue. also, what do you mean that it no longer uses the bindings module? https://github.com/JoshuaWise/better-sqlite3/blob/66fcb8675b9420ffe0c4851627a3ca7b6cf78de6/package.json#L13

@keithbentrup At the time of my comment, better-sqlite3 didn't use the bindings module. Now it does again. Take a look at your build directory to find out why bindings couldn't find the binary.  Run find build and post the results here.

@JoshuaWise There was no build dir, and during installation, I guess node-gyp rebuild was silently failing.
I recently started using fnm (a node version manager similar to nvm but compatible with the fish shell, too) on this project, so now there's no global node-gyp.  As more people require multiple versions of node, any dependency (including build ones) should probably be explicitly stated in the package.json and that local node-gyp version should be used for building. (Of course, maybe you've already considered this, and there's a good reason that it won't work or isn't recommended in this case)
Anyway, I'll try to further troubleshoot b/c now even if I add node-gyp as dependency on my project and try to run ../node-gyp/bin/node-gyp.js rebuild from the better-sqlite3 dir, better-sqlite3 appears to build fine (with a few warnings), but my project isn't working as before. Instead of the Could not locate the bindings file, I see many new errors with hex addresses.
FATAL ERROR: v8::ToLocalChecked Empty MaybeLocal.
 1: 0x10003c597 node::Abort() [/var/folders/_c/xmm7nnpn6vn20s30bnsy94qw0000gn/T/fnm-shell-2342283/bin/node]
 2: 0x10003c7a1 node::OnFatalError(char const*, char const*) [/var/folders/_c/xmm7nnpn6vn20s30bnsy94qw0000gn/T/fnm-shell-2342283/bin/node]
 3: 0x1001afce0 v8::V8::ToLocalEmpty() [/var/folders/_c/xmm7nnpn6vn20s30bnsy94qw0000gn/T/fnm-shell-2342283/bin/node]
 4: 0x10310f869 Require(v8::Local<v8::Object>, char const*) [/Users/kbentrup/mcm/cli/node_modules/better-sqlite3/build/Release/better_sqlite3.node]
 5: 0x1031115fb Integer::Init(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Object>) [/Users/kbentrup/mcm/cli/node_modules/better-sqlite3/build/Release/better_sqlite3.node]
 6: 0x10311971f RegisterModule(v8::Local<v8::Object>, v8::Local<v8::Object>) [/Users/kbentrup/mcm/cli/node_modules/better-sqlite3/build/Release/better_sqlite3.node]
 7: 0x10003ffc6 node::DLOpen(v8::FunctionCallbackInfo<v8::Value> const&) [/var/folders/_c/xmm7nnpn6vn20s30bnsy94qw0000gn/T/fnm-shell-2342283/bin/node]
 8: 0x10023663f v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo*) [/var/folders/_c/xmm7nnpn6vn20s30bnsy94qw0000gn/T/fnm-shell-2342283/bin/node]
 9: 0x100235b81 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) [/var/folders/_c/xmm7nnpn6vn20s30bnsy94qw0000gn/T/fnm-shell-2342283/bin/node]
10: 0x100235220 v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments, v8::internal::Isolate*) [/var/folders/_c/xmm7nnpn6vn20s30bnsy94qw0000gn/T/fnm-shell-2342283/bin/node]
11: 0x31d6b1edbe3d
12: 0x31d6b1e918d5
13: 0x31d6b1e918d5
14: 0x31d6b1e918d5

That new errors is telling you that the better-sqlite3 was built successfully, but its dependency integer (which is also a native module) was not built.

@JoshuaWise So it turns out the issue was related to default configuration of new node installations. By default, the config sets to "ignore-scripts = true" for good reasons, so your package install scripts are never run and neither better-sqlite3 nor interger run their install (build) scripts.
Unfortunately, it silently succeeds (exit status 0) https://github.com/npm/npm/issues/12082, and I only found the issue by running npm install --loglevel verbose and confirming with npm config list. Once I set ignore-scripts to false temporarily, everything worked as expected.
I don't if there's anything that you can change on your end, but if you can't rely on npm scripts being run on install, maybe it's worthwhile including in the README or at least the troubleshooting guide.

This has been fixed in v7.0.0

Still have issue similar to this one.

/home/ubuntu/proj/node_modules/bindings/bindings.js:135
throw err;
^
Error: Could not locate the bindings file. Tried:
→ /home/ubuntu/proj/node_modules/better-sqlite3/build/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/build/Debug/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/build/Release/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/out/Debug/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/Debug/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/out/Release/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/Release/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/build/default/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/compiled/14.17.3/linux/arm64/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/addon-build/release/install-root/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/addon-build/debug/install-root/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/addon-build/default/install-root/better_sqlite3.node
→ /home/ubuntu/proj/node_modules/better-sqlite3/lib/binding/node-v83-linux-arm64/better_sqlite3.node
at bindings (/home/ubuntu/proj/node_modules/bindings/bindings.js:126:9)
at Object. (/home/ubuntu/proj/node_modules/better-sqlite3/lib/database.js:9:24)
at Module._compile (internal/modules/cjs/loader.js:1085:14)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
at Module.load (internal/modules/cjs/loader.js:950:32)
at Function.Module._load (internal/modules/cjs/loader.js:790:14)
at Module.require (internal/modules/cjs/loader.js:974:19)
at require (internal/modules/cjs/helpers.js:92:18)
at Object. (/home/ubuntu/proj/node_modules/better-sqlite3/lib/index.js:2:18)
at Module._compile (internal/modules/cjs/loader.js:1085:14) {
tries: [
'/home/ubuntu/proj/node_modules/better-sqlite3/build/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/build/Debug/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/build/Release/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/out/Debug/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/Debug/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/out/Release/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/Release/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/build/default/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/compiled/14.17.3/linux/arm64/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/addon-build/release/install-root/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/addon-build/debug/install-root/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/addon-build/default/install-root/better_sqlite3.node',
'/home/ubuntu/proj/node_modules/better-sqlite3/lib/binding/node-v83-linux-arm64/better_sqlite3.node'
]
}

Version of module is 7.4.3
Other information, that may be helpful:


Automated Package Upgrade

:tada: This PR is included in version 26.0.101 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Support for changing margins

The margins of exported resume are very thin. It would be great if we can adjust those.

Closing this in favor of Reactive Resume v3 release.
If you continue to face this issue, please raise a new one and I'll have a look at it as soon as I can.
In the meantime, if you are able to, please consider donating to keep supporting the project: https://www.buymeacoffee.com/AmruthPillai :)
Thank you!


bazel test fails on OS X 10.10.2

Using the following BUILD file:
cc_library(
  name = "foo",
  srcs = ["foo.cpp"],
  hdrs = ["foo.h"],
)

cc_test(
  name = "foo_test",
  srcs = ["foo_test.cpp"],
  deps = [":foo"],
)

where foo.h is:
int foo(int x);

foo.cpp is:
#include "foo.h"
int foo(int x) {
    return x * x;
}

and foo_test.cpp is:
#include "foo.h"
#include <iostream>

int main() {
    std::cout << "Hello, World " << foo(3) << "\n";
    return 0;
}

then bazel test --test_output=streamed :foo_test produces the output:
WARNING: Streamed test output requested so all tests will be run locally, without sharding, one at a time.
INFO: Found 1 test target...
exec ${PAGER:-/usr/bin/less} "$0" || exit 1
dyld: Library not loaded: bazel-out/local_darwin-fastbuild/bin/libfoo.so
  Referenced from: /private/var/tmp/_blaze_beder/28185150b94b8129abda95172b3b0fc5/workspace/bazel-out/local_darwin-fastbuild/bin/foo_test.runfiles/./foo_test
  Reason: image not found
tools/test/test-setup.sh: line 16:  1519 Trace/BPT trap: 5       "$@"
FAIL: //:foo_test (see /private/var/tmp/_blaze_beder/28185150b94b8129abda95172b3b0fc5/workspace/bazel-out/local_darwin-fastbuild/testlogs/foo_test/test.log).
Target //:foo_test up-to-date:
  bazel-bin/foo_test
INFO: Elapsed time: 0.190s, Critical Path: 0.11s
//:foo_test                                                              FAILED

Executed 1 out of 1 tests: 1 fails locally.

If I run bazel build :foo_test, then it builds correctly, and I can run ./bazel-bin/foo_test, and it correctly produces the output Hello, World 9.
I'm running OS X Yosemite, 10.10.2 (14C1514), with gcc --version:
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.57) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.1.0
Thread model: posix

clang --version:
Apple LLVM version 6.0 (clang-600.0.57) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.1.0
Thread model: posix

I'm synced to bazel's master branch, change 03bad4619075aa77876698c55827aa54e7426ea9.

I was able to reproduce this using the built-in cpp example with no modifications:
$ bazel test --test_output=all //examples/cpp:hello-success_test
INFO: Found 1 test target...
FAIL: //examples/cpp:hello-success_test (see /private/var/tmp/_blaze_phoenix/70ce3f379b09976e83961c12a3bbdb4e/test_cc_app/bazel-out/local_darwin-fastbuild/testlogs/examples/cpp/hello-success_test/test.log).
INFO: From Testing //examples/cpp:hello-success_test:
==================== Test output for //examples/cpp:hello-success_test:
exec ${PAGER:-/usr/bin/less} "$0" || exit 1
dyld: Library not loaded: bazel-out/local_darwin-fastbuild/bin/examples/cpp/libhello-lib.so
  Referenced from: /private/var/tmp/_blaze_phoenix/70ce3f379b09976e83961c12a3bbdb4e/test_cc_app/bazel-out/local_darwin-fastbuild/bin/examples/cpp/hello-success_test.runfiles/examples/cpp/hello-success_test
  Reason: image not found
tools/test/test-setup.sh: line 16:  2309 Trace/BPT trap: 5       "$@"
================================================================================
Target //examples/cpp:hello-success_test up-to-date:
  bazel-bin/examples/cpp/hello-success_test
INFO: Elapsed time: 0.164s, Critical Path: 0.10s
//examples/cpp:hello-success_test                                        FAILED

Executed 1 out of 1 tests: 1 fails locally.

bazel run //examples/cpp:hello-world works fine, however, and it has the same library dependency (and is in fact the same source file).
I am also on OS X 10.10.2.

Hello, thank you for reporting it. We were already aware of that problem and it is a bit tricky to solve. I will report when I finally find a solution.


Provide a "untrusted html view".

In addition to locking down iframes and enabling CSP I think it might be nice to provide a top level API that extensions can use to render HTML safely.  Extensions such as markdown-preview take a string of HTML and render it in a div within the main Atom UI.  As a result, the HTML is rendered in the same context as the rest of Atom (with Node integration).  While CSP should mitigate much of the risk associated with this, it doesn't totally solve the "render untrusted HTML" issue.  For example, user content could potentially still break the DOM of the main Atom app. So, we could just ask that markdown-preview use a sandboxed iframe to minimize the issues that could arise from rendering user provided content.  But, I was thinking it might be a nice API primitive if we allowed any extension to hand us a string of HTML and we render it for them. I'm not sure how extensible this would need to be (ex. does the rendered HTML inherit CSS styles from the outer frame, etc), but it does seem like a nice security API.
@kevinsawicki @mcolyer @nathansobo @gregose @mastahyeti

I think this can all be done in Electron now via the <web-view> tag, https://github.com/atom/electron/blob/master/docs/api/web-view-tag.md
Closing this out.


[Discussion] Adding code quality tools

What are your thoughts on adding some code quality tools to this codebase?
I'm thinking:

prettier for a consistent and somewhat standard formatting
eslint to prevent mistakes and follow useful conventions
maybe TypeScript?

I'm definitely open to adding eslint. That said, I've unfortunately had very little free time lately (work is eating eating up 90% of my waking hours) — so if this does happen, it will probably be at a much later date.
My next priority is adding unit tests. I was hoping to have this done before releasing 2.0.0, but I rushed that out in an alpha state upon request.


General build of program - MVP v.1.0

Looking forward to it

Looking forward to it

MVP 1.0 is done in 90%.

MVP 1.0 is done in 90%.

MVP 1.0 is done with basic unit tests,

MVP 1.0 is done with basic unit tests,


Create meta endpoints

So we want to create meta endpoints, partially mapped from the official github API, but to some extent manually entered info.
/meta/maintainers > list of official maintainers
from /orgs/apis-is/public_members (only maintainers should be public members of the org)
/meta/contributors > list of all contributors
from /repos/apis-is/apis/contributors
/meta/sponsors > list of sponsors
if sponsors have a github user/org than it would be hardcoded into the endpoint
/meta/about > content that goes into the about section on the documentation page (hardcoded into endpoint)

Maybe we could host all that under the /meta route? So /sponsors would be /meta/sponsors.

@koddsson genius. Please come back to the same continent so I can give you a big hug

@koddsson agree completely - first we ruled it out, but we were thinking apis.is/apis/sponsors which looked weird, /meta is much better

So I updated the initial comment to reflect this meta decision, but also added an /about subendpoint

I started something in the v2-meta branch.

@koddsson expanded on that - experimenting with the maintainers endpoint though, was thinking instead of just returning this
[
  {
    "login": "benediktvaldez",
    "avatar_url": "https://avatars.githubusercontent.com/u/1928103?v=3",
    "url": "https://api.github.com/users/benediktvaldez"
  },
  {
    "login": "koddsson",
    "avatar_url": "https://avatars.githubusercontent.com/u/318208?v=3",
    "url": "https://api.github.com/users/koddsson"
  }
]

I'd like to get something like this (getting the data from the url above)
[
  {
    "user": "benediktvaldez",
    "avatar": "https://avatars.githubusercontent.com/u/1928103?v=3",
    "name": "",
    "email": "",
    "bio": ""
  },
  {
    "user": "koddsson",
    "avatar": "https://avatars.githubusercontent.com/u/318208?v=3",
    "name": "",
    "email": "",
    "bio": ""
  }
]

But not sure how best to do that - was trying something like this ...
endpoint.get('/maintainers/', function(req, res, fail) {
  var options = {
    url: 'https://api.github.com/orgs/apis-is/public_members',
    headers: {
      'User-Agent': 'apis-is'
    }
  };

  request.get(options, function(err, response, body) {
    if (err) return res.json({error: err});

    var maintainers = _.map(JSON.parse(body), function(n) {
      var user = {};
      request.get({ url: n.url, headers: { 'user-agent': 'apis-is' } }, function(error, res, data) {
        if (err) return;
        user = JSON.parse(data);
      });
      var maintainer = {
        'user': n.login,
        'avatar': n.avatar_url
      };
      maintainer.name = user.name;
      maintainer.email = user.email;
      maintainer.hireable = user.hireable;
      maintainer.bio = user.bio;
      return maintainer;
    });

    return res.json(maintainers);
  });
});

... but the second request hasn't finished at return res.json(maintainers) leaving me with nothing but user and avatar
I think my approach is wrong - thoughts?

Use async.map instead, and move all the logic into the request.get callback, then res.json in the result callback of async.map.

I've got something working but got hit by the github api rate limit. Will pick it up tomorrow.

Something like this? It's missing bio and I might have drunk to much of the async kool-aid so I'm gonna sober up and I'll push it tomorrow once I've had a change to refactor and clean it up a bit.

Looks great @koddsson - looking forward to it :smiley_cat:

Added bio and removed hirable. I just pushed the async madness, I think it's a correct approach to this but I'm new to async so I'm not 100%. Check it out and tell me what you think :)

Meta has been merged so I'm closing this. Create a new thread to work on updates


make setglucosetimestamp a function, and go back to grepping openaps.ini

I don't want to rely on the contents of runagain, as that may not always exist, or may get modified without actually being run, which shouldn't change the behavior of the loop.  So this changes everything back to do grep "MDT cgm" openaps.ini to detect a MDT cgm config, and also pulls out all the repetitive new code into a function.

Looks good


Add rot_vec3

Rotates a 3D vector by a quaternion.
The formula is:

where P is:

Can make the it faster by substituting the scalar value with 0 in the multiplication algorithm.

Done by https://github.com/PistonDevelopers/quaternion/pull/14