Text and icons do not render correctly in CanvasKit on older Android devices

On older Android devices, with the latest Chrome browser installed, text and icons either do not render correctly, or not at all, when built with CanvasKit support:
Consider the test web app at http://mjohnsullivan.github.io/flutter_web_test
On a Pixel 2, it renders correctly:

On a Nexus 6, the text and icons do not render:

Here's the details on the Nexus 6:
Device: Nexus 6
OS: Android 7.1.1
Chrome version: 78.0.3904.108
Flutter: Channel master, v1.12.17-pre.80, on Mac OS X 10.14.6 18G1012, locale en-US

@kjlubick we do not see any errors on our side. We're suspecting a CanvasKit bug.

Happy to give you the Nexus 6 device if that would help testing.

This is reproducible on Nexus 5X as well, thanks.

Can you identify which CanvasKit calls are being invoked?  Is this using the Paragraph bits?

Can you identify which CanvasKit calls are being invoked? Is this using the Paragraph bits?

@hterkelsen is there a way to get this instrumentation? Maybe instrument all JS-interop calls? I imagine it could be something similar to our _debugDumpPaintCommands.

(silly question) Is surface.flush() being called correctly?

We do flush the surface.

I can't get anything to load on Android 8.1.0 and 7.1.1 emulator with --release --dart-define=FLUTTER_WEB_USE_SKIA=true on the latest master 1.22.0-2.0.pre.93.

Android 10 emulator for reference

Minimal reproducible code sample
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Sample',
      home: Scaffold(
        appBar: AppBar(
          title: Text('Sample'),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."),
              Row(
                mainAxisAlignment: MainAxisAlignment.center,
                children: [
                  Icon(Icons.ac_unit),
                  Icon(Icons.refresh),
                  Icon(Icons.audiotrack),
                ],
              )
            ],
          ),
        ),
      ),
    );
  }
}

flutter doctor -v
[√] Flutter (Channel master, 1.22.0-2.0.pre.93, on Microsoft Windows [Version 10.0.19041.450], locale en-US)
    • Flutter version 1.22.0-2.0.pre.93 at C:\Development\flutter_master
    • Framework revision f35a8b7470 (4 hours ago), 2020-08-26 21:33:03 -0700
    • Engine revision 388193a67b
    • Dart version 2.10.0 (build 2.10.0-62.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at C:\Users\marku\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.6.5)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.6.30320.27
    • Windows 10 SDK version 10.0.18362.0

[√] Android Studio (version 4.0)
    • Android Studio at C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (4 available)
    • sdk gphone x86 arm (mobile) • emulator-5554 • android-x86    • Android 11 (API 30) (emulator)
    • Windows (desktop)           • windows       • windows-x64    • Microsoft Windows [Version 10.0.19041.450]
    • Web Server (web)            • web-server    • web-javascript • Flutter Tools
    • Chrome (web)                • chrome        • web-javascript • Google Chrome 84.0.4147.135

• No issues found!

Are there any updates for this issue?
I understand that Flutter Web is not stable yet but the data itself not appearing on some devices is something that should be resolved soon 😅

I can still reproduce this issue on Android API 25 (7.1.1) emulator. The following are the error logs from the chrome devtools:

Error logs
flutter.js:335 Uncaught SyntaxError: Unexpected token ...
VM29:46 Uncaught ReferenceError: _flutter is not defined
    at VM29:46:7

Updating Chrome to the latest version available on the Play Store (107.0.5304.91) doesn't solve the issue.


Cookbook refactor

This PR refactors the cookbook to bring it more in line with the rest of the Spectre cookbooks. It also adds a better method for testing changes to Turnstile inside the Vagrant box that Builderator generates.

Yeah, we never used it anywhere. AFAIK it was John testing something.

Yeah, we never used it anywhere. AFAIK it was John testing something.

👍

After a conversation with @fmitchell-r7 I'm removing dev mode. This marks a clear distinction between testing the application (which we should be running locally) and testing the cookbook (which is what Builderator is doing).


Pressing "Enter / Return" does not add a new line

In the editor when I press "enter" to add a new line this keystroke saves the entry draft instead.
Craft Version: 3.4.43
Plugin Version: 1.0.2

Interesting, I haven't tested with the newer versions of Craft. This shouldn't be too difficult to resolve.

Yes, I can confirm the above behaviour is what I'm experiencing.

Hi @richhayler, unfortunately I'm not able to replicate this one. I've tried across Chrome/Firefox/Safari and have uploaded a screen recording below. Let me know if I'm missing something!
prism-return-test.mov.zip

Thanks for taking a look. I'll disable some plugins and also try to dig a bit deeper to understand what's causing the behaviour. It works fine in every scenario apart from when I switch entry types but as you've shown it might bee my specific setup.

Ok, I've tried a bunch of things:
I've narrowed it down to if I have an asset field after the prism field this seems to cause the issue. I ruled out it being related to switching the entry type by changing the entry type that contained then prism field to be the default (which still resulted in not being able to create a new line).
Ive attached a screenshot below of what my entry form looks like.

If I remove the asset field then I can create a new line in the editor.

Thanks @richhayler, I'm currently doing a big upgrade of this plugin and just replicated the same issue.
This is actually caused by Craft loading its own version of the PrismJS library (for previewing asset uploads), which is causing conflicts with the plugin.
My solution is to remove Craft's version from the CP when this plugin is installed, being mindful to load the syntax and theme(s) Craft requires to ensure compatibility. When I first made this plugin Craft wasn't using it's own version of the PrismJS library!
I'll aim to release a patch this evening.

Thanks @thejoshsmith, I'm glad you were able to replicate the issue work out the cause of the issue. Thanks for keeping this plugin going, it gives me a great deal of flexibility of what I'm able to in terms of content management via the control panel.

No worries @richhayler. Could you please install version 1.0.4 and let me know if this fixes the issue?
BTW the update I'm working on allows you to render code blocks on the front end using {{ entry.mySyntaxHighlighterField.render() }} and also use the plugin within Redactor, so if you're keen to test this out I'll let you know when a beta version is available.


Fix parsing of bands file header

Fixes #137

The code looks fine to me, but I don't entirely follow what bug is being fixed. Am I right in thinking that it was looking for (nonexistent) "BEGIN header" and "END header" fields? We can confirm from the docs that this is not expected, so this seems good https://www.tcm.phy.cam.ac.uk/castep/documentation/WebHelp/content/modules/castep/expcastepfilebands.htm
One query about scalar data

That's correct. I had assumed at first glance that it was a "standard header". Sadly as all things scientific software, standards are there to be broken.


Configuration has become graphically impossible.

Windows Terminal version (or Windows build number)
1.11.2731.0
Other Software
No response
Steps to reproduce
I did allow the taskbar to become the taskbar that is provided by Windows.
Expected Behavior
No response
Actual Behavior

http://github.com/microsoft/terminal/issues/11472#issuecomment-940188742

Yes, that shall remediate this.


unable to install elastic search image

Expected behavior
It should create elastic search image
Actual behavior
(HTTP code 404) unexpected - {"message":"manifest for centerforopenscience/elasticsearch:latest not found"}
Information about the Issue
(HTTP code 404) unexpected - {"message":"manifest for centerforopenscience/elasticsearch:latest not found"}
Steps to reproduce the behavior

...
...

Dupe of #4171.


Release version v0.3

Checklist for release:

[ ] Update NEWS file
[ ] Update CITATION.cff
[ ] Update VERSION
[ ] In devcontainer.json, update "image": "ghcr.io/r-devel/r-dev-env:devel" to "image": "ghcr.io/r-devel/r-dev-env:main",,
[ ] Make PR to main branch - needs approving review!
[ ] Make sure docker container is rebuilt
[ ] Test container and fix any issues
[ ] Make GitHub release
[ ] Rebuild docs

New Version release NEWS.md
v0.3
Gitpod Setup
Github Actions to build Docker Image for Gitpod workspace
Gitpod VSCode Extension Settings Sync
which_r R version choice validation
Local Setup Permission Issue solved and configured helper scripts to work properly on local devcontainer setup.
Workflow to optimize docs images
Docs :
Added Gitpod Documentation
Restructured overall Documentation
Updated Index Readme.md

I don't think "- Gitpod VSCode Extension Settings Sync" needs to be a separate point as that is part of the Gitpod setup.
Similarly "-Updated Index Readme.md" doesn't need to be a separate point as that is part of "-Restructured overall Documentation". In fact maybe "Added Gitpod Documentation" is enough.
The aim of the NEWS is to communicate the main changes from a user point of view, so they don't need a detailed breakdown of the tasks this involved.

It looks like we no longer need to rebuild the docs after making a release - the version number automatically updates in the mkdocs documentation as well as on the README. I'll update the issue template!


Call the backend to draw a card.

This task is covered in https://github.com/sopra-fs23-group-05/Client/issues/29


Advanced Search Tab Re-design

Problem Description:
LUX would like to redesign the front end layout based on POW's mockups. This issue will support the re-design of the front end layout (#270) and specifically focus on the advanced search tab re-design.
Prerequisite: https://github.com/project-lux/lux-frontend/issues/416
Expected Behavior/Solution:
LUX advanced search tabs to be re-configured to match the requirements and mockups below.
Requirements:

Merge the advanced search query with the HELP text.

Query will remain on the left hand side

Help text will remain on the right hand side

a grey divider will be placed between the two sections.

Tabs will be moved to be above the new merged section.
Tabs will be connected to the advanced search query.
Tabs will contain their respective icon to the right side.
X results will be placed underneath the
Icons will always appear for all scope tabs.
The new merged facet & search results block will live underneath the new merged query block.

Needed for promotion:
If an item on the list is not needed, it should be crossed off but not removed.

[ ] Wireframe/Mockup - Mike
[ ] Committee discussions - Sarah
[ ] Feasibility/Team discussion - Sarah
[ ] Backend requirements - TBD
[ ] Frontend requirements- TBD
[ ] Are new regression tests required for QA - Amy
[ ] Questions
List of questions for discussions. Answers should be documented within the issue.

UAT/LUX Examples:

https://lux.collections.yale.edu/view/results/objects?q={"AND"%3A[{"text"%3A"andy"%2C"_lang"%3A"en"}%2C{"text"%3A"warhol"%2C"_lang"%3A"en"}]}&qt=objects

Dependencies/Blocks:
Prerequisite: https://github.com/project-lux/lux-frontend/issues/416
Related Github Issues:

META: https://github.com/project-lux/lux-frontend/issues/270
https://github.com/project-lux/lux-frontend/issues/417

Related links:
Presentation
Design walkthrough
Prototype
Wireframe/Mockup:

Expected:

same comment as on #417
@kamerynB - can you validate the grays used in the tabs? It seems to be a much darker gray than I'm seeing deployed.
Also - are you planning to add the Object/Works (?) overlay as part of this ticket, or is that separate?

(minor issue) | the people and groups icon, as shown above is inconsistent with where the other icons are placed. This also affects the "66 results" as it is placed in the middle.

Also noted the above in https://github.com/project-lux/lux-frontend/issues/417

Approved by UAT but needs a separate ticket to address the issues below:

The shadow of the tabs is different than the shadow for the advanced search query.
Help box does not fit properly.
the line from the help text does not continue on.
the additional of the (?)/overlay.

Example: https://lux-front-tst.collections.yale.edu/view/results/events?q={"text"%3A"andy"%2C"_lang"%3A"en"}&qt=concepts (Zoom in to 200% to see the issues)

Closing, looks good in PROD.
Created - https://github.com/project-lux/lux-other/issues/12 to tackle the redesign of the help text box. Other issues were addressed in the hot fix.


Iterating on a string enum

Maybe it is a half question, but I think there is no good way to iterate on a string enum right now.  Please see this Stackoverflow question: https://stackoverflow.com/questions/47896885/iterate-on-string-enum .
Does not work:
export enum Locales {
  En = 'en',
  Fr = 'fr',
  De = 'de',
  Es = 'es',
  It = 'it',
  Nl = 'nl',
  No = 'no',
  Tr = 'tr',
}

for (const key of Object.keys(Locales)) {
  const locale: string = Locales[key]; // TS error: [ts] Element implicitly has an 'any' type because index expression is not of type 'number'.
  console.log(locale); // Should print 'en', 'fr' and so on
}

Am I missing something or is iterating on a string enum without losing type safety really circuitous?

Object.keys doesn't return keyof T (see many duplicates of this) so key is just an ordinary string as far as the type system is concerned.
You can use for / in and this works as expected:
for (const key in Locales) {
  const locale: string = Locales[key]; // No error
  console.log(locale); // Should print 'en', 'fr' and so on
}
``
Or use `Object.values` from the `es2017` lib target

I tried to avoid the for .. in loop as Microsoft's tslint forbids it. Should I disable it for this line? Using Object.values I still face the same error because of key (a string) being used as index:

[ts] Element implicitly has an 'any' type because index expression is not of type 'number'.

Hi there. I stumbled upon this issue while looking for a way to verify that a value is a member of a given enum. But the solution given here becomes unreliable with namespaces. Consider this example:
import { expect } from 'chai'

enum FooBar {
  FOO = 'FOO',
  BAR = 'BAR'
}

namespace FooBar {
  export const somethingElse = 'bogus'
}

describe.only('string-based enum', () => {
  it('supports refining from a string value', () => {
    const a: string = 'FOO'
    const b: string = 'somethingElse'

    const test1: FooBar | undefined = FooBar[a]
    const test2: FooBar | undefined = FooBar[b]

    expect(test1).to.be.equal(FooBar.FOO)
    expect(test2).to.be.equal(undefined)
  })
})

Is there any good way to get around this?

Hi there. I stumbled upon this issue while looking for a way to verify that a value is a member of a given enum. But the solution given here becomes unreliable with namespaces. Consider this example:
import { expect } from 'chai'

enum FooBar {
  FOO = 'FOO',
  BAR = 'BAR'
}

namespace FooBar {
  export const somethingElse = 'bogus'
}

describe.only('string-based enum', () => {
  it('supports refining from a string value', () => {
    const a: string = 'FOO'
    const b: string = 'somethingElse'

    const test1: FooBar | undefined = FooBar[a]
    const test2: FooBar | undefined = FooBar[b]

    expect(test1).to.be.equal(FooBar.FOO)
    expect(test2).to.be.equal(undefined)
  })
})

Is there any good way to get around this?


Update anaconda link

In "paid support" - old page was retired

[ ] ~Closes #xxxx~
[ ] ~Tests added / passed~
[ ] ~Passes pre-commit run --all-files~

Looks good! I believe makepath.com will also be happy to help with Dask, particularly for geoscience applications.

I believe makepath.com will also be happy to help with Dask

Can you please tag someone to propose this from their side? We should probably have that as a separate PR in case it requires discussion.

@martindurant @jbednar hey hey thanks for thinking of us!
Definitely want to help with Geospatial Dask!
A good link would be: https://makepath.com/contact/


Feature/pipeline upgrade

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Flag
Coverage Δ

unittests
70.56% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.


Tray indicator persists even when the device has been unplugged or disconnected.

Bug is still happening as of Gnome 43.2 with the lastest version of the extension. (I don't know how to check version but I'm sure it's the latest). Re-installing didn't help.
As title suggested. Can be removed by turning the extension on and off again.
Tray indicator functions normally when device is connected. However just refuses to go away afterward. Please fix.

@vchlum I would look into this since I probably caused the issue in the first place with the new code (sorry), but I'm a bit swamped with coursework and exams until the summer. I'm happy to help out though, I just don't have time to reproduce this and troubleshoot it.
@duymazino As a workaround, have you tried changing the setting in the extension's preferences?

fixed


Update for ITensors v0.2

Updates for ITensors v0.2, mostly removing type parameters from the ITensor class, such as ITensor{2} -> ITensor.
Also run JuliaFormatter to automatically format the code (using JuliaFormatter; format("."; verbose=true) in the base directory).

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@aa368a4). Click here to learn what that means.
The diff coverage is 81.84%.

@@            Coverage Diff            @@
##             master     #210   +/-   ##
=========================================
  Coverage          ?   80.61%
=========================================
  Files             ?       20
  Lines             ?     2125
  Branches          ?        0
=========================================
  Hits              ?     1713
  Misses            ?      412
  Partials          ?        0

Impacted Files
Coverage Δ

src/PastaQ.jl
100.00% <ø> (ø)

src/deprecated.jl
0.00% <0.00%> (ø)

src/circuits/productstates.jl
43.75% <25.00%> (ø)

src/measurements.jl
32.63% <25.00%> (ø)

src/optimizers.jl
49.36% <47.05%> (ø)

src/inputoutput.jl
48.57% <50.00%> (ø)

src/lpdo.jl
71.91% <50.00%> (ø)

src/circuits/gates.jl
63.25% <56.80%> (ø)

src/utils.jl
79.69% <77.55%> (ø)

src/tomography/tomographyutils.jl
84.74% <79.31%> (ø)

... and 10 more

Continue to review full report at Codecov.

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


Adding support for Scala.

Hey, guys!
Made me very sad that this project doesn't support Scala. So I made this little tiny patch.
I've checked codemirror and I ran the code on my machine. I'm a screenshot of Fizz buzz implemented in Scala.

Hope it helps! Cheers!
P.s.: Yes, I've used clike, found example in codemirror source.

Oto

Thank you so much @otobrglez! this will be included in our next release.


point_hint not precise enough

See discussion: https://discuss.graphhopper.com/t/5039
See link with currently wrong snapping start location https://graphhopper.com/maps/?point=33.657637%2C-112.149891&point=33.657629%2C-112.148266&point_hint=North 42nd Lane&point_hint=
Related #1406 and #1718

Also seeing bad snapping for https://graphhopper.com/maps/?point=43.060328%2C-80.463078&point=43.079409%2C-80.423629&point_hint=c&point_hint=9th Concession Road
Here the problem is it getting confused between 9th and Ninth. Interestingly OSM has the roads as Ninth and 10th & Google Maps has 9th and Tenth.
A fix could just be adding more replacement rules to NameSimilarityEdgeFilter. I think it brings up a bigger issue of snapping though. With various other examples I've seen the distance between snapped point and actual point up to 3km away. In this example it is 1.4km. Should there be a capped distance to the snapped point? And if so would you open to a PR for it?

Yes, indeed, limiting the snapping with the NameSimilarityEdgeFilter to a certain radius sounds good.

With various other examples I've seen the distance between snapped point and actual point up to 3km away.

Without the point_hint this can surely happen, with the point_hint it does not make much sense, yes.

Maybe we could add some sort of penalty for distance in addition to name similarity? I am not sure how most people use the point_hint and if it could make sense to match a result that is e.g. farther away than 2 km?

Sure. I'm new to the codebase and there's a lot happening so any direction would be helpful. Possible options:

Adding a new edge filter in in ViaRoutingTemplate to filter edges beyond a certain radius (or modifying NameSimilarityEdgeFilter to do this)

The penalty option sounds much more involved as I think we'd have to modify the EdgeFilter interface to return the penalty, save it in the QueryResult and then modify the findClosest methods to sort using the penalty instead of distance.

I am not sure how most people use the point_hint and if it could make sense to match a result that is e.g. farther away than 2 km?

For our case we're snapping street houses to the roads they are on so it doesn't really make sense for them to be more than 100m away

Yes, I would start with modifying NameSimilarityEdgeFilter. You could use the Circle shape like this. But I hope the precise geometries&distances are not required and we can avoid calling the expensive fetchGeometry (will also make the code easier).

For our case we're snapping street houses to the roads they are on so it doesn't really make sense for them to be more than 100m away

Yes, sounds like a good start and should be the common use case.

I've got a circle in NameSimilarityEdgeFilter but we'll need a way to pass in the bounding box.
We can create the bounding box here as there's a node access, but we'd need a way of passing it through to the edge filter.

Ah, yes, this dependency to the graph (graph.getNodeAccess) is ugly and smells unnecessary if we already have the EdgeIteratorState. Maybe for now pass the NodeAccess (ghStorage.getNodeAccess()) to the ViaRoutingTemplate constructor and then to NameSimilarityEdgeFilter constructor?


Word completion should include words from other opened files

VSCode Version:1.0.0
OS Version:win7

For example, in a document has been entered in the string: helloworld, then enter the letter h for selection when you choose b helloworld file.

Hi, the development team doesn't speak Chinese, sorry. Can you please find someone that helps you translate the issue to English.

We call this word completion and it should be enabled by default. In which language do you not see word completion as expected.

my mean is in other file ,not in same file.

@chwentao thanks for the clarification.

Sorry about that in PHP I have some problems.
ENV:

File Type: *.php
OS: ubuntu 14.04 3.13.0-32-generic x86_64
Code Version:
Version 1.3.1
Commit e6b4afa53e9c0f54edef1673de9001e9f0f547ae
Date 2016-07-12T13:28:46.761Z
Shell 0.37.6
Renderer 49.0.2623.75
Node 5.10.0

We call this word completion and it should be enabled by default. In which language do you not see word completion as expected.

I am surprised why nobody else is "+1"-ing this issue. The word completion using words from any opened buffer is extremely useful and pretty common these days. I hope this would make it into one of the near future releases...

Will this ever be implemented? It's pretty standard for most editors.  It's my main gripe with VSCode which is upsetting because it's my preferred editor in any other aspect.

+1
The lacking of this feature is a big factor why i still hang up on emacs.

Can you all try this out: https://marketplace.visualstudio.com/items?itemName=Atishay-Jain.All-Autocomplete. Would  love to get some feedback.

@atishay , failed to install, tried 3 times, no time on my side to investigate :-(

@atishay thanks for the plugin.  It seems to work for me.  It may be causing a problem with the Rubocop ext. I have (ruby-rubocop 0.3.5) but I haven't investigated to see if the problem may be from somewhere else.  Either way, thank you for making this!

It'll be really appreciated if you embed this feature inside the editor.
I don't know why 'All Autocomplete' ext didn't work for me!

+1
Recently I switched from Atom to VSCode and it is one of 2 things I miss in VSCode.

@jrieken Any progress on this feature? Thank you

+1

Tomorrows VS Code Insiders will use all documents of the current language when computing word based completions, e.g when typing in a CPP file, words from all open CPP files will be suggested

@jrieken Is it possible to add a setting to include words from all opened documents regardless of language?

Sure, sure. Accepting PRs: https://github.com/microsoft/vscode/blob/5facf746acd67947f35565ef9c012121047c4cf8/src/vs/editor/common/services/editorWorkerServiceImpl.ts#L163

To verify

make sure there a new setting editor.wordBasedSuggestionsMode
make sure the setting allow three modes: word based suggestion from the current document, from matching documents (e.g same language), and from all documents
note that a document must be truly open for it to be included, e.g a tab that's restored after reload isn't considered

Is this tied to the Javascript and typescript extension? Because I am not getting word based suggestions, not even for the current file.


UPNP Play

Hi,
Would you be interested in supporting upnp play? I know that my denon avr (x1200) supports playing al url over upnp & have some code that supposedly works.
This could add extra functionality for Home Assistant, allowing us to play, for example, TTS files.
Would you be interested in a pull request?

hej subutux,
would be interesting to see this working. Does it support audio only as the media server playback from the webinterface or is the playback of video files also supported?
keep going :)

Hi,
My Denon only supports audio playback (as stated in the manual & UI). Maybe other receivers support video playback.
I'll make the changes and test it out.

Any update on this? Would love to have upnp playback to use TTS in home assistant with my Denon receiver.


update directions on guide files location

changed 'pages' folder to the 'guide' folder within the repo per the guide index restructure. Also including gif in PR comment.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

What do you mean by "Also including gif in PR comment."?

@RandellDawson I noticed there is a TODO to update the gif showing how to navigate and edit a document in the github interface, but I'm not sure where to upload images in the code, so I attached it to the PR comment. Happy to open a different PR for the gif if I know where to upload.

looking at the other image in this file, it looks like someone just posted it on gitter and used that link...
![GIF - Squash and merge](https://files.gitter.im/FreeCodeCamp/Contributors/56MQ/9cb8db153d7bb1b3576cd1ffc207e39d.gif) - im not sure if that's the best solution, perhaps gitter deletes them after some time or something

@ajwallacemusic can you add the gif to the PR? use the link from this post... https://user-images.githubusercontent.com/24554274/47116186-82cf1600-d226-11e8-90b1-a26d3ded404d.gif

Thanks @moT01, that medium post gif is perfect, added to PR.

This looks great to me.  Thank you for your contribution!


#189 broke lodash with mixins

I'm afraid #189 has broken cases of lodash usage with mixins
After 9288ad494397e0f6d7df6ea212b5022737599dae I can get errors like
TypeError: Cannot read property 'prop' of undefined
    at Object.methodSupportsShorthand (/Users/andrei/.../node_modules/eslint-plugin-lodash/lib/util/methodDataUtil.js:74:113)
    at always (/Users/andrei/.../node_modules/eslint-plugin-lodash/lib/util/lodashUtil.js:128:32)
    at /Users/andrei/.../node_modules/eslint-plugin-lodash/lib/util/lodashUtil.js:91:13

I have inferred the problem is with the mixins, because the function that fails will actually get called with mapValuesDeep, which is actually a mixin from lodash-firecloud https://github.com/tobiipro/lodash-firecloud/blob/master/src/map-values-deep.js
(you can install lodash-firecloud via npm i git://github.com/tobiipro/lodash-firecloud#v0.1.5)

i should note that the eslint-plugin-lodash configuration is here https://github.com/tobiipro/eslint-config-firecloud/blob/master/configs/lodash.js

@andreineculau Thanks for reporting!
Fixed in v5.0.1.

insert swear word thanks! that was fast!


jdbc input plugin cannot be found after sucessful installation

Hi, all. I am a newbie to both logstash and RubyGems, and now I am stuck setting up my logstash pipeline. Please leave a comment if you might know what went wrong.
After the installation of jdbc input plugin on my Amazon EC2 servre, the plugin still could not be found during the configuration verification:
$ bin/logstash -f simple-out.conf --configtest
The error reported is:
Couldn't find any input plugin named 'jdbc'. Are you sure this is correct? Trying to load the jdbc input plugin resulted in this error: no such file to load -- logstash/inputs/jdbc
Gemfile at Logstash home directory shows:
gem "logstash-input-jdbc", "1.0.0", :path => "vendor/local_gems/d8836756/logstash-input-jdbc-1.0.0"
Therefore, it looks to me that the installation is fine.

@TianyunWu
do you check if "vendor/local_gems/d8836756/logstash-input-jdbc-1.0.0" really exists?

@pafq
Yes, the folder indeed exists.
I was not able to use the command "bin/plugin install logstash-input-jdbc" because my aws server cannot connect to RubyGems.org via ssl connections. My installation commands are as follows:
cd /opt/logstash
wget https://github.com/logstash-plugins/logstash-input-jdbc/archive/master.zip
unzip master.zip
cd logstash-input-jdbc-master
gem build logstash-input-jdbc.gemspec
(output:
fatal: Not a git repository (or any of the parent directories): .git
Successfully built RubyGem
Name: logstash-input-jdbc
Version: 1.0.0
File: logstash-input-jdbc-1.0.0.gem)
mv logstash-input-jdbc-1.0.0.gem /opt/logstash/
cd ..
bin/plugin install logstash-input-jdbc-1.0.0.gem
(output:
Validating logstash-input-jdbc-1.0.0.gem
Installing logstash-input-jdbc
Installation successful)

@TianyunWu
I install one version of input-jdbc like you and work fine to me.
I'll try to make your steps. Please share your "simple-out.conf"

@pafq, Sure!
Here it is:
file: simple-out.conf
input {
jdbc {
# mysql jdbc connection string to our backup databse
jdbc_connection_string => "jdbc:mysql://my_database_ip_address:3306/my_database"
# the user we wish to excute our statement as
jdbc_user => "my_username"
jdbc_password => "my_password"
# the path to our downloaded jdbc driver
jdbc_driver_library => "/opt/logstash/mysql-connector-java-5.1.36-bin.jar"
# the name of the driver class for mysql
jdbc_driver_class => "com.mysql.jdbc.Driver"
statement => "select * from source_list"
}
}
output {
stdout { codec => json_lines }
}

@TianyunWu
I follow your steps and get the same error.
Please check the content of your folder  "vendor/local_gems/d8836756/logstash-input-jdbc-1.0.0".
Is the folder empty?

i follow TianyunWu's steps, and vendor/local_gems/d8836756/logstash-input-jdbc-1.0.0 is empty.

@TianyunWu @childe
I allready found whats wrong.
In "logstash-input-jdbc.gemspec" file you can find this line:
   s.files = `git ls-files`.split($\)

This will collect all the file mark in git to be packaged. With this line is requeired to have the Git Repository configure.
In your case, you don't have the git repository configured so when you execute the command "git ls-files" you don't get the list of files.
You have two ways to solve this:
1 - Get Repository from Github:
git clone https://github.com/logstash-plugins/logstash-input-jdbc.git
cd logstash-input-jdbc
gem build logstash-input-jdbc.gemspec
2 - Replace on "logstash-input-jdbc.gemspec" command "git ls-files" for another that is valid on you SO that produce this output:
.gitignore
CHANGELOG.md
Gemfile
LICENSE
NOTICE.TXT
README.md
Rakefile
lib/logstash/inputs/jdbc.rb
lib/logstash/plugin_mixins/jdbc.rb
logstash-input-jdbc.gemspec
spec/inputs/jdbc_spec.rb

@TianyunWu @childe
Or simply replace this line:
s.files = git ls-files.split($)
By:
s.files = [".gitignore", "CHANGELOG.md", "Gemfile", "LICENSE", "NOTICE.TXT", "README.md", "Rakefile", "lib/logstash/inputs/jdbc.rb", "lib/logstash/plugin_mixins/jdbc.rb", "logstash-input-jdbc.gemspec", "spec/inputs/jdbc_spec.rb"]

@pafq @childe
I used pafq's first approach (the "git clone" approach), it worked.
However, building the gem required some dependency gems that were not on my server. I eventually solved the download/connection problem by changing the gem sources (from RubyGems to a trusted ruby gem server in my country) in the Gemfile of both logstash home directory and the cloned logstash-input-jdbc folder.
I advice guys who have connection problems to RubyGem.org to first modify the gem source before proceeding with the installation process of this jdbc plugin.
Thank both of you for your kind help! Danke sehr!

Hi, I have followed all the steps and that have worked fine....However I am getting error at the last step..
command -    # bin/plugin install logstash-input-jdbc-4.1.1.gem
output --   Can only install contrib at this time... Exiting.
Can anybody tell me what is wrong here?

what

good~


Support fetching/setting humidity of HomeKit controller thermostats

Description:
Add support for reading current humidity and setting target humidty to homekit controller managed climate entities.
If a HomeKit device has the optional relative-humidity.current and relative-humidity.target characteristics HA will now detect them and make use of them.
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

(Have rebased to fix conflict after my other PR was merged).


Clean up navigation.[ch]pp

Fixes navigation.cpp and navigation.hpp.
Changes

Remove using and using namespace to make typing clearer.
Fix numerical types to avoid unintended behaviour.
Add const for readability.
Remove unused code.
Fix variable naming to adhere to the Style Guide.

Codecov Report

Merging #26 (8525845) into master (6e7970c) will increase coverage by 0.39%.
The diff coverage is 5.20%.

@@            Coverage Diff             @@
##           master      #26      +/-   ##
==========================================
+ Coverage   29.99%   30.39%   +0.39%
==========================================
  Files          72       72
  Lines        3797     3787      -10
==========================================
+ Hits         1139     1151      +12
+ Misses       2658     2636      -22

Impacted Files
Coverage Δ

src/navigation/main.cpp
39.39% <0.00%> (ø)

src/navigation/navigation.cpp
11.70% <5.23%> (+0.40%)
:arrow_up:

src/utils/io/can.cpp
46.47% <0.00%> (+16.90%)
:arrow_up:

Continue to review full report at Codecov.

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

@callumTM In general, do not push to others' branches. Use your own and open a PR. This now ruined this PR and I need to open a new one.


Use Object.equals for Overlays

Generated equals from Lombok can cause falsy equals checks and so match
with unrelated overlay.
Signed-off-by: Tomas Slusny<EMAIL_ADDRESS>

Tested it and can confirm it fixes the issue.


PluginUI with number

in the GameUI
Top Color 1=上衣颜色①  ✓
in the PluginUI
Top Color 1=上衣颜色①  ×
Top Color {{A}}=上衣颜色{{A}} ✓
then
sr:"^Used By: (?<tcl1>[\w\s]+)(?<dk>[\W\s]+)?(?<tcl2>[\s\w]+)?$"="应用于: ${tcl1}${dk}${tcl2}"
Top Color 1=上衣颜色①
Shoe Color 1=鞋子颜色①
etc.
GameUI translation is normal，PluginUI does not translate.↓

so
How to make translation effective in the PluginUI
thx

Plugin UI was made this way because there is a non-insignificant performance impact related to using regexes to translating texts every frame.
The problem with providing this right now is that the feature is not compatible with the current system that tries to template numbers away, meaning if changed, existing translations would start breaking.
I do think with a bit of caching a feature like this might be feasible, however.


Expand the comment.
Add the emoji

This occurs because the comment's collapsibleState is not treated as an initial state, but instead as a value that the extension can also set later. This is a bug, as the analogous state on a TreeItem, doesn't let extensions change it later to avoid issues like this one.
At this point though, extensions might actually depend on this bad behavior (GHPRI does for its expand/collapse all commands). This is fixable for GHPRI though as we can add expand/collapse all commands in VS Code core.
Will discuss during the next API sync.

Outcome of discussion is that the collapsible state is only for the initial state of the comment thread. Updates to collapsibleState will be ignored. This was the original intent of the API as described in it's documentation (emphasis mine):
		/**
		 * Whether the thread should be collapsed or expanded **when opening the document**.
		 * Defaults to Collapsed.
		 */
		collapsibleState: CommentThreadCollapsibleState;

Therefore, collapsibleState will not reflect the current UI state.


Submission stuck in ingest after spreadsheet import

I am trying to upload a spreadsheet for a project in ingest production. It is getting stuck after import. It is important to resolve this so I can submit it in the Feb release.
The submission is here: https://contribute.data.humancellatlas.org/submissions/detail?uuid=fde26dd4-0a23-4f01-bccd-c110a61b445c
And the google sheet here:
https://docs.google.com/spreadsheets/d/1OACqSsuAEy_fbiCpTJlhK5LNkwsPMFzkzhCKUtP06L4/edit#gid=474807847

This is now working so closing the ticket.


Fix control law rotational instability

Have the control law turn in place when near the carrot pose, and also fix a couple of bugs.
The previous implementation of the control law special cased a
rotation in place when near the goal, and looked ahead on the path
until the carrot was at least carrot_min_dist away. However, if the
path contains a spiral such that the pose min_carrot_dist away is
significantly different in orientation than the current orientation
the control law poorly follows the plan, sometimes turning the wrong
way.

Deal with this by generalizing the turn-in-place control to activate
any time the carrot pose at time delta carrot_dt is within
carrot_min_dist. When the carrot pose is not at the goal, simply
issue the direct rotational velocity to follow the rotation in the
plan. If the carrot pose is at the goal, use the P controller to
prevent over-shooting the goal.

Since turn in place can now happen anywhere along the path, remove
the now unneeded turn_in_place_goal_dist configuration parameter.

Also fix an interpolation issue when two poses are mostly strafing, and fix a bug in slerp_line.

This change is

src/teb_local_planner_ros.cpp, line 613 at r3 (raw file):
Previously, c-andy-martin (C. Andy Martin) wrote…
So, if the logic when we are not robot_at_goal comes up with a zero velocity, I want to enforce the minimum velocity and force the robot to move somewhere. However, if robot_at_goal I want to force zero velocity. I also want to apply the minimum velocity after I apply Kp if the carrot pose is at the goal. I came up with the boolean to make the code somewhat readable for these various cases. If I do as you suggest, with no other changes, when robot_at_goal, we will copy the sign of zero onto min_vel_theta and end up w/ min_vel_theta instead of zero (which is not what we want). If I test for zero velocity, I don't handle the case that delta_theta was zero when the robot is not at the goal (this could happen if the configuration is such that the min carrot dist is smaller than both the xy goal tolerance and the turn in place dist and we have no angular change).

Yeah, I misread the else case totally.  My bad.


Error: Evaluation failed: Error: blob:http://localhost:45678/f778a6eb-f084-4f21-9495-c03388a074a5 not in stylesheetAstObjects!

Your project is very helpful. My current pages prerendered with react-snap start to render at 0.5 seconds and have about 80% of content painted. But main js bundle is 200+kb (because I use react-mapbox-gl, which is pretty heavy). So I decided to use dynamic imports and react-loadable. But now I get this error.
events.js:182
      throw er; // Unhandled 'error' event
      ^

Error: Evaluation failed: Error: blob:http://localhost:45678/f778a6eb-f084-4f21-9495-c03388a074a5 not in stylesheetAstObjects!
    at links.filter.forEach.stylesheet (<anonymous>:125:19)
    at Array.forEach (<anonymous>)
    at stylesheetAstObjects (<anonymous>:123:10)
    at <anonymous>:159:7
    at Frame._rawEvaluate (/Users/slavik/my/map-react/node_modules/minimalcss/node_modules/puppeteer/lib/FrameManager.js:250:13)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
error Command failed with exit code 1.

UPD: this happens because of webworkify, which is used by mapbox-gl.
var blob = new Blob(['alert(1)'], { type: 'text/javascript' });
URL.createObjectURL(blob);
"blob:https://github.com/47b9e2f7-f81f-49a0-a14b-5a1302976986"

this is how to read those files
fetch("blob:http://<IP_ADDRESS>:8080/7047145b-2f81-4b95-901b-66e4dca073ae").then( async (x) => console.log(await x.text()) )

I'm not familiar with this webworkify thing. Also, I don't see how it connects to react-loadable.
Anyway, is this a trick to load more JavaScript later? Or if I understand (unlikely) what react-loadable is, it's a wrapper for the webpack tricks that can load more JS later (and in the case of react-loadable, it's done based on certain components being needed).
Either way. The goal has to be for minimalcss to stay away from how loading works as much as possible and simply wait till the network is idle and then focus on downloaded CSS and the DOM.
How can I reproduce this without too fancy a setup? Can this blob:... stuff be reduced to something super simple I can put into a test html file.

How can I reproduce this without too fancy a setup?

I suppose this will do:
var blob = new Blob(['alert(1)'], { type: 'text/stylesheet' });
var url = URL.createObjectURL(blob);
var linkTag = document.createElement("link");
linkTag.setAttribute("rel", "stylesheet");
linkTag.setAttribute("href", url);
document.body.appendChild(linkTag);

And running fetch, will that require a network call or will the browser immediately resolve?

Browser will resolve it without network
пн, 23 окт. 2017 г. в 19:26, Peter Bengtsson<EMAIL_ADDRESS>
And running fetch, will that require a network call or will the browser
immediately resolve?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/peterbe/minimalcss/issues/17#issuecomment-338734280,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAK9Tg4cPFDbhTQb31rnKHl__R3znAiGks5svMxfgaJpZM4P_2Kp
.


Picking up from a checkpoint tries to save background state again

Probably simplest to check if the key is already present in the dataset here
https://github.com/jbisits/StaircaseShenanigans.jl/blob/1a44b41feb85c03d6f1889d60a4df65cb7aa1a1e/src/staircase_background.jl#L143-L187

Worth also checking key exists for compute_R_ρ! but in this case I would want to update (or overwrite) this variable so should look into what is best.


Change mobile orientation to sensor portrait on Android

Fixes #32 .
Changes proposed in this pull request:

change screen orientation to sensor portrait

I will close it for now.


TM2 - Input Validation - URL Validation

Reference: https://github.tools.sap/cx-commerce/spasec/issues/14

See also: https://github.com/SAP/cloud-commerce-spartacus-storefront/issues/4252


Could not obtain flags for: "Setup.hs"

Opening a new specific issue from #1564, reported by:

0xd34df00d in https://github.com/haskell/haskell-ide-engine/issues/1564#issuecomment-583909583
Maybe @kirillFedorov1 in https://github.com/haskell/haskell-ide-engine/issues/1564#issuecomment-583945900 (pending on comfirm it is the same error)

Citing @fendor:

We are currently not supporting diagnostics for Setup.hs. E.g. we can not load this into the IDE.

The workaround could be creating a implicit configuration with a hie.yaml file to make hie ignore Main.hs
More drastic one: if Setup.hs is the default one, like this:
import Distribution.Simple
main = defaultMain

and you build-type is simple (the default one) in your <pkgname>.cabal file, afaik you can delete it.

I dont think you may delete it. Cabal still needs it to build stuff, iirc.
Other work-around that got into my mind and I havent tested:
Direct arguments:
cradle:
  direct:
    arguments:
    - "-package Cabal-<IP_ADDRESS>"
    - "-package base-<IP_ADDRESS>"

I dont think you may delete it. Cabal still needs it to build stuff, iirc.

afaik cabal and stack(via cabal-simple i guess) generates a Setup.hs on the fly if the build-type is simple and there is no a real file (i've just tested deleting the Setup.hs in a cabal and stack projects and they build fine). But the file is regenerated under some circunstances (not always) so your workaround is better.

This work-around might not actually work, I did not try, yet :)

Finally the error was throwed cause hie was called without --lsp and it tries to load everything in the project, including Setup.hs.
So this error should not be showed if you start hie correctly and you dont open Setup.hs in the editor.

I mean, this issue can still be a feature request to load Setup.hs into the editor?

Uh, i thought abot that option but given it is handled by cabal in a exceptional way i guess it would be tricky: afaik cabal does not expose its build (or does it? dont know tbh) and we will have to replicate manually the ghc flags cabal uses to compile/interpret it, including the setup-config if the build-type is custom (see #1638)
Maybe cabal-helper could do that? But more importantly, does it worth the effort?

Maybe we should skip Main.hs when loading everything? At least until hie is able to handle it

Cabal-Helper could be able to do it (not yet, but maybe in the future), or at least, we should modify Cabal to expose an interface to load the Setup.hs
Problem with skipping Setup.hs:

special case somewhere in hie/hls which I dislike.
There can be files that are named Setup.hs.

Especially bad in a non-cabal project and this file just happens to be named Setup.hs

I think a custom hie.yaml for whoever is really bothered by it is the best work-around for now.

@fendor a stupidly naive question: can I put in in one hie.yaml file entries for both Cabal and Stack?
Something like
cradle:
  stack:
  cabal:

Or for a project that should support builds by both Stack and Cabal I need two files - cabal.project, and hie.yaml configured for Stack?

No, you can not add entries for both build tools, since hie would then not know what to use!
In this repo, we have hie.yaml.cbl and hie.yaml.stack which you rename to hie.yaml to use the appropriate build tool!
You only need a hie.yaml for cabal, the explicit cabal.project is optional and only used to determine, whether you should use stack or cabal! However, if you use a hie.yaml, you tell hie which build tool to use, so it doesnt matter if you have a cabal.project.

@fendor

No, you can not add entries for both build tools, since hie would then not know what to use!

That's a pity.

You only need a hie.yaml for cabal, the explicit cabal.project is optional and only used to determine, whether you should use stack or cabal if there is no hie.yaml.

Hmm... According to this, HIE should by default (if none of these files is present) use Stack (no ambiguity, no confusion, nothing points at Cabal - therefore use Stack), and only resort to Cabal if (a) hie.yaml says so, or (b) cabal.project is present.
In my experience, HIE got confused and failed to properly proceed when none of the above was present (though the project dir had both stack.yaml and <project>.cabal), and worked correctly (I don't know whether it gave preference to Stack or Cabal, nor do I care - unless you tell me it's important) when both were present.
Before I saw your reply here, I decided to experiment, and created hie.yaml with the following content:
cradle:
  stack:
  cabal:

HIE (invoked by VS Code) appeared to perform flawlessly, not displaying any confusion whatsoever. Then I successfully built this project by Stack (both "run" and "test") and Cabal (again, both "run" and "test").
What am I missing???

Hmm... According to this, HIE should by default (if none of these files is present) use Stack (no ambiguity, no confusion, nothing points at Cabal - therefore use Stack), and only resort to Cabal if (a) hie.yaml says so, or (b) cabal.project is present.

No, default is not stack but direct ghc if there is no file whatsoever.  See for https://github.com/haskell/haskell-ide-engine#project-configuration for details

Before I saw your reply here, I decided to experiment, and created hie.yaml with the following content:

then hie-bios is not strict enough when it comes to parsing. However, it will still be one of two, not both.

then hie-bios is not strict enough when it comes to parsing.

Is it likely that it would remain so?

However, it will still be one of two, not both

What would be the impact of this? HIE doesn't build the project by itself, right? So, e.g., if it picks Stack but the project was actually intended for Cabal  - what would be the harm? My use case - HIE as a part of VS Code-based IDE. How to actually build the project - ultimately I decide, and VS Code plugin(s) provides convenience buttons and task scripts (which again, I edit) to do that.

Is it likely that it would remain so?

I dont see a reason why it should, it is an implementation detail.

What would be the impact of this? HIE doesn't build the project by itself, right? So, e.g., if it picks Stack but the project was actually intended for Cabal - what would be the harm? My use case - HIE as a part of VS Code-based IDE. How to actually build the project - ultimately I decide, and VS Code plugin(s) provides convenience buttons and task scripts (which again, I edit) to do that.

I am not sure what you are trying to ask and, moreover, this is completely unrelated to the issue, right? If you have questions in particular, please open another issue, dont hijack the issue described here, which is about opening a projects' Setup.hs file.
Regarding your question: dont use HIE to build your project, since it changes options to give a better developer experience. If you build a project with stack intended for cabal, the build will either fail or succeed, depending on whether stack build would succeed.

If you have questions in particular, please open another issue, dont hijack the issue described here...

Good point, thanks. Done: https://github.com/haskell/haskell-ide-engine/issues/1667
Although, I experienced the problem described here, which was remedied by adding hie.yaml. So, arguably, the questions regarding the content of that file are relevant to this issue. ;-)

If you have questions in particular, please open another issue, dont hijack the issue described here...

Good point, thanks. Done: #1667
Although, I experienced the problem described here, which was remedied by adding hie.yaml. So, arguably, the questions regarding the content of that file are relevant to this issue. ;-)

What hie.yaml did you use? I'm just starting to see this error now.

@drewboardman With messages such as "can't load .so/.DLL for: libgmp.so (libgmp.so: cannot open shared object file: No such file or directory)", your problem is probably not related to hie.yaml, rather your hie installation or some problems with ghc.
I figure stack build and stack repl works? If it does, you can create a hie.yaml with
cradle:
  stack:

Also, this is still hijacking the issue. Just because the issue occurs in your problem, does not mean it is related.

@drewboardman With messages such as "can't load .so/.DLL for: libgmp.so (libgmp.so: cannot open shared object file: No such file or directory)", your problem is probably not related to hie.yaml, rather your hie installation or some problems with ghc.
I figure stack build and stack repl works? If it does, you can create a hie.yaml with
cradle:
  stack:

Also, this is still hijacking the issue. Just because the issue occurs in your problem, does not mean it is related.

I appreciate the response. The issue was indeed fixed by using an hie.yaml, but like the responses above - it seems like you shouldn't need a config file unless you're multi-cradle.

The issue was indeed fixed by using an hie.yaml

I'm afraid it wasn't. Showed up on a test-project (mkdir h-tst1 && cd h-tst1 && cabal init), if I touch/open Setup.hs with the editor.
With everything current, and hie built from the current GitHub repo:

hie.yaml:
cradle:
  cabal:

Main.hs:
module Main where

main :: IO ()
main = putStrLn "Hello, Haskell!"

h-tst1.cabal:
cabal-version:       2.2
-- Initial package description 'h-tst1.cabal' generated by 'cabal init'.
-- For further documentation, see http://haskell.org/cabal/users-guide/

name:                h-tst1
version:             <IP_ADDRESS>
-- synopsis:
-- description:
-- bug-reports:
license:             MIT
license-file:        LICENSE
-- author:
-- maintainer:
-- copyright:
-- category:
extra-source-files:  CHANGELOG.md

executable h-tst1
  main-is:             Main.hs
  -- other-modules:
  -- other-extensions:
  build-depends:       base ^>=<IP_ADDRESS>
  -- hs-source-dirs:
  default-language:    Haskell2010

Right now I don't use Setup.hs - it was a "gitf" from cabal init, so probably can just use the workaround from https://github.com/haskell/haskell-ide-engine/issues/1650#issuecomment-584482263 and avoid opening Setup.hs. But if I need to use it in the future - what should I do?

@mouse07410 It is currently not supported to open the Setup.hs file which is special to the Cabal (not cabal-install, nor stack) build system. That's why it exists in both cabal-install and stack projects.
If you really need to work on it, you are currently out of luck with hie/hls/ghcide.
An untested work-around I thought about could be (same as here: https://github.com/haskell/haskell-ide-engine/issues/1650#issuecomment-584116019):
cradle:
  multi:
    - path: ./Setup.hs
      config:
        cradle:
          direct:
          - "-package Cabal"
          - "-package base"
    - path: ./
      config:
        cradle:
          cabal:

It is currently not supported to open the Setup.hs file . . . . . If you really need to work on it, you are currently out of luck with hie/hls/ghcide.

Ah, OK. Then I'm not missing anything. Thankfully, I don't really need it right now.

An untested work-around I thought about . . .

Thanks! Will try it and report.

You made me look...
The error is in the hie.yaml, it should be:
cradle:
  multi:
    - path: ./Setup.hs
      config:
        cradle:
          direct:
            arguments:
              - "-package Cabal"
              - "-package base"
    - path: ./
      config:
        cradle:
          cabal:

Then it actually works

Thank you!! Now there's a working workaround!  ;-)
Appreciate!


Add common aliases

The aliases added are extremely common knowledge and commonly used by now. These could be added to the cheatsheet to provide value add for everyone.

I see the Netlify build failed due to timeout. you could remove it by triggering the build again after committing new changes or using
 git commit --amend --no-edit && git push --force-with-lease

I see the Netlify build failed due to timeout. you could remove it by triggering the build again after committing new changes or using  git commit --amend --no-edit && git push --force-with-lease

Actually, our advice is to rebase against main.

Hi @shyamg28 , Are you still working on this PR?
Please rebase if you are. or else we can close this PR.


Add inconsistent reading date format feature flag

Fine with adding this, but if we're having issues with specific feed configs we'll need to track them down.


Bump dnsjava version to 3.6.0 to address CVE-2024-25638

Description
Bumps dnsjava to v3.6.0 to address https://github.com/advisories/GHSA-cfxw-4h78-h7fw
Related Issues
Resolves #14183
Check List

[ ] Functionality includes testing.
[ ] API changes companion pull request created, if applicable.
[ ] Public documentation issue/PR created, if applicable.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@derek-ho could you rebase against latest main please? thank you


feat: social links

closes #15

will probably need to rename as we also have social links in the footer 😅
but good enough for now 💪
thx 👍

could be a case of header only using links that have icons, or we could flag with position: 'header'|'footer'|true (true for both, false for neither, defaulting via ?? to true)


Typo in quick reference documentation fixed.

Coverage remained the same at 77.007% when pulling af4b398a761daef8eb2f685ef6d23c7db94f139a on edinchev:patch-1 into 1d2886532678ae58ea516cbedbbbdf44e3f3887f on padraic:master.

Coverage remained the same at 77.007% when pulling af4b398a761daef8eb2f685ef6d23c7db94f139a on edinchev:patch-1 into 1d2886532678ae58ea516cbedbbbdf44e3f3887f on padraic:master.

Coverage remained the same at 77.007% when pulling af4b398a761daef8eb2f685ef6d23c7db94f139a on edinchev:patch-1 into 1d2886532678ae58ea516cbedbbbdf44e3f3887f on padraic:master.

Thanks!


Server error: unable to find dialog for dialog id provided

I am not sure exactly how this happens, but we get about a dozen of these errors per hour. The errors are caught by our node.js process that connects to Drachtio listening for events. In Sentry, it is recorded as an Unhandled Error Error DrachtioAgent.<anonymous>(drachtio-srf.lib:drachtio-agent) with a stack trace of:
/src/ng2/backend/node_modules/drachtio-srf/lib/drachtio-agent.js in DrachtioAgent.<anonymous> at line 315:21

const err = new Error(token[1] || 'request failed');

It looks like these errors happen immediately after a call ends so it must be something with the cleanup process. These errors don't affect our users since it happens after the call ends, but I am not sure if this may cause some unintended consequences in the future.

Same here!


blank body from email exported through Mail client (apple)

when i try to convert an eml exported (or sent-forwarded from) Mail client I get a blank body inside the pdf , only the headers are visible

Might be related to https://github.com/nickrussler/eml-to-pdf-converter/issues/20, is this fixed with the newest commits?


Vulkan Layer_khronos_validation deteriorates rendering

Environment

LWJGL version: 2.3.2 or 2.3.3
LWJGL build #: All I suppose (Gradle links)
Java version: openjdk version "11.0.1" 2018-10-16
Platform: macOS
Module: Vulkan
Vulkan SDK: vulkansdk-macos-<IP_ADDRESS>

Description
I am trying Vulkan with JavaFx, GLFW and the source code TriangleDemo.java.
I activate the layers by setting the 'validation' variable to true.
private static final boolean validation = true;
But I make inaccessible the library 'libVkLayer_khronos_validation.dylib' by renaming it 'MASK_libVkLayer_khronos_validation.dylib'.
Then I launch the application and I get a GLFW window with the rendering of a triangle.
I also have an error message which tells me that the library 'libVkLayer_khronos_validation.dylib' is missing.
testVulkan2.VulkanTest > test() STANDARD_ERROR
    ERROR OCCURED: dlopen(/Users/ ... /vulkansdk-macos-<IP_ADDRESS>/macOS/etc/vulkan/explicit_layer.d/../../../lib/libVkLayer_khronos_validation.dylib, 5): image not found

I do not have the use of the layer 'Layer_khronos_validation' but the rendering corresponds exactly to what is expected.
Now I rename the library with its original name so that it is recognized during execution and I restart the program as it is.
I no longer have a console error, but there is no longer a triangle in the GLFW window. The background color is correct but the triangle has disappeared.
The same project on Windows works in all cases.
I put the project in attachment. It is an Eclipse project but it can be launched from the Gradle command line:
./gradlew build -i
You just have to change the two lines of the Gradle task 'test' in the 'build.gradle' corresponding to the JVM arguments and which point respectively to the library 'libglfw.dylib' which fixes a MoltenVK bug in version 3.2.3 of LWJGL and the Vulkan library necessary when uses GLFW.
test {
	jvmArgs '-Dorg.lwjgl.glfw.libname=path-to libglfw.dylib'
	jvmArgs '-Dorg.lwjgl.vulkan.libname=path-to /vulkansdk-macos-<IP_ADDRESS>/macOS/lib/libvulkan.dylib'
	useJUnitPlatform()
}

TestVulkan2.zip

Hey @Graou74,

which fixes a MoltenVK bug in version 3.2.3 of LWJGL

What bug is that? Also, the latest 3.2.4 snapshot includes an updated MoltenVK, could you please try it to see if the bug has been fixed?

Hey @Spasi,

What bug is that?

This one : [https://github.com/LWJGL/lwjgl3/issues/502]
Which is fixed in version LWJGL 3.2.4-SNAPSHOT

Also, the latest 3.2.4 snapshot includes an updated MoltenVK, could you please try it to see if the bug has been fixed?

If you talk about the bug reported by this post, no it is not fixed. I have exactly the same behavior with LWJGL 3.2.4-SNAPSHOT as with versions 2.3.2 or 2.3.3.

Hey @Graou74,
I'm not able to reproduce what you describe. Steps I followed:

Extracted your project, set LWJGL to 3.2.4-SNAPSHOT and removed the jvm arguments.
Tested with validation = false, the application worked and the triangle was visible.
Downloaded the latest Vulkan SDK and did the following (as explained in the "Getting Started with the Vulkan SDK" documentation for macOS):

export VULKAN_SDK=<path to extracted SDK>/macos
export VK_ICD_FILENAMES=$VULKAN_SDK/etc/vulkan/icd.d/MoltenVK_icd.json
export VK_LAYER_PATH=$VULKAN_SDK/etc/vulkan/explicit_layer.d
export VK_LOADER_DEBUG=all

Added jvmArgs '-Dorg.lwjgl.vulkan.libname=<path to extracted SDK>/macOS/lib/libvulkan.dylib' to the gradle build. This is necessary so that layers can be detected and enabled by the Vulkan loader. By default LWJGL skips the loader and uses MoltenVK directly.
Tested with validation = true, the application worked without errors/warnings and the triangle was visible again.

The VK_LOADER_DEBUG environment variable isn't necessary, but useful to make sure everything works as expected.
I also tried LWJGL's HelloVulkan demo, debug output from the validation layers worked fine (that demo has known issues).

Hey @Spasi ,
Again your skill compels my admiration.
The solution is effectively found in the latest version of the Vulkan SDK (vulkansdk-macos-<IP_ADDRESS>). And it works with version 3.2.3 of LWJGL too.
Thanks again.


[SPARK-45074][PYTHON][CONNECT] DataFrame.{sort, sortWithinPartitions} support column ordinals

What changes were proposed in this pull request?
DataFrame.{sort, sortWithinPartitions} support column ordinals
Why are the changes needed?
for feature parity:
SQL:
select a, 1, sum(b) from v group by 1, 2 order by 3, 1;

DataFrame:
df.select("a", sf.lit(1), "b").groupBy(1, 2).agg(sf.sum("b")).sort(3, 1)

Does this PR introduce any user-facing change?
yes, new feature
How was this patch tested?
added tests
Was this patch authored or co-authored using generative AI tooling?
NO

cc @HyukjinKwon @dongjoon-hyun

Thank you. Merged to master for Apache Spark 4.0.0.

@dongjoon-hyun @HyukjinKwon thanks for review


dvyukov fix resource ctors

executor: don't print errno for successful calls
prog: error if program variable refers to non-resource
pkg/compiler: refactor code
pkg/compiler: add out_overlay field attribute
sys/linux: use out_overlay attribute
pkg/compiler: prohibit use of direction attribute on union fields
sys/linux: don't use len/flags/const/proc types in out fields
pkg/compiler: prohibit use of len/flags/const/proc types in out fields
sys/syz-extract: fix linux extract
sys/syz-extract: disable DEBUG_INFO_BTF
sys/linux: regenerate consts
sys/linux: remove /dev/ion descriptions
sys/linux: extend udmabuf descriptions
sys/linux: add sync_file descriptions
sys/linux: add /dev/media descriptions
sys/linux: improve dev_dri descriptions
sys/linux: improve dev_msm descriptions
sys/linux: prepare dev_infiniband_rdma for stricter resource requirements
pkg/compiler: fix error message spelling
prog: fix call selection in rotation logic
prog: make panic message more useful
pkg/compiler: require stricter resource constructors
prog: pass ctx by pointer to ForeachType callback
prog: support prunning recursion in ForeachType
prog: require stricter resource constructors
prog: rename a test file
prog: refactor generation of resources

Btw, does it anyhow affect #2721?

It may. I am not sure. I can't understand what exactly would be considered as a fix for #2721.
Producing a resource only by syscalls that also consume the same resource is still not OK (what will create the first instance of the resource?).


Redirect after Creation of Event/Category

Currently the redirection after the creation and update of events and categories are not working at all.

@Desyon Please confirm

Works fine


[WIP] Add Facial Age Estimator model

API

loadModel(init)
Loads the model files.
init - if true, a prediction will be triggered using an all zero Tensor to warm up the model (helps increase speed of subsequent predictions when running in a browser). Default is true.
Returns the TensorFlow.js model.

processInput(image)
Processes the input image to the shape and format expected by the model. The image is resized/scaled (to max width or height of 64px) and converted to a 4D Tensor.
image - an instance or array of HTMLImageElement, HTMLCanvasElement, or HTMLVideoElement.
Returns a 4D Tensor representation of the image(s) that can be passed to the model.

runInference(inputTensor)
Runs inference on the input Tensor passed. The output is 4D Tensor comprised of the concatenation of the heatmap and part affinity field map predictions
inputTensor - a 4D Tensor representing an ImageData or array of ImageData
Returns the inference results.

processOutput(inferenceResults)
Processes the inference output replacing the output Tensor with an array of the ages the model predicts.
inferenceResults - the model output from running inference.

I included a script to do some quick testing in test/test.js. Will try to use an actual framework for tests.
API should be similar to the other models, but can accept an array of input since the model can work on a batch of images.

@vabarbosa Is there a guide for minifying and bundling?

@vabarbosa Is there a guide for minifying and bundling that you recommend?

hi, yes we use rollup for bundling and uglify to minify:

https://github.com/CODAIT/max-tfjs-models/blob/master/image-segmenter/package.json#L14

@vabarbosa I added an example for node and the browser, but when I try to load the module in node, I get an error when trying to download the model.json from COS. I checked and made sure the object can be publicly read.
Access to fetch at 'https://s3.us-south.cloud-object-storage.appdomain.cloud/max-assets-dev/max-facial-age-estimator/tfjs/0.1/model.json'
from origin 'null' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

@djalova setting public access (s3cmd --acl-public) is different than enabling CORS. was CORS enabled correctly (s3cmd setcors) on the bucket?

@vabarbosa I didn't enable CORS for the bucket. What rules do we have for the other models?

the rules i used were
 <CORSRule>
  <AllowedOrigin>*</AllowedOrigin>
  <AllowedMethod>GET</AllowedMethod>
  <AllowedHeader>*</AllowedHeader>
 </CORSRule>

Thanks @vabarbosa I was able to fix the CORS issue with that. I also added examples for Node and the browser.

@djalova great. thank you. a couple additional comments:

any reason for adding this package-lock.json: 08e777a
can you include the test/ directory to .npmignore?
npm run test fails for me with: Error: Cannot find module 'esm'
in browser.html, the loadModel() function is never called (maybe can remove if not using it)
when checking linting/style i get the following errors:

@vabarbosa I addressed your comments above and added a testing framework.

@djalova thank you for all your work and quick turn around on my comments. i think we are almost ready to publish/release. i have just a couple additional comments which once addressed we should hopefully be good to go:

can you check the (standard) style/linting against the test.js? it has a few errors.
i think it would be good to add version api (i added it yesterday to image segmenter and pose estimator if you want to take a look)
i tried the browser.html example with the face.jpg in test/ directory and it worked fine, but when i tried it with this image https://github.com/IBM/MAX-Facial-Age-Estimator/blob/master/assets/tom_cruise.jpg it failed:The shape of dict['input_1'] provided in model.execute(dict) must be [-1,64,64,3], but was [1,64,54,3]

i believe it is because the image is not a square. if that is the case, the preprocessInput should probably be cropping it to a square and then resizing to 64x64.

thanks again and let me know if you have any questions.

@vabarbosa I addressed your comments above and added a testing framework.

my apologies, if i was unclear. you can and should leave the package-lock.json that gets created in the facial-age-estimator directory. what i meant to say is you should remove is the one that got added to the root max-tfjs-models directory. thank you.

@djalova thank you for all your work and quick turn around on my comments. i think we are almost ready to publish/release. i have just a couple additional comments which once addressed we should hopefully be good to go:

can you check the (standard) style/linting against the test.js? it has a few errors.
keep package-lock.json in facial-age-estimator directory, but remove package-lock.json in max-tfjs-models directory
i think it would be good to add version api (i added it yesterday to image segmenter and pose estimator if you want to take a look)
i tried the browser.html example with the face.jpg in test/ directory and it worked fine, but when i tried it with this image:
https://github.com/IBM/MAX-Facial-Age-Estimator/blob/master/assets/tom_cruise.jpg
it failed with the error message:The shape of dict['input_1'] provided in model.execute(dict) must be [-1,64,64,3], but was [1,64,54,3]

i believe it is because the image is not a square. if that is the case, the preprocessInput should probably be cropping it to a square and then resizing to 64x64.

thanks again and let me know if you have any questions.

@vabarbosa I think I fixed the issues you mentioned above. The linting errors in test.js were due to the syntax in Jasmine, so I disabled the undefined warnings for the tests.

@djalova thanks!
rather than completely disable undefined (i.e., /* eslint-disable no-undef */) for the tests, i would recommend perhaps instead defining the specific globals (i.e., /* globals describe, it, expect, tf, jasmine */ at the very top of test.js. otherwise, in the future there may actually be an undefined variable that we do want to catch and if disable we wont catch it.
also i noticed a typo in the README.md. line 35 (browser code example), it has ageEsimator instead of ageEstimator
lastly, has a copy of the model files been moved the production instance of COS? if not and you are all set with the model assets and don't plan any further conversion or changes to the assets. you should get them over to max-assets-prod and update the path (in facial-age-estimator/src/facial-age-estimator-model.js) accordingly.

@vabarbosa Thanks for suggesting the fix for the style check. I've moved the weights to the production bucket.


Multiple errors on raspberry pi

Hi
I am able to install the application using instructions given.I am able to give lichess api key also but aftter that it is giving me constant errors i have included here
Traceback (most recent call last):
  File "/home/pi/.local/bin/lichs", line 10, in <module>
    sys.exit(main())
  File "/home/pi/.local/lib/python3.7/site-packages/lichs/__main__.py", line 44, in main
    account_data = client.account.get()
  File "/home/pi/.local/lib/python3.7/site-packages/berserk/clients.py", line 115, in get
    return self._r.get(path, converter=models.Account.convert)
  File "/home/pi/.local/lib/python3.7/site-packages/berserk/session.py", line 60, in get
    return self.request('GET', *args, **kwargs)
  File "/home/pi/.local/lib/python3.7/site-packages/berserk/session.py", line 56, in request
    return fmt.handle(response, is_stream=is_stream, converter=converter)
  File "/home/pi/.local/lib/python3.7/site-packages/berserk/formats.py", line 35, in handle
    return converter(self.parse(response))
  File "/home/pi/.local/lib/python3.7/site-packages/berserk/formats.py", line 76, in parse
    return response.json(cls=self.decoder)
  File "/usr/lib/python3/dist-packages/requests/models.py", line 889, in json
    self.content.decode(encoding), **kwargs
  File "/usr/lib/python3/dist-packages/simplejson/__init__.py", line 535, in loads
    return cls(encoding=encoding, **kw).decode(s)
TypeError: __init__() got an unexpected keyword argument 'encoding'

Hey there,
Sorry for the delayed response. Can you describe the problem in a bit more detail? When exactly does the problem occur?

I have used this programme on raspberry pi 3a+ running raspbian os 32bit (tried it with 64bit archlinux also).While installation went smooth .I have used git clone and used
pip3 install recommended.txt first followed by installataion of lichs as per ur documents.
When i run the programme it ask for the api key which I enter follwed by above mentioned error
My python version is 3.7
I have tried uninstalling berserk and using berserk-downstream also both give same result.

Hello, did yall ever get this working? I also have this error

@ljensen3 not to my knowledge. I'm quite busy currently, but I will try to look into it when I have time.


Add support for userdata on classic infrastructure

The userdata field allows the user to inject metadata into the virtual server at boot time.
Support for classic works in a similar way as VPC: by reading the file that is (optionally) passed by the user by means of the user_data_file_path parameter.
Fixes: #58

Hi Juan, could you please create a branch on the repo and place your code there, then submit the PR. The reason for that is some Github actions we created. Thanks

Hi Juan!
I do not seem to have permissions to create branches on this repository. Would it be possible that you or any other maintainer creates it for me so then I can change the PR to target that branch instead of master?

Hi Juan, I created classic-userdata branch for you.

Thanks! I changed the target of the PR to classic-userdata branch, hope this solves the issues with GitHub actions.


new(sdk): Arguments Provision for command-line argument injection and Chained Provisioner to merge multiple provisioners

Overview

This PR introduces two new provisioners:

Arguments Provisioner that injects secrets as command-line arguments/flags.
Chained Provisioner that stitches together multiple provisioners. One common example is when there's a need to use both an environment variable and flags, like in the case of redis shell plugin.

Type of change

[ ] Created a new plugin
[ ] Improved an existing plugin
[ ] Fixed a bug in an existing plugin
[x] Improved contributor utilities or experience

Related Issue(s)

Relates Redis Shell plugin: https://github.com/1Password/shell-plugins/pull/276
Relates TunnelTo shell plugin: https://github.com/1Password/shell-plugins/pull/171#issuecomment-1523641351

How To Test

The best way to test is on the redis PR.

On the redis PR, checkout that branch (the changed proposed on the current PR are already available on the redis PR as well)
Run make redis/build
Set up redis credentials using op plugin init redis-cli (The easiest redis host to sign up for are redis.com and upstash.com)
Run redis-cli incr key with your redis credentials.

When you run that command, what actually runs behind the scenes is REDISCLI_AUTH=value redis-cli --user value -h value -p value.
Changelog

New provisioners: Arguments Provision to provision secrets as command line arguments at specific indices, and Chained Provisioner to stitch multiple provisioners for use at the same time.

This work was originally available on the redis branch, but based on this conversation, I have created this new PR. Once the current PR is approved, it should be straightforward to review the redis PR as well.


Update next-sanity to 5.0.0 to test compatibility

Ticket(s)
Required unless this is just a change to documentation.

[Replace with link to Airtable ticket]

Type of change
Please delete any options that are not relevant

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Design change
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[X] Documentation or testing

Description
This is a test to ensure the stability of our application when next-sanity is updated to version 5.0.0.
For now please don't merge this PR as I will continue to test the build stability
Fixes # replace with issue number that this fixes
Screenshots
Include relevant screenshots
Please include a screenshot of the Figma design file
Before
After
Review your work
Please self review your work before requesting further review. Wait until you reach the next screen to check off the boxes.
Preview
Use your local build.

[ ] Everything works as expected
[ ] Check changed page(s)
[ ] Click through calculator if changes were made
[ ] Compare figma screenshot with the changes
[ ] Compare linked Figma section to changes made
[ ] Refresh the page, check that using the go-back button works as expected
[ ] Check large screen size (>1400)
[ ] Check tablet screen size (<786)
[ ] Check mobile screen size (<375)
[ ] Check that links work
[ ] Check the console for errors or warnings
[ ] Check the terminal for any errors or problems
[ ] Check for any uncaught ESLint problems

Code Clarity and Readability

[ ] Are variable and function names descriptive, meaningful, in the appropriate case (ex: snake, camel)?
[ ] Is the code self-explanatory and easy to understand?
[ ] Are comments used where necessary to explain complex logic or provide additional context?

Code Efficiency

[ ] Is the code DRY?
[ ] Are there any areas of unnecessary complexity or duplication that might benefit from refactoring?

Code Modularity and Reusability

[ ] Is the code and any new components organized in a logical location in the directory?
[ ] Can any code snippets be refactored into reusable components?
[ ] Are there opportunities to abstract common functionality into separate functions or classes?
[ ] Is there good use of CSS selectors when creating new components or refactoring old ones?

Best Practices and Coding Standards

[ ] Does the code follow the established coding standards and style guide of the project?
[ ] Are there any violations of best practices that should be addressed?
[ ] Are there any hard-coded strings or UI elements that should be externalized?
[ ] Are all measurement units in REM? (border-radius, borders should still be in px)
[ ] Is there any unnecessary commented out code lingering?
[ ] Are all files TypeScript?

Overall PR Checklist:
Please delete any options that are not relevant

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation (if applicable)
[ ] My changes generate no new warnings in the console
[ ] There are no new linting errors/problems in my code
[ ] I have added tests that prove my fix is effective or that my feature works (if applicable)
[ ] I have filled out the new 3rd party dependency checklist (if applicable)
[ ] I have filled this PR out fully, and cleaned up any extraneous items so that it is clear and easy to understand

Amplify preview build failed. Logs:
2024-03-01T00:52:04.006Z [INFO]: # Cloning repository: git@github.com:clearviction-devs/clearviction-wa.git
2024-03-01T00:52:06.218Z [INFO]:
2024-03-01T00:52:06.218Z [INFO]: Cloning into 'clearviction-wa'...
2024-03-01T00:52:06.541Z [INFO]: From https://github.com/clearviction-devs/clearviction-wa
                                 * [new ref]         refs/pull/202/head -> pr-202
                                 Switched to branch 'pr-202'
2024-03-01T00:52:06.615Z [INFO]: Successfully cleaned up Git credentials
2024-03-01T00:52:06.616Z [INFO]: # Checking for Git submodules at: /codebuild/output/src1132908266/src/clearviction-wa/.gitmodules
2024-03-01T00:52:06.623Z [INFO]: # Retrieving environment cache...
2024-03-01T00:52:06.665Z [WARNING]: ! Unable to write cache: {"code":"ERR_BAD_REQUEST","message":"Request failed with status code 404"})}
2024-03-01T00:52:06.665Z [INFO]: ---- Setting Up SSM Secrets ----
2024-03-01T00:52:06.665Z [INFO]: SSM params {"Path":"/amplify/dqqxalj4ndxdp/prcac/","WithDecryption":true}
2024-03-01T00:52:06.708Z [WARNING]: !Failed to set up process.env.secrets
2024-03-01T00:52:09.669Z [INFO]: # Node version 18 is available for installation
2024-03-01T00:52:09.793Z [INFO]: # Installing Node version 18
2024-03-01T00:53:10.553Z [INFO]: # Now using Node version 18
2024-03-01T00:53:10.677Z [INFO]: # Retrieving cache...
2024-03-01T00:53:10.720Z [INFO]: # Retrieved cache
2024-03-01T00:53:13.703Z [INFO]: ## Starting Backend Build
                                 ## Checking for associated backend environment...
                                 ## No backend environment association found, continuing...
                                 ## Completed Backend Build
2024-03-01T00:53:13.712Z [INFO]: {"backendDuration": 0}
                                 ## Starting Frontend Build
                                 # Starting phase: preBuild
                                 # Executing command: npm ci
2024-03-01T00:53:14.612Z [WARNING]: npm
2024-03-01T00:53:14.613Z [WARNING]: WARN EBADENGINE Unsupported engine {
                                    npm WARN EBADENGINE   package: '<EMAIL_ADDRESS>                                    npm WARN EBADENGINE   required: { node: '>=20.0.0' },
                                    npm WARN
2024-03-01T00:53:14.613Z [WARNING]: EBADENGINE   current: { node: 'v18.19.1', npm: '10.2.4' }
                                    npm WARN EBADENGINE }
2024-03-01T00:53:50.209Z [INFO]: ><EMAIL_ADDRESS>prepare
                                 > husky install
2024-03-01T00:53:50.257Z [WARNING]: install command is deprecated
2024-03-01T00:53:50.286Z [INFO]: added 959 packages, and audited 960 packages in 36s
2024-03-01T00:53:50.286Z [INFO]: 183 packages are looking for funding
                                 run `npm fund` for details
2024-03-01T00:53:50.287Z [INFO]: found 0 vulnerabilities
2024-03-01T00:53:50.319Z [INFO]: # Completed phase: preBuild
                                 # Starting phase: build
                                 # Executing command: npm run build
2024-03-01T00:53:50.619Z [INFO]: ><EMAIL_ADDRESS>build
                                 > export build=true && next build
2024-03-01T00:53:51.188Z [INFO]: ⚠ No build cache found. Please configure build caching for faster rebuilds. Read more: https://nextjs.org/docs/messages/no-cache
2024-03-01T00:53:51.202Z [INFO]: Attention: Next.js now collects completely anonymous telemetry regarding usage.
2024-03-01T00:53:51.202Z [INFO]: This information is used to shape Next.js' roadmap and prioritize features.
                                 You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:
                                 https://nextjs.org/telemetry
2024-03-01T00:53:51.289Z [INFO]: Linting and checking validity of types ...
2024-03-01T00:54:01.869Z [INFO]: Creating an optimized production build ...
2024-03-01T00:54:14.851Z [INFO]: ✓ Compiled successfully
2024-03-01T00:54:14.872Z [INFO]: Collecting page data ...
2024-03-01T00:54:16.005Z [WARNING]: Error: It looks like you're using options meant for '@sanity/preview-kit/client', such as 'encodeSourceMapAtPath', 'encodeSourceMap', 'studioUrl' and 'logger'. Make sure you're using the right import.
                                    at initConfig (/codebuild/output/src1132908266/src/clearviction-wa/node_modules/@sanity/client/dist/_chunks/nodeMiddleware-qKdVvFDs.cjs:713:11)
                                    at _SanityClient.config (/codebuild/output/src1132908266/src/clearviction-wa/node_modules/@sanity/client/dist/_chunks/nodeMiddleware-qKdVvFDs.cjs:1737:40)
                                    at new _SanityClient (/codebuild/output/src1132908266/src/clearviction-wa/node_modules/@sanity/client/dist/_chunks/nodeMiddleware-qKdVvFDs.cjs:1711:10)
                                    at Object.createClient (/codebuild/output/src1132908266/src/clearviction-wa/node_modules/@sanity/client/dist/_chunks/nodeMiddleware-qKdVvFDs.cjs:1857:34)
                                    at Object.createClient (/codebuild/output/src1132908266/src/clearviction-wa/node_modules/@sanity/preview-kit/dist/client.cjs:215:17)
                                    at createClient (/codebuild/output/src1132908266/src/clearviction-wa/node_modules/next-sanity/dist/index.cjs:23:17)
                                    at sanityClient (/codebuild/output/src1132908266/src/clearviction-wa/.next/server/pages/calculator/[slug].js:1:26507)
                                    at getMisdemeanorPagePaths (/codebuild/output/src1132908266/src/clearviction-wa/.next/server/pages/calculator/[slug].js:1:26774)
                                    at getStaticPaths (/codebuild/output/src1132908266/src/clearviction-wa/.next/server/pages/calculator/[slug].js:1:24235)
                                    at buildStaticPaths (/codebuild/output/src1132908266/src/clearviction-wa/node_modules/next/dist/build/utils.js:733:39)
2024-03-01T00:54:16.012Z [WARNING]: > Build error occurred
                                    Error: Failed to collect page data for /calculator/[slug]
                                    at /codebuild/output/src1132908266/src/clearviction-wa/node_modules/next/dist/build/utils.js:1171:15 {
                                    type: 'Error'
                                    }
2024-03-01T00:54:16.085Z [ERROR]: !!! Build failed
2024-03-01T00:54:16.085Z [INFO]: Please read more about Amplify Hosting's support for SSR frameworks to find if your build failure is related to an unsupported feature: https://docs.aws.amazon.com/amplify/latest/userguide/amplify-ssr-framework-support.html. You may also find this troubleshooting guide useful: https://docs.aws.amazon.com/amplify/latest/userguide/troubleshooting-ssr-deployment.html
2024-03-01T00:54:16.086Z [ERROR]: !!! Error: Command failed with exit code 1
2024-03-01T00:54:16.086Z [INFO]: # Starting environment caching...
2024-03-01T00:54:16.086Z [INFO]: # Environment caching completed
Terminating logging...